Message posté par : Pivès001
----------------------------------------
Bonjour,
refFunctions ne fonctionnera pas avec QField, c'est une extension pour
l'application desktop uniquement (ses fonctions ne sont pas portées sur
l'application).
J'ai eu le même soucis et pour contourner le problème j'ai utilisé une fonction
native de QGIS permettant de mettre des couches en relation : aggregate. La syntaxe est la
suivante :
-----------------
Code :
aggregate(
layer:='Ma couche de polygones',
aggregate:='max',
expression:="mon champ",
filter:=intersects( $geometry, geometry( @parent ) )
)
-----------------
J'utilise ici un agrégat de type max car je souhaite récupérer un attribut en integer.
On pourrait très bien utiliser un agrégat de type texte avec un concaténateur mais dans ce
cas il faudrait convertir l'expression en texte
-----------------
Code :
expression:=to_string("mon champ")
-----------------
layer correspond au nom de la couche dans le projet QGIS et expression au nom du champ
d'intérêt. Il est aussi possible d'utiliser son alias, si il en a un. Attention à
bien respecter les simples et double-quotes, c'est sensible à la case.
Cela marchera très bien dans QGIS desktop mais pas dans QField car QFieldSync renomme les
champs lors de l'export. Il faut donc adapter l'expression spécialement pour
QField en ajouter (offline) au nom de la couche :
-----------------
Code :
aggregate(
layer:='Ma couche de polygones (offline)',
aggregate:='max',
expression:="mon champ",
filter:=intersects( $geometry, geometry( @parent ) )
)
-----------------
A suivre :
-----------------
Code :
https://github.com/opengisch/QField/issues/828
-----------------
Un peu de lecture utile :
https://qfield.org/docs/en/project-management/vector-layers.html#id1
https://www.qgis.org/en/site/forusers/visualchangelog30/index.html#feature-…
https://docs.qgis.org/3.10/en/docs/user_manual/working_with_vector/expressi…
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=332594#p332594
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net