Componentes.Terceros.RemObj.../internal/6.0.43.801/1/RemObjects Samples/Data Abstract for Delphi/Combined DA Sample/fClientDataModule.pas
2010-01-29 16:17:43 +00:00

105 lines
3.1 KiB
ObjectPascal

unit fClientDataModule;
interface
uses
{vcl:} SysUtils, Classes, DB, DBClient,
{RemObjects:} uROClient, uROClientIntf, uRORemoteService, uROBinMessage, uROWinInetHTTPChannel,
{Data Abstract:} uDADataTable, uDABin2DataStreamer, uDAInterfaces, uDARemoteDataAdapter,
uDADataStreamer, uDAScriptingProvider, uDAMemDataTable, uRODynamicRequest,
uDADataAdapter, uROClasses;
type
TClientDataModule = class(TDataModule)
Message: TROBinMessage;
Channel: TROWinInetHTTPChannel;
RemoteService: TRORemoteService;
DataStreamer: TDABin2DataStreamer;
RemoteDataAdapter: TDARemoteDataAdapter;
drLoginRequest: TRODynamicRequest;
tbl_BPClients: TDAMemDataTable;
ds_BPClients: TDADataSource;
tbl_OrderDetails: TDAMemDataTable;
ds_OrderDetails: TDADataSource;
tbl_Orders: TDAMemDataTable;
ds_Orders: TDADataSource;
tbl_Groups: TDAMemDataTable;
ds_Groups: TDADataSource;
tbl_Products: TDAMemDataTable;
ds_Products: TDADataSource;
tbl_SelectedGroup: TDAMemDataTable;
ds_SelectedGroup: TDADataSource;
tbl_UnionAddresses: TDAMemDataTable;
ds_UnionAddresses: TDADataSource;
procedure tbl_SelectedGroupGroupIdChange(Sender: TDACustomField);
procedure tbl_BPClientsNewRecord(DataTable: TDADataTable);
procedure tbl_ProductsNewRecord(DataTable: TDADataTable);
procedure tbl_UnionAddressesNewRecord(DataTable: TDADataTable);
private
{ Private declarations }
fOnSelectedGroupChange: TNotifyEvent;
public
{ Public declarations }
procedure Login;
published
property OnSelectedGroupChange: TNotifyEvent read fOnSelectedGroupChange write fOnSelectedGroupChange;
end;
var
ClientDataModule: TClientDataModule;
implementation
{$R *.dfm}
uses DASampleLibrary_Intf;
{ TClientDataModule }
procedure TClientDataModule.Login;
begin
with drLoginRequest do begin
{$IFNDEF FPC}
Params[0].Value := PlatformEnum_peWindowsDelphi;
{$ELSE}
{$IFDEF WINDOWS}
Params[0].Value := PlatformEnum_peWindowsFPC;
{$ELSE}
{$IFDEF LINUX}
Params[0].Value := PlatformEnum_peLinuxFPC;
{$ELSE}
Params[0].Value := PlatformEnum_peUnknown;
{$ENDIF}
{$ENDIF}
{$ENDIF}
Params[1].Value := 'Combined DA Sample';
Execute(Params);
end;
end;
procedure TClientDataModule.tbl_BPClientsNewRecord(DataTable: TDADataTable);
begin
DataTable.FieldByName('Id').AsString := NewGuidAsString();
end;
procedure TClientDataModule.tbl_ProductsNewRecord(DataTable: TDADataTable);
begin
DataTable.FieldByName('ProductId').AsString := NewGuidAsString();
DataTable.FieldByName('ProductGroup').AsInteger := tbl_SelectedGroup.FieldByName('GroupId').AsInteger;
end;
procedure TClientDataModule.tbl_SelectedGroupGroupIdChange(
Sender: TDACustomField);
begin
if Assigned(fOnSelectedGroupChange)
then fOnSelectedGroupChange(Sender);
end;
procedure TClientDataModule.tbl_UnionAddressesNewRecord(
DataTable: TDADataTable);
begin
DataTable.FieldByName('Id').AsString := NewGuidAsString();
end;
end.