unit fEditClient; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, DBCtrls, Mask, DB; type TfmEditClient = class(TForm) Panel1: TPanel; Panel2: TPanel; btOK: TButton; btCancel: TButton; Label1: TLabel; dbeClientName: TDBEdit; Label2: TLabel; dbeDiscount: TDBEdit; Label3: TLabel; dbeAddress: TDBEdit; Label4: TLabel; dbePhone: TDBEdit; private { Private declarations } public { Public declarations } function EditClient(aDataSource: TDataSource): boolean; end; var fmEditClient: TfmEditClient; implementation {$R *.dfm} { TfmEditClient } function TfmEditClient.EditClient(aDataSource: TDataSource): boolean; begin Caption := 'Editing ' + aDataSource.DataSet.FieldByName('ClientName').AsString; dbeClientName.DataSource := aDataSource; dbeDiscount.DataSource := aDataSource; dbeAddress.DataSource := aDataSource; dbePhone.DataSource := aDataSource; aDataSource.Edit; if ShowModal = mrOK then begin aDataSource.DataSet.Post; Result := true; end else begin aDataSource.DataSet.Cancel; Result := false; end; end; end.