Bonjour =E0 tous,
J'ai un projet et je suis bloqu=E9.
J'ai un fichier csv ou chaque ligne repr=E9sente un enregistrement,
chaque champ est s=E9par=E9 par un ;
Ma table windev =E0 les m=EAmes champs que mon fichier csv.
J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une
id=E9e ou un exemple.
Je vous remercie d'avance.
Cordialement
Jean Paul
i est un entier
chn est une chaine
ligne est une chaine
sdonnee est une chaine
chn est une chaine =3D fchargetexte(fichiercsv)
pour toute chaine ligne de chn separ=E9e par RC
ligne=3Dremplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34))
i=3D0
sdonnee=3Dextraitchaine(ligne,rangpremier,";")
tantque sdonnee<>eot
i++
tableajoute(tableimport)
{"colonne"+i}=3Dsdonnee
.=2E..
sdonnee=3Dextraitchaine(ligne,rangsuivant,";")
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
Roumegou Eric
Roller0022 a formulé la demande :
Bonjour à tous, J'ai un projet et je suis bloqué. J'ai un fichier csv ou chaque ligne représente un enregistrement, chaque champ est séparé par un ; Ma table windev à les mêmes champs que mon fichier csv. J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une idée ou un exemple. Je vous remercie d'avance. Cordialement Jean Paul
i est un entier chn est une chaine ligne est une chaine sdonnee est une chaine
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34)) i=0 sdonnee=extraitchaine(ligne,rangpremier,";") tantque sdonnee<>eot i++ tableajoute(tableimport) {"colonne"+i}=sdonnee .... sdonnee=extraitchaine(ligne,rangsuivant,";")
fin fin
perso je prefere extraire un a un chaque champs et faire un tableajouteligne mais si tu veux faire tout d'un coup... et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC tableajoute(Table1,remplace(ligne,";",TAB)) fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est conforme à ton énoncé
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022 a formulé la demande :
Bonjour à tous,
J'ai un projet et je suis bloqué.
J'ai un fichier csv ou chaque ligne représente un enregistrement,
chaque champ est séparé par un ;
Ma table windev à les mêmes champs que mon fichier csv.
J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une
idée ou un exemple.
Je vous remercie d'avance.
Cordialement
Jean Paul
i est un entier
chn est une chaine
ligne est une chaine
sdonnee est une chaine
chn est une chaine = fchargetexte(fichiercsv)
pour toute chaine ligne de chn separée par RC
ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34))
i=0
sdonnee=extraitchaine(ligne,rangpremier,";")
tantque sdonnee<>eot
i++
tableajoute(tableimport)
{"colonne"+i}=sdonnee
....
sdonnee=extraitchaine(ligne,rangsuivant,";")
fin
fin
perso je prefere extraire un a un chaque champs et faire un
tableajouteligne mais si tu veux faire tout d'un coup...
et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv)
pour toute chaine ligne de chn separée par RC
tableajoute(Table1,remplace(ligne,";",TAB))
fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est
conforme à ton énoncé
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Bonjour à tous, J'ai un projet et je suis bloqué. J'ai un fichier csv ou chaque ligne représente un enregistrement, chaque champ est séparé par un ; Ma table windev à les mêmes champs que mon fichier csv. J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une idée ou un exemple. Je vous remercie d'avance. Cordialement Jean Paul
i est un entier chn est une chaine ligne est une chaine sdonnee est une chaine
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34)) i=0 sdonnee=extraitchaine(ligne,rangpremier,";") tantque sdonnee<>eot i++ tableajoute(tableimport) {"colonne"+i}=sdonnee .... sdonnee=extraitchaine(ligne,rangsuivant,";")
fin fin
perso je prefere extraire un a un chaque champs et faire un tableajouteligne mais si tu veux faire tout d'un coup... et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC tableajoute(Table1,remplace(ligne,";",TAB)) fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est conforme à ton énoncé
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022
Merci de m'avoir répondu Eric, J'ai testé ton bout de code et j'ai toujours cette erreur dans LIGNE pour toute chaine ligne de chn separée par RC ---------- J'ai erreur se syntaxe, je ne comprends pas cette erreur. Si tu pouvais me venir en aide merci Jean Paul
Roumegou Eric a écrit :
Roller0022 a formulé la demande : > Bonjour à tous, > J'ai un projet et je suis bloqué. > J'ai un fichier csv ou chaque ligne représente un enregistrement, > chaque champ est séparé par un ; > Ma table windev à les mêmes champs que mon fichier csv. > J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une > idée ou un exemple. > Je vous remercie d'avance. > Cordialement > Jean Paul > > i est un entier > chn est une chaine > ligne est une chaine > sdonnee est une chaine > > chn est une chaine = fchargetexte(fichiercsv) > pour toute chaine ligne de chn separée par RC > ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34 )) > i=0 > sdonnee=extraitchaine(ligne,rangpremier,";") > tantque sdonnee<>eot > i++ > tableajoute(tableimport) > {"colonne"+i}=sdonnee > .... > sdonnee=extraitchaine(ligne,rangsuivant,";") > > fin > fin
perso je prefere extraire un a un chaque champs et faire un tableajouteligne mais si tu veux faire tout d'un coup... et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC tableajoute(Table1,remplace(ligne,";",TAB)) fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est conforme à ton énoncé
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Merci de m'avoir répondu Eric,
J'ai testé ton bout de code et j'ai toujours cette erreur dans LIGNE
pour toute chaine ligne de chn separée par RC
----------
J'ai erreur se syntaxe, je ne comprends pas cette erreur.
Si tu pouvais me venir en aide merci
Jean Paul
Roumegou Eric a écrit :
Roller0022 a formulé la demande :
> Bonjour à tous,
> J'ai un projet et je suis bloqué.
> J'ai un fichier csv ou chaque ligne représente un enregistrement,
> chaque champ est séparé par un ;
> Ma table windev à les mêmes champs que mon fichier csv.
> J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une
> idée ou un exemple.
> Je vous remercie d'avance.
> Cordialement
> Jean Paul
>
> i est un entier
> chn est une chaine
> ligne est une chaine
> sdonnee est une chaine
>
> chn est une chaine = fchargetexte(fichiercsv)
> pour toute chaine ligne de chn separée par RC
> ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34 ))
> i=0
> sdonnee=extraitchaine(ligne,rangpremier,";")
> tantque sdonnee<>eot
> i++
> tableajoute(tableimport)
> {"colonne"+i}=sdonnee
> ....
> sdonnee=extraitchaine(ligne,rangsuivant,";")
>
> fin
> fin
perso je prefere extraire un a un chaque champs et faire un
tableajouteligne mais si tu veux faire tout d'un coup...
et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv)
pour toute chaine ligne de chn separée par RC
tableajoute(Table1,remplace(ligne,";",TAB))
fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est
conforme à ton énoncé
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Merci de m'avoir répondu Eric, J'ai testé ton bout de code et j'ai toujours cette erreur dans LIGNE pour toute chaine ligne de chn separée par RC ---------- J'ai erreur se syntaxe, je ne comprends pas cette erreur. Si tu pouvais me venir en aide merci Jean Paul
Roumegou Eric a écrit :
Roller0022 a formulé la demande : > Bonjour à tous, > J'ai un projet et je suis bloqué. > J'ai un fichier csv ou chaque ligne représente un enregistrement, > chaque champ est séparé par un ; > Ma table windev à les mêmes champs que mon fichier csv. > J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une > idée ou un exemple. > Je vous remercie d'avance. > Cordialement > Jean Paul > > i est un entier > chn est une chaine > ligne est une chaine > sdonnee est une chaine > > chn est une chaine = fchargetexte(fichiercsv) > pour toute chaine ligne de chn separée par RC > ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34 )) > i=0 > sdonnee=extraitchaine(ligne,rangpremier,";") > tantque sdonnee<>eot > i++ > tableajoute(tableimport) > {"colonne"+i}=sdonnee > .... > sdonnee=extraitchaine(ligne,rangsuivant,";") > > fin > fin
perso je prefere extraire un a un chaque champs et faire un tableajouteligne mais si tu veux faire tout d'un coup... et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC tableajoute(Table1,remplace(ligne,";",TAB)) fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est conforme à ton énoncé
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022
Non c'est pour inserer tous les enregistrement de mon fichier csv et les incorporer dans ma base. Je ne sais trop comment faire Jean Paul
Roumegou Eric a écrit :
Roller0022 a formulé la demande : > Bonjour à tous, > J'ai un projet et je suis bloqué. > J'ai un fichier csv ou chaque ligne représente un enregistrement, > chaque champ est séparé par un ; > Ma table windev à les mêmes champs que mon fichier csv. > J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une > idée ou un exemple. > Je vous remercie d'avance. > Cordialement > Jean Paul > > i est un entier > chn est une chaine > ligne est une chaine > sdonnee est une chaine > > chn est une chaine = fchargetexte(fichiercsv) > pour toute chaine ligne de chn separée par RC > ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34 )) > i=0 > sdonnee=extraitchaine(ligne,rangpremier,";") > tantque sdonnee<>eot > i++ > tableajoute(tableimport) > {"colonne"+i}=sdonnee > .... > sdonnee=extraitchaine(ligne,rangsuivant,";") > > fin > fin
perso je prefere extraire un a un chaque champs et faire un tableajouteligne mais si tu veux faire tout d'un coup... et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC tableajoute(Table1,remplace(ligne,";",TAB)) fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est conforme à ton énoncé
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Non c'est pour inserer tous les enregistrement de mon fichier csv et
les incorporer dans ma base.
Je ne sais trop comment faire
Jean Paul
Roumegou Eric a écrit :
Roller0022 a formulé la demande :
> Bonjour à tous,
> J'ai un projet et je suis bloqué.
> J'ai un fichier csv ou chaque ligne représente un enregistrement,
> chaque champ est séparé par un ;
> Ma table windev à les mêmes champs que mon fichier csv.
> J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une
> idée ou un exemple.
> Je vous remercie d'avance.
> Cordialement
> Jean Paul
>
> i est un entier
> chn est une chaine
> ligne est une chaine
> sdonnee est une chaine
>
> chn est une chaine = fchargetexte(fichiercsv)
> pour toute chaine ligne de chn separée par RC
> ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34 ))
> i=0
> sdonnee=extraitchaine(ligne,rangpremier,";")
> tantque sdonnee<>eot
> i++
> tableajoute(tableimport)
> {"colonne"+i}=sdonnee
> ....
> sdonnee=extraitchaine(ligne,rangsuivant,";")
>
> fin
> fin
perso je prefere extraire un a un chaque champs et faire un
tableajouteligne mais si tu veux faire tout d'un coup...
et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv)
pour toute chaine ligne de chn separée par RC
tableajoute(Table1,remplace(ligne,";",TAB))
fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est
conforme à ton énoncé
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Non c'est pour inserer tous les enregistrement de mon fichier csv et les incorporer dans ma base. Je ne sais trop comment faire Jean Paul
Roumegou Eric a écrit :
Roller0022 a formulé la demande : > Bonjour à tous, > J'ai un projet et je suis bloqué. > J'ai un fichier csv ou chaque ligne représente un enregistrement, > chaque champ est séparé par un ; > Ma table windev à les mêmes champs que mon fichier csv. > J'ai essayer ce bout de code mais je n'y arrive pas, si vous auriez une > idée ou un exemple. > Je vous remercie d'avance. > Cordialement > Jean Paul > > i est un entier > chn est une chaine > ligne est une chaine > sdonnee est une chaine > > chn est une chaine = fchargetexte(fichiercsv) > pour toute chaine ligne de chn separée par RC > ligne=remplace(ligne,remplace(sdonnee,caract(34)+caract(34),caract(34 )) > i=0 > sdonnee=extraitchaine(ligne,rangpremier,";") > tantque sdonnee<>eot > i++ > tableajoute(tableimport) > {"colonne"+i}=sdonnee > .... > sdonnee=extraitchaine(ligne,rangsuivant,";") > > fin > fin
perso je prefere extraire un a un chaque champs et faire un tableajouteligne mais si tu veux faire tout d'un coup... et quand tu parles de table windev, c'est bien une tablememoire ?
chn est une chaine = fchargetexte(fichiercsv) pour toute chaine ligne de chn separée par RC tableajoute(Table1,remplace(ligne,";",TAB)) fin
Mais ça me semble trop simple par rapport à ton ex de code, mais c'est conforme à ton énoncé
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roumegou Eric
Roller0022 avait soumis l'idée :
Merci de m'avoir répondu Eric, J'ai testé ton bout de code et j'ai toujours cette erreur dans LIGNE pour toute chaine ligne de chn separée par RC ---------- J'ai erreur se syntaxe, je ne comprends pas cette erreur. Si tu pouvais me venir en aide merci Jean Paul
autant pour moi, LIGNE est un mot clé réservé. Essaie ceci
wligne,wch sont des chaînes POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC
FIN
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022 avait soumis l'idée :
Merci de m'avoir répondu Eric,
J'ai testé ton bout de code et j'ai toujours cette erreur dans LIGNE
pour toute chaine ligne de chn separée par RC
----------
J'ai erreur se syntaxe, je ne comprends pas cette erreur.
Si tu pouvais me venir en aide merci
Jean Paul
autant pour moi, LIGNE est un mot clé réservé. Essaie ceci
wligne,wch sont des chaînes
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC
FIN
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Merci de m'avoir répondu Eric, J'ai testé ton bout de code et j'ai toujours cette erreur dans LIGNE pour toute chaine ligne de chn separée par RC ---------- J'ai erreur se syntaxe, je ne comprends pas cette erreur. Si tu pouvais me venir en aide merci Jean Paul
autant pour moi, LIGNE est un mot clé réservé. Essaie ceci
wligne,wch sont des chaînes POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC
FIN
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roumegou Eric
Roller0022 a présenté l'énoncé suivant :
Non c'est pour inserer tous les enregistrement de mon fichier csv et les incorporer dans ma base. Je ne sais trop comment faire Jean Paul
Attention aux termes alors.
pour HF on parle de fichiers. Donc tu dois pouvoir utiliser le HimporteTexte, mais le plus simple est de faire comme ceci
NumCol est un entier wligne,wch sont des chaînes
je charge mon fichier ds wch ...
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC NumCol=0 HRAZ(MONFIC) NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE2=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE3=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONEn=extraitchaine(wligne,NumCol, ";") Hajoute(MONFIC) FIN
et pour de très gros imports, si on écrase le fichier le mieux est d'utiliser un Hecrit(MONFIC,nligne) avec nligne que l'on incrémente et en fin de traitement on réindexe avec un Hreindexe(MONFIC).
là selon les cas, on va dix fois plus vite.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022 a présenté l'énoncé suivant :
Non c'est pour inserer tous les enregistrement de mon fichier csv et
les incorporer dans ma base.
Je ne sais trop comment faire
Jean Paul
Attention aux termes alors.
pour HF on parle de fichiers.
Donc tu dois pouvoir utiliser le HimporteTexte, mais le plus simple est
de faire comme ceci
NumCol est un entier
wligne,wch sont des chaînes
je charge mon fichier ds wch ...
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC
NumCol=0
HRAZ(MONFIC)
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONE2=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONE3=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONEn=extraitchaine(wligne,NumCol, ";")
Hajoute(MONFIC)
FIN
et pour de très gros imports, si on écrase le fichier le mieux est
d'utiliser un Hecrit(MONFIC,nligne) avec nligne que l'on incrémente et
en fin de traitement on réindexe avec un Hreindexe(MONFIC).
là selon les cas, on va dix fois plus vite.
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Non c'est pour inserer tous les enregistrement de mon fichier csv et les incorporer dans ma base. Je ne sais trop comment faire Jean Paul
Attention aux termes alors.
pour HF on parle de fichiers. Donc tu dois pouvoir utiliser le HimporteTexte, mais le plus simple est de faire comme ceci
NumCol est un entier wligne,wch sont des chaînes
je charge mon fichier ds wch ...
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC NumCol=0 HRAZ(MONFIC) NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE2=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE3=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONEn=extraitchaine(wligne,NumCol, ";") Hajoute(MONFIC) FIN
et pour de très gros imports, si on écrase le fichier le mieux est d'utiliser un Hecrit(MONFIC,nligne) avec nligne que l'on incrémente et en fin de traitement on réindexe avec un Hreindexe(MONFIC).
là selon les cas, on va dix fois plus vite.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix car j'ai autrement je vais devoir rentrer 200 champs à la main sachant que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par 200
Je cherche un system pour eviter de rentrer le num de colonne avec la zone. Jean Paul
Roumegou Eric a écrit :
Roller0022 a présenté l'énoncé suivant : > Non c'est pour inserer tous les enregistrement de mon fichier csv et > les incorporer dans ma base. > Je ne sais trop comment faire > Jean Paul > Attention aux termes alors.
pour HF on parle de fichiers. Donc tu dois pouvoir utiliser le HimporteTexte, mais le plus simple est de faire comme ceci
NumCol est un entier wligne,wch sont des chaînes
je charge mon fichier ds wch ...
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC NumCol=0 HRAZ(MONFIC) NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE2=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE3=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONEn=extraitchaine(wligne,NumCol, ";") Hajoute(MONFIC) FIN
et pour de très gros imports, si on écrase le fichier le mieux est d'utiliser un Hecrit(MONFIC,nligne) avec nligne que l'on incrémente et en fin de traitement on réindexe avec un Hreindexe(MONFIC).
là selon les cas, on va dix fois plus vite.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix
car j'ai autrement je vais devoir rentrer 200 champs à la main sachant
que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par
200
Je cherche un system pour eviter de rentrer le num de colonne avec la
zone.
Jean Paul
Roumegou Eric a écrit :
Roller0022 a présenté l'énoncé suivant :
> Non c'est pour inserer tous les enregistrement de mon fichier csv et
> les incorporer dans ma base.
> Je ne sais trop comment faire
> Jean Paul
>
Attention aux termes alors.
pour HF on parle de fichiers.
Donc tu dois pouvoir utiliser le HimporteTexte, mais le plus simple est
de faire comme ceci
NumCol est un entier
wligne,wch sont des chaînes
je charge mon fichier ds wch ...
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC
NumCol=0
HRAZ(MONFIC)
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONE2=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONE3=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONEn=extraitchaine(wligne,NumCol, ";")
Hajoute(MONFIC)
FIN
et pour de très gros imports, si on écrase le fichier le mieux est
d'utiliser un Hecrit(MONFIC,nligne) avec nligne que l'on incrémente et
en fin de traitement on réindexe avec un Hreindexe(MONFIC).
là selon les cas, on va dix fois plus vite.
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix car j'ai autrement je vais devoir rentrer 200 champs à la main sachant que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par 200
Je cherche un system pour eviter de rentrer le num de colonne avec la zone. Jean Paul
Roumegou Eric a écrit :
Roller0022 a présenté l'énoncé suivant : > Non c'est pour inserer tous les enregistrement de mon fichier csv et > les incorporer dans ma base. > Je ne sais trop comment faire > Jean Paul > Attention aux termes alors.
pour HF on parle de fichiers. Donc tu dois pouvoir utiliser le HimporteTexte, mais le plus simple est de faire comme ceci
NumCol est un entier wligne,wch sont des chaînes
je charge mon fichier ds wch ...
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC NumCol=0 HRAZ(MONFIC) NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE2=extraitchaine(wligne,NumCol, ";") NumCol++;MONFIC.ZONE3=extraitchaine(wligne,NumCol, ";")
NumCol++;MONFIC.ZONEn=extraitchaine(wligne,NumCol, ";") Hajoute(MONFIC) FIN
et pour de très gros imports, si on écrase le fichier le mieux est d'utiliser un Hecrit(MONFIC,nligne) avec nligne que l'on incrémente et en fin de traitement on réindexe avec un Hreindexe(MONFIC).
là selon les cas, on va dix fois plus vite.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roumegou Eric
Roller0022 avait prétendu :
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix car j'ai autrement je vais devoir rentrer 200 champs à la main sachant que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par 200
Je cherche un system pour eviter de rentrer le num de colonne avec la zone. Jean Paul
alors le himporteTexte ou jouer avec des opérateurs d'indirection {}
Roumegou Eric a écrit :
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roller0022 avait prétendu :
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix
car j'ai autrement je vais devoir rentrer 200 champs à la main sachant
que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par
200
Je cherche un system pour eviter de rentrer le num de colonne avec la
zone.
Jean Paul
alors le himporteTexte
ou jouer avec des opérateurs d'indirection {}
Roumegou Eric a écrit :
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix car j'ai autrement je vais devoir rentrer 200 champs à la main sachant que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par 200
Je cherche un system pour eviter de rentrer le num de colonne avec la zone. Jean Paul
alors le himporteTexte ou jouer avec des opérateurs d'indirection {}
Roumegou Eric a écrit :
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
mat
Roller0022 wrote:
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix car j'ai autrement je vais devoir rentrer 200 champs à la main sachant que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par 200
Je cherche un system pour eviter de rentrer le num de colonne avec la zone.
Bonjour,
on devrait pouvoir faire quelque chose comme le suit (basé sur le code d'Eric):
MaxCol est entier = // nombre de colonnes; il y a des solutions pour ça
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC HRAZ(MONFIC) pour NumCol = 1 à MaxCol {"MONFIC.ZONE"+NumCol,indRubrique} =extraitchaine(wligne,NumCol, ";") fin Hajoute(MONFIC) FIN
Salutations Mat
Roller0022 wrote:
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix
car j'ai autrement je vais devoir rentrer 200 champs à la main sachant
que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par
200
Je cherche un system pour eviter de rentrer le num de colonne avec la
zone.
Bonjour,
on devrait pouvoir faire quelque chose comme le suit (basé sur le code
d'Eric):
MaxCol est entier = // nombre de colonnes; il y a des solutions pour ça
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC
HRAZ(MONFIC)
pour NumCol = 1 à MaxCol
{"MONFIC.ZONE"+NumCol,indRubrique} =extraitchaine(wligne,NumCol,
";")
fin
Hajoute(MONFIC)
FIN
Oui je comprends bien le code mais j'ai voulu l'éviter à tout prix car j'ai autrement je vais devoir rentrer 200 champs à la main sachant que j'ai une vingtaines de bases à traiter.
NumCol++;MONFIC.ZONE1=extraitchaine(wligne,NumCol, ";") multiplié par 200
Je cherche un system pour eviter de rentrer le num de colonne avec la zone.
Bonjour,
on devrait pouvoir faire quelque chose comme le suit (basé sur le code d'Eric):
MaxCol est entier = // nombre de colonnes; il y a des solutions pour ça
POUR TOUTE CHAINE wligne DE wch SEPAREE PAR RC HRAZ(MONFIC) pour NumCol = 1 à MaxCol {"MONFIC.ZONE"+NumCol,indRubrique} =extraitchaine(wligne,NumCol, ";") fin Hajoute(MONFIC) FIN