3liz / QgisCadastrePlugin

A QGIS plugin which helps users to import the french land registry ('cadastre') data into a database. It is meant to ease the use of the data in QGIS by providing search tools and appropriate layer symbology.
GNU General Public License v2.0
61 stars 41 forks source link

Erreur SQL lors d'un import EDIGEO seul (sans MAJIC) vers PG => recherche de parcelles impossible #428

Closed Fred-PF closed 9 months ago

Fred-PF commented 11 months ago

Description du bug

Import d'un jeu de données EDIGEO dans un schéma vierge ("edigeo2023"), sans aucune donnée MAJIC L'import arrive à terme mais contient un erreur, voir log ci-dessous.

Dans QGIS, la base cadastrale se charge bien et tous les objets géographiques sont visibles (y compris les parcelles) mais aucune parcelle ne s'affiche dans le module de recherche = 0 item(s) De plus, la table parcelle_info n'est pas créée dans la base.

Si on la crée après coup avec le script edigeo_create_table_parcelle_info_simple.sql qui est dans le dossier C:\Users[utilisateur]\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\cadastre\scripts\plugin cela crée la table parcelle_info mais toujours pas de parcelles dans le module de recherche.

Reproduire le bug Import d'un jeu de données (commune ou section) EDIGEO seul

Log Le log de l'import renvoie cette erreur :

Erreur SQL : SET search_path = "edigeo2023", public, pg_catalog;DROP TABLE IF EXISTS "batiment_id";DROP TABLE IF EXISTS "borne_id";DROP TABLE IF EXISTS "boulon_id";DROP TABLE IF EXISTS "commune_id";DROP TABLE IF EXISTS "croix_id";DROP TABLE IF EXISTS "id_s_obj_z_1_2_2";DROP TABLE IF EXISTS "lieudit_id";DROP TABLE IF EXISTS "numvoie_id";DROP TABLE IF EXISTS "parcelle_id";DROP TABLE IF EXISTS "ptcanv_id";DROP TABLE IF EXISTS "section_id";DROP TABLE IF EXISTS "subdfisc_id";DROP TABLE IF EXISTS "subdsect_id";DROP TABLE IF EXISTS "symblim_id";DROP TABLE IF EXISTS "tline_id";DROP TABLE IF EXISTS "tpoint_id";DROP TABLE IF EXISTS "tronfluv_id";DROP TABLE IF EXISTS "tronroute_id";DROP TABLE IF EXISTS "tsurf_id";DROP TABLE IF EXISTS "voiep_id";DROP TABLE IF EXISTS "zoncommuni_id"; renvoyé 0 [ERREUR: la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc de la transaction ]

Environnement

sigmoe commented 11 months ago

J'ai exactement le même problème lors du chargement de 13 communes du 68 dans un schéma PostgreSQL. Le problème vient probablement de cette nouvelle version 1.18.2. J'ai refait la même intégration avec le plugin en version 1.17.1 et aucun problème, tout fonctionne correctement.

Fred-PF commented 11 months ago

Bonjour, Merci pour ce retour J'ai testé différentes versions 1.17 et 1.18 Seule la dernière version 1.18.2 renvoie l'erreur et ne crée pas de table parcelle_info Par contre même lorsque la table parcelle_info est créée (et contient bien toutes les parcelles) avec les versions antérieures, le module de recherche permet de sélectionner les communes, sections mais toujours aucune parcelle = 0 item(s)