[Qgis-user] Using relations and transaction groups

Matthias Kuhn matthias at opengis.ch
Tue Mar 3 09:33:43 PST 2020


Hi Rhys,

Glad to hear it worked and thanks a lot for having a look at the docs.

For your information, at the bottom of documentation pages, there is a 
"fix it" link that will directly bring you to an editor where you can 
change this page in the online editor (in your fork). Just in case you 
didn't know ;)

Matthias

On 3/3/20 3:02 PM, Rhys A.D. Stewart wrote:
> Hey Mathias,
>
> Thanks!! That worked wonderfully well.
>
> WRT the documentation, yes, I would say that it is poorly documented, 
> but is definitely something I would like to assist in rectifying. Just 
> forked qgis/QGIS-Documentation so hopefully, I can have a go at it on 
> the weekend.
>
> Rhys
> Peace & Love | Live Long & Prosper
>
>
> On Tue, Mar 3, 2020 at 1:18 AM Matthias Kuhn <matthias at opengis.ch 
> <mailto:matthias at opengis.ch>> wrote:
>
>     Hi Rhys,
>
>     Ironically, this situation is exactly what transaction mode has
>     been added for (to avoid the situation where someone clicks the
>     save windows button before the save footprint button).
>
>     The solution is not that obvious though (and might be poorly
>     documented): Enable "deferred constraint checks" in your database
>     and it will only check if foreign key constraints are ok at commit
>     time (when you save it) and not while editing. If by any chance
>     you get around to adding this information into the documentation,
>     this will be much appreciated!
>
>     Bests
>
>     Matthias
>
>     On 3/3/20 6:23 AM, Rhys A.D. Stewart wrote:
>>     Greetings All,
>>
>>     I'm working with transaction groups and tables with relations
>>     (database foreign keys). Let's say that there are two tables,
>>     'building_footprints' and 'windows'. The windows table references
>>     the 'building_footprints' table. I've added the relations in QGIS
>>     through the Project properties | relations dialog so that when
>>     editing 'building_footprints' I can add a child record for
>>     'windows'. Now because I have transaction groups active, the
>>     changes are pushed back to the database immediately, if I create
>>     a child record before saving the parent record this causes a
>>     problem because the parent record doesn't exist. It is often the
>>     case that I am going to add child records when I'm creating the
>>     parent record, so adding a parent record, saving it, then editing
>>     it just to add the child record becomes cumbersome.
>>
>>     I figured that someone must've had this issue before, but can't
>>     seem to find any documentation about this. Is there a workaround
>>     for this? (other than not using transaction groups and saving
>>     each layer individually)  Or have I just missed something
>>     extremely obvious?
>>
>>
>>     Rhys
>>     Peace & Love | Live Long & Prosper
>>
>>     _______________________________________________
>>     Qgis-user mailing list
>>     Qgis-user at lists.osgeo.org  <mailto:Qgis-user at lists.osgeo.org>
>>     List info:https://lists.osgeo.org/mailman/listinfo/qgis-user
>>     Unsubscribe:https://lists.osgeo.org/mailman/listinfo/qgis-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20200303/ee36af9d/attachment.html>


More information about the Qgis-user mailing list