intra-mart Accel Platform IM-Workflow プログラミングガイド 第26版 2023-10-01

9.1.2. 実装例

サンプルとして提供されている「物品購買」の申請書において、申請画面で入力される「品名」を「案件名」に、「備考」を「コメント」に初期表示する例です。
なお、サンプルはPC用画面のみ用意しています。
スマートフォン用画面の場合も全体の流れは同じです。実装中で使用するタグライブラリや Client-side JavaScript API が異なることに注意してください。
../../../_images/customize_guide_2_figure_1.png
下記のプログラムが、初期表示を行うための処理が記述されたプログラムです。
  • スクリプト開発モデル

    <./jssp/src/sample/im_workflow/purchase/screen/apply_display.html>
    
  • JavaEE開発モデル

    <(展開したwar)/sample/im_workflow/purchase/apply_display.jsp>
    
これらのファイルを、以下のファイル名に変更し、上書き保存することで、申請画面において本機能の動作確認を行うことが出来ます。
  • スクリプト開発モデル

    <./jssp/src/sample/im_workflow/purchase/screen/apply.html>
    
  • JavaEE開発モデル

    <(展開したwar)/sample/im_workflow/purchase/apply.jsp>
    
以下のような処理を記述することで、初期表示を行うことが出来ます。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
   <imart type="head">
   <title>
       <imart type="string" value=$msg.cap010 escapeXml="true" escapeJs="false" />
   </title>

   <imart type="workflowOpenPageCsjs" />
   <script src="ui/libs/jquery-validation-1.9.0/jquery.validate.js"></script>
   <script type="text/javascript">
    .
    .
    .

   // 入力された品名と備考を、案件名、コメントにセットします。
   function setParam() {
       $('#imwMatterName').val($('#item_name').val());
       $('#imwComment').val($('#item_comment').val());
       $('#imwForcedParamFlag').val('1');
   }

    $(function(){
    .
    .
    .
        $('#openPage1').click(function(){
            // 値をセットする処理を呼び出します。
            setParam();
            workflowOpenPage('1');
        });
    .
    .
    .

    }

    </script>
    </imart>

    <imart type="workflowOpenPage"
       name="workflowOpenPageForm"
       id="workflowOpenPageForm"
       method="POST"
       target="_top"
       imwUserDataId=$data.imwUserDataId
       imwSystemMatterId=$data.imwSystemMatterId
       imwAuthUserCode=$data.imwAuthUserCode
       imwApplyBaseDate=$data.imwApplyBaseDate
       imwNodeId=$data.imwNodeId
       imwFlowId=$data.imwFlowId
       imwCallOriginalParams=$data.imwCallOriginalParams
       imwNextScriptPath=$data.imwCallOriginalPagePath>

   //案件名、コメント値を保持するエリアを定義します。
   <input type="hidden" name="imwMatterName" id="imwMatterName" />
   <input type="hidden" name="imwComment" id="imwComment" />
   <input type="hidden" name="imwForcedParamFlag" id="imwForcedParamFlag" />
    .
    .
    .
    </imart>