#1 Thu 17 January 2019 21:25
- Romain_L
- Juste Inscrit !
- Date d'inscription: 15 Nov 2014
- Messages: 3
QGIS 3.4: Copie entités de shape vers table Postgis
Bonjour à tous,
Je viens vous faire part d'un souci que je rencontre depuis les versions 3.4.x de Qgis. Une de mes tâches consiste dans le géoréférencement de points sur le terrain à l'aide d'un récepteur GNSS. Au bureau, les données sont ensuite extraites du logiciel de géoréférencement dans le format Shape.
Par la suite, je retravaille ce shape directement dans Qgis. Enfin, je copie tout simplement les entités sélectionnées vers une table stockée sous une base de données PostgreSQL/Postgis. Cela implique donc d'avoir des champs en commun ainsi que des types de champ concordants. J'ai réalisé cette tâche relativement simple sans souci jusqu'à QGis 3.2.
Depuis les versions 3.4, la copie d'entités depuis un shape vers ma table de base de données fonctionne mais aucun champ ne se renseigne, ceux-ci restent vides. Par contre, le point se positionne bien géographiquement mais sans aucun attribut. Bien évidemment, les système de coordonnées sont les mêmes, les noms de champs et leur typologie également. J'ai tenté différentes expériences en modifiant le shape source, en essayant depuis une couche virtuelle ou bien depuis un autre format mais sans succès. J'ai tenté de modifier quelques paramètres, de désinstaller/réinstaller les versions en 32 ou 64bits sans succès non plus. Enfin, je suis retourné sous QGis 3.2 et aucun souci avec cette version.
Auriez-vous connaissance d'un souci tel que celui-ci dans les versions 3.4 ? Est-ce que quelqu'un rencontre ce souci également ou bien cela vient-il de chez moi ? Je vous remercie d'avance pour les réponses que vous pourrez m'apporter.
Hors ligne
#2 Fri 18 January 2019 07:45
- romainbh
- Participant assidu
- Date d'inscription: 20 Aug 2013
- Messages: 355
Re: QGIS 3.4: Copie entités de shape vers table Postgis
Bonjour,
Testé ce matin sur une couche de points : copie d'un élément depuis une couche temporaire sur une table PostGIS, tout fonctionne sur QGIS 3.4.3, les champs sont effectivement copiés.
Un test à faire : sélectionner un ou quelques points sur la couche PostGIS, les copier, puis aller dans le menu Editer -> Coller les entités comme -> Couche temporaire en mémoire. Dans cette nouvelle couche, vérifier que les attributs sont bien là puis déplacer le point (ou les quelques points). Les copier et les coller dans la couche PostGIS. Est-ce que les attributs ont suivi ?
Hors ligne
#3 Fri 18 January 2019 10:37
- Romain_L
- Juste Inscrit !
- Date d'inscription: 15 Nov 2014
- Messages: 3
Re: QGIS 3.4: Copie entités de shape vers table Postgis
Bonjour, merci de votre réponse.
En effectuant ce test, les attributs suivent bel et bien dans la couche PostGIS.
J'ai voulu aller plus loin dans ce test en copiant ces mêmes points dans une nouvelle couche SHP (créée de toute pièce). Et dans ce dernier cas, les attributs ne suivent pas.
En revanche, en exportant la première couche temporaire en SHP, les attributs sont bien copiés dans la couche PostGIS.
Je suis un peu perdu avec ce souci, cela provient-il du "typage" des champs entre Qgis et PostGIS ? Dans votre cas, les données d'une nouvelle couche SHP se copient-elles bien dans la couche PostGis ?
Hors ligne
#4 Fri 18 January 2019 14:34
- romainbh
- Participant assidu
- Date d'inscription: 20 Aug 2013
- Messages: 355
Re: QGIS 3.4: Copie entités de shape vers table Postgis
Bonjour,
De mon côté tout semble fonctionner correctement. Les seuls attributs qui ne sont pas copiés sont ceux dont le nom de champ a été tronqué à cause de la limitation de la couche shapefile (10 caractères sauf erreur).
À tout hasard, faites des tests avec une couche Geopackage plutôt que shapefile car ce format supporte plus de types de champs.
Sinon, serait-il possible d'utiliser le shapefile issu de la couche PG pour numériser des objets, sachant que cette couche fonctionne d'après ce que vous dites ?
Hors ligne
#5 Fri 18 January 2019 15:52
- Romain_L
- Juste Inscrit !
- Date d'inscription: 15 Nov 2014
- Messages: 3
Re: QGIS 3.4: Copie entités de shape vers table Postgis
Avec une couche Geopackage, je rencontre exactement les mêmes soucis qu'avec le SHP.
En utilisant un SHP issu de la couche temporaire (elle-même issue de la couche PostGIS), la copie de données vers la table PostGIS fonctionne correctement. Cela permettrait de réaliser mes étapes avec une phase intermédiaire en plus...
J'ai voulu tenter ces expériences en installant QGis 3.4 sur un autre poste et je rencontre les mêmes problèmes évoqués plus haut. J'en viens à penser que ce serait peut être une "incompatibilité" entre ma base de données et cette version de QGis. Pouvez-vous me dire sur quelles versions de PostgreSQL/PostGIS vous fonctionnez ? Pour information, je suis PostgreSQL 9.4.6 et PostGIS 2.2.1.
Hors ligne
#6 Mon 21 January 2019 07:49
- romainbh
- Participant assidu
- Date d'inscription: 20 Aug 2013
- Messages: 355
Re: QGIS 3.4: Copie entités de shape vers table Postgis
Zut pour le Geopackage...
J'ai PostgreSQL 9.4.4 et PostGIS 2.1.7, donc plus vieux.
Et si vous utilisiez le SHP issu de PostGIS sur votre GPS ? Au moins pour tester.
Hors ligne