Sur cette page, sont recensées des informations utiles pour aider à la réalisation de publipostages (mailing ou e-mailing) évolués à partir de LibreOffice. Pour cela, on s'appuie sur un document .odt Writer qui est le document maître dans lequel on insére souvent des champs issus d'une base de données .ods Calc.

On pourra imprimer des lettres personnalisées mais aussi envoyer des courriels personnalisés en html (avec informations contenues dans le corps du courriel) ou avec une pièce-jointe en .pdf ou .odt.

On pourra choisir finement les informations à insérer grâce à des champs, des textes ou paragraphes conditionnels qu'on pourra afficher ou masquer selon la valeur d'un champ ou de plusieurs autres.

Source : https://help.libreoffice.org/latest/fr/text/swriter/mailmergetoolbar.html

Astuces utiles :

  • Par défaut, les paragraphes masqués sont affichables. Vérifiez que, dans le menu Outils ▸ Options ▸ LibreOffice Writer ▸ Aides au formatage, la case Champs : paragraphes masqués est bien décochée.
  • Par défaut, si vous avez un champ vide dans un paragraphe, celui-ci est masqué automatiquement. -> Ça ne semble plus vrai avec les versions 7 : il faudra passer par un paragraphe masqué...
  • Si l'on veut faire du publipostage par courriel, il existe actuellement (sous Libreoffice 7.0.3.1 mais qui existe aussi sous 6.4), un bug qui ne permet pas d'envoyer qu'une plage (la fenêtre d'envoi reste fixe et les envoi ne se font pas). Il est obligatoire de tout envoyer pour que ça marche. Bug signalé ici : https://bugs.documentfoundation.org/show_bug.cgi?id=138398

Les champs conditionnels : https://wiki.documentfoundation.org/Faq/Writer/052/fr

Il est possible d'avoir des paragraphes ou des textes conditionnels en indiquant des opérateurs dans des champs spéciaux :

  • Pour une égalité, vous pouvez écrire EQ à la place de == .Si le champ est x, on écrira x =="" ou x EQ "", c'est exactement la même chose.
    On met des "" pour encadrer du texte mais pas pour des nombres.
  • Si vous souhaitez que la condition soit vérifiée lorsque la condition est différente du champ pri sen référence, vous noterez alors x !="" ou encore x NEQ ""
  • Si la condition pour qu'elle soit vraie ne doit pas être x alors vous noterez !x ou NOT x
  • Si la condition doit être supérieure ou égale à une valeur indiquée alors vous utiliserez GEQ
  • Si la condition doit être inférieure ou égale à une valeur indiquée alors ce sera LEQ
  • Si la condition est supérieure c'est juste G ou > et si elle est inférieure c'est juste L ou >
  • On pourra inclure plusieurs conditions avec les opérateurs AND et OR mais il faudra obligatoirement utiliser des parenthèses pour séparer les conditions.