Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Thu 14 October 2021 11:13

fabgirstea
Participant occasionnel
Date d'inscription: 14 Feb 2018
Messages: 12

QGIS/Qfield: Contraintes conditionnelles sur formulaire

Bonjour à tous,

Je suis en train de créer un formulaire Pour Qfield à partir de Qgis.

Un champ "visibilite" demande si la placette est visible sur le terrain. Le champs suivant "descr"demande de décrire la placette avec un menu déroulant qui inclut la réponse "sans objet".

Je voudrai que la réponse à "descr" ait une contrainte "not null" et que la valeur par défaut soit "sans objet" si la placette n'est pas visible. Si la placette est visible, je veux que l'utilisateur puisse choisir dans le menu déroulant.

J'ai essayé de m'en sortir avec les valeurs par défaut par expression mais sans succès.
L'expression CASE WHEN  "visibilite" Like 'non' THEN 'sans objet' END me renvoie un null si la placette est visible. Donc la réponse ne respecte pas la contrainte "not null" et je peux pas valider mon enregistrement.

Pouvez-vous m'aider?

Bonne journée à vous.

Hors ligne

 

#2 Thu 14 October 2021 16:57

Miniopterine
Participant assidu
Date d'inscription: 29 Nov 2005
Messages: 276

Re: QGIS/Qfield: Contraintes conditionnelles sur formulaire

Bonjour,

Pour le moment il me semble que qfield ne gère pas les contraintes non null.

Cordialement,

Hors ligne

 

#3 Fri 15 October 2021 13:47

fabgirstea
Participant occasionnel
Date d'inscription: 14 Feb 2018
Messages: 12

Re: QGIS/Qfield: Contraintes conditionnelles sur formulaire

Bonjour, merci pour cette réponse.

Je me demande si je ne vais pas devoir séparer ma table en deux : une première qui renseigne la visibilité de la placette et une seconde qui décrit la placette seulement si elle est visible. Et là je rendrai les réponses obligatoires pour cette table de description puisqu'elle ne contiendra que des placettes visible. Je crois que c'est le plus logique au niveau architecture. Mais il faudra faire une relation entre les tables au sein de Qgis mais cela m'embête un peu car je trouve ces relations difficiles à gérer.

Sinon, j'ai pensé à passer les valeurs de mes menus déroulants de texte à entiers numériques et envoyer une expression du genre :

Case
when "visibilite"='non' then "descr"= 0 [0 étant la valeur "sans objet]
when "visibilite"='oui' then "descr">0 and "descr"<10 [mes valeurs de description iraient de 1 à 9]
end

Est-ce que quelqu'un a un avis sur ces méthodes?

Merci

Hors ligne

 

#4 Mon 08 November 2021 18:13

fabgirstea
Participant occasionnel
Date d'inscription: 14 Feb 2018
Messages: 12

Re: QGIS/Qfield: Contraintes conditionnelles sur formulaire

Bonjour,

malheureusement mon post n'a pas eu beaucoup de réponses smile c'est sans doute que la question est mal formulée.
Pour information, ce que  je veux faire s'appelle du "live update value" dans la documentation de qfield.

J'ai testé ma formule avec les CASE. Sur Qgis ça fonctionne assez bien. Mais Qfield ne le prenait pas en charge. Je me suis débrouillé avec une valeur relationnelle (obligé d'établir une relation dans le projet Qgis mais elle disparaît quand je modifie les tables..).

Par contre, la dernière version de Qfield est censée prendre en charge justement le "live update value". J'en donnerai des nouvelles quand je l'aurai testée si ça intéresse des gens.

Est-ce que les questions sur Qfield doivent être posée à une emplacement spécifique? (parce que j'en ai encore smile)

Bonne soirée à tous.

Hors ligne

 

#5 Fri 12 November 2021 12:15

Miniopterine
Participant assidu
Date d'inscription: 29 Nov 2005
Messages: 276

Re: QGIS/Qfield: Contraintes conditionnelles sur formulaire

Bonjour,

Si tu gardes tout dans la même table, tu peux utiliser dans le formulaire l'option "Contrôler la visibilité par expression" , donc si visibiltié = oui alors le champ descr apparait sinon, non. Mais ca ne le rend pas obligatoire...

Il y a aussi quelques postes Qfield dans la rubrique Geolibre

Cordialement,

Hors ligne

 

Pied de page des forums

Powered by FluxBB