Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
Pages: 1
- Sujet précédent - QGIS: Valeur par defaut dependant de champs precedemment saisis - Sujet suivant
#1 Thu 13 February 2020 13:28
- Quentin André
- Juste Inscrit !
- Date d'inscription: 13 Feb 2020
- Messages: 5
QGIS: Valeur par defaut dependant de champs precedemment saisis
Bonjour,
j'ai un problème qui est le suivant : j'ai différentes périodes (sélectionnées par un menu déroulant, de type "Paléolithique", "Mésolithique"... etc) et je voudrais que le formulaire mette par défaut dans les champs "Année inf" et "Année sup" les valeurs de début et de fin de chacune des périodes.
Je peux les rentrer à la main, cependant je ne peux pas utiliser de champs précédemment saisis dans mon formulaire (c'est un échec en ayant testé les 3 codes suivants pour mettre les valeurs par défaut dans "Années inf") :
Code:
CASE WHEN "Période inf" like '%Paléo%' then -15000 WHEN "Période inf" like '%Epipal%' then -12000 WHEN "Période inf" like '%Mésol%' then -9500 WHEN "Période inf" like '%Néolitique ancien%' then -5500 WHEN "Période inf" like '%Néolitique moyen%' then -4800 WHEN "Période inf" like '%Néolitique final%' then -3500 WHEN "Période inf" like '%Bronze%' then -2200 WHEN "Période inf" like '%Hallstatt%' then -800 WHEN "Période inf" like '%La Tène%' then -450 WHEN "Période inf" like '%Antiquité%' then -27 WHEN "Période inf" like '%Moyen%' then 476 WHEN "Période inf" like '%moderne%' then 1492 else 1789 END
Code:
CASE WHEN current_value('Période inf') like '%Paléo%' then -15000 WHEN current_value('Période inf') like '%Epipal%' then -12000 WHEN current_value('Période inf') like '%Mésol%' then -9500 WHEN current_value('Période inf') like '%Néolitique ancien%' then -5500 WHEN current_value('Période inf') like '%Néolitique moyen%' then -4800 WHEN current_value('Période inf') like '%Néolitique final%' then -3500 WHEN current_value('Période inf') like '%Bronze%' then -2200 WHEN current_value('Période inf') like '%Hallstatt%' then -800 WHEN current_value('Période inf') like '%La Tène%' then -450 WHEN current_value('Période inf') like '%Antiquité%' then -27 WHEN current_value('Période inf') like '%Moyen%' then 476 WHEN current_value('Période inf') like '%moderne%' then 1492 else 1789 END
Code:
CASE WHEN attribute($current_feature, 'Période inf') like '%Paléo%' then -15000 WHEN attribute($current_feature, 'Période inf') like '%Epipal%' then -12000 WHEN attribute($current_feature, 'Période inf') like '%Mésol%' then -9500 WHEN attribute($current_feature, 'Période inf') like '%Néolitique ancien%' then -5500 WHEN attribute($current_feature, 'Période inf') like '%Néolitique moyen%' then -4800 WHEN attribute($current_feature, 'Période inf') like '%Néolitique final%' then -3500 WHEN attribute($current_feature, 'Période inf') like '%Bronze%' then -2200 WHEN attribute($current_feature, 'Période inf') like '%Hallstatt%' then -800 WHEN attribute($current_feature, 'Période inf') like '%La Tène%' then -450 WHEN attribute($current_feature, 'Période inf') like '%Antiquité%' then -27 WHEN attribute($current_feature, 'Période inf') like '%Moyen%' then 476 WHEN attribute($current_feature, 'Période inf') like '%moderne%' then 1492 else 1789 END
Je me pose la question du script python mais j'admets avoir essayé de regarder (j'ai quand même fait pas mal de python auparavant) mais je ne comprends pas grand chose aux scripts sur qgis.
Merci d'avance si vous avez lu et encore plus si vous avez une solution pour mon problème, Quentin.
Hors ligne
#2 Fri 14 February 2020 10:12
- JD
- Moderateur
- Date d'inscription: 8 Aug 2013
- Messages: 726
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
Bonjour,
Regardez la réponse et le projet joint qui montre comment on peut faire :
https://georezo.net/forum/viewtopic.php?id=119076
Hors ligne
#3 Fri 14 February 2020 12:13
- Quentin André
- Juste Inscrit !
- Date d'inscription: 13 Feb 2020
- Messages: 5
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
Bonjour, merci de la réponse mais j'avais malheureusement déjà regardé mais ça n'est pas ça que je veux (ou alors je ne sais pas m'en servir)
Ce n'est pas un menu déroulant ou une liste de valeurs que je veux pour mon champ 2 ("Année inf") mais un entier. Et les valeurs relationnelles ne sont pas exploitables sous forme d'entiers (à moins de faire une liste de valeurs de -15000 à 2000 mais ça me semble vraiment pas optimisé).
Hors ligne
#4 Fri 14 February 2020 12:40
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1105
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
Bonjour,
Je viens de tester chez moi, j'ai fait un test et ça fonctionne :
CASE WHEN "PERI_2" LIKE '%aléo%' THEN '25000' WHEN "PERI_2" LIKE '%Néol%' THEN '10000' ELSE 1789 END
Testez en mettant les valeurs numériques entre apostrophe. Vérifiez que les types de champs soient correctement paramétrés.
Hors ligne
#5 Fri 14 February 2020 12:56
- Quentin André
- Juste Inscrit !
- Date d'inscription: 13 Feb 2020
- Messages: 5
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
J'ai écrit ceci :
CASE WHEN "Période inf" LIKE '%aléo%' THEN '25000' WHEN "Période inf" LIKE '%Néol%' THEN '10000' ELSE '1789' END
et il me met toujours 1789 comme valeur par défaut, quelque soit ma valeur pour "Période inf" (et j'ai bien coché la case pour la mise à jour)
Vous êtes bien en "Plage de valeurs" ?
Dernière modification par Quentin André (Fri 14 February 2020 13:08)
Hors ligne
#6 Mon 17 February 2020 00:39
- JD
- Moderateur
- Date d'inscription: 8 Aug 2013
- Messages: 726
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
Bonjour, merci de la réponse mais j'avais malheureusement déjà regardé mais ça n'est pas ça que je veux (ou alors je ne sais pas m'en servir)
Ce n'est pas un menu déroulant ou une liste de valeurs que je veux pour mon champ 2 ("Année inf") mais un entier. Et les valeurs relationnelles ne sont pas exploitables sous forme d'entiers (à moins de faire une liste de valeurs de -15000 à 2000 mais ça me semble vraiment pas optimisé).
Ce n'est pas vraiment une liste de valeurs car la contrainte est du 1 pour 1.
Au final vous aurez un entier qui se complètera automatiquement dès le choix de la période.
Pour moi, c'est adapté sauf si vous avez besoin de changer la valeur par la suite et que la valeur n'est pas listée dans les valeurs possibles de départ maii vous ne l'avez pas évoqué.
Cordialement,
Hors ligne
#7 Mon 17 February 2020 10:05
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3948
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
Bonjour,
Vous êtes bien en "Plage de valeurs" ?
Pourquoi?
Hors ligne
#8 Mon 17 February 2020 10:37
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1105
Re: QGIS: Valeur par defaut dependant de champs precedemment saisis
SANTANNA a raison, il faut mettre 'Edition de texte' (si on parle bien de cette option disponible dans la rubrique 'Formulaire d'attributs' des propriétés de la couche).
Hors ligne
Pages: 1
- Sujet précédent - QGIS: Valeur par defaut dependant de champs precedemment saisis - Sujet suivant