PDFGenerationAPI - Incluse dans le périmètre, globale
PDFGenerationAPI prend en charge la conversion PDF et la gestion des champs 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.
- Générer dynamiquement un PDF à partir d’une chaîne HTML et le joindre à un enregistrement
- Renseigner les champs dans un PDF
- Signer un PDF
- Non aplati, aplati ou partiellement aplati
- Récupération des données de champ PDF
PDFGenerationAPI – convertToPDF(String html, String targetTable, String targetTableSysId, String pdfName, String fontFamilySysId, Object documentConfiguration)
Convertit une chaîne HTML en document PDF.
Pour générer un PDF avec des informations d’en-tête et de pied de page, telles que les numéros de page, utilisez convertToPDFWithHeaderFooter().
| Nom | Type | Description |
|---|---|---|
| html | Chaîne | HTML à convertir en document PDF. |
| targetTable | Chaîne | Nom de la table à laquelle joindre le PDF converti. |
| targetTableSysId | Chaîne | Sys_id de l’enregistrement auquel joindre le PDF converti. |
| Nom du PDF | Chaîne | Nom à attribuer au PDF. Valeur par défaut : Sys_id du PDF dans la table Pièces jointes [sys_attachment]. |
| fontFamilySysId | Chaîne | Facultatif. Sys_id de la famille de polices à utiliser pour le PDF. Cette sys_id provient de la table Famille de polices de génération PDF [sys_pdf_generation_font_family]. Valeur par défaut : aucune |
| configuration du document | Objet | Facultatif. Objet contenant une configuration de table des matières et une configuration de numéro de page. |
| documentConfiguration.toc_config | Chaîne | Facultatif. Sys_id de la configuration de table des matières à utiliser pour le PDF. Cette sys_id provient de la table Configuration du sommaire [doc_toc_config]. Valeur par défaut : aucune |
| documentConfiguration.page_number_config | Chaîne | Facultatif. Sys_id de la configuration du numéro de page à utiliser pour le PDF. Cette sys_id provient de la table Configuration du numéro de page [doc_page_number_config]. Valeur par défaut : aucune |
| Type | Description |
|---|---|
| Objet | Objet contenant la sys_id de la pièce jointe PDF si la conversion réussit, message d’erreur dans le cas contraire. |
| <Object>.attachment_id | Si la conversion HTML réussit, sys_id du PDF converti et joint. Le fichier est répertorié dans la table Pièces jointes [sys_attachment]. Type de données : chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs possibles :
Type de données : chaîne |
| <Object>.request_id | Sys_id de l’enregistrement de la demande du créateur de changement. Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment convertir un code HTML en PDF et le joindre à un enregistrement de la table Incident [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));
Sortie :
{"attachment_id":"<sys_id>","message":"Conversion is successful.","request_id":"<change_sys_id>","status":"success"}
PDFGenerationAPI – convertToPDFWithHeaderFooter(String html, String targetTable, String targetTableSysId, String pdfName, Object headerFooterInfo, String fontFamilySysId, Object documentConfiguration)
Convertit une chaîne HTML en PDF avec un contenu d’en-tête et de pied de page.
- Informations d’en-tête et de pied de page
- Tailles des marges
- Orientation
- Énumération
- Taille de page
| Nom | Type | Description |
|---|---|---|
| html | Chaîne | HTML à convertir en document PDF. |
| targetTable | Chaîne | Nom de la table à laquelle joindre le PDF converti. |
| targetTableSysId | Chaîne | Sys_id de l’enregistrement auquel joindre le PDF converti. |
| Nom du PDF | Chaîne | Nom à attribuer au PDF. Valeur par défaut : Sys_id du PDF dans la table Pièces jointes [sys_attachment]. |
| en-têteFooterInfo | Objet | Définit les détails de l’en-tête et du pied de page PDF. |
| headerFooterInfo.Alignement de l’image du pied de page | Chaîne | Définit la position de l’image dans le pied de page. Valeurs valides :
|
| headerFooterInfo.FooterImageAttachmentId | Chaîne | Sys_id de l’image de pied de page dans la table Pièces jointes [sys_attachment]. Pour déterminer si le type de fichier est pris en charge dans votre instance, accédez à Propriétés système > Sécurité et vérifiez s’il est répertorié dans le champ Liste des extensions de fichiers (séparées par des virgules) qui peuvent être jointes . |
| headerFooterInfo.Hauteur de l’image du pied de page | Chaîne | Hauteur de l’image de pied de page. Par défaut : 50 points |
| headerFooterInfo.Texte de pied de page | Chaîne | Texte de pied de page à placer au bas de chaque page PDF. |
| headerFooterInfo.Alignement du texte du pied de page | Chaîne | Définit la position du texte dans le pied de page. Assurez-vous que cette valeur ne correspond pas à la zone fournie dans headerFooterInfo.FooterImageAlignment. Valeurs valides :
|
| headerFooterInfo.GeneratePageNumber (Générer un numéro de page) | Chaîne | Marqueur indiquant s’il faut générer un numéro de page PDF. Valeurs valides :
Valeur par défaut : true |
| headerFooterInfo.Alignement de l’image d’en-tête | Chaîne | Définit la position de l’image dans l’en-tête. Valeurs valides :
|
| headerFooterInfo.En-tête ImageAttachmentId | Chaîne | Sys_id de l’image d’en-tête dans la table Pièces jointes [sys_attachment]. Pour déterminer si le type de fichier est pris en charge dans votre instance, accédez à Propriétés système > Sécurité et vérifiez s’il est répertorié dans le champ Liste des extensions de fichiers (séparées par des virgules) qui peuvent être jointes . |
| headerFooterInfo.En-tête ImageHeight | Chaîne | Hauteur de l’image d’en-tête. Par défaut : 50 points |
| headerFooterInfo.Marge gauche ou droite | Chaîne | Taille des marges gauche et droite. S’ils sont positionnés à gauche ou à droite de la page, les détails de l’en-tête/pied de page sont placés dans cette zone. Par défaut : 36 points |
| headerFooterInfo.Orientation de la page | Chaîne | Orientation de la page. Valeurs valides :
Par défaut : Portrait |
| headerFooterInfo.Pagesize | Chaîne | Taille de la page du document. Valeurs valides :
|
| headerFooterInfo.TopOrBottomMargin | Chaîne | Taille des marges supérieure et inférieure. Les détails de l’en-tête et du pied de page sont placés dans cette zone. Par défaut : 72 points |
| fontFamilySysId | Chaîne | Facultatif. Sys_id de la famille de polices à utiliser pour le PDF. Cette sys_id provient de la table Famille de polices de génération PDF [sys_pdf_generation_font_family]. Valeur par défaut : aucune |
| configuration du document | Objet | Facultatif. Objet contenant une configuration de table des matières et une configuration de numéro de page. |
| documentConfiguration.toc_config | Chaîne | Facultatif. Sys_id de la configuration de table des matières à utiliser pour le PDF. Cette sys_id provient de la table Configuration du sommaire [doc_toc_config]. Valeur par défaut : aucune |
| documentConfiguration.page_number_config | Chaîne | Facultatif. Sys_id de la configuration du numéro de page à utiliser pour le PDF. Cette sys_id provient de la table Configuration du numéro de page [doc_page_number_config]. Valeur par défaut : aucune |
| Type | Description |
|---|---|
| Objet | Objet contenant la sys_id de la pièce jointe PDF si la conversion réussit, message d’erreur dans le cas contraire. |
| <Object>.attachment_id | Si la conversion HTML réussit, sys_id du PDF converti et joint. Le fichier est répertorié dans la table Pièces jointes [sys_attachment]. Type de données : chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs possibles :
Type de données : chaîne |
| <Object>.request_id | Sys_id de l’enregistrement de la demande du créateur de changement. Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment convertir HTML en PDF nommé « myPDF » et ajouter le PDF en tant que pièce jointe à un enregistrement dans la table Incident [incident]. Le PDF contient l’en-tête et le pied de page fournis via la pièce jointe.
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));
Sortie :
{"attachment_id":"<sys_id>","message":"Conversion is successful.","request_id":"<change_sys_id>","status":"success"}
PDFGenerationAPI – fillDocumentFieldsAndFlatten(Object fieldsMap, String sysId, String tableName, String tableSysId, String pdfName, Object flatten)
Remplit les champs d’un PDF modifiable, aplatit les champs de données et les joint à l’enregistrement fourni.
- fillDocumentFields() – Remplit les champs d’un PDF modifiable et le joint à l’enregistrement fourni.
- fillFieldsAndMergeSignature() – remplit les champs d’un PDF modifiable, ajoute l’image de signature, aplatit les champs de données et le joint à l’enregistrement fourni.
- getFilledDocumentWithSignatureAsBase64() – : remplit les champs d’un PDF modifiable, crée une image et la convertit en PDF codé en base64.
| Nom | Type | Description |
|---|---|---|
| Carte des champs | Objet | Facultatif. Carte de valeur clé par nom de champ PDF et valeur à remplir. Utilisez la méthode getDocumentFields() pour obtenir la liste des champs disponibles. |
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| tableName | 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]. |
| Nom du PDF | Chaîne | Nom à attribuer au PDF. Valeur par défaut : Sys_id du PDF dans la table Pièces jointes [sys_attachment]. |
| Aplatir | Objet | Facultatif. L’aplatissement des champs permet de verrouiller les champs afin que d’autres utilisateurs ne puissent pas modifier les informations. Spécifiez la clé en tant que « FlattenType » et fournissez une option d’aplatissement sous forme de chaîne. Valeurs valides :
Valeur par défaut : fully_flatten |
| Type | Description |
|---|---|
| Objet | Objet contenant sys_id de la pièce jointe PDF mise à jour en cas de réussite, message d’erreur dans le cas contraire. |
| <Object>.attachment_id | Si l’opération réussit, sys_id du PDF rempli. Le fichier est répertorié dans la table Pièces jointes [sys_attachment]. Type de données : chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs valides :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment remplir des champs et aplatir un PDF modifiable.
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));
Sortie :
"attachment_id":"<sys_id>","message":"Request completed successfully.","status":"success"
PDFGenerationAPI – fillDocumentFields(Object fieldsMap, String sysId, String tableName, String tableSysId, String pdfName)
Remplit les champs d’un PDF modifiable et le joint à l’enregistrement fourni.
- fillDocumentFieldsAndFlatten() – Remplit les champs d’un PDF modifiable, aplatit les champs de données et les joint à l’enregistrement fourni.
- fillFieldsAndMergeSignature() – remplit les champs d’un PDF modifiable, ajoute l’image de signature, aplatit les champs de données et le joint à l’enregistrement fourni.
- getFilledDocumentWithSignatureAsBase64() – : remplit les champs d’un PDF modifiable, crée une image et la convertit en PDF codé en base64.
| Nom | Type | Description |
|---|---|---|
| Carte des champs | Objet | Facultatif. Carte de valeur clé par nom de champ PDF et valeur à remplir. Utilisez la méthode getDocumentFields() pour obtenir la liste des champs disponibles. |
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| tableName | 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]. |
| Nom du PDF | Chaîne | Nom à attribuer au PDF. Valeur par défaut : Sys_id du PDF dans la table Pièces jointes [sys_attachment]. |
| Type | Description |
|---|---|
| Objet | Objet contenant sys_id de la pièce jointe PDF mise à jour en cas de réussite, message d’erreur dans le cas contraire. |
| <Object>.attachment_id | Si l’opération réussit, sys_id du PDF rempli. Le fichier est répertorié dans la table Pièces jointes [sys_attachment]. Type de données : chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs valides :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment renseigner les champs dans un fichier PDF modifiable.
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));
Sortie :
{"attachment_id":"<sys_id>","message":"Request completed successfully.","status":"success"}
PDFGenerationAPI – fillFieldsAndMergeSignature(Object fieldsMap, String sysId, String tableName, String tableSysId, String pdfName, PdfMergeSignRequestor, Object flatten)
remplit les champs d’un PDF modifiable, ajoute l’image de signature, aplatit les champs de données et le joint à l’enregistrement fourni.
- fillDocumentFields() – Remplit les champs d’un PDF modifiable et le joint à l’enregistrement fourni.
- fillDocumentFieldsAndFlatten() – Remplit les champs d’un PDF modifiable, aplatit les champs de données et les joint à l’enregistrement fourni.
- getFilledDocumentWithSignatureAsBase64() – : remplit les champs d’un PDF modifiable, crée une image et la convertit en PDF codé en base64.
| Nom | Type | Description |
|---|---|---|
| Carte des champs | Objet | Facultatif. Carte de valeur clé par nom de champ PDF et valeur à remplir. Utilisez la méthode getDocumentFields() pour obtenir la liste des champs disponibles. |
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| tableName | 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]. |
| Nom du PDF | Chaîne | Nom à attribuer au PDF. Valeur par défaut : Sys_id du PDF dans la table Pièces jointes [sys_attachment]. |
| Demandeur | PdfMergeSignRequestor (en anglais seulement) | Entrée de signature renvoyée par pdfMergeSignRequestor. |
| Aplatir | Objet | Facultatif. L’aplatissement des champs permet de verrouiller les champs afin que d’autres utilisateurs ne puissent pas modifier les informations. Spécifiez la clé en tant que « FlattenType » et fournissez une option d’aplatissement sous forme de chaîne. Valeurs valides :
Valeur par défaut : fully_flatten |
| Type | Description |
|---|---|
| Objet | Objet contenant sys_id de la pièce jointe PDF mise à jour en cas de réussite, message d’erreur dans le cas contraire. |
| <Object>.attachment_id | Si l’opération réussit, sys_id du PDF rempli. Le fichier est répertorié dans la table Pièces jointes [sys_attachment]. Type de données : chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs valides :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment remplir des champs avec signature avec les paramètres par défaut pour aplatir complètement les champs.
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(String sysId)
Obtient une liste des champs modifiables dans un document PDF. Permet de répertorier les champs PDF modifiables sans ouvrir manuellement le fichier à vérifier.
| Nom | Type | Description |
|---|---|---|
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| Type | Description |
|---|---|
| Objet | Objet contenant l’ID du PDF signé, message d’erreur dans le cas contraire. |
| <Object>.Champs | Si la demande aboutit, liste contenant le nom de chaque champ dans le PDF. Type de données : tableau de chaînes |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs possibles :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment récupérer des champs dans une pièce jointe PDF.
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getDocumentFields("attachmentSysId");
gs.info(JSON.stringify(result));
Sortie :
{"message":"Request completed successfully.","fields":["NP_formFillable","reset","print","1SSN","Signature.1","5sigDate","Check Box21"],"status":"success"}
PDFGenerationAPI – getDocumentFieldsType(String sysId)
Obtient le type de champ de l’ensemble de champs modifiables à partir d’un document PDF.
| Nom | Type | Description |
|---|---|---|
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| Type | Description |
|---|---|
| Objet | Objet contenant chaque type de champ PDF en cas de réussite, message d’erreur dans le cas contraire. |
| <Object>.fields_type | Objet répertoriant chaque champ dans le PDF spécifié en cas de réussite, message d’erreur dans le cas contraire. Type de données : objet |
| <Object>.fields_type.<champ> | Objet contenant le numéro de page de chaque champ. Le nom <field> représente l’étiquette de champ, par exemple, « SSN », ou une étiquette automatisée représentant le type. Type de données : objet |
| <Object>.fields_type.<field>.fieldsDetails | Liste d’objets contenant le nom de champ et la valeur correspondante de chaque option pour les types de champ de choix. Types applicables :
Type de données : tableau |
| <Object>.fields_type.<field>.fieldsDetails.fieldName | Nom d’un champ de choix. Type de données : chaîne |
| <Object>.fields_type.<field>.fieldsDetails.value | Valeur d’un champ de choix. Type de données : chaîne |
| <Object>.fields_type.<field>.pageNumber | Numéro de page PDF correspondant à ce champ. Type de données : chaîne |
| <Object>.fields_type.<field>.type | Type de champ PDF. Valeurs possibles :
Type de données : chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs possibles :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment récupérer des types de champs dans une pièce jointe PDF. Les résultats comprennent des retours manuels pour plus de lisibilité et sont tronqués pour plus de concision.
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getDocumentFieldsType("<attachmentSysId>");
gs.info(JSON.stringify(result));
Sortie :
{"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)
: remplit les champs d’un PDF modifiable, crée une image et la convertit en PDF codé en base64.
Le codage Base64 vous permet de sortir un PDF sous forme de chaîne dans un document texte, tel que HTML ou JSON, sans endommager la syntaxe des caractères binaires.
- fillDocumentFields() – Remplit les champs d’un PDF modifiable et le joint à l’enregistrement fourni.
- fillDocumentFieldsAndFlatten() – Remplit les champs d’un PDF modifiable, aplatit les champs de données et les joint à l’enregistrement fourni.
- fillFieldsAndMergeSignature() – remplit les champs d’un PDF modifiable, ajoute l’image de signature, aplatit les champs de données et le joint à l’enregistrement fourni.
| Nom | Type | Description |
|---|---|---|
| Carte des champs | Objet | Facultatif. Carte de valeur clé par nom de champ PDF et valeur à remplir. Utilisez la méthode getDocumentFields() pour obtenir la liste des champs disponibles. |
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| Demandeur | PdfMergeSignRequestor (en anglais seulement) | Entrée de signature renvoyée par pdfMergeSignRequestor. |
| Aplatir | Objet | Facultatif. L’aplatissement des champs permet de verrouiller les champs afin que d’autres utilisateurs ne puissent pas modifier les informations. Spécifiez la clé en tant que « FlattenType » et fournissez une option d’aplatissement sous forme de chaîne. Valeurs valides :
Valeur par défaut : fully_flatten |
| Type | Description |
|---|---|
| Chaîne | En cas de réussite, le PDF converti au format Base64 est ajouté à la table Pièces jointes [sys_attachment]. Le contenu reflète la pièce jointe PDF fournie avec les champs et la signature remplis. Les champs ne sont pas modifiables à moins qu’une autre option d’aplatissement n’ait été fournie avec le flatten paramètre. |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs valides :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment charger deux champs dans une pièce jointe PDF, aplatir les champs et convertir le PDF au format 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(String sysId)
Obtient la taille de page d’un document PDF.
| Nom | Type | Description |
|---|---|---|
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| Type | Description |
|---|---|
| Objet | Objet contenant la taille de chaque page en cas de réussite, message d’erreur dans le cas contraire. |
| <Object>.pages_taille | Si l’opération réussit, la largeur et la hauteur de chaque page PDF en points. Le numéro de page est renvoyé sous forme de chaîne et les valeurs de mesure sont renvoyées sous forme de types de données numériques. Type de données : objet |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs possibles :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment afficher la largeur et la hauteur de chaque page dans une pièce jointe PDF.
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getPdfPageSizes ("<attachmentSysId>");
gs.info(JSON.stringify(result));
Sortie :
{"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(String sysId)
Vérifie si le document PDF contient des champs modifiables.
| Nom | Type | Description |
|---|---|---|
| sysId | Chaîne | Sys_id d’un fichier PDF dans la table Pièces jointes [sys_attachment]. |
| Type | Description |
|---|---|
| Objet | Objet contenant la taille de chaque page en cas de réussite, message d’erreur dans le cas contraire. |
| <Object>.document_editable | Si l’opération réussit, marqueur indiquant si le document est modifiable. Valeurs valides :
Type de données : valeur booléenne fournie sous forme de chaîne |
| <Object>.Message | Message confirmant la réussite ou l’erreur. Valeurs possibles :
Type de données : chaîne |
| <Object>.Statut | État indiquant si l’opération a réussi. Valeurs possibles :
Type de données : chaîne |
L’exemple suivant montre comment déterminer si les champs d’un document PDF sont modifiables.
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.isDocumentFillable("<attachmentSysId>");
gs.info(JSON.stringify(result));
Sortie :
{"message":"Request completed successfully.","document_editable":"true","status":"success"}
PDFGenerationAPI – PDFGenerationAPI()
Instancie un nouvel objet PDFGenerationAPI .
| Nom | Type | Description |
|---|---|---|
| Néant |
L’exemple suivant montre comment créer un objet PDFGenerationAPI .
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;