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 :

PROBLÈME AJOUT LIGNE COMMANDE


Sujet :

WinDev

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut PROBLÈME AJOUT LIGNE COMMANDE
    bonjour forum :
    j'ai un tableau qui se rempli avec AjouteLigneCommande sur un bouton et une procédure nommé AjouteLigneCommande
    quand je clique sur le bouton la ligne sur le tableau se rempli normale pour la ligne de tableau
    mais le problème que quand je clic pour la 2eme foi le tableau se rempli normal mais sur WDMap la premier ligne prend la liaison mais la 2eme non

    Pièce jointe 307992

    LE CODE POUR LE BOUTON AJOUT

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    // Ajoute une ligne de commande
    AjouteLigneCommande()
     
    // Remet la quantité d'ajout à 0
    SAI_Dessignation = 0
    SAI_Capacite = 0
    SAI_NBRE = 0
    SAI_P_U = 0
     
    // Recalcule des totaux
    CalculeTotaux()
    // Reprend la saisie à la Dessignation (pour effectuer plusieurs saisies à la suite)
    RepriseSaisie(SAI_Dessignation)
    LE CODE POUR LA PRECEDUR AjouteLigneCommande

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    PROCEDURE AjouteLigneCommande()
     
    sRefProduit est une chaîne
    sIndiceProduit est une chaîne
    rSousTotal est un réel
     
     
    // Mémorise la référence produit
    sRefProduit = SAI_Dessignation
     
    // Cette référence est-elle déjà présente dans la table ?
    sIndiceProduit = TableCherche(TABLE_LigneCde.COL_Des_of, sRefProduit)
    // Le produit n'est pas dans la table
    SI sIndiceProduit = -1 ALORS
     
    	// Calcule le sous-total
    	rSousTotal = (SAI_NBRE*SAI_P_U)
    	// Ajoute une ligne pour ce produit
    	TableAjouteLigne(TABLE_LigneCde, ligneCde.IDligneCde, ORDREDEFACTURATION.IDOF, SAI_Dessignation, SAI_Capacite, SAI_NBRE, SAI_P_U, rSousTotal, TABLE_LigneCde..Occurrence+1)
    	TableEnregistre(TABLE_LigneCde)
    SINON // Le produit existe déjà dans la table
    	//1 : Ajouter
    	//2 : Modifier
    	//3 : Annuler
    	//1 : &modifier
    	//2 : &Ne pas modifier
    	//3 : anuller
    	SELON Dialogue("La référence du produit indiquée est déjà présente dans la commande.")
    		// Ajouter
    		CAS 1
    			// Modifie la quantité
    			TABLE_LigneCde.COL_Des_of[sIndiceProduit] += SAI_Dessignation
    			TABLE_LigneCde.COL_Capa_of[sIndiceProduit]+= SAI_Capacite
    			TABLE_LigneCde.COL_Nbr_of[sIndiceProduit] += SAI_NBRE
    			TABLE_LigneCde.COL_Prix_of[sIndiceProduit]+= SAI_P_U
    			TABLE_LigneCde.COL_Montant[sIndiceProduit]= CalculeLigneCommande(sIndiceProduit)
     
    		// Modifier
    		CAS 2
     
    			// Modifie la quantité
    			TABLE_LigneCde.COL_Des_of[sIndiceProduit] = SAI_Dessignation
    			TABLE_LigneCde.COL_Capa_of[sIndiceProduit] = SAI_Capacite
    			TABLE_LigneCde.COL_Nbr_of[sIndiceProduit] = SAI_NBRE
    			TABLE_LigneCde.COL_Prix_of[sIndiceProduit] = SAI_P_U
    			TABLE_LigneCde.COL_Montant[sIndiceProduit] = CalculeLigneCommande(sIndiceProduit)
     
    		// Annuler
    		CAS 3
    			// Ne rien faire
    	FIN
     
     
    FIN
    LE RESULTAT
    Pièce jointe 307999


    Pièce jointe 308004

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    L'informatique nécessite de la riqueur.
    Et une bonne discipline pour cela, c'est la rigueur dans l'orthographe, et dans l'explication du besoin. Ici, tu manques trop de rigueur, je suis incapable de comprendre ce que tu expliques.

    Ceci dit, le bug est peut-être ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    TABLE_LigneCde.COL_Des_of[sIndiceProduit] += SAI_Dessignation
    			TABLE_LigneCde.COL_Capa_of[sIndiceProduit]+= SAI_Capacite
    			TABLE_LigneCde.COL_Nbr_of[sIndiceProduit] += SAI_NBRE
    			TABLE_LigneCde.COL_Prix_of[sIndiceProduit]+= SAI_P_U
    Tu as mis += sur chaque ligne. Pourquoi utiliser += et pas utiliser simplement =

    Ici, = ou += donneront la même chose. tu pensais que += allait additionner la ligne courante avec la précédente ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je ne l'ai pas assez dit dans cette section mais il est important de le redire, quand on programme, il faut avant tout pondre un algorithme, et donc tout écrire sur papier, quand l'algorithme est validé, on traduit le tout en wlangage cible.

    Une fois cela fait, on pourra vous aider, n'essayer pas de court-circuiter les étapes, on a tous été amené à faire cela, et même aujourd'hui, ça m'arrive de faire des algorithmes.

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/11/2006, 15h28
  2. Réponses: 15
    Dernier message: 09/06/2006, 12h13
  3. [C#] Datagrid, ajouter ligne vide
    Par forst dans le forum ASP.NET
    Réponses: 7
    Dernier message: 06/04/2006, 16h39
  4. Ajouter une commande dans le menu contextuel
    Par Tenguryu dans le forum C++Builder
    Réponses: 2
    Dernier message: 02/04/2006, 12h43
  5. [jre java]remplacer le jre par défaut ligne commande
    Par snoop dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 10/03/2006, 19h04

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