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 :

message d'info qui n'apparait pas


Sujet :

WinDev

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    420
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 420
    Points : 116
    Points
    116
    Par défaut message d'info qui n'apparait pas
    salut,

    dans un projet j'ai 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
    j est un réel
    j=(B_prix*40)/100
    B_remb=j
    SI Combo_Nom="" ALORS
    	Info("Renseigner le NOM du bénéfiaire !")
    SINON 
     
    	SELON Dialogue("Voulez-vous enregistrer les modifications ?")
    		// Enregistrer
    		CAS 1
    			EcranVersFichier(Billeterie)
    			HModifie(Prestation)
    			SI B_cumul>=30 ALORS
    				Info("Montant Total annuel atteint"+RC+"Le remboursement ne peut être effectuer")
    			SINON
    				B_cumul+=B_remb
    			FIN
     
    		// Ne pas enregistrer
    		CAS 2
    		B_remb=""
    		B_prix=""	
    	FIN
    FIN
    hors quand B_cumul devient superieur a 30 pour la premiere fois le message d'info n'apparait pas meme si le resultat de B_cumul est egal à 40
    Par contre le message d'info apparait lorsque je veux rajouter un valeur supplementaire a B_cumul

    exemple
    B_cumul = 40 pas de message
    B_cumul = 40 + 1 soit 41 le message apparait

    où est le probleme dans le code s'il vous plait

    merci par avance

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    B_Cumul n'a pas de valeur de départ et tu testes la valeur de B_Cumul avant d'ajouter la valeur B_Remb

    Donc au premier passage, même si la valeur de B_Remb est suppérieure à la valeur admissible de B_Cumul, B_Cumul est quand même à zéro.
    Idem si la valeur B_Cumul devient suppérieure à 30 après l'ajout de B_Remb, ce ne sera testé que la fois suivante.

  3. #3
    Membre averti Avatar de JPDMJC
    Profil pro
    Inscrit en
    Février 2005
    Messages
    337
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 337
    Points : 394
    Points
    394
    Par défaut
    Tu peux lancer le débugger histoire de voir vraiment ce qui se passe : les valeurs des variables (dont ton B_cumul) et quelles instructions sont évaluées. Tu auras ta réponse

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    420
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 420
    Points : 116
    Points
    116
    Par défaut
    Citation Envoyé par Guardian Voir le message
    B_Cumul n'a pas de valeur de départ et tu testes la valeur de B_Cumul avant d'ajouter la valeur B_Remb

    Donc au premier passage, même si la valeur de B_Remb est suppérieure à la valeur admissible de B_Cumul, B_Cumul est quand même à zéro.
    Idem si la valeur B_Cumul devient suppérieure à 30 après l'ajout de B_Remb, ce ne sera testé que la fois suivante.
    donc d'apres ce que je comprends, il faudrais que j'initialise B_cumul par B_cumul =0 c'est ça ?

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Non, ça ne servira à rien.
    B_Cumul est déjà à zéro avant le premier test et le "problème", si c'en est un, se produira toujours.

    Le tout est de savoir ce que tu veux faire exactement.

    Actuellement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    tu calcules B_Rem depuis un B_Prix
    tu encodes un nom s'il n'y en a pas déjà un encodé
    si tu dois enregistrer --> 
         tu enregistres
         tu testes si B_Cumul est suppérieur à une limite
         si c'est suppérieur -->
              tu affiches un avertissement
              sinon 
              tu ajoutes B_Remb à B_Cumul
    Cela ne semble pas très logique, mais il n'y a que toi qui peut le savoir

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    420
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 420
    Points : 116
    Points
    116
    Par défaut
    C'est bon, j'ai trouver la solution


    merci a tous les 2 de vous etre penchés sur mon probleme
    Je mets mon code en ligne si ça peut aider d'autre personne

    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
    j est un réel
    j=(B_prix*40)/100
    B_remb=j
     
    SI Combo_Nom="" ALORS
    	Info("Renseigner le NOM du bénéfiaire !")
    SINON 
     
     
    	SELON Dialogue("Voulez-vous enregistrer les informations saisies")
    		// Enregistrer
    		CAS 1
    				B_cumul+=B_remb
    			SI B_cumul>=30 ALORS
    				Info("Montant Total annuel atteint"+RC+"Le remboursement ne peut être effectuer")
    			B_cumul=30
    				EcranVersFichier(Billeterie)
    				HModifie(Prestation)
    				B_remb=""
    				B_prix=""
    			SINON
    				EcranVersFichier(Billeterie)
    			HModifie(Prestation)
    				B_remb=""
    				B_prix=""
    			FIN
     
    		// Ne pas enregistrer
    		CAS 2
    		B_remb=""
    		B_prix=""	
    	FIN
    FIN

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VS.NET]MenuStrip qui n'apparait pas
    Par LordBob dans le forum Visual Studio
    Réponses: 2
    Dernier message: 29/11/2006, 18h08
  2. Réponses: 2
    Dernier message: 29/05/2006, 12h43
  3. Réponses: 8
    Dernier message: 25/11/2005, 18h38
  4. Réponses: 5
    Dernier message: 12/11/2005, 09h45
  5. Problem fond qui n'apparait pas sous FF.
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 26/09/2005, 22h05

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