子流程
路徑:【後台管理】⇒【應用管理】⇒【應用】⇒【業務模型】⇒【流程設計】
子流程是流程與流程之間的連結,用來在目前流程運行的過程中,自動帶出另一個流程繼續流轉。本章節說明子流程節點的啟動方式、子流程範本綁定、觸發設定、參與者與父子流程之間的數據對應。
1. 子流程
📌 子流程與父流程
子流程是用來引導目前流程轉向另一個流程繼續流轉的節點。帶出子流程的流程稱為 父流程,被帶出的流程則稱為 子流程。
例如:銷售流程與財務記帳流程原本各自獨立運行,但銷售流程結束後必須記帳,此時就可以在銷售流程中加入子流程節點帶出記帳流程;銷售流程是父流程,記帳流程就是子流程。
📌 節點屬性
從左側 【流程節點選擇區】 將 [子流程] 拖曳到 【流程設計區】,即可在右側 【節點屬性】 設定子流程的相關屬性。
子流程節點屬性
與使用者活動節點不同,子流程節點沒有任務表單,也沒有前置條件與後置條件;節點屬性可分為以下幾類:
- 通用屬性:節點編碼、節點名稱,詳細介紹請詳見 節點通用屬性 章節。
- 基礎設定:子流程同步方式、子流程範本、發起環節、父流程可查看子流程。
- 觸發設定:觸發物件、觸發條件。
- 參與者:由誰來填寫並發起子流程表單。
- 數據對應:父流程與子流程之間的數據項傳遞規則。
- 訊息通知、事件處理:與其他節點相同的通知與自動化設定。
2. 基礎設定
📌 子流程同步方式
子流程同步方式決定父流程是否要等待子流程跑完,系統預設為 『同步』。
- 同步:流程運行到子流程節點時,必須等子流程完成後,父流程才會進入下一個節點。
- 非同步:流程運行到子流程節點時,不論子流程是否完成,父流程都會同時啟用下一個節點。
例如:請款流程中若必須確認記帳完成才能付款,就應選擇同步;若記帳只是後續補登、不影響付款進度,則可選擇非同步。
📌 子流程範本
子流程範本是指這個節點要帶出哪一個流程,為必填欄位。
點選欄位後會展開樹狀選單,依 應用分組 ⇒ 應用 ⇒ 業務模型分組 ⇒ 業務模型 ⇒ 流程 逐層展開,選到最後一層的流程即完成綁定。
子流程可以綁定其他應用底下的流程,但不能綁定目前流程本身。
子流程範本
綁定子流程範本後,系統才會載入子流程的數據項,【數據對應】 也才能選到子流程的欄位。若中途更換子流程範本,原本已設定的數據對應需要重新確認。
📌 發起環節-自動送出
發起環節的 『自動送出』 是指子流程被啟用時,是否要由系統直接送出子流程的發起節點,系統預設為不勾選。
- 不勾選:子流程參與者會收到待辦通知,開啟表單填寫後手動送出,子流程才會開始流轉。
- 勾選:子流程節點被啟用後,系統會自動送出發起節點,子流程直接從第二個節點開始流轉;子流程的發起節點參與者會在已辦任務列表中看到這筆任務。
勾選自動送出後,即使發起節點的必填數據項沒有值,系統一樣會自動送出到第二個節點。若子流程的發起節點有必填欄位,建議搭配數據對應先把值帶入,或不要開啟自動送出。
📌 父流程可查看子流程
父流程可查看子流程用於解決父流程參與者看不到子流程內容的情況,系統預設為開啟。
依系統說明:「開啟後,如果父流程參與者未參與子流程,且沒有子流程的數據權限,那麼父流程參與者會被臨時授權 "發起節點的表單查看權限"」。
換言之,開啟後父流程的參與者即使沒有子流程的數據權限,也可以查看子流程發起節點的表單內容,方便掌握子流程的處理情形。
3. 觸發設定
📌 觸發物件
觸發物件是指要依據表單中的哪一筆資料來發起子流程,可選擇 『主表』 或表單中的 子表,系統預設為主表。
觸發物件
- 主表:整張表單只會觸發一個子流程。
- 子表:子表中的每一筆明細各觸發一個子流程;選擇子表後,才會出現 【觸發條件】 設定。
例如:採購單的採購明細分屬不同供應商,選擇子表作為觸發物件,就可以讓每一筆明細各自帶出一個採購子流程。
📌 觸發條件
當觸發物件為子表時,可以進一步設定哪些明細要發起子流程。點選 【觸發條件】 右側的齒輪圖示即可開啟設定視窗。
觸發條件
-
條件類型
- 滿足條件的數據發起子流程:符合條件的子表資料才會觸發子流程。
- 滿足條件的數據不發起子流程:符合條件的子表資料會被排除,其餘資料才觸發子流程。
-
條件設定
一組條件由 數據項、運算子 與 值 組成,數據項來自觸發物件(子表)的欄位。運算子會依欄位類型變動,以數值欄位為例,可選擇等於、不等於、大於、大於等於、小於、小於等於、介於、不介於、為空、不為空。
條件可透過 『+並且』、『+或者』 新增多組,例如「部門等於研發部」並且「出差金額大於 3000」時才觸發子流程。
設定完成並儲存後,【觸發條件】 欄位會顯示 『已設定』,可再次點選齒輪修改,或點選右側垃圾桶圖示清除條件。
4. 參與者
參與者是指子流程被啟用時,系統要推送待辦給誰,由這個人填寫表單並發起子流程,為必填欄位。
子流程節點的參與者設定方式會隨 【觸發物件】 不同而改變。
📌 觸發物件為主表
當觸發物件為主表時,參與者的設定視窗與使用者活動節點相同,同樣支援表達式視圖與公式視圖。
詳細介紹請詳見 參與者設定 章節。
觸發物件為主表時的參與者
📌 觸發物件為子表
當觸發物件為子表時,參與者會改為簡化的設定視窗,三種查詢方式擇一使用,且查詢的基準都來自子表中人員或部門類型的數據項。
觸發物件為子表時的參與者
- 依經理查詢:查詢〔子表的人員/部門欄位〕的部門經理。
- 依角色查詢:根據〔子表的人員/部門欄位〕查詢角色為〔指定角色〕的成員。
- 依數據項查詢:直接以〔子表的人員/部門欄位〕的值作為參與者。
5. 數據對應
📌 數據對應關係設定
建立父子流程關係後,可以透過數據對應把父流程表單上的值自動帶入子流程表單,或在子流程結束後把值回填到父流程,整個過程由系統自動處理,不需要人工重新輸入。
例如:員工離職流程(父流程)的申請人、離職日期、離職理由,可以自動帶入帳號註銷流程(子流程)的使用者名稱、註銷日期、註銷事由。
點選 【數據對應】 右側的齒輪圖示,即可開啟 [數據對應關係設定]。
數據對應關係設定
每一列對應關係由 父流程數據項、對應方式、子流程數據項 三個欄位組成,可透過 『+新增數據』 增加多列,或點選右側垃圾桶圖示刪除,設定完成後點選 『儲存』。
📌 對應方式
對應方式決定數據傳遞的方向,共有三種:
- 從父流程對應到子流程:單向傳遞。不論觸發了幾個子流程,父流程都會自動把對應數據項的值帶入子流程表單。
- (覆蓋)父流程和子流程相互對應:雙向傳遞,子流程結束後回填父流程時,以覆蓋方式寫入。
- (追加)父流程和子流程相互對應:雙向傳遞,子流程結束後回填父流程時,以追加方式寫入。
依系統說明:「父流程與子流程互相對應:父流程傳遞到子流程,同時子流程結束後,將數據回填到父流程(有多個子流程時,以追加方式傳遞給父流程,同一子表數據只能選擇同一種對應方式)」。
📌 數據項類型須相符
父流程與子流程兩邊的數據項類型必須相容,系統會在選定父流程數據項後,自動過濾出子流程中可對應的欄位。
例如選擇父流程的單據號(短文字)後,子流程的可選清單只會出現短文字與長文字類型的欄位。
數據項類型須相符
其中業務對象 ID 較為特別,可以對應到短文字或關聯單選/關聯多選控制項。
6. 訊息通知與事件處理
📌 訊息通知
子流程節點可以設定除了系統通知以外的其他通知方式,例如 LINE 訊息通知,並可透過右上角的 『訊息管理』 連結進行訊息內容維護。
若要開啟此功能,需先在 【流程屬性】 中開啟對應的通知方式,詳細說明請詳見 流程屬性【6. 流程通知】 章節。
📌 事件處理
子流程節點可依節點生命週期設定 節點啟用前、節點啟用後、節點完成後 三個時間點要執行的自動化動作,包含發送通知、設定數據、綁定業務動作等。
詳細介紹請詳見 使用者活動-進階屬性【3. 事件處理】 章節。