TMemDataset suite version 2.16
(Download & registration page)Now supports Delphi 7
- You have reached the download page for the trial version of the TMemDataset components suite. The TMemDataset is a unique BDE free memory table that behaves like a regular Delphi TTable!.
Download trial version 2.16 for Delphi 4, 5 and 6 & 7
Download trial version 2.12 for Delphi 3, 4 and 5
Register on-line now with
Demo Applications Available (Included in the trial)!You can also download a kit of DEMO applications showing some TMemDataset features. It actually demonstrate the following TMemDataset capabilities.
- Automation server streaming
- Filters
- LookupFields
- Ranges
- Runtime Fields Creation
- Runtime Index Creation
- SaveToStream and SaveToFile
Field structure can be borrowed from an existing table or defined using a familiar visual property editor. The fields definitions are stored in the DFM file so the application doesn't have to rely on any external definition files. Data can be imported, added, modified or deleted from the table. All TDataset Standard events are supported. For example, these events can be used to update a physical table on any change in the memory table. All standard field types are supported.
The TMemDataset have persistence capabilities. The data can be saved either in a stream or in a file and be loaded back in the table. It also gives the component the possibility to stream out it's data from a server application to a client application using Sockets, DCOM or whatsoever. This gives basic 3-tier data exchange mechanics. A demo application is available to show this feature.
One of the things that makes the TMemDataset unique is it's full memory index support. Any number of indexes can be created either at run-time or at design-time. A 'OrderBy' property gives the developer a quick and easy way to create an index to sort the table on one or many fields. All indexes are automatically maintained by TMemDataset as the data is altered.
Here is a short list of the major benefits the component can bring to all of us:
- Can quickly mirror a Query result set non-modifiable and let the user modify the Memory image. Then the real files can be updated on Post events generated from the memory table.
- Can greatly simplify the implementation of a sortable grid via headers click.
- TMemDataset can be mapped on a general bytes record that represents different structures all stored in the same table. One TMemDataset by record type. Then connect data-aware controls on TMemDataset for editing and uses the events to update the physical table. Clean and simple!
- Simplifies Edit Forms by defining a specific record layout in a TMemDataset that matches the information that has to be inputted. The form can then benefit of the use of the data-aware components mechanics. This brings uniformity of field validations using TFields events.
- Why use now a TStringGrid when you can put in a TMemDataset all information and let the TDBGrid take care of navigation and validation.
- Can speed-up data access in certain situations
- Keep the code short and clean by utilizing the data-aware capabilities for manipulations and data retrieving otherwise done by hand.
- Use the streaming capabilities to exchange data from a server application to a client application on a LAN or the internet. Why not!.
- ....and lot more!
Register on-line now with
The TMemDataset is a shareware and is copyrighted.
- 45$ USD, full source codes are included. Source codes will be available with every release.
Both registration includes lifetime upgrades and full support. For more information on registration please contact Alain Brunet.
The TMemDataset is a result of long hours of work and I've planned a lot more long hours to add capabilities that will make the TMemDataset component a must have in your component library.
Upgrades will be sent automatically as the are released for registered users. I'll be supporting the component as long as I need to. Here is the description of the first releases already available and the next releases as I planned it for now:
- Releases
Version 2.16 (April 2003)
- Support for Delphi 7
Version 2.15 (Sept 2001)
Bug Fixes:
Version 2.12 (August 1999)
- Support for Delphi 5
- Support for 0 size memo fields (FlashFiler)
- RecalculateFieldsTable - New procedure to recalculate calculated field
values for the whole table if needed in some stuation.- New Property LoadingFromStream. True if in the process of loading from
a stream or file. Usefull in some events generated by the process.Bug Fixes:
- The memo fields were showing garbage if saved empty and loaded back.
- CursorProps was limited to 127 fields. No impact if not used by a component inherited from TMemDataset..
Version 2.11 (July 1999)
Version 2.1 (June 1999)
Version 2.01 (Beg. December 1998)
Bug fixes:
- Calculated and lookup fields were not calculated anymore in the execution of LoadFromTDataset process.
- The 'Load From File' button of the fields structure definition property editor was not working anymore with Delphi 4.
- Setting the option 'EmptyTableOnClose' generate an AV when destroying
the TMemDataset.
Version 2.0 (Mid November 1998)
- Support blobs (Memo fields)
- Filters
- Infopower support
- Descending indexes
- Partial key locate
Version 1.8 (End of August 1998)
- Ranges are now supported.
- Calculated fields.
- Lookup fields.
Version 1.7 (Early July 1998)
- SaveToFile / LoadFromFile.
- SaveToStream / loadFromStream.
Version 1.6 (Mid-June 1998)
- New search functions implemented: Locate, Lookup
- A new option 'UseFieldMappingOnLoadDataset' to support a different field structure definition between the TMemDataset and the TDataset it is loading from.
- A new option 'EmptyTableOnClose' will clear the content of the table when closing it.
- A new option 'AddIndexOnLocate'. Will automatically create an index on fields the locate is made on.
- Implementation of 'AppendRecord' and 'InsertRecord' procedures.
- Now support muti-select data controls.
Version 1.5 (End of April 1998)
Full working indexes implemented 'the TTable way'. The idea behind that is to be able to import the indexes structure from existing BDE supported files. An 'OrderBy' property to define a sort order for quick sorting without having to get through all the steps to define and use normal indexes. Version 1.0 (Mid-March 1998)
- Full functioning memory table ready to use with insert, delete and browsing capabilities.
- Recognized by all Delphi DB-aware components and most 3rd parties.
- Table layout defined with a 'Database desktop' look-alike property editor.
- Supported field types so far: String, Smallint, Integer, Word, Boolean, Float, Currency, BCD, Date, Time, DateTime, Bytes and even AutoInc!
- Virtually no records limit (Tlist inside).
- Required fields supported.
- Persistent TFields information (field editor) works exactly as with the TTable
- Functions for importing a TDataset record layout either at design or run-time.
- Functions to import records from another TDataset component.
- Carefully designed to avoid classical bugs like memory leaks and overwrites. On top of that I 'boundsCheck' all my apps. (just in case!)
- Very fast (Quicksorts and binary searches)
Last update: April
29th 2003
@Copyrights 1998