Page 1 sur 1

Conversion depuis format DBase

Publié : 19 nov. 2018 11:48
par NuxO
Avant toutes choses bonjour à tous,

Mon premier post sur ce forum.

Je possède plusieurs fichiers au format dbase que j'ai converti les fichiers aux formats ods (openoffice calc) et cvs.


1 ) J'ai d'abord essayé d'importer une base de 82000 enregistrements de 50 champs au format ods vers base (openoffice et libreoffice). L'importation s'arrête entre 10000 et 17000 enregistrements. Et les requêtes sql fonctionnent.

- Open office et Libre office base sont ils limités par l'import de données en provenance d'un fichier calc ? Sinon que puis-je faire ?

2) J'ai ensuite utilisé directement le format dbase et cvs avec la fonction en se connectant à une base de données existante. La base de 82000 enregistrements est bien "importée".

Par contre, j'ai copié les requêtes utilisées en 1) avec l'import au format ods et là les requêtes sql ne fonctionnent plus. Les messages sont : impossible de charger le contenu des données. La requête ne peut pas être utilisée. Elle ne contient pas de table valide ou requête trop complexe. Existe t'il une solution pour faire reconnaitre la table ? Et utiliser les requêtes utilisées en 1) avec la table "ods".

Je travaille sous mac os x et et je peux virtualiser linux ou xp avec vmware.

Peut être devrais je utiliser un autre sgbd.

Merci d'avance pour vos réponses. :D

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 13:09
par micmac
Bonjour et bienvenue sur le forum,
[b][color=#404080]NuxO[/color][/b] a écrit :j'ai converti les fichiers aux formats ods (openoffice calc
Dans votre signature il y a écrit : OpenOffice 4.1 et LibreOffice 6 sous Mac Os X 10.12
Veuillez préciser la version exacte de AOO (AOO 4.1.5 par exemple). Les premières versions avaient révélé des dysfonctionnements sur le module Base.

Afin de profiter des dernières améliorations, il est fortement recommandé d'être à jour des dernières versions

Dans votre signature il est nécessaire d'indiquer :
1- La version exacte de AOO ou LibO (AOO 4.1.5, LibO 6.0.7 par exemple) ;
2- La version exacte du système d'exploitation (MacOS 10.12.6, 10.13.6, 10.14 par exemple).
Accès direct à votre signature pour la corriger.

Cordialement.

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 13:54
par NuxO
Je viens de corriger.

Merci.

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 14:34
par Dude
Salut,

Pas besoin de convertir, Base sait lire le format DBF.
NuxO a écrit :La base de 82000 enregistrements est bien "importée".
Non, ce n'est pas un import mais une connexion à la source.
NuxO a écrit :Existe t'il une solution pour faire reconnaitre la table ?
Chez moi, on peut tout à fait faire du SQL sur la Bibliographie :
no_problemo.png

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 15:06
par NuxO
Bonjour,

Lorsque j'importe un petit fichier calc (ods) de moins de 10000 lignes (enregistrements) sur moins de 50 colonnes (champs), il n'y a aucun problème.

Je peux faire des requêtes et les sauvegarder. Par contre, lorsque j'essaye d'importer un fichier calc plus important (plus de 17000 lignes et de 50 colonnes),

les messages sont : S1000 General error java.lang.NullPointerException in statement [SELECT * FROM ou impossible de charger le contenu des données.

Donc, impossibilité d'ouvrir la table.

Par contre, effectivement, en utilisant directement le fichier dbase, je n'ai aucun problème à l'ouverture. Mais, il m'est impossible d'utiliser les anciennes

requêtes car soit la table est non valide ou la requête est trop complexe (alors qu'elles fonctionnent avec la table "ods").

Sinon, la seule solution consiste peut être à découper les fichiers en fichiers de 10000 lignes et donc en autant de tables. Ou réécrire les requêtes.

Merci pour vos réponses. :D

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 15:27
par Dude
NuxO a écrit :Mais, il m'est impossible d'utiliser les anciennes requêtes car soit la table est non valide ou la requête est trop complexe
Comme exposé dans ma copie écran, je ne reproduis pas.
Si tu veux qu'on avance, fournis un DBF expurgé des données confidentielles et ajoute le texte d'une requête qui dysfonctionne.

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 17:01
par NuxO
Ci joint le fichier calc qui ne contient que 351enregistrements sur 13 champs.

La requête permet de calculer le % par arrivée.

SELECT "ARRIVEE", ROUND( 100.0 * "Calcul" / ( SELECT COUNT( * ) FROM "Feuille1"
WHERE "PLACE1" = 1 AND "PLACE2" > 0 AND "PLACE3" > 0 ), 2 ) "Résultat"
FROM ( SELECT "ARRIVEE", COUNT( * ) "Calcul"
FROM "Feuille1" WHERE "PLACE1" = 1 AND "PLACE2" > 0 AND "PLACE3" > 0 GROUP BY "ARRIVEE" )
ORDER BY "ARRIVEE"


Merci. :D

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 17:40
par Piaf
Bonjour
Dude a écrit :Si tu veux qu'on avance, fournis un DBF expurgé des données confidentielles et ajoute le texte d'une requête qui dysfonctionne.
Hors tu mets en pièce jointe un fichier Calc.
A+

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 18:08
par NuxO
Ci joint le fichier au format dbase zippé. Car impossible de transférer un fichier au format dbase.

Peut être que le problème se situe au niveau de la clé primaire. Il n'y en a pas.

Merci.

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 19:25
par jeanmimi
Bonjour,
NuxO a écrit :Par contre, j'ai copié les requêtes utilisées en 1)
Je ne sais pas s'il y avait une requête dans le fichier exemple, mais, s'il y en avait une, elle n'apparait pas.
Il est par contre possible d'en créer avec l'Assistant.

Re: Conversion depuis format DBase

Publié : 19 nov. 2018 21:25
par NuxO
Bonsoir,

J'ajoute en fichier joint zippé le fichier base odb avec la requête + la table dbase.

En mode assistant, je n'ai pas réussi à faire des % par groupe sur le total filtré ou sous conditions. Ni gérer les écarts.

Merci pour vos réponses et bonne soirée.