Utilisation du studio de formulaire dans GTF (WIP)

Généralités

Le studio GTF est l'un des points forts de l'application, il permet à tout auteur de traitements de mettre en forme un formulaire plus ou moins complexe qui servira à l'utilisateur lors de la création de la demande.

Publication - studio

Lien avec les paramètre publiés de FME

Lors de l'import du projet FME, GTF va analyser les paramètres publiés de ce dernier et les incorporer dans le formulaire par défaut. Chaque type de paramètre est important et sera retranscrit dans GTF.

Paramètres publiés sur FME

Paramètres publiés sur FME

Paramètres publiés sur GTF

Paramètres publiés sur GTF

Sources de données

Dans les formulaires FME et GTF il est possible de faire apparaître des listes déroulantes.

Sources de données sur GTF

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.

Sources de données sur GTF

Lors de l'import de projets FME, GTF créera automatiquement les sources de données en fonction de ce qui est défini dans le projet.

Sur GTF plusieurs types de sources sont disponibles :

  • Texte correspond à de la donnée en dur qui est saisie soit dans GTF soit dans FME

  • Valeur d'une table locale utilisera la connexion de l'utilisateur pour récupérer des données contenues sur le Postgres hébergeant GTF

  • 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 GTF

Lors de l'import de projets FME, GTF utilisera le type texte puisque c'est l'équivalent de ce que propose FME

Sources de données sur GTF

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.

Valeurs dynamiques sur GTF

Pour ce faire il faudra aller dans la section Options avancées > Valeur et saisir l'expression suivante = 'EPSG:' + {{srid}}.

Valeurs dynamiques sur GTF

Analysons cette expression :

  • = signifie à GTF 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.

  • + set à la concaténation.

  • {{srid}} srid correspond au nom du paramètre publié auquel nous faisons référence, les accolades permettent de dire à GTF 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

Listes cascade sur GTF

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)

Listes cascade sur GTF

Oracle

La fonctionnalité n'est pas active par défaut, vous trouverez la procédure pour l'activer ici