CookBook

IM-FormaDesignerでアップロードしたExcelファイルの内容を画面上に出力する方法

投稿日:

このCookBookでは、IM-FormaDesignerでBISフローの申請画面にてアップロードしたExcelファイルの内容を承認画面にて出力する方法を紹介します。

完成イメージ

完成サンプル

以下の完成サンプルをダウンロードしてご活用ください。

IM-LogicDesigner インポート : im_cookbook_134784_logicdesigner-data.zip
・IM-LogicDesignerのインポート機能からインポートしてください。
・手順の詳細は、以下のドキュメントを参照してください
IM-LogicDesigner ユーザ操作ガイド / 8.1. インポートを行う

BIS一括インポート用ファイル : im_cookbook_134784_bis.zip
・BISの一括インポート機能からインポートしてください。
・手順の詳細は、以下のドキュメントを参照してください
IM-BIS システム管理者 操作ガイド / 4.9. 一括インポート・エクスポートを行う

Excelファイル : im_cookbook_134784_excel.xls
・アップロードするExcelファイルのサンプルです。

上記サンプルの利用条件は以下の通りです。

  • IM-BIS 2017 Winter(8.0.15)以降のバージョンであること。
  • サンプルデータのインポートが行われていること。

サンプルは、IM-BIS 2017 Winter(8.0.15)で動作確認を行っています。

レシピ

  1. BISフローを作成する。
  2. ユーザ定義(Excel入力定義)を作成する。
  3. ロジックフローを作成する。
  4. データソース定義を作成する。
  5. アイテムイベントを設定する。
  6. 作成したフォーム画面にて確認する。

1. BISフローを作成する。

以下の用途を想定して、BISフローを作成します。
【申請画面】
Excelファイルをアップロードします。
【承認画面】
アップロードしたExcelファイルの内容を画面に出力します。

以下のアイテムを配置した処理画面を作成してください。
【申請画面】
・ファイルアップロード
・ボタン(BISフロー登録)
【承認画面】
・ファイルアップロード
・ボタン(イベント)
・文字列
・数値
・グリッドテーブル

2.ユーザ定義(Excel入力定義)を作成する。

このCookBookで出力するExcelファイルの内容は以下の通りです。

出力するExcelファイルの内容に沿って入力定義を作成してください

① 単一セルの項目はセル出力定義に設定してください。
② 表部分は、行数分が出力されるように範囲指定出力定義に設定してください。

3.ロジックフローを作成する。

以下のエレメントを配置したロジックフローを作成します。
【エレメント】
・getFileId(ファイルアップロード情報取得)
・getFileData(ファイルアップロード情報取得)
・sessionStorage(セッションストレージ取得)
・writeBinaryToStorage(ストレージ出力(バイナリ))
・excelUpload(ユーザ定義(Excel入力定義))

3-1.入出力定義を設定します。
入力項目は、getFileIdエレメントとgetFileDataエレメントで使用するシステムパラメータを設定してください。
サンプルでは、システムパラメータを以下のように設定しています。

キー名 文字種
imfr_application_id string
imwUserDataId string
imfr_process_key string

出力項目は、Excelファイルを画面に出力する為のパラメータを設定してください。

3-2.定数を設定します。
セッションスコープストレージの場所を、定数で定義してください。

3-3.マッピング設定を行います。

3-3-1.getFileIdエレメント
ファイルIDを取得する為、applicationIdinsertIdprocessKey を以下のようにマッピング設定してください。

3-3-2.getFileDataエレメント
Excelファイルの内容(バイナリデータ)を取得する為、applicationIdfileIdinsertIdprocessKey を以下のようにマッピング設定してください。

3-3-3.sessionStorageエレメント
セッションスコープストレージを取得する為、3-2で設定した定数をマッピング設定してください。

3-3-4.writeBinaryToStorageエレメント
3-3-3で取得したセッションスコープストレージに、3-3-2で取得したExcelファイルの内容(バイナリデータ)を出力する為、以下のようにマッピング設定してください。

3-3-5.excelUploadエレメント
画面に出力するExcelファイルの内容を取得する為、以下のようにマッピング設定してください。

3-3-6.endエレメント
3-3-5で取得したExcelファイルの内容を、3-1で設定した入出力定義の出力項目にマッピング設定してください。

4.データソース定義を作成する。

レシピ3で作成したロジックフローを、LogicDesignerのデータソース定義として設定します。
設定の方法は、以下のドキュメントを参照してください。
IM-BIS システム管理者 操作ガイド / 「データソース - 編集[LogicDesigner]」画面の操作手順

5.アイテムイベントを設定する。

レシピ3-1の入出力定義で暗黙的に連携している為、リクエストタブの設定は必要ありません。
詳細は、以下のドキュメントを参照してください。
IM-BIS 仕様書 / 9.12. 暗黙的に連携するリクエストパラメータの仕様
レスポンスタブは、レシピ3-1で設定した入出力定義の出力項目に対して画面項目とのマッピング設定してください。

6.作成したフォーム画面にて確認する。

作成した申請画面でExcelファイルをアップロードして、承認画面でEventボタンをクリックしてください。
アップロードしたExcelファイルの内容が、各画面アイテムに出力されます。

-CookBook
-,

執筆者:


comment

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

関連記事

no image

後処理プログラムで画面アイテム「ファイルアップロード」にバリデーションを実行する方法

このCookbookでは、画面アイテム「ファイルアップロード」に添付されたファイルをバリデーションする方法を紹介します。 後処理プログラムを使用してバリデーションを実行することで、画面に表示するエラー …

no image

IMBox に投稿種別を追加する方法(Markdown)

このCookBookでは、IMBoxに投稿種別を追加する方法について紹介しています。 以下のドキュメントを参照することで、IMBox に投稿種別を追加することができます。 IMBox プログラミングガ …

no image

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

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

no image

画面にインジケータ(ロード中のアイコン)を表示する

任意の処理を行った際にインジケータを表示する方法をご紹介します。 インジケータは、アイコンを用いて任意の処理中であること(ロード中であること)を画面に表示します。 インジケータを利用することで、任意の …

no image

ワークスペースとToDo機能との連携

このCookBookでは、「intra-mart Accel Collaboration」の機能の1つであるワークスペースと「intra-mart Accel Collaboration」のToDo機 …

まだデータがありません。

RSSRSSRSSRSS