CORBA клиент-сервер |
Previous Top Next |
Code: |
unit ufrmCorbaClient;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, SimpleCorbaServer_TLB, corbaObj, Grids;
type TForm1 = class(TForm) GroupBox1: TGroupBox; Label2: TLabel; edtDatabase: TEdit; Label3: TLabel; edtUserName: TEdit; Label4: TLabel; edtPassword: TEdit; Button5: TButton; GroupBox2: TGroupBox; memoSQL: TMemo; GroupBox3: TGroupBox; Button6: TButton; grdCorbaData: TStringGrid; procedure ConnectClick(Sender: TObject); procedure ExecuteClick(Sender: TObject); private { Private declarations } FQueryServer: IQueryServer; public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.ConnectClick(Sender: TObject); begin if not (assigned(FQueryServer)) then FQueryServer := TQueryServerCorbaFactory.CreateInstance('SimpleServer'); FQueryServer.Login(edtDatabase.Text, edtUserName.Text, edtPassword.Text); end;
procedure TForm1.ExecuteClick(Sender: TObject); var i, j: integer; CorbaData: OLEVariant; begin FQueryServer.SQL := memoSQL.Text; FQueryServer.Execute;
grdCorbaData.ColCount := FQueryServer.FieldCount; grdCorbaData.RowCount := 0; j := 0;
while not (FQueryServer.EOF) do begin inc(j); grdCorbaData.RowCount := j; CorbaData := (FQueryServer.Data); for i := 0 to FQueryServer.FieldCount - 1 do begin grdCorbaData.Cells[i + 1, j - 1] := CorbaData[i]; end; FQueryServer.Next; end; end;
end. |
©Drkb::04358
DelphiWorld 6.0