特定の判定段階で項目を非表示にする

判定段階名によって項目の表示・非表示を切り替えるサンプルを紹介します。

サンプルについて
本サンプルのソースコードについてや、カスタマイズ方法等の技術的なお問合せは承っておりません。

利用するイベント・API

申請書閲覧・判定画面イベント(表示クリックイベント)

サンプルフォーム

サンプルで利用するフォームには、以下のパーツを配置しています。

パーツID

パーツタイプ

補足

fidText1

テキスト(一行)パーツ

特定の判定段階で非表示となる


カスタマイズコード
カスタマイズコード
Copied!
(function () {
'use strict';

collaboflow.events.on('request.detail.show', function (e) {

// コラボフローAPIで判定情報を取得
const path = '/v1/documents/' + e.document_id + '/determs';
const parameters = {
'app_cd': e.app_cd,
'current': true
};

// 判定情報を取得する
return collaboflow.api.get(path, parameters)
.then(function (response) {

if (response.status !== 200) {
throw new Error(response.body.messages);
}

return response.body.records;
})
.then(function(records) {

for(let phaseIndex = 0, len = records.length; phaseIndex < len; phaseIndex++) {
let phase = records[phaseIndex];

// 現在の段階でなければスキップ
if (!phase.current) {
continue;
}

// 判定段階名が「非表示の判定段階」なら非表示にする
e.parts['fidText1'].display = (phase.phase_title !== '非表示の判定段階');
break;
}
})
.catch(function (err) {
console.error(err);
});
});

})();

動作の確認手順

1. サンプルのカスタマイズコードをjsファイルに保存します。
2. アプリ設定>フォーム設定から新規に通常フォームを作成します。
3. サンプルフォームに、先で記載されている必要な項目を配置します。
4. サンプルフォームを再度表示し、カスタマイズタブを表示します。
5. 保存したファイルをアップロードします。
6. アプリ設定>経路設定から新規に経路を作成します。
7. 新規文書から作成した経路名をクリックします。
8. 申請画面が表示されます。
9. 申請をおこないます。
10. 判定者にて判定をおこないます。
11. 現在の判定段階の段階名が「非表示の判定段階」の場合、対象パーツが非表示となります。

動作イメージ