Marco Cantù 1998, Mastering Delphi 4
Project: MDCLIENT.DPR
Project Structure
MDCLIENT.DPR
program MdClient;
uses
Forms,
MdcForm in 'MdcForm.pas' {Form1};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
MDCFORM.PAS
unit MdcForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, Grids, DBGrids, Db, DBClient, StdCtrls, MConnect, MidasCon;
type
TForm1 = class(TForm)
ClientDataSet1: TClientDataSet;
ClientDataSet2: TClientDataSet;
Panel1: TPanel;
DBGrid1: TDBGrid;
Splitter1: TSplitter;
DBGrid2: TDBGrid;
DataSource1: TDataSource;
DataSource2: TDataSource;
Button1: TButton;
DCOMConnection1: TDCOMConnection;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
Customers, Orders: Variant;
begin
DCOMConnection1.Connected := True;
DCOMConnection1.AppServer.GetBoth (
Customers, Orders);
ClientDataSet1.Data := Customers;
ClientDataSet2.Data := Orders;
ClientDataSet1.Open;
ClientDataSet2.Open;
end;
end.
MDCFORM.DFM
object Form1: TForm1
Left = 217
Top = 125
Width = 502
Height = 337
Caption = 'Master-Detail Client'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = True
PixelsPerInch = 96
TextHeight = 13
object Splitter1: TSplitter
Left = 0
Top = 161
Width = 494
Height = 3
Cursor = crVSplit
Align = alTop
end
object Panel1: TPanel
Left = 0
Top = 0
Width = 494
Height = 41
Align = alTop
TabOrder = 0
object Button1: TButton
Left = 16
Top = 8
Width = 75
Height = 25
Caption = 'Get Both'
TabOrder = 0
OnClick = Button1Click
end
end
object DBGrid1: TDBGrid
Left = 0
Top = 41
Width = 494
Height = 120
Align = alTop
DataSource = DataSource1
TabOrder = 1
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
end
object DBGrid2: TDBGrid
Left = 0
Top = 164
Width = 494
Height = 146
Align = alClient
DataSource = DataSource2
TabOrder = 2
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
end
object ClientDataSet1: TClientDataSet
Aggregates = <>
Params = <>
Left = 32
Top = 40
end
object ClientDataSet2: TClientDataSet
Aggregates = <>
IndexFieldNames = 'CustNo'
FetchOnDemand = False
MasterFields = 'CustNo'
MasterSource = DataSource1
PacketRecords = 0
Params = <>
Left = 32
Top = 88
end
object DataSource1: TDataSource
DataSet = ClientDataSet1
Left = 104
Top = 40
end
object DataSource2: TDataSource
DataSet = ClientDataSet2
Left = 104
Top = 88
end
object DCOMConnection1: TDCOMConnection
Connected = True
ServerGUID = '{C5DDE906-2214-11D1-98D0-444553540000}'
ServerName = 'MdServer.MdDataModule'
Left = 168
Top = 40
end
end
Copyright Marco Cantù 1998