|
<< Click to Display Table of Contents >> ClientDataSet export XML/CDS |
![]() ![]()
|
Although the ClientDataSet (CDS) is mainly intended as an internal in memory data storage or as a database independent dataset, the ClientDataSet may also be used for disc storage of data in stand alone database applications (in this context aka MyBase) or in brief case models to store data when off grid.
To serve generating these files, the PdxEditor has been added the option to export Paradox and dBASE tables to the ClientDataSet disc files as either binary .cds files or as .xml files.
Please note, that both file types are specific to the ClientDataSet format needing specialized conversion routines to be used with non-ClientDataSet applications.
Also note, that the format of the ClientDataSet .xml files, in spite of the common file extension, are distinct from that of the .xml files used by the FireDAC FdMemTable data base module from the programming language used.
One of the benefits exporting to ClientDataSet files (*.cds or *.xml) is the unrestricted inclusion of binary contents beyond large lumps of memo text (documents, graphics, media files, etc.) being portable without depending of BDE for import.
The drawback is the dependence on Embarcadero developed applications (Delphi or C++), as the CDS format is not a widespread compatible format.
One of the benefits of exporting CDS as XML is the transparency, the content being visible and editable in a plain text editor.
However, the challenge is to interpret the XML format by foreign database systems.
•Autoinc (Autoincrement) fields are preserved in exports (PdxEditor vers. 5.10 and later), but will be converted into Integer fields if imported into PdxEditor.
•Paradox BCD (Binary Coded Decimal) is fully handled by the PdxEditor, but cannot be edited in more recent Delphi applications (compiled with Delphi XE3 and later) if accessed as a Paradox table.
However the BCD field do export seamlessly to the ClientDataSet disc files by which this type of fields is editable in all versions of Delphi or C++ compiled applications.
•OLE fields (ParadoxOLE or dBaseOLE) are specific for the Paradox and dBASE table formats through the BDE and are not handled by the ClientDataSet export procedure - so, do avoid to include these fields in the source tables for ClientDataSet exports.
__________________________