IM-PDFDesigner for Accel Platform プログラミングガイド 第22版 2024-04-01

6.2.3.1.2.3. PDFファイル出力(IODファイル結合)

IOIntegration クラスを使用し、中間ファイル(IODファイル)を結合後、PDFファイルを出力するタスクです。

構成 ユーザ定義
スタンドアローン構成 tutorial_application_ld_iointegration
分散構成 tutorial_application_ld_iointegration_rest
../../../../../_images/iointegration_1.png

6.2.3.1.2.3.1. 入力値

tutorial_application_ld_iointegration/tutorial_application_ld_iointegration_rest <object>
├─ iodFilesPath <string[]>
└─ outputPdfFilePath <string>
項目名 必須/任意 配列/リスト 説明
iodFilesPath 必須 string 配列 結合用IODファイルのパブリックストレージパス群
outputPdfFilePath 必須 string なし 出力PDFファイルのパブリックストレージパス

6.2.3.1.2.3.2. 出力値

tutorial_application_ld_iointegration/tutorial_application_ld_iointegration_rest <object>
├─ status <boolean>
└─ message <string>
項目名 配列/リスト 説明
status boolean なし
true:PDFファイル出力成功時
false:PDFファイル出力失敗時
message string なし
PDFファイル出力成功時:空文字
PDFファイル出力失敗時:エラーメッセージ

6.2.3.1.2.3.3. スクリプト

次は、ユーザ定義「tutorial_application_ld_iointegration」のスクリプトです。

コラム

ユーザ定義「tutorial_application_ld_iointegration_rest」のスクリプトの場合、17行目が次に変更となります。

const iointegration = new IOIntegrationRemote();

コラム

文書情報を設定する場合は、スクリプトの25、28行目のコメントを外してください。

コラム

セキュリティ情報を設定する場合は、スクリプトの31、35行目のコメントを外してください。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/**
 * run.
 *
 * @param input {Object} - task input data.
 * @return {Object} task result.
 */
function run(input) {

  try {
    if (!input.iodFilesPath) {
      throw new Error("IODファイルパス群にnullが指定されています。");
    }
    if (!input.outputPdfFilePath) {
      throw new Error("出力PDFファイルパスにnull、または、空文字が指定されています。");
    }

    const iointegration = new IOIntegration();

    /* 結合するIODファイルを追加 */
    input.iodFilesPath.forEach(function(iodFilePath) {
      iointegration.add(iodFilePath);
    });

    /* 文書情報を設定 */
    /* iointegration.defineTitle("タイトル");
    iointegration.defineSubTitle("サブタイトル");
    iointegration.defineAuthor("作成者");
    iointegration.defineApplication("アプリケーション"); */

    /* セキュリティ情報を設定 */
    /* iointegration.setOpenPassword("open");
    iointegration.setSecurityPassword("sec");
    iointegration.printSecurity("PRINT_DISABLE");
    iointegration.modifySecurity("MODIFY_DISABLE");
    iointegration.copySecurity("COPY_AND_ACCESSBILITY_DISABLE"); */

    /* PDFファイルを生成 */
    const result = iointegration.toPDF(input.outputPdfFilePath);

    if (result >= 0) {
      return {
        status: true,
        message: ""
      };
    } else {
      return {
        status: false,
        message: "ErrorCode[" + result + "] ErrorMessage[" + iointegration.getMessage() + "]"
      };
    }
  } catch (error) {
    return {
      status: false,
      message: error.message
    };
  }
}