本章節包含 BAM WF 攔截器所支援的自訂作業。
決定允許作業的位置
BAM WF 攔截器所提供的自訂作業,可依相關聯的 Windows Workflow Foundation 追蹤點類型分類:
活動
工作流程
使用者
BAM WF 攔截器會使用類別,將追蹤點類型指派給每個 OnEvent。 它會根據 在 OnEvent 篩選和資料擷取和操作區段中看到的作業類型進行此指派。 例如,如果OnEvent包含使用GetUserData作業的Update元素,則它是使用者追蹤點類型,因為活動和工作流程事件不支援這項作業。 如需追蹤點的詳細資訊,請參閱 中的 System.Workflow.Runtime.Tracking https://go.microsoft.com/fwlink/?LinkId=80242 。
注意
工作流程追蹤點無法從工作流程擷取資料。
作業必須在篩選運算式內,以及在篩選運算式與元素內 OnEvent 的資料擷取和操作區段之間相容。 下表顯示哪些作業可用於各追蹤點類型的篩選條件運算式。
| 篩選條件運算式作業 | 對活動追蹤點有效嗎? | 對工作流程追蹤點有效嗎? | 對使用者追蹤點有效嗎? |
|---|---|---|---|
| 等於 | 是 | Yes | Yes |
| 和 | Yes | Yes | Yes |
| Concatenate | No | No | No |
| 常數 | 是 | Yes | Yes |
| GetActivityEvent | 是 | No | No |
| GetActivityName | 是 | No | Yes |
| GetActivityProperty | 是 | No | Yes |
| GetActivityType | 是 | No | Yes |
| GetContextProperty | No | No | No |
| GetUserData | No | No | No |
| GetUserDataType | No | No | Yes |
| GetUserKey | No | No | Yes |
| GetWorkflowEvent | No | 是 | No |
| GetWorkflowProperty | No | No | No |
如果您混合不相容的作業,部署攔截器組態檔時,就會收到錯誤。 例如,如果您在篩選中使用 GetActivityEvent 和 GetWorkflowEvent ,或在篩選和資料擷取或操作事件中 (,例如 CorrelationID) ,您會收到錯誤。
下表摘要敘述資料擷取或操作中每項活動類型支援的作業。
| 資料擷取或操作作業 | 對活動追蹤點有效嗎? | 對工作流程追蹤點有效嗎? | 對使用者追蹤點有效嗎? |
|---|---|---|---|
| 等於 | 是 | Yes | Yes |
| 和 | Yes | Yes | Yes |
| Concatenate | Yes | Yes | 是 |
| 常數 | 是 | Yes | Yes |
| GetActivityEvent | 是 | No | No |
| GetActivityName | 是 | No | Yes |
| GetActivityProperty | 是 | No | Yes |
| GetActivityType | 是 | No | Yes |
| GetContextProperty | Yes | Yes | Yes |
| GetUserData | No | No | Yes |
| GetUserDataType | No | No | Yes |
| GetUserKey | No | No | Yes |
| GetWorkflowEvent | No | 是 | No |
| GetWorkflowProperty | 是 | No | Yes |
注意
單一 OnEvent 與單一追蹤點之間有一對一的對應。