[QGIS-it-user] relazioni 1-n nei form

Ciao a tutti,
avrei una domanda per i QGISssisti.

Ho 2 tabelle postgres in relazione uno a molti tra loro, collegate con la classica fkey. Ho creato un form che contiene entrambe le tabelle utilizzando le relazioni. Se creo un nuovo padre e contestualmente anche un record figlio, qgis non riesce a salvare il figlio perché cerca di assegnarli il valore stringa “nextval(‘gid_seq’::regclass), visto che la chiave primaria del padre non è ancora stata assegnata”. In pratica sono costretto prima a salvare il padre (uscendo dal form) e solo dopo creare il record figlio. Al momento ho risolto utilizzando un campo uuid come fkey ma è solo una pezza, non il comportamento che mi aspetterei in un form.
Mi sto perdendo qualcosa ?
Grazie in anticipo

Luca

Luca Lanteri-2 wrote

Ciao a tutti,
avrei una domanda per i QGISssisti.

Ho 2 tabelle postgres in relazione uno a molti tra loro, collegate con la
classica fkey. Ho creato un form che contiene entrambe le tabelle
utilizzando le relazioni. Se creo un nuovo padre e contestualmente anche
un
record figlio, qgis non riesce a salvare il figlio perché cerca di
assegnarli il valore stringa "nextval('gid_seq'::regclass), visto che la
chiave primaria del padre non è ancora stata assegnata". In pratica sono
costretto prima a salvare il padre (uscendo dal form) e solo dopo creare
il
record figlio. Al momento ho risolto utilizzando un campo uuid come fkey
ma
è solo una pezza, non il comportamento che mi aspetterei in un form.
Mi sto perdendo qualcosa ?
Grazie in anticipo

Confermo.
Se non esiste un padre non puo' esistere un figlio.

Il problema sarebbe semplice da risolvere (teoricamente) cioè appena si crea
un padre salvare, non occorre chiudere il form.

saluti

-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Totò wrote

Il problema sarebbe semplice da risolvere (teoricamente) cioè appena si
crea
un padre salvare, non occorre chiudere il form.

saluti

Scusate, devo correggermi.
Per poter salvare occorre prima dare OK cioè chiudere il form.

saluti

-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

E il plug AutoField, non potrebbe servirti?

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Provato adesso, ma il plugin funziona solo con layer geografici, i miei figli sono semplici attributi.
La soluzione migliore che ho trovato al momento è utilizzare come f_key un campo uuid, assegnato al padre come valore di default con la funzione uuid(). In questo modo l’uuid è generato già da prima del salvataggio e può essere ereditato dai figli.
Non è la soluzione ideale ma funziona.

^L^

···

2018-05-04 16:34 GMT+02:00 Luca Bellani <lucabellani.arqueologia@gmail.com>:

E il plug AutoField, non potrebbe servirti?


Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user