#1 Thu 15 April 2010 10:46
- ppluvinet
- Participant assidu
- Lieu: VALENCE
- Date d'inscription: 6 Aug 2007
- Messages: 617
QGIS : problème de dbf ?
Bonjour ,
votre constat serait bien un problème d'autant plus que Excel 2007 ne fait plus d'export en dbf.
Une piste :
N'y aurait-il pas un problème d'encodage?
Pascal PLUVINET
Hors ligne
#2 Thu 15 April 2010 11:50
- Ludovic L
- Membre
- Lieu: Tours
- Date d'inscription: 23 Jun 2005
- Messages: 333
Re: QGIS : problème de dbf ?
Bonjour,
Je suspecte plutôt un problème de type numérique/chaine de caractere.
En effet, quand on exporte depuis openoffice en DBF, il va définir le type de chaque champ en fonction des valeurs de la première ligne. Si pour un champ que vous attendez de type texte, la première valeur est un nombre (ca peut arriver) alors le champ sera mis en type numérique.
Cela n'empêche pas forcément la jointure dans qgis mais ne donne aucun résultat de jointure du coup.
La petite astuce que j'ai trouvé, c'est de mettre dans la première ligne une valeur bidon mais du bon type pour que le champ soit bien typé. (par exemple je met TXT si je veux des chaines de caractères).
En espérant que ce soit la piste...
Cordialement
Conservatoire d'espaces naturels Centre-Val de Loire
Responsable SIG et informatique
Hors ligne
#3 Tue 27 July 2010 15:25
- Nicoo
- Participant occasionnel
- Date d'inscription: 27 Jul 2010
- Messages: 10
Re: QGIS : problème de dbf ?
Bonjour,
Ayant le même problème, je relance le sujet.
Je cherche à joindre une couche des communes (shp) avec des données d'un classeur Excel grâce aux numéros INSEE communs. En passant par Excel pour préparer et enregistrer les données au format DBF IV, tout se passe sans problème dans QGis lors de la jointure (excepté la gestion des accents). En revanche, en passant par Open office, la jointure renvoi systématiquement des champs NULL pour les éléments joints....
Petites précisions : le champ N° INSEE de la couche commune est de type String, longueur 5, précision 0. Sous Oo, j'ai essayé différentes solutions: j'enregistre le champ au format texte et je réduis la colonne au minimum pour n'avoir que les 5 caractères (ne marche pas). J'enregistre avec des en-têtes de type Num_insee,C,5 (ne marche pas non plus). Je convertis (dans le shp et dans le dbf) le champ en réel ou en entier (ne marche toujours pas). J'enregistre d'abord au format ods (toujours pas). Je teste différents types d'encodage lors de l'enregistrement en DBF (notamment UTF8 et ISO88591)....
Bref après moult essais je m'en remet à vous... Y a-t-il un paramétrage d'Open office à faire (Paramètres linguistiques,...) ou de Qgis (sachant que la jointure marche sans problème sous GVSig)???
Merci d'avance pour vos lumières, en espérant trouver une solution car c'est quand même un comble de devoir passer par Excel pour pouvoir travailler dans QGis!!!
Cordialement
Hors ligne
#4 Tue 27 July 2010 20:08
Re: QGIS : problème de dbf ?
un export au format .csv ou .txt n'est-il pas la solution la plus simple, la plus sûre et la plus compatible ?
Dernière modification par simon_g (Tue 27 July 2010 20:08)
Hors ligne
#5 Wed 28 July 2010 09:03
- Nicoo
- Participant occasionnel
- Date d'inscription: 27 Jul 2010
- Messages: 10
Re: QGIS : problème de dbf ?
Malheureusement non; le format csv donne exactement le même résultat. Pour le .txt (ou autre), je ne vois pas comment l'ouvrir ensuite dans Qgis....
Hors ligne
#6 Wed 28 July 2010 09:15
- LionelR
- Participant occasionnel
- Date d'inscription: 13 Apr 2010
- Messages: 44
Re: QGIS : problème de dbf ?
Bonjour,
quelles versions de qGis et d'OOo utilisez vous?
Hors ligne
#7 Wed 28 July 2010 09:26
Re: QGIS : problème de dbf ?
Malheureusement non; le format csv donne exactement le même résultat. Pour le .txt (ou autre), je ne vois pas comment l'ouvrir ensuite dans Qgis....
Nicooo > dans ton fichier au format .csv, regardes s'il n' y a pas un espace comme séparateur de millier ....
Hors ligne
#8 Wed 28 July 2010 09:36
- Nicoo
- Participant occasionnel
- Date d'inscription: 27 Jul 2010
- Messages: 10
Re: QGIS : problème de dbf ?
J'utilise la version 1.4 de QGis (standalone) et la 3.2 de Oo.
Dans le fichier .csv, il n'y a pas de séparateur de milliers. Par contre, que ce soit en dbf ou en csv, j'ai beau formater les cellules du champ N° INSEE en text, lors de la ré-ouverture du document les cellules reviennent automatiquement en Numéro_série/Standard (même en ajoutant un apostrophe devant les valeurs).... Pourtant, lors de l'ouverture dans Qgis, il reconnaît bien le champ comme String.
Hors ligne
#9 Wed 28 July 2010 12:38
- Mathieu Denat
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 5 May 2010
- Messages: 110
Re: QGIS : problème de dbf ?
Bonjour,
J'ai fait la manip hier avec OOo 3.x (je ne me souviens plus de la version exacte) et Qgis 1.4.
J'ai mon tableur que j'enregistre en CSV puis réouvre ce CSV dans OOo (comme ça j'ai bien une chaine pour ma colonne nom de commune et des chiffres pour mes cellules code INSEE).
J'ai donc me colonne NOM (txt) et ma colonne INSEE (nbre)
Ensuite je crée une nouvelle colonne que je défini en chaine de caractère ce qui nous fait:
1 2 3
A NOM (txt) INSEE (nbre) et INSEE_bis (txt).
B communeX 25665 =B3
Une fois que j'ai cette structure je fais un simple calcul tel que cellule B2 = B3 et hop ça marche j'ai passé un champs nbre en txt.
J'enregistre au format DBF et zou je joins.
voilà j'espère que la bidouille marchera chez toi aussi.
Bonne continuation.
Mathieu
C'est en forgeant qu'on devient forgeron
Hors ligne
#10 Wed 28 July 2010 14:24
- LionelR
- Participant occasionnel
- Date d'inscription: 13 Apr 2010
- Messages: 44
Re: QGIS : problème de dbf ?
Ou bien utiliser Gnumeric qui sait aussi bien lire les dbf que les ods et xls, et avec moins de problèmes qu'OOo
Dernière modification par LionelR (Wed 28 July 2010 14:25)
Hors ligne
#11 Wed 28 July 2010 15:47
- Nicoo
- Participant occasionnel
- Date d'inscription: 27 Jul 2010
- Messages: 10
Re: QGIS : problème de dbf ?
Finalement le problème des champs en Numéro de série commençait à me gonfler. J'ai donc réinstallé Open Office en passant à la version 3.2.1.... et là, miracle, plus de problème lors des enregistrements en DBF : le format text reste et QGis me fait les jointures sans soucis!
Matmat, du coup je n'ai pas essayé ta solution... merci quand même!
Il ne reste plus qu'à gérer l'encodage : l'enregistrement en UTF8 ne permet désormais plus de retrouver les accents... Edit : choisir Europe occidentale (Windows-1252/WinLatin1); marche pour moi. / Edit2 : UTF8 marche à nouveau pour QGis 1.5.....
Sinon, j'ai essayé Gnumeric en cours de route, il semble effectivement pas mal mais je n'ai pas poussé plus loin lorsque j'ai vu qu'on ne pouvait pas enregistrer directement en dbf.
Problème résolu pour moi, Merci pour vos réponses!
Dernière modification par Nicoo (Fri 06 August 2010 11:49)
Hors ligne
#12 Wed 28 July 2010 18:51
- Mathieu Denat
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 5 May 2010
- Messages: 110
Re: QGIS : problème de dbf ?
Ok super!
Il est bon de savoir que OOo3.2.1 permet de moins galérer!
NB: Pour l'encodage j'utilise la norme iso-8859-1 (parc MacOS, windows et linux) et ça marche aussi (allez savoir!).
Bonne continuation.
Mathieu
C'est en forgeant qu'on devient forgeron
Hors ligne