Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Thu 19 November 2009 16:41

greg-gwened
Participant actif
Lieu: Vannes
Date d'inscription: 4 Oct 2007
Messages: 148

[GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Bonjour,

Je rencontre un problème lorsque j'execute mon lien d'export vers PostGIS pour valider les modifications effectuées sur mon sous type:
une nouvelle ligne est créée pour chaque objet dans ma table PostGIS à chaque activation du lien d'export.

(En piece jointe figure la table apres deux activations du lien d'export, copie d'ecran pgAdminIII)

Le champ clé a bien été défini (id_bdcarto).

Comment puis-je faire pour que les données ne soit pas dupliquer a chaque fois ?
Merci


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Thu 19 November 2009 17:02

cs21
Juste Inscrit !
Date d'inscription: 17 Dec 2008
Messages: 7

Re: [GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Une des possibilités est à mon avis de mettre en place un filtre à l'aide d'une requête SQL et de la clause DISTINCT.

Hors ligne

 

#3 Fri 20 November 2009 09:10

Rémi.Baranoff
Participant occasionnel
Lieu: Arles sur Tech
Date d'inscription: 16 Jan 2008
Messages: 23

Re: [GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Bonjour,


Soit ta clé est mal configurée soit il s'agit d'un bug de Géoconcept.


J'avais rencontré quelques problèmes avec les liens Postgis et Géoconcept, j'ai contacté le support qui m'a envoyé un patch correctif et depuis tout roule.

Sinon ta table postgis a t elle été créé via géoconcept ?
Si c'est le cas ton champ clé devrait être id_bdcarto et pas ogc_fid.

Hors ligne

 

#4 Fri 20 November 2009 11:12

greg-gwened
Participant actif
Lieu: Vannes
Date d'inscription: 4 Oct 2007
Messages: 148

Re: [GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Merci pour vos conseils.

La table PostGIS a été crée a partir d'un fichier Mif/Mid via ogr2ogr, d'ou l'identifiant ogc_id.
J'ai donc supprimer ce champ et redefini Id_BdCarto comme clé primaire sous PostgreSQL.

Maintenant, sous Geoconcept, lors de l'activation du lien d'export vers la base PostgreSQL, j'obtiens le message suivant pour chaque objet de la table (dans cet exemple, 3 au total):

"Erreur au cours du traitement de l'objet XXXXX (Id_BDCarto=XX) Raison : ERROR : duplicate key value violates unique constraint "id_bdcarto_pk" Voulez vous continuez ? : Oui / Non "

J'en conclu qu'il cherche encore à dupliquer les données mais que cela est impossible car la clé primaire Id_BDCarto définie sous PostgreSQL l'en empeche. En repondant "Oui" pour continuer, la base de données postgresql n'est pas modifiée (ni mise à jour des lignes existantes, ni ajout de nouvelles lignes doublons comme c'était la cas initialement).

A quoi cela est du ? Comment empecher Geoconcept de vouloir dupliquer les lignes dans la table a chaque export ? Est-ce un bug ?

J'avais rencontré quelques problèmes avec les liens Postgis et Géoconcept, j'ai contacté le support qui m'a envoyé un patch correctif et depuis tout roule.


Quelles corrections apportait ce patch ?

Merci d'avance,
Greg

Hors ligne

 

#5 Fri 20 November 2009 14:29

Rémi.Baranoff
Participant occasionnel
Lieu: Arles sur Tech
Date d'inscription: 16 Jan 2008
Messages: 23

Re: [GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Le problème que j'avais constaté était une mauvaise gestion des champs de genre date entre GC et postgis.
Ce patch a permis de corriger ce bug et peut être d'autres (lecorrectif contient 6 fichiers).

Pour revenir à ton problème de duplication :

Dans la carte géoconcept y a t il des doublons dans le champ id_bdcarto?

Dans le gestionnaire de lien le champ id_bdcarto est il bien défini en temps que champ clé?


Si ce n'est pas le cas je te conseillerais de droper ta table et de la recréer directement via Geoconcept.

Hors ligne

 

#6 Tue 24 November 2009 16:21

greg-gwened
Participant actif
Lieu: Vannes
Date d'inscription: 4 Oct 2007
Messages: 148

Re: [GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Bonjour,

Dans la carte géoconcept y a t il des doublons dans le champ id_bdcarto?


Non, il n'y pas de doublon.

Dans le gestionnaire de lien le champ id_bdcarto est il bien défini en temps que champ clé?


Tout à fait le champ clé est bien id_bdcarto

Si ce n'est pas le cas je te conseillerais de droper ta table et de la recréer directement via Geoconcept.


Même en créant mon jeu de données à partir de GeoConcept, j'ai le même message d'erreur qui s'affiche autant de fois qu'il y a d'objet et les données ne sont pas mises à jour en cas de modification.

msg:"Erreur au cours du traitement de l'objet XXXXX (id=XXX) Raison : ERROR: duplicate key  value violates unique constraint "pk_..."

[EDIT] Des lors que j'active l'option "Autoriser la création dans la base" lors du parametrage du lien d'export, le message d'erreur apparait : c'est comme si cette option remplacait la mise à jour des objets existants par une re-création de ces objets (l'option "créer un jeu de données" étant désecativée) qui est rendu impossible par la clé primaire.

J'espere etre assez clair dans mes explications ...

Comment puis-je faire ? quelles sont vos versions GeoConcept (Ctrl+Alt+V), PostrgreSQL, PostGIS ?

Voici les versions que j'uilise:
-GeoConcept Standard 6.5 v1517
-PostgreSQL 8.3.8-1
-PostGIS 1.4.0-2

Merci d'avance,
Greg

Dernière modification par greg-gwened (Wed 25 November 2009 11:18)

Hors ligne

 

#7 Fri 27 November 2009 15:19

greg-gwened
Participant actif
Lieu: Vannes
Date d'inscription: 4 Oct 2007
Messages: 148

Re: [GeoConcept 6.5 - PostGIS 1.4] Probleme export GC vers PostGIS

Le problème s'éclaircit ...

Après avoir contacter le support Geoconcept, il apparait que le problème viennent des versions PostgreSQL 8.3 et +.
En cas d'une requete "INSERT" impossible, l'erreur renvoyée par PostgreSQL a changée entre la version 8.2 et la version 8.3. Les dévelppeurs geoConcept ont donc rectifié cela sur la dernière version 6.6 de Geoconcept.

J'attend donc avec impatience la reception de ma mise à jour ...

Si vous avez le même probleme sur une version GeoConcept 6.5 ou inferieur, il vous faut utiliser la version 8.2 ou inferieur de PostgreSQL.

Un grand merci au support GeoConcept pour leur disponibilité.

@+
Grégory

Dernière modification par greg-gwened (Fri 27 November 2009 15:19)

Hors ligne

 

Pied de page des forums

Powered by FluxBB