Class TForm1 (unit navfrm) |
Inherits from
TForm
------------------------------------------------------------------------------
OENavigator, OEExtHstmt, OETables, OEDatasources Demo Program.
All component provided by CRYPTOCard Corporation.
ODBC Express Add On components.
Contact Greg Carter, CRYPTOCard Corporation, gregc@cryptocard.com
Latest updates can be found at http://www.cryptocard.com/oeext.html
other Delphi components at http://www.cryptocard.com/pascal.html
comments, suggestions welcome!
This demo requires that you have installed the MS ODBC driver pack 3.0, and
have setup an Access Datasource called TESTACCESS32, and have run the TESTSQL
demo from ODBC Express, which fills some tables with data(students, takes,
courses).
-------------------------------------------------------------------------------
procedure BrowseExtHstmtAfterCancel(Sender: TObject);
Work around for OE 'feature' of not refreshing visual components, this is
only temporary, shouldn't be needed
procedure BrowseExtHstmtAfterFirst(Sender: TObject);
procedure BrowseExtHstmtAfterInsert(Sender: TObject);
do any other validation here
procedure BrowseExtHstmtBeforeDelete(Sender: TObject;
var bUpdate: Boolean);
Note that we use the OEDBNavigator DataSource Property to get the data
from the currently connect ExtHstmt
procedure BrowseExtHstmtBeforePost(Sender: TObject;
var bUpdate: Boolean);
procedure BrowseExtHstmtError(Sender: TObject; Msg: string;
Operation: THstmtOperations);
procedure BrowseExtHstmtInsert(Sender: TObject;
var iContinue: Boolean);
procedure FormCreate(Sender: TObject);
procedure OEDBNavigator1ReturnToBrowse(Sender: TObject);
The OEDBNavigator is now using the 'InsertHstmt' to manipulate data.
BrowseExtHstmt : TOEExtHstmt;
Hdbc1 : THdbc;
Henv1 : THenv;
InsertExtHstmt : TOEExtHstmt;
Label1 : TLabel;
Label10 : TLabel;
Label11 : TLabel;
Label12 : TLabel;
Label13 : TLabel;
Label14 : TLabel;
Label15 : TLabel;
Label16 : TLabel;
Label17 : TLabel;
Label18 : TLabel;
Label19 : TLabel;
Label2 : TLabel;
Label20 : TLabel;
Label21 : TLabel;
Label22 : TLabel;
Label23 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Label6 : TLabel;
Label7 : TLabel;
Label8 : TLabel;
Label9 : TLabel;
ODBCDataSources1 : TODBCDataSources;
ODBCTables1 : TODBCTables;
OEDBNavigator1 : TOEDBNavigator;
OEEdit1 : TOEEdit;
OEEdit2 : TOEEdit;
OEGrid1 : TOEGrid;
PageControl1 : TPageControl;
TabSheet1 : TTabSheet;
TabSheet2 : TTabSheet;
FSN : NullString;
Private declarations
procedure BrowseExtHstmtAfterCancel(Sender: TObject);
Work around for OE 'feature' of not refreshing visual components, this is
only temporary, shouldn't be needed
procedure BrowseExtHstmtAfterFirst(Sender: TObject);
procedure BrowseExtHstmtAfterInsert(Sender: TObject);
do any other validation here
procedure BrowseExtHstmtBeforeDelete(Sender: TObject;
var bUpdate: Boolean);
Note that we use the OEDBNavigator DataSource Property to get the data
from the currently connect ExtHstmt
procedure BrowseExtHstmtBeforePost(Sender: TObject;
var bUpdate: Boolean);
procedure BrowseExtHstmtError(Sender: TObject; Msg: string;
Operation: THstmtOperations);
procedure BrowseExtHstmtInsert(Sender: TObject;
var iContinue: Boolean);
procedure FormCreate(Sender: TObject);
procedure OEDBNavigator1ReturnToBrowse(Sender: TObject);
The OEDBNavigator is now using the 'InsertHstmt' to manipulate data.
The InsertHstmt should only have one record in its result set(the one inserted).
When ODBC version 3 comes out we can do away with this and use FetchFind to
position our selfs at the inserted record. When the user presses any of the
navigate buttons the OnReturnToBrowse method will be triggered, there we set
the OENavigator back to using the BrowseHstmt.
BrowseExtHstmt : TOEExtHstmt;
Hdbc1 : THdbc;
Henv1 : THenv;
InsertExtHstmt : TOEExtHstmt;
Label1 : TLabel;
Label10 : TLabel;
Label11 : TLabel;
Label12 : TLabel;
Label13 : TLabel;
Label14 : TLabel;
Label15 : TLabel;
Label16 : TLabel;
Label17 : TLabel;
Label18 : TLabel;
Label19 : TLabel;
Label2 : TLabel;
Label20 : TLabel;
Label21 : TLabel;
Label22 : TLabel;
Label23 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Label6 : TLabel;
Label7 : TLabel;
Label8 : TLabel;
Label9 : TLabel;
ODBCDataSources1 : TODBCDataSources;
ODBCTables1 : TODBCTables;
OEDBNavigator1 : TOEDBNavigator;
OEEdit1 : TOEEdit;
OEEdit2 : TOEEdit;
OEGrid1 : TOEGrid;
PageControl1 : TPageControl;
TabSheet1 : TTabSheet;
TabSheet2 : TTabSheet;
FSN : NullString;
Private declarations