ftestclientmain.pas

来自「Delphi开发webservice的一套例子」· PAS 代码 · 共 95 行

PAS
95
字号
unit fTestClientMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls, DB, DBClient, Rio,
  SoapHTTPClient;

type
  TForm1 = class(TForm)
    DataSource1: TDataSource;
    ClientDataSet1: TClientDataSet;
    DBNavigator1: TDBNavigator;
    DBGrid1: TDBGrid;
    Button1: TButton;
    HTTPRIO1: THTTPRIO;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    HTTPRIO2: THTTPRIO;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses
  ComObj, MTDemo1DBServiceIntf;

procedure TForm1.Button1Click(Sender: TObject);
var
  vCom : Variant;
  vData : OleVariant;
begin
  vCom := CreateOleObject('PDelphi6ADOServer.Delphi6ADOServer');

  vCom.QueryMyData('Select * from employee', vData);
  Self.ClientDataSet1.Active := False;
  Self.ClientDataSet1.XMLData := vData;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  aIntf : IMTDemo1DBService;
begin
  aIntf := HTTPRIO1 as IMTDemo1DBService;
  try
    Self.ClientDataSet1.XMLData :=
      aIntf.QueryData('Select * from employee');
  finally
    aIntf := nil;
  end;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  aIntf : IMTDemo1DBService;
  lErrorCount : Longint;
begin
  aIntf := HTTPRIO1 as IMTDemo1DBService;
  try
    lErrorCount := aIntf.UpdateData(ClientDataSet1.XMLData);
    Self.Caption := IntToStr(lErrorCount);
  finally
    aIntf := nil;
  end;
end;

procedure TForm1.Button4Click(Sender: TObject);
var
  aIntf : IMTDemo1DBService;
begin
  aIntf := HTTPRIO2 as IMTDemo1DBService;
  try
    Self.ClientDataSet1.XMLData :=
      aIntf.QueryData('Select * from employee');
  finally
    aIntf := nil;
  end;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?