Affiche un bouton qui permet de lancer une tache de publipostage MailMerge s’appuyant sur les données d’un ou plusieurs dataset(s).

Edit me

Hérite de WidgetBase.

Fonction

Rendu

Ce widget sert à lancer une tâche dans MailMerge et à afficher le résultat au format pdf.

Utilisation

Exemple complexe

Dans l’exemple ci-dessous, on a :

  • Un widget Mailmerge qui peut être lu ainsi :
    • id_mm="1538" : c’est la tâche n°1538 du module de mailmerge qui va être appelé
    • dataset="example": Si cet attribut est fourni, Voozanoo va y chercher une clef primaire (id_data). S’il en trouve une, il va la passer en paramètre à Mailmerge comme dans le cas de l’attribut dataset_filter. Le cas d’utilisation classique est le suivant :
      • On est sur une fiche patient qui a donc un dataset patient contenant un unique enregistrement qui a un id_data.
      • On utilise l’attribut dataset="patient" dans le widget Mailmerge et on a une condition attendant un paramètre id_data dans le dataquery qui sert de source de données pour la tâche Mailmerge.
      • Ainsi, le document généré ne concernera que la fiche courante.
    • dataset_filter="filter" : on transmet aussi les données du dataset appelé filter comme paramètre (voir plus bas)
    • option_name="use_current_user" value="true" : on souhaite utiliser les droits de l’utilisateur courant pour obtenir les données (donc l’utilisateur courant est sur le même projet et a accès aux bonnes données), c’est une alternative à l’utilisation d’un compte de service
<mailmerge id_mm="1538"  label="Lancer la tâche 1538 de mailmerge, format pdf" dataset_filter="filter" dataset="example">
  <option output="html" option_name="output_format" value="pdf"/>
  <option output="html" option_name="use_current_user" value="true"/>
</mailmerge>

Exemple simple

On aurait aussi pu se limiter à ceci si l’on ne souhaitait pas envoyer de paramètres à l’exception du paramètre id_mm que nous devrions envoyer.

<mailmerge id_mm="1538"/>

Le dataset_filter et l’envoi de paramètres

Si l’attribut dataset_filter est utilisé :

  • Voozanoo va trouver le dataset signalé et s’en servir pour envoyer des paramètres au module de mailmerge
  • On peut ensuite les utiliser :
    1. Dans les dataqueries qui servent de source de données a la tâche mailmerge (pour des conditions par exemple)

Ceci est souvent utilisé pour permettre à l’utilisateur d’exécuter les tâches dans mailmerge et rendre leurs résultats dynamiques : il fait des choix dans un court formulaire avant de lancer la tâche.

Utilisation des paramètres dans les dataqueries

L’exemple ci-dessous attend des paramètres username et date_max pour les utiliser comme conditions dans un dataquery qui sert de source de données. L’attribut optional='true' sert à ignorer ces conditions si les attributs ne sont pas transmis. Si l’attribut dataset_filter du widget Mailmerge est utilisé, les paramètres que le dataset signalé contient seront transmis au dataquery automatiquement.

<dataquery id="user_dataquery" table_name="{pj}_user_data" varset_name="user" table_alias="u">
  
  <column_simple table_name="u" field_name="id_data"/>
  <column_simple table_name="u" field_name="username"/>
  <column_simple table_name="u" field_name="firstname"/>
  <column_simple table_name="u" field_name="lastname"/>
  <column_simple table_name="u" field_name="creation_date"/>
  
  <condition sql="{username} = {param_username}" optional="true">
    <field field_name="username" table_name="u" alias="username"/>
    <variable alias="param_username" default="NULL">
      <entry type="param" name="username"/>
    </variable>
  </condition>
  
  <condition sql="{creation_date} &lt; {param_date_max}" optional="true">
    <field field_name="creation_date" table_name="u" alias="creation_date"/>
    <variable alias="param_date_max" default="NULL">
      <entry type="param" name="date_max"/>
    </variable>
  </condition>
  
</dataquery>

Exemple illustré

exemple_illustré

Attributs

Les attributs nécessaires au bon fonctionnement du widget sont signalés par un astérisque.

Ce widget hérite de fonctionnalités issues d’un autre widget. Consultez la documentation dédiée au WidgetBase pour vérifier si d’autres attributs sont disponibles.

Options

Les options nécessaires au bon fonctionnement du widget sont signalées par un astérisque.

Ce widget hérite de fonctionnalités issues d’un autre widget. Consultez la documentation dédiée au WidgetBase pour vérifier si d’autres options sont disponibles.

asynchrone

Permet de lancer la tâche de façon asynchrone.

  • Version : >=2.15

  • Valeurs possibles : Boolean

<option output="html" option_name="asynchrone" value="false" />

output_file_name

Query ou chaîne de caractères correspondant au(x) nom(s) de(s) fichier(s) qui seront générés par MailMerge.

  • Version : >=2.26

  • Valeurs possibles : string

  • Valeur par défaut : export

<option output="html" option_name="output_file_name" value="export" />

output_format

Définit le format de document généré. Seul les modèles en docx peuvent générer des documents docx.

  • Version : >=2.15

  • Valeurs possibles : docx ou pdf

  • Valeur par défaut : pdf

<option output="html" option_name="output_format" value="pdf" />

save_before_execute

Enregistre la fiche avant de lancer la tâche.

  • Version : >=2.26

  • Valeurs possibles : Boolean

<option output="html" option_name="save_before_execute" value="false" />

use_current_user

Permet de garder le contexte de l’utilisateur courant lors de l’appel à mailmerge. Cette option ne fonctionne que si l’application appelante est l’application contenant les données.

  • Version : >=2.15

  • Valeurs possibles : Boolean

<option output="html" option_name="use_current_user" value="false" />