Pages: 1
- Sujet précédent - QGIS 2.18.24: Contrainte avec une expression sur un champ - Sujet suivant
#1 Wed 24 October 2018 15:19
- SIGCMC56
- Participant occasionnel
- Date d'inscription: 9 Jul 2018
- Messages: 28
QGIS 2.18.24: Contrainte avec une expression sur un champ
Bonjour,
je travaille avec QGIS 2.18.24 (LTR).
J'ai une table de données avec un champ (champ a) limité à 10 caractères en String.
J'ai mis en place un formulaire de saisie vie l'option "cliquez-glissez" de qgis.
Dans ce formulaire on retrouve le "champ a" en mode "Edition de texte", mais quand on saisie une valeur dedans on peut, en mode édition, saisir 30 caractères par exemple et au moment de l'enregistrement QGIS retourne "erreur : valeur trop longue pour ce champ"
Ce qui est normal puisqu'on ne peut y mettre que 10 caratères.
Ce que je voudrais c'est pouvoir créer sur ce champ une "contrainte".
Quand on passe par les propriétés de la couche, puis l'onglet champ puis quand on clique sur l'édition du "champ a". Il y a bien une partie "Constraints".
Est-il possible de paramétrer cela? Ainsi dans mon formulaire de saisie, l'utilisateur ne pourra inscrire que 0 ou 10 caractères max, après même s'il dépasse rien ne se remplira.
Merci
Hors ligne
#2 Wed 24 October 2018 16:22
- sylvain poupard
- Participant assidu
- Date d'inscription: 19 Mar 2009
- Messages: 362
Re: QGIS 2.18.24: Contrainte avec une expression sur un champ
Bonjour,
Effectivement du côté des contraintes vous pouvez ajouter quelque chose comme
Code:
length( "mon_champs" ) <= 10
et mettre en description 'Limite = 10 caractères'.
Bon courage
Hors ligne
#3 Wed 24 October 2018 16:38
- SIGCMC56
- Participant occasionnel
- Date d'inscription: 9 Jul 2018
- Messages: 28
Re: QGIS 2.18.24: Contrainte avec une expression sur un champ
Génial Sylvain,
c'est exactement ce que je voulais !!! tout fonctionne parfaitement!!!
J'en profite pour une autre question tjs pour des contraintes, mais cette fois sur le champ b de type "Date".
J'aurais aimé avoir une valeur par défault comme ceci "00-00-0000" mais le seul résultat que j'ai en paramétrant un champ date avec :
Format du champ : Personnalisation dd-MM-yyyy
Afficher l'outil : Personnalisation dd-MM-yyyy
Autoriser les valeurs NULL de cocher
Au rendu j'ai NULL d'affiché dans mon champ et pas 00-00-0000
Hors ligne
#4 Fri 26 October 2018 09:08
- sylvain poupard
- Participant assidu
- Date d'inscription: 19 Mar 2009
- Messages: 362
Re: QGIS 2.18.24: Contrainte avec une expression sur un champ
Bonjour,
Vous pouvez essayer dans "Default value"
Code:
format_date( now(),'dd-MM-yyyy')
et personnaliser grâce aux explications fournies dans la fenêtre de dialogue "expression" lorsque vous sélectionnez une fonction (cf PJ)
Bon courage
Hors ligne
Pages: 1
- Sujet précédent - QGIS 2.18.24: Contrainte avec une expression sur un champ - Sujet suivant