Message posté par : lejedi76
----------------------------------------
Salut Mathieu,
je viens de regarder en faisant des tests.
Depuis la dernière version (3.10) on a la possibilité d'utiliser les clés étrangères
composites d'après le changelog (
http://changelog.qgis.org/en/qgis/version/3.10/)
-----------------
Citation :
Data Management
Feature: Composite Foreign Keys
In QGIS 3.10, we added the possibility to create layer relationships which utilise
composite foreign keys. QGIS now fully supports editing parent and child features which
are linked with more than one attribute.
-----------------
-----------------
Code :
CREATE TABLE essai.rue
(
id integer NOT NULL DEFAULT nextval('essai.rue_id_seq'::regclass),
nom character varying(100) COLLATE pg_catalog."default",
CONSTRAINT rue_pk PRIMARY KEY (id)
);
CREATE TABLE essai.reglement
(
id integer NOT NULL DEFAULT nextval('essai.reglement_id_seq'::regclass),
nom character varying(100) COLLATE pg_catalog."default",
CONSTRAINT reglement_pk PRIMARY KEY (id)
);
create table essai.rue_reglement (
id_rue integer references essai.rue (id),
id_reglement integer references essai.reglement(id),
primary key (id_rue, id_reglement)
);
-----------------
Après avoir importé les tables dans qgis, quand tu définis tes relations de manière
automatique tout se fait correctement.
Tu peux personnaliser l'affichage des rues et du règlements avec ce genre de formule
(sinon ca te renvoie l'id)
pour personnaliser l'affichage du sous-formulaire :
-----------------
Code :
format('%1 - %2',
attribute(get_feature_by_id('rue', "id_rue" ),'nom'),
attribute(get_feature_by_id('reglement', "id_reglement"
),'nom')
)
-----------------
Cela semble donc prometteur mais ici on utilise le widget relation.
Bonne journée,
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=326767#p326767
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