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

imuiTreeでドラッグ&ドロップのバリデーションを実装する方法

このCookBookでは、imuiTree (ツリービュー) のドラッグ&ドロップバリデーションについて紹介しています。 intra-mart Accel Platform では、画面上にツリーを表示 …

no image

祝日や会社の予定を設定したカレンダーを作成する

このCookbookでは、祝日や独自の予定を設定したカレンダーを活用する方法について紹介します。テナント管理者はカレンダーの作成、メンテナンスを行えます。また、テナントのデフォルトカレンダーを設定でき …

スプレッドシートでForma入力チェックユーザプログラムを利用して入力チェックを実行する方法

このCookBookでは、スプレッドシートでForma入力チェックユーザプログラムを利用して入力チェックを実行する方法について紹介しています。 Formaの入力チェックプログラムでは以下の2つのチェッ …

no image

【ViewCreator】検索にヒットした件数を取得する関数の作り方。

このCookBookでは、ViewCreatorで検索にヒットした件数を取得する関数の作り方についてご紹介します。 ユーザ定義関数についての詳細は下記のドキュメントを参照してください。 ViewCre …

IM-LogicDesignerを利用して、IM-Workflowの未処理案件の処理対象者を再展開する

このCookBookでは、IM-LogicDesignerを利用して、IM-Workflowの未処理案件の処理対象者を再展開する方法について紹介しています。 人事異動を重ねることで、未処理案件の中には …

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

RSSRSSRSSRSS