Vous pouvez gérer les opérations de génération de mailings à l’aide d’un formulaire de sortie qui intègre des champs, des libellés de champs ou de table ou encore des variables dans un texte statique.
Vous pouvez créer des documents dont la structure est identique mais dont les noms, les adresses et tout calcul que vous souhaitez réaliser varient pour chaque enregistrement.
Les documents des mailings sont utiles lorsque vous souhaitez, par exemple, annoncer une offre spéciale à vos clients ou informer vos partenaires de votre prochain déménagement. Une autre des utilisations typiques des mailing est la relance des impayés. Vous pouvez, par exemple, créer une variable et une méthode pour calculer le montant exact.
Lorsque vous créez un formulaire en vue de l’utiliser pour un mailing, utilisez le type Formulaire impression détaillé dans la liste déroulante des types de formulaires de l’assistant de création de formulaires. Dans l’éditeur de formulaires, créez une zone de texte qui contiendra le texte statique et les champs, les libellés ou les variables qui changeront pour chaque enregistrement. Vous saisissez alors les champs, les libellés ou les variables dans la zone texte. Lors de l’impression, ces éléments variables seront remplacés à la volée dans le texte.
L’exemple ci-dessous représente des champs et des variables intégrés dans le texte.
![](../../picture/436160/pict436160.fr.png)
Pour créer un formulaire de sortie type mailing, définissez un formulaire de type "impression détaillé". Dans la zone Corps, ajoutez une ou plusieurs zone(s) de texte statique.
Dans la zone de texte, saisissez le texte que vous souhaitez voir apparaître dans votre lettre, en plaçant les noms de variables, de champs et les libellés entre les signes “<” et “>”.
Vous pouvez utiliser un champ provenant de toute table de la base. Pour les champs qui proviennent de la table courante, il n’est pas nécessaire de spécifier le nom de la table ; ils peuvent être saisis comme ceci : <Champ>. Pour les champs provenant d’autres tables, il est nécessaire de spécifier le nom de la table ; ils sont saisis comme ceci : <[Nom de la table]Champ>. Lorsque le formulaire est imprimé, les informations provenant du champ de chaque enregistrement sont imprimées à la place de l’élément <Champ> dans la zone de texte.
Pour insérer des libellés de tables, saisissez : <?[Nom de la table]> ou <?[2]> (numéro d’ordre de création de la table). Pour insérer des libellés de champs, saisissez <?[Nom de la table]Nom du champ> ou <?[2]3> (numéro d’ordre de création de la table et du champ), ou encore <?3> pour insérer un champ de la table courante. Pour plus d’informations sur ce point, reportez-vous à la section Utiliser des références dans les textes statiques.
La valeur de chaque variable doit être affectée par une méthode objet ou la méthode formulaire.
Vous pouvez spécifier la manière dont sera affiché le champ ou la variable en insérant un point virgule suivi d’un des LIRE PARAMETRE ELEMENT de la base. Par exemple, le document affiché ci-dessus contient un format d’affichage pour la variable vAugment. La variable <vAugment;### ##0.00 Euros> calcule le montant du bonus de la personne et l’affiche dans un format adéquat.
4D propose un raccourci pour l’insertion des champs dans un bloc de texte. Le raccourci vous permet de choisir le champ dans une liste déroulante au lieu de devoir le saisir. Pour cela, cliquez avec l’outil texte dans votre zone de texte pour placer le point d’insertion où vous souhaitez insérer le champ puis appuyez sur la touche Alt (sous Windows) ou Option (sous Mac OS) puis cliquez et maintenez le bouton de la souris enfoncé.
4D affiche un menu déroulant qui contient les champs de la table courante à partir duquel vous pouvez sélectionner le champ qui vous intéresse.
Pour choisir un champ d’une autre table de la base de données, maintenez enfoncées les touches Alt+Maj (sous Windows) ou Option+Maj (sous Mac OS) et cliquez. 4D affiche alors un menu hiérarchique des tables et des champs de la base de données.
![](../../picture/436237/pict436237.fr.png)
4D insère <Champ> ou <[Table]Champ> dans la zone de texte, au niveau du point d’insertion.
Lorsque la lettre est imprimée, les valeurs des champs et des variables apparaissent pour chacun des enregistrements :
![](../../picture/436869/pict436869.fr.png)