這個練習中,Server端準備了4個服務函式:Add, Subtract, Divide, 和Multiply,由客戶端呼叫Server端服務函式,並將結果傳回。
建立一個DataSnap Server應用程式,
在最後一個畫面,選擇父類別為“TComponent”。
單擊“Finish”完成此次專案建立精靈,此時會建立1個專案和3個單元。
操作“File -> Save All”以儲存整個專案。
新增一個目錄來儲存這個專案及檔案,例:"C:\DelphiProjects\DataSnapServerSimpleCalc"
將主要的應用程式表單儲存為 “FormServerUnit”,並將其他2個單元保留他們的預設名字
在這個階段,專案管理視窗應該看起來像是這樣:
打開“ServerMethodsUnit1.pas”單位並且實作所有的計算機服務功能。把原本的範例程式碼(“EchoString” 和 “ReverseString”)修改置換成4個函式:“Add”, “Subtract”, “Multiply” and “Divide” 。
“ServerMethodsUnit1” 單元的程式碼摘錄如下:
unit ServerMethodsUnit1;
interface
uses System.SysUtils, System.Classes, Datasnap.DSServer, Datasnap.DSAuth;
type
{$METHODINFO ON}
TServerMethods1 = class(TComponent)
private
{ Private declarations }
public
{ Public declarations }
function Add(a, b: double): double;
function Subtract(a, b: double): double;
function Multiply(a, b: double): double;
function Divide(a, b: double): double;
end;
{$METHODINFO OFF}
implementation
uses System.StrUtils;
function TServerMethods1.Add(a, b: double): double;
begin
Result := a + b;
end;
function TServerMethods1.Subtract(a, b: double): double;
begin
Result := a - b;
end;
function TServerMethods1.Multiply(a, b: double): double;
begin
Result := a * b;
end;
function TServerMethods1.Divide(a, b: double): double;
begin
Result := a / b;
end;
end.
Server端的應用程式已經實現完成,在進行下一步驟前,此Server端應用程式應先執行,執行時,請在專案上按右鍵 ,選擇“Run -> Run Without Debugging”啟動Server應用程式。(不要關閉此Server,一直到整個練習結束前。)
在現有的專案群上再新增一個專案:
單擊 “OK”. 一個新的專案應該加入專案群裏。
操作“File -> Save All”儲存所有的檔案。
將檔案儲存在之前建立的目錄中,把主要表單儲存並命西為 “FormClientUnit”,新專案儲存命名為 “SimpleCalcClient”,並且將專案郡儲存命名為“SimpleCalcGrp”。
此時,專案管理員畫面看起來應該如下:
:
Make sure that the client project is active and from the “New Items” dialog select “DataSnap Client Module”.
註:如果在Server端增減修改Server方法,Client端則要重新第2步驟(最簡單)