Service Manager ワークフロー アクティビティを追加または削除する
ワークフロー活動は、ワークフローの構成要素です。 このセクションの手順を使用して、ワークフローにアクティビティを追加できます。アクティビティの削除、コピー、貼り付け。Windows PowerShell スクリプトをワークフローにインポートするための特殊なアクティビティを構成します。
ワークフローにアクティビティを追加する
Service Manager Authoring Tool の Activities ツールボックス ペインからワークフローにアクティビティを追加するには、次の手順に従います。
Woodgrove Bank のカスタマイズ シナリオでは、Ken はこの手順を使用して、Windows Workflow Foundation (WF) アクティビティを追加 AD DS Computer をグループに追加し アクティビティの状態を完了に設定 をワークフローに追加します。
ワークフローにアクティビティを追加するには、次の手順に従います。
Management Pack エクスプローラーでWorkflowsを展開し、目的のワークフローを右クリックして、[編集選択。 作成ウィンドウにワークフローが開きます。 たとえば、 AddComputerToADGroupWF を右クリックし、 Edit を選択します。
Activities ツールボックスウィンドウで、適切なアクティビティ グループを見つけます。
作成ウィンドウに目的のアクティビティをドラッグし、ワークフローの開始アイコンと終了アイコンの間、または 2 つの既存のアクティビティの間にドロップします。 作成ウィンドウに表示される一連のアクティビティ (上から下) は、アクティビティが実行される順序を表します。 ループまたは if-else 構造体でアクティビティを実行するには、最初に構造アクティビティ ( For Each Loop など) を作成ウィンドウにドラッグし、そのアクティビティを構造体アクティビティにドロップします。
たとえば、Active Directory アクティビティグループから ad DS コンピューターをグループに追加を作成ウィンドウにドラッグし、ワークフローの [開始] アイコンと [終了] アイコンの間にドロップします。 次に、 [アクティビティの状態の設定] を [完了] にドラッグし 前のアクティビティと終了アイコンの間にドロップします。
アクティビティのプロパティは、作成ウィンドウに追加した直後に設定することも、後で設定することもできます。
Note
現時点でプロパティを設定しない場合、アクティビティは赤い感嘆符アイコンでマークされている可能性があります。 このアイコンは、アクティビティを実行する前に、アクティビティの 1 つ以上のプロパティを設定する必要があることを示します。 これらの必須プロパティの一覧を表示するには、アイコンを選択します。
ワークフロー内でアクティビティをコピーして貼り付ける
ワークフローで同じ種類の複数のアクティビティ (複数の AD DS コンピューターをグループに追加するアクティビティなど) を使用している場合は、Service Manager オーサリング ツールでコピーと貼り付けの機能を使用して、アクティビティをすばやく複製できます。 アクティビティのプロパティの値をアクティビティと複製するには、プロパティの値を設定し、アクティビティをコピーして貼り付けます。
アクティビティをコピーして貼り付ける
Management Pack エクスプローラーでWorkflowsを展開し、目的のワークフローを右クリックして、[編集選択。 作成ウィンドウにワークフローが開きます。
作成ウィンドウで、アクティビティを右クリックし、 Copy を選択します。
次のいずれかの操作を行います。
ワークフローの最後にアクティビティを貼り付けるには、作成ウィンドウを右クリックし、 Paste を選択します。
既存のアクティビティの直後にアクティビティを貼り付けるには、既存のアクティビティを右クリックし、 Paste を選択します。
ワークフローにスクリプトを追加する
アクティビティ ライブラリには、Windows PowerShell スクリプト、VBScript スクリプト、またはコマンド ライン スクリプトをワークフローに組み込む特殊なアクティビティが含まれています。 スクリプト アクティビティを使用して、スクリプトの内容をインポートし、スクリプトの実行に必要なパラメーターを定義します。 Service Manager 作成ツールは、スクリプトを管理し、スクリプトの内容とパラメーターを格納するためのタスクを管理パックに作成します。
Service Manager はスクリプト パラメーターを検証しません。そのため、スクリプト ロジックが検証を処理することを確認する必要があります。 また、拡張プロパティを使用してインシデントを作成し、拡張プロパティの値を指定しない場合、パラメーターの値は解析されず、$Data/Property として渡されます。
スクリプト活動はワークフローとは別のプロセスで実行されますが、Service Manager ワークフロー アカウントのセキュリティ コンテキストでも実行されます。
ワークフローにスクリプトを追加するには、次の手順に従います。
ワークフローにスクリプトを追加するには、次の手順に従います。
Management Pack エクスプローラーでWorkflowsを展開し、目的のワークフローを右クリックし、Edit を選択します。 作成ウィンドウにワークフローが開きます。
Activities ツールボックス ペインで、アクティビティ グループ Script アクティビティとそのサブグループ Generic Script Activitiesを見つけます。 使用するスクリプト アクティビティを、ワークフローの開始アイコンとワークフロー終了アイコンの間、または 2 つの既存のアクティビティの間の位置にドラッグします。
スクリプト アクティビティのプロパティを設定します。
Details ペインで、Activity Inputs カテゴリのいずれかのプロパティを選択し、プロパティの横に表示される省略記号ボタン (...) を選択します。
スクリプト アクティビティの構成 ダイアログで、[スクリプトインポートを選択します。 Import ダイアログで、使用するスクリプト ファイルを選択し、開くを選択します。
注意事項
スクリプト アクティビティのスクリプトをインポートした後、 Import Script を再度選択した場合、インポートした新しいスクリプトは、前のスクリプトに完全に置き換えられます。
Script のプロパティを選択します。 スクリプトのパラメーターを作成するには、 New を選択し、 Name 列に名前を入力します。
Note
VBScript スクリプトとコマンド スクリプト アクティビティの場合、 Name 列はありません。
パラメーターの値を設定するには、 Value 列に定数値を入力します。 パラメーターに該当する場合は、コマンド スクリプトに一般的なスイッチ文字 ("/t" など) を入力します。
パラメーターを別のプロパティにバインドして、そのプロパティから値を取得するには、対応する省略記号ボタン (...) を選択します。 Bind 'Parameter' to Activity Property ダイアログで、使用するプロパティを選択します。
実行するために Windows PowerShell スナップインを必要とするスクリプトを使用している場合は、 Windows PowerShell スナップイン ボックスに、スナップインの名前をセミコロンで区切って入力します。
OKを選択してスクリプト アクティビティの構成 ダイアログを閉じます。
ワークフローに制御フロー アクティビティを追加する
制御フロー アクティビティを使用して、ワークフローの構造 (分岐、ループ、タイマー遅延) を提供します。 Service Manager オーサリング ツールには、次の 4 つの組み込みの制御フロー アクティビティが用意されています。
遅延アクティビティ - ワークフロー内のアクティビティ間の遅延が発生します。
For Each Loop Activity - オブジェクトの配列 (collection) を入力として受け取り、コレクション内の For Each Loop オブジェクト内のアクティビティのセットを繰り返します。
IfElse アクティビティ - ブール (True/False) 条件に基づいてワークフロー内のアクティビティのシーケンスを制御します。
並列アクティビティ - アクティビティのシーケンスを 2 つの同時アクティビティ シーケンスにフォークします。
Delay アクティビティを使用するには、Delay アクティビティをワークフローにドラッグし、アクティビティの TimeoutDuration プロパティを使用する遅延間隔に設定します。 IfElse または Parallel アクティビティを使用するには、アクティビティをワークフローにドラッグし、通常のアクティビティを IfElse または Parallel アクティビティにドロップします。
For Each ループアクティビティは、IfElse または Parallel アクティビティの使用に似ていますが、For Each ループのアクティビティに追加のプロパティを設定することもできます。 ワークフローに For Each Loop を追加するには、次の手順に従います。
各ループをワークフローに追加する
Management Pack エクスプローラーでWorkflowsを展開し、目的のワークフローを右クリックして、[編集選択。 作成ウィンドウにワークフローが開きます。
Activities ツールボックス ペインで、アクティビティ グループ Control Flowを見つけます。
For Each Loop アクティビティを、[ワークフローの開始] アイコンと [ワークフロー終了] アイコンの間、または 2 つの既存のアクティビティの間の位置にドラッグします。
実行をループするアクティビティを Loop Container(ForEachChildActivity)に追加します。 各アクティビティを追加するには:
Activities ツールボックス ウィンドウで、使用するアクティビティを含むアクティビティ グループを展開します。
アクティビティを Loop Container アクティビティの一番上の位置にドラッグします。 Loop Container アクティビティに既に他のアクティビティが含まれている場合は、新しいアクティビティを既存のアクティビティの前、後、または間の位置にドラッグします。
このコンテナーに配置するほとんどのワークフロー アクティビティには、 Current Item と Property to Bind の 2 つのプロパティがあります。 ループ コンテナー内の各アクティビティに対して、次のようにこれらのプロパティを設定します。
Note
プロパティの設定は必須ではなく、Loop Container の Input Collection からオブジェクトを取得する場合にのみ役立ちます。
Current Item ForEach アクティビティの Loop Container アクティビティの Current Item プロパティに設定します。
Note
このアクティビティが For Each Loop の最初のアクティビティである場合、 現在の項目 が自動的に設定されます。
Property の値を Bind プロパティの値に、現在のアイテム値を使用する現在のアクティビティのプロパティの値設定します。
ワークフローからアクティビティを削除する
Service Manager オーサリング ツールでワークフローからアクティビティを削除するには、次の手順に従います。 この操作では、アクティビティ ライブラリまたは Activities ツールボックス ペインからアクティビティが削除されることはありません。
ワークフローからアクティビティを削除するには、次の操作を行います。
- 作成ウィンドウで、アクティビティを右クリックし、 Delete を選択します。