uCosminexus 電子フォームワークフロー 解説

[目次][用語][索引][前へ][次へ]

8.2 EUR Form帳票遷移JSPのカスタマイズ

EUR Form帳票遷移JSP(BLCEURProcessSample.jsp)は,EUR Form帳票のボタンをクリックしたときに呼び出されるページ(uCosminexus EUR Developerの[送信ユニットのプロパティ]ダイアログにある[送信ユニット]タブでURLに指定するページ)のサンプルです。

EUR Form帳票遷移JSPをカスタマイズして,利用環境に応じた処理を組み込む必要があります。サンプルでは,次のパラメタ名および値に対応する処理を行っています。このパラメタ名および値は,uCosminexus EUR Developerの[送信ユニットのプロパティ]ダイアログにある[送信ユニット]タブで,[送信ボタン]領域の[パラメタ]欄で指定します。

パラメタ名 BLCの動作
"Param" "Back" 閉じる
"Param" "Apply" 申請
"Param" "Approval" 承認
"Param" "BLC_Suspend" 保留
"Param" "BLC_Reject" 却下
"Param" "BLC_Reapply" 再申請
"Param" "BLC_Destruction" 破棄
"Param" "BLC_Conference" 相談
"Param" "BLC_Reply" 回答
注※
このパラメタを使用する場合は,ビジネスプロセス定義およびユーザ追加処理の対応が必要です。帳票ジェネレータ(BLSG)付属のサンプル帳票を参考にカスタマイズしてください。

保留機能の追加方法
EUR Form連携帳票に保留機能を追加する方法を説明します。
EUR Form帳票に保留ボタンを追加する方法
EUR Form帳票作成で保留ボタンを追加します。ボタンのID,キャプションは任意ですが,帳票間で統一するため次の値をお勧めします。

表8-3 保留ボタンの設定値の例

項目
帳票コントロールID CID_CB_SUSPEND
キャプション 保留
上記で追加した保留ボタンについて,送信ユニットのプロパティで送信ボタンとして追加し,パラメタを次のように設定してください。

表8-4 送信ユニットパラメタ(推奨値)

パラメタ名
Param BLC_Suspend
既存のユーザ帳票でパラメタに同一の値を使用している場合,「BLC_Suspend」以外の値を設定することもできます。この場合は,BLCEURProcessSample.jspファイルのパラメタ判定条件ACT_PARAM_SUSPENDの値を適宜変更してください。
対象ファイル:
<BLC2のインストールディレクトリ>\blc\webhome\app\main\BLCEURProcessSample.jsp
BLCEURProcessSample.jspの送信ユニットパラメタの設定個所を次に示します。
(中略)
final String ACT_PARAM_APPLY = "Apply";
final String ACT_PARAM_APPROVAL = "Approval";
final String ACT_PARAM_SUSPEND = "BLC_Suspend";
final String ACT_PARAM_BACK = "Back";
(以下略)
上記の下線部をEUR Form帳票の保留ボタンに設定した送信ユニットパラメタと同じ値にします。
保留ボタンを非表示にする方法
新規申請時および内容確認時は,保留機能は使用できません。ユーザが保留ボタンを押した場合,次のようなメッセージが表示されます。
新規申請の場合:「新規申請では保留ボタンは使用できません。」
内容確認の場合:「内容確認では保留ボタンは使用できません。」
新規申請時および内容確認時に保留ボタンを表示させないようにするには,EUR Form連携帳票のカスタマイズ(サーバ側ユーザ追加処理:帳票前処理)でボタン非表示の処理を記述してください。
保留ボタンを非表示にするユーザ追加処理の例を次に示します。
 
サーバ側ユーザ追加処理javaファイル
 
// 帳票前処理をユーザが追加するためのメソッド
public void ufsv_addEURFormPreparation() throws BLCException {
  try{
 
    EFormVisible action = new EFormVisible();
 
    // 帳票一覧からの起票または送信ログからの起票の場合
    if ((befpi.getInfo(befpi.BEF_PROCMODE).equals("0")) ||
      (befpi.getInfo(befpi.BEF_PROCMODE).equals("3"))){
      //「保留」ボタンを非表示にする
      action.setVisible(false);
      // "CID_CB_SUSPEND"は,「保留」ボタンの帳票コントロールID
      efDoc.modifyControl("CID_CB_SUSPEND", action);
    }
 
    //ユーザ処理ロジックでエラー判定の例
    //if( !true ) {
        //BLCException blcErr = BLCException.getUserException( 50000, new String [] { "arg1" } );
        //throw blcErr;
    //上記判定の終わり
    //}
 
    //BLCクラスメソッド発行,またはEUR Formメソッドの発行
 
  //} catch ( BLCException err ) { // BLC例外を捕捉
    //throw err;
 
  //} catch ( EFormException err ) { // Form Service例外を捕捉
    //BLCException blcErr = BLCException.getUserException( err, 50002, new String [] { "arg1" } );
    //throw blcErr;
 
  } catch ( Exception err ) { // システムエラーを捕捉
    BLCException blcErr = BLCException.getUserException( err, 50001, new String [] { "arg1" } );
    throw blcErr;
  }
}