Workfront Fusion を使用して、Workfront イシューを Adobe Experience Manager のワークフローを含むプロジェクトに変換
Workfront Fusionを使用してプロジェクトを作成し、プロジェクトにAdobe Experience Manager ワークフローを含める場合は、この記事で説明する特定のFusion モジュール設定を使用する必要があります。
アクセス要件
| table 0-row-2 1-row-2 2-row-2 3-row-2 html-authored no-header | |
|---|---|
| Adobe Workfront パッケージ |
任意の Adobe Workfront Workflow パッケージと任意の Adobe Workfront Automation および Integration パッケージ Workfront Ultimate Workfront Fusion を追加購入した Workfront Prime および Select パッケージ。 |
| Adobe Workfront ライセンス |
コントリビューター以上 リクエスト以上 |
| 製品 |
Adobe Experience Manager:
Workfront Fusion:
|
| アクセスレベル設定 | ドキュメントへのアクセスを編集 |
前提条件
開始する前に、
-
Workfront 管理者は、Adobe Experience Manager 統合でワークフローを設定する必要があります。 詳しくは、Experience Manager Assets as a Cloud Service 統合の設定を参照してください。
-
Adobe Experience Manager統合リンクされたフォルダーワークフローで設定されたプロジェクトテンプレートが必要です。
-
このモジュールの接続を設定するには、WorkfrontでOAuth アプリケーションを作成している必要があります。
手順については、この記事の「OAuth アプリケーションの作成」を参照してください。
モジュール設定
Workfront Fusionで、Adobe Experience Manager ワークフローを含むプロジェクトを作成する場合は、Workfront/その他のアクションモジュールを使用する必要があります。
-
シナリオにWorkfront > Misc Action モジュールを追加します。
-
「Connection」フィールドで、このモジュールが使用するアカウントに接続するWorkfront接続を選択します。
接続の作成手順については、Workfront モジュールの「Connect Workfront to Workfront Fusion」を参照してください。
接続を作成する必要があるクライアント IDとクライアントシークレットの作成手順については、この記事の「OAuth アプリケーションの作成」を参照してください。
-
レコードタイプ フィールドで、
Issueを選択します。 -
アクション フィールドで、
convertToProjectを選択します。 -
「ID」フィールドに、プロジェクトに変換するイシューのIDを入力するか、マッピングします。
-
詳細設定を表示を有効にします。
-
モジュールの一番下までスクロールして、プロジェクト(詳細コレクション) フィールドを見つけます。
-
次のテキストをプロジェクト(詳細コレクション) フィールドに貼り付けます。
code language-none { "aemNativeFolderTreeIDs": ["Folder Tree ID here"], "aemNativeFolderWorkflowEnabled": "true", "name": "New project name here", "templateID": "Template ID here" } -
Folder tree ID hereをフォルダーIDに置き換えます。フォルダーツリーIDを見つけるには、この記事の「 フォルダーツリーIDを見つける」を参照してください。
複数のフォルダーツリーを使用するには、IDをコンマで区切ります。
"aemNativeFolderTreeIDs": ["Folder tree ID here","Second folder tree ID here"], -
New project name hereを、新しいプロジェクトの名前に置き換えます。 -
Template ID hereを、新しいプロジェクトに使用するテンプレートのIDに置き換えます。以前のモジュール(Workfront/検索モジュールなど)からテンプレート IDをマッピングしたり、WorkfrontのテンプレートのページのURLにテンプレート IDを配置したりできます。
-
モジュール設定を保存するには、OKをクリックします。
フォルダーツリーIDの検索
フォルダーツリーのIDを見つけるには:
-
Workfrontで、このプロジェクトに使用するテンプレートを開きます。 このテンプレートには、プロジェクトに使用するAdobe Experience Manager設定が含まれている必要があります。
-
お使いのブラウザーの開発者用ツールを開きます。
-
開発者ツールで「ネットワーク」タブを開きます。
-
「フィルター」ボックスに「
object-workflow」と入力します。 -
「名前」列で、表示される英数字IDをクリックします。
を検索しています
-
英数字IDの右側にある「プレビュー」タブをクリックします。
-
次の折りたたまれたセクションを開きます。
dataobjectWorkflowworkflowsenhancedLinkedFolderCreationWorkflowenhancedLinkedFolderCreationWorkflowConfigurations
各フォルダーツリーは数字で表されます。 0 (ゼロ)はリストの最初のフォルダーを表し、1は2番目のフォルダーを表します。 テンプレートにフォルダーツリーが1つだけ含まれている場合は、番号0になります。
-
新しいプロジェクトに使用するフォルダーツリーを開きます。
_idフィールド値をメモします。 複数のフォルダーツリーを使用する場合は、使用するフォルダーツリーのすべての_idフィールド値をメモします。 を検索しています
これらは、Workfront > その他のアクション Fusion モジュールのプロジェクト(詳細コレクション) フィールドに入力する
aemNativeFolderTreeIDs値です。
OAuth アプリケーションの作成
このモジュールの接続用にWorkfrontでOAuth アプリケーションを設定する必要があります。 これは、Fusionの特定のWorkfront接続に対して1回だけ実行する必要があります。
-
Workfrontで、OAuth アプリケーションの作成を開始します。「Workfront統合のOAuth2 アプリケーションの作成」の記事の「 ユーザー資格情報(認証コードフロー) を使用してOAuth2 アプリケーションを作成する」で説明されています。
-
クライアント IDとクライアントシークレットを安全な場所にコピーします。
-
「リダイレクト URI」フィールドに、次のように入力します。
code language-none http://app.workfrontfusion.com/oauth/cb/workfront-workfront -
「保存」をクリックします。
Fusionでモジュールの接続を設定する際には、このクライアント IDとクライアント秘密鍵を使用します。
接続の作成手順については、Workfront モジュールの「Connect Workfront to Workfront Fusion」を参照してください。
トラブルシューティング
問題: カスタムフォームが予期せずFusionで作成されたプロジェクトに添付される
回避策:
categoryIDを高度なプロジェクト JSONからproject_new.categoryIDに移動します(Fusion UIの構造化フィールドを使用)。
具体的には、マッパーを次のように変更します。
// project_new — set just this one field via the structured UI
{
"categoryID": "5d3a292300b69eb5d80c37e8ce6269d3"
}
// project (advanced JSON) — remove categoryID from here
{
"aemNativeFolderTreeIDs": ["693c40280e09eb1bd4085a5e"],
"aemNativeFolderWorkflowEnabled": "true",
"name": "{{1.name}}",
"templateID": "{{if(...)}}",
"ownerID": "{{1.ownerID}}",
"sponsorID": "{{1.ownerID}}",
"priority": "2",
"programID": "{{ifempty(7.ID; null)}}",
"description": "test",
"portfolioID": "{{ifempty(8.ID; null)}}",
"scheduleMode": "S",
"completionType": "AUT"
}
なぜこれが機能するのか:
isCtgyIDsGivenはproject_new.categoryID = "5d3a292300b69eb5d80c37e8ce6269d3"を見てtemp.isCtgyIDsGiven = true→真実→返します- ステップ (
getAttachedAndAttachableCategoryIDs)はスキップされます。条件は!temp.isCtgyIDsGivenです - 代わりに、この手順が実行されます:
ctgyIds = split(parameters.project_new.categoryID, ',')→ [“5d3a292300b69eb5d80c37e8ce6269d3”] prepareMiscActionDataは、AEM固有のすべてのフィールドに高度なプロジェクト JSONを引き続き使用し(project_newよりも優先)、その後objectCategories: [{ categoryID: "5d3a292300b69eb5d80c37e8ce6269d3" }]をオーバーレイします。意図したフォームのみがオーバーレイされ、予期しないフォームは表示されません- ソース OPTASKから新しいプロジェクトにカスタム フィールド値をコピーする手順は、
isCopyCustomData: trueで期待どおりに実行されます
AEM フィールド (aemNativeFolderTreeIDs, aemNativeFolderWorkflowEnabled)は、影響を受けません。 このプロセスは、categoryIDが見つかった場所でのみ変更されます。