#1 Mon 13 October 2025 17:52
- ES123
- Juste Inscrit !
- Date d'inscription: 13 Oct 2025
- Messages: 2
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: 4132
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 Hier 10:50
- ES123
- Juste Inscrit !
- Date d'inscription: 13 Oct 2025
- Messages: 2
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