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 :

Affichage des lignes de table vers un document sage [WD15]


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 Affichage des lignes de table vers un document sage
    Bonjour à tous,

    Je viens de terminer la création un document sous SAGE avec les objets métier, j’ai connecté la base , je rempli la table de mon logiciel par un importation du document EXCEL et maintenant je suis entrain d'ajouter ces données à un document SAGE ,j’ai réussi l’ajout d’une seule ligne mais les autres lignes je n'est pas réussi l'ajout.

    Voici le code de cette création :

    *Code d'initialisation du projet


    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
    Sablier(Vrai)
    // initialisation
    autGC est un OLE "Objets100.Cial.Stream.3" // OM V3
    autCpta est un OLE "Objets100.Cpta.Stream.3" // OM V3
    // Initialisation des bases
    autGC>>name = "C:\OM_SAGE\Exemple 2.gcm"// Adresse de la base GC
    // Initialisation des infos de connexion CPTA
    autCpta>>name = "C:\OM_SAGE\Exemple.mae"// Adresse de la base GC
    autCpta>>loggable>>username = "" // Utilisateur de connexion
    autCpta>>loggable>>userpwd = "" // Mot de passe de la connexion
    // Association de la base GC et CPTA
    autGC>>CptaApplication = autCpta
    // Initialisation des infos de connexion GC
    autGC>>loggable>>username = "" // Utilisateur de connexion
    autGC>>loggable>>userpwd = "" // Mot de passe de la connexion
    // Ouverture de la base GC (la compta est aussi ouverte)
    autGC>>open() // Ouverture de la base
     
    // Variables
    PautListeClients, Client est un objet Automation dynamique
    PautCreateDocument, Document sont des objets Automation dynamique
    PautListeArticle, Article sont des objets Automation dynamique
    PautFicheClients, FClient est un objet Automation dynamique
    PautNVDocDevis est un objet Automation dynamique
    PautLigneCDEArticle est un objet Automation dynamique
    Sablier(Faux)
    *Code d'initialisation de la fenêtre de saisie (avec un combo clients)

    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
    Sablier(Vrai)
    PautListeClients = autCpta>>factoryClient>>list()
    Ind est entier = 0
    Maxi est un entier = PautListeClients>>count()
    Jauge(Ind,Maxi)
    TableSupprimeTout(COMBO_BL)
    POUR Ind = 1 A Maxi
       Client = PautListeClients>>item(Ind)
       ListeAjoute(COMBO_BL,Client>>CT_Num+TAB+Client>>ct_intitule+TAB+Client>>CompteGPrinc>>CG_intitule)   
       Jauge(Ind,Maxi)
    FIN
    Jauge()
     
    Sablier(Faux)
    *Code d'initialisation de la fenêtre de saisie (avec un combo clients)
    Sablier(Vrai)
    PautListeClients = autCpta>>factoryClient>>list()
    Ind est entier = 0
    Maxi est un entier = PautListeClients>>count()
    Jauge(Ind,Maxi)
    TableSupprimeTout(COMBO_BL)
    POUR Ind = 1 A Maxi
       Client = PautListeClients>>item(Ind)
       ListeAjoute(COMBO_BL,Client>>CT_Num+TAB+Client>>ct_intitule+TAB+Client>>CompteGPrinc>>CG_intitule)   
       Jauge(Ind,Maxi)
    FIN
    Jauge()
     
    Sablier(Faux)
    *Code du bouton de création d'un devis de même fenêtre

    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
    Sablier(Vrai)
    // Affectation client
    NumTiers est une chaîne = ExtraitChaîne(COMBO_BL[COMBO_BL],1)
    // Affectation article
    NumArticle est une chaîne = ExtraitChaîne(TABLE_BL.Col_Column1[TABLE_BL],1)
    // Création de l'objet métier devis
    PautNVDocDevis = autGC>>FactoryDocumentVente>>CreateType(0)
    // Affectation du client au devis
    PautNVDocDevis>>SetDefaultClient(autCpta>>FactoryTiers>>ReadNumero(NumTiers))
    // Affectation n° piece
    PautNVDocDevis>>SetDefaultDO_Piece()
    // Création de l'entete du devis
    PautNVDocDevis>>WriteDefault
    // Création de l'OM ligne de document
    PautLigneCDEArticle = PautNVDocDevis>>FactoryDocumentLigne>>Create
    // Affectation de l'article, le deuxieme parametre est la quantité
    PautLigneCDEArticle>>SetDefaultArticle(autGC>>FactoryArticle>>ReadReference(NumArticle),Col_Column3)
    // Ecriture de la ligne
    PautLigneCDEArticle>>WriteDefault
    Sablier(Faux)
    Info("L'enregistrement est bien passé")
    Je ne sais où est mon probléme?

    Merci Pour votre coopération.
      0  0

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    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 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Je dirai qu'il manque une boucle dans la création des lignes du devis.

    Tatayo.
      1  0

  3. #3
    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
    Salut,
    Merci pour votre idée mais j'ai déjà essayé mais sans reussite, je ne sais pas si le probleme est dans mon code ou bien autre chose ??
      0  1

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    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 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Difficile de répondre, sans voir le code avec la boucle.
    Il faut peut-être aussi vérifier les retour des fonctions SAGE, si c'est possible.

    Mais quoi qu'il en soit, sans boucle tu ne peux avoir au mieux qu'une seule ligne, vu que tu n'en envoie à SAGE qu'une seule.

    Tatayo.
      1  0

  5. #5
    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
    Salut,
    J'ai créé une boucle pour lire les lignes mais ça ne lit que la dernière ligne.

    Voici la boucle:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    NumArticle est une chaîne
    POUR CHAQUE LIGNE DE TABLE_BL
    NumArticle=TABLE_BL.Col_Column1
    FIN
      0  2

  6. #6
    Membre éprouvé Avatar de wimbish
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 416
    Points : 1 073
    Points
    1 073
    Par défaut
    Bonjour,

    C'est normal !!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    NumArticle est une chaîne
    POUR CHAQUE LIGNE DE TABLE_BL
    NumArticle=TABLE_BL.Col_Column1
    FIN
    Tu affecte NumArticle dans ta boucle mais tu n'en fais rien, à la sortie de la boucle NumArticle a pris la dernière valeur lue.
    Christophe.

    Tous les chemins mènent à Rome http://doc.pcsoft.fr/fr-FR/
      3  0

  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
    Salut,
    J'ai fait un autre boucle, mais sans aucun résultat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    i est un entier
    nbrligne est un entier= TABLE_BL..Occurrence
    NumArticle est une chaîne
    POUR i=1 A nbrligne
    	NumArticle=TABLE_BL.Col_Column1
    FIN
      0  2

  8. #8
    Membre émérite
    Avatar de L.nico
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 143
    Points : 2 679
    Points
    2 679
    Par défaut
    Bestmoroco,

    je ne vais pas être méchant :

    Est-ce que vous comprenez ce que vous écrivez (Je parle du Code bien sûr) ?
    Est-ce que vous comprenez les explications qu'on vous donne ?

    Parce que là c'est le pompon !

    On ne va pas écrire le code à votre place, la solution vous a été donnée ... Relisez et prenez le temps de comprendre !
    A lire avant de poster
    Si vous avez obtenu la réponse à votre question alors cliquez sur le bouton
      2  0

  9. #9
    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
    Je ne sais pas, je me sens frustrant J'ai essayé de crée boucle pour lire les lignes mais ça ne lit que la dernière ligne.

    Voici une autre boucle:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    i est un entier
    NumArticle est une chaîne
    POUR i=1 A TableOccurrence(TABLE_BL)
    	TableSelectPlus(TABLE_BL,i)
    	NumArticle=TABLE_BL.Col_Column1[i]
    FIN
    s'il vous plaît aidez-moi où est le problème dans ce boucle?
    et merci
      0  2

  10. #10
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    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 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Pour faire simple:
    1. Met un point d'arrêt sur la première ligne
    2. Lance le test du code
    3. Au point d'arrêt, avance ligne par ligne (avec la touche F7)

    Là tu vas t'apercevoir que la boucle parcours bien toutes les lignes de la table, et tu verras aussi que NumArticle prends successivement toutes les valeurs de Column1.

    Ensuite continue le mode pas à pas, et regarde bien ce qu'il se passe.

    Enfin demande toi ceci:
    Comment une instruction EN DEHORS d'une boucle peut traiter ce qui se passe DANS la boucle ?

    Tatayo.
      2  0

  11. #11
    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
    Merci, pour toute votre remarque je pourrais peut-etre les prendre comme conseil.
      0  1

  12. #12
    Membre confirmé Avatar de Nhaps
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2011
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2011
    Messages : 350
    Points : 603
    Points
    603
    Par défaut
    Bonjour,

    On a la chance d'avoir un guide d'autoformation qui est très bien fait.

    Franchement quand j'ai commencé Windev, j'ai prit ma semaine à manger ce guide, ça évite de perdre du temps sur des questions comme les tiennes qui sont simples, et trouvent leur réponses dans ce guide.

    De plus, si ta question est un peu plus compliquée, il y a la doc de pcsoft qui, elle aussi, est très bien faite.

    Et après il y a les 'bug' de windev et là...
    Windev 23 - SQL SERVER - PHP
    Play : TFT - Jeux indé
      2  0

Discussion fermée
Cette discussion est résolue.

Discussions similaires

  1. Ordre d'affichage des lignes d'une table
    Par laurentSc dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 21/09/2011, 23h05
  2. Affichage des lignes d'une table si AU MOINS Champ est NON VIDE
    Par Dr_No dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 09/07/2009, 17h47
  3. [Reports 6] Ordre d'affichage des lignes d'un état
    Par duboisfa dans le forum Reports
    Réponses: 2
    Dernier message: 17/02/2006, 16h21
  4. [Eclipse 3.0.1] Affichage des lignes
    Par OverCat dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 10/03/2005, 07h32
  5. [C#] Affichage des lignes dans un tableau.
    Par maldufleur dans le forum ASP.NET
    Réponses: 4
    Dernier message: 21/04/2004, 11h28

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