**************************************************************************** * * * CBData 0.4 - 3rd January 1999 * * * * A CodeBase 6.x Compatible DataSet for Delphi 3.0 & Delphi 4.0 * * * **************************************************************************** CBData component package is FREEWARE... 1) Description --------------- CBData contains 2 components that encapsulate the CODE4 and DATA4 CodeBase structures: TCodeBase and TCBDataSet. The encapsulation of DATA4 structure (TCBDataSet) is derivated from TDataSet. That means that you can use all the Data Controls (DBGrid, DBMemo, ...) exactly as if you were using BDE. CBData V0.4 is compatible with: - Delphi 3.0 (CB64.DPL) - Delphi 4.0 (CB64.DPC) - CodeBase 6.4 (6.2 and 6.3 versions are available on demand) - Fox, MDX, and Clipper formats - Desktop or Client/Server 2) What do you need to use CBData --------------------------------- 2.1 The CodeBase 6.x 32bits DLL 2.2 The DCU files contained in this package 2.3 In Delphi, Select Component|Install Packages... and select CB64.DPL 3) Creating a sample application -------------------------------- 3.1 Put a TCodeBase (C4) component on your form Give it an Alias and a DataPath 3.2 Put a TCBDataSet (D4) component on your form Set the Master property to the TCodeBase Alias Select a TableName, and eventually an IndexName 3.3 Optionally set Query and/or a Sort order. 3.4 Set the TCBDataSet Active property to True 3.5 Put a TDataSource component on your form and link it to the TCBDataSet component 3.6 Add some Data controls and test it... 4) Feedback ------------ Feedback is greatly appreciated: by e-mail: nasdron@ibm.net Nicolas Nasdrovisky 5) Components overview ---------------------- 5.1 TCodeBase - Encapsulation of the CODE4 structure properties (mainly encapsulation of CODE4 fields): ----------- AccessMode: TCODE4AccessMode; Alias: String; DataPath: String; DateFormat: String; ErrorCode: Integer; FileFlush: Boolean; Handle: CODE4; LockAttempts: Integer; LockAttemptsSingle: Integer; LockDelay: Integer; LockEnforce: Boolean; Log: TCODE4Log; Optimize: TCODE4Optimize; OptimizeWrite: TCODE4Optimize; ReadOnly: Boolean; Safety: Boolean; SingleOpen: Boolean; TranStatus: Integer; UnlockAuto: TCODE4UnlockAuto; methods (mainly encapsulation of CODE4 functions): -------- Close: Integer; ClearError; Create(AOwner: TComponent); Destroy; Flush: Integer; Lock: Integer; LockClear; LogCreate(Name: String; UserId: String): Integer; TranCommit: Integer; TranRollBack: Integer; TranStart: Integer; Unlock: Integer; 5.2 TCBDataSet - Encapsulation of the DATA4 structure properties: ----------- Active: Boolean; Handle: DATA4; IndexName: String; Master: String; Filter: String; Query: String; Sort: String; TableName: String; ToggleDelete: Boolean; + inherited TDataSet properties (Active, BOF, EOF, RecordCount, State, ...) events: ------- BeforeOpen; AfterOpen; BeforeClose; AfterClose; BeforeInsert; AfterInsert; BeforeEdit; AfterEdit; BeforePost; AfterPost; BeforeCancel; AfterCancel; BeforeDelete; AfterDelete; BeforeScroll; AfterScroll; OnCalcFields; methods (mainly encapsulation of DATA4 functions): -------- Create(AOwner: TComponent); Destroy; Deleted: Boolean; Flush; GetTags: TStringList; GetTables: TStringList; IsSequenced: Boolean; Lock; Pack; Recall; Seek(Key: String): Boolean; SeekNext(Key: String): Boolean; SeekDouble(Key: Double): Boolean; SeekNextDouble(Key: Double): Boolean; Unlock; Zap; + inherited TDataSet methods (Open, Close, First, Last, Next, FieldByName, ...) 6) Source code availability --------------------------- For 100 USD, get the full source code of this release and all the future releases of CBData components. To receive the sources by e-mail, please contact: SC Graphitex Nicolas Nasdrovisky route de Paturages, 5A B7080 NOIRCHAIN Belgium e-mail: nasdron@ibm.net fax: +32 (65) 51.20.02 VISA orders are possible (by fax) 7) Changes ---------- V0.1 - 1st novembre 1997 ---- - First release V0.2 - 14th decembre 1997 ---- - Lookup fields are now working. - New function: LogCreate. - Transactions support. - A few bugs removed: - Record positioning after Post. V0.4 - 3rd january 1999 ---- - Client/Server compatibility - Delphi 4.0 and CodeBase 6.4 compatibility - New "Filter" property (much faster than "Query") "Filter" property uses Seek functions, and needs an index to be selected. 8) Credits ---------- Many thanks to: Charlie Zha, for the great "lookup" code. Hakki Dogusan, for the BCB++ 3.0 adaptation (please ask by e-mail)