Customs
Customs
Introduction
Les customs sont des éléments qui permettent d’insérer du XML dans les ressources générées par l’interpréteur (en l’occurence le XML de formulaire et le XML de varset).
Il y a deux types de customs:
- Custom contenant du XML à insérer à un endroit précis d’un autre XML (formulaire ou varset)
- Custom pour modifier un attribut d’un XML
Pour le premier type de custom, le nom est décomposé en deux parties, la première indique où le noeud sera inséré, et la seconde le nom du noeud à créer.
Ainsi le custom form.dataquery.main.column va insérer une balise column dans le dataquery principal du XML de formulaire.
Exemples:
Nom du custom: varset.var
Nom du custom: form.dataquery.main.column_simple
Le second type de custom sert à définir ou modifier un attribut.
Exemples:
Nom du custom: form.dataquery.main[begin]
Valeur: 20
Nom du custom: form.layout[hide_title]
Valeur: true
Nomenclature pour chaque custom décrit dans la documentation ci-jointe:
- Fonction: rôle du custom
- Elément Epicraft: élément Epicraft où déclarer le custom
- Unique: custom unique ?
- Ressource: ressource voozanoo concernée
Attention Certains éléments doivent respecter un certain ordre dans le dataquery. C’est le cas pour “join”, “group_by” et “order_by”.
Liste des customs
form.config
Fonction: déclaration du noeud config du XML de formulaire.
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Exemple:
form.dataquery.main.condition
Fonction: ajout d’un noeud condition dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
Aide La valeur de l’attribut table_alias est utilisée dans la balise <field>
, elle est générée avec une valeur aléatoire. Pour la récupérer il faut éditer le XML sur Voozanoo.
form.dataquery.main.joins
Fonction: ajout d’un noeud joins contenant des sous noeuds join dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataquery.main.column_simple
Fonction: ajout d’un noeud column simple dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataquery.main.column
Fonction: ajout d’un noeud column dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataquery.main.groups
Fonction: ajout d’un noeud groups contenant des sous noeuds group dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataquery.main.orders
Fonction: ajout d’un noeud orders contenant des sous noeuds order dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataquery.main.variable
Fonction: ajout d’un noeud variable le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
Aide Les noeuds <variable>
sont obligatoirement contenus dans un noeud <variables>
, l’interpréteur ajoute automatiquement ce noeud.
form.dataquery.main.variables
Fonction: ajout d’un noeud variables contenant des sous noeuds variable dans le dataquery principal du XML de formulaire.
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Note Il est probable qu’il y ait un conflit si on utilise à la fois un custom form.dataquery.main.variable et form.dataquery.main.variables.
form.dataquery
Fonction: ajout d’un dataquery dans le XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataset
Fonction: ajout d’un dataset dans le XML de formulaire.
Elément Epicraft: page
Unique: non
Ressource: formulaire
form.dataquery.main[id]
Fonction: modifie l’attribut id du dataquery principal du XML de formulaire
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Valeur(s) possible(s): string
Attention La suppression de ce custom ne remet pas la valeur initiale de l’attribut id.
form.dataquery.main[auto_add_record]
Fonction: modifie l’attribut auto_add_record du dataquery principal du XML de formulaire
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Valeur(s) possible(s): true|false
form.dataquery.main[begin]
Fonction: modifie l’attribut begin du dataquery principal du XML de formulaire
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Valeur(s) possible(s): integer
form.dataquery.main[range]
Fonction: modifie l’attribut range du dataquery principal du XML de formulaire
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Valeur(s) possible(s): integer
form.dataquery.main[disable_main_condition]
Fonction: Suppression de la condition qui est ajoutée par défaut dans le dataquery principal (condition sur la clé primaire).
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Valeur(s) possible(s): true|false. A true, la condition est supprimée.
Attention Si le custom est supprimé alors qu’il vaut true, la condition n’est pas remise!
Exemple de condition:
form.layout[hide_title]
Fonction: modifie l’attribut hide_title du layout du XML de formulaire
Elément Epicraft: page
Unique: oui
Ressource: formulaire
Valeur(s) possible(s): true|false (par défaut à false)
form.widget.option
Fonction: ajoute une option sur le widget principal
Elément Epicraft: composant
Unique: non
Ressource: formulaire
Exemple:
<option output="html" option_name="show_on" value="{foo}='bar'"/>
Note Le widget principal correspond au noeud root généré par l’interpréteur pour le composant.
Pour un champ, le code XML ci-dessous sera généré, l’option sera donc insérée sous le noeud <form_row>
form.widget.subnode.option
Fonction: ajoute une option sur un noeud précis
Elément Epicraft: composant
Unique: non
Ressource: formulaire
Note Prenons par exemple le custom form.widget.value.option avec l’option <option output="html" option_name="widget" value="WidgetDateAdvanced"/>
, ce qui donne le XML ci-dessous.
form.widget
Fonction: utilisable uniquement sur un composant de type bulk, définit le composant
Elément Epicraft: composant bulk
Unique: oui
Ressource: formulaire
Exemple:
form[name]
Fonction: définit l’attribut name du noeud form
Elément Epicraft: page
Unique: oui
Ressource: formulaire
varset.var
Fonction: ajoute une variable dans le varset lié à la page
Elément Epicraft: page
Unique: non
Ressource: varset
Exemple: