2019年6月26日水曜日

「申請ボタンを押す前に、もう一度確認して!」を実現する方法をご紹介します

Gluegent Flowでユーザーが申請や承認を行う際、いろいろな確認事項がすべてクリアになってからボタンをクリックすると思います。しかし、確認がすべてクリアになっていないのについうっかり承認してしまい、次の担当者に差し戻しを依頼する・・・といったケースが発生したことはないでしょうか?こうしたことで業務効率が下がるのは非常に残念だと思います。
そこで今回は、処理実行時に確認すべきポイントをメッセージで表示させ、申請の手戻りをなくすことで業務効率をアップさせるための方法をご紹介します。

◯カスタムバリデーションを使う

Gluegent Flowの入力チェックには「カスタムバリデーション」という汎用性の高いチェックがあります。これは、スクリプトを使って自由に条件を指定し「True」だったら処理を実行、「False」だったらエラーメッセージを出して処理を中止することができます。
このスクリプトには「JavaScript」が使えますので、例えば、A項目で◯◯が選択されていたらB項目は□□が選択されていないとエラーにするといった制御が可能です。

◯カスタムバリデーションで確認ダイアログを表示させる
それでは、実際にカスタムバリデーションを使って確認ダイアログを表示する方法をご紹介しましょう。
モデル編集画面の「入力チェック」をクリックし、「+」をクリックします。


続いて、「カスタムバリデーション」の「+」をクリックします。(この画面の背後でバリデーションが追加されますので「閉じる」をクリックします。)

任意の名前を設定します。
個別設定のスクリプトに以下を入力します。
if (confirm("表示したいメッセージ") == true) {
     return true;
} return false;

「confirm」は確認ダイアログを表示させるメソッドです。カッコ内に表示したいメッセージを入力します。(例:処理を続けますか?)
ダイアログには「OK」「キャンセル」のボタンが表示されます。「OK」をクリックすると「true」が返されます。「キャンセル」をクリックすると「false」が返されます。
「エラーメッセージを独自に定義する」のチェックをオンにします。
表示されたテキストボックスに任意のメッセージを入力します。(例:処理を中断しました。)
このメッセージは申請時にのみ表示したいので「経路ごとの表示・実行設定」で申請の経路で「実行する」を選択し、それ以外の経路では「実行しない」を選択します。

◯申請してみる
それでは、上記で作成したモデルを使って申請をしてみましょう。
「申請」ボタンをクリックすると確認ダイアログが表示されます。

「キャンセル」をクリックするとカスタムバリデーションのエラーメッセージが表示されます。「OK」をクリックすると申請中の画面に戻ります。

確認ダイアログで「OK」をクリックすると申請の処理が進みます。
他の経路では「実行しない」が選択されているので、確認ダイアログは表示されません。

いかがでしたでしょうか。ちょっとした工夫で、承認者への確認の負担軽減につながり業務効率をアップさせることにつながるのではないでしょうか。