Components4Developers have been given special permission by CodeGear to talk about the Highlander field test release.
A project that I have running which has slipped on our release schedule is kbmMemtable dotnet extensions. This uses the standard TkbmMemtable with some special plug-in extensions. The extensions are relevent to dotnet only and extend the memtable to be fully bindable in dotnet. I had this running under dotnet 1.1 built using BDS2006 but wanted to take it further by re-optimsing some of the memtable internal structures to boost it's speed and capabilities. Unfortunately at the time the internal restructuring I had in mind used features only available in dotnet 2.0 hence the slip.
Now that Highlander has come along I've re-visited my project. After rebuilding my assembly with the plugin extensions I created a new ASP.net project and added a reference to it - kbmMemProD2007dnRun.dll in this case.
I then added some code into the page_load event of the default WebForm1.aspx where I create a kbmMemtable and add three fielddefs to it. These are of type String, Integer and Float.
I then Open the table and add 20 records to it. My page contains a DataGrid and once I've added my records to the memtable I bind it to the datagrid.
Here is a screenshot of the running application:
So - some might wonder what the big deal is?
Well there are a few things going on.
1) kbmMemtable is running under dotnet 2
2) we're able to bind kbmMemtable as a datasource to standard dotnet controls
3) kbmMemtable is still a TDataset descendent and hence can be bound to any VCL.net control too
4) kbmMW queries are descended from TkbmCustomMemtable - hence kbmMW resultsets also support 1, 2 and 3 above.
In combination with Spider 2 that I blogged about last time I hope you can see it is now possible to pass around and work with kbmMemtables on dotnet 1.1, 2.0 and 3.0, win32 and linux. More to the point - you can choose to visualise the data using any combination of VCL, VCL.net, WinForms or ASP.net controls/components.
My next blog will show kbmMW working in Highlander.
Richard