PdfMergeSignRequestor - スコープ指定、グローバル

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む6読むのに数分
  • PdfMergeSignRequestor API は、署名を表す画像を PDF ドキュメントに追加します。

    この API は PDF Generation Utilities プラグイン (com.snc.apppdfgenerator) の一部 ServiceNow であり、 sn_pdfgeneratorutils 名前空間内で提供されます。このプラグインはデフォルトでは有効になっています。

    このメソッドは、PDFGenerationAPI を使用して PDF に実装できる署名オブジェクトを作成します。

    PdfMergeSignRequestor - PdfMergeSignRequestor()

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

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

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

    var v = new sn_pdfgeneratorutils.PdfMergeSignRequestor;

    PdfMergeSignRequestor - addSignatureMapping(数字 pageNumber, 数字 leftMargin, 数字 topMargin, 数字 boxWidth, 数字 boxHeight, 文字列 sysId)

    PDF 内で署名のサイズと位置の要件を割り当てます。

    表 : 2. パラメーター
    名前 タイプ 説明
    pageNumber 数字 署名を挿入するページの番号。
    leftMargin 数字 署名を挿入するページの左マージン領域を表す値 (ポイント単位)。
    topMargin 数字 署名画像を挿入するページの上マージン領域を表す値 (ポイント単位)。
    boxWidth 数字 署名を含めるボックスの幅を表す値 (ポイント単位)。
    boxHeight 数字 署名画像を含めるボックスの高さを表す値 (ポイント単位)。
    sysId 文字列 添付ファイル [sys_attachment] テーブル内の署名画像の sys_id。
    表 : 3. 返される内容
    タイプ 説明
    なし

    次の例は、署名マッピングを追加する方法を示しています。完全な例については、「processRequest()」を参照してください。

    var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
    
    // For the purpose of this example, set signature sizes and page number for signature placement
    var page = 2;
    var leftMargin = 48;
    var topMargin = 60;
    var signatureWidth = 96;
    var signatureHeight = 36; 
    
    requestor.addSignatureMapping(page, leftMargin, topMargin, signatureWidth, signatureHeight, "<signatureSysId>");

    PdfMergeSignRequestor - createRequest(文字列 targetSysId, 文字列 targetTable, 文字列 tableSysId, 文字列 targetFileName)

    ソースとターゲットの入力を使用して署名要求を作成します。

    表 : 4. パラメーター
    名前 タイプ 説明
    targetSysId 文字列 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 この値を、署名を追加するターゲット PDF として使用します。
    targetTable 文字列 PDF が添付されるレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    tableSysId 文字列 PDF が添付されるレコードの sys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。
    targetFileName 文字列 拡張子なしのターゲット PDF の名前。
    表 : 5. 返される内容
    タイプ 説明
    なし

    次の例は、署名要求を作成する方法を示します。完全な例については、「processRequest()」を参照してください。

    var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
    
    requestor.createRequest("<sys_id>", "tableName", "<tableSysId>", "pdfFileName");

    PdfMergeSignRequestor -processRequest()

    要求を処理して署名を追加します。

    表 : 6. パラメーター
    名前 タイプ 説明
    なし
    表 : 7. 返される内容
    タイプ 説明
    オブジェクト 成功した場合は各ページのサイズを含むオブジェクト、失敗した場合はエラーメッセージ。
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.attachment_id 要求が成功した場合、添付される署名済み PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。

    データタイプ:文字列

    <Object>.message
    可能な値:
    • sys_id [{0}] の添付ファイルがセキュリティスキャンに合格しなかったため、要求を続行できません。PDF がウイルス対策スキャンに合格しませんでした。
    • 署名マッピングが指定されていません。この要求を処理できません – addSignatureMapping() メソッドを使用して署名マッピングを指定してください。
    • 要求が正常に完了しました。
    • 要求が失敗しました。ドキュメントに署名を追加しようとしているときに例外が発生しました。もう一度確認してください。
    • 要求されたページが存在しないため、この要求を完了できません。ページ番号:<page number>

    データタイプ:文字列

    <Object>.status 操作が成功したかどうかを示すステータス。
    可能な値:
    • success - 操作は成功しました。
    • failure – 操作は成功しませんでした。message は詳細を示します。

    データタイプ:文字列

    次の例は、署名要求を処理する方法を示します。

    var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
    
    requestor.createRequest("<sys_id>", "tableName", "<tableSysId>", pdfFileName);
    
    // For the purpose of this example, set signature sizes and page number for signature placement
    var page = 6;
    var leftMargin = 40;
    var topMargin = 50;
    var signatureWidth = 188;
    var signatureHeight = 44; 
    
    requestor.addSignatureMapping(page, leftMargin, topMargin, signatureWidth, signatureHeight, "<signatureSysId>");
    
    var result = requestor.processRequest();
    gs.info(JSON.stringify(result));