全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2578
推到 Plurk!
推到 Facebook!

Application Server with BDE v1.0 ( Delphi 7 )發表

 
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-12-05 10:32:33 IP:219.87.xxx.xxx 未訂閱
//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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-12-05 10:43:04 IP:219.87.xxx.xxx 未訂閱
請使用Borland的SocketServer 不需要安裝,但是Delphi7的所有*.BPL要存在 第一次執行時會要User在C磁碟建立"ApSrvOptions.txt"這個Config檔案 參考下圖 可以依照你的需求來設定(重新定義) 努力不一定成功 , 不努力一定不成功!!
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-12-05 10:55:15 IP:219.87.xxx.xxx 未訂閱
繼續...參考下圖 努力不一定成功 , 不努力一定不成功!!
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-12-05 11:09:33 IP:219.87.xxx.xxx 未訂閱
繼續 努力不一定成功 , 不努力一定不成功!!
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-12-05 11:50:32 IP:219.87.xxx.xxx 未訂閱
繼續 努力不一定成功 , 不努力一定不成功!!
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-12-05 12:16:55 IP:219.87.xxx.xxx 未訂閱
說明: 1.這個AppServer內部的設定基本上與任何DataBase無關,完全獨立運作!! 2.這個AppServer支援多工作站運作模式 ...待續 努力不一定成功 , 不努力一定不成功!!
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-12-05 12:18:59 IP:218.175.xxx.xxx 未訂閱
提供一個 之前網友介紹的  螢幕錄製軟體    http://www.debugmode.com/wink/      免費 個人覺的十分不錯用 windows與Linux都有支援 網友大大 請問你的作品,文章等 是否願意貢獻 給於KTOP網站,日後使用於DVD/VCD發售 如果可以請在簽名檔上宣告個人授權 以加速KTOP網站日後DVD/VCD資料的誕生 台灣災難都是事後算帳 無人飛行載具(Unmanned Aerial Vehicle,UAV)為什麼沒大量應用於救災行列 絲絲有2種 .net有很多種 一種治眼睛是MS 另一種治腦筋是Borland
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-12-05 15:12:06 IP:219.87.xxx.xxx 未訂閱
接下來公佈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

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-12-08 16:01:49 IP:203.73.xxx.xxx 未訂閱
真是強的架構,有提供SOURCE CODE 如果愛情也有味覺 那麼 有沒有ㄧ種愛 微微泛酸 不太苦澀 有點甜密 嚐起來的滋味讓人想起幸福
------
Thomas Chiou
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-12-09 21:44:43 IP:61.64.xxx.xxx 未訂閱
偷偷透露完整版的內容之一:...跨語言程式構建支援    完整版可讓Delphi(Pascal)與script語言(VB , Java Script)相互合作 達到混合式3種語言同時建構系統,並且可以互相傳值,協同運行.... ,另外...相關參數自訂工具化...加強建構系統的能力...參照下圖 想想...能在Script語言呼叫Delphi的物件....酷吧!!...... ......... 努力不一定成功 , 不努力一定不成功!!
G01
高階會員


發表:249
回覆:379
積分:215
註冊:2002-05-21

發送簡訊給我
#11 引用回覆 回覆 發表時間:2005-12-09 22:27:00 IP:61.64.xxx.xxx 未訂閱
能在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

發送簡訊給我
#12 引用回覆 回覆 發表時間:2005-12-10 06:58:39 IP:61.64.xxx.xxx 未訂閱
能在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 努力不一定成功 , 不努力一定不成功!!
系統時間:2024-05-16 10:11:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!