- Recompilación de todos los paquetes de RO para poner RemObjects_Core_D10 como paquete de runtime/designtime. git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@5 b6239004-a887-0f4b-9937-50029ccdca16
141 lines
4.0 KiB
ObjectPascal
141 lines
4.0 KiB
ObjectPascal
unit BriefcaseModelClientMain;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,
|
|
uROClient, uROClientIntf, uRORemoteService, uROBinMessage, ExtCtrls,
|
|
DBCtrls, Grids, DBGrids, ActnList;
|
|
|
|
type
|
|
TBriefcaseModelClientMainForm = class(TForm)
|
|
Panel1: TPanel;
|
|
gCustomers: TDBGrid;
|
|
gOrders: TDBGrid;
|
|
dbnCustomers: TDBNavigator;
|
|
dbnOrders: TDBNavigator;
|
|
Splitter1: TSplitter;
|
|
OpenButton: TButton;
|
|
ApplyUpdateButton: TButton;
|
|
DiscardChangesButton: TButton;
|
|
ShowChangesButton: TButton;
|
|
ActionList1: TActionList;
|
|
ApplyUpdateAction: TAction;
|
|
DiscardChangesAction: TAction;
|
|
ShowChangesAction: TAction;
|
|
procedure ApplyUpdateButtonClick(Sender: TObject);
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure OpenButtonClick(Sender: TObject);
|
|
procedure DiscardChangesButtonClick(Sender: TObject);
|
|
procedure ShowChangesButtonClick(Sender: TObject);
|
|
procedure ApplyUpdateActionUpdate(Sender: TObject);
|
|
private
|
|
{ Private declarations }
|
|
procedure Load;
|
|
procedure Save;
|
|
procedure FetchData;
|
|
public
|
|
{ Public declarations }
|
|
end;
|
|
|
|
var
|
|
BriefcaseModelClientMainForm: TBriefcaseModelClientMainForm;
|
|
|
|
implementation
|
|
|
|
uses
|
|
BriefcaseModelClientData, uDADataTable, BriefcaseModelClientChanges;
|
|
|
|
{$R *.dfm}
|
|
|
|
procedure TBriefcaseModelClientMainForm.ApplyUpdateButtonClick(Sender: TObject);
|
|
begin
|
|
BriefcaseModelClientDataModule.RemoteDataAdapter.ApplyUpdates([BriefcaseModelClientDataModule.tbl_Customers]);
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.Load;
|
|
|
|
function loadTable(ATable: TDADataTable): Boolean;
|
|
var
|
|
aFileName: string;
|
|
begin
|
|
aFileName := ExtractFilePath(Application.ExeName) + ATable.LogicalName + '.table';
|
|
if FileExists(aFileName) then begin
|
|
aTable.LoadFromFile(aFileName);
|
|
Result := True;
|
|
end else
|
|
Result := False;
|
|
end;
|
|
|
|
begin
|
|
if not loadTable(BriefcaseModelClientDataModule.tbl_Customers) or not loadTable(BriefcaseModelClientDataModule.tbl_Orders) then begin
|
|
if MessageDlg('No data table files could be found, do you want to fetch the data from the server?', mtConfirmation, [mbYes, mbNo], 0) = idYes then begin
|
|
FetchData;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.Save;
|
|
|
|
procedure SaveTable(ATable: TDADataTable);
|
|
begin
|
|
with ATable do
|
|
if active then
|
|
SaveToFile(ExtractFilePath(Application.ExeName) + LogicalName + '.table');
|
|
end;
|
|
|
|
begin
|
|
with BriefcaseModelClientDataModule do begin
|
|
SaveTable(tbl_Customers);
|
|
SaveTable(tbl_Orders);
|
|
end;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
begin
|
|
Save;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.FormCreate(Sender: TObject);
|
|
begin
|
|
Load;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.OpenButtonClick(Sender: TObject);
|
|
begin
|
|
FetchData;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.FetchData;
|
|
begin
|
|
BriefcaseModelClientDataModule.tbl_Orders.close;
|
|
BriefcaseModelClientDataModule.tbl_Customers.close;
|
|
BriefcaseModelClientDataModule.RemoteDataAdapter.Fill([BriefcaseModelClientDataModule.tbl_Customers,
|
|
BriefcaseModelClientDataModule.tbl_Orders], true, false);
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.DiscardChangesButtonClick(Sender: TObject);
|
|
begin
|
|
with BriefcaseModelClientDataModule do begin
|
|
tbl_Customers.CancelUpdates;
|
|
end;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.ShowChangesButtonClick(Sender: TObject);
|
|
begin
|
|
ShowChanges;
|
|
end;
|
|
|
|
procedure TBriefcaseModelClientMainForm.ApplyUpdateActionUpdate(
|
|
Sender: TObject);
|
|
begin
|
|
with BriefcaseModelClientDataModule do
|
|
TAction(Sender).Enabled :=
|
|
(tbl_Customers.DeltaInitialized) and ((tbl_Customers.Delta.Count > 0)) or
|
|
(tbl_Orders.DeltaInitialized) and ((tbl_Orders.Delta.Count > 0))
|
|
end;
|
|
|
|
end.
|
|
|