CAEngine
ADE 用戶指南 > ADE伺服器類型參考 >
CAEngine(ADE)類型
進程內和進程外實例化
建立
ADE的使用從建立CAEngine對象開始,其它一切都從它開始產生。如果你使用ADEW.dll進程內伺服器,你只能建立和使用一個CAEngine實例,如果你使用ADE.exe進程外伺服器,你想建立多少個CAEngine實例都可以,每一個實例作為一個單一進程允許。在基於網絡的應用程式裏面,對於每一個用戶會話都建立了一個單獨的CAEngine實例。每一個CAEngine實例每次都可以載入一個模型。
你可以直接建立一個CAEngine實例,或者通過調用 CALicense::NewCAEngine()。後一方法需要你先建立一個 CALicense實例,其優點就是能夠獲得關於建立實例失敗原因的更多信息。如果ADE使用許可證在指定計算機上無效,或者到期,直接建立CAEngine實例將失敗。
Visual Basic.NET
C++
VBScript
屬性
{get,put} string Command
在 Send()方法被調用時,將保持被執行的typescrip指令。
{get,put} CAObject CurrentModule
新建立的對象放在 CurrentModule中;因此,在建立任何新對象前,你應該設定 CurrentModule。設置: CurrentModule = Nothing
表示沒有模塊打開,所有新對象都在頂層模塊或者當前已經打開的模型中建立。
{get,put} CARenderingStyle DefaultDefTableRenderingStyle
控制定義表格值如何傳入和傳出ADE的默認風格類型。所有從 CAObject::DefTable返回的定義表在建立之初都繼承這些設置。
{get,put} long DefaultEvaluationTimeLimit
對 CAEngine中的方法,例如 SendCommand, Send, OpenModel和 AddModule,以及任何被實例化的 CAObject的 CAObject::MethodEvaluationTimeLimit默認值等等,指定求值計算時的大時間限制(毫秒)。
{get,put} CARenderingStyle DefaultRenderingStyle
默認顯示風格控制結果值如何從ADE返回。所有 實例在建立的時候都繼承該顯示風格。
{get} short int ErrorCode
返回最近一次與ADE伺服器通訊產生的錯誤代碼。 ErrorCode屬性應該在設置和檢索關鍵 CAEngine屬性和CAEngine方法後檢查。零錯誤代碼表示最後的動作是成功的。
{get} string ErrorText
來自於 ErrorCode的短文本錯誤解釋。
{get,put} unsigned long Flags
控制ADE內部某種行為的位域標誌。
{get} string Log
當Photo屬性true時,獲取關於發送給ADE typescript的指令和從這些指令檢索的結果的記錄。
{get} string OutputBuffer
包含最後的typescript 結果的本文字符串緩衝(例如,使用Command屬性和Send方法)與ADE相互作用。
{get,put} bool Photo
當Photo為True時,ADE將所有typescript指令和結果記錄到 |Log屬性當中。
方法
string AddModule(string filePath,bool Merge)
將來自文件fileName的模塊添加到CurrentModule中。合併參數當前沒有任何作用,應該設置成True。
bool CloseModel()
關閉模型
CAObject CreateObject(string objName, string objType)
在CurrentModule當中建立一個標識符為objName,類型為objClass的新Analytica對象,並作為一個CAObject返回。
bool CreateModel(string newModelName)
建立一個標識符為modelName的新Analytica模型。
bool DeleteObject( CAObject aObject )
從當前模型中刪除CAObject對象。
CAObject Get(string objName)
與 GetObjectByName等同
CAObject GetObjectByName(string objName)
返回一個 CAObject類型對象給標識符為objName的現有Analytica對象。
bool MonitorProcess(long pid)
(需要ADE 4.3或者以上版本)如果指示的進程在它ADE之前終止,將指示ADE終止(終止自己)。在調試使用ADE來阻止殭屍ADE進程的代碼時,如果你的代碼提前終止,而沒有機會正確實發其對象時非常有用。
string OpenModel(string filepath)
從磁盤文件讀入一個模型,並作為當前模型打開。
bool ReadScript(string filePath)
讀入並執行一個Analytica腳本文件。
void ResetError()
重置與錯誤代碼有關的錯誤代碼、錯誤文本字符串,並輸出緩存給默認值。該函數一般內部使用,單在其他環境可能也非常有用。
bool SaveModel(string filePath)
將模型保存到«filePath»文件中。
bool SaveModuleFile(string moduleName, string filePath)
將標識符為«moduleName»的模塊保存到«filePath»文件中。
bool Send()
將包含在Command屬性內的字符串作為指令發送給ADE去執行。 關於指令和語法的詳細信息請參考Analytica腳本指南。
bool SendCommand(string command)
將字符串指令屬性作為typescript 指令ADE去執行。 關於指令和語法的詳細信息請參考Analytica腳本指南。
bool SetCallbackObject(IUnknown* pCallbackObj)
ADE 4.6新特徵
當求值計算在經常內時,你可以調用該方法以便提供一個執行各種回調接口,例如 IAdeUICallbacks,的對象來允許和終端用戶互動。
另請參考
ADE伺服器類型參考 <- | CAEngine | -> CAObject |
Enable comment auto-refresher