使用 Web Services 整合 IBM FileNet P8 BPM 與 IBM WebSphere ILOG JRules
簡介: 當前競爭激烈的業務環境要求一個組織的業務過程必須是排程動態的。一個業務必須能適應和管理快速變化的業務規則及業務過程。通過一個業務規則管理系統(BRMS),您能夠從業務過程中提取出業務規則,並單獨地對它們進行管理,最終實現過程合理化。本文闡述瞭如何整合行業領先的 BRMS 產品 IBM® WebSphere® ILOG® JRules 與綜合業務過程管理系統(BPMS)產品 IBM FileNet® P8 BPM。
現代軟體系統設計強調使用業務規則管理系統(BRMS)管理快速變化的業務規則的需求。您可以改進您的業務過程敏捷性來提供更好的決策方法並能更好地維護您的軟體系統。業務過程管理系統(BPMS)能夠直接利用 BRMS 解決方案所提供的功能。檢視 參考資料 中所包含的更多關於以業務為中心的 BPM 和 BRMS 聯合的價值。
本文闡述了整合這兩個行業領先的軟體系統的必要步驟:
IBM FileNet P8 Business Process Manager 在人與系統之間管理內容及與人緊密聯絡過程的工作流。 IBM WebSphere ILOG JRules 通過支援實時修改業務規則而幫助組織快速修改業務決策。這兩個產品的整合方法以下幾種:
- 規則連線框架
- Java™ 元件整合
- Web Services
本文關注於使用 Web Services 實現這兩種產品的低耦合整合。
本文至少需要以下的配置:
- 安裝包含 Content Engine、Process Engine 和 Application Engine 的 IBM FileNet P8 Platform. Version 4.5 或以上版本
- 安裝包含 Rule Studio 和 Rule Execution Server 的 IBM WebSphere ILOG JRules Version 7.0 或以上版本
以下其他有用的條件:
- 熟悉 Eclipse
- 具有使用 IBM FileNet P8 Process Designer 的基本經驗
在本文中,使用 IBM FileNet P8 Version 4.5.1 與 IBM WebSphere ILOG JRules Version 7.0.2 整合。
第一個例子描述的是一個保險業過程,它利用 BRMS 進行直接處理。BRMS 負責處理一般任務,包括檢查健康等級、檢查 BMI 和計算客戶保險費。BRMS 會自動化最小風險應用的登記。而保險人員只處理複雜的應用。
示例場景的保險處理工作流是由一個系統步驟組成的,它使用一個掛載的透明決策服務(HTDS)進行直接處理。用於自動保險業務的 HTDS 是 JRules。在某些條件下會轉發兩個人工任務。如果 HTD 拒絕政策請求(返回 false),那麼這個工作流會被轉發到保險人員進行評估。電子郵件通知可以自動實現,但是為了簡化這個實現,在示例場景中會被設計為一個人工任務。圖 1 說明這個處理工作流。
WebSphere ILOG JRules Rule Studio 是一個基於 Eclipse 的規則開發工具。要建立一個新的規則,我們需要完成以下步驟:
- 選擇選單 Program Files > IBM WebSphere ILOG JRules V7.0.2 > Rule Studio 開啟規則工具。
- 單擊 File > New > Rule Project,如圖 2 所示。
圖 2. 使用 Rule Studio 建立一個新的規則專案
- 選擇 Standard Rule Project 並輸入一個正確的專案名稱。
- 保留專案的預設設定,然後單擊 Finish。
規則工具底部的 Rule Project Map 是您可以用來建立一個 RuleSet 的不同部署步驟。
在 ILOG JRules 中建立的規則是針對一個 Executable Object Model (XOM) 執行的,它引用了應用物件和外部應用資料。XOM 是 Business Object Model (BOM) 的基本實現。BOM 是對應於所寫規則的模型。您可以從零開始建立一個 BOM,您也可以通過解析您的執行物件模型(XOM)自動建立 BOM。本文闡述瞭如何使用以下步驟從一個 XOM 建立一個 BOM。JRules 可以使您能夠從 Java 物件或 XML 建立 XOM。要將部署的規則以一個 Web Service 釋出,需要使用一個 XML XOM。
- 將下面的 FileNet XSDs 儲存到您的本地硬碟: http://www.wfmc.org/standards/docs/TC-1025_bpmnxpdl_24.xsd 和 http://www.wfmc.org/standards/docs/TC-1025_schema_10_xpdl.xsd。 檔案 bpmnxpdl_24.xsd 引用檔案 schema_10_xpdl.xsd file 作為它的模式定義。
- 編輯 bpmnxpdl_24.xsd 檔案,然後將屬性 schemaLocation 從 http://www.wfmc.org/standards/docs/TC-1025_schema_10_xpdl.xsd 修改為 [localpath]/[filename]。
- 從 Rule Project Map 中選擇 Import XOM。
- 在 XOM 選擇視窗選擇 Dynamic Execution Object Model (XSD or WSDL)。
- 單擊 Add External XSD,如圖 3 所示。
- 選擇 FileNet XSD(bpmnxpdl_24.xsd),然後單擊 Finish。這樣會為 Rule Project 建立 XOM。
- 單擊 Rule Project Map 的 Create BOM 連結,然後為 BOM 設定名稱。
- 保證選中 Create a BOM entry from a XOM,然後單擊 Next。
- 單擊 Browse XOM,選擇唯一可用的 XOM,然後單擊 OK。這樣就可以看到可用的記錄,如圖 4 所示。
- 選擇第一個記錄,然後單擊 Finish。您可能在建立 BOM 時會遇到一些由 ILOG 的 BOM 物件預設說明的錯誤。
- 單擊每一個錯誤,然後在預設說明後加上數字字尾,修正這些錯誤。
- 儲存規則專案。然後錯誤應該就會消失。
業務規則需要使用所定義的變數。要建立這些引數,需要完成以下步驟:
- 單擊 Rule Project Map 的 Define parameters。
- 保證 ILOG JRules 所影響的引數都宣告為 OUT 或 IN/OUT。
- 儲存例子使用的變數名、型別和說明,包括本文所使用的變數。如表 1 所示。
名稱 | 型別 | 方向 | 說明 |
---|---|---|---|
pi_height | java.lang.Float | IN_OUT | PI Height |
pi_weight | java.lang.Float | IN_OUT | PI Weight |
pi_gender | java.lang.String | IN_OUT | PI Gender |
pi_DOB | java.util.Date | IN_OUT | PI Date of Birth |
pi_maritalStatus | java.lang.String | IN_OUT | PI Marital Status |
pi_empStatus | java.lang.String | IN_OUT | PI Employment Status |
pi_monthlyIncome | java.lang.Double | IN_OUT | PI Monthly Income |
pi_reqCoverage | java.lang.Double | IN_OUT | PI Requested Coverage |
pi_insurRejected | java.lang.Boolean | IN_OUT | PI Insurance Rejected in 5 years |
pi_employerInsur | java.lang.Boolean | IN_OUT | PI Has Employer Insurance |
pi_otherInsur | java.lang.Boolean | IN_OUT | PI Has Other Insurance |
pi_HH_AIDS | java.lang.Boolean | IN_OUT | PI Has AIDS disease |
pi_HH_alcohol | java.lang.Boolean | IN_OUT | PI Is Alcoholic |
pi_HH_Cancer | java.lang.Boolean | IN_OUT | PI Has Cancer |
pi_HH_KidneyStones | java.lang.Boolean | IN_OUT | PI Has Kidney Stones |
pi_HH_Tumor | java.lang.Boolean | IN_OUT | PI Has Tumor |
pi_HH_BP | java.lang.Boolean | IN_OUT | PI Has High BP |
pi_HH_Diabetes | java.lang.Boolean | IN_OUT | PI Has Diabetes |
pi_BMI | java.lang.Float | IN_OUT | PI BMI |
pi_BMI_Res | java.lang.String | IN_OUT | PI BMI Result |
pi_AcceptInsurance | java.lang.Boolean | IN_OUT | PI Accept The Insurance |
pi_AidsRating | java.lang.Integer | IN_OUT | PI AIDS Rating |
pi_CancerRating | java.lang.Integer | IN_OUT | PI Cancer Rating |
pi_AlcoDrugaddictRating | java.lang.Integer | IN_OUT | PI Alcohol Rating |
pi_KidneyStonesRating | java.lang.Integer | IN_OUT | PI Kidney Stones Rating |
pi_TumorRating | java.lang.Integer | IN_OUT | PI Tumor Rating |
pi_DiabetesRating | java.lang.Integer | IN_OUT | PI Diabetes Rating |
pi_HiBPRating | java.lang.Integer | IN_OUT | PI BP Rating |
pi_HealthRating | java.lang.Integer | IN_OUT | PI HealthRating |
規則集是以包組織的,每一個包都包含一組規則。要建立一個新的規則包,單擊 Rule Project Map 的 Add rule package,然後設定一個正確的名稱。
每一個業務規則都是由一個條件和一組語句構成的。這個條件和語句會使用規則專案所定義的引數。要建立一個業務規則,需要完成以下步驟:
- 單擊 File > New > Business Rule,然後設定一個正確的名稱。
- 選擇希望在其中建立規則的包。
- 單擊 Finish。然後程式碼編輯器就會顯示,您可以在上面編輯規則。
- 在程式碼編輯器上建立一個規則,如清單 1 所示,這樣如果一個患者的 BMI 結果是 Obese 或 Underweight,則 Accept The Insurance 條件將被設定為 false。
if 'PI BMI Result' is "Obese" or 'PI BMI Result' is "Underweight" then set 'PI Accept The Insurance' to false ; |
- 在程式碼編輯器上建立一個規則,如清單 2 所示,這樣如果一個患者的健康等級超過 60,Accept The Insurance 條件就會被設定為 false。
if 'PI HealthRating' is more than 60 then set 'PI Accept The Insurance' to false ; |
- 在程式碼編輯器中建立一個規則,如清單 3 所示,這樣如果過去 5 年曾經有保險被拒絕,那麼 Accept The Insurance 條件會被設定為 false。
if 'PI Insurance Rejected in 5 years' is true then set 'PI Accept The Insurance' to false ; |
- 初始化輸入變數,如清單 4 所示,這樣如果 1 等於 1:
- Accept The Insurance 條件會被設定為 true
- BMI 被設定有 Weight/(Height * Height)
if 1 equals 1 then set 'PI Accept The Insurance' to true ; set 'PI BMI' to 'PI Weight' / ('PI Height' * 'PI Height') ; |
- 初始化健康等級,如清單 5 所示,這樣:
- AIDS Rating 設為 100
- Cancer Rating 設為 90
- Tumor Rating 設為 80
- Diabetes Rating 設為 60
- Alcohol Rating 設為 50
- BP Rating 設為 40
if 1 equals 1 then set 'PI AIDS Rating' to 100 ; set 'PI Cancer Rathing' to 90 ; set 'PI Tumor Rating' to 80 ; set 'PI KidneyStones Rating' to 70 ; set 'PI Diabetes Rating' to 60 ; set 'PI Alcohol Rating' to 50 ; set 'PI BP Rating' to 40 ; |
- 使用一個技術規則計算健康等級,如清單 6 所示。
when {TirContext() from ?context; evaluate (1==1); } then { pi_HealthRating = 0; if (pi_HH_AIDS) { pi_HealthRating = pi_HealthRating + pi_AidsRating; } if (pi_HH_alcohol) { pi_HealthRating = pi_HealthRating + pi_AlcoDrugaddictRating; } if (pi_HH_Cancer) { pi_HealthRating = pi_HealthRating + pi_AlcoDrugaddictRating; } if (pi_HH_Tumor) { pi_HealthRating = pi_HealthRating + pi_TumorRating; } if (pi_HH_KidneyStones) { pi_HealthRating = pi_HealthRating + pi_KidneyStonesRating; } if (pi_HH_Diabetes) { pi_HealthRating = pi_HealthRating + pi_DiabetesRating; } if (pi_HH_BP) { pi_HealthRating = pi_HealthRating + pi_HiBPRating; } } |
- 使用一個將 BMI 與 BMI 結果關聯的決策表計算 BMI 結果,如圖 5 所示。
一個規則流決定了規則集的執行順序。要建立這個規則流,您必須完成以下步驟:
- 單擊 Add RuleFlow,設定一個名稱,然後單擊 Finish。這樣就會開啟一個圖形化編輯器。
- 單擊 Start 圖示,然後單擊圖表區域建立流的開始點。
- 單擊建立結束點。
- 按照執行順序將規則從 Project Explorer 拖到圖表區域。
- 單擊 Create Transition 圖示,然後單擊開始物件。
- 單擊規則,這樣就能建立開始和第一個規則之間的轉換。
- 為其他規則和結束點建立類似的轉換。圖 6 顯示的規則流的最後結果。
這個規則應用是將要部署到執行伺服器的部署存檔。要建立這個規則應用,需要完成以下步驟。
- 單擊 Project Map 的 Create RuleApp,並設定一個名稱。
- 選擇需要新增到存檔的專案和規則集。
- 單擊 Finish。
這樣就為規則集建立規則應用。您現在可以直接將規則應用部署到執行伺服器或把它匯出為一個 JAR 檔案以備將來部署。
因為 Rule Studio 是基於 Eclipse 框架的,所以您可以像其他 Java 專案一樣測試和除錯業務規則。
- 單擊 Run > Open Run Dialog,然後在上下文選單上配置一個新的規則專案。
- 為引數指定初始值,然後單擊 Run。要測試結果,您可以在您的規則中插入一些輸出語句,然後檢查控制視窗的輸出。
- 一旦您作好部署的準備後,您就可以右鍵單擊 Project Explorer 中的規則應用,然後單擊 Ruleapp > Deploy。然後部署對話方塊就會顯示。
- 保留預設設定,並單擊 Deploy。這樣就會將 RuleApp 存檔部署到 Rule Execution Server。
- 要驗證部署是否成功,您可以在 Program Files > IBM WebSphere ILOG JRules V7.0.2 > Web Interfaces 開啟 Rule Execution Server。
- 使用 resAdmin/resAdmin (ILOG Version 7.0.2) 登入,然後單擊 Explorer 選項卡。
- 單擊 RuleApps 樹,然後您最新部署的規則集就會顯示,如圖 7 所示。
Web Services Description Language (WSDL) 是一個介面定義語言,Web Services 客戶用它確定伺服器所提供的介面明細。完成以下步驟就能夠為部署的 ILOG 規則集生成 WSDL 連結。
- 單擊 Start > Program Files > IBM WebSphere ILOG JRules V7.0.2 > Web Interfaces 登入到 Rule Execution Server。
- 單擊 Explorer 選項卡,然後選擇和部署規則集。
- 單擊 Get WSDL for the latest ruleset version。
這樣會開啟一個以 XML 格式顯示所生成的 WSDL 新瀏覽器視窗,如圖 8 所示。您可以在 IBM FileNet P8 Process Designer 使用這個 WSDL 呼叫規則集。
在實現這個示例用例中最重要的一個步驟是設計過程工作流。您可以使用 IBM FileNet P8 Process Designer 按照以下步驟建立這個工作流。
- 使用您的帳號登入到 IBM FileNet P8 Workplace。
- 單擊螢幕左邊框架的 Author > Advanced Tools 開啟 Process Designer。然後設計器小應用程式就會開啟。
- 通過拖放方式從 BOM 畫板上建立工作流步驟,然後建立工作流,其中 Personal Insurance (Auto Underwriting) 是一個呼叫 JRules 的 HTDS 直接自動處理保單的系統任務,如圖 9 所示。參照 參考資料 中關於工作流步驟的資訊。
工作流變數是工作流中人與系統互動的基礎。它們也用於在各種工作流步驟中實現條件轉發。要建立工作流變數,需要完成以下步驟。
- 單擊 Process Designer 的 Workflow Properties 圖示。
- 開啟 Data Fields 選項卡。
- 雙擊資料表格,使用各種資料型別的變數,如表 2 所示。要保證 Merge Type 的資料型別是 Override。
名稱 | 型別 | 合併型別 |
---|---|---|
pi_FirstName | String | Override |
pi_FirstName | String | Override |
pi_LastName | String | Override |
pi_Height | Float | Override |
pi_Weight | Float | Override |
pi_Gender | String | Override |
pi_DOB | String | Time |
pi_MaritalStatus | String | Override |
pi_EmpStatus | String | Override |
pi_MonthlyIncome | Float | Override |
pi_CoverageAmount | Float | Override |
pi_InsurRejected | Boolean | Override |
pi_EmpProvidedInsur | Boolean | Override |
pi_OtherInsur | Boolean | Override |
pi_HH_AIDS | Boolean | Override |
pi_HH_Alcohol | Boolean | Override |
pi_HH_Cancer | Boolean | Override |
pi_HH_KidneyStones | Boolean | Override |
pi_HH_Tumor | Boolean | Override |
pi_HH_BP | Boolean | Override |
pi_HH_Diabetes | Boolean | Override |
InsuranceType | String | Override |
pi_AcceptInsurance | Boolean | Override |
iLOG_RES_String | String | Override |
iLOG_RESNumRules | Integer | Override |
pi_BMI_Res | String | Override |
pi_BMI | Float | Override |
pi_AidsRating | Integer | Override |
pi_CancerRating | Integer | Override |
pi_AlcoDrugaddictRating | Integer | Override |
pi_KidneyStonesRating | Integer | Override |
pi_TumorRating | Integer | Override |
pi_DiabetesRating | Integer | Override |
pi_HiBPRating | Integer | Override |
pi_HealthRating | Integer | Override |
當您將工作流變數分配給步驟時,它們就會顯示在該步驟的步驟處理器中,而它們一般會以之前步驟填寫的輸入框或資訊框形式出現。記住工作流變數對於所有步驟是全域性的。要分配變數到每一個步驟,需要完成以下步驟。
- 單擊您想要分配變數的步驟。
- 在步驟屬性皮膚,單擊 Parameters 選項卡。(對於 LaunchStep,單擊 General 選項卡)。
- 從 Available Parameters 列表選擇以下您想要分配給執行步驟的引數,然後使用向右箭頭將引數移到 Selected Parameters 列表:
- pi_AcceptInsurance[RW]
- pi_BMI[RW]
- pi_BMI_Res[RW]
- pi_CoverageAmount[RW]
- pi_DOB[RW]
- pi_EmpProvidedInsur[RW]
- pi_EmpStatus[RW]
- pi_FirstName[RW]
- pi_Gender[RW]
- pi_Height[RW]
- pi_HH_AIDS[RW]
- pi_HH_Alcohol[RW]
- pi_HH_BP[RW]
- pi_HH_Cancer[RW]
- pi_HH_Diabetes[RW]
- pi_HH_KidneyStones[RW]
- pi_HH_Tumor[RW]
- pi_InsurRejected[RW]
- pi_LastName[RW]
- pi_MaritalStatus[RW]
- pi_MonthlyIncome[RW]
- pi_OtherInsur[RW]
- pi_Weight[RW]
- 選擇和移動下面的引數,將它們分配到 Human Underwriting 步驟的 Selected Parameters:
- pi_CoverageAmount[RW]
- pi_DOB[RW]
- pi_EmpProvidedInsur[RW]
- pi_EmpStatus[RW]
- pi_FirstName[RW]
- pi_Gender[RW]
- pi_Height[RW]
- pi_HH_AIDS[RW]
- pi_HH_Alcohol[RW]
- pi_HH_BP[RW]
- pi_HH_Cancer[RW]
- pi_HH_Diabetes[RW]
- pi_HH_KidneyStones[RW]
- pi_HH_Tumor[RW]
- pi_InsurRejected[RW]
- pi_LastName[RW]
- pi_MaritalStatus[RW]
- pi_MonthlyIncome[RW]
- pi_OtherInsur[RW]
- pi_Weight[RW]
- 選擇和移動下面的引數,將它們分配到電子郵件通知步驟:
- InsuranceType[RW]
- pi_AcceptInsurance[RW]
- pi_FirstName[RW]
- pi_LastName[RW]
對於人工任務(Human Underwriting 和 Email Notification),必須分配工作流參與者。要新增一個參與者到一個任務,需要完成以下步驟:
- 單擊該步驟。
- 在參與者區的 General 選項卡,選中 Participants 單選按鈕。
- 選擇有許可權的使用者處理工作專案。為了簡單起見,您可以將使用者 Administrator 分配到所有人工步驟,如圖 10 所示。
在您將變數和參與者關聯到步驟上後,再通過下面的步驟新增轉發條件。
- 單擊 Result = True。
- 輸入 pi_AcceptInsurance = true 作為轉發條件。
- 單擊 Result = False。
- 輸入 pi_AcceptInsurance = false 作為轉發條件。
要配置 IBM FileNet P8 BPM 使用 Web Services,需要完成下面的步驟。
- 單擊 Workplace Admin,開啟 Process Configuration Console 小應用程式。
- 連線到您的單獨區域。
- 右鍵單擊這個區域,然後單擊 Properties。
- 單擊 Web Services 選項卡,並選擇核取方塊 Enable Process Designer to enter WSDL links without browsing for Web Services,如圖 11 所示。
要使用 ILOG 提供的 Web Service,您需要使用來自於 ILOG 執行伺服器的 WSDL 配置一個夥伴連結。要配置這個夥伴連結,需要完成以下步驟。
- 單擊 Process Designer 的 Workflow Properties > Web Services。
- 雙擊 Partner Links 列表的空白行,新增一個新的夥伴連結。
- 單擊 Invoke 核取方塊。
- 在文字框中,貼上 ILOG 生成的 WSDL。
- 保證為 ILOG WSDL 自動選擇 Port Type。最後結果如圖 12 所示。
- 一旦夥伴連結配置好後,單擊 Web Services Invoke,如 Personal Insurance (Auto Underwriting)。這是一個系統任務,所以 Invoke 是選擇列表中所選擇的操作。
- 雙擊 Invoke 配置 Web Service 呼叫。
- 選擇您剛剛建立的夥伴連結,以及這個操作。對於 ILOG,您可以只選擇 executeDecisionService() 操作。然後過程設計器會將 Web Service 的所有輸入和輸出變數填充到兩個單獨的列表中,其中這兩個列表是您可以用來選擇對映本地變數的。
- 對於每一個輸入和輸出變數,從下拉選單選擇正確的本地變數。圖 24 顯示輸出變數的對映。
表 3. 對映輸出變數以傳送資料到 iLog Web Service
名稱 | 型別 | 表示式 |
---|---|---|
pi_height | Float | pi_Height |
pi_weight | Float | pi_Weight |
pi_gender | String | pi_Gender |
pi_DOB | Time | pi_DOB |
pi_maritalStatus | String | pi_MaritalStatus |
pi_empStatus | String | pi_EmpStatus |
pi_monthlyIncome | Float | pi_MonthlyIncome |
pi_reqCoverage | Float | pi_reqCoverage |
pi_insurRejected | Boolean | pi_InsurRejected |
pi_employerInsur | Boolean | pi_EmpProvidedInsur |
pi_otherInsur | Boolean | pi_OtherInsur |
pi_HH_AIDS | Boolean | pi_HH_AIDS |
pi_HH_alcohol | Boolean | pi_HH_Alcohol |
pi_HH_Cancer | Boolean | pi_HH_Cancer |
pi_HH_KidneyStones | Boolean | pi_HH_KidneyStones |
pi_HH_Tumor | Boolean | pi_HH_Tumor |
pi_HH_BP | Boolean | pi_HH_BP |
pi_HH_Diabetes | Boolean | pi_HH_Diabetes |
pi_BMI | Float | pi_BMI |
pi_BMI_Res | String | pi_BMI_Res |
pi_AcceptInsurance | Boolean | pi_AcceptInsurance |
pi_AidsRating | Integer | pi_AidsRating |
pi_CancerRating | Integer | pi_CancerRating |
pi_AlcoDrugaddictRating | Integer | pi_AlcoDrugaddictRating |
pi_KidneyStonesRating | Integer | pi_KidneyStonesRating |
pi_TumorRating | Integer | pi_TumorRating |
pi_DiabetesRating | Integer | pi_DiabetesRating |
pi_HiBPRating | Integer | pi_HiBPRating |
pi_HealthRating | Integer | pi_HealthRating |
表 4 顯示了輸入變數的對映。
表 4. 對映輸入變數以使用 ILOG Web Service
名稱 | 型別 | 域名稱 |
---|---|---|
ilog.rules.outputString | String | iLOG_RES_String |
ilog.rules.firedRulesCount | Integer | iLOG_RES_NumRules |
pi_height | Float | pi_Height |
pi_weight | Float | pi_Weight |
pi_gender | String | pi_Gender |
pi_DOB | Time | pi_DOB |
pi_maritalStatus | String | pi_MaritalStatus |
pi_empStatus | String | pi_EmpStatus |
pi_monthlyIncome | Float | pi_MonthlyIncome |
pi_reqCoverage | Float | pi_reqCoverage |
pi_insurRejected | Boolean | pi_InsurRejected |
pi_employerInsur | Boolean | pi_EmpProvidedInsur |
pi_otherInsur | Boolean | pi_OtherInsur |
pi_HH_AIDS | Boolean | pi_HH_AIDS |
pi_HH_alcohol | Boolean | pi_HH_Alcohol |
pi_HH_Cancer | Boolean | pi_HH_Cancer |
pi_HH_KidneyStones | Boolean | pi_HH_KidneyStones |
pi_HH_Tumor | Boolean | pi_HH_Tumor |
pi_HH_BP | Boolean | pi_HH_BP |
pi_HH_Diabetes | Boolean | pi_HH_Diabetes |
pi_BMI | Float | pi_BMI |
pi_BMI_Res | String | pi_BMI_Res |
pi_AcceptInsurance | Boolean | pi_AcceptInsurance |
pi_AidsRating | Integer | pi_AidsRating |
pi_CancerRating | Integer | pi_CancerRating |
pi_AlcoDrugaddictRating | Integer | pi_AlcoDrugaddictRating |
pi_KidneyStonesRating | Integer | pi_KidneyStonesRating |
pi_TumorRating | Integer | pi_TumorRating |
pi_DiabetesRating | Integer | pi_DiabetesRating |
pi_HiBPRating | Integer | pi_HiBPRating |
pi_HealthRating | Integer | pi_HealthRating |
在選擇了夥伴連結和對映了變數後,您就可以按照以下步驟啟動工作流了。
- 通過單擊 File > Validate Workflow Collection 驗證工作流。
- 單擊 File > Transfer Workflow Collection 將工作流傳輸到物件儲存和過程引擎中。
- 在傳輸時,要為文件選擇一個正確的標題,並選擇儲存該工作流的物件儲存位置。
- 為文件選擇預設安全性設定。
- 單擊 File > Launch Main Workflow 啟動工作流。記住您要選擇 Administrator 作為所有人工任務的預設使用者。然後啟用視窗就會開啟,並且帶有一個輸入表單,如圖 13 所示。
- 在表單域中填寫正確的值,然後單擊 Launch,如圖 13 所示。
這樣,自動保單處理任務執行。如果規則引擎返回一個肯定響應,那麼這個任務會被轉到電子郵件通知任務。如果規則引擎返回一個否定響應,那麼這個任務就會轉到人工保單處理任務。
要驗證結果,單擊工作空間的 Tasks > Inbox,然後單擊工作專案的步驟處理器。
要考慮使用下面的方法優化您的專案。
- 如果您在規則工具和 IBM FileNet P8 Process 設計器中使用相同的變數名,那麼 INVOKE 步驟的變數對映是自動完成的。
- 如果您對最新規則集版本使用 WSDL,您可以修改這些規則並將它們作為小版本部署而不影響工作流。這個工作流會使用最新的規則集完成它的執行。
- 當您以記錄方式(如,一個 Excel® 電子表格)組織大量作用到相同的變數組的規則,那麼要使用 ILOG JRules 匯入功能。它使您能夠匯入一個 Excel 檔案,然後建立一個決策表。
- 除了使用示例 XSD 檔案,您也可以使用不同的變數和型別建立您自己的 XML 基本檔案而開發一個 XSD 檔案,用於建立 XOM。然而,對於生產環境需要,您可以考慮使用本文所提供的 XSD,因為它包含了所有的 IBM FileNet P8 型別。
IBM FileNet P8 BPM 和 IBM WebSphere ILOG JRules 實現 Web Services 整合的方法有兩個。如前面 配置工作流呼叫步驟以執行業務規則 所闡述的,您可以在您的過程工作流中直接使用 HTDS WSDL 並對映輸入和輸出變數。或者,您可以使用 ILOG Rule Studio 的程式碼生成器功能為規則集生成一個 Web Service 客戶端。要使用程式碼生成器功能,您需要建立一個 Java® 元件,它會使用所生成的客戶端發起 Web Service 呼叫,然後將元件與過程工作流整合。參考資料 有關於配置和部署的最佳實踐方法,以及使用這個方法的產品文件。
本文闡述瞭如何使用 Web Services 整合 IBM FileNet P8 BPM 和 IBM WebSphere ILOG JRules。同時,本文也詳細介紹了使用這些工具開發和部署您的業務規則的步驟。IBM FileNet P8 BPM 與 JRules 協同工作的解決方案使我們能夠實現業務決策的快速修改,這會有助於一個組織鞏固它在當前的市場競爭中的位置。這個解決方案能改進業務過程的敏捷性,併為每一位投資人提供正確的工具。
我們誠摯感謝以下校閱人,感謝他們花費了寶貴時間對本文進行校閱,並對本文的所有方面給出了他們的建議和評論:
- Chris Berg —— 產品經理(WebSphere BRMS)
- Andy J Ritchie —— ILOG 開發整合 & 協同(WebSphere BRMS)
- Jiehua Eva Lu —— 技術聯盟經理(WebSphere BRMS)
- Srinivas Nv Gannavarapu —— 顧問軟體工程師(企業內容管理)
原文連結:http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-1004filenetbpmjrules/index.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14789789/viewspace-674287/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 整合 WebSphere ILOG JRules 與 IBM Content Manager Enterprise EditionWebIBM
- IBM Lotus Quickr services for IBM WebSphere Portal 8.0 中定製元件IBMUIWeb元件
- IBM BPM BlueWorks:一次 WebSphere 雲試驗IBMWeb
- 瞭解 WebSphere Business Modeler 與 FileNet 整合Web
- IBM Lotus Quickr Web Services 介紹IBMUIWeb
- 在 IBM WebSphere Portal 中整合 IBM Lotus Quickr 協作功能IBMWebUI
- 在 IBM WebSphere Portal V6.1 中整合 IBM OmniFind 搜尋IBMWebNifi
- WebSphere ILOG JRules 規則引擎執行模式簡介Web模式
- 使用c#操作IBM WebSphere MQC#IBMWebMQ
- ibm websphere簡介IBMWeb
- ZT - WebSphere ILOG JRules 規則引擎執行模式簡介(4)Web模式
- ZT - WebSphere ILOG JRules 規則引擎執行模式簡介(3)Web模式
- ZT - WebSphere ILOG JRules 規則引擎執行模式簡介(2)Web模式
- ZT - WebSphere ILOG JRules 規則引擎執行模式簡介(1)Web模式
- 度量 IBM WebSphere Portal 效率IBMWeb
- 讓IBM WebSphere Portal可以使用中文IDIBMWeb
- 《IBM BPM實戰指南》讀書筆記IBM筆記
- IBM WebSphere 7.00 安裝筆記IBMWeb筆記
- IBM WebSphere Portal Web Content Manager 和 DB2 調優指南IBMWebDB2
- zt_ibm websphere tuning要點IBMWeb
- IBM WebSphere Application Server Migration ToolkitIBMWebAPPServer
- RADVISION改進與IBM Lotus整合IBM
- ibm 取消IBM http Server,直接使用websphere實現使用者直接輸入IP,連線到網頁.IBMHTTPServerWeb網頁
- 將 Flex 應用程式與 IBM Mashup Center 整合FlexIBM
- IBM 收購ILOG,Oracle 公司要繼續努力了啊IBMOracle
- 杉巖資料物件儲存替換IBM FileNet,突破效能瓶頸物件IBM
- ibm websphere中介軟體一些資料IBMWeb
- 使用 WebSphere BPM 套件實現多模組監測Web套件
- 整合Lotus Quickr 8.5 for Domino 與 IBM ECM:配置與最佳實踐UIIBM
- IBM Lotus看重Web2.0IBMWeb
- 使用 IBM Installation Factory 簡化 WebSphere Application Server 安裝和部署IBMWebAPPServer
- 在 IBM Lotus Quickr 8.5 for WebSphere Portal 中定製主題IBMUIWeb
- 為 IBM WebSphere Application Server 建立 Jython 管理指令碼IBMWebAPPServer指令碼
- 請教單點登入的問題(IBM Websphere Portal)IBMWeb
- IBM WebSphere Enterprise Service Bus V6.1 的新功能IBMWeb
- 用 verbose GC 分析 IBM WebSphere Portal 的記憶體問題GCIBMWeb記憶體
- 協同使用 IBM Rational Requirements Composer 和 IBM Rational RequisiteProIBMUIREM
- ibmIBM