Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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é ?

#1 Mon 01 July 2024 09:44

ptycharly56
Participant occasionnel
Lieu: Lorient
Date d'inscription: 13 Jan 2015
Messages: 19

QGIS 3.34.7: reference de relation et filtre spatial

Bonjour,

Je suis en train de construire un formulaire en vue de réaliser un recensement terrain via Qfield. Le formulaire de la table 'recensement' implique la récupération de données d'adresse issues de la table 'ban géolocalisée'. En passant par une référence de relation je souhaite récupérer les informations "numéro de voie", "rep" et "nom de voie" de la 'ban géolocalisée' dans un rayon de 100 mètres de la position de l'entité créée dans la table recensement.

Ma relation est la suivante :
Couche de référence : 'ban géolocalisée'
Champ référencé : id
Couche référençante : 'recensement'
Champ référençant : id_ban

La relation fonctionne parfaitement. Dans le formulaire, j'ai bien la liste déroulante des "numéro de voie" et "nom de voie" qui me sont proposées sous 'id_ban' paramétré en référence de relation.

La difficulté se situe dans la réalisation d'un filtre spatial.
Je m'interroge sur la méthode pour réaliser ce filtre? En tâtonnant j'ai testé un filtre dans l' "expression d'affichage" de la relation avec l'expression ci-dessous mais sans succès. Il y a bien une (longue) recherche de résultat qui ne donne pas de proposition visible.

Code:

case 
when array_intersect(array("nom_voie"),aggregate('ban_geo','array_agg',"nom_voie",intersects($geometry,buffer(geometry(@parent),100))))
then concat("numero",' ',"rep",' ',"nom_voie")
end

Existe-t-il une méthode pour y parvenir?
Et par ailleurs, ce type de filtre spatial ne serait-il pas trop gourmand en calcul provocant en conséquence une latence d'affichage des résultats et d'autant plus dans l'objectif d'embarquer le formulaire dans Qfield?

Merci d'avance.

Hors ligne

 

Pied de page des forums

Powered by FluxBB