Utilisation du studio de formulaire dans vMap2 (WIP)
Sources de données
Dans les formulaires vMap2 il est possible de faire apparaître des listes déroulantes.
Pour que ces dernières fonctionnent et pour définir leur contenu il faudra définir des sources de données.
Ces dernières sont accessibles via le bouton portant le même nom et afficheront le gestionnaire permettant l'édition, l'ajout ou la suppression.
Sur vMap2 plusieurs types de sources sont disponibles :
Texte correspond à de la donnée en dur qui est stocké dans le formulaire
Valeur d'une table locale utilisera la connexion de l'utilisateur pour récupérer des données contenues sur le Postgres hébergeant vMap2
Base de données externe permettra de récupérer le contenu d'une table distante sur Postgres ou Oracle en utilisant une connexion fournie
API externe donne la possibilité d'utiliser le résultat d'une API publique (exemple BAN)
Service Web permet d'utiliser l'API de vMap2
Dynamiser vos formulaires
Valeur des champs
Chaque champ peut se voir associé des options avancées, dans ces dernières il est possible de gérer une valeur dynamique à un champ en utilisant une expression ternaire JavaScript.
Prenons l'exemple d'une concaténation avec un système de coordonnées où l'on voudrait que l'utilisateur saisisse un SRID et que le formulaire renvoie un code EPSG.
Dans cet exemple ce que nous voulons ici c'est que lorsque l'utilisateur saisit sur "SRID" alors "EPSG" se remplisse automatiquement.
Pour ce faire il faudra aller dans la section Options avancées
> Valeur
et saisir l'expression suivante = 'EPSG:' + {{srid}}
.
Analysons cette expression :
=
signifie à vMap2 qu'il s'agit d'une expression dynamique.'EPSG:'
correspond à la première partie du résultat voulu, vous remarquerez que l'expression est entourée par des simple quottes car il s'agit d'une chaîne de caractères.+
sert à la concaténation.{{srid}}
srid correspond au nom du paramètre publié auquel nous faisons référence, les accolades permettent de dire à vMap2 qu'il faut remplacer le contenu par la valeur du champ.
Visibilité des champs
Comme pour la valeur des champs il est possible d'afficher ou non un paramètre en fonction d'un ou plusieurs autres.
En suivant l'exemple précédent je peux écrire simplement = {{srid}}
pour que le champ ne s'affiche que si srid
possède une valeur.
Pour faire une comparaison et n'afficher le champ que si srid
vaut 2154 je devrai saisir l'expression = {{srid}} == 2154
Listes cascade
Les listes en cascade sont utilisées dans le cas où l'on utilise des sources de données de type Valeur d'une table locale ou Base de données externe elles permettent de filtrer une liste avec la valeur d'une liste parente.
prenons l'exemple des régions et des départements, dans cet exemple ce que nous cherchons à faire c'est de ne charger les départements que lorsqu’une région est sélectionnée
Pour cela je vais définir une cascade, sélectionner mon élément parent (ici code_reg
) puis sélectionner mon attribut de filtrage correspondant au nom de la colonne dans la base de données (ici cods_reg
également)