Exemple d'utilisation de l'action d'impression de l'API REST BarTender avec TransformTextToRecordSetAction
Aperçu
Lorsque vous automatisez l'impression de vos étiquettes à l'aide de l'API REST de BarTender, il est possible de remplacer une connexion à une base de données pour votre étiquette avec des données personnalisées via des fichiers texte, sans avoir besoin de modifier votre fichier BTW.
L'utilisation de la fonction TransformTextToRecordSetAction lors de votre appel API convertit les données de votre fichier texte en enregistrements de données qui viendront ensuite alimenter votre étiquette au moment de l'impression.
Cet article va vous montrer comment appeler cette fonction en utilisant YAML.
Pour un aperçu général du fonctionnement de l'API REST, vous pouvez consulter cet article.
S'applique à
BarTender 2022 et versions ultérieures
Édition Automation et supérieure
Informations
Créez votre document BarTender
- Créez un fichier texte de base de données avec le format suivant :
Champ 1, Champ 2, Champ 3
Valeur 1, Valeur 2, Valeur 3
Valeur 4, Valeur 5, Valeur 6 - Enregistrez le fichier sous dbfile.txt.
- Ouvrez BarTender Designer et créez un nouveau document.
- Ajoutez une connexion à une base de données texte pour dbfile.txt. (Consultez cet article pour plus d'informations)
- Assurez-vous que votre connexion à la base de données s'appelle dbfile :
- Ajoutez 3 objets texte à l'étiquette et reliez-les aux champs de la base de données.
- Enregistrez le fichier sous C:\Docs\APITest.btw.
Préparez votre environnement
- Exportez la configuration de votre connexion à la base de données :
- Enregistrez le fichier sous C:\Docs\dbfolder\ConnectionSetup.xml.
- Créez un fichier de données avec le contenu suivant :
Champ 1, Champ 2, Champ 3
Valeur 7, Valeur 8, Valeur 9
Valeur 10, Valeur 11, Valeur 12 - Enregistrez-le sous C:\Docs\dbfolder\datafile.txt.
- Créez un dossier nommé Output sous C:\Docs\.
Effectuez votre appel API
- Ouvrez le lien suivant dans votre navigateur :
http://localhost:5159/swagger/index.html
- En haut de la page, cliquez sur le bouton Try it out :
- Assurez-vous que le paramètre File est vide.
- Pour le corps de la requête, sélectionnez text/vnd.yaml.
- Dans le corps de votre requête, ajoutez les deux actions suivantes :
- TransformTextToRecordSetAction avec les paramètres :
- ConnctionSetup : le fichier xml exporté depuis la configuration de connexion de votre fichier btw.
- Text : le fichier texte qui contient les données à insérer dans vos étiquettes au moment de l'impression.
- PrintBTWAction avec les paramètres :
- DocumentFile : le chemin vers votre fichier btw à imprimer.
- Printer : l'imprimante à utiliser.
- PrintToFileFolder & PrintToFileFileName : l'emplacement de sortie et le nom de fichier utilisés par l'imprimante PDF.
- DatabaseOverrides : les paramètres de remplacement de la base de données. Dans ce cas, la connexion à la base de données dbfile est remplacée par la variable datum.
- TransformTextToRecordSetAction avec les paramètres :
ActionGroup:
Actions:
- TransformTextToRecordSetAction:
ConnectionSetup:
File: C:\Docs\dbfolder\ConnectionSetup.xml
Text:
File: C:\Docs\dbfolder\datafile.txt
RecordSetVariableName: datum
- PrintBTWAction:
DocumentFile: C:\Docs\APITest.btw
Printer: PDF
PrintToFileFolder: C:\Docs\Output
PrintToFileFileName: test.pdf
DatabaseOverrides:
- Name: dbfile
Type: VariableName
DataSourceVariableName: datum
Vous pouvez également essayer cette alternative plus simple de l'action Print présentée ci-dessus :
- PrintBTWAction:
DocumentFile: C:\Docs\APITest.btw
Printer: PDF
PrintToFileFolder: C:\Docs\Output
PrintToFileFileName: test.pdf
DatabaseOverrides:
- Name: data
FileTarget: C:\kit\databases\data.txt
Si l'appel a réussi, vous devriez voir le message ci-dessous :