intra-mart Accel Platform IM-Workflow プログラミングガイド 第25版 2021-08-01

1.3.3. showProcess

imWorkflow.modal.showProcess(Object parameter) : Promise<Object>

処理モーダルを表示します。

1.3.3.1. サンプルコード

imWorkflow.modal.showProcess({
   processParameter: {
       systemMatterId: "",
       nodeId: "",
       processType: [],
       matterName: "",
       authUserDepartmentInfo: {},
       priorityLevel: "",
       processComment: "",
       branchSelects: [],
       sendBackNodeIds: [],
       dynamicNodeConfigs: [],
       confirmNodeConfigs: [],
       horizontalNodeConfigs: [],
       verticalNodeConfigs: [],
       interfaceControl: {}
   },
   optionalParameter: {},
   rebootModal: false
})
.then(function(result) {
   // modal close
   if (result.isProcessDone) {
      // success
      alert("done");
   }
   imWorkflow.transition.afterProcess();
});

1.3.3.2. パラメータ

  • parameter : Object

  • parameter.processParameter : Object(下記参照)
    処理モーダル表示用パラメータ情報オブジェクト
  • parameter.optionalParameter : Object(下記参照)
    ユーザパラメータ、および、Forma用ユーザパラメータを内包するオブジェクト
  • parameter.rebootModal : boolean
    モーダルを閉じた際に入力した内容を保持するかを指定
    true: モーダルを閉じる度に入力内容を破棄し、再度このメソッドを実行した際はモーダル表示処理を再実行します。
    false: モーダルを閉じても入力内容はコンテンツ画面に保持され、再度このメソッドを実行した際は保持された情報を表示します。画面遷移をした場合、入力内容は破棄されます。(初期値)

1.3.3.2.1. processParameter

項目名 必須/任意 型(最大バイト数) 説明
systemMatterId 任意 文字列
システム案件ID
「案件一覧」画面から遷移した場合は、一覧で選択したタスクのシステム案件IDが設定されるため不要
「案件一覧」画面以外から遷移した場合は、必須
nodeId 任意 文字列
ノードID
「案件一覧」画面から遷移した場合は、一覧で選択したタスクのノードIDが設定されるため不要
「案件一覧」画面以外から遷移した場合は、必須
processType 任意 下記参照
処理種別
処理種別に対する制御をしたい場合に設定
matterName 任意 文字列(200)
案件名
案件名に初期値を設定したい場合に指定
再申請、起票案件申請の場合に有効
authUserDepartmentInfo 任意 下記参照
権限者所属組織情報
担当組織に初期値を設定したい場合に指定
priorityLevel 任意 文字列
優先度
優先度に初期値を設定したい場合に指定
再申請、起票案件申請の場合に有効
設定値は「 CodeList 」を参照
processComment 任意 文字列(2000)
処理コメント
処理コメントに初期値を設定したい場合に指定
branchSelects 任意 下記参照
分岐先選択情報
ルート選択に初期値を設定したい場合に指定
sendBackNodeIds 任意 配列(文字列)
差戻し先ノードID
差戻し先の初期値を設定したい場合に指定
dynamicNodeConfigs 任意 下記参照
動的承認ノード設定情報
動的処理対象者設定機能 」を利用する場合に指定
confirmNodeConfigs 任意 下記参照
確認ノード設定情報
動的処理対象者設定機能 」を利用する場合に指定
horizontalNodeConfigs 任意 下記参照
横配置ノード設定情報
動的処理対象者設定機能 」を利用する場合に指定
verticalNodeConfigs 任意 下記参照
縦配置ノード設定情報
動的処理対象者設定機能 」を利用する場合に指定
interfaceControl 任意 下記参照
インタフェース制御
モーダル画面のインタフェースを変更したい場合に指定

1.3.3.2.1.1. 処理種別

{
  "processType": {
    "disableTypes": [
      "string"
    ],
    "selected": "string"
  }
}
項目名 必須/任意 説明
disableTypes 任意 配列(文字列)
無効にする処理種別を指定します。
selected 任意 文字列
モーダル画面を表示したときに初期選択する処理種別を指定します。

コラム

「disableTypes」、「selected」に指定できる処理種別の値は以下の通りです。
  • 起票: “apply_from_unapply”
  • 再申請: “reapply”
  • 取止め: “discontinue”
  • 承認: “approve”
  • 承認終了: “approve_end”
  • 否認: “deny”
  • 保留: “reserve”
  • 保留解除: “reserve_cancel”
  • 差戻し: “sendback”

1.3.3.2.1.2. authUserDepartmentInfo

{
  authUserDepartmentInfo: {
    companyCd: "string",
    departmentSetCd: "string",
    departmentCd: "string"
  }
}
項目名 必須/任意 説明
companyCd 必須 文字列
会社コードを指定します。
departmentSetCd 必須 文字列
組織セットコードを指定します。
departmentCd 必須 文字列
組織コードを指定します。

1.3.3.2.1.3. branchSelects

{
  branchSelects: [
    {
      branchStartNodeId: "string",
      forwardNodeIds: [
        "string"
      ]
    }
  ]
}
項目名 必須/任意 説明
branchStartNodeId 必須 文字列
初期値を指定するルート選択の分岐開始ノードのノードIDを指定します。
forwardNodeIds 必須 配列(文字列)
初期値として選択するノードのノードIDを配列で指定します。
単一選択の場合は1つ、複数選択の場合は選択するすべてのノードのノードIDを設定してください。

1.3.3.2.1.4. dynamicNodeConfigs/confirmNodeConfigs

{
  dynamicNodeConfigs: [
    {
      enable: true,
      nodeId: "string",
      nodeInformation: "string",
      searchCondition: {
        criteria: "any"
      },
      processTargetConfigs: [
        {
          pluginId: "string",
          parameter: "string"
        }
      ]
    }
  ],
  confirmNodeConfigs: [
    {
      nodeId: "string",
      nodeInformation: "string",
      searchCondition: {
        criteria: "any"
      },
      processTargetConfigs: [
        {
          pluginId: "string",
          parameter: "string"
        }
      ]
    }
  ]
}
項目名 必須/任意 説明
enable 任意 boolean
「フロー設定」においてノードを設定するか否かの初期値を制御します。
この設定は、動的承認ノードに対してのみ有効です。
フロー定義における動的承認ノードの削除設定が削除可能な場合に、有効な項目です。
true の場合、処理対象者を設定する状態で表示します。
false の場合、ノードを削除する状態で表示します。
「interfaceControl.display」と組み合わせて、両方にfalseを設定した場合、該当の動的承認ノードを削除(ノードスキップ)できます。
未指定の場合、trueとして動作します。
nodeId 必須 文字列
設定対象のノードIDを指定します。
nodeInformation 任意 文字列
ノードに対する任意のメッセージを指定します。
searchCondition 任意 オブジェクト
処理対象者の検索時条件を指定します。
「criteria」プロパティを設定することで、検索時の暗黙条件を指定可能です。
当プロパティを指定した場合、処理対象者を検索する際に利用可能なプラグインと検索タブは「ユーザ検索(キーワード タブ)」のみです。
criteria 任意 オブジェクト
ユーザ検索(キーワード タブ)に対する暗黙条件を指定可能です。
具体的には、「 IM-共通マスタ 検索画面起動引数一覧 」において以下に該当する引数を指定可能です。
  • 対象となる検索画面・タブ
    機能グループ = 「ユーザ検索画面」
    検索画面タブ = 「キーワード」
  • 対象となる引数
    分類 = 「暗黙条件」
「searchCondition」を指定した場合、省略することはできません。
「searchCondition」・「criteria」の両方が省略された場合、検索条件(暗黙条件)指定なしで動作します。
processTargetConfigs 任意 オブジェクト
処理対象プラグイン情報を指定します。
利用可能なプラグインIDについては「 処理権限者プラグイン一覧 」を参照してください。
未指定の場合、現在設定済みの処理対象者が適用されます。

コラム

「searchCondition」、または、「processTargetConfigs」を設定した場合、保存済み設定機能は利用できません。

コラム

ノードの削除可否や利用可能なプラグインは、 動的承認・横配置・縦配置ノード設定 の範囲で指定できます。

1.3.3.2.1.5. horizontalNodeConfigs/verticalNodeConfigs

{
  horizontalNodeConfigs: [
    {
      nodeId: "string",
      nodeInformation: "string",
      searchCondition: {
        criteria: "string"
      },
      matterNodeExpansions: [
        {
          nodeName: "string",
          searchCondition: {
            criteria: "any"
          },
          processTargetConfigs: [
            {
              pluginId: "string",
              parameter: "string"
            }
          ]
        }
      ]
    }
  ],
  verticalNodeConfigs: [
    {
      nodeId: "string",
      nodeInformation: "string",
      searchCondition: {
        criteria: "string"
      },
      matterNodeExpansions: [
        {
          nodeName: "string",
          searchCondition: {
            criteria: "any"
          },
          processTargetConfigs: [
            {
              pluginId: "string",
              parameter: "string"
            }
          ]
        }
      ]
    }
  ]
}
項目名 必須/任意 型(最大バイト数) 説明
nodeId 必須 文字列
設定対象のノードIDを指定します。
nodeInformation 任意 文字列
ノードに対する任意のメッセージを指定します。
searchCondition 任意 オブジェクト
処理対象者の検索時条件を指定します。
「criteria」プロパティを設定することで、検索時の暗黙条件を指定可能です。
当プロパティを指定した場合、処理対象者を検索する際に利用可能なプラグインと検索タブは「ユーザ検索(キーワード タブ)」のみです。
criteria 任意 オブジェクト
ユーザ検索(キーワード タブ)に対する暗黙条件を指定可能です。
具体的には、「 IM-共通マスタ 検索画面起動引数一覧 」において以下に該当する引数を指定可能です。
  • 対象となる検索画面・タブ
    機能グループ = 「ユーザ検索画面」
    検索画面タブ = 「キーワード」
  • 対象となる引数
    分類 = 「暗黙条件」
「searchCondition」を指定した場合、省略することはできません。
「searchCondition」・「criteria」の両方が省略された場合、検索条件(暗黙条件)指定なしで動作します。
matterNodeExpansions 任意 オブジェクト
ノード展開情報を指定します。展開するノード数分オブジェクトを定義します。

「interfaceControl.display」false(表示しない) の場合の動作仕様は以下の通りです。
  • フロー定義で設定されている「割当可能ノード数」の「最小」「最大」値の範囲で、当パラメータで定義したノード数で展開されます。
「interfaceControl.display」true(表示する) の場合の動作仕様は以下の通りです。
  • 展開可能なノード数の最小個数は、常にフロー定義で設定されている「割当可能ノード数」の「最小」値です。フロー定義の最小値より当パラメータで指定したノード数の方が小さい場合、処理を行うためには標準画面上での追加設定が必要です。
  • 展開可能なノード数の最大個数は、フロー定義で設定されている「割当可能ノード数」の「最大」値です。当パラメータで指定したノード数が「割当可能ノード数」の「最大」値を超えた分は設定されません。
対象のノードを削除(ノードスキップ)する場合、以下の設定を行ってください。
  • 「matterNodeExpansions」の設定を省略または空で指定、かつ、displayにfalseを指定。
nodeName 任意 文字列(50)
ノード名を指定します。
processTargetConfigs 任意 オブジェクト
処理対象プラグイン情報を指定します。
利用可能なプラグインIDについては「 処理権限者プラグイン一覧 」を参照してください。
未指定の場合、現在設定済みの処理対象者が適用されます。

コラム

「searchCondition」、または、「matterNodeExpansions」を設定した場合、保存済み設定機能は利用できません。

コラム

割当可能ノード数や利用可能なプラグインは、 動的承認・横配置・縦配置ノード設定 の範囲で指定できます。

1.3.3.2.1.6. interfaceControl

処理モーダルの各項目に対するインタフェースの制御(表示、参照、必須)を指定します。
制御の内容と設定値ごとの動作は以下の通りです。
  • 表示(display)
    • true : 項目を表示します。(初期値)
    • false : 項目を非表示にします。
  • 参照(readonly)
    • true : 項目を入力不可(参照のみ)にします。
    • false : 項目を入力可とします。(初期値)
  • 必須(required)
    • true : 項目を必須入力にします。
    • false : 項目を任意入力にします。(初期値)
項目ごとに制御できる内容は異なります。
{
  interfaceControl: {
    processType: {
      display: true
    },
    matterNumber: {
      display: true
    },
    matterName: {
      display: true,
      readonly: false
    },
    applyBaseDate: {
      display: true
    },
    applyDate: {
      display: true
    },
    applyAuthUserCd: {
      display: true
    },
    authUserCd: {
      display: true
    },
    authUserDepartmentInfo: {
      display: true,
      readonly: false
    },
    priorityLevel: {
      display: true,
      readonly: false
    },
    processComment: {
      display: true,
      readonly: false,
      required: false
    },
    attachmentFile: {
      display: true
    },
    branchSelects: [
      {
        branchStartNodeId: "string",
        display: true,
        readonly: false
      }
    ],
    sendBack: {
      readonly: true
    },
    dynamicNodeConfigs: [
      {
        nodeId: "string",
        display: true,
        readonly: false
      }
    ],
    confirmNodeConfigs: [
      {
        nodeId: "string",
        display: true,
        readonly: false
      }
    ],
    horizontalNodeConfigs: [
      {
        nodeId: "string",
        display: true,
        readonly: false
      }
    ],
    verticalNodeConfigs: [
      {
        nodeId: "string",
        display: true,
        readonly: false
      }
    ],
    stamp: {
      display: true
    },
    nego: {
      display: true
    }
  }
}
項目名 必須/任意 説明
processType 任意 オブジェクト
処理種別に対するインタフェース制御を指定します。
「display」を設定できます。
matterNumber 任意 オブジェクト
案件番号に対するインタフェース制御を指定します。
「display」を設定できます。
matterName 任意 オブジェクト
案件名に対するインタフェース制御を指定します。
「display」と「readonly」を設定できます。
「readonly」は再申請、起票案件申請の場合に有効です。
applyBaseDate 任意 オブジェクト
申請基準日に対するインタフェース制御を指定します。
「display」を設定できます。
applyDate 任意 オブジェクト
申請日に対するインタフェース制御を指定します。
「display」を設定できます。
applyAuthUserCd 任意 オブジェクト
申請権限者に対するインタフェース制御を指定します。
「display」を設定できます。
authUserCd 任意 オブジェクト
処理者に対するインタフェース制御を指定します。
「display」を設定できます。
authUserDepartmentInfo 任意 オブジェクト
担当組織に対するインタフェース制御を指定します。
「display」と「readonly」を設定できます。
priorityLevel 任意 オブジェクト
優先度に対するインタフェース制御を指定します。
「display」と「readonly」を設定できます。
「readonly」は再申請、起票案件申請の場合に有効です。
processComment 任意 オブジェクト
処理コメントに対するインタフェース制御を指定します。
「display」と「readonly」と「required」を設定できます。
attachmentFile 任意 オブジェクト
添付ファイルに対するインタフェース制御を指定します。
「display」を設定できます。
branchSelects 任意 配列(オブジェクト)
分岐先選択のインタフェース制御を指定します。
分岐先選択では、分岐先となる分岐先開始ノード(branchStartNodeId)ごとに「display」、「readonly」を設定できます。
sendBack 任意 オブジェクト
差戻しに対するインタフェース制御を指定します。
「readonly」を設定できます。
dynamicNodeConfigs 任意 配列(オブジェクト)
動的承認ノードのインタフェース制御を指定します。
動的承認ノード(nodeId)ごとに「display」、「readonly」を設定できます。
confirmNodeConfigs 任意 配列(オブジェクト)
確認ノードのインタフェース制御を指定します。
確認ノード(nodeId)ごとに「display」、「readonly」を設定できます。
horizontalNodeConfigs 任意 配列(オブジェクト)
横配置ノードのインタフェース制御を指定します。
横配置ノード(nodeId)ごとに「display」、「readonly」を設定できます。
verticalNodeConfigs 任意 配列(オブジェクト)
縦配置ノードのインタフェース制御を指定します。
縦配置ノード(nodeId)ごとに「display」、「readonly」を設定できます。
stamp 任意 オブジェクト
印影に対するインタフェース制御を指定します。
「display」を設定できます。
nego 任意 オブジェクト
根回しメールに対するインタフェース制御を指定します。
「display」を設定できます。

1.3.3.2.2. optionalParameter

userParameterには、アクション処理に受け渡したいパラメータを指定してください。
formaParamは IM-FormaDesigner / IM-BIS で作成したワークフローの場合のみ有効です。
印影を指定する場合、imwStampIdを指定してください。
印影を利用していて、imwStampIdを指定しない場合、常用印が利用されます。
{
  optionalParameter: {
      userParameter: {
          imwStampId: "string",
          xxxx: "string"
      },
      formaParam: {
          items: {
            textbox1: "string"
          }
      }
  }
}

1.3.3.3. 返却値

  • Promise<Object>
    返却オブジェクト(下記参照)
  • 当APIはPromiseを返します。
    正常終了時はpromise.then()で返却値を受け取ってください。
項目名 説明
isProcessDone boolean
処理実行フラグ
処理を実行し、モーダル画面が閉じた場合に true を返却します。
処理を実行せずに、×ボタン押下でモーダル画面を閉じた場合は false を返却します。