pdfMergeSignRequestor : dans le champ d’application, global

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 3 minutes de lecture
  • L’API PdfMergeSignRequestor fournit des méthodes pour ajouter une image représentant une signature à un document PDF.

    Cette API fait partie du module d’extension ServiceNow PDF Generation Utilities (com.snc.apppdfgenerator) et est fournie dans l’espace de noms sn_pdfgeneratorutils . Le module d’extension est activé par défaut.

    Cette API crée un objet de signature qui peut être implémenté dans un PDF à l’aide de PDFGenerationAPI.

    PdfMergeSignRequestor : PdfMergeSignRequestor()

    Instancie un nouvel objet PdfMergeSignRequestor .

    Tableau 1. Paramètres
    Nom Type Description
    Aucun

    Les exemples suivants montrent comment créer un objet PdfMergeSignRequestor .

    var v = new sn_pdfgeneratorutils.PdfMergeSignRequestor;

    PdfMergeSignRequestor : addSignatureMapping(Number pageNumber, Number leftMargin, Number topMargin, Number boxWidth, Number boxHeight, String sysId)

    Attribue la taille de signature et les exigences de position dans le PDF.

    Tableau 2. Paramètres
    Nom Type Description
    pageNumber Numéro Numéro de la page sur laquelle insérer la signature.
    marge gauche Numéro Valeur en points représentant la zone de marge gauche de la page sur laquelle insérer la signature.
    topMargin Numéro Valeur en points représentant la zone de marge supérieure de la page sur laquelle insérer l’image de signature.
    BoxWidth Numéro Valeur en points représentant la largeur de la zone de contenu de la signature.
    BoxHeight Numéro Valeur en points représentant la hauteur de la zone contenant l’image de signature.
    sysId Chaîne Sys_id de l’image de signature dans la table Pièces jointes [sys_attachment].
    Tableau 3. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment ajouter le mappage de signature. Pour un exemple complet, consultez 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(String targetSysId, String targetTable, String tableSysId, String targetFileName)

    Crée une demande de signature avec les entrées source et cible.

    Tableau 4. Paramètres
    Nom Type Description
    targetSysId Chaîne Sys_id d’un PDF dans la table Pièces jointes [sys_attachment]. Utilisez cette valeur comme PDF cible sur lequel ajouter une signature.
    targetTable Chaîne Nom de la table contenant l’enregistrement auquel le PDF est joint. Vous pouvez trouver cette valeur dans la même ligne que la pièce jointe répertoriée dans le tableau Pièces jointes [sys_attachment].
    tableSysId Chaîne Sys_id de l’enregistrement auquel le PDF est joint. Vous pouvez trouver cette valeur dans la même ligne que la pièce jointe répertoriée dans le tableau Pièces jointes [sys_attachment].
    targetFileName Chaîne Nom du PDF cible sans extension.
    Tableau 5. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment créer une demande de signature. Pour un exemple complet, consultez processRequest().

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

    PdfMergeSignRequestor : processRequest()

    Traite les demandes et ajoute les signatures.

    Tableau 6. Paramètres
    Nom Type Description
    Aucun
    Tableau 7. Renvoie
    Type Description
    Objet Objet contenant la taille de chaque page en cas de réussite, message d’erreur dans le cas contraire.
    {
      "attachment_id": "String",
      "message": "String",
      "status": "String"
    }
    <Object>.attachment_id Si la demande aboutit, sys_id du PDF signé et joint. Le fichier est répertorié dans la table Pièces jointes [sys_attachment].

    Type de données : chaîne

    <Object>.Message
    Valeurs possibles :
    • Impossible de poursuivre la demande, car la pièce jointe avec sys_id [{0}] n’a pas réussi l’analyse de sécurité – Le PDF n’a pas réussi l’analyse antivirus.
    • Aucun mappage de signature spécifié. Impossible de traiter cette demande – Fournissez un mappage de signature à l’aide de la méthode addSignatureMapping( ).
    • Demande terminée avec succès.
    • Échec de la demande. Exceptions lors de la tentative d’ajout de signatures à un document. Veuillez vérifier à nouveau.
    • Cette demande ne peut pas être effectuée car la page demandée n’existe pas. N° de page : <numéro de page>

    Type de données : chaîne

    <Object>.statut État indiquant si l’opération a réussi.
    Valeurs possibles :
    • réussite : l’opération a réussi.
    • échec : l’opération n’a pas réussi. Le message fournit des détails.

    Type de données : chaîne

    L’exemple suivant montre comment traiter la demande de signature.

    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));