Pages: 1
- Sujet précédent - QGIS: Formulaires en cascade (Drill-down) - valeurs relationnelles - Sujet suivant
#1 Thu 01 October 2020 11:29
- Samuel Pereira Dias
- Participant actif
- Date d'inscription: 11 May 2015
- Messages: 53
QGIS: Formulaires en cascade (Drill-down) - valeurs relationnelles
Bonjour à tous,
Le forum contient de nombreuses discussion sur le paramétrage nécessaire à la création de formulaire en cascade au travers des widgets de "valeur relationnelle" dans les propriétés des couches.
Je m'excuse d'avance de devoir reposer les mêmes questions mais en profite donc pour joindre à ce post quelques liens en bas du post menant à cette recherche (non exhaustive), facilitant les recherches à venir:
Tous définissent bien le besoin de disposer de deux tables "types" et "sous-type", composé de champs 'fid, 'kf', 'types' qui sont demandées dans le widget de valeur relationnelle au sein de 'colonne clé' et 'colonne de valeurs'.
Voici ma table de types.
Code:
fid type 1 0% de ligneux hauts 2 1-10% de ligneux hauts 3 10-50% de ligneux hauts 4 50-75% de ligneux hauts 5 > 75 % de ligneux hauts
Voici ma table de sous_types
Code:
fid fk sous_type 1 1 >3 à <25 cm 2 1 >25 à <100 cm et à une distance < 100 m lisière forêt ou d'un boisement 3 1 >25 à <100 cm et à une distance > 100 m lisière forêt ou d'un boisement 4 1 >25 à <100 cm, constituée uniquement de petit ligneux, sans aucun layon. Ou éboulis stabilisé, fougeraie aigle dense sans herbe dessous 5 1 Autre cas 6 2 >3 à <25 cm 7 2 >25 et <100 cm 8 2 >25 et <100 cm mais constituée seulement de ligneux sans aucun layon. Ou éboulis stabilisé, fougeraie aigle dense sans herbe dessous 9 2 Autre cas 10 3 >25 et <100 cm 11 3 >25 et <100 mais constituée seulement de ligneux sans aucun layon. Ou de mégaphorbiaie ou de régénération forestière. Autres cas: éboulis stabilisé, fougeraie aigle sans herbe dessous. 12 3 Régénération forestière >100 cm dont recouvrement > 50% 13 3 Autre cas 14 4 >25 et <100 cm 15 4 >25 et <100 mais constituée seulement de ligneux. Régénération forestière très compacte, de mégaphorbiaie. Ou éboulis stabilisé. 16 4 Régénération forestière >100 cm dont recouvrement > 50% 17 4 Autre cas
Le relation à appliquer est donc entre le 'fid' de la table type, et le 'fk' de la table Sous-type.
Qu'est ce que je ne fait pas bien
Mon paramétrage sur mon champ 1 avec Valeur relationnelle:
Couche: types
Colonne clé: fid
Colonne valeur : type
Mon paramétrage sur mon champ 2 avec Valeur relationnelle:
Couche: sous_types
Colonne clé: fid
Colonne valeur : sous_type
Un filtre d'expression est à appliquer du type : fk = current_value('types')
J'ai trouvé de nombreuses façon de coder le filtre d'expression, où l'argument dans current_value est un champ, ou parfois une table.
J'ai compris que précédemment il y avait un plugin nommé "Form Value Relation" mais qui n'existe plus sur les versions 3.X. La fonction current_value serait native des versions actuelles.
J'ai également trouvé d'autres formes de fonction du type "get_value_form...." que je ne trouve pas dans mon actuelle bibliothèque de fonction..
Puis, j'ai cru comprendre que Qfield ne prenait pas en charge les formulaires en cascade. Est-vrai?
Help!
Merci à tous!
S.
Lien pour la recherche de solution
https://georezo.net/forum/viewtopic.php?id=113893
https://georezo.net/forum/viewtopic.php?id=109846
https://georezo.net/forum/viewtopic.php?id=97418
https://georezo.net/forum/viewtopic.php?id=95858
https://georezo.net/forum/viewtopic.php?id=89249
https://georezo.net/forum/viewtopic.php?id=117794 <<< Très utile avec un exemple téléchargeable mais je n'ai tout de même pas réussi.
https://georezo.net/forum/viewtopic.php?pid=305421
https://gis.stackexchange.com/questions … pdown-qgis
https://north-road.com/drill-down-cascading-forms/
https://www.youtube.com/watch?v=8JBG6g_UvSA
https://www.youtube.com/watch?v=5wcEFLSLTCA
Hors ligne
#2 Tue 06 October 2020 13:45
- Samuel Pereira Dias
- Participant actif
- Date d'inscription: 11 May 2015
- Messages: 53
Re: QGIS: Formulaires en cascade (Drill-down) - valeurs relationnelles
Personne ?
Please...
Hors ligne
#3 Wed 07 October 2020 10:03
- romainbh
- Participant assidu
- Date d'inscription: 20 Aug 2013
- Messages: 355
Re: QGIS: Formulaires en cascade (Drill-down) - valeurs relationnelles
Hello,
Je dirais que c'est faisable, voici un exemple dispo 30 jours ici : https://www.swisstransfer.com/d/d18ea90 … 6b5c7a9361
J'ai repris vos données, donc ça devrait être compréhensif ;-)
Hors ligne
#4 Wed 07 October 2020 12:41
- Samuel Pereira Dias
- Participant actif
- Date d'inscription: 11 May 2015
- Messages: 53
Re: QGIS: Formulaires en cascade (Drill-down) - valeurs relationnelles
Hello,
Je dirais que c'est faisable, voici un exemple dispo 30 jours ici : https://www.swisstransfer.com/d/d18ea90 … 6b5c7a9361
J'ai repris vos données, donc ça devrait être compréhensif ;-)
Salut Romain,
C'est super.
Ton exemple fonctionne très bien, enfin plus ou moins..
En fait si j'adapte exactement tout, cela fonctionne. Ce qui est déjà encourageant.
Quand je dis tout c'est le nom des champs et des fichiers de mes tables de valeurs. En réalité, je voudrais les appeler Hab_N1 (équivalent types), et Hab_N2 (équivalent sous_types).
Alors j'ai vraiment tout converti avec mes nomenclatures personnelles, en faisant bien attention. Et cela ne fonctionne pas, mais fonctionnes en gardant bien les nomenclatures des tables (types/sous_types) et des champs à renseigner (type/sous_type).
>>> les noms "types" et "sous_types" sont en fait des termes reconnus et incontournables !!
Avec les Alias des formulaires, je réalise que je peux accepter cela, et garder visuel mes propres nomenclatures.
Donc ce coté, ok. Sauf comment cela se passe lorsque j'ai une troisième relation à appliquer ...?
Une sorte de 'sous_sous_type' dépendant de ce qu'il y a dans 'sous_type'.
Si les termes utilisés ont une importance, quelles sont-ils dans le cas d'une troisième relation?
Quel noms de champs pour la clé étrangère entre 'sous_type' et sous_sous_type
Je l'ai appelé ici 'fk'
Code:
fid type_id fk sous-type 1 1 1 >3 à <25 cm 2 1 2 >25 à <100 cm et à une distance < 100 m lisière forêt ou d'un boisement 3 1 3 >25 à <100 cm et à une distance > 100 m lisière forêt ou d'un boisement 4 1 4 >25 à <100 cm, constituée uniquement de petit ligneux, sans aucun layon. Ou éboulis stabilisé, fougeraie aigle dense sans herbe dessous 5 1 5 Autre cas 6 2 6 >3 à <25 cm 7 2 7 >25 et <100 cm 8 2 8 >25 et <100 cm mais constituée seulement de ligneux sans aucun layon. Ou éboulis stabilisé, fougeraie aigle dense sans herbe dessous 9 2 9 Autre cas 10 3 10 >25 et <100 cm 11 3 11 >25 et <100 mais constituée seulement de ligneux sans aucun layon. Ou de mégaphorbiaie ou de régénération forestière. Autres cas: éboulis stabilisé, fougeraie aigle sans herbe dessous. 12 3 12 Régénération forestière >100 cm dont recouvrement > 50% 13 3 13 Autre cas 14 4 14 >25 et <100 cm 15 4 15 >25 et <100 mais constituée seulement de ligneux. Régénération forestière très compacte, de mégaphorbiaie. Ou éboulis stabilisé. 16 4 16 Régénération forestière >100 cm dont recouvrement > 50% 17 4 17 Autre cas 18 5 18 >25 et <100, le plus souvent sous bouleau/sorbiers, pins à crochets, plantations de mélèzes 19 5 19 >25 et <100 mais constituée seulement de ligneux. Régénération forestière très compacte, de mégaphorbiaie. Ou éboulis stabilisé. 20 5 20 Régénération forestière >100 cm dont recouvrement > 50% 21 5 21 Autre cas
qui serait lié avec la colonne type_id de ma troisième table ci-dessous
Code:
fid type_id sous-sous-type 1 1 <25% de recouvrement 2 1 >25 à <50% de recouvrement 3 1 >50% de recouvrement 4 2 <25% de recouvrement 5 2 >25 à <50% de recouvrement 6 2 >50% de recouvrement 7 3 <25% de recouvrement 8 3 >25 à <50% de recouvrement 9 3 >50% de recouvrement 10 6 >25 à <50% de recouvrement 11 6 >50% de recouvrement 12 7 >25 à <50% de recouvrement 13 7 >50% de recouvrement 14 10 >25 à <50% de recouvrement 15 10 >50% de recouvrement 16 14 >25 à <50% de recouvrement 17 14 >50% de recouvrement, parfois sous bouleau/sorbier, pin à crochets 18 18 >25 à <50% de recouvrement 19 18 >50% de recouvrement, parfois sous bouleau/sorbier, pin à crochets
J'imagine que l'on peut continuer à créer des relations entre champs même sur trois champs différents?
Je viens déjà tester les deux premiers champs (types et sous_types), fonctionnels grâce à toi sur Qfield, et j'ai l'impression que le Drill down n'est pas encore géré par Qfield ... C'est bien dommage pour une application nomade de saisie de données de ne pouvoir proposer la saisie en cascade.
Vraiment merci déjà pour le temps que tu as pris pour m'envoyer ta réponse.
Samuel
Hors ligne
Pages: 1
- Sujet précédent - QGIS: Formulaires en cascade (Drill-down) - valeurs relationnelles - Sujet suivant