步驟一:建立伺服器端應用程式
- IDE 選 File → New → Other,在 WebServices 頁面選 Soap Server Application。
- 在 New Soap Server Application 對話框選 Web App Debugger executable,按 OK。Delphi 自動產生一個
WebModule,內含三個 WebServices 控制項。
- 在 WebServices 頁面選 Soap Server Data Module,按 OK,彈出 Soap Data Module Wizard。
- Class Name 輸入
D6DBDataModule1,按 OK。Delphi 產生 SOAP 資料模組,在其中加入 TDatabase、TQuery、TDataSetProvider 三個控制項。
- 設定各控制項屬性(與傳統 Delphi 資料庫應用類似),
TDataSetProvider 為 DataAccess 控制項,提供遠端呼叫支援。
- 編譯執行專案使其註冊。完成伺服器端設計。
步驟二:建立客戶端應用程式
- 專案群組中 Add New Project 建立新應用程式專案。
- 主表單放入
TDBNavigator、TDBGrid。
- 新增一個資料模組,放入
TSOAPConnection、TClientDataSet、TDataSource。
TSOAPConnection:利用 SOAP 協定連接遠端伺服器的介面。
- URL 格式:
https://WebServer位址/WebService應用程式名稱/soap/SoapServerDataModule名稱
- 設定
TClientDataSet 屬性:
RemoteServer 指向 TSOAPConnection。
- 選取
ProviderName(對應伺服器端 TDataSetProvider 名稱)。
- 在表單單元
uses 子句引用資料模組單元(如 Unit5)與 DB。
- 設定
TDBNavigator、TDBGrid 的 DataSource 指向資料模組中的 TDataSource(如 dmDemo1.dsDemo1)。
- 將
TClientDataSet.Active := True,編譯專案群組。將客戶端程式複製至網路上任一電腦即可執行。完成一個 Web Service 資料庫應用範例。
關鍵程式碼片段(客戶端表單單元)
unit Unit4;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids;
type
TForm4 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
private { Private declarations }
public { Public declarations }
end;
var Form4: TForm4;
implementation
uses Unit5, DB; // 引用資料模組單元
{$R *.dfm}
end.