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

Rencontres QGIS 2026

L'appel à participation est ouvert jusqu'au 17 novembre 2025!

#1 Mon 13 October 2025 17:52

ES123
Juste Inscrit !
Date d'inscription: 13 Oct 2025
Messages: 3

QGIS: Probleme symbologie ensemble de regle

Bonjour,
J'ai un petit problème pour appliquer un ensemble de règle sur une couche. J'ai une couche permettant de répertorier la présence d'espèces géographiquement on l'appellera PresenceSP. Pour chaque point de présence 4 champs sont à remplir dont, Date et Id. Les champs sont respectivement de type date et entier(64bit), et permettent de renseigner la date et le type d'espèce selon un code (nombre entier). Je souhaiterais appliquer un style selon le type d'espèce ex: espece_1 (code n°1) = point rouge, espece_2 (code n°2) = point bleu, etc. et selon la dernière rencontre par espèce qui se mettrait à jour au fur et à mesure de l'ajout de point ex: espèce_1 rencontré pour la dernière fois le 23/08/2025 = losange jaune.

La première partie aucun problème mais ça se complique quand je veux ajouter une règle avec une expression. J'ai tenté plusieurs formule:

Code:

"Date" = maximum(
    group_by:="Id",
    expression:="Date"
)

et

Code:

"Date" = aggregate(
    layer:='PresenceSP',
    aggregate:='max',
    expression:="Date",
    filter:="Id" = attribute($currentfeature, 'Id')
)

Aucune des deux ne fonctionne. J'ai voulu tester ma formule dans la table d'attribut en utilisant l'outil Sélection par expression et j'ai commencer petit à petit pour voir où ça coince. J'ai donc essayer de sélectionner la/les dates(s) la plus récentes avec: maximum("Date"), la prévisualisation identifie bien la date à laquelle je m'attendais mais si je fais sélectionner, cela me renvois en erreur: aucune entité correspondantes trouvés.
C'est la que je suis bloqué et que ne sais pas ce qui cloche ni comment obtenir ce que je veux.

Il n'y a pas de valeur NULL dans le champs Date, mais dans les autres ça peut arriver.
Date s'exprime visuellement JJ/MM/AAAA mais semble encoder AAAA-MM-JJ si je double clique pour modifier
J'ai plus de 1100 entités dans ma table.

Merci d'avance pour votre aide

Hors ligne

 

#2 Tue 14 October 2025 10:00

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 4133

Re: QGIS: Probleme symbologie ensemble de regle

Bonjour,

Date s'exprime visuellement JJ/MM/AAAA mais semble encoder AAAA-MM-JJ si je double clique pour modifier


Dans les propriétés de la couche, Attributs de formulaire, regardez les paramètres du champ date, s'il utilise la valeur par défaut ou une valeur personnalisée de rendu.
Manipuler des données date peut être complexe si on ne connaît pas comment c'est stocké en effet. Est-ce que remplacer

Code:

expression:= "Date"

par

Code:

expression:=format_date("Date", 'yyyy-MM-dd') -- en supposant que ce soit le formatage avec lequel la valeur est enregistrée (ou avec 'dd/MM/yyyy'?)

fait l'affaire? Et peut-être même que la valeur renvoyée est du datetime, auquel cas il faut insérer un to_date dans l'expression pour ne conserver que la partie date.
Bref, sans visualiser exactement comment la date est stockée et renvoyée par QGIS, voilà les pistes que je suggérerais de creuser.

Hors ligne

 

#3 Wed 15 October 2025 10:50

ES123
Juste Inscrit !
Date d'inscription: 13 Oct 2025
Messages: 3

Re: QGIS: Probleme symbologie ensemble de regle

Bonjour,
Merci pour votre réponse. Dans le formulaire d'attribut "Date" utilise un rendu personnalisé dd/mm/yyyy avec un type d'outils Date/Heure.

Donc qgis n'arriverait pas à selectionner mes dates car il ne les reconnaitrait pas comme tel, c'est ça ?

Hors ligne

 

#4 Thu 16 October 2025 11:41

ES123
Juste Inscrit !
Date d'inscription: 13 Oct 2025
Messages: 3

Re: QGIS: Probleme symbologie ensemble de regle

Bonjour,

Merci SANTANNA, effectivement c'était la bonne piste, il semblerait mes dates étaient enregistrer en datetime, même si ça n'apparaissait pas directement. En insérant to_date dans ma formule elle fonctionne !

Maintenant j'aimerais appliquer cette formule non pas à la sélection de données mais à une symbologie. Le rendu que je souhaiterais avoir est une symbole par Id (1 = point bleu, 2 = point jaune, etc) et le dernier point de présence mis en évidence par un losange jaune.

J'ai essayer avec un ensemble de règle, mais elles semblent exclusives si la formule fonctionne tous les autres points de présence disparaissent.
J'ai essayé en restant en catégorie de symbole. J'ai ajouté un symbole secondaire avec la formule à chacun de point catégorisé selon l'Id. Le rendu sur carte est exactement ce que je veux mais la légende n'affiche plus que les losanges or pour le coup dans la légende l'important est de savoir le symbole par rapport à l'Id. Et je n'ai pas trouvé comment masqué un symbole secondaire dans la légende.

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo