importation d'un fichier texte non standard par l'instruction get
1 réponse
Ma Dalton
Bonjour,
J'ai besoin de récupérer le contenu d'une base de données Progress datant de
près de 15 ans. Tout a été essayé avec une passerelle ODBC mais les champs
date ne passent pas corretement (une patch avait été fait au passage de l'an
2000 mais dans l'application seulement). Donc la BD restent non conforme à cet
égard et explique sans doute mon incapacité à la récupérer via ODBC. Bref, le
concepteur de l'époque avait inclus une procédure d'exportation qui génère un
fichier texte contenant la totalité des données. Cela constitue donc mon
alternative.
Le format de ce fichier est
Ligne 1: code de site
Ligne 2: les paramètres A B C D (des oui/non)
Ligne 3 et + : des groupes de 2 lignes dont la première présente un nom de
table, et sur la suivante, les données d'un enregistrement de cette table selon
le format «un espace sépare les champ et les valeur string sont entre
guillemets».
et ainsi de suite pour des dizaines de milliers de lignes. Il y a environ une
50aines de tables distinctes que j'ai déjà recréé (par code VBA) pour recevoir
les données.
Avec une commande GET (je ne l'ai pas encore essayé mais cela ne me cause pas
trop de trouble), je m'enligne pour récupérer les données des lignes 1 et 2 dans
des variables indépendantes. C'est là que ça se corse !
Question 1: quelle serait la meilleure approche pour récupérer la ligne de data:
INSERT INTO ou autre chose ? Dans n'importe quel cas, comment ?
Question 2: Quand je fais lecture du nom de la table, est-ce qu'un SELECT CASE
serait approprié pour mener à la bonne structure de ligne de data?
Question 3: Comment faire pour gérer la fin du fichier texte
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonjour Et meilleurs voeux pour 2004.
ce que je ferais: open du fichier, tu sais faire; je ferais un Line Input de chaque ligne dans une variable string je remplirais un tableau avec split (délimiteur space) de la variable dans chaque donnée du tableau tu auras les valeurs du fichier. tu sais récupérer tes données selon la ligne où tu te trouves. tu reconstitues donc les données du tableau et tu les places dans ta table. en testant la structure de ta première valeur du tableau par un select case tu sauras donner le type de ligne à chaque tableau et ainsi remplir ta table. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Ma Dalton" a écrit dans le message de news:epeDFx%
Bonjour,
J'ai besoin de récupérer le contenu d'une base de données Progress datant de
près de 15 ans. Tout a été essayé avec une passerelle ODBC mais les champs
date ne passent pas corretement (une patch avait été fait au passage de l'an
2000 mais dans l'application seulement). Donc la BD restent non conforme à cet
égard et explique sans doute mon incapacité à la récupérer via ODBC. Bref, le
concepteur de l'époque avait inclus une procédure d'exportation qui génère un
fichier texte contenant la totalité des données. Cela constitue donc mon alternative.
Le format de ce fichier est
Ligne 1: code de site Ligne 2: les paramètres A B C D (des oui/non) Ligne 3 et + : des groupes de 2 lignes dont la première présente un nom de table, et sur la suivante, les données d'un enregistrement de cette table selon
le format «un espace sépare les champ et les valeur string sont entre guillemets».
et ainsi de suite pour des dizaines de milliers de lignes. Il y a environ une
50aines de tables distinctes que j'ai déjà recréé (par code VBA) pour recevoir
les données.
Avec une commande GET (je ne l'ai pas encore essayé mais cela ne me cause pas
trop de trouble), je m'enligne pour récupérer les données des lignes 1 et 2 dans
des variables indépendantes. C'est là que ça se corse !
Question 1: quelle serait la meilleure approche pour récupérer la ligne de data:
INSERT INTO ou autre chose ? Dans n'importe quel cas, comment ?
Question 2: Quand je fais lecture du nom de la table, est-ce qu'un SELECT CASE
serait approprié pour mener à la bonne structure de ligne de data?
Question 3: Comment faire pour gérer la fin du fichier texte
merci et bonne année
Bonjour Et meilleurs voeux pour 2004.
ce que je ferais:
open du fichier, tu sais faire;
je ferais un Line Input de chaque ligne dans une variable string
je remplirais un tableau avec split (délimiteur space) de la variable
dans chaque donnée du tableau tu auras les valeurs du fichier.
tu sais récupérer tes données selon la ligne où tu te trouves.
tu reconstitues donc les données du tableau et tu les places dans ta table.
en testant la structure de ta première valeur du tableau par un select case
tu sauras donner le type de ligne à chaque tableau et ainsi remplir ta
table.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Ma Dalton" <Rantanplan@farwest.net> a écrit dans le message de
news:epeDFx%23zDHA.2308@TK2MSFTNGP11.phx.gbl...
Bonjour,
J'ai besoin de récupérer le contenu d'une base de données Progress datant
de
près de 15 ans. Tout a été essayé avec une passerelle ODBC mais les
champs
date ne passent pas corretement (une patch avait été fait au passage de
l'an
2000 mais dans l'application seulement). Donc la BD restent non conforme
à cet
égard et explique sans doute mon incapacité à la récupérer via ODBC.
Bref, le
concepteur de l'époque avait inclus une procédure d'exportation qui génère
un
fichier texte contenant la totalité des données. Cela constitue donc mon
alternative.
Le format de ce fichier est
Ligne 1: code de site
Ligne 2: les paramètres A B C D (des oui/non)
Ligne 3 et + : des groupes de 2 lignes dont la première présente un nom de
table, et sur la suivante, les données d'un enregistrement de cette table
selon
le format «un espace sépare les champ et les valeur string sont entre
guillemets».
et ainsi de suite pour des dizaines de milliers de lignes. Il y a environ
une
50aines de tables distinctes que j'ai déjà recréé (par code VBA) pour
recevoir
les données.
Avec une commande GET (je ne l'ai pas encore essayé mais cela ne me cause
pas
trop de trouble), je m'enligne pour récupérer les données des lignes 1 et
2 dans
des variables indépendantes. C'est là que ça se corse !
Question 1: quelle serait la meilleure approche pour récupérer la ligne de
data:
INSERT INTO ou autre chose ? Dans n'importe quel cas, comment ?
Question 2: Quand je fais lecture du nom de la table, est-ce qu'un SELECT
CASE
serait approprié pour mener à la bonne structure de ligne de data?
Question 3: Comment faire pour gérer la fin du fichier texte
ce que je ferais: open du fichier, tu sais faire; je ferais un Line Input de chaque ligne dans une variable string je remplirais un tableau avec split (délimiteur space) de la variable dans chaque donnée du tableau tu auras les valeurs du fichier. tu sais récupérer tes données selon la ligne où tu te trouves. tu reconstitues donc les données du tableau et tu les places dans ta table. en testant la structure de ta première valeur du tableau par un select case tu sauras donner le type de ligne à chaque tableau et ainsi remplir ta table. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Ma Dalton" a écrit dans le message de news:epeDFx%
Bonjour,
J'ai besoin de récupérer le contenu d'une base de données Progress datant de
près de 15 ans. Tout a été essayé avec une passerelle ODBC mais les champs
date ne passent pas corretement (une patch avait été fait au passage de l'an
2000 mais dans l'application seulement). Donc la BD restent non conforme à cet
égard et explique sans doute mon incapacité à la récupérer via ODBC. Bref, le
concepteur de l'époque avait inclus une procédure d'exportation qui génère un
fichier texte contenant la totalité des données. Cela constitue donc mon alternative.
Le format de ce fichier est
Ligne 1: code de site Ligne 2: les paramètres A B C D (des oui/non) Ligne 3 et + : des groupes de 2 lignes dont la première présente un nom de table, et sur la suivante, les données d'un enregistrement de cette table selon
le format «un espace sépare les champ et les valeur string sont entre guillemets».
et ainsi de suite pour des dizaines de milliers de lignes. Il y a environ une
50aines de tables distinctes que j'ai déjà recréé (par code VBA) pour recevoir
les données.
Avec une commande GET (je ne l'ai pas encore essayé mais cela ne me cause pas
trop de trouble), je m'enligne pour récupérer les données des lignes 1 et 2 dans
des variables indépendantes. C'est là que ça se corse !
Question 1: quelle serait la meilleure approche pour récupérer la ligne de data:
INSERT INTO ou autre chose ? Dans n'importe quel cas, comment ?
Question 2: Quand je fais lecture du nom de la table, est-ce qu'un SELECT CASE
serait approprié pour mener à la bonne structure de ligne de data?
Question 3: Comment faire pour gérer la fin du fichier texte