ページの先頭行へ戻る
Systemwalker IT Change Manager V14g カスタマイズガイド
Systemwalker

3.2.6 伝票の入力値に応じて処理を変更する

自動実行アクティビティで、伝票に入力された値を判定し、値によってフローを分岐させることができます。

運用フローに自動実行アクティビティを配置し、自動実行アプリケーションとして入力内容のチェック機能を登録します。フローがこのアクティビティに遷移すると、伝票の指定の項目に入力された値をチェックし、その結果によってフローの分岐ができます。

フローの分岐には、UDA"SWPM_RCODE"の値を使用します。指定のタグ入力値が指定文字列と一致する場合は"1"が、それ以外の場合には"0"がUDAに格納されます。

設定方法

自動実行アクティビティの設定

自動実行アクティビティに入力内容をチェックする機能を設定する場合の手順を、以下に示します。

  1. 電子フォームを設計します。

    入力値によって処理を変更したい項目のタグ名を決めておきます。設計方法については、"電子フォーム伝票の開発"を参照してください。ここでは、タグ名を"ApprovalRoute"とします。

  2. アプリケーション環境設定ファイルを編集します。

    伝票項目"ApprovalRoute"を、手順2で設計したコマンドに渡すパラメタとしてアプリケーション環境設定ファイル(ae.ini)に追加します。

    【Windows】

    # 入力内容チェック
    APLCHECK.path=C:/work/aplcheck/bin/aplcheck.cmd
    APLCHECK.param=-route #arg1
    APLCHECK.arg1.name=ApprovalRoute

    【Solaris/Linux】

    # 入力内容チェック
    APLCHECK.path=/opt/myapp/aplcheck/bin/aplcheck
    APLCHECK.param=-route #arg1
    APLCHECK.arg1.name=ApprovalRoute

  3. 2で定義した自動実行アプリケーションを設計・開発します。

    項目"ApprovalRoute"に設定された値を数値変換して返却するコマンドを設計します。

    【Windows】

    if "%2" == "CAB/EC" (
       set ERRORLEVEL=1
       goto END
    )
    if "%2" == "CAB" (
       set ERRORLEVEL=2
       goto END
    )
    if "%2" == "CAB開催なし" (
       set ERRORLEVEL=3
       goto END
    )
    set ERRORLEVEL=98
    goto END
    :END
    exit /b %ERRORLEVEL%

    【Solaris/Linux】

    case $2 in
       CAB/EC)
          RCODE=1;
          ;;
       CAB)
          RCODE=2;
          ;;
       CAB開催なし)
          RCODE=3;
          ;;
       *)
          RCODE=99
          ;;
       esac
    exit $RCODE
    • 判定結果が"CAB/EC"の場合:1を返却

    • 判定結果が"CAB"の場合:2を返却

    • 判定結果が"CAB開催なし"の場合:3を返却

  4. 運用フローを設計します。

    1. 入力値を数値変換するための自動実行アクティビティ(@AE)を設置します。

      手順2で設計したコマンドを呼び出すための論理アプリ名を設定しておきます。コマンドの復帰値は、ユーザー定義属性(UDA)であるSWPM_RCODEに設定されます。ここでは、"承認ルート判定"というアクティビティを設置します。

    2. 条件ノードを設定します。

      手順3-1でSWPM_RCODEに設定された値をもとに、分岐条件を設定します。ここでは、"承認ルート判定"の後の条件分岐を示します。

注意

入力値とその判定用文字列は、日本語を使用することも可能ですが、正しく解釈するために半角スペースを含めることはできません。