ワークフロー アクティビティService Manager追加または削除する

重要

このバージョンのService Managerはサポート終了に達しました。 Service Manager 2022 にアップグレードすることをお勧めします。

ワークフロー活動は、ワークフローの構成要素です。 このセクションの手順を使用して、ワークフローにアクティビティを追加できます。アクティビティの削除、コピー、貼り付け。Windows PowerShellスクリプトをワークフローにインポートするための特殊なアクティビティを構成します。

ワークフローにアクティビティを追加する

Service Manager作成ツールの [アクティビティ ツールボックス] ウィンドウからワークフローにアクティビティを追加するには、次の手順に従います。

Woodgrove Bank のカスタマイズ シナリオでは、Ken はこの手順を使用して、Windows Workflow Foundation (WF) アクティビティ [ Add AD DS Computer to Group]\(AD DS コンピューターをグループに追加する \) と [アクティビティの状態] を [Completed]\(完了\) に設定 するアクティビティをワークフローに追加します。

活動をワークフローに追加するには

  1. 管理パック エクスプローラーで、[ワークフロー] を展開し、目的のワークフローを右クリックして、[編集] を選択します。 作成ウィンドウでワークフローが開きます。 たとえば、[ AddComputerToADGroupWF] を右クリックし、[編集] を選択 します

  2. [ アクティビティ ツールボックス ] ウィンドウで、適切なアクティビティ グループを見つけます。

  3. 目的の活動を作成ウィンドウにドラッグして、ワークフローの [開始] アイコンと [終了] アイコンの間、または 2 つの既存の活動の間にドロップします。 作成ウィンドウに表示されている順番 (上から下の順) が、活動が実行される順番です。 ループまたは if-else 構造体でアクティビティを実行するには、まず構造体アクティビティ ( For Each Loop など) をオーサリング ウィンドウにドラッグし、そのアクティビティを構造体アクティビティにドロップします。

    たとえば、[Active Directory アクティビティ] グループから [グループに AD DS コンピューターを追加] を作成ウィンドウにドラッグし、ワークフローの [開始] アイコンと [終了] アイコンの間にドロップします。 次に、[ アクティビティの状態の設定] を [完了] に ドラッグし、前のアクティビティと [終了] アイコンの間にドロップします。

  4. 活動のプロパティは、活動を作成ウィンドウに追加した直後に設定するか、後で設定することもできます。

    注意

    現時点でプロパティを設定しない場合、アクティビティは赤い感嘆符アイコンでマークされている可能性があります。 このアイコンは、活動を実行する前にプロパティを設定する必要があることを示します。 これらの必須プロパティの一覧を表示するには、アイコンを選択します。

ワークフロー内のアクティビティをコピーして貼り付ける

ワークフローで同じ種類の複数の活動 (複数の [AD DS コンピューターのグループへの追加] 活動など) を使用する場合は、Service Manager Authoring Tool のコピーおよび貼り付け機能を使用して、活動をすばやく複製することができます。 アクティビティのプロパティの値をアクティビティと複製するには、プロパティの値を設定し、アクティビティをコピーして貼り付けます。

活動をコピーして貼り付けるには

  1. 管理パック エクスプローラーで、[ワークフロー] を展開し、目的のワークフローを右クリックして、[編集] を選択します。 作成ウィンドウでワークフローが開きます。

  2. 作成ウィンドウでアクティビティを右クリックし、[コピー] を選択 します

  3. 次のいずれかの操作を行います。

    • ワークフローの最後にアクティビティを貼り付けるには、作成ウィンドウを右クリックし、[ 貼り付け] を選択します。

    • 既存のアクティビティの直後にアクティビティを貼り付けるには、既存のアクティビティを右クリックし、[ 貼り付け] を選択します。

ワークフローにスクリプトを追加する

アクティビティ ライブラリには、Windows PowerShellスクリプト、VBScript スクリプト、またはコマンド ライン スクリプトをワークフローに組み込む特殊なアクティビティが含まれています。 スクリプト活動を使用して、スクリプトのコンテンツをインポートし、スクリプトの実行に必要なパラメーターを定義します。 Service Manager Authoring Tool は、管理パック内にタスクを作成して、スクリプトを管理し、スクリプトのコンテンツとパラメーターを保存します。

Service Managerはスクリプト パラメーターを検証しないため、スクリプト ロジックが検証を処理することを確認する必要があります。 また、拡張プロパティを使用してインシデントを作成し、拡張プロパティの値を指定しない場合、パラメーターの値は解析されないため、$Data/Property として渡されます。

スクリプト活動はワークフローとは別のプロセスで実行されますが、Service Manager ワークフロー アカウントのセキュリティ コンテキストでも実行されます。

スクリプトをワークフローに追加するには、次の手順に従います。

スクリプトをワークフローに追加するには

  1. 管理パック エクスプローラーで、[ワークフロー] を展開し、目的のワークフローを右クリックして、[編集] を選択します。 作成ウィンドウでワークフローが開きます。

  2. [ アクティビティ ツールボックス ] ウィンドウで、アクティビティ グループ [スクリプト アクティビティ ] とそのサブグループ [ 汎用スクリプト アクティビティ] を見つけます。 使用するスクリプト活動をワークフローの [開始] アイコンと [終了] アイコンの間、または 2 つの既存の活動の間にドラッグします。

  3. スクリプト活動のプロパティを設定します。

    1. [ 詳細 ] ウィンドウで、[ アクティビティ入力 ] カテゴリのいずれかのプロパティを選択し、プロパティの横に表示される省略記号ボタン (...) を選択します。

    2. [ スクリプト アクティビティの構成 ] ダイアログで、[ スクリプトのインポート] を選択します。 [ インポート ] ダイアログで、使用するスクリプト ファイルを選択し、[ 開く] を選択します。

      注意事項

      スクリプト アクティビティのスクリプトをインポートした後で、[スクリプトの インポート ] をもう一度選択すると、インポートする新しいスクリプトが前のスクリプトに完全に置き換えられます。

    3. [ スクリプトのプロパティ] を選択します。 スクリプトのパラメーターを作成するには、[ 新規] を選択し、[ 名前] 列に名前を入力します。

      注意

      VBScript スクリプトとコマンド スクリプト アクティビティの場合、 Name 列はありません。

    4. パラメーターの値を設定するには、[ ] 列に定数値を入力します。 パラメーターに該当する場合は、コマンド スクリプトの一般的なスイッチ文字 ('/t' など) を入力します。

    5. パラメーターがそのプロパティから値を取得するようにパラメーターを別のプロパティにバインドするには、対応する省略記号ボタン (...) を選択します。[ アクティビティ プロパティに 'Parameter' をバインド する] ダイアログで、使用するプロパティを選択します。

    6. 実行するためにWindows PowerShellスナップインを必要とするスクリプトを使用している場合は、[スナップインのWindows PowerShell] ボックスに、セミコロンで区切ってスナップインの名前を入力します。

    7. [ OK] を選択 して、[ スクリプト アクティビティの構成 ] ダイアログを閉じます。

ワークフローに制御フロー アクティビティを追加する

制御フロー活動を使用して、ワークフローの構造 (分岐、ループ、タイマー遅延) を指定します。 Service Manager作成ツールには、次の 4 つの組み込みの制御フロー アクティビティが用意されています。

  • Delay Activity - ワークフロー内のアクティビティ間の遅延を導入します。

  • For Each Loop Activity - オブジェクトの配列 (コレクション) を入力として受け取り、コレクション内の For Each Loop オブジェクトでアクティビティのセットを繰り返します。

  • IfElse アクティビティ - ブール値 (True/False) 条件に基づいて、ワークフロー内のアクティビティのシーケンスを制御します。

  • 並列アクティビティ - アクティビティ のシーケンスを 2 つの同時アクティビティ シーケンスにフォークします。

Delay アクティビティを使用するには、Delay アクティビティをワークフローにドラッグし、アクティビティの TimeoutDuration プロパティを使用する遅延間隔に設定します。 IfElse または Parallel アクティビティを使用するには、アクティビティをワークフローにドラッグし、通常のアクティビティを IfElse または Parallel アクティビティにドロップします。

For Each ループ アクティビティの使用は、IfElse または Parallel アクティビティの使用に似ています。ただし、For Each ループのアクティビティに追加のプロパティを設定することもできます。 For Each ループをワークフローに追加するには、次の手順に従います。

各ループをワークフローに追加するには

  1. 管理パック エクスプローラーで、[ワークフロー] を展開し、目的のワークフローを右クリックして、[編集] を選択します。 作成ウィンドウでワークフローが開きます。

  2. [ アクティビティ ツールボックス ] ウィンドウで、アクティビティ グループ [ 制御フロー] を見つけます。

  3. For Each ループ アクティビティを、[ワークフローの開始] アイコンと [ワークフロー終了] アイコンの間、または 2 つの既存のアクティビティの間の位置にドラッグします。

  4. 実行をループするアクティビティをループ コンテナー (ForEachChildActivity) に追加します。 個々の活動を追加するには、次の操作を行います。

    1. [ アクティビティ ツールボックス ] ウィンドウで、使用するアクティビティを含むアクティビティ グループを展開します。

    2. アクティビティを ループ コンテナー アクティビティの一番上の位置にドラッグします。 ループ コンテナー アクティビティに既に他のアクティビティが含まれている場合は、既存のアクティビティの前、後、または間の位置に新しいアクティビティをドラッグします。

    3. このコンテナーに配置するほとんどのワークフロー アクティビティには、 現在のアイテムバインドするプロパティの 2 つの追加プロパティがあります。 ループ コンテナー内の活動ごとにこれらのプロパティを次のように設定してください。

      注意

      プロパティの設定は必須ではなく、ループ コンテナーInput コレクションからオブジェクトを取得する場合にのみ役立ちます。

      1. [現在のアイテム]、ForEach アクティビティのループ コンテナー アクティビティの [現在のアイテム] プロパティに設定します。

        注意

        このアクティビティが For Each ループの最初のアクティビティである場合、 現在の項目 は自動的に設定されます。

      2. Property to Bind プロパティの値を、現在のアイテムの値を使用する現在のアクティビティのプロパティの値に設定します。

ワークフローからアクティビティを削除する

Service Manager Authoring Tool でワークフローから活動を削除するには、次の手順に従います。 この操作では、アクティビティ ライブラリまたは [アクティビティ ツールボックス] ウィンドウから アクティビティ は削除されません。

ワークフローから活動を削除するには

  • 作成ウィンドウでアクティビティを右クリックし、[削除] を選択 します

次の手順