CookBook

IM-PDFAutoConverterを使ってIM-LogicDesignerでファイルをPDFに変換する方法

投稿日:

このCookBookでは、IM-LogicDesignerのJavaScript定義で、IM-PDFAutoConverter for Accel PlatformのAPIを使用したPDF変換について紹介しています。

#note { padding: 20px; background-color: #dbf1f8; margin-bottom: 20px; } #warning { padding: 20px; background-color: #fcefdc; margin-bottom: 20px; }
注意
本サンプルは、IM-PDFAutoConverter for Accel Platform 2022Winter以降のバージョンが必要です。

完成イメージ

このCookBookのレシピ通りに実行し変換したPDFファイルの完成イメージは、以下の通りです。

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

https://dev.intra-mart.jp/wp-content/uploads/2023/02/cookbook_im_cookbook_8004-1.0.0.zip

immファイルを適用すると、パブリックストレージ配下に、サンプル実行に必要な以下のファイルが設置されます。

フォルダ名/ファイル名説明
%PUBLIC_STORAGE_PATH%パブリックストレージパス
  im_cookbook_8004 / pdfa_logic /IM-LogicDesigner PDF変換サンプル用フォルダ
   import / im_cookbook_8004.zipPDF変換用ユーザ定義、フロー定義をまとめたzipファイル
    data / sample.docxPDF変換サンプル用のdocxファイル

zipファイル< im_cookbook_8004.zip >を、IM-LogicDesignerのインポート画面からインポートしてください。
本サンプルのユーザ定義(JavaScript定義)では、IM-PDFAutoConverter for Accel Platformのスクリプト開発モデル用APIを使用しています。
ユーザ定義の詳細については「ユーザ定義タスク」、サンプル内で使用しているAPIについては「API」を参照してください。

レシピ

  1. サンプルのフロー定義のデバッグ画面を開く
  2. 入力値を設定し、デバッグを実行する
  3. 実行結果を確認する

1. サンプルのフロー定義のデバッグ画面を開く

・「サイトマップ」-「LogicDesigner」-「フロー定義一覧」をクリックします。

 
・「フローカテゴリ CookBook」-「im_cookbook_8004_flow」を選択し、「編集」ボタンをクリックします。

・「デバッグ」ボタンをクリックします。


2.入力値を設定し、デバッグを実行する

・「実行」ボタンをクリックします。

・「inputFilePath」に変換対象ファイル、「outputFilePath」に出力ファイルのパブリックストレージパスを設定し、「実行」ボタンをクリックします。
設定例は以下の通りです。

変数
inputFilePathim_cookbook_8004/pdfa_logic/data/sample.docx
outputFilePathim_cookbook_8004/pdfa_logic/data/out.pdf

#note { padding: 20px; background-color: #dbf1f8; margin-bottom: 20px; } #warning { padding: 20px; background-color: #fcefdc; margin-bottom: 20px; }
コラム
ユーザ定義の入出力値については「ユーザ定義タスク」を参照してください。
#note { padding: 20px; background-color: #dbf1f8; margin-bottom: 20px; } #warning { padding: 20px; background-color: #fcefdc; margin-bottom: 20px; }
コラム
設定例の「inputFilePath」には、パブリックストレージ配下に設置されたPDF変換サンプル用のdocxファイルを指定しています。

・「決定」ボタンをクリックします。

・ デバッグが開始されます。
正常にデバッグが終了した場合、その旨のメッセージが表示され、変数情報ペイン、および、コンソールペインが更新されます。

3.実行結果を確認する

・「outputFilePath」に指定した出力先に、PDFファイルが出力されていることを確認します。


PDFの変換処理に失敗した場合は、デバッグ実行時のユーザ定義の返却値「status」、および、「message」を確認してください。

以上で、全ての手順は終了です。

ユーザ定義タスク

im_cookbook_8004_user

・入力値 

im_cookbook_8004_user <object>
├─ inputFilePath <string>
└─ outputFilePath <string>

項目名必須/任意配列/リスト説明
inputFilePath必須stringなしPDF変換対象ファイルのパブリックストレージパス
outputFilePath必須stringなしPDF変換出力ファイルのパブリックストレージパス

・ 出力値

im_cookbook_8004_user <object>
├─ status <boolean>
└─ message <string>

項目名配列/リスト説明
statusbooleanなしtrue:PDF変換成功時
false:PDF変換失敗時
messagestringなしPDF変換成功時:空文字
PDF変換失敗時:エラーメッセージ

スクリプトサンプル内で使用しているAPIについては「API」を参照してください。

API

サンプル内で使用しているAPIについて示します。

1. IMPDFAutoConverter

IMPDFAutoConverterクラスの詳細については、「PDFAutoConverter APIドキュメント スクリプト開発モデル」を参照してください。

#note { padding: 20px; background-color: #dbf1f8; margin-bottom: 20px; } #warning { padding: 20px; background-color: #fcefdc; margin-bottom: 20px; }
コラム
文書情報を設定する場合は、スクリプトの27、32行目のコメントを外してください。
#note { padding: 20px; background-color: #dbf1f8; margin-bottom: 20px; } #warning { padding: 20px; background-color: #fcefdc; margin-bottom: 20px; }
コラム
セキュリティ情報を設定する場合は、スクリプトの35、41行目のコメントを外してください。
#note { padding: 20px; background-color: #dbf1f8; margin-bottom: 20px; } #warning { padding: 20px; background-color: #fcefdc; margin-bottom: 20px; }
注意
IMPDFAutoConverter.setPrinter(name)の引数の値は、PDFコンバータのプリンタ名に合わせて変更してください。デフォルトのプリンタ名は「YSS PDF Converter XP」です。

2. PdfaTempFiles

サンプル用の一時ファイルを操作するクラスです。

注意

本クラスは公開されているAPIではなく、サンプル用に用意したロジックになります。
そのため、サンプル用のimmファイルを適用していない場合、本クラスは使用できません。

Constructor

new PdfaTempFiles()

インスタンスオブジェクトを作成します。

Returns

生成されたインスタンスオブジェクト

Methods

・create(ext)

空のファイルを作成します。

NameTypeDescription
extStringファイル名を生成するために使用される接尾辞文字列(※1

※1:null、または、未指定時は、".tmp" が使用されます。

Returns

新規作成された空のファイルを示すFileオブジェクト

・copyFrom(srcFilePath, ext)

指定したファイルをコピーし、コピー先のファイルを返します。

Parameters

NameTypeDescription
srcFilePathStringコピー元の対象ファイルのパブリックストレージパス
extStringコピー先のファイル名を生成するために使用される接尾辞文字列(※1

※1:null、または、未指定時は、".tmp" が使用されます。

Returns

コピー先ファイルを示すFileオブジェクト

copyTo(tempFile, destFilePath)

指定したファイルを、指定先へコピーします。

Parameters

NameTypeDescription
tempFileFileコピー元の対象ファイル
destFilePathStringコピー先の対象ファイルのパブリックストレージパス

close()

一時ファイルを削除し、一時ファイルに関する操作を終了します。

-CookBook

執筆者:


comment

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

関連記事

no image

BloomMaker 入力規則エラーメッセージエレメントの使い方

このCookBookでは、Accel Platform 2021 Springで追加されたエレメント「入力規則エラーメッセージ」について紹介しています。 「入力規則エラーメッセージ」は、指定した変数に …

no image

CookBookからダウンロードしてきたプロジェクトのインポート方法

このCookBookでは、他のCookBookからダウンロードしてきたe Builderのモジュール・プロジェクトのインポートについて紹介しています。 プロジェクトをインポートし、プロジェクトの設定を …

no image

データ参照表示時のページへのアクセス権を認可で制御する方法

この CookBook では、ViewCreator の「データ参照」表示時のアクセス権を認可で制御する方法について紹介しています。 データ参照の参照権では、その定義を利用してデータを見ることができる …

no image

ViewCreatorの計算式で日付データを操作する例

ViewCreatorを利用するとデータベース等に格納されているデータを簡単に画面に表示することが出来ます。 ViewCreatorについて – intra-mart Accel Platform V …

no image

IM-BloomMaker ページネーションの利用方法

この CookBook では、2020 summer でリリースした コンテンツ種別「Bulma」 の 「ページネーション」エレメントについて紹介しています。 「ページネーション」エレメントとは、表示 …