CookBook

スプレッドシートを実行画面でExcelファイルとしてエクスポートする方法

投稿日:

このCookBookでは、スプレッドシートを実行画面でExcelファイルとしてエクスポートする方法について紹介しています。
IM-FormaDesignerの実行画面から直接、画面アイテム「スプレッドシート」をExcelファイルとしてエクスポートすることが可能になります。

完成イメージ


1. 実行画面を開きます。
2. ファイル名を入力します。
3. 出力ボタンを押下し、ブラウザのダウンロードダイアログが表示されます。

完成サンプル

以下の完成サンプルをダウンロードしてご活用ください。
なお、以下のサンプルはintra-mart Accel Platform 2019 Springの環境を利用して作成したものです。
2019 Springより前のバージョンでは正常に動作しない可能性があります。

IM-Spreadsheet Option for Accel Platformモジュールのバージョンは8.0.3です。
上記製品内のSpreadJSバージョンは12.0.7です。

ローカル環境で表示させる場合は、以下のURLにアクセスしてください。
http://localhost:8080/imart/forma/normal/view/regist_application_view/155266_spread_export
なおベースURLである以下の部分は、環境に合わせて適宜変更してください。
http://localhost:8080/imart

完成サンプルをご利用の際は、利用するユーザのロールに「Formaアプリ作成者」を設定してください。

レシピ

  1. テンプレートHTMLを編集する。
  2. 実行画面を作成する。
  3. スクリプトを作成する。

1. テンプレートHTMLを編集する。

IM-FormaDesignerのアプリケーションが実行される画面は、テンプレートHTMLというベースとなるHTMLファイル上に、各画面アイテムのHTMLが配置されて生成される仕組みになっています。

Excel出力機能を利用するために、必要なライブラリを定義しておく必要があります。

  • 以下のテンプレートファイルをカスタマイズします。

  • Excel出力機能に必要なライブラリを、template.htmlのヘッダーに追記します。

※SpreadJSバージョン12.0.7のライブラリを使用してます。利用されているバージョンに合わせてライブラリのパスを変更してください。

2. 実行画面を作成する。

IM-FormaDesignerの標準アプリケーションを作成します。

デザイナ上に以下の画面アイテムを配置します。

  • スプレッドシート
  • 文字列
  • ボタン(イベント)

3. スクリプトを作成する。

画面アイテム「スプレッドシート」をExcelとしてエクスポートするスクリプトを作成します。

  • 画面アイテム「ボタン(イベント)」のプロパティにある「スクリプト」タブに以下のスクリプトを記述します。

%フィールド識別ID%には、画面アイテム「文字列」のフィールド識別IDを記述します。
%スプレッドシートID%には、画面アイテム「スプレッドシート」のスプレッドシートIDを記述します。

以上で、実行画面からExcelファイルが簡単にエクスポートできるようになりました。

今回のようにSpreadJSのライブラリを使うことでIM-Spreadsheetに対し、様々な開発が可能になります。

※SpreadJSのライブラリはIM-FormaDesignerとしての出力物を調整したりするものではありません。
SpreadJSライブラリについては以下のGrapeCity社のマニュアルを参照してください。
SpreadJS

-CookBook
-,

執筆者:


comment

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

関連記事

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

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

処理モーダルで差戻先ノードを固定する

このCookBookでは、ボタンアイテム(処理モーダル)において、差戻先ノードを固定する方法を紹介します。 完成イメージ ノード「approve2」の差戻先ノードをノード「apply」に固定する。 処 …

no image

ジョブを作成して定期実行する

このCookBookでは、以下の開発モデルでジョブを作成する方法と、作成したジョブを指定した時刻に定期実行する方法を紹介します。 ・スクリプト開発モデル ・JavaEE開発モデル いずれのモデルでもジ …

no image

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

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

no image

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

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

RSSRSSRSSRSS