如需使用傳統UI,請參閱AEM 6.3檔案以取得參考。
您可以建立工作流模型,以定義使用者啟動工作流時執行的一系列步驟。 您也可以定義模型屬性,例如工作流程是暫時性的,還是使用多個資源。
當用戶啟動工作流時,會啟動一個實例;這是在您Sync變更時建立的對應執行階段模型。
首次建立新的工作流模型時,它包含:
步驟:流開始和流結束。
這些代表工作流程的開始和結束。 這些步驟是必要步驟,無法編輯或移除。
Participant步驟範例,名為Step 1。
此步驟配置為將工作項目分配給工作流啟動器。 編輯或刪除此步驟,並視需要新增步驟。
要使用編輯器建立新工作流,請執行以下操作:
開啟工作流模型控制台;通過工具、工作流、型號或例如:
選擇建立,然後選擇建立模型。
此時將顯示添加工作流模型對話框。 在選擇Done之前,輸入Title和Name(可選)。
新型號列在Workflow Models控制台中。
選擇新的工作流,然後使用Edit開啟它以進行配置:
如果以寫程式方式建立模型(使用crx包),則還可以在以下位置建立子資料夾:
/var/workflow/models
例如, /var/workflow/models/prototypes
然後,此資料夾可用於管理對該資料夾中模型的訪問。
您可以編輯任何現有的工作流模型,以:
配置工作流屬性,包括stages、是否是transient和/或使用多個資源
編輯預設或舊版(現成可用)工作流程有額外的步驟,以確保在您進行變更之前先取得安全副本。
完成對工作流的更新後,必須使用Sync到生成運行時模型。 如需詳細資訊,請參閱同步您的工作流程。
Sync (位於編輯器工具列中)會產生執行 時期模型。執行時期模型是使用者啟動工作流程時實際使用的模型。 如果您未Sync您所做的變更,則這些變更將無法在執行時期使用。
當您(或任何其他使用者)對工作流程進行任何變更時,您必須使用Sync來產生執行階段模型——即使個別對話方塊(例如,步驟)有其自己的儲存選項。
當變更與執行階段(儲存)模型同步時,會改為顯示Synched。
有些步驟包含必填欄位和/或內建驗證。 當這些條件不滿足時,當您嘗試Sync模型時,將顯示錯誤。 例如,當Participant步驟未定義參與者時:
當您開啟Default和/或Legacy model進行編輯時:
步驟瀏覽器不可用(左側)。
工具列(右側)有Edit動作。
最初,模型及其屬性以只讀模式顯示為:
/libs
/etc
選擇Edit將:
/conf
如需詳細資訊,請參閱工作流程模型位置。
您需要將步驟新增至模型以表示要執行的活動——每個步驟都會執行特定活動。 標準AEM例項中提供一系列步驟元件。
編輯模型時,可用步驟會顯示在步驟瀏覽器的各組中。 例如:
如需隨AEM安裝的主要步驟元件的詳細資訊,請參閱工作流程步驟參考。
要向模型添加步驟:
開啟現有的工作流程模型以進行編輯。 從工作流模型控制台中,選擇所需的模型,然後選擇編輯。
開啟步驟瀏覽器;使用頂端工具列最左側的「切換側面板」。 您可以:
將適當的步驟拖動到模型中的所需位置。
例如,參與者步驟。
將步驟添加到流後,您可以配置步驟。
視需要新增多個步驟或其他更新。
在運行時,會按照步驟在模型中的顯示順序執行步驟。 添加步驟元件後,可將它們拖動到模型中的不同位置。
您也可以複製、剪下、貼上、群組或刪除現有步驟;與頁面編輯器一樣。
使用工具欄選項也可折疊/展開拆分步驟:
使用Sync(編輯器工具列)確認變更,以產生執行階段模型。
如需詳細資訊,請參閱同步您的工作流程。
您可以使用「步驟屬性」對話方塊,來設定並自訂工作流程步驟的行為。
要開啟步驟的步驟屬性對話框,請執行以下操作:
如需隨AEM安裝的主要步驟元件的詳細資訊,請參閱工作流程步驟參考。
根據需要配置步驟屬性;可用的屬性取決於步驟類型,可能還有幾個頁籤可用。 例如,新工作流中預設的參與者步驟顯示為Step 1
:
以勾號確認更新。
使用Sync(編輯器工具列)確認變更,以產生執行階段模型。
如需詳細資訊,請參閱同步您的工作流程。
在建立新模型或通過編輯現有模型時,可以建立Transient工作流模型:
開啟編輯的工作流程模型。
從工具欄中選擇Workflow Model Properties。
在對話框中,激活瞬態工作流(或在需要時停用):
使用Save & Close確認變更;後跟Sync(編輯器工具列),以產生執行時期模型。
如需詳細資訊,請參閱同步您的工作流程。
如果Classic UI中存在工作流程模型,但Touch UI的Timeline邊欄中的選擇彈出式選單中遺失,則請依照設定進行,以便使用。 以下步驟說明如何使用名為啟動要求的工作流程模型。
確認該型號未在啟用觸控的UI中使用。 使用/assets.html/content/dam
路徑存取資產。 選取資產。 在左側導軌中開啟時間軸。 按一下「啟動工作流程」並確認彈出式清單中未顯示[!UICONTROL 啟動要求]模型。
瀏覽工具>一般>標籤。 選擇Workflow。
選擇「建立」>「建立標籤」。 將Title設為DAM
,將Name設為dam
。 選擇提交。
導覽至「工具>工作流程>模型」。 選擇請求激活,然後選擇編輯。
選擇編輯,然後開啟工作流模型屬性。 轉至Basic頁籤。
將Workflow : DAM
新增至Tags欄位。 使用勾選(勾選)確認選取範圍。
確認添加標籤時使用保存並關閉。
使用Sync完成該過程。 現在可在觸控式UI中使用工作流程。
建立新模型或編輯現有模型時,可以為多資源支援配置工作流模型:
開啟編輯的工作流程模型。
從工具欄中選擇Workflow Model Properties。
在對話框中,激活多資源支援(如果需要,則禁用):
使用Save & Close確認變更;後跟Sync(編輯器工具列),以產生執行時期模型。
如需詳細資訊,請參閱同步您的工作流程。
工作 流程階段可協助在處理工作時視覺化工作流程的進度。
如果在頁面屬性中定義了工作流階段,但未用於任何工作流步驟,則進度欄將不顯示任何進度(無論當前工作流步驟如何)。
可用階段在工作流模型中定義;可更新現有的工作流程模型,以包含階段定義。 可以為工作流模型定義任意數量的階段。
要為工作流定義階段:
開啟您的工作流程模型以進行編輯。
從工具欄中選擇Workflow Model Properties。 然後開啟階段頁籤。
添加(並定位)所需的階段。 可以為工作流模型定義任意數量的階段。
例如:
按一下保存並關閉以保存屬性。
為工作流模型中的每個步驟指定一個階段。 例如:
一個階段可指派給多個步驟。 例如:
步驟 | 分段 |
---|---|
步驟 1 | 建立 |
步驟 2 | 建立 |
步驟 3 | 評論 |
步驟 4 | 批准 |
步驟 5 | 批准 |
步驟 6 | 完成 |
使用Sync(編輯器工具列)確認變更,以產生執行階段模型。
如需詳細資訊,請參閱同步您的工作流程。
使用Package Manager建立新包:
按一下新包工具欄上的編輯。
開啟Filters標籤。
選擇添加過濾器並指定工作流模型design的路徑:
/conf/global/settings/workflow/models/<*your-model-name*>
按一下Done。
選擇添加篩選器並指定runtime工作流模型的路徑:
/var/workflow/models/<*your-model-name*>
按一下Done。
為模型使用的任何自訂指令碼新增其他篩選器。
按一下Save以確認您的篩選定義。
從軟體包定義的工具欄中選擇Build。
從軟體包工具欄中選擇Download。
您可以設定表單,以便由選取的工作流程處理。 當使用者送出表單時,會建立新的工作流程例項,並將表單提交的資料當做其負載。
要配置要與表單一起使用的工作流,請執行以下操作:
建立新頁面並開啟以供編輯。
將Form元件新增至頁面。
配置在頁面中顯示的表單開始元件。
使用啟動工作流從可用工作流中選擇所需的工作流:
使用勾號確認新表格設定。
在測試工作流使用多種負載類型時,這是一個很好的做法;包括與已開發的不同類型。 例如,如果您想要處理「資產」的工作流程,請將「頁面」設為裝載來測試,並確定不會擲回錯誤。
例如,請依下列方式測試您的新工作流程:
從主控台啟 動您的工作流程模型。
定義Payload並確認。
視需要採取動作,以便工作流程繼續進行。
在工作流程執行時監控記錄檔。
您也可以設定AEM,在記錄檔中顯示DEBUG訊息。 如需詳細資訊,請參閱記錄,當開發完成時,將記錄層級設回資訊。
為了說明建立工作流的一些可能性,以下示例建立了Publish Example
工作流的變化。
新工作流程將包含:
Step 1
刪除Step 1
(因為此示例的步驟類型錯誤):
從步驟瀏覽器的Workflow選擇中,將參與者步驟拖曳到工作流上,並將它定位在Flow Start和Flow End之間。
要開啟屬性對話框,請執行以下操作:
在Common標籤中,輸入Validate Content
Title和Description。
開啟用戶/組頁籤:
Administrator
(admin
)作為用戶/組欄位。對於要發送的電子郵件,需要配置郵件服務和用戶帳戶詳細資訊。
用勾號確認更新。
您將返回至工作流模型的概述,此處參與者步驟將重新命名為Validate Content
。
將Or Split拖曳至工作流程,並將它置於Validate Content
和Flow End之間。
開啟Or Split進行配置。
設定:
確認您對OR Split的更新。
將參與者步驟拖曳至左側分支,開啟屬性,指定下列值,然後確認變更:
Reject Publish Request
projects-administrators
將處理步驟拖曳至右側的分支,開啟屬性,指定下列值,然後確認變更:
Publish Page as Requested
Activate Page
Select(選擇)」。此程式會將選取的頁面發佈至發佈者例項。按一下Sync(編輯器工具欄)以生成運行時模型。
如需詳細資訊,請參閱同步您的工作流程。
您的新工作流程模型如下:
將此工作流程套用至您的頁面,如此當使用者移至完成「驗證內容」步驟時,他們可以選取要「依請求發佈頁面」或「拒絕發佈請求」。
OR拆分 步驟可讓您在工作流程中引入條件式處理路徑。
要定義OR規則,請執行以下操作:
建立兩個指令碼並將其保存到儲存庫中,例如:
/apps/myapp/workflow/scripts
指令碼必須具有函式check()
,該函式返回布爾值。
編輯工作流並將OR Split添加到模型中。
編輯OR Split的Branch 1屬性:
通過將Value設定為true
,將此定義為預設路由。
以Rule的形式,設定指令碼的路徑。 例如:
/apps/myapp/workflow/scripts/myscript1.ecma
您可以視需要切換分支順序。
編輯OR Split的Branch 2的屬性。
以Rule的形式,將路徑設定為其他指令碼。 例如:
/apps/myapp/workflow/scripts/myscript2.ecma
設定每個分支中各步驟的屬性。 請確定已設定User/Group。
按一下Sync(編輯器工具列),將變更保留至執行階段模型。
如需詳細資訊,請參閱同步您的工作流程。
請參閱使用ECMAScript。
如果節點位於/content/we-retail/us/en
下方的JCR_PATH
,則以下示例指令碼返回true
:
function check() {
if (workflowData.getPayloadType() == "JCR_PATH") {
var path = workflowData.getPayload().toString();
var node = jcrSession.getItem(path);
if (node.getPath().indexOf("/content/we-retail/us/en") >= 0) {
return true;
} else {
return false;
}
} else {
return false;
}
}
您可以自訂任何現成可用的工作流程。 若要進行自訂行為,請覆蓋適當工作流程的詳細資訊。
例如,啟動要求。 此工作流程用於發佈Sites內的頁面,當內容作者沒有適當的複製權限時會自動觸發。 如需詳細資訊,請參閱自訂頁面編寫——自訂啟動工作流程的要求。