2022年12月16日金曜日

Flows for APEXによる休暇申請フローの作成(5) - 進捗確認画面の組み込み

 Flows for APEXが提供しているプラグイン、Flows for APEX - Viewerを組み込んでみます。ワークフローの進捗を確認することができます。

アプリケーションに組み込まれたビューワーは、以下のように動作します。


進捗確認画面の組み込み



進捗を表示するページを作成します。ページの作成を実行します。


空白ページを選択します。


名前Flow Statusページ・モードとしてモーダル・ダイアログを選択します。ページ・モードとしてモーダル・ダイアログを選択しているため、ナビゲーションブレッドクラムの使用ナビゲーションの使用ともにOFFになります。

ページの作成をクリックします。


ページが作成されたら、Content Body以下にリージョンの作成を行います。

識別タイトルFlows Statusとし、タイプとしてFlows for APEX - Viewerを選択します。ソース表名としてFLOW_INSTANCE_DETAILS_VWを設定し(ビューとして選択する)、WHERE句prcs_id = :PROCESS_IDを指定します。


続いてリージョンの属性を開き、ビューワーに対する設定を行います。

設定Diagram XMLとしてDGRM_CONTENTを選択します。Add HighlightingONに変更します。Add HighlightingONに変更した際に設定される値は、そのまま使用します。


以上で進捗を表示する画面が作成されました。変更を保存します。

対話モード・レポートから、このページを呼び出せるように変更するため、対話モード・レポートのページをページ・デザイナで開きます。

SBFL_PRCS_IDを選択し、タイプリンクに変更します。


リンクターゲットを設定します。

ページにはFlows Statusとして作成したページのページ番号を選択し、アイテムの設定として名前PROCESS_ID#SBFL_PRCS_ID#を指定します。OKをクリックします。


以上で進捗を表示できるようになりました。アプリケーションを実行すると、記事の最初にあるGIF動画のように動作します。

以上でFlows for APEXを組み込んだ休暇申請のアプリケーションは完成です。

今回作成したアプリケーションのエクスポートを以下に置きました。
https://github.com/ujnak/apexapps/blob/master/exports/holidayreq.zip

休暇申請のフロー・モデルのエクスポートは以下に置きました。
https://github.com/ujnak/apexapps/blob/master/exports/20230815-0811_%E4%BC%91%E6%9A%87%E7%94%B3%E8%AB%8B.bpmn

Oracle APEXのアプリケーション作成の参考になれば幸いです。