unit PuhluFormKomp; {------------------------------------------------------------------------------} { Unit Name: PuhluForm Purpose : Example of using DBExpress components to build a phone catalog Done by dynamic field component (TDynKentat) Author : Vesa Lappalainen Date : 23.09.2001 Changed : ToDo : - in Kylix change SQLConnectionPuh.Connection name so that it points to some existing database. For example if vesah is InterBase server having a database e:\kurssit\winohj\vclclx\puh\puh.gdb then set to SQLConnectionPuh.Database vesah:e:\kurssit\winohj\vclclx\puh\puh.gdb This is done by double clicking SQLConnectionPuh } {------------------------------------------------------------------------------} interface uses SysUtils, Types, Classes, {$ifdef CLX} QGraphics, QControls, QForms, QDialogs,QStdCtrls,QExtCtrls, QMask, QDBCtrls, QGrids, QDBGrids,QComCtrls, {$else} Graphics, Controls, Forms, Dialogs,StdCtrls,ExtCtrls, Mask, DBCtrls, Grids, DBGrids,ComCtrls, {$endif} DBXpress, DB, SqlExpr, Provider, DBClient, DBLocal, DBLocalS, FMTBcd, dynkenkomp; type TFormPuhlu = class(TForm) DataSourcePuh: TDataSource; ButtonUpdate: TButton; SQLConnectionPuh: TSQLConnection; SQLDataSetPuh: TSQLDataSet; DataSetProviderPuh: TDataSetProvider; ClientDataSetPuh: TClientDataSet; PanelControls: TPanel; EditHakuehto: TEdit; ButtonHAE: TButton; DBEditNimi: TDBEdit; DBNavigator1: TDBNavigator; PageControl1: TPageControl; TabSheetTaulu: TTabSheet; TabSheetLomake: TTabSheet; DBGrid1: TDBGrid; DynKentat1: TDynKentat; procedure ButtonUpdateClick(Sender: TObject); procedure ButtonHAEClick(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } procedure TeeHaku(s:string); public { Public declarations } end; var FormPuhlu: TFormPuhlu; implementation {$R *.xfm} procedure TFormPuhlu.ButtonUpdateClick(Sender: TObject); begin ClientDataSetPuh.ApplyUpdates(0); end; procedure TFormPuhlu.ButtonHAEClick(Sender: TObject); begin TeeHaku(EditHakuehto.Text); end; procedure TFormPuhlu.FormCreate(Sender: TObject); begin EditHakuehto.Text := SQLDataSetPuh.CommandText; TeeHaku(EditHakuehto.Text); end; procedure TFormPuhlu.TeeHaku(s: string); begin DBEditNimi.DataField := ''; SQLDataSetPuh.CommandText := s; SQLDataSetPuh.Active := true; ClientDataSetPuh.Active := false; ClientDataSetPuh.Active := true; DBEditNimi.DataField := ClientDataSetPuh.Fields[0].FieldName; end; end.