sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009
-
27 nov. 2008 à 18:33
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 2013
-
5 déc. 2008 à 11:23
bonjour tout le monde
je voudrais savoir comment pourrais je copier le contenu d'un fichier .dbf dans un fichier text avec un séparateur ";"
merci d'avance
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 20131 28 nov. 2008 à 11:05
Quelle version de FoxPro utilises-tu?
Je ne comprends pas ce que tu veux faire, quand tu parles de batch ; COPY TO ... est une commande fox, et le concept de batch en fox ne concerne que le traitement de données non natives.
Tu peux préciser?
sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009 28 nov. 2008 à 12:01
j'utilise vfp6 :
j'ai les table avec une extension dbf et vu que l'opération de copiage des donnée de ma table .dbf vers un document txt ou csv avec un séparateur ";" et une opération journalière alors est il possible de créer un fichier de commande(batch) dont le quel j'ordonne le copiagedes données de dbf vers txt ou csv avec un séparateur ";"
Vous n’avez pas trouvé la réponse que vous recherchez ?
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 20131 28 nov. 2008 à 15:05
Tu voulais donc parler d'un batch au sens de tâche à effectuer...
je pense que le plus simple est de créer un exécutable (donc un projet en VFP compilé en exe) qui effectue les copies que tu souhaites, et tu mets cet exe dans les tâches programmées de Windows.
sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009 28 nov. 2008 à 17:02
merci pour ces info MICHEL STP vu que je suis débutant en vp connais tu un tutorial qui me me montre comment effectuer un projet executable vfp avec le quel je peux effectuer les copies que je shouaites faire et moi je chérché de ma part
merci d'avance
sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009 28 nov. 2008 à 18:17
ok merci [../auteur/MICHELATOUTFOX/353689.aspx MichelAtoutFox]pour tout le temps que tu m'as accordée je dois maintenant installer l'aide de vfp sur ma machine car la version que je possède et sans aide a+
sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009 29 nov. 2008 à 16:58
si bon j'ai réussi à réaliser sous fox pro6 une commande qui recopier d'un dbf vers csv ou txt avec separateur ";"
ma question maintenant est: comment puis je lancer la commande qui copie en cascade le premier fichier dbf puis le deuxième puis le troisième et ainsi de suite
if(matable="table1.dbf")
{
COPY TO "emplacement du fichier .csv corréspondant a table1.dbf " DELIMITED WITH CHARACTER ';'
}
if(matable="table2.dbf")
{
COPY TO "emplacement du fichier .csv corréspondant a table2.dbf " DELIMITED WITH CHARACTER ';'
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 20131 29 nov. 2008 à 18:58
Tu peux nous dire dans quel langage de développement tu travailles? parceque ça, ça n'est pas du Fox...
Qu'est-ce que tu veux tester, dans ces lignes-là? je te rappelle que la commande COPY TO s'exécute sur l'alias courant, et que c'est différent du nom de la table. Si tu veux vérifier que tu pointes bien sur la bonne table, alors il faut tester DBF( ALIAS( ) )
Tu ne vas pas utiliser 1 commande, mais une suite d'instructions dans un programme. Et le contenu de ce programme dépend de ce que tu veux faire (traitement visuel ou non visuel, choix des fichiers par l'opérateur ou bien en fonction de critères préexistants, etc...)
sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009 1 déc. 2008 à 17:07
bonjour j'utilise microsoft visual foxppro6 je veux :
-copier le contenu de 4 table .dbf dans 4 fichier .csv
-traitement non visuel
-choix des fichiers en fonction de critères pré-existants
-enfin générer un exe de cette petite application
mais j'ai trouver aucune documentation pour apprendre a programmer avec vfp6 et j'ai seulemnt le logiciel vfp6 installé sur ma machine(c'est la première fois que j'utilise vfp alors j'ai aucune notion)
et je te remercie encore pour votre aide Michelatoutfox
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 20131 3 déc. 2008 à 14:25
Si tu as VFP6 installé, tu devrais avoir l'aide également (il me semble qu'elle était sur un 2ème CD, mais je ne suis pas certain).
Est-ce que tu as cette aide? quand tu es dans VFP, que donne la touche F1?
sws2007
Messages postés79Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention19 janvier 2009 5 déc. 2008 à 10:33
re-bonjour
comment je pourrais lancer la ommande copy to "emlacement du fichier" delimited with character ";" en indiquant l'ellimination du caractere " " car quelques enregistrement seront entouré par des " " après le copiage des données
voici un extrait de mon fichier:
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 20131 5 déc. 2008 à 11:23
Impossible à faire dans la commande COPY TO. Il te faut passer par des étapes intermédiaires avant le copy to, ou après le copy to.
En VFP6, les champs ont une longueur fixe (les Varchar ont été introduits plus tard) et je pense donc que le champ qui contient ces données est de type Caractère de longueur 8.
soit tu copies tes données dans un curseur dont les champs sont dimensionnés à tes souhaits, puis tu fait ensuite ton copy to, soit tu fais ton copy to, puis tu traites ensuite ce fichier texte pour éliminer les espaces.
mais celà dit, je ne vois absolument pas en quoi ces espaces sont génants, c'est strictement la norme des fichiers csv et txt...