#1 Sat 15 January 2022 12:40
QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
EBonjour,
Je souhaite afficher les étiquettes des noms des voies du cadastre. J'ai donc écrit l'expression suivante :
"TEX" || ' ' || "TEX2" || ' ' || "TEX3" || ' ' || "TEX4" || ' ' || "TEX5" || ' ' || "TEX6" || ' ' || "TEX7" || ' ' || "TEX8" || ' ' || "TEX9"|| ' ' || "TEX10"
Mais rien ne se passe. L'expression ne fonctionne que jusqu'à TEX9, et encore, il ne faut pas que des colonnes soient à 0. C'est pareil quand je veux mettre une colonne à jour à partir de ces 10 colonnes (cf. capture d'écran).
Une idée ?
Cordialement, Elise
Géoscope
11 rue de l'Hospice - 19400 Argentat
Tél. : 09 60 47 51 16
Hors ligne
#2 Sat 15 January 2022 17:33
- michel56
- Participant assidu
- Lieu: Lorient
- Date d'inscription: 14 Jul 2012
- Messages: 474
Re: QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
Bonjour,
Regarde avec les fonctions coalesce ou concat
Ou vérifier si la valeur est null "IS NOT NULL"
Cordialement.
Opérateur cartographique & DAO & PHP.
Hors ligne
#3 Sat 15 January 2022 19:49
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3939
Re: QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
Bonjour,
Effectivement, les limites de l'opérateur ||: il renvoie null dès lors qu'une valeur est null dans le groupe (cf son aide dans le panneau de droite). On en parle aussi à https://docs.qgis.org/3.16/fr/docs/user … tml#concat (même si la traduction peut sembler un peu confuse). concat est effectivement une option, mais si on ne veut pas se retrouver avec plein de blancs entre les mots (ça dépend où sont les champs null), le code ci-après peut être plus propre
Code:
array_to_string( array( la liste des champs séparés par une virgule ), ' ')
Hors ligne
#4 Sat 15 January 2022 21:06
Re: QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
array_to_string( array( la liste des champs séparés par une virgule ), ' ')
Impec' :-)
Les blancs sont à la fin, cela ne se voit pas, c'est Nickel
Merci, Elise
Géoscope
11 rue de l'Hospice - 19400 Argentat
Tél. : 09 60 47 51 16
Hors ligne
#5 Wed 19 January 2022 19:43
Re: QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
Pour supprimer les blancs...
Trim(array_to_string( array( "TEX" , "TEX2" , "TEX3" , "TEX4" , "TEX5" , "TEX6" , "TEX7" , "TEX8" , "TEX9" , "TEX10" ), ' '))
Géoscope
11 rue de l'Hospice - 19400 Argentat
Tél. : 09 60 47 51 16
Hors ligne
#6 Thu 20 January 2022 12:39
- Joseph Jacquet
- Participant actif
- Date d'inscription: 19 Feb 2020
- Messages: 92
Re: QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
Bonjour,
Personnellement, je passe par le plugin Cadastre pour n'avoir qu'un attribut "tex" avec le nom complet de la voie (qui concatène l'ensemble des attributs "TEX") ou alors passer par la couche ponctuelle label mais avec la gestion des angles etc., je ne trouve pas cela très pratique..
Cela est pratique pour fusionner rapidement toutes les feuilles lorsqu'on travaille sur une commune entière et non pas par feuille cadastrale aussi.
Pour rebondir sur le sujet des voies du cadastre, comment se fait-il que certaines voies soient dans le désordre pour leur nomination ?
Par exemple, pour une voie nommée "Rue du Général Leclerc", il peut arrivé que l'attribut :
"TEX" = du,
"TEX1" = Général,
"TEX2" = Leclerc,
TEX10 = Rue
ce qui donne une voie nommée "du Général Leclerc Rue". L'erreur se retrouve qu'on est tous les champs TEX ou bien un attribut unique en passant par le plugin cadastre. C'est assez aléatoire même si le décalage est logique, les champs TEX se suivent, même s'ils ne sont pas dans l'ordre logique de la nomination de rue.
JJ
Hors ligne
#7 Thu 20 January 2022 14:06
Re: QGIS/Cadastre: Etiquette AXE_ROUTIER des voies/rues
Bonjour,
C'est parce que chaque texte est un objet ponctuel séparé (ID_S_OBJ_Z_1_2_2) dont
- la position est définie par un noeud,
- la représentation (taille, orientation, etc..) par les attributs de l'objet ponctuel et
- le libellé par l'attribut TEX_xx de l'objet voie (ZONCOMMUNI_id)
Donc la concaténation des attributs TEXxx de l'objet voie réserve ces surprises
Jean-Marie
Azimut
Hors ligne