5.1.2. 一時保存モーダル¶
「一時保存モーダル」を呼び出す方法について説明します。「一時保存モーダル」は クライアントサイド JavaScript API を利用して呼び出します。「一時保存」画面と連携する画面のヘッダ部に、下記のとおりimSecureTokenの定義と<im_workflow/js/api_base.js>の読み込みを記述します。<imart type="head"> <meta http-equiv="X-Intramart-Secure-Token" content="<imart type="imSecureToken" mode="value" />"/> <script src="im_workflow/js/api_base.js" defer></script> </imart>下記のような JavaScript を実行することで、「一時保存モーダル」が表示されます。詳細は showTemporarySave を参照してください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 <script type="text/javascript"> imWorkflow.modal.showTemporarySave({ processParameter: { matterName: "sampleMatter" }, optionalParameter: { userParameter: { item_name: $('#item_name').val(), item_amount: $('#item_amount').val(), item_price: $('#item_price').val(), item_comment: $('#item_comment').val() } }, rebootModal: false }) .then(function(result) { if (result.isProcessDone) { alert("done"); } imWorkflow.transition.afterProcess(); }); </script>また、サンプルデータとして「一時保存モーダル」の呼び出しを実装した、以下のスクリプト開発のファイルを提供しています。<./jssp/src/sample/im_workflow/purchase/screen_modal/apply.html> <./jssp/src/sample/im_workflow/purchase/screen_modal/apply.js>
コラム
このAPIはPromiseを返します。
また、ワークフロー処理モーダルが閉じたタイミングで処理を終了します。
ワークフロー処理モーダルが閉じるタイミングは以下のとおりです。
- 閉じるボタンクリック
- ESCキー押下
- 処理が正常終了
よって、モーダルが閉じた後の処理は、then メソッド内に記述してください。
また、一時保存後の処理は、返却値のisProcessDoneプロパティがtrueの場合の処理内で記述してください。
コラム
<im_workflow/js/api_base.js>を読み込む際はdefer属性を付与する必要があります。