git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@68 b6239004-a887-0f4b-9937-50029ccdca16
107 lines
2.8 KiB
ObjectPascal
107 lines
2.8 KiB
ObjectPascal
unit fClientForm;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,
|
|
uROClient, uROClientIntf, uRORemoteService, uROBinMessage, Grids, DBGrids,
|
|
uROPoweredByRemObjectsButton, uDAPoweredByDataAbstractButton, ExtCtrls;
|
|
|
|
type
|
|
TClientForm = class(TForm)
|
|
Panel1: TPanel;
|
|
DAPoweredByDataAbstractButton1: TDAPoweredByDataAbstractButton;
|
|
Label1: TLabel;
|
|
cbInsertTo: TComboBox;
|
|
Label2: TLabel;
|
|
edFilter: TEdit;
|
|
chFilterOn: TCheckBox;
|
|
Panel2: TPanel;
|
|
btLoad: TButton;
|
|
btInsert: TButton;
|
|
btUpdate: TButton;
|
|
btDelete: TButton;
|
|
dgData: TDBGrid;
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure btLoadClick(Sender: TObject);
|
|
procedure chFilterOnClick(Sender: TObject);
|
|
procedure btInsertClick(Sender: TObject);
|
|
procedure btUpdateClick(Sender: TObject);
|
|
procedure btDeleteClick(Sender: TObject);
|
|
private
|
|
{ Private declarations }
|
|
public
|
|
{ Public declarations }
|
|
end;
|
|
|
|
var
|
|
ClientForm: TClientForm;
|
|
|
|
implementation
|
|
|
|
uses
|
|
fClientDataModule, uDAInterfaces, DB;
|
|
|
|
{$R *.dfm}
|
|
|
|
procedure TClientForm.btDeleteClick(Sender: TObject);
|
|
begin
|
|
with ClientDataModule.tbl_UnionAddresses do
|
|
if RecordCount > 0 then Delete;
|
|
end;
|
|
|
|
procedure TClientForm.btInsertClick(Sender: TObject);
|
|
var
|
|
id: TGUID;
|
|
begin
|
|
CreateGUID(id);
|
|
ClientDataModule.tbl_UnionAddresses.AddRecord(
|
|
['Id', 'Name', 'ContactPhone', 'ContactAddress', '@SourceTable'],
|
|
[GuidToString(id), 'John Doe', '(000)111-222-333', 'Planet Earth', cbInsertTo.ItemIndex]);
|
|
end;
|
|
|
|
procedure TClientForm.btLoadClick(Sender: TObject);
|
|
var
|
|
exp: TDAWhereExpression;
|
|
expArr: array of TDAWhereExpression;
|
|
wb: TDAWhereBuilder;
|
|
begin
|
|
with ClientDataModule do begin
|
|
tbl_UnionAddresses.ClearRows(true);
|
|
if chFilterOn.Checked and (Trim(edFilter.Text) <> '') then begin
|
|
wb := TDAWhereBuilder.Create;
|
|
exp := wb.NewBinaryExpression(
|
|
wb.NewField(tbl_UnionAddresses.LogicalName, 'Name'),
|
|
wb.NewConstant('%' + Trim(edFilter.Text) + '%', datString),
|
|
dboLike);
|
|
SetLength(expArr, 1);
|
|
expArr[0] := exp;
|
|
RemoteDataAdapter.Fill([tbl_UnionAddresses], expArr);
|
|
wb.Free;
|
|
end
|
|
else RemoteDataAdapter.Fill([tbl_UnionAddresses]);
|
|
end;
|
|
end;
|
|
|
|
procedure TClientForm.btUpdateClick(Sender: TObject);
|
|
begin
|
|
with ClientDataModule do begin
|
|
if tbl_UnionAddresses.State <> dsBrowse then tbl_UnionAddresses.Post;
|
|
RemoteDataAdapter.ApplyUpdates([tbl_UnionAddresses]);
|
|
end;
|
|
end;
|
|
|
|
procedure TClientForm.chFilterOnClick(Sender: TObject);
|
|
begin
|
|
btLoad.Click;
|
|
end;
|
|
|
|
procedure TClientForm.FormCreate(Sender: TObject);
|
|
begin
|
|
Application.Title := ClientForm.Caption;
|
|
// TODO: until DynamicRequest bug fixed
|
|
//ClientDataModule.Login;
|
|
end;
|
|
|
|
end.
|