AgilePoint 基礎篇
如何找到AgilePoint 產品序號? 找出AgilePoint 的序號可使用Registry Editor,尋找關鍵字www.ascentn.com”,再找Display Name 為所需之產品名稱,其Production ID 就是產品序號.
其Product ID 欄就是 License Key. AgilePoint Envision 的屬性視窗不見了?AgilePoint 的流程設計工具Envision是MircoSoft Visio 的附加元件,有時安裝完或執行一段時間發現屬性視窗不見了,目前我們已知的原因有下列幾種. 1.屬性視窗被關掉了 如果envision 中左辦部之屬性視窗不見了,但是檔案下的Validate Process,Update Server …都還在, 通常是屬性視窗被關掉了. 此時只要點選編輯—>Process Template Properties 即可開啟屬性視窗. 2.安全性設定. ?? 因為Envision 是Visio 的附加元件,因此若安全設定太高時,會無法執行,不過根據筆者測試的結果,不論選擇何種選項,目前的版本(4.7)會自動將其改為低. 工具-->選項-->安全性 3.Envision停用 ?? Visio 升級以後有時會發生附加的的元件被停用的情形. ? 可檢查功能表 說明-->關於Mircosoft vision 下的停用項目,若有相關停用項目,則將其改為啟用. 4.安裝順序錯誤. ?? AgilePoint 的Server Pack 是包含所有產品的更新(包括AgilePoint Server,Envision,Developer,Enterprise …),更新程式會自動依照安裝的產品,自動更新相關元件,又因為Agilepoint 的核心程式的組件(Assembly),在這些產品模組都是共用的,因此常見的錯誤為先安裝AgilePoint Server 再安裝Service Pack,之後再安裝Envision,此時更新的Envision 元件有可能會蓋過新版的元件,造成Envision 的元件是舊的,但核心組件是新的. 因此正確的安裝方式應該是先安裝各項產品,再執行Service Pack 可避免這個問題. AgilePoint 的流程變數一般的工作流程或電子表單的軟體,最常用的方式是一張表單,一個流程,通常也會對應至一個資料表,因此我們會看到有些Workflow的軟體,所強調的流程整合是利用表單資料轉換的方式來進行,請購轉換為採購單,採購單轉換為驗收單,驗收單再轉換為付款單,類似此種架構,主要是因為他們的架構上表單與資料是密不可分的緣故. AgilePoint 是採用前端輸出入介面,流程,資料三者分離的架構,因此可視為三者是獨立存在. 我不將前端輸出入介面直接稱為表單,而改稱為輸出入介面,主要的原因是在AgilePoint 中資料與表單是分離的,因此流程中所儲存的資料,我們稱為Custom Attribute 我將他翻譯為流程變數,其流程變數與表單並無絕對的關係. 流程變數是串起整個流程資料的依據,就像是網頁程式的Session 變數,差別在於Session變數只存在於網頁連線的期間,流程變數是存在於整個流程,由流程啟動一直到流程完成後都會一直保留在資料庫中. 流程變數在流程資料庫中預設是以XML 的型式儲存,其優點為無需預先定義資料格式,可視需要隋時增加變數與修改變數的內容. 流程變數的產生有以下幾種方式: 1.啟動流程時一併建立流程變數. 在AgilePoint要啟動一個流程可以透過CreateProcInst() 的API,其有兩種形式直接呼叫CreateProcInst()的API 或呼叫其所提供的WebService 介面,視呼叫單所在的位置決定. 在此API 中可傳輸一個流程變數與資料名稱的陣列,資料型態為其內定的NameValue[] 的格式,簡單的說就是由名稱與值所組成的陣列. 因此在表單中輸入資料或外部應用系統如ERP 中只要能呼叫WebService 並且可組成NameValue的Array,都可以在啟動流程時,一併將外部資料傳送至AgilePoint 中. 2.透過AgilePoint 所提供的WebControl 在AgilePoint 所提供的WebControl 都有一個BindingName 的屬性,呼叫啟動流程的API- CreateProcInst()或呼叫完成一個工作(WorkItem)的API – CompletedWorkItem() 時係統會自動將所有具有BindingName 屬性的WebControl 都儲存為流程變數. 3.透過儲存或取得流程變數的API 除了採用具有BiningName 的WebControl 外,對一般的Asp.net 或ThirdParty所提供的WebControl,甚至流程資料與顯示無關時都可以透過存取流程變數的API –setCustomAttr()設定單一變數或一次設定多個變數的API -setCustomAttrs()將所需要的資料設定為流程變數,且無需考慮變數資料是否已經存在,系統或自動處理新增變數或修改變數的問題. 另外如果需要取得變數的內容亦可透過取得變數的API-getCustomAttr() 取得指定的變數或透過getCustomAttrs()一次取得整個流程的變數,傳回的資料型態是一個物件的形態,可視需要作轉型,如變數資料不存在會傳回null值,因此可依內容作預設值的處理. 以上三種方式是基本的流程變數取得與儲存的方式,因此任何只要能呼叫WebService的程式或語言都可以透過上述方式與透過流程元件互相溝通. 前面提到流程變數是以XML的形式存在,惟XML 的缺點是不適合直接查詢特定欄位值或輸出為為報表,因此必要時我們可以透過AgilePoint提供的資料庫存取元件或客制的AgilePart 將其轉存為一般的資料表,再作後續的哂 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |