PDFGenerationAPI:スコープ対象、グローバル

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:83分
  • PDFGenerationAPI は、PDF 変換と PDF フィールドの処理をサポートします。

    この API は ServiceNow PDF 生成ユーティリティプラグイン (com.snc.apppdfgenerator) の一部であり、 sn_pdfgeneratorutils 名前空間内で提供されます。このプラグインはデフォルトでアクティブ化されています。

    glide.pdf.url.whitelist プロパティを使用して検証レイヤーを追加し、導入された外部 URL を生成された PDF に含めるかどうかを確認します。システムプロパティ glide.pdf.url.whitelisting.enabled が true に設定されている場合、com.snc.pdf.whitelisted_urls システムプロパティの [値] フィールドにリストされていない限り、PDF は URL コンテンツを処理しません。これらのプロパティは、システムプロパティ [sys_properties] テーブルにリストされます。 詳細については、「Available system properties」を参照してください。

    注:
    PDF の最大サイズは 50 MB です。
    このクラスのメソッドは、次のタスクを有効にします。
    注:
    これらのメソッドは、カタログ以外のアイテムによって作成されたドキュメントにも使用できます。

    PDFGenerationAPI – PDFGenerationAPI()

    新しい PDFGenerationAPI オブジェクトをインスタンス化します。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし

    次の例は、 PDFGenerationAPI オブジェクトの作成方法を示しています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;

    PDFGenerationAPI – convertToPDF(String html, String targetTable, String targetTableSysId, String pdfName, String fontFamilySysId, Object documentConfiguration)

    HTML 文字列を PDF ドキュメントに変換します。

    この方法では、ページサイズ A4 – 595 × 842 ポイントを使用して PDF を作成します。このサイズを超えると、コンテンツは切り捨てられます。

    ページ サイズ、向き、ページ番号などの追加設定を使用して PDF を生成するには、 convertToPDFWithHeaderFooter() を使用します。

    表 : 2. パラメーター
    名前 タイプ 説明
    html 文字列 PDF ドキュメントに変換する HTML。
    targetTable 文字列 変換された PDF を添付するテーブルの名前
    targetTableSysId 文字列 変換された PDF を添付するレコードのSys_id。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    fontFamilySysId 文字列 オプション。PDF に使用するフォントファミリのSys_id。このsys_idは、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。

    デフォルト:none

    ドキュメント構成 オブジェクト オプション。目次の構成とページ番号の構成を含むオブジェクト。
    {​
       "accessibilityEnabled" : Boolean,
       "toc_config" : "String",​
       "page_number_config": "String"​
    }​
    documentConfiguration.accessibilityEnabled ブーリアン オプション。アクセシビリティをサポートするために、生成された PDF をフォーマットするかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用できるようになり、ユーザーはスクリーンリーダーを使用して、生成された PDF ドキュメントをナビゲート、理解、操作できるようになります。
    有効な値:
    • true:生成された PDF はアクセシビリティを考慮してフォーマットされます。
    • false:生成された PDF はアクセシビリティ用にフォーマットされていません。

    デフォルト値:False

    documentConfiguration.toc_config 文字列 オプション。PDF に使用する目次構成のSys_id。このsys_idは、目次の構成 [doc_toc_config] テーブルからのものです。

    デフォルト:none

    documentConfiguration.page_number_config 文字列 オプション。PDF に使用するページ番号構成のSys_id。このsys_idは、ページ番号構成 [doc_page_number_config] テーブルからのものです。

    デフォルト:none

    表 : 3. 返される内容
    タイプ 説明
    オブジェクト 変換が成功した場合は PDF 添付ファイルのsys_idを含むオブジェクト。それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "request_id": "String",
      "status": "String"
    }
    <Object>.​attachment_id HTML 変換に成功した場合、変換されて添付された PDF のsys_id。ファイルは添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • 変換に失敗しました。– PDF は作成されていません。指定された値が正確であることを確認してください。
    • 変換に成功しました。– HTML が PDF に正常に変換されました。
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。
    • <URL> がホワイトリスト登録された URL にリストされていません。URL ホワイトリストプロパティ「glide.pdf.url.whitelisting.enabled」および「com.snc.pdf.whitelisted_urls」を確認してください。 システムプロパティ glide.pdf.url.whitelisting.enabled が true に設定されている場合、com.snc.pdf.whitelisted_urls システムプロパティの [値] フィールドにリストされていない限り、PDF は URL コンテンツを処理しません。これらのプロパティは、システムプロパティ [sys_properties] テーブルにリストされます。

    データタイプ:文字列

    <Object>.request_id 変更プロデューサー要求レコードのSys_id。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、HTML を PDF に変換してインシデント [incident] テーブルのレコードに添付する方法を示しています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    
    //  (Option) get HTML from the description field of an incident record
    var gr = new GlideRecord("incident");
    var html;
    
    if (gr.get("<tableSysId>")) {
     html = gr.description.toString();
    }
    
    var result = v.convertToPDF(html, "incident", "<target_sys_id>", "myPDF");
    gs.info(JSON.stringify(result));

    出力:

    {"attachment_id":"<sys_id>","message":"Conversion is successful.","request_id":"<change_sys_id>","status":"success"}

    PDFGenerationAPI – convertToPDFAsync(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, 文字列 fontFamilySysId, オブジェクト documentConfiguration)

    HTML 文字列を PDF ドキュメントに非同期で変換するジョブをステージングします。非同期処理を使用すると、PDF 変換の進行中にインスタンスで作業できます。これは、大規模な PDF のエクスポートに特に役立ちます。

    この API は、ページサイズ A4 – 595 × 842 ポイントを使用して PDF を作成します。このサイズを超えると、コンテンツは切り捨てられます。

    ページ サイズ、向き、ページ番号などの追加設定を使用して PDF を生成するには、 convertToPDFWithHeaderFooterAsync() を使用します。

    表 : 4. パラメーター
    名前 タイプ 説明
    html 文字列 PDF ドキュメントに変換する HTML。
    targetTable 文字列 変換された PDF を添付するテーブルの名前
    targetTableSysId 文字列 変換された PDF を添付するレコードのSys_id。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    fontFamilySysId 文字列 オプション。PDF に使用するフォントファミリのSys_id。このsys_idは、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。

    デフォルト:none

    ドキュメント構成 オブジェクト オプション。目次の構成とページ番号の構成を含むオブジェクト。
    {​
       "accessibilityEnabled" : Boolean,
       "toc_config" : "String",​
       "page_number_config": "String"​
    }​
    documentConfiguration.accessibilityEnabled ブーリアン オプション。アクセシビリティをサポートするために、生成された PDF をフォーマットするかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用できるようになり、ユーザーはスクリーンリーダーを使用して、生成された PDF ドキュメントをナビゲート、理解、操作できるようになります。
    有効な値:
    • true:生成された PDF はアクセシビリティを考慮してフォーマットされます。
    • false:生成された PDF はアクセシビリティ用にフォーマットされていません。

    デフォルト値:False

    documentConfiguration.toc_config 文字列 オプション。PDF に使用する目次構成のSys_id。このsys_idは、目次の構成 [doc_toc_config] テーブルからのものです。

    デフォルト:none

    documentConfiguration.page_number_config 文字列 オプション。PDF に使用するページ番号構成のSys_id。このsys_idは、ページ番号構成 [doc_page_number_config] テーブルからのものです。

    デフォルト:none

    表 : 5. 返される内容
    タイプ 説明
    オブジェクト PDF 変換が進行中かどうかを示すオブジェクト。変換ステータスは、PDF 生成ステータス [sys_pdf_generation_status] テーブルで確認できます。
    {
      "message": "String",
      "request_id": "String"
    }
    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • HTML から PDF への変換が進行中です。– HTML から PDF ドキュメントへの変換要求が成功しました。
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。
    • <URL> がホワイトリスト登録された URL にリストされていません。URL ホワイトリストプロパティ「glide.pdf.url.whitelisting.enabled」および「com.snc.pdf.whitelisted_urls」を確認してください。 システムプロパティ glide.pdf.url.whitelisting.enabled が true に設定されている場合、com.snc.pdf.whitelisted_urls システムプロパティの [値] フィールドにリストされていない限り、PDF は URL コンテンツを処理しません。これらのプロパティは、システムプロパティ [sys_properties] テーブルにリストされます。

    データタイプ:文字列

    <Object>.request_id 変更プロデューサー要求レコードのSys_id。

    データタイプ:文字列

    次の例は、HTML を PDF に変換するタスクをキューに入れる方法を示しています。変換が完了すると、「myPDF」という名前の PDF がインシデント [incident] テーブルのターゲットレコードに添付されます。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    
    //  (Option) get HTML from the description field of an incident record
    var gr = new GlideRecord("incident");
    var html;
    
    if (gr.get("<tableSysId>")) {
     html = gr.description.toString();
    }
    
    var result = v.convertToPDFAsync(html, "incident", "<target_sys_id>", "myPDF");
    gs.info(JSON.stringify(result));

    出力:

    {"message":"HTML to PDF Conversion is in progress.","request_id":"<sys_id>"}

    PDFGenerationAPI – convertToPDFWithHeaderFooter(文字列 html、文字列 targetTable、文字列 targetTableSysId、文字列 pdfName、オブジェクト headerFooterInfo、文字列 fontFamilySysId、オブジェクト documentConfiguration)

    HTML 文字列をヘッダーとフッターのコンテンツを含む PDF に変換します。

    ページ設定で PDF を生成するには、次の方法を使用します。
    • ヘッダーとフッターの情報
    • マージンサイズ
    • 向き
    • 列挙
    • ページサイズ
    表 : 6. パラメーター
    名前 タイプ 説明
    html 文字列 PDF ドキュメントに変換する HTML。
    targetTable 文字列 変換された PDF を添付するテーブルの名前
    targetTableSysId 文字列 変換された PDF を添付するレコードのSys_id。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    ヘッダーフッター情報 オブジェクト PDF のヘッダーとフッターの詳細を定義します。
    {
      "FooterImageAlignment": "String",
      "FooterImageAttachmentId": "String",
      "FooterImageHeight": "String",
      "FooterText": "String",
      "FooterTextAlignment": "String",
      "GeneratePageNumber": "String",
      "HeaderImageAlignment": "String",
      "HeaderImageAttachmentId": "String",
      "HeaderImageHeight": "String",
      "LeftOrRightMargin": "String",
      "PageOrientation": "String",
      "PageSize": "String",
      "TopOrBottomMargin": "String"
    }
    headerFooterInfo。フッターイメージアライメント 文字列 フッター内の画像位置を設定します。
    有効な値:
    • BOTTOM_CENTER:フッターの中央下に画像を配置します。
    • BOTTOM_LEFT:フッターの左下に画像を配置します。
    • BOTTOM_RIGHT:フッターの右下の領域に画像を配置します。
    • TOP_CENTER:フッターの上部中央に画像を配置します。
    • TOP_LEFT:フッターの左上に画像を配置します。
    • TOP_RIGHT:フッターの右上の領域に画像を配置します。
    headerFooterInfo。フッターイメージ添付 ID 文字列 添付ファイル [sys_attachment] テーブル内のフッターイメージのSys_id。 ファイルタイプがインスタンスでサポートされているかどうかを判断するには、[ システムのプロパティ]、[ セキュリティ] に移動し、[ 添付できるファイル拡張子のリスト (カンマ区切り形式)] フィールドにそのファイルタイプが表示されているかどうかを確認します。
    headerFooterInfo。フッターイメージの高さ 文字列 フッター画像の高さ。

    デフォルト:50 ポイント

    headerFooterInfo。フッターテキスト 文字列 各 PDF ページの下部に配置するフッターテキスト。
    headerFooterInfo。フッターテキストアライメント 文字列 フッター内のテキスト位置を設定します。この値が headerFooterInfo.FooterImageAlignment で指定された領域と一致したり、競合したりしないことを確認してください。
    有効な値:
    • BOTTOM_CENTER:フッターの中央下にテキストを配置します。
    • BOTTOM_LEFT:フッターの左下領域にテキストを配置します。
    • BOTTOM_RIGHT:フッターの右下にテキストを配置します。
    • TOP_CENTER:テキストをフッターの上部中央に配置します。
    • TOP_LEFT:フッターの左上にテキストを配置します。
    • TOP_RIGHT:フッターの右上の領域にテキストを配置します。
    headerFooterInfo。ページ番号を生成 文字列 PDF のページ番号を生成するかどうかを示すフラグ。
    有効な値:
    • true:ページ番号を生成します。
    • false:ページ番号を生成しません。

    デフォルト:true

    headerFooterInfo。ヘッダーイメージ配置 文字列 ヘッダー内の画像位置を設定します。
    有効な値:
    • 中央:ヘッダーの中央に画像を配置します。
    • left:ヘッダーの左側に画像を配置します。
    • 右:ヘッダーの右側に画像を配置します。
    headerFooterInfo。ヘッダーイメージ添付 ID 文字列 添付ファイル [sys_attachment] テーブル内のヘッダー画像のSys_id。 ファイルタイプがインスタンスでサポートされているかどうかを判断するには、[ システムのプロパティ]、[ セキュリティ] に移動し、[ 添付できるファイル拡張子のリスト (カンマ区切り形式)] フィールドにそのファイルタイプが表示されているかどうかを確認します。
    headerFooterInfo。ヘッダーイメージ高さ 文字列 ヘッダー画像の高さ。

    デフォルト:50 ポイント

    headerFooterInfo。左または右マージン 文字列 左右のマージンのサイズ。ページの左側または右側に配置されている場合、ヘッダー/フッターの詳細はこの領域内に配置されます。

    デフォルト:36 ポイント

    headerFooterInfo。ページオリエンテーション 文字列 ページの向き。
    有効な値:
    • 縦向き
    • 横向き

    デフォルト:縦向き

    headerFooterInfo。ページサイズ 文字列 ドキュメントのページサイズ。
    有効な値:
    • A4 – 595 × 842 ポイント
    • レター – 612 × 792 ポイント
    • 元帳 – 792 x 1224 ポイント

    ページサイズを超えると、コンテンツは切り捨てられます。

    headerFooterInfo。TopOrBottomMargin 文字列 上下のマージンのサイズ。ヘッダーとフッターの詳細はこの領域に配置されます。

    デフォルト:72 ポイント

    fontFamilySysId 文字列 オプション。PDF に使用するフォントファミリのSys_id。このsys_idは、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。

    デフォルト:none

    ドキュメント構成 オブジェクト オプション。目次の構成とページ番号の構成を含むオブジェクト。
    {​
       "accessibilityEnabled" : Boolean,
       "toc_config" : "String",​
       "page_number_config": "String"​
    }​
    documentConfiguration.accessibilityEnabled ブーリアン オプション。アクセシビリティをサポートするために、生成された PDF をフォーマットするかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用できるようになり、ユーザーはスクリーンリーダーを使用して、生成された PDF ドキュメントをナビゲート、理解、操作できるようになります。
    有効な値:
    • true:生成された PDF はアクセシビリティを考慮してフォーマットされます。
    • false:生成された PDF はアクセシビリティ用にフォーマットされていません。

    デフォルト値:False

    documentConfiguration.toc_config 文字列 オプション。PDF に使用する目次構成のSys_id。このsys_idは、目次の構成 [doc_toc_config] テーブルからのものです。

    デフォルト:none

    documentConfiguration.page_number_config 文字列 オプション。PDF に使用するページ番号構成のSys_id。このsys_idは、ページ番号構成 [doc_page_number_config] テーブルからのものです。

    デフォルト:none

    表 : 7. 返される内容
    タイプ 説明
    オブジェクト 変換が成功した場合は PDF 添付ファイルのsys_idを含むオブジェクト。それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "request_id": "String",
      "status": "String"
    }
    <Object>.​attachment_id HTML 変換に成功した場合、変換されて添付された PDF のsys_id。ファイルは添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.​メッセージ 成功またはエラーを確認するメッセージ。
    可能な値:
    • 変換に失敗しました。– PDF は作成されていません。指定された値が正確であることを確認してください。
    • 変換に成功しました。– HTML が PDF に正常に変換されました。
    • フッター画像の配置とテキストの配置を同じ配置の同じ領域に配置することはできません:<footerImageAlignment 値> - headerFooterInfo.​FooterImageAlignment 値と headerFooterInfo.​FooterTextAlignment 値が同じ領域にないことを確認します。
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • フッター画像の配置が無効です:<invalid_option>が指定されています。: headerFooterInfo.​FooterImageAlignment プロパティに有効なオプションを指定します。
    • フッターテキストの配置が無効です:「+ <invalid_option> +」が指定されました。: headerFooterInfo.​footerTextAlignment プロパティに有効なオプションを指定します。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • フッター画像を取得できません。sysId:+ <値が指定されました>: headerFooterInfo.​footerImageId に指定されたsys_idが正確であることを確認します。
    • ヘッダーイメージを取得できません。sysId:+ <値が指定されました>: headerFooterInfo.​headerImageId に指定されたsys_idが正確であることを確認します。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。
    • <URL> がホワイトリスト登録された URL にリストされていません。URL ホワイトリストプロパティ「glide.pdf.url.whitelisting.enabled」および「com.snc.pdf.whitelisted_urls」を確認してください。 システムプロパティ glide.pdf.url.whitelisting.enabled が true に設定されている場合、com.snc.pdf.whitelisted_urls システムプロパティの [値] フィールドにリストされていない限り、PDF は URL コンテンツを処理しません。これらのプロパティは、システムプロパティ [sys_properties] テーブルにリストされます。

    データタイプ:文字列

    <Object>.request_id 変更プロデューサー要求レコードのSys_id。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、HTML を「myPDF」という名前の PDF に変換し、その PDF をインシデント [incident] テーブルのレコードに添付ファイルとして追加する方法を示しています。PDF には、添付ファイルで提供されるヘッダーとフッターが含まれています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    
    //  (Option) get HTML from the description field of an incident record
    var gr = new GlideRecord("incident");
    var html;
    
    if (gr.get("<tableSysId>")) {
     html = gr.description.toString();
    }
    
    var hfInfo = new Object();
    hfInfo["HeaderImageAttachmentId"] = "<hdrImgAttSysId>";
    hfInfo["HeaderImageAlignment"] = "left";
    hfInfo["FooterImageAttachmentId"] = "<ftrImgAttSysId>";
    hfInfo["FooterImageAlignment"] = "TOP_CENTER";
    hfInfo["FooterText"] = "Sample Footer Message";
    hfInfo["PageSize"] = "A4";
    hfInfo["GeneratePageNumber"] = "false";
    hfInfo["TopOrBottomMargin"] = "36";
    hfInfo["LeftOrRightMargin"] = "24";
    
    var result = v.convertToPDFWithHeaderFooter(html, "incident", "<targetTbl_sys_id>", "myPDF", hfInfo);
    gs.info(JSON.stringify(result));

    出力:

    {"attachment_id":"<sys_id>","message":"Conversion is successful.","request_id":"<change_sys_id>","status":"success"}

    PDFGenerationAPI – convertToPDFWithHeaderFooterAsync(文字列 html、文字列 targetTable、文字列 targetTableSysId、文字列 pdfName、オブジェクト headerFooterInfo、文字列 fontFamilySysId、オブジェクト documentConfiguration)

    HTML 文字列をヘッダーとフッターのコンテンツを含む PDF に非同期で変換するジョブをステージングします。非同期処理を使用すると、PDF 変換の進行中にインスタンスで作業できます。これは、大規模な PDF のエクスポートに特に役立ちます。

    ページ設定で PDF を生成するには、次の方法を使用します。
    • ヘッダーとフッターの情報
    • マージンサイズ
    • 向き
    • 列挙
    • ページサイズ
    表 : 8. パラメーター
    名前 タイプ 説明
    html 文字列 PDF ドキュメントに変換する HTML。
    targetTable 文字列 変換された PDF を添付するテーブルの名前
    targetTableSysId 文字列 変換された PDF を添付するレコードのSys_id。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    ヘッダーフッター情報 オブジェクト PDF のヘッダーとフッターの詳細を定義します。
    {
      "FooterImageAlignment": "String",
      "FooterImageAttachmentId": "String",
      "FooterImageHeight": "String",
      "FooterText": "String",
      "FooterTextAlignment": "String",
      "GeneratePageNumber": "String",
      "HeaderImageAlignment": "String",
      "HeaderImageAttachmentId": "String",
      "HeaderImageHeight": "String",
      "LeftOrRightMargin": "String",
      "PageOrientation": "String",
      "PageSize": "String",
      "TopOrBottomMargin": "String"
    }
    headerFooterInfo。フッターイメージアライメント 文字列 フッター内の画像位置を設定します。
    有効な値:
    • BOTTOM_CENTER:フッターの中央下に画像を配置します。
    • BOTTOM_LEFT:フッターの左下に画像を配置します。
    • BOTTOM_RIGHT:フッターの右下の領域に画像を配置します。
    • TOP_CENTER:フッターの上部中央に画像を配置します。
    • TOP_LEFT:フッターの左上に画像を配置します。
    • TOP_RIGHT:フッターの右上の領域に画像を配置します。
    headerFooterInfo。フッターイメージ添付 ID 文字列 添付ファイル [sys_attachment] テーブル内のフッターイメージのSys_id。 ファイルタイプがインスタンスでサポートされているかどうかを判断するには、[ システムのプロパティ]、[ セキュリティ] に移動し、[ 添付できるファイル拡張子のリスト (カンマ区切り形式)] フィールドにそのファイルタイプが表示されているかどうかを確認します。
    headerFooterInfo。フッターイメージの高さ 文字列 フッター画像の高さ。

    デフォルト:50 ポイント

    headerFooterInfo。フッターテキスト 文字列 各 PDF ページの下部に配置するフッターテキスト。
    headerFooterInfo。フッターテキストアライメント 文字列 フッター内のテキスト位置を設定します。この値が headerFooterInfo.FooterImageAlignment で指定された領域と一致したり、競合したりしないことを確認してください。
    有効な値:
    • BOTTOM_CENTER:フッターの中央下にテキストを配置します。
    • BOTTOM_LEFT:フッターの左下領域にテキストを配置します。
    • BOTTOM_RIGHT:フッターの右下にテキストを配置します。
    • TOP_CENTER:テキストをフッターの上部中央に配置します。
    • TOP_LEFT:フッターの左上にテキストを配置します。
    • TOP_RIGHT:フッターの右上の領域にテキストを配置します。
    headerFooterInfo。ページ番号を生成 文字列 PDF のページ番号を生成するかどうかを示すフラグ。
    有効な値:
    • true:ページ番号を生成します。
    • false:ページ番号を生成しません。

    デフォルト:true

    headerFooterInfo。ヘッダーイメージ配置 文字列 ヘッダー内の画像位置を設定します。
    有効な値:
    • 中央:ヘッダーの中央に画像を配置します。
    • left:ヘッダーの左側に画像を配置します。
    • 右:ヘッダーの右側に画像を配置します。
    headerFooterInfo。ヘッダーイメージ添付 ID 文字列 添付ファイル [sys_attachment] テーブル内のヘッダー画像のSys_id。 ファイルタイプがインスタンスでサポートされているかどうかを判断するには、[ システムのプロパティ]、[ セキュリティ] に移動し、[ 添付できるファイル拡張子のリスト (カンマ区切り形式)] フィールドにそのファイルタイプが表示されているかどうかを確認します。
    headerFooterInfo。ヘッダーイメージ高さ 文字列 ヘッダー画像の高さ。

    デフォルト:50 ポイント

    headerFooterInfo。左または右マージン 文字列 左右のマージンのサイズ。ページの左側または右側に配置されている場合、ヘッダー/フッターの詳細はこの領域内に配置されます。

    デフォルト:36 ポイント

    headerFooterInfo。ページオリエンテーション 文字列 ページの向き。
    有効な値:
    • 縦向き
    • 横向き

    デフォルト:縦向き

    headerFooterInfo。ページサイズ 文字列 ドキュメントのページサイズ。
    有効な値:
    • A4 – 595 × 842 ポイント
    • レター – 612 × 792 ポイント
    • 元帳 – 792 x 1224 ポイント

    ページサイズを超えると、コンテンツは切り捨てられます。

    headerFooterInfo。TopOrBottomMargin 文字列 上下のマージンのサイズ。ヘッダーとフッターの詳細はこの領域に配置されます。

    デフォルト:72 ポイント

    fontFamilySysId 文字列 オプション。PDF に使用するフォントファミリのSys_id。このsys_idは、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。

    デフォルト:none

    ドキュメント構成 オブジェクト オプション。目次の構成とページ番号の構成を含むオブジェクト。
    {​
       "accessibilityEnabled" : Boolean,
       "toc_config" : "String",​
       "page_number_config": "String"​
    }​
    documentConfiguration.accessibilityEnabled ブーリアン オプション。アクセシビリティをサポートするために、生成された PDF をフォーマットするかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用できるようになり、ユーザーはスクリーンリーダーを使用して、生成された PDF ドキュメントをナビゲート、理解、操作できるようになります。
    有効な値:
    • true:生成された PDF はアクセシビリティを考慮してフォーマットされます。
    • false:生成された PDF はアクセシビリティ用にフォーマットされていません。

    デフォルト値:False

    documentConfiguration.toc_config 文字列 オプション。PDF に使用する目次構成のSys_id。このsys_idは、目次の構成 [doc_toc_config] テーブルからのものです。

    デフォルト:none

    documentConfiguration.page_number_config 文字列 オプション。PDF に使用するページ番号構成のSys_id。このsys_idは、ページ番号構成 [doc_page_number_config] テーブルからのものです。

    デフォルト:none

    表 : 9. 返される内容
    タイプ 説明
    オブジェクト
    <Object>.​メッセージ 成功またはエラーを確認するメッセージ。
    可能な値:
    • HTML から PDF への変換が進行中です。– HTML から PDF ドキュメントへの変換要求が成功しました。
    • フッター画像の配置とテキストの配置を同じ配置の同じ領域に配置することはできません:<footerImageAlignment 値> - headerFooterInfo.​FooterImageAlignment 値と headerFooterInfo.​FooterTextAlignment 値が同じ領域にないことを確認します。
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • フッター画像の配置が無効です:<invalid_option>が指定されています。: headerFooterInfo.​FooterImageAlignment プロパティに有効なオプションを指定します。
    • フッターテキストの配置が無効です:「+ <invalid_option> +」が指定されました。: headerFooterInfo.​footerTextAlignment プロパティに有効なオプションを指定します。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • フッター画像を取得できません。sysId:+ <値が指定されました>: headerFooterInfo.​footerImageId に指定されたsys_idが正確であることを確認します。
    • ヘッダーイメージを取得できません。sysId:+ <値が指定されました>: headerFooterInfo.​headerImageId に指定されたsys_idが正確であることを確認します。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。
    • <URL> がホワイトリスト登録された URL にリストされていません。URL ホワイトリストプロパティ「glide.pdf.url.whitelisting.enabled」および「com.snc.pdf.whitelisted_urls」を確認してください。 システムプロパティ glide.pdf.url.whitelisting.enabled が true に設定されている場合、com.snc.pdf.whitelisted_urls システムプロパティの [値] フィールドにリストされていない限り、PDF は URL コンテンツを処理しません。これらのプロパティは、システムプロパティ [sys_properties] テーブルにリストされます。

    データタイプ:文字列

    <Object>.request_id 変更プロデューサー要求レコードのSys_id。

    データタイプ:文字列

    次の例は、HTML を PDF に変換するタスクをキューに入れる方法を示しています。PDF には、添付ファイルで提供されるヘッダーとフッターが含まれています。変換が完了すると、「myPDF」という名前の PDF がインシデント [incident] テーブルのターゲットレコードに添付されます。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    
    //  (Option) get HTML from the description field of an incident record
    var gr = new GlideRecord("incident");
    var html;
    
    if (gr.get("<tableSysId>")) {
     html = gr.description.toString();
    }
    
    var hfInfo = new Object();
    hfInfo["HeaderImageAttachmentId"] = "<hdrImgAttSysId>";
    hfInfo["HeaderImageAlignment"] = "left";
    hfInfo["FooterImageAttachmentId"] = "<ftrImgAttSysId>";
    hfInfo["FooterImageAlignment"] = "TOP_CENTER";
    hfInfo["FooterText"] = "Sample Footer Message";
    hfInfo["PageSize"] = "A4";
    hfInfo["GeneratePageNumber"] = "false";
    hfInfo["TopOrBottomMargin"] = "36";
    hfInfo["LeftOrRightMargin"] = "24";
    
    var result = v.convertToPDFWithHeaderFooterAsync(html, "incident", "<targetTbl_sys_id>", "myPDF", hfInfo);
    gs.info(JSON.stringify(result));

    出力:

    {"message":"HTML to PDF Conversion is in progress.","request_id":"<sys_id>"}

    PDFGenerationAPI – fillDocumentFields(Object fieldsMap, String sysId, String tableName, String tableSysId, String pdfName)

    編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。

    次の方法を使用して、PDF が入力可能かどうかを判断し、フィールド情報を取得します。
    PDFGenerationAPI は、さまざまなオプションを備えた追加の塗りつぶしメソッドを提供します。
    • fillDocumentFieldsAndFlatten()編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
    • fillFieldsAndMergeSignature()編集可能な PDF のフィールドに入力し、署名画像を追加し、データフィールドをフラット化して、指定されたレコードに添付します。
    • getFilledDocumentWithSignatureAsBase64()編集可能な PDF のフィールドに入力し、画像を作成し、Base64 エンコードされた PDF に変換します。
    表 : 10. パラメーター
    名前 タイプ 説明
    フィールドマップ オブジェクト オプション。入力する PDF フィールド名と値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    tableName 文字列 PDF が添付されているレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    tableSysId 文字列 PDF が添付されているレコードのSys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    表 : 11. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は更新された PDF 添付ファイルのsys_idを含むオブジェクト、それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.​attachment_id 操作が成功した場合は、入力した PDF のsys_id。ファイルは添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.message 成功またはエラーを確認するメッセージ。
    有効な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、編集可能な PDF のフィールドに入力する方法を示しています。

    var fieldMap = new Object();
    fieldMap["Address"] = "Address value here";
    fieldMap["State"] = "State value here";
    
    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.fillDocumentFields(fieldMap, "<attachmentSysId>", "<tableName>", "<tableSysId>", "pdfName");
    gs.info(JSON.stringify(result));

    出力:

    {"attachment_id":"<sys_id>","message":"Request completed successfully.","status":"success"}

    PDFGenerationAPI – fillDocumentFieldsAndFlatten(Object fieldsMap, String sysId, String tableName, String tableSysId, String pdfName, Object flatten)

    編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。

    次の方法を使用して、PDF が入力可能かどうかを判断し、フィールド情報を取得します。
    PDFGenerationAPI は、さまざまなオプションを備えた追加の塗りつぶしメソッドを提供します。
    • fillDocumentFields()編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
    • fillFieldsAndMergeSignature()編集可能な PDF のフィールドに入力し、署名画像を追加し、データフィールドをフラット化して、指定されたレコードに添付します。
    • getFilledDocumentWithSignatureAsBase64()編集可能な PDF のフィールドに入力し、画像を作成し、Base64 エンコードされた PDF に変換します。
    表 : 12. パラメーター
    名前 タイプ 説明
    フィールドマップ オブジェクト オプション。入力する PDF フィールド名と値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    tableName 文字列 PDF が添付されているレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    tableSysId 文字列 PDF が添付されているレコードのSys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    フラット化 オブジェクト オプション。フィールドをフラット化すると、他のユーザーが情報を変更できないようにフィールドをロックできます。キーを「FlattenType」として指定し、フラット化オプションを文字列として指定します。
    有効な値:
    • donot_flatten:フィールドをフラット化しません。
    • partially_flatten:変更されたフィールドのみをフラット化します。
    • fully_flatten:すべてのフィールドをフラット化します。

    デフォルト値:fully_flatten

    {
      "FlattenType": "String" 
    }
    表 : 13. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は更新された PDF 添付ファイルのsys_idを含むオブジェクト、それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.​attachment_id 操作が成功した場合は、入力した PDF のsys_id。ファイルは添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.message 成功またはエラーを確認するメッセージ。
    有効な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、フィールドに入力して編集可能な PDF をフラット化する方法を示しています。

    var fieldMap = new Object();
    fieldMap["Last Name First Name Middle Initial"] = "Tuter Abel E.";
    fieldMap["Date of Birth"] = "08101952";
    fieldMap["US SSN"] = "111-22-9999";
    fieldMap["Address"] = "PO Box 344";
    fieldMap["City"] = "Jerome";
    fieldMap["State"] = "AZ";
    fieldMap["Zip"] = "86331";
    
    var flatten = new Object();
    flatten["FlattenType"] = "partially_flatten";
    
    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.fillDocumentFieldsAndFlatten(fieldMap, "<attachmentSysId>", "<tableName>", "<tableSysId>", "pdfName", flatten);
    gs.info(JSON.stringify(result));

    出力:

    "attachment_id":"<sys_id>","message":"Request completed successfully.","status":"success"

    PDFGenerationAPI – fillFieldsAndMergeSignature(Object fieldsMap, String sysId, String tableName, String tableSysId, String pdfName, PdfMergeSignRequestor requestor, Object flatten)

    編集可能な PDF のフィールドに入力し、署名画像を追加し、データフィールドをフラット化して、指定されたレコードに添付します。

    次の方法を使用して、PDF が入力可能かどうかを判断し、フィールド情報を取得します。
    PDFGenerationAPI は、さまざまなオプションを備えた追加の塗りつぶしメソッドを提供します。
    • fillDocumentFields()編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
    • fillDocumentFieldsAndFlatten()編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
    • getFilledDocumentWithSignatureAsBase64()編集可能な PDF のフィールドに入力し、画像を作成し、Base64 エンコードされた PDF に変換します。
    表 : 14. パラメーター
    名前 タイプ 説明
    フィールドマップ オブジェクト オプション。入力する PDF フィールド名と値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    tableName 文字列 PDF が添付されているレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    tableSysId 文字列 PDF が添付されているレコードのSys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    pdfName 文字列 PDF に付ける名前です。

    デフォルト:添付ファイル [sys_attachment] テーブル内の PDF のSys_id。

    要求者 PdfMergeSignRequestor pdfMergeSignRequestor から返された署名入力。
    フラット化 オブジェクト オプション。フィールドをフラット化すると、他のユーザーが情報を変更できないようにフィールドをロックできます。キーを「FlattenType」として指定し、フラット化オプションを文字列として指定します。
    有効な値:
    • donot_flatten:フィールドをフラット化しません。
    • partially_flatten:変更されたフィールドのみをフラット化します。
    • fully_flatten:すべてのフィールドをフラット化します。

    デフォルト値:fully_flatten

    {
      "FlattenType": "String" 
    }
    表 : 15. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は更新された PDF 添付ファイルのsys_idを含むオブジェクト、それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.​attachment_id 操作が成功した場合は、入力した PDF のsys_id。ファイルは添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.message 成功またはエラーを確認するメッセージ。
    有効な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、デフォルト設定でフィールドに署名を入力し、フィールドを完全にフラット化する方法を示しています。

    var fieldMap = new Object();
    fieldMap["Address_Salutation"] = "Address value here";
    
    var paramMap = new Object();
    paramMap["FlattenType"] = "partially_flatten";
    
    var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
    requestor.createRequest("<attachmentSysId>", "incident", "<tableSysId>", "filledPdf");
    requestor.addSignatureMapping(6, 40, 50, 188, 44, "<signatureSysId>");
    
    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.fillFieldsAndMergeSignature(fieldMap, "<attachmentSysId>", "incident", "<tableSysId>", requestor, "filledPdf", paramMap);
    gs.info(JSON.stringify(result));
    出力:
    {"attachment_id":"5440d993dbed3010d66be1191396194e","message":"Request completed successfully.","status":"success"}

    PDFGenerationAPI – getDocumentFields(文字列 sysId)

    PDF ドキュメント内の編集可能なフィールドのリストを取得します。確認するファイルを手動で開かなくても、編集可能な PDF フィールドを一覧表示できます。

    表 : 16. パラメーター
    名前 タイプ 説明
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    表 : 17. 返される内容
    タイプ 説明
    オブジェクト 署名された PDF の ID を含むオブジェクト。それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.fields 要求が成功した場合、PDF 内の各フィールドの名前を含むリスト。

    データタイプ:文字列のアレイ

    "fields": ["field_name"]
    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、PDF 添付ファイルのフィールドを取得する方法を示しています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.getDocumentFields("attachmentSysId");
    gs.info(JSON.stringify(result));
    

    出力:

    {"message":"Request completed successfully.","fields":["NP_formFillable","reset","print","1SSN","Signature.1","5sigDate","Check Box21"],"status":"success"}

    PDFGenerationAPI – getDocumentFieldsType(文字列 sysId)

    PDF ドキュメントから編集可能なフィールドのセットのフィールドタイプを取得します。

    表 : 18. パラメーター
    名前 タイプ 説明
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    表 : 19. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は各 PDF フィールドタイプを含むオブジェクト、それ以外の場合はエラーメッセージ。
    {
      "fields_type": {Object},
      "message": "String",
      "status": "String"
    }
    <Object>.fields_type 成功した場合は指定された PDF の各フィールドをリストするオブジェクト、それ以外の場合はエラーメッセージ。

    データタイプ: オブジェクト

    "fields_type": {
      "<field type>": {Object},
    }
    <Object>.fields_type。<フィールド> 各フィールドのページ番号を含むオブジェクト。<フィールド>名は、フィールドラベル (「SSN」など) またはタイプを表す自動ラベルを表します。

    データタイプ: オブジェクト

    "<field>": { 
      "fieldsDetails": [Array], // Check boxes, radio buttons, choice boxes only
      "pageNumber": "String",
      "type": "String"
    }
    <Object>.fields_type。<field>.fieldsDetails フィールド名と、選択肢フィールドタイプの各オプションに対応する値を含むオブジェクトのリスト。
    適用可能なタイプ:
    • チェックボックス
    • 選択ボックス
    • コンボボックス
    • 複数選択の選択ボックス

    データタイプ:アレイ

    "fieldsDetails": [ 
      "fieldName": "String",
      "value": "String"
    ]
    <Object>.fields_type。<field>.fieldsDetails.fieldName 選択肢フィールドの名前。

    データタイプ:文字列

    <Object>.fields_type。<field>.fieldsDetails.value 選択フィールドの値。

    データタイプ:文字列

    <Object>.fields_type。<field>.pageNumber このフィールドに対応する PDF ページ番号。

    データタイプ:文字列

    <Object>.fields_type。<field>.type PDF フィールドタイプ。
    可能な値:
    • check_box
    • choice_box
    • combo_box
    • multi_select_choice_box
    • push_button
    • radio_button
    • 署名
    • テキスト

    データタイプ:文字列

    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、PDF 添付ファイルでフィールドタイプを取得する方法を示しています。結果には読みやすくするために手動で戻り値が含まれ、簡潔にするために切り捨てられています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.getDocumentFieldsType("<attachmentSysId>");
    gs.info(JSON.stringify(result));
    

    出力:

    {"fields_type":{"1ADDLINE2.25":{"pageNumber":2,"type":"text"},"1ADDLINE2.24":{"pageNumber":2,"type":"text"},
    "1ADDLINE2.23":{"pageNumber":2,"type":"text"},"1ADDLINE2.22":{"pageNumber":2,"type":"text"},
    "1ADDLINE2.11":{"pageNumber":2,"type":"text"},
    "Check Box1":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":2,"type":"check_box"},
    "4consentDate.6":{"pageNumber":4,"type":"text"},"4consentDate.7":{"pageNumber":4,"type":"text"},
    "3SSN.9":{"pageNumber":3,"type":"text"},"3SSN.8":{"pageNumber":3,"type":"text"},"3SSN.7":{"pageNumber":3,"type":"text"},
    "pageNumber":2,"type":"check_box"},"Check Box8":{"fieldsDetails":[{"fieldName":"Off"},{"fieldName":"yes"}],
    "4planAdminDate.8":{"pageNumber":4,"type":"text"},"4planAdminDate.7":{"pageNumber":4,"type":"text"},
    "1FirstName_ID.7":{"pageNumber":2,"type":"text"},
    "Check Box9":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
    "1LN.1":{"pageNumber":2,"type":"text"},"1LN.2":{"pageNumber":2,"type":"text"},
    "Check Box11":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
    "1LN.9":{"pageNumber":2,"type":"text"},
    "Check Box17":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
    "Check Box16":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
    "1LN.7":{"pageNumber":2,"type":"text"},"Check Box19":{"fieldsDetails":[{"fieldName":"Yes"}],
    "1LN.8":{"pageNumber":2,"type":"text"},"Check Box18":{"fieldsDetails":[{"fieldName":"Yes"}],
    "print":{"pageNumber":2,"type":"push_button"},"4planAdministrator.1":{"pageNumber":4,"type":"text"},
    "1TaxID.9":{"pageNumber":2,"type":"text"},"4SSN.1":{"pageNumber":3,"type":"text"},"4SSN.2":{"pageNumber":3,"type":"text"},
    "Signature.1":{"pageNumber":4,"type":"text"},"1ZIP.2":{"pageNumber":2,"type":"text"},"1ZIP.3":{"pageNumber":2,"type":"text"},
    "message":"Request completed successfully.","status":"success"}

    PDFGenerationAPI – getFilledDocumentWithSignatureAsBase64(Object fieldsMap, String sysId, PdfMergeSignRequestor requestor, Object flatten)

    編集可能な PDF のフィールドに入力し、画像を作成し、Base64 エンコードされた PDF に変換します。

    Base64 エンコーディングを使用すると、バイナリ文字構文を損なうことなく、HTML や JSON などのテキストドキュメント内の文字列として PDF を出力できます。

    次の方法を使用して、PDF が入力可能かどうかを判断し、フィールド情報を取得します。
    PDFGenerationAPI は、さまざまなオプションを備えた追加の塗りつぶしメソッドを提供します。
    • fillDocumentFields()編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
    • fillDocumentFieldsAndFlatten()編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
    • fillFieldsAndMergeSignature()編集可能な PDF のフィールドに入力し、署名画像を追加し、データフィールドをフラット化して、指定されたレコードに添付します。
    表 : 20. パラメーター
    名前 タイプ 説明
    フィールドマップ オブジェクト オプション。入力する PDF フィールド名と値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    要求者 PdfMergeSignRequestor pdfMergeSignRequestor から返された署名入力。
    フラット化 オブジェクト オプション。フィールドをフラット化すると、他のユーザーが情報を変更できないようにフィールドをロックできます。キーを「FlattenType」として指定し、フラット化オプションを文字列として指定します。
    有効な値:
    • donot_flatten:フィールドをフラット化しません。
    • partially_flatten:変更されたフィールドのみをフラット化します。
    • fully_flatten:すべてのフィールドをフラット化します。

    デフォルト値:fully_flatten

    {
      "FlattenType": "String" 
    }
    表 : 21. 返される内容
    タイプ 説明
    文字列 成功すると、Base64 形式に変換された PDF が添付ファイルテーブル [sys_attachment] に追加されます。コンテンツには、提供された PDF 添付ファイルが反映され、フィールドと署名が入力されます。代替フラット化オプションが flatten パラメーターで指定されていない限り、フィールドは編集できません。
    <Object>.message 成功またはエラーを確認するメッセージ。
    有効な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • 指定されたターゲットレコード [<tableName>- <targetTableSysId>] が存在しません。– ターゲットテーブルsys_idが指定されたテーブルにありません。レコードに正しいテーブル名が含まれていることを確認してください。
    • 入力する PDF に関連付けられたフォームがありません。attachmentSysId:<sys_id>
    • 名前が指定されている編集可能なフィールドが存在しません。確認してもう一度試してください。フィールド名:<フィールド名>
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、PDF 添付ファイルに 2 つのフィールドをロードし、フィールドをフラット化して、PDF を Base64 形式に変換する方法を示しています。

    var mymap = new Object();
    mymap["City"] = "City value here";
    mymap["State"] = "XX";
    
    // create a requestor
    var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
    requestor.createRequest("<sys_id>", "tableName", "<tableSysId>", "pdfName");
    requestor.addSignatureMapping(6, 40, 50, 188, 44, "<signImgSysId>");
    var processedRequestObj = requestor.processRequest();
    
    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    
    var result = v.getFilledDocumentWithSignatureAsBase64(mymap, "<attachmentSysId>", processedRequestObj);
    gs.info (JSON.stringify(result));

    PDFGenerationAPI – getPdfPageSizes(文字列 sysId)

    PDF ドキュメントのページサイズを取得します。

    表 : 22. パラメーター
    名前 タイプ 説明
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    表 : 23. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は各ページのサイズを含むオブジェクト、成功した場合はエラーメッセージ。
    {
      "pages_size": {Object},
      "message": "String",
      "status": "String"
    }
    <Object>.pages_size 操作が成功した場合、各 PDF ページの幅と高さ (ポイント単位)。ページ番号は文字列として返され、測定値は数値データタイプとして返されます。

    データタイプ: オブジェクト

    "pages_size": {"<page number>":[<width>,<height>]}
    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、PDF 添付ファイルで各ページの幅と高さを表示する方法を示しています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.getPdfPageSizes ("<attachmentSysId>");
    gs.info(JSON.stringify(result));
    

    出力:

    {"pages_size":{"1":[612,792],"2":[612,792],"3":[612,792],"4":[612,792],"5":[612,792]},"message":"Request completed successfully.","status":"success"}
    

    PDFGenerationAPI – isDocumentFillable(文字列 sysId)

    PDF ドキュメントに編集可能なフィールドが含まれているかどうかを確認します。

    表 : 24. パラメーター
    名前 タイプ 説明
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    表 : 25. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は各ページのサイズを含むオブジェクト、成功した場合はエラーメッセージ。
    {
      "document_editable": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.​document_editable 操作が成功した場合、ドキュメントが編集可能かどうかを示すフラグ。
    有効な値:
    • true:PDF ドキュメントには編集可能なフィールドがあります。
    • false:PDF ドキュメントには編集可能なフィールドがありません。

    データタイプ:文字列として提供されるブール値

    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、PDF ドキュメントのフィールドが編集可能かどうかを確認する方法を示しています。

    var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = v.isDocumentFillable("<attachmentSysId>");
    gs.info(JSON.stringify(result));
    

    出力:

    {"message":"Request completed successfully.","document_editable":"true","status":"success"}

    PDFGenerationAPI – redact(オブジェクト inputJson)

    指定された矩形座標、検索キーワード、またはその両方に基づいて PDF ドキュメントに編集を適用します。元の PDF の編集済みコピーが添付ファイル [sys_attachment] テーブルに生成されます。

    注:
    • 編集の結果、編集を意図していないテキストを上書きする予期しない白い編集テキストブロックが含まれる場合があります。このイベントが発生した場合は、 highlightedSections プロパティまたは PDF 生成ユーティリティプラグインを使用して、編集するコンテンツを手動で選択できます。詳細については、「Redact data from documents」を参照してください。
    • このメソッドは、JBIG2 画像を含む PDF の編集をサポートしていません。
    表 : 26. パラメーター
    名前 タイプ 説明
    inputJson オブジェクト 編集する PDF とそのコンテンツを識別します。
    {
      "sysId": "String",
      "highlightedSections": [Array],
      "searchedKeywords": [Array]
    }
    inputJson.sysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF のSys_id。
    inputJson。highlightedSections オブジェクトのアレイ オブジェクトとして提供される矩形座標のリスト。各座標は、各ページで編集されるコンテンツの場所を表します。
    searchedKeywords プロパティを含める場合はオプションです。
    [
       {
         "pageNumber": Number,
         "x": Number,
         "y": Number,
         "width": Number,
         "height": Number
       }
    ]
    inputJson。highlightedSections。ページ番号 番号 編集対象として選択するコンテンツを含む PDF ページ番号。
    inputJson。highlightedSections。x 番号 PDF 上の編集四角形の X 軸 (水平位置) (ポイント単位)。PDF ページの左下隅の値は 0 です。たとえば、値 306 は、レターサイズの PDF ページの水平方向の中心に矩形を配置します。
    inputJson。highlightedSections。y 番号 PDF 上の編集四角形の Y 軸 (垂直位置) (ポイント単位)。PDF ページの左下隅の値は 0 です。たとえば、値が 396 の場合、レターサイズの PDF ページの垂直方向の中心に矩形が配置されます。
    inputJson。highlightedSections。幅 番号 編集四角形の幅はポイント単位です。この値により、x 軸と y 軸が交差する左下の点から水平方向に矩形のサイズが大きくなります。
    inputJson。highlightedSections。高さ 番号 編集四角形の高さ (ポイント単位)。この値は、x 軸と y 軸が交差する左下の点から垂直方向に矩形のサイズを大きくします。
    inputJson。searchedKeyword アレイ 編集するテキストを検索するために使用される 1 つ以上の文字列のリスト。編集の矩形のサイズは、結果としてブロックされるテキストの高さと幅と一致します。
    highlightedSections プロパティを含める場合はオプションです。
    注:
    items:」「PDF.」 などの特殊文字や句読点を含むテキスト文字列は編集されないことがあります。文字列から文字を削除するか、領域をハイライト表示してテキストを削除することもできます。
    表 : 27. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は更新された PDF 添付ファイルのsys_idを含むオブジェクト、それ以外の場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.​attachment_id 操作が成功した場合は、入力した PDF のsys_id。ファイルは添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.message 成功またはエラーを確認するメッセージ。
    可能な値:
    • Can't parse this format – PDF に埋め込まれた画像を処理できません。PDF に、JBIG2 画像など、サポートされていない形式の画像が 1 つ以上含まれています。
    • ソースドキュメントコンテンツの読み取り中に例外が発生しました。PDF ヘッダーが見つかりません。– 提供された入力添付ファイルが有効な PDF ではありません。正しい添付ファイルsys_idを指定してください。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません:PDF はウイルス対策スキャンに合格しませんでした。
    • sys_id [{0}] の添付ファイルがセキュリティスキャンを保留中であるため、要求を続行できません - PDF にはアンチウイルススキャンが必要です。
    • 要求が正常に完了しました:操作は成功しました。
    • 未定義:指定されたSys_idが存在しないか、PDF 添付ファイルではありません。

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • 成功:操作が成功しました。
    • 失敗:操作は成功しませんでした。messageに詳細が表示されます。

    データタイプ:文字列

    次の例は、矩形とキーワードで編集する方法を示しています。編集された PDF では、2 ページで選択された領域がブロックされています。文字列「23」は、見つかったすべてのページで編集されます。

    var pdfRequest = {
      sysId: 'e4b3ae35fc128210f877789781ea59f3',
      highlightedSections: [
        {
          "pageNumber": 2,
          "x": 261.75,
          "y": 480,
          "width": 21,
          "height": 14.25
        },
        {
          "pageNumber": 2,
          "x": 249,
          "y": 390.75,
          "width": 63.75,
          "height": 15.75
        }
        // Add more coordinates as needed
      ],
      searchedKeywords: ['23']
    };
    
    // Convert the JSON object to a string
    var jsonRequest = JSON.stringify(pdfRequest);
    gs.info('JSON Request: ' + jsonRequest + '\n');
    
    var PDFRedaction = new sn_pdfgeneratorutils.PDFGenerationAPI;
    var result = PDFRedaction.redact(jsonRequest);
    gs.info(JSON.stringify(result));

    出力:

    JSON Request: {"sysId":"e4b3ae35fc128210f877789781ea59f3","highlightedSections":[{"pageNumber":2,"x":261.75,"y":480,"width":21,"height":14.25},{"pageNumber":2,"x":249,"y":390.75,"width":63.75,"height":15.75}],"searchedKeywords":[23]}
    
    {"attachment_id":"1744ae35fc128210f877789781ea59fc","message":"Request completed successfully.","status":"success"}