From 15f64341af5eaa9b60f67f863793b373f4833f7b Mon Sep 17 00:00:00 2001 From: SJiB Date: Mon, 17 Jun 2024 19:49:23 +0200 Subject: [PATCH 1/3] add ALL DEFERRED --- qgepqwat2ili/qgep/export.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/qgepqwat2ili/qgep/export.py b/qgepqwat2ili/qgep/export.py index 7fb27d24..73963818 100644 --- a/qgepqwat2ili/qgep/export.py +++ b/qgepqwat2ili/qgep/export.py @@ -28,6 +28,9 @@ def qgep_export(selection=None, labels_file=None, orientation=None): abwasser_session = Session(utils.sqlalchemy.create_engine(), autocommit=False, autoflush=False) tid_maker = utils.ili2db.TidMaker(id_attribute="obj_id") + # backport from tww https://github.com/teksi/wastewater/blob/3acfba249866d299f8a22e249d9f1e475fe7b88d/plugin/teksi_wastewater/interlis/interlis_model_mapping/interlis_exporter_to_intermediate_schema.py#L83 + abwasser_session.execute(text("SET CONSTRAINTS ALL DEFERRED;")) + # Filtering filtered = selection is not None subset_ids = selection if selection is not None else [] From a1f3bf890385e0d0ff05e234f65f59d53535b2e7 Mon Sep 17 00:00:00 2001 From: SJiB Date: Mon, 17 Jun 2024 19:58:50 +0200 Subject: [PATCH 2/3] same to qgepdss and qgepsia405 --- qgepqwat2ili/qgepdss/export.py | 3 +++ qgepqwat2ili/qgepsia405/export.py | 3 +++ 2 files changed, 6 insertions(+) diff --git a/qgepqwat2ili/qgepdss/export.py b/qgepqwat2ili/qgepdss/export.py index fe81abb1..1d137aa1 100644 --- a/qgepqwat2ili/qgepdss/export.py +++ b/qgepqwat2ili/qgepdss/export.py @@ -32,6 +32,9 @@ def qgep_export(selection=None, labels_file=None, orientation=None): abwasser_session = Session(utils.sqlalchemy.create_engine(), autocommit=False, autoflush=False) tid_maker = utils.ili2db.TidMaker(id_attribute="obj_id") + # backport from tww https://github.com/teksi/wastewater/blob/3acfba249866d299f8a22e249d9f1e475fe7b88d/plugin/teksi_wastewater/interlis/interlis_model_mapping/interlis_exporter_to_intermediate_schema.py#L83 + abwasser_session.execute(text("SET CONSTRAINTS ALL DEFERRED;")) + # Filtering filtered = selection is not None subset_ids = selection if selection is not None else [] diff --git a/qgepqwat2ili/qgepsia405/export.py b/qgepqwat2ili/qgepsia405/export.py index 90e5e58a..bd8b3772 100644 --- a/qgepqwat2ili/qgepsia405/export.py +++ b/qgepqwat2ili/qgepsia405/export.py @@ -29,6 +29,9 @@ def qgep_export(selection=None, labels_file=None, orientation=None): abwasser_session = Session(utils.sqlalchemy.create_engine(), autocommit=False, autoflush=False) tid_maker = utils.ili2db.TidMaker(id_attribute="obj_id") + # backport from tww https://github.com/teksi/wastewater/blob/3acfba249866d299f8a22e249d9f1e475fe7b88d/plugin/teksi_wastewater/interlis/interlis_model_mapping/interlis_exporter_to_intermediate_schema.py#L83 + abwasser_session.execute(text("SET CONSTRAINTS ALL DEFERRED;")) + # Filtering filtered = selection is not None subset_ids = selection if selection is not None else [] From 78043f7ef57adbcc480243ffc0b0b53b625965f1 Mon Sep 17 00:00:00 2001 From: SJiB Date: Wed, 19 Jun 2024 16:22:31 +0200 Subject: [PATCH 3/3] from sqlalchemy.sql import text --- qgepqwat2ili/qgep/export.py | 2 ++ qgepqwat2ili/qgepdss/export.py | 1 + qgepqwat2ili/qgepsia405/export.py | 1 + 3 files changed, 4 insertions(+) diff --git a/qgepqwat2ili/qgep/export.py b/qgepqwat2ili/qgep/export.py index 73963818..6e8add4f 100644 --- a/qgepqwat2ili/qgep/export.py +++ b/qgepqwat2ili/qgep/export.py @@ -3,12 +3,14 @@ from geoalchemy2.functions import ST_Force2D, ST_GeomFromGeoJSON from sqlalchemy import or_ from sqlalchemy.orm import Session +from sqlalchemy.sql import text from .. import utils from ..utils.various import logger from .model_abwasser import get_abwasser_model from .model_qgep import get_qgep_model + #def qgep_export(selection=None, labels_file=None): def qgep_export(selection=None, labels_file=None, orientation=None): """ diff --git a/qgepqwat2ili/qgepdss/export.py b/qgepqwat2ili/qgepdss/export.py index 1d137aa1..4061e0d2 100644 --- a/qgepqwat2ili/qgepdss/export.py +++ b/qgepqwat2ili/qgepdss/export.py @@ -5,6 +5,7 @@ from geoalchemy2.functions import ST_Force2D, ST_GeomFromGeoJSON from sqlalchemy import or_ from sqlalchemy.orm import Session +from sqlalchemy.sql import text from .. import utils from ..utils.various import logger diff --git a/qgepqwat2ili/qgepsia405/export.py b/qgepqwat2ili/qgepsia405/export.py index bd8b3772..64597daa 100644 --- a/qgepqwat2ili/qgepsia405/export.py +++ b/qgepqwat2ili/qgepsia405/export.py @@ -3,6 +3,7 @@ from geoalchemy2.functions import ST_Force2D, ST_GeomFromGeoJSON from sqlalchemy import or_ from sqlalchemy.orm import Session +from sqlalchemy.sql import text from .. import utils from ..utils.various import logger