ノード毎にフォーム項目の表示・入力モードを切り替える
ノード毎にフォーム項目の表示/非表示、および、入力可否を設定する方法を解説します。
「Accel-Mart Quick ワークフロー管理者」ロールを持つユーザで実施してください。
利用シーン
以下のようなことが実現可能です。
- あるフォーム項目を特定のノードでのみ入力できるようにする
- あるフォーム項目を特定のノードでは非表示にする
- ファイルアップロードの入力可否をノード毎に設定し、ファイル添付できるノードを制限する
申請画面と承認画面でフォーム項目の表示/非表示や入力可否を変更したい場合は、プロパティの「表示タイプ」で設定が可能です。手順は、「申請時と承認時で表示項目が一部異なるフォームを作成する」を参照してください。
承認画面について、ノード間で表示・入力させたい項目が異なる場合は、このチュートリアルの手順を参考 にしてください。
概要
このチュートリアルでは、作業依頼のワークフローを作成します。このワークフローに関係するアクターは次の通りです。
- 申請者:作業の依頼者です。依頼内容を記入して、ワークフローを申請します。
- 責任者:作業の責任者です。依頼内容を参照し、実施して問題ない内容かどうかを確認します。問題なければ、ワークフローを承認します。
- 作業者:実際に作業を行う人物です。依頼内容を確認して作業を実施します。作業後、作業内容を記入してワークフローを承認します。
完成イメージ
以下のような承認経路のワークフローを作成します。
作成するフォームについて、各ノードで表示される項目・入力可能な項目は以下の通りに設定します。
以下の動画は、このチュートリアルにおいて、「作業者」のノードで「作業結果」を入力可に設定する部分の手順を抜粋したものです 。チュートリアルと併せてご覧ください。
前提とする内容
このチュートリアルの解説は、以下の内容を理解していること前提とし、一部手順の説明を省略しています。手順でわからない部分があった場合は、こちらを参照してください。
ルート定義を設定する
ワークフローを新規作成し、承認経路の設定を行います。
-
メニューの「管理」→「ノーコード開発」→「ワークフロー設定」にアクセスし、「新規登録」をクリックします。
-
以下の通りに選択・入力して「登録」をクリックします。
- ルート作成方法:新規にルートを作成する
- BIS名:【チュートリアル】作業依頼申請
-
ルート定義で、以下のように「承認」ノードを配置します。
-
「申請」ノードを選択し、処理対象者を設定します。「ロール」検索から「Accel-Mart Quick ワークフロー管理者」を選択してください。
-
「承認」ノードのノード名を以下のように変更します。処理対象者は全て「申請者」に設定します。
ヒントこのチュートリアルでは、各ノードでの表示内容の確認を行いやすくするために、申請者がそのまま後続のノードを全て処理できる設定にしています。実際にこのようなフローを作成する場合は、「申請者確認」以外のノードにはそれぞれ適切な組織や役職、ロールを処理対象者として設定してください。
-
「登録」ボタン をクリックして、ルート定義を登録します。
-
「IM-BIS-フロー編集」画面が表示されます。次は、フォームを設定していきます。
フォームを設定する
申請に使用するフォームを作成します。
-
「申請」アイコンをダブルクリックして、「フォーム-登録」画面を表示します。
-
フォーム名に「作業依頼申請フォーム」と入力し、「登録」ボタンをクリックします。
-
「フォーム編集」画面が表示されます。
-
「ヘッダーとフッター」をクリックし、以下のように設定します。
-
ツールキットから入力アイテム「日付」と「複数行文字列」(2つ)を以下のように配置します。
-
「日付」のプロパティを以下のように設定します。
タブ 項目名 設定内容 基本設定 ラベル 作業希望日 詳細設 定 フィールド識別ID desired_date フィールド識別名 作業希望日 アイテム名 作業希望日 アイテム名ノード毎の表示・入力モードを設定する際にアイテム名を使用するため、分かりやすい名称をつけてください。
-
上側に配置した「複数行文字列」のプロパティを以下のように設定します。
タブ 項目名 設定内容 基本設定 ラベル 依頼内容 詳細設定 フィールド識別ID content フィールド識別名 依頼内容 アイテム名 依頼内容 表示タイプの設定「作業希望日」、および、「依頼内容」の項目は申請時に入力し、承認時は参照のみさせたいため、標準の設定のまま変更しません。
-
下側に配置した「複数行文字列」のプロパティを以下のように設定します。
タブ 項目名 設定内容 基本設定 ラベル 作業結果 詳細設定 フィールド識別ID result フィールド識別名 作業結果 アイテム名 作業結果 表示タイプ 申請:非表示
再申請:非表示
承認:参照
参照:参照表示タイプの設定「作業結果」の項目は申請時には表示したくないため、設定を上記の通り変更します。
-
ボタンアイテムから「ボタン(処理モーダル)」と「ボタン(一時保存モーダル)」を配置します。
-
「更新」をクリックして、フォームの設定内容を保存します。
-
「フォーム編集」画面を閉じ、「IM-BIS-フロー編集」画面を表示します。
-
申請ノードに設定したフォームを他のノードに共有します。「申請」アイコンを右クリックし、「共有」を選択します。
-
「管理者」アイコンを右クリックして、「貼り付け」を選択します。他のノードにも同様に貼り付けます。
-
これでフォームの設定は完了です。次は、ノード毎にフォーム項目の表示・入力モードを設定します。
ノード毎にフォーム項目の表示・入力モードを設定する
「フォームを設定する」で設定した表示タイプからノード毎に変更したいものについて設定していきます。
フォームの「作業結果」の項目について、表示タイプの設定のみを行った場合と、実際に設定したい内容の乖離は以下の表の通りです。
ノード名 | 申請 | 責任者 | 作業者 | 申請者確認 |
---|---|---|---|---|
表示タイプの設定のみ | 非表示 | 参照 | 参照 | 参照 |
実際に設定したい内容 | 非表示 | 非表示 | 入力可 | 参照 |
表の強調部分について、ノード毎に追加の設定が必要であることが分かります。以降の手順でその設定を行っていきます。
-
まず、「責任者」のノードに対して設定を行います。項目を非表示にしたいため、「表示モード」の設定が必要です。
-
「責任者」ノードを右クリックして、「表示モード設定」をクリックします。
-
「表示モード設定 - 責任者」ダイアログが開きます。左下の「登録」をクリックします。
-
「表示モード登録」ダイアログが開きます。
-
下記のように選択し、「登録」をクリックします。
項目 設定内容 アイテム名 作業結果 表示モード 非表示 アイテム名について「アイテム名」には「フォームを設定する」でアイテムのプロパティに設定した「アイテム名」が表示されます。
フォーム名の選択画面遷移設定を利用して1つのノードに複数のフォームを設定している場合は、フォーム名を選択します。画面遷移設定を利用していない場合は選択肢が1つしかないため、選択不要です。
-
「表示モード設定 - 責任者」ダイアログを閉じます。これで「責任者」ノードの設定は完了です。
-
次に、「作業者」のノードに対して設定を行います。項目を入力可にしたいため、「入力モード」の設定が必要です。
-
「作業者」ノ ードを右クリックして、「入力モード設定」をクリックします。
-
「入力モード設定 - 作業者」ダイアログが開きます。左下の「登録」をクリックします。
-
「入力モード登録」ダイアログが開きます。
-
下記のように選択し、「登録」をクリックします。
項目 設定内容 アイテム名 作業結果 入力モード 入力可 -
「入力モード設定 - 作業者」ダイアログを閉じます。
-
最後に、「定義の反映」をクリックします。これで必要な設定は全て完了です。
作成したワークフローを申請・承認する
作成したワークフローを実際に申請・承認し、各ノードでの表示、および、入力可否を確認します。
-
メニューの「申請」から「申請一覧」画面を表示します。
-
「【チュートリアル】作業依頼申請」を選択します。
-
「作業依頼申請」のフォームが表示されます。「作業希望日」「依頼内容」を入力して申請します。
-
案件が申請され、「責任者」ノードに進みます。次は、「責任者」ノードでの表示を確認します。
-
メニューの「承認」から「案件一覧」画面を表示します。
-
「未処理」から先ほど申請した案件を選択し、「処理」アイコンをクリックします。
-
「作業結果」アイテムが表示されていないことを確認します。
-
確認できたら、承認します。
-
次に、案件は「作業者」ノードに進みます。「作業者」ノードでの表示を確認します。
-
「作業結果」アイテムが表示され、入力可能になっていることを確認します。
-
「作業結果」を入力し、承認します。
-
最後に、「申請者確認」ノードでの表示を確認します。
-
「作業結果」アイテムに「作業者」ノードで入力した内容が表示されており、入力はできない ことを確認します。
-
確認ができたら、承認して案件を完了させます。これで、フォーム項目の表示・入力可否が意図通りに設定できていることを確認できました。