PdfMergeSignRequestor - Champ d’application, global

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 3 minutes de lecture
  • L’API PdfMergeSignRequestor ajoute 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 méthode 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
    Néant

    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 des exigences de taille et de position de signature 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 dans laquelle insérer la signature.
    Marge supérieure Numéro Valeur en points représentant la zone de marge supérieure de la page dans laquelle insérer l’image de signature.
    Largeur de la boîte Numéro Valeur en points représentant la largeur de la zone devant contenir la signature.
    Hauteur de boîte Numéro Valeur en points représentant la hauteur de la zone devant contenir 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
    Néant

    L’exemple suivant montre comment ajouter le mappage de signature. Pour un exemple complet, voir 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 des entrées source et cible.

    Tableau 4. Paramètres
    Nom Type Description
    targetSysId Chaîne Sys_id d’un fichier 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 sur la même ligne que la pièce jointe répertoriée dans la table Pièces jointes [sys_attachment].
    tableSysId Chaîne Sys_id de l’enregistrement auquel le PDF est joint. Vous pouvez trouver cette valeur sur la même ligne que la pièce jointe répertoriée dans la table Pièces jointes [sys_attachment].
    targetFileName Chaîne Nom du PDF cible sans extension.
    Tableau 5. Renvoie
    Type Description
    Néant

    L’exemple suivant montre comment créer une demande de signature. Pour un exemple complet, voir 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 n’est 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 : &lt;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));