實用的服務與業務服務
下節會重點說明一些業務服務以及產品提供的服務,對於實作來說可能會很實用。
資料總管服務
系統會提供一個機制,用於執行在指令檔、Java 外掛,或透過 Web 服務呼叫使用的 SQL Select 陳述式。這是使用其中一個已定義 SQL 之資料總管區域類型建立區域來完成。接著,使用資料總管服務 (FWLZDEXP) 建立業務服務。
下列各點標明如何針對此服務建立您自己的業務服務。請注意,通常每個區域會有個別業務服務。
- 輸入業務服務代碼與描述。建議定義符合區域代碼的業務服務代碼,以便更容易管理業務服務叫用的區域。
- 選取服務名稱 FWLZDEXP。
- 在結構頁籤中的 <schema> 節點下,輸入資料總管服務所需的欄位對應:
- 區域應對應至服務欄位 ZONE_CD 。將區域代碼定義為預設值。
- 針對區域中定義的每個使用者篩選,建立服務欄位 Fx_VALUE 的結構對應,其中 "x" 是篩選編號 (來自區域參數)。
- 針對區域中定義的每個隱藏篩選,建立服務欄位 Hx_VALUE 的對應,其中 "x" 是篩選編號 (來自區域參數)。
- 搜尋結果會由資料總管服務當做列表傳回。每個資料欄值在服務欄位 COL_VALUE 中有適當的序號 ( SEQNO )。根據序號可能會得到扁平化結果,如此便能夠定義邏輯元素名稱。
- 另一個實用欄位是 ROW_CNT ,提供搜尋所擷取的資料列數。
下列是業務服務結構的範例,該結構會接收業務物件代碼,並傳回允許定義狀態原因的狀態值及其描述列表。
<schema>
<zone mapField="ZONE_CD" default="F1-BOSTSLST"/>
<bo mapField="H1_VALUE" />>
<rowCount mapField="ROW_CNT"/>>
<results type="list" mapList="DE">>
<status dataType="string" mapField="COL_VALUE">
<row mapList="DE_VAL">>
<SEQNO is="1" />>
</row>>
</status>>
<description dataType="string" mapField="COL_VALUE">
<row mapList="DE_VAL">>
<SEQNO is="2" />>
</row>>
</description>>
</results>>
</schema>
維護物件日誌服務
許多維護物件支援遵循資料欄名稱樣式與行為的日誌資料表。系統會提供一般維護物件日誌服務 (F1MOLOGP),可用於執行與日誌項目相關的通用函數:
-
讀取日誌項目。如果您傳遞特定維護物件、主索引鍵及日誌序號,則服務會傳回該日誌項目的明細。產品會提供具此用途的一般業務服務 — 一般維護物件 - 擷取日誌明細 (F1–ReadMOLog)。或者,可以對指定維護物件建立業務服務,其維護物件代碼是使用預設語法指派給維護物件元素。這允許該維護物件特定的業務功能使用特定業務服務。
-
新增日誌。此服務可用於新增日誌項目。如果已新增使用者日誌,則來自使用者的註釋會植入詳細描述中。系統產生的日誌項目通常會提供訊息類目/訊息編號以及其他資訊,例如狀態、特定日誌類型,以及視需要提供相關物件參考 (透過特性)。產品會提供具此用途的一般業務服務 — 新增一般維護物件日誌 (F1–AddMOLog)。或者,可以對指定維護物件建立業務服務,其維護物件代碼是使用預設語法指派給維護物件元素。這允許該維護物件特定的業務功能使用特定業務服務。
基準業務服務
下列資料表會重點說明產品提供的一些業務服務,對於實作的自訂邏輯可能會很實用。
業務物件相關服務
業務服務名稱 | 描述 |
---|---|
F1-AutoTransitionBO | 執行與指定業務物件執行環境目前狀態相關的監視演算法 (可能會導致後續狀態轉變)。 |
F1-CompareBusinessObjectData | 比較指定業務物件執行環境的兩個版本。 |
F1-DetermineBo | 執行維護物件的判斷業務物件邏輯,來判斷指定維護物件實例的業務物件。 |
F1-GetRequiredFieldsForBOState | 傳回指定業務物件狀態的必要欄位。 |
F1-RetrieveBOOption | 傳回指定業務物件與選項類型的業務物件選項值。 |
F1-RetrieveBOStatusOption | 傳回指定業務物件、狀態及選項類型的業務物件選項值。 |
F1-RetrieveBOStatusOption | 擷取目前使用者可存取之指定維護物件的業務物件列表。 |
F1-RetrieveBoStatusDescription | 傳回指定業務件狀態的描述。 |
F1-RetrieveBusinessObjectLabel | 傳回業務物件結構中指定路徑 (例如元素) 的適用標籤。 |
F1-RetrieveNextStates | 根據維護物件的輸入與其主索引鍵,或根據業務物件與其中一個狀態,傳回後續可能的狀態列表。 |
電子郵件相關服務
業務服務名稱 | 描述 |
---|---|
F1-EmailService | 即時傳送電子郵件訊息。 |
F1-RetrieveEmailAddress | 擷取屬於待辦事項角色之使用者的電子郵件地址。 |
F1-RetrieveEnvironmentURL | 擷取安裝用的目前環境 URL 資訊。 |
對應與指令檔的工具
業務服務名稱 | 描述 |
---|---|
F1-AddWarning | 此業務服務可用來藉由提供訊息明細來記錄警告。系統會收集所有警告並將警告一次全部顯示給使用者。 |
F1-CheckOnlineConnection | 檢查連線是線上還是批次。 |
F1-CheckWarning | 用來檢查是否已累積任何警告。如果已累積警告,就不應執行任何無法回復的邏輯 (顯示警告時)。 |
F1-DateMath | 執行各種日期與時間數學計算。請參考業務服務描述以取得更多明細。 |
F1-DateTimeFormattingService | 根據使用者的顯示設定檔設定,將指定的日期/時間格式化。 |
F1-ExecuteScriptInNewSession | 在新的處理工作階段/交易中執行服務指令檔。 |
F1-GetFieldLabel | 擷取指定欄位的標籤。 |
F1-GetForeignKeyReference | 傳回指定外來索引鍵參考與主索引鍵的外來索引鍵參考資訊,包含資訊描述、導覽選項及內容功能表。 |
F1-GetFKReferenceDetails | 傳回指定維護物件與主索引鍵的外來索引鍵參考資訊,包含外來索引鍵參考代碼、資訊描述、導覽選項、搜尋區域及內容功能表。 |
F1-GetLookupDescription | 依指定查尋欄位名稱傳回查尋欄位值的查尋描述。 |
F1-GetExtLookUpVal | 傳回指定可延伸查尋業務物件的值列表。 |
F1-GetMonthInYearAbbreviation | 以系統格式傳回輸入日期的 3 個字元月份縮寫。 |
F1-NumberAmountFormatter | 根據使用者的顯示設定檔設定,將指定的金額或數目格式化。它也可以接收輸入以調整小數位數,並可視需要套用幣別設定。 |
F1-OutmsgDispatcher | 讓使用者選擇是否保留資料庫中的訊息,以及是否捕捉呼叫時可能會發生的錯誤,以分派即時訊息。請參考即時訊息以取得更多資訊。 |
F1-OutmsgMediator | F1-OutmsgDispatcher 的替代項,如果寄送方不需要建立外傳訊息記錄,則此替代項可能是較好的選擇。請參考即時訊息以取得更多資訊。 |
F1-RethrowError | 使用輸入訊息類目/編號/參數發出應用程式錯誤。 |
F1-RetrieveMODescription | 擷取維護物件的描述。 |
F1-ReturnMessage | 依指定訊息類目、編號、參數及參數類型傳回擴充訊息。 |
F1-SavePointDispatcher | 允許服務指令檔在捕捉例外的位置執行,交易會回復到服務指令檔執行之前設定的儲存點。 |
使用者相關服務
業務服務名稱 | 註釋 |
---|---|
F1-CheckApplicationSecurity | 檢查指定應用服務/存取模式的使用者安全性 |
F1-CheckUserAuthorization | 根據輸入應用服務、安全性代碼及授權等級,判斷指定的使用者是否獲得存取權。 |
F1-DetermineIfUserCanApproveTD | 判斷目前使用者是否可核准指定待辦事項。 |