Clarion News

Clarion Product News

<August 2006>
SuMoTuWeThFrSa
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789

Navigation

Subscriptions

Update on the Clarion UKCUG meeting

I'm back in the USA after a great trip to the UK and France.  The Clarion UK user group meeting in Cambridge was a very good time.  I had a chance to meet with some great folks, and it was a superb location.  My thanks to Richard Rose for organizing the event, and to all of the developers who attended.  I had a chance to speak with many of those who attended, and I came away with a clearer understanding of what developers want and need for both Clarion 7 and Clarion.Net. 

Between Scott and myself we covered the gamut, from updates to the Clarion 7 UI feature set, to the new functionality in the Project system, Class Browser, Window and Report Designers, source code Editor and much more.  Then I did code walkthroughs and ran live Clarion WinForm applications, WebForm apps, Web services, and Mobile applications. My presentation alone ran about 4 hours.

 Because we covered so much new territory it's natural to expect that some of the information would be misinterpreted, and upon my return I found that some information posted at devdawn.com and at clarionmag.com is a bit off the mark and has created some confusion.

 I’ll try to clarify a few things here, addressing the items posted that were not quite accurate, and also answering some questions sent in via email to our sales/support team that were generated from the incorrect information.

  • Clarion.Net can use every driver that we currently ship
  • All of the standard Clarion file access syntax is supported and is unchanged, i.e. OPEN, NEXT, PREVIOUS, GET, REGET, etc
  • Clarion.Net can utilize any .Net data provider.  A .NET Framework data provider is used for connecting to a database, executing commands, and retrieving results.
  • The .NET 2.0 Framework includes the data provider for SQL Server (for Microsoft SQL Server version 7.0 or later), the data provider for OLE DB, and the data provider for ODBC.
  • Almost every SQL backend provides their own .Net data provider
  • The data provider for ODBC lets you connect to any data source where an ODBC driver is available.
  • The Topspeed and Clarion drivers are being ported to .Net managed code as native providers; all of the other drivers are accessed via a bridge layer that is built into the Clarion.Net RTL.  The bridge layer is invisible.  In other words your code reads exactly as it does today using any version of Clarion, regardless of what driver you are using. 

    To make this crystal clear, here is some code that I used to fill a Queue to show databinding of a Queue to a DataGrid control (and to a DataGridView control).  It should look very familiar.

MainForm.FillQueue  PROCEDURE()                                  

      CODE 

            OPEN(People)
           
IF ERRORCODE() THEN
             
MESSAGE(ERRORCODE()&'-'&ERROR()) 
           
END

            SET(People)
           
LOOP
                 
NEXT(People)
                 
IF ERRORCODE() THEN
                      BREAK
                  ELSE
                  SELF
.QPeople.Id       =PEO:Id
                 
SELF.QPeople.FirstName=PEO:FirstName
                 
SELF.QPeople.LastName =PEO:LastName
                 
SELF.QPeople.Gender   =PEO:Gender
                 
ADD(SELF.QPeople)    
                 
END              
            END

  • You also have the option to access your FILEs using a combination of the ADO.Net objects; DataTable, DataSet, and DataAdapter.  I showed an example of this at the meeting.

    Hopefully the above points will clear up the confusion regarding drivers and file access options in Clarion.Net.
  • As regards the post that stated the Clarion 7 compiler had been ported to .Net managed code – it is incorrect.  The Clarion 7 compiler is native code.
  • As regards the post that read “64bit Native Compilers for .NET”.  It is also a bit of the mark.  The 64-bit version of the .NET Framework 2.0 enables .NET applications to run on 64-bit workstations as 64-bit native applications, and in most cases, applications developed using the 32-bit .NET Framework can be ported to the 64-bit version of the .NET Framework without any source code modifications.

    I think the confusion stems from the fact that I asked the attendees “how many of you would be interested in a 64bit native compiler”; i.e. a port of the Clarion 7 compiler so as to produce 64bit native code.
     
  • As regards the post that indicated that you’d be unable to access TPS files from other .Net languages.  I showed a simple example where in Clarion.Net we read a TPS file, filled a Queue and then loaded (databinded) the Queue into a .Net DataGrid control, and then opened a WinForm to display the data.  We then took a C# application, and in 3 lines of code created an instance of the same Clarion.Net WinForm and showed the form displaying the data from within the C# app.

I hope all of the above clears up any items that were confusing. We’ll be posting all of the information presented at the UK meeting right here in a series of movies, and if you have any other questions on the information that came from the meeting feel free to post them here, or in the Clarion Community forum.

posted on Tuesday, August 08, 2006 11:40 AM by Robert Zaunere

# re: Update on the Clarion UKCUG meeting @ Tuesday, August 08, 2006 9:42 AM

Bob,
my main concern with Clarion.NET is how will SV implement the new ABC library (or whatever it will be called) .
Will it use the standard Clarion file access syntax (open(), next() ..) or will it use ADO.Net objects ( DataTables, DataSets and DataAdapters).

Steven Sitas

# re: Update on the Clarion UKCUG meeting @ Tuesday, August 08, 2006 1:08 PM

Steven,
The application architecture generated by the templates divides your application into layers;
Presentation layer, Business logic layer (rules), and Data access layer. The templates allow you to make the decision on what type of data access layer your want to use. You could choose to have your data access layer generated using the familiar Clarion data access model. All of the Clarion data entities (FILE,RECORD,VIEW,QUEUE and GROUP) support data binding to any .Net control that provides for data binding. There are some obvious advantages to this model (and some not so obvious advantages). Or you can choose to have your data access layer generated to utilize the ADO.Net object model. We have DataAdapters for both FILE and VIEW structures that plug right into the ADO.Net object model, so you can happily work with what you know or the new ADO.Net objects. In the future you'll have the option to generate the data access layer utilizing an ORM model like nHibernate or Gentle.Net, or when its released using LINQ.

Robert Zaunere

# re: Update on the Clarion UKCUG meeting @ Wednesday, August 09, 2006 1:07 AM

Bob,

Thanks for those interesting informations and good news about the data access.

As you seem to be doing a poll on 64 bit apps generated from within Clarion 7 please count me definitely for that feature

Would it please be possible to have a new page with the -today's not stone written etc... - features of Clarion 7 & Clarion .NET ?

I think we all need these infos urgently so as to know where we are going - regarding our apps - regarding also our Clarion upgrades (maintanance plans etc)

Of course if ever time is a pb for you, I am most willing to help if need be

Merci

JP

jean-pierre gutsatz

# re: Update on the Clarion UKCUG meeting @ Wednesday, August 09, 2006 6:14 PM

Bob,

Cheers and Thanks very much for posting. Very cool. We are quite excited about the impending release of C7. Kudos for you and the team with all the hard and long work you've done.

I'm posting something on the forums .. re. my blogging of the news as it happened.

Cheers,

Stu

# re: Update on the Clarion UKCUG meeting @ Thursday, August 10, 2006 3:34 PM

Stu - I just posted something new - feel free to blog about it on devdawn.com

JP - I hope the latest post answers some of your questions

Robert Zaunere

Powered by Community Server, by Telligent Systems