SAP工作流介紹之ABAP Business Workflow介紹

什麼是工作流

工作流(Work Flow)就是自動運作的任務的進程中,參與的人、文件、信息或任務,以及各個要素間的傳遞按照規程運轉。打個比方說,我們可以將整個業務過程看作是一條河,河流中一系列相互銜接、自動進行的業務活動或任務的跟隨和相互作用就像流過的水,那麼我們稱這個過程爲工作流。

工作流作爲經營過程的實現技術能夠反映經營過程的幾個問題:

Ø 經營過程是什麼?

Ø 怎麼做?

Ø 由誰來做?

Ø 做得怎麼樣?

什麼是工作流管理系統

爲了實現對業務過程的工作流管理,需要相應的軟件系統的支撐。此種軟件系統爲工作流管理系統(workflow management system wfms)。根據wfmc 的定義,工作流管理系統是“一種在工作流形式化表示的驅動下,通過軟件的執行而完成工作流定義、管理及執行的系統”,其主要目標是對業務過程中各活動發生的發後次序及同活動相關的相應人力或信息資源的調用,進行管理而實現業務過程的自動化。


工作流的分類

工作流根據所實現的業務過程分類:

Ø 管理型工作流(Administrative Workflow, AW)

Ø 設定型工作流(Ad Hoc Workflow, AHW)

Ø 協作型工作流(Collaborative Workflow, CW)

Ø 生產型工作流(Production Workflow, PW)

工作流根據地層實現技術分類:

Ø 以通信爲中心……14%

Ø 以文檔爲中心……32%

Ø 以過程爲中心……54%

SAP ABAP Busniess Workflow 引擎

SAP工作流是SAP Netweaver ABAP平臺中一個獨立的技術模塊,與其他的業務模塊,如SD、MM、FICO、PP等無縫集成。用來定義那些和系統標準流程不匹配的業務流程。這些流程可以從諸如下達或審批的簡單流程,到諸如不同部門協作創建物料數據的複雜流程。工作流特別適合於多次重複執行類型的業務工作流程。工作流還可以用來處理業務流程中出現的錯誤和例外:預先在工作流中預先定義例外事件,當系統自動檢查發現例外時,就會有觸發某種反應或措施,如給相關人員發Mail,或者及時的短信通知等等。系統了預置了通知單、採購、項目管理、合同管理等大量的工作流模板。


工作流模塊提供瞭如下定義、分析、監控工作流執行的工具:

l 工作流構建器(Workflow Builder)。以圖形化界面,創建、顯示和修改工作流,用戶可以直接對系統提供的標準工作流模板進行功能拓展,例如執行自定義的公司代理(Agent)分派,或修改到期日監控。下圖爲圖形化的界面示範。







l 工作流向導(Workflow Wizard)。系統提供了嚮導工具,支持用戶在工作流定義過程中一步步創建某些特定的工作流環節。工作流向導瀏覽器則可以讓用戶一覽已有的各類型嚮導。

l 業務對象構建器(Business Object Builder)。業務對象用來調用業務模塊的功能,業務對象構建器是一個定義和分析業務對象的工具。業務對象反映了工作流中的那些重複循環任務,系統提供了一個瀏覽器可以看到現行任務的總覽視圖。

l 業務工作區(Business Workplace)。這裏最終用戶可以看到所有相關的工作流信息,對其將要執行的任務有個總體的認識,並着手執行其負責的活動。

l 系統管理工具(System Administration)。工作流系統管理員可以利用多種工具來控制分析現行工作流,系統會自動通知出現的問題,比如任何超時,提醒等等。同時通過系統管理工具

如下圖所示,工作流的定義和執行可以被劃分爲4個主要部分:1)業務工作區。 2)工作流。3)任務(Task)。4)業務對象倉庫(Business Object Repository)。





業務工作區和工作行項(Work Items)

用戶可以在顯示其所需執行任務的業務工作區上執行工作流派生的工作行項。Work items 是工作流在實際運行時候要執行的任務或者行動。工作行項分爲很多類型,只有其中某些類會出現在業務工作區。

工作流和工作流定義(Workflow Definition)

工作流首先必須根據業務需要,在工作流構建器中被創建,定義出運行所需要的工作步驟(Step)。這些步驟或者直接控制工作流,或者參考引用任務。用戶還可以在步驟中增添有關代理(Agent)和期限監控(Deadline Monitoring)的定義。工作流由人工啓動或者系統自動啓動運行。對於自動啓動的工作流來說,工作流定義中必須包括一個啓動事件(如“新物料被創建”)。當系統中發生該事件時,相關的工作流便自動開始運行。

用戶激活一個工作流定義時,用戶可以自動生成一個運行時間版本。當工作流被啓動(人工或者自動),相應的運行時間版本便可用來執行任務。如果修改了工作流定義,則生成新的版本,不會影響到已經在運行的工作流正常工作。

任務

工作任務描繪了基本的業務活動,通常引用某些對象類型方法。任務參考引用對象類型(Business Type)中的方法(Method),可以在運行時間內自動執行(後臺任務)或由用戶運行(對話任務)。

可能的代理(Possible Agent)在工作任務中被定義,指那些受到授權執行某項任務和工作行項的用戶。可能的代理通常不是一個所有用戶的完整列表,而是組織結構、崗位和工種。可能的代理在任務定義時指定。如果一個任務沒有分配可能的代理,則不能被執行或者在啓動對話。

業務對象類型和業務對象

業務對象類型是用在工作流執行時所需要的數據,主數據(物料、供應商、客戶、設備等)、憑證(發票、維修訂單)都是可能的業務對象類型。

業務對象則是對某個業務對象類型中的一個具體數據記錄,存放在系統的數據庫內。

業務對象具有屬性(Attribute),是對業務對象的說明,用以組成業務對象行記錄,如物料名稱和物料編號。這些值可以是數據庫中的數據,系統運行時計算的變量,或者業務對象的狀態。屬性可以用在工作流定義相關條件。在系統運行時,屬性的值被讀取或計算,也可用來控制工作流。

每個業務對象類型中均有方法(Method),用以說明可以根據相關數據一起執行的活動(比如物料的創建),Method能夠調用業務系統中的事務代碼功能,或者外部系統的功能。方法中包括:輸入參數(爲同步或者異步模式而定) 、結果(只對於同步模式) 、輸出參數(只對於同步模式) 、例外情況(只對於同步模式)。

最後一個業務對象類型的重要部分是事件。事件描述了業務對象某些狀態的變化(比如下達採購訂單或者採購物料的延遲送達),可用來觸發工作流。可能發生的事件清單是根據業務對象構建器中的業務對象類型而定的。該清單可以根據業務需要而定。一個事件可以啓動、中止或者繼續執行工作任務和工作流。

業務對象倉庫可以讓用戶總覽系統中的所有業務對象類型。
預置的工作流模板

1.通知單處理

該工作流模板支持維修處理中的業務流程。在此模板中,工作流將協助有效的處理、監控和完成新提交的維修通知,觸發和控制以下標準任務:

l 通知相關負責人(比如維修通知管理員)新的維修通知已經建立或正在處理。

l 通知相關負責人(如維修部門的負責人)維修通知中已經建立要執行的維修工作任務。

l 通知相關負責人(比如通知的計劃員)維修通知中所有的任務都已經完成,下一步需要關閉維修通知或者增加新工作。

在正確的設置系統後,工作流自動的將工作行項發送到相關個人或者部門,告知其必須執行某些動作。工作流程中包含如下表所列的任務和觸發事件:

任務
啓動事件

不包含指定維修工作的特殊維修通知的處理
當維修通知在系統中人工創建時,相關負責人便收到郵件通知。

包含指定維修工作的維修通知的處理
一旦維修工作任務在通知中建立,並且通知被保存後,相關任務負責人便收到郵件通知。

含有已完成的任務的維修通知的完成。
一旦工作任務在維修通知中被標識完成,並且通知被保存,相關責任人便收到郵件通知。


表 工作流中的任務

對以上每項任務,系統按順序通知以下人員或部門:1)維修通知計劃員;2)部門負責人(如果沒有指明計劃員) ;3)所有相關人員(如果沒有特別指定計劃員和部門)。

處理流程如下圖所示。


0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章