Utilisation d'un modèle Word avec des lignes agissant comme éléments de ligne.

Des lignes adjacentes dans la feuille de calcul avec la même adresse e-mail sont utilisées pour produire une seule facture PDF avec des éléments de ligne. Il s'agit d'un exemple avancé où la méthode « lignes vers e-mail » est « Une ou plusieurs lignes génèrent un e-mail ». Cet exemple illustre également l'utilisation d'un fichier Word comme modèle.

Remarque : les modèles HTML sont idéalement utilisés pour créer des éléments de ligne à partir de lignes, car ils peuvent utiliser JavaScript ou le langage de modélisation Liquid pour formater le document. Cet exemple montre comment le faire dans un modèle Word ; pour plus de fonctionnalités, utilisez un modèle HTML.

Cette page d'aide ne concerne que les versions de pdfMachine merge 2.0.7203.26553 et antérieures. Les versions ultérieures doivent utiliser la syntaxe décrite ici.

Étape 1. Créer un fichier CSV ou une feuille de calcul Excel

La feuille de calcul a des champs de fusion comme en-têtes de colonnes. Chaque ligne doit avoir une adresse e-mail. Créez des lignes consécutives avec la même adresse e-mail pour chaque élément de ligne que vous souhaitez dans le PDF.

Dans cet exemple, 4 e-mails seront envoyés, chacun avec une seule pièce jointe.

  • Le premier aura 4 éléments de ligne
  • Le deuxième aura 2 éléments de ligne
  • Les troisième et quatrième auront chacun 1 élément de ligne

Étape 2. Créer le modèle Word.

pdfMachine merge s'installe avec des profils prêts à l'emploi pour vous aider à démarrer.
Cet exemple est « Test Profile - Word template with 'bundled' emails »

Entourez les champs de fusion qui ne doivent pas être utilisés comme éléments de ligne avec {{ }}. Les noms des champs de fusion doivent correspondre exactement aux noms de colonnes dans la source de données. Les champs de fusion peuvent être formatés à l'aide du langage de modélisation Liquid.

Insérer les éléments de ligne

Lorsque vous utilisez Word, vous devez créer un ensemble de champs de fusion pour chaque élément de ligne qui pourrait apparaître dans le corps de l'e-mail ou la pièce jointe. C'est différent des modèles HTML qui peuvent utiliser JavaScript ou Liquid pour avoir un nombre variable d'éléments de ligne. Les modèles Microsoft Word n'ont pas de construction de boucle, vous devez donc tous les mettre vous-même. Vous faites référence à des lignes consécutives en ajoutant « __ » et le numéro de l'élément de ligne après le champ de fusion.

Par exemple : pour afficher jusqu'à 4 lignes de « montants donnés » comme dans cet exemple, créez 4 champs de fusion.

{{amount_donated__1}}
{{amount_donated__2}}
{{amount_donated__3}}
{{amount_donated__4}}

Pour les pièces jointes ayant moins de 4 lignes, les nouvelles lignes seront quand même affichées, ce qui donnera des lignes vides pour les champs de fusion sans ligne correspondante. Vous pouvez éviter cela en utilisant le filtre WordNewLine. Cela empêchera l'affichage des nouvelles lignes après un champ de fusion vide.

{{amount_donated__1|WordNewLine}}
{{amount_donated__2|WordNewLine}}
{{amount_donated__3|WordNewLine}}
{{amount_donated__4|WordNewLine}}

Pour afficher un champ calculé (ex. : total_donated), vous devez avoir une colonne dans votre source de données représentant ce champ de fusion. Les calculs ne peuvent être effectués que dans les modèles HTML en utilisant JavaScript.

Étape 3. Définir la « méthode lignes vers e-mails » sur « Une ou plusieurs lignes génèrent un e-mail ».