CookBook

設計書出力に任意のシートを追加する方法

投稿日:2017-11-30 更新日:

このCookBookでは、BIS設計書出力機能で出力できるIM-Workflowフロー設計書およびBISフロー設計書に任意のシートを出力する方法について紹介しています。

完成イメージ


1. IM-BIS/IM-Workflow設計書出力一覧画面を表示してください。
2. 出力した設計書にフロー画像シートが追加されていることを確認してください。

完成サンプル

以下の完成サンプルをダウンロードしてご活用ください。
サンプルは英語ロケールユーザの出力のみに対応しています。

e builder プロジェクト : im_cookbook_126918_bis_design_document_flow_image.zip
imm ファイル : im_cookbook_126918_bis_design_document_flow_image-1.0.0.imm

レシピ

  1. シート出力を行う実装クラスを用意する
  2. 作成した実装クラスを製品の設計書出力実行クラスで読み込ませるようにする設定ファイルを用意する
  3. テンプレートExcelファイルにフロー画像シートを追加する

1. シート出力を行う実装クラス(以降「独自クラス」と称します。)を用意する

公開APIのインタフェースを実装したクラスを作成し、必要な処理を記述してください。
実装するインタフェースは出力対象の設計書ごとに異なります。

  1. 独自クラスにインタフェースを実装してください。
    • IM-Workflowフロー設計書のみに出力したい場合
      ImwFlowDocumentSheetExporter
    • BISフロー設計書のみに出力したい場合
      BisFlowDocumentSheetExporter
    • IM-WorkflowおよびBISフロー設計書に出力したい場合
      上記双方のインタフェースを実装してください。
  2. インタフェースから継承されたメソッドを実装してください。
    • execute
      シート出力の実行処理を記述してください。サンプルでは大きく分けて以下2つの処理を行っています。

      • フローID,フロー名の取得およびシートへの出力
      • フロー画像の取得およびシートへの出力
    • getSheetName
      テンプレートExcelファイルのシート名を取得します。
      シート名は設計書出力実行ユーザのロケールで解決してください。

2. 作成した実装クラスを製品の設計書出力実行クラスで読み込ませるようにする設定ファイルを用意する

製品のフロー設計書出力実行クラスではサービスローダによってシート出力を実行するクラスを取得しています。
今回追加する独自クラスを製品処理で読み込ませるためにサービスローダの設定ファイルを追加してください。
ファイル名は出力対象の設計書ごとに異なります

  • IM-Workflowフロー設計書に出力したい場合
    1. 以下のパスでファイルを作成してください。
      META-INF/services/jp.co.intra_mart.foundation.bis.documents.flow.ImwFlowDocumentSheetExporter
    2. ファイルには作成した独自クラスのパッケージを含めたフルパスを記述してください。
  • BISフロー設計書に出力したい場合
    1. 以下のパスでファイルを作成してください。
      META-INF/services/jp.co.intra_mart.foundation.bis.documents.flow.BisFlowDocumentSheetExporter
    2. ファイルには作成した独自クラスのパッケージを含めたフルパスを記述してください。
  • IM-WorkflowおよびBISフロー設計書に出力したい場合
    1. 上記双方の手順を実施してください。

3. テンプレートファイルにフロー画像シートを追加する

テンプレートファイルの場所は IM-BIS仕様書 を参照してください。

シート名は独自クラスで定義したメソッド「getSheetName」で取得できる値に一致する名称にしてください。

-CookBook
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

画面UI部品(imuiValidate)のバリデーションメッセージを任意の場所に表示する方法

このCookBookでは、画面UI部品のバリデーションメッセージを任意の場所に表示する方法について紹介しています。 intra-mart Accel Platform では、画面上に配置したUI部品の …

no image

intra-mart WebPlatform の access.log に X-Forwarded-For を出力する方法。

この CookBook では、intra-mart WebPlatform の access.log に X-Forwarded-For を出力する方法について紹介しています。 フロントに Web サ …

no image

Web サーバで Cookie に SameSite=None; Secure 属性を追加する方法

ブラウザの仕様変更により、クロスドメインアクセスにおける Cookie の扱いに変更がありました。 Google Chrome では バージョン 80 以降、SameSite 属性が宣言されていない …

IM-LogicDesignerを利用して、IM-Workflowの到達処理で任意の参照者を追加する方法

このCookBookでは、LogicDesignerを利用して、IM-Workflowの到達処理で任意の参照者を追加する方法について紹介しています。 承認ノードの到達処理で、申請者を参照者として登録し …

BloomMakerでワークフロー処理モーダルと動的処理対象者設定機能を利用してWorkflowコンテンツを作成する

このCookBookでは、BloomMakerで、ワークフロー処理モーダルと動的処理対象者設定機能を利用したWorkflowのコンテンツを作成する方法を紹介します。 本稿では、BloomMakerでワ …