Interrogation GetFeatureInfo

Le protocole WMS (Web Map Service) inclut la requête GetFeatureInfo. Cette fonction permet de récupérer les attributs d’un objet géographique à partir d’un clic sur la carte. Dans vMap2, cette propriété a été implémantée pour permettre à l'utilisateur d'interroger n’importe quelle couche WMS (interne ou externe) et ainsi d'obtenir un résultat (en HTML, Json, Texte...) dans un bandeau dédié à cet effet.

Important : La fonctionnalité "Formulaire de vMap2" ne permet pas d'interroger des couches issues de flux WMS. Pour ce faire, il est nécessaire d'utiliser la fonctionnalité GetFeatureInfo. A l'inverse, cette fonctionnalité permet d'interroger des "couches vMap2", c'est à dire des couches internes gérées par l'application

Interroger une couche par GetFeatureInfo

L'interrogation d'une couche par GetFeatureInfo ne fonctionne pour le moment dans vMap2, que pour les couches issues de sources de données :

  • Postgresql

  • WMS

Une fois la couche créée ...

Interrogation par GetFeatureInfo d'une couche Postgresql

... Se rendre dans le mode "GetFeatureInfo" d'une couche Postgresql pour activer l'option d'interrogation par GetFeatureInfo et sélectionner les champs de la table qui seront affichés dans le formulaire de l'application vMap2 :

Pour chaque champ sélectionné, il est nécessaire de configurer un libellé ainsi que le type du champ. Le type du champ permettra de correctement formater l'affichage de la valeur du champ en question dans le résultat HTML qui sera généré par l'application. Le type peut être de différente forme :

  • Texte

  • Nombre

  • Date

  • Date et heure

  • Lien (URL)

Cette interface permet aussi de modifier manuellement (drag and drop) le positionnement de chaque champ dans le formulaire qui sera rendu visible à l'utilisateur. Dans l'exemple ci-dessous, 3 champs (code, nom et pop90) seront affiché dans le formulaire, les uns en dessous des autres avec leur libellé correspondant.

Activation couche postgresql getfeatureInfo

Configuration couche type postgres

Interrogation par GetFeatureInfo d'une couche issue d'un flux WMS

... Se rendre dans l'onglet "Interrogation" le mode "Paramètres avancées" d'une couche issue d'un flux WMS et configurer la couche pour que cette dernière accepte d'être interrogée via par GetFeatureInfo.

Dans cet onglet, deux options sont disponibles :

  • Une première pour autoriser la couche à être interrogée en GetFeatureInfo

  • Une seconde pour définir du format d'affichage des données affichées (les valeurs de la liste déroulantes sera fonction des valeurs proposées par le fournisseur du flux interrogé)

Activation couche getfeatureInfo

Rendre la couche interrogeable dans la carte

L'application vMap possède deux modes d'interrogation d'une couche :

  • Par GetFeatureInfo

  • Via les formulaires métiers générés depuis le studio (uniquement pour les couches Postgresql)

Lorsqu'une couche est paramétrée pour devenir interrogeable (si son formulaire a été créé ou que le GetFeatureInfo a été configuré), l'administrateur est alors en possibilité de rendre l'interrogation de cette couche possible dans une carte.

Pour se faire, dans Carte > [Sélectionner la carte] > Couche de la carte, l'administrateur doit alors sélectionner les couches qu'il considère "Interrogeable cartographiquement". A ce moment-là, l'administrateur ne se pose pas la question si c'est une couche interrogeable par GetFeatureInfo ou par formulaire métier. Il doit juste cocher les couches qu'il souhaite rendre interrogeable.

Activation interrogation couche

Important : Certains fournisseurs de flux WMS annoncent, dans leur GetCapabilities, le support du format text/html pour les réponses GetFeatureInfo. Toutefois, après de nombreux tests, nous avons constaté que ce format est souvent mal implémenté : dans certains cas, le template HTML structuré n’est réellement fourni. Ce dysfonctionnement côté fournisseur peut entraîner des réponses vides ou non interprétables dans vMap2. Ne vous fiez pas uniquement aux formats déclarés.

Fonctionnement de l'interrogation via GetFeatureInfo dans le mode "Cartes" de vMap2

Le mode ""Cartes"" de l'application vMap permet désormais d'interroger une couche :

  • Par la fonctionnalité formulaire de l'application : Le studio de formulaire permet de créer des formulaires de consultation, de saisie, de modification et gérer les droits pour chaque utilisateur qui sera connecté. Il permet ainsi d'interroger une donnée ponctuellement ou sous forme d'emprise géographique mais aussi d'éditer de la donnée.

  • Par la fonctionnalité GetFeatureInfo : Opération du protocole WMS défini par l'OGC et qui permet d'interroger une carte par simple clic mais pas de saisir ou modifier les enregistrements.

Ces fonctionnalités d'interrogation sont présentes dans le i de l'application, bouton à partir duquel il est possible de switcher entre l'interrogation "formulaire" de vMap2 et l'interrogation WMS par GetFeatureInfo.

vMap Interrogation

Une fois le mode d'interrogation sélectionné, deux possibilités s'offre à l'utilisateur :

  • Soit il sélectionne **Toutes les couches WMS" : L'utilisateur clique sur la carte et l'application va interroger toutes les couches interrogeables avec la fonction GetFeatureInfo. Si plusieurs couches ont été retrouvéees, une liste déroulante permettra à l'utilisateur de choisir la couche souhaitée :

Multi couche Multi couche

  • Soit il sélectionne une couche en particulier : L'utilisateur clique sur la carte et l'application va interroger la couche sélectionnée.

Quelque soit le choix de l'utilsateur, si aucun résultat n'est trouvé, aucun formulaire ne s'affichera.