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 lors de l'import EDIGEO #104

Closed Fred-PF closed 7 years ago

Fred-PF commented 7 years ago

Bonjour,

J'utilise la version 1.4.1 du plugin sous QGIS 2.16.3 PostgreSQL 9.2 avec PgAdminIII Windows 10 Pro

L'import des fichiers MAJIC se déroule bien. L'import des fichier EDIGEO bloque avec le message suivant Une erreur est survenue lors de l'exécution de la requête :

ERREUR: valeur trop longue pour le type character varying(7) Requête : -- geo_commune: utilisation de max et non distinct on pour compatibilite sqlite INSERT INTO "cad_2016".geo_commune ( geo_commune, annee, object_rid, idu, tex2, creat_date, update_dat, commune, geom, lot) SELECT '2016'||'260'||SUBSTRING(idu,1,3), '2016', object_rid, idu, tex2, to_date(to_char(creat_date,'00000000'), 'YYYYMMDD'), to_date(to_char(update_date,'00000000'), 'YYYYMMDD'), '2016'||'260'||SUBSTRING(idu,1,3), ST_Multi(ST_CollectionExtract(ST_MakeValid(geom),3)), '1' FROM "cad_2016".commune_id JOIN (SELECT idu as t_idu, MAX(update_date) AS t_update_date, MAX(creat_date) AS t_creat_date FROM "cad_2016".commune_id GROUP BY idu, tex2) t2 ON idu = t2.t_idu AND update_date = t2.t_update_date AND creat_date = t2.t_creat_date GROUP BY tex2, idu, update_date, creat_date, geom, object_rid ORDER BY tex2, idu, update_date DESC, creat_date DESC

Sous PostgreSQL, le champ geo_commune est passé de 7 caractères (version 1.3.0 du plugin) à 10 caractères (version 1.4.1) mais la table geo_commune est toujours créée comme ceci geo_commune character varying(7) NOT NULL,

mdouchin commented 7 years ago

Merci pour le retour, je vais corriger cela

mdouchin commented 7 years ago

Le script de création de la table geo_commune fait bien référence au type TEXT sans contrainte de taille: https://github.com/3liz/QgisCadastrePlugin/blob/46bbb2801a25c6ff5a6cc5fa6e0e5f872cda6fa0/scripts/plugin/commun_create_metier.sql#L716

Avez-vous créé un nouveau schéma dans la base de données, et tester un import ?

Fred-PF commented 7 years ago

Je pense que mon problème provient de l'utilisation d'une base qui contient seulement les données Majic créée ... avec la version 1.3.0, sur laquelle je réalisait un import Edigeo avec la V1.4.0. Désolé pour le temps perdu

Fred-PF commented 7 years ago

C'était bien ça