PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → URGENT : HImporteTexte fichier *.csv de 64.000 enrgnts
URGENT : HImporteTexte fichier *.csv de 64.000 enrgnts
Iniciado por symphonyx_rv, ago., 25 2005 8:42 PM - 4 respostas
Publicado em agosto, 25 2005 - 8:42 PM
Salut les dev,

j'ai besoin d'une réponse de manière assez urgente, désolé de vous presser.
J'ai un fichier de données de type *.csv de 64.000 enregistrements.
J'ai réussi à importer le fichier grace a l'assitant et le convertir en table HF classique, avec les bons sépareteurs etc etc.
J'execute mes requetes de manière impeccable.
Mon soucis est mainteannt de pouvoir, en codant derrière un bouton, d'importer un autre fichier *.csv à la place de l'ancien. Celui là écrasera les enregistrements précédent et importera les données du nouveau fichier *.csv
Je sais qu'il faut utiliser la fonction HImporteTexte, mais je n'arrive pas à importer mon fichier malgré l'aide de WD9.

*************************
HImporteTexte(Detail_conso,csv_detailconso,"",";"+ Caract(127) + Caract(13) + Caract(10) + Caract(127) +""+ Caract(127) +".")

//Detail_conso est la table existante
//csv_detailconso est le fichier csv sélectionné grâce à fSélecteur
*************************


erreur :

Impossible de poursuivre l'importation du fichier <C:\OPTILOG\Copie de utilisateurs_20001747970705.csv>. Ligne <1>, colonne <1>.
En attente du délimiteur de début de chaîne <|>.


Je suppose que c'est un pblm de séparateur.
Dans mon fichier *.csv :
*Les enregistrements sont délimités par <saut de ligne>
*Les colonnes sont délimitées par <Point-virgule>
*les chaines sont délimités par <aucun>
*séparateur décimal <automatique : point ou virgule>


Merci d'avance pour votre réponse
Publicado em agosto, 26 2005 - 12:32 PM
Bonjour,

Tu peux utiliser les fonction d'ouverture et de lecture de fichier texte
FlitLigne etc.
+ les fonctions de recherche de sous chaines avec séparateurs pour chaque
ligne lue ( Position, milieu etc.)

En bref :
Ouverture du fichier texte ( csv)
boucle de parcours
ValeurLigne= flitligne
Traitement de Valeur ligne
fichierHF.rub1= xxx
fin de boucle


Sébastien


"REMY" <symphonyx_rv@hotmail.com> a écrit dans le message de
news:430de0b2$1@news.pcsoft.fr...
Salut les dev,

j'ai besoin d'une réponse de manière assez urgente, désolé de vous

presser.
J'ai un fichier de données de type *.csv de 64.000 enregistrements.
J'ai réussi à importer le fichier grace a l'assitant et le convertir en

table HF classique, avec les bons sépareteurs etc etc.
J'execute mes requetes de manière impeccable.
Mon soucis est mainteannt de pouvoir, en codant derrière un bouton,

d'importer un autre fichier *.csv à la place de l'ancien. Celui là écrasera
les enregistrements précédent et importera les données du nouveau fichier
*.csv
> Je sais qu'il faut utiliser la fonction HImporteTexte, mais je n'arrive
pas à importer mon fichier malgré l'aide de WD9.

*************************
HImporteTexte(Detail_conso,csv_detailconso,"",";"+ Caract(127) +

Caract(13) + Caract(10) + Caract(127) +""+ Caract(127) +".")

//Detail_conso est la table existante
//csv_detailconso est le fichier csv sélectionné grâce à fSélecteur
*************************


erreur :

Impossible de poursuivre l'importation du fichier <C:\OPTILOG\Copie de

utilisateurs_20001747970705.csv>. Ligne <1>, colonne <1>.
En attente du délimiteur de début de chaîne <|>.


Je suppose que c'est un pblm de séparateur.
Dans mon fichier *.csv :
*Les enregistrements sont délimités par <saut de ligne>
*Les colonnes sont délimitées par <Point-virgule>
*les chaines sont délimités par <aucun>
*séparateur décimal <automatique : point ou virgule>


Merci d'avance pour votre réponse


Publicado em agosto, 26 2005 - 12:35 PM
personellement j'utilise les fonctions
fouvre (pour ouverture fichier texte)
flitligne (pour lires les lignes textes)
et extraitchaine (pour ventiler les colonnes)

un peu plus de choses à écrire mais plus souple

"REMY" <symphonyx_rv@hotmail.com> a écrit dans le message de news:
430de0b2$1@news.pcsoft.fr...
Salut les dev,

j'ai besoin d'une réponse de manière assez urgente, désolé de vous

presser.
J'ai un fichier de données de type *.csv de 64.000 enregistrements.
J'ai réussi à importer le fichier grace a l'assitant et le convertir en

table HF classique, avec les bons sépareteurs etc etc.
J'execute mes requetes de manière impeccable.
Mon soucis est mainteannt de pouvoir, en codant derrière un bouton,

d'importer un autre fichier *.csv à la place de l'ancien. Celui là écrasera
les enregistrements précédent et importera les données du nouveau fichier
*.csv
> Je sais qu'il faut utiliser la fonction HImporteTexte, mais je n'arrive
pas à importer mon fichier malgré l'aide de WD9.

*************************
HImporteTexte(Detail_conso,csv_detailconso,"",";"+ Caract(127) +

Caract(13) + Caract(10) + Caract(127) +""+ Caract(127) +".")

//Detail_conso est la table existante
//csv_detailconso est le fichier csv sélectionné grâce à fSélecteur
*************************


erreur :

Impossible de poursuivre l'importation du fichier <C:\OPTILOG\Copie de

utilisateurs_20001747970705.csv>. Ligne <1>, colonne <1>.
En attente du délimiteur de début de chaîne <|>.


Je suppose que c'est un pblm de séparateur.
Dans mon fichier *.csv :
*Les enregistrements sont délimités par <saut de ligne>
*Les colonnes sont délimitées par <Point-virgule>
*les chaines sont délimités par <aucun>
*séparateur décimal <automatique : point ou virgule>


Merci d'avance pour votre réponse


Publicado em agosto, 26 2005 - 1:19 PM
Il faut doubler les guillemets pour le délimiteur de chaine :

"" est égal à rien
"""" est le charactère guillemets

Essaie avec :

HImporteTexte(Detail_conso,csv_detailconso,"",";"+ Caract(127) + Caract(13) + Caract(10) + Caract(127) +""""+ Caract(127) +".")
Publicado em agosto, 27 2005 - 5:41 PM
Ca marche !

merci bcp, mais bon c unpeu long a remplir ma table, c pas grave, ça fonctionne déjà !
J'ai posté un message car g un pblm avec un format de champs, il me faudrait le définir dans ma table HF sous forme hh:mm:ss mais il n'y a que hh:mm une idée ?

Merci bcp déjà !