Application Server with BDE v1.0 ( Delphi 7 )發表 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
//Application Server with BDE v1.0 發表
//1.支援使用Client/Server端的 Package
//2.Client端的*.BPL可以由Server端下載到Client端
//3.Server端的DataModule會被自動掛載到RemoteDataModule中
//4.原有2-Tier的DataModule,經過
// 4-1. 將要發布的TQuery or TTable的Tag屬性值改為 8 之後
// AppServer會自動加上DataSetProvider元件
// 4-2. 加上Initialization的敘述,編譯成BPL之後,就可以直接掛載到Server端
//族繁不及備載....待續 努力不一定成功 , 不努力一定不成功!!
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
|
conundrum
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
提供一個 之前網友介紹的 螢幕錄製軟體 http://www.debugmode.com/wink/
![]() |
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
接下來公佈RetomeDataModule的定義函式
//取得AppServer的版本資料 function Ap_GetAppSrvVer: OleVariant; //取得AppServer中,變數( InVariableName )的資料值 function Ap_VariableDataByName(const InVariableName:WideString):OleVariant; //將資料( InData )放入AppServer的變數( InVariableName )中,傳回(成功:TRUE , 失敗:FALSE) function Ap_SetVariableDataByName(const InVariableName :WideString; //變數名稱 const InData :WideString; //輸入資料 const InUserName :WideString; //使用者名稱 const InSiteName :WideString; //單位組織名稱 const InSystemName :WideString; //系統名稱 const InApplicationName:WideString; //作業名稱 const InProcessName :WideString //處理項目名稱 ): OleVariant; //取得AppServer中,變數的數量有多少 function Ap_GetVariableCount: OleVariant; //由變數的索引值( InVariableIndex ),取得AppServer中,變數的名稱 function Ap_VariableNameByIndex(InVariableIndex:OleVariant): OleVariant; //以InSiteName,InUserName,InPassWord,取得系統的主選單資訊 // (ps.若稽核User資料(UserName,Password)錯誤,則傳回空字串) function Ap_GetMainMenuInfo(const InSiteName:WideString;//單位組織名稱 const InUserName:WideString;//使用者名稱 const InPassWord:WideString //使用者密碼 ): OleVariant; //向AppServer要求取得目前的據點名稱 function Ap_GetCurrentSiteName: OleVariant; //以InSiteName,InSystemName,InParentMenuName,InUserName,InPassWord,取得系統次選單資訊 // (ps.若稽核User資料(UserName,Password)錯誤,則傳回空字串) function Ap_GetSubMenuInfo(const InSiteName :WideString;//單位組織名稱 const InCurrentMenuName:WideString;//目前選單名稱 const InUserName :WideString;//使用者名稱 const InPassWord :WideString //使用者密碼 ): OleVariant; //向AppServer要求取得目前所有已經定義的據點名稱(傳回格式: XXX,XXX,XXX,) function Ap_GetAllDefineSiteName: OleVariant; //向AppServer要求取得次作業選單(傳回格式: XXX,XXX,XXX,...若無,傳回空字串) function Ap_HaveSubMenu(const InSiteName :WideString;//單位組織名稱 const InMenuName :WideString //作業名稱 ): OleVariant; //向AppServer要求取得主作業選單(傳回格式: XXX ,若沒有..傳回空字串!!) function Ap_GetParentMenu(const InSiteName:WideString;//單位組織名稱 const InMenuName:WideString //作業名稱 ): OleVariant; //向AppServer要求取得Client端作業程式(傳回格式: *.BPL 檔案) function Ap_GetAppPackageToClient (const InSiteName :WideString;//單位組織名稱 const InParentWorkFormName:WideString;//父作業名稱 const InWorkFormName :WideString;//子作業名稱 const InUserName :WideString;//使用者名稱 const InPassword :WideString;//使用者密碼 const InRequestDateTime :WideString;//需求提出時間 InLoadServerDataModule :OleVariant;//是否要先啟動Server端資料模組 out ResultServerDMIsReady:OleVariant;//傳回值:資料模組是否Ready(DataModuleName) out ResultFileName :OleVariant;//傳回值:檔案名稱 out ResultClassName :OleVariant;//傳回值:VCL類別名稱 out ResultFileData :OleVariant //傳回值:檔案資料 ): OleVariant; //向AppServer要求取得與Menu對應的作業程式檔案名稱以及作業檔案的VCL類別 procedure Ap_GetMenuPackageInfo(const InSiteName :WideString;//單位組織名稱 const InParentMenuName :WideString;//主作業名稱 const InMenuName :WideString;//次作業名稱 out ResultPackageFile :OleVariant;//傳回值:對應的作業程式檔案 out ResultPackageClassName :OleVariant;//傳回值:作業檔案的VCL類別 out ResultClientPkgFile :OleVariant;//傳回值:對應的Client端程式檔案 out ResultClientPkgClassName:OleVariant //傳回值:Client端程式檔案的VCL類別 ); //向AppServer要求在設計時期載入相對應的DataModule function Ap_LoadDMInDesignTime(const InSiteName :WideString;//單位組織名稱 const InParentWorkFormName:WideString;//主作業名稱 const InWorkFormName :WideString;//次作業名稱 const InUserName :WideString;//使用者名稱 const InPassword :WideString;//使用者密碼 const InLicenseCode :WideString;//作業授權碼 out ResultDataModuleName:OleVariant //傳回值:載入的DataModule名稱 ): OleVariant; //傳回值:TRUE/FALSE //向AppServer要求在設計時期卸載指定的DataModule function Ap_UnLoadDMInDesignTime(const InSiteName :WideString;//單位組織名稱 const InParentWorkFormName:WideString;//主作業名稱 const InWorkFormName :WideString;//次作業名稱 const InUserName :WideString;//使用者名稱 const InPassword :WideString;//使用者密碼 const InDataModuleName :WideString;//要卸載的DataModule名稱 const InLicenseCode :WideString //作業授權碼 ): OleVariant; //=========================與登錄使用者相關的函式=================================== //由使用者名稱( InUserName ),查詢AppServer中,該使用者是否有登入 function Usr_IsUserLogin(const InUserName:WideString): OleVariant; //查詢AppServer中,目前有多少個User登入 function Usr_GetUserCount: OleVariant; //由使用者的索引值( InUserIndex ),取得AppServer中,使用者的名稱 function Usr_UserNameByIndex(InUserIndex:OleVariant): OleVariant; //使用者以(InUserName,InPassword,InLocateSite....等等條件)向AppServer申請登入 function Usr_LoginWithUserInfo(const InUserName :WideString; //使用者名稱 const InPassword :WideString; //登入密碼 const InLocateSite:WideString; //所在組織(位置 or 單位) const InSystemName:WideString; //要使用的系統名稱 const InAppName :WideString; //要呼叫的作業模組 const InAnthorCode:WideString //登入時使用的連線授權碼 ):OleVariant; //使用者以(InUserName,InLocateSite....等等條件)告知AppServer進行登出 procedure Usr_LogOutWithUserInfo(const InPrevLogInTime:WideString; //前次登入時間 const InUserName :WideString; //使用者名稱 const InLocateSite :WideString; //所在組織(位置 or 單位) const InSystemName :WideString; //使用的系統名稱 const InAppName :WideString; //呼叫的作業模組 const InAnthorCode :WideString; //登入時使用的連線授權碼 out LogoutSuccess :OleVariant);努力不一定成功 , 不努力一定不成功!! |
thomas0728
中階會員 ![]() ![]() ![]() 發表:112 回覆:260 積分:89 註冊:2002-03-12 發送簡訊給我 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
能在Script語言呼叫Delphi的物件...而且不是 COM 物件喔!! Ex. 在Delphi定義一個CoreOBJ物件
這個物件提供一個叫"age"的Property的類別(初始值為1)
並且以 "GetAsSingle"與"SetAsSingle"來進行存取......
在VBScript中...你可以這樣做 a = CoreOBJ.GetAsInt("age")
a = a*5 1
CoreOBJ.SetAsInt "age",a 執行的結果 CoreOBJ.age的值 = 6 努力不一定成功 , 不努力一定不成功!!
|
G01
高階會員 ![]() ![]() ![]() ![]() 發表:249 回覆:379 積分:215 註冊:2002-05-21 發送簡訊給我 |
能在Script語言呼叫Delphi的物件...而且不是 COM 物件喔!! 更正..... Ex. 在Delphi定義一個CoreOBJ物件
這個物件提供一個叫"age"的Property(初始值為1)
並且以 "GetAsInt"與"SetAsInt"來進行存取......
在VBScript中...你可以這樣做 a = CoreOBJ.GetAsInt("age")
a = a*5 1
CoreOBJ.SetAsInt "age",a 執行的結果在Delphi程式中,你可以取得 CoreOBJ.age的值 = 6 努力不一定成功 , 不努力一定不成功!!
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |