Publik se compose d'une série de formulaires : le formulaire qui formalise le profil d'un usager, le thème du site, une démarche, etc.
Chacun de ces formulaires relève d'un environnement.
Chacun d'eux est composé de champs à saisir.
Pour faire référence à la valeur d'un champ de formulaire à l'aide d'une formule Python, il faut indiquer l'identifiant de l'environnement ainsi que l'identifiant du champ dont la valeur est sollictée. Le Nom de variable constitue ces identifiants.
Pour solliciter une valeur de champ, la formule Python devra se composer d'un préfixe constitué par le Nom de variable de l'environnement, et d'un suffixe, constitué par le Nom de variable du champ de cet environnement (formulaire) dont la valeur est requise.
Publik dispose d'un système générique appelé Variables de substitution qui permet de faire référence à des valeurs de champs.
Lorsque la valeur d'un champ sollicitée résulte d'un champ et d'un environnement présent dans le répertoire de ces Variables de substitution de Publik, la référence à cette valeur s'écrit comme ceci :
Lorsque la valeur d'un champ sollicitée appartient à un environnement prévu par Publik mais pas le champ dont la valeur résulte, l'administrateur fonctionnel devra manuellement attribuer un Nom de variable au champ du formulaire dont la valeur est sollicitée.
Règles syntaxiques d'une formule Python : par commodité, seules les lettres minuscules, sans accents, et le signe underscore sont admis.
Le recours à des Variables de substitution prévues par Publik, ou crées manuellement, en attribuant à un environnement (formulaire) et/ou à un champ d'un (télé)formulaire, un Nom de variable est particulièrement utile pour :
* Conditionner l'affichage d'une page d'un (télé)formulaire d'une démarche, en fonction de la réponse des usagers en cours de saisie,
* Diriger automatiquement une demande d'usager en cours de traitement vers un statut, en fonction des réponses à une question des usagers,
* Intégrer dans le contenu de documents, tels que courriels, messages ou commentaires, relatifs à une demande d'usager, la valeur d'un champ propre à l'usager,
La réception d'une demande d'usager se formalise sous la forme du statut "Reçu". Ce statut est configuré pour qu'il provoque l'action "Envoyer un email" à l'usager accusant réception de la part de la collectivité de sa demande. Pour standardiser le contenu de ce courriel tout en lui conférant un caractère personnel, le recours à des variables de substitution, permet d'intégrer dans le corps de texte du courriel une valeur propre à chaque formulaire saisi par un usager.
Cher [form_var_nom],
Nous avons bien reçu votre demande relative à la démarche [form_var_titre].
Nous confirmons que [form_var_quantite] enfants ont été inscrits.
(Avec nom, titre, et quantite, les noms de variable attribués aux champs "Nom de l'usager", "Titre de la démarche" et "Nombre d'enfants à inscrire" du formulaire "Inscription à la fête des enfants".
* Identifier un environnement non présent dans le répertoire des Variables de substitution.
Lorsque le workflow d'une démarche prévoit que l'atteinte d'un statut par une demande d'usager qui en résulte, provoque l'affichage d'un formulaire, ce formulaire constitue un nouvel environnement que ne référence pas le répertoire des Variables de substitution de Publik.
En conséquence, pour faire référence à la valeur d'un des champs de ce nouvel environnement, il faut veiller à attribuer à l'environnement, ainsi qu'à l'un de ses champs, un Nom de variable.
La formule Python s'écrira :
nom_de_variable_de_l_environnement_du_champ_var_nom_de_variable_du_champ