若要使用傳統UI,請參閱AEM 6.3檔案以取得參考。
您可以建立工作流模型以定義使用者啟動工作流時執行的一系列步驟。 您也可以定義模型屬性,例如工作流是暫時性的,還是使用多個資源。
使用者啟動工作流程時,會啟動例項;這是在您同步變更時建立的對應執行階段模型。
首次建立新的工作流模型時,它包含:
步驟: 流開始和流結束。
這些代表工作流程的開始和結束。 這些步驟為必要步驟,無法編輯或移除。
名為步驟1的參與者步驟範例。
此步驟配置為將工作項分配給工作流啟動器。 編輯或刪除此步驟,並視需要新增步驟。
若要使用編輯器建立新工作流程:
開啟工作流模型控制台;透過工具、工作流程、模型或,例如:
選擇建立,然後選擇建立模型。
將出現「添加工作流模型」對話框。 在選擇Done之前,輸入Title和Name(可選)。
新模型會列在工作流模型控制台中。
選擇新工作流,然後使用Edit 開啟它以進行配置:
如果以寫程式方式建立模型(使用crx套件),您也可以在以下項目中建立子資料夾:
/var/workflow/models
例如, /var/workflow/models/prototypes
然後,此資料夾可用於管理對該資料夾中模型的訪問。
您可以編輯任何現有的工作流模型以:
編輯預設或舊版(現成可用)工作流有另一個步驟,以確保在您進行變更前先執行安全副本。
完成對工作流的更新後,必須使用Sync來生成運行時模型。 如需詳細資訊,請參閱同步您的工作流程。
同步 (在編輯器工具列中右側)會產生執 行階段模型。執行階段模型是使用者啟動工作流程時實際使用的模型。 如果您未同步您的更改,則這些更改將在運行時不可用。
當您(或任何其他用戶)對工作流進行任何更改時,必須使用Sync來生成運行時模型,即使單個對話框(例如,步驟)有各自的保存選項時也是如此。
當更改與運行時(已保存)模型同步時,將顯示Synched。
有些步驟包含必要欄位和/或內建驗證。 當這些條件不滿足時,當您嘗試同步模型時,將顯示錯誤。 例如,當未為參與者步驟定義參與者時:
開啟預設和/或舊模型進行編輯時:
步驟瀏覽器不可用(左側)。
工具列(右側)中提供Edit動作。
最初,模型及其屬性以只讀模式顯示為:
/libs
中/etc
選擇Edit將:
/conf
如需詳細資訊,請參閱工作流模型的位置。
您需要將步驟新增至模型以代表要執行的活動 — 每個步驟都會執行特定活動。 標準AEM例項中提供一系列步驟元件。
編輯模型時,可用步驟將顯示在Steps瀏覽器的各組中。 例如:
有關隨AEM安裝的主要步驟元件的資訊,請參閱工作流步驟參考。
要向模型添加步驟:
開啟現有的工作流模型進行編輯。 從工作流模型控制台中,選擇所需的模型,然後選擇編輯。
開啟Steps瀏覽器;使用切換頂端工具列最左側的側面板。 您可以在此:
將適當的步驟拖曳至模型中的所需位置。
例如,參與者步驟。
將其新增至流程後,您可以設定步驟。
視需要新增多個步驟或其他更新。
在運行時,按步驟在模型中的顯示順序執行步驟。 添加步驟元件後,可將它們拖動到模型中的不同位置。
您也可以複製、剪下、貼上、分組或刪除現有步驟;與頁面編輯器相同。
也可以使用工具欄選項收合/展開分割步驟:
使用Sync(編輯器工具欄)確認更改以生成運行時模型。
如需詳細資訊,請參閱同步您的工作流程。
您可以使用步驟屬性對話方塊,來設定及自訂工作流程步驟的行為。
要開啟步驟的步驟屬性對話框,請執行以下操作之一:
有關隨AEM安裝的主要步驟元件的資訊,請參閱工作流步驟參考。
視需要設定步驟屬性;可用的屬性視步驟類型而定,可能還有幾個可用的標籤。 例如,預設參與者步驟在新工作流中顯示為Step 1
:
使用勾號確認更新。
使用Sync(編輯器工具欄)確認更改以生成運行時模型。
如需詳細資訊,請參閱同步您的工作流程。
建立新模型或編輯現有模型時,可以建立暫時工作流模型:
開啟editing的工作流模型。
從工具欄中選擇工作流模型屬性。
在對話方塊中,啟用暫時工作流程(或視需要停用):
使用儲存並關閉確認變更;後跟同步(編輯器工具列),以產生執行階段模型。
如需詳細資訊,請參閱同步您的工作流程。
如果傳統UI中存在工作流模型,但觸控式UI的時間軸邊欄中的選取快顯功能表中遺失,請依照設定操作以使其可用。 下列步驟說明如何使用名為Request for Activation的工作流模型。
確認模型無法在觸控式UI中使用。 使用/assets.html/content/dam
路徑存取資產。 選取資產。 在左側邊欄中開啟時間軸。 按一下「啟動工作流」並確認彈出式清單中未顯示啟動請求模型。
瀏覽工具>一般>標籤。 選擇Workflow。
選擇建立>建立標籤。 將Title設定為DAM
,將Name設定為dam
。 選擇Submit。
導覽至「工具>工作流程>模型」。 選擇Request for Activation,然後選擇Edit。
選擇Edit ,然後開啟工作流模型屬性。 前往Basic標籤。
將Workflow : DAM
新增至標籤欄位。 使用勾選(勾選)確認選取項目。
確認新增標籤(包含儲存並關閉)。
使用Sync完成該過程。 現在,觸控式UI中提供工作流程。
建立新模型時,或編輯現有模型時,可以為多資源支援配置工作流模型:
開啟editing的工作流模型。
從工具欄中選擇工作流模型屬性。
在對話框中,激活多資源支援(如果需要,可停用):
使用儲存並關閉確認變更;後跟同步(編輯器工具列),以產生執行階段模型。
如需詳細資訊,請參閱同步您的工作流程。
工作 流程階段可協助視覺化處理任務時工作流程的進度。
如果已在頁面屬性中定義工作流階段,但未用於任何工作流步驟,則進度欄將不顯示任何進度(無論當前工作流步驟如何)。
可用的階段在工作流模型中定義;可以更新現有的工作流模型以包含階段定義。 您可以為工作流模型定義任意數量的階段。
要為工作流定義階段,請執行以下操作:
開啟工作流程模型以進行編輯。
從工具欄中選擇工作流模型屬性。 然後開啟階段標籤。
添加(並定位)所需的階段。 您可以為工作流模型定義任意數量的階段。
例如:
按一下「儲存並關閉」以儲存屬性。
為工作流模型中的每個步驟分配一個階段。 例如:
可以將一個階段分配給多個步驟。 例如:
步驟 | 分段 |
---|---|
步驟 1 | 建立 |
步驟 2 | 建立 |
步驟 3 | 評論 |
步驟 4 | 批准 |
步驟 5 | 批准 |
步驟 6 | 完成 |
使用Sync(編輯器工具欄)確認更改以生成運行時模型。
如需詳細資訊,請參閱同步您的工作流程。
使用包管理器建立新包:
按一下新包工具欄上的編輯。
開啟Filters頁簽。
選擇添加篩選器並指定工作流模型design的路徑:
/conf/global/settings/workflow/models/<*your-model-name*>
按一下Done。
選擇添加篩選器並指定runtime工作流模型的路徑:
/var/workflow/models/<*your-model-name*>
按一下Done。
為模型使用的任何自訂指令碼新增其他篩選器。
按一下儲存以確認您的篩選器定義。
從包定義的工具欄中選擇Build。
從包工具欄選擇下載。
您可以設定要由所選工作流程處理的表單。 當使用者提交表單時,會建立新的工作流程例項,並將表單提交的資料作為有效負載。
設定要與表單搭配使用的工作流程:
建立新頁面並開啟它以進行編輯。
將Form元件新增至頁面。
設定頁面中顯示的表單開始元件。
使用開始工作流從可用的工作流中選擇所需的工作流:
使用勾號確認新的表單設定。
在測試工作流程以使用各種裝載類型時,這是個好作法;包括與已開發的類型不同的類型。 例如,如果您想要處理資產,請將頁面設定為裝載以測試工作流程,並確定不會擲回錯誤。
例如,依照下列方式測試您的新工作流程:
從主控台啟 動工作流程模型。
定義裝載並確認。
視需要採取動作,以便工作流程繼續進行。
在工作流程執行時監控記錄檔。
您也可以設定AEM在記錄檔中顯示DEBUG訊息。 如需詳細資訊,並在開發完成時,將記錄層級設回資訊。🔗
為了說明建立工作流的一些可能性,以下示例建立了Publish Example
工作流的變化。
新工作流程將包含:
Step 1
刪除Step 1
(因為此示例的步驟類型錯誤):
從步驟瀏覽器的工作流選擇中,將參與者步驟拖動到工作流,並將其置於流開始和流結束之間。
要開啟屬性對話框,請執行以下操作:
在Common標籤中,為Title和Description輸入Validate Content
。
開啟User/Group頁簽:
Administrator
(admin
)。對於要發送的電子郵件,需要配置郵件服務和用戶帳戶詳細資訊。
使用勾號確認更新。
您將返回至工作流模型的概述,此處參與者步驟將更名為Validate Content
。
將Or Split拖曳至工作流程,並將其置於Validate Content
和Flow End之間。
開啟或Split進行配置。
設定:
確認對OR Split的更新。
將參與者步驟拖曳至左側分支,開啟屬性,指定下列值,然後確認變更:
Reject Publish Request
projects-administrators
將處理步驟拖曳至右側分支,開啟屬性,指定下列值,然後確認變更:
Publish Page as Requested
Activate Page
」 。此程式會將選取的頁面發佈至發佈者例項。按一下Sync(編輯器工具欄)以生成運行時模型。
如需詳細資訊,請參閱同步您的工作流程。
您的新工作流程模型將如下所示:
將此工作流程套用至您的頁面,以便當使用者移至完成 驗證內容步驟時,他們可以選取是要依請求發佈頁面,還是拒絕發佈請求。
或分 割步驟可讓您將條件式處理路徑引入工作流程中。
若要定義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
設定每個分支中各個步驟的屬性。 請確定已設定使用者/群組。
按一下Sync(編輯器工具欄),將更改保留到運行時模型。
如需詳細資訊,請參閱同步您的工作流程。
請參閱使用ECMAScript。
如果節點位於/content/we-retail/us/en
下,則以下示例指令碼返回true
:JCR_PATH
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;
}
}
您可以自訂任何現成可用的工作流程。 若要具有自訂行為,請覆蓋適當工作流程的詳細資訊。
例如, Request for Activation。 此工作流程用於發佈Sites內的頁面,並會在內容作者沒有適當的復寫權限時自動觸發。 如需詳細資訊,請參閱自訂頁面編寫 — 自訂啟動工作流程的請求 。