IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Transfert des données d'un fichier texte vers une base de donnée HyperFile


Sujet :

WinDev

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 96
    Points : 29
    Points
    29
    Par défaut Transfert des données d'un fichier texte vers une base de donnée HyperFile
    Bonjour,
    Je suis entrain de crée une application avec WinDev qui permet d’afficher les lignes d’un fichier texte dans une colonne d’une table appelé « COL_Réferclient_BL » Mais le problème que j’ai c’est que toutes les lignes vont s’afficher dans une seul ligne de la table.
    Par exemple j’ai réalisé j’ai réalisé un fichier « TEST2.txt » qui contient
    1
    2
    3
    Mais dans la table il m’affiche 123 et un caractère à la fin que je n’ai pas met dans une seul ligne de la table. Mais moi je veux l’afficher comme ça chaque caractère par ligne.
    1
    2
    3
    J’ai met ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    // Declare the variables
    FileNameAndPath is string
    FileID is int
    LineRead is string
    ResCloseFile is int
    // Select the name and path of the file
    FileNameAndPath = "C:\om_sage\TEST2.txt"
    // Open the file
    FileID = fOpen(FileNameAndPath)
    // Display an error message if the opening was not performed
    IF FileID = -1 THEN
    	Error(ErrorInfo(errMessage))
    ELSE
    	// Read the first line of the file
    	LineRead = fReadLine(FileID)
    	// Display the first line in the edit control
    	COL_Réferclient_BL = LineRead
    	// More lines to read? Read error?
    	WHILE LineRead <> EOT AND LineRead <> ""
    		// Read the next lines of the file
    		LineRead = fReadLine(FileID)
    		// Display the next lines in the edit control
    		COL_Réferclient_BL = COL_Réferclient_BL + LineRead
    	END
    	// Display an error message if the read operation was not performed
    	IF LineRead = "" THEN Error(ErrorInfo(errMessage))
    	IF LineRead = EOT THEN Info("The end of file has been reached")
    	// Close the file
    	ResCloseFile = fClose(FileID)
    	IF ResCloseFile = -1 THEN
    		// Display an error message if the closing was not performed
    		Error(ErrorInfo(errMessage))
    	END
    END
    Merci pour votre aide.

  2. #2
    Membre chevronné Avatar de EDM-TAHITI
    Homme Profil pro
    Directeur Service informatique et projet développement
    Inscrit en
    Janvier 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Directeur Service informatique et projet développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 994
    Points : 1 998
    Points
    1 998
    Par défaut
    Hello,
    Ou je me trompe ou ton code n'est pas complet... Première remarque, dans ta boucle While/End, tu ne mets pas de freadnext (en anglais de mémoire), deuxième remarque, tu n'indice pas ton champs de table, et donc, il est normal que tu te retrouves avec l'ensemble des données dans le même champs (tu incrementes chaque fois ton champs de table par la lecture avec COL_Réferclient_BL = COL_Réferclient_BL + LineRead). Il vaudrait mieux écrire COL_Réferclient_BL[indicetable] = LineRead.
    Enfin, assures-toi que chaque ligne de ton fichier texte se termine par CR ou LF/CR.
    Voilà ce que je peux dire à la lecture du code.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 280
    Points : 12 971
    Points
    12 971
    Par défaut
    Bonjour,
    C'est normal, ton problème se trouve là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    COL_Réferclient_BL = COL_Réferclient_BL + LineRead
    Tu demandes à Windev d'ajouter à la ligne courante la ligne lue, alors qu'il faut ajouter une ligne.
    Je pourrais te donner la solution, mais je pense que tu devrais surtout reprendre le guide d'auto-formation, parce que visiblement tu n'as pas compris le fonctionnement du champ table.

    Tatayo.

    edit: grand mère, orthographe, toussa...

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 96
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par tatayo Voir le message
    Bonjour,
    C'est normal, te ton problème se trouve là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    COL_Réferclient_BL = COL_Réferclient_BL + LineRead
    Tu demandes à Windev d'ajouter à la ligne courante la ligne lue, alors qu'il faut ajouter une ligne.
    Je pourrais te donner la solution, mais je pense que tu devrais surtout reprendre le guide d'auto-formation, parce que visiblement tu n'as pas compris le fonctionnement du champ table.

    Tatayo.
    Je sais que le probleme se trouve la-bas mais le probléme c'est que je ne sais pas comment passer d'une ligne à l'autre.
    J'ai lit l'auto-formation mais je n'ai pas trouvé de solution pour ca j'ai venez ici pour demander l'aide aux expert

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 947
    Points : 1 563
    Points
    1 563
    Par défaut
    Bonjour,
    Peut-être dans l'aide:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Pages associées au mot-clé d'index 'Table'  
     
     Le mot-clé 'Table' est associé à plusieurs pages d'aide. Vous trouverez ci-dessous la liste des pages associées.
    Cliquez sur un lien pour afficher la page d'aide correspondante.
           FAA : Filtre automatique sur les colonnes de table 
           Fonctions de gestion des tables 
           Les différents types de tables : mémoire, fichier avec ou sans accès direct 
           Les tables fichier 
           Les tables sur source 
           Utilisation d'une requête paramétrée

  6. #6
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 045
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 045
    Points : 2 502
    Points
    2 502
    Par défaut allons...
    Depuis le temps que tu poses des questions basiques de chez basique
    sur tous les forums (aujourd'hui la même question chez PcSoft, ici et sur Tunidev), tu ne crois pas qu'il serait temps de faire le cours d'autoformation ?
    Tu ne te rends pas service en attendant qu'on te ponde du code.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 96
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par serendib Voir le message
    Depuis le temps que tu poses des questions basiques de chez basique
    sur tous les forums (aujourd'hui la même question chez PcSoft, ici et sur Tunidev), tu ne crois pas qu'il serait temps de faire le cours d'autoformation ?
    Tu ne te rends pas service en attendant qu'on te ponde du code.

    Quand au "c'est trés urgent", quand on est dans ton cas l'urgence n'es pas de mise.

    Maintenant, sur Tunidev il y a un suisse à la retraite qui passe ses jours et ses nuits à pondre du code pour les gens comme toi.
    Premièrement, j'ai bien lu le guide d'auto-formation et j'ai résolu les autres problèmes de mon logiciel, je demande de l'aide maintenant pour cette partie que je n'arrive pas à résoudre.
    Deuxièmement, je pense que ce forum est là pour aider les debutant non ?

  8. #8
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 280
    Points : 12 971
    Points
    12 971
    Par défaut
    Et pourtant en cherchant 20 secondes dans l'aide en ligne, tu devrais trouver tout seul la solution.
    Dans la boucle il faut ajouter des lignes dans une table.
    J'avoue ne pas connaitre la version anglaise de cette fonction, mais en cherchant avec ces termes dans l'aide en ligne tu trouveras rapidement. D'ailleurs en lisant l'aide en ligne du champ table, et les fonctions associées, tu aurais trouvé tout seul.

    Quoi qu'il en soit, je pense également que tu devrais refaire (et non relire) les exercices du guide d'auto-formation, puis regarder dans les exemples unitaires et/ou didactiques fournis avec Windev.

    Je suis d'accord avec toi, l'un des buts d'un forum est d'aider les débutants, mais fournir un code tout fait n'est pas toujours la meilleure aide à apporter.

    Tatayo.

Discussions similaires

  1. [JDOM] Exporter les données d'un fichier XML vers une base de données MySQL en utilisant API JDOM
    Par fruwen7 dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 23/05/2012, 15h56
  2. Réponses: 5
    Dernier message: 09/09/2011, 23h07
  3. extraire les données d'un fichier text vers une table access
    Par djatto dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 17/09/2008, 17h51
  4. [MySQL] Problème pour insérer les données d'un fichier texte vers une table Mysql !
    Par BARRIAU76 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/01/2008, 23h24
  5. Réponses: 3
    Dernier message: 21/06/2007, 01h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo