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 :

HAJOUTE dans le code


Sujet :

WinDev

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 41
    Points : 21
    Points
    21
    Par défaut HAJOUTE dans le code
    Bonjour,

    je cherche une solution pour ajouter dans une rubrique "Mail_Envoyer" un "1" dans le code suivant afin d’éviter l'envoie de mail plusieurs fois.

    Je pense a la commande HAJOUTE mais je ne vois pas comment le faire.

    Merci pour votre aide

    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
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    POUR TOUTE LIGNE DE TABLE_REQ_ETAT_DATE
    	EmailJauge(JAUGE_Mail)
    	SI COL_Probleme="Quota" ALORS
     
    		// Ouverture d'une session SMTP
    		MaSession est un EmailSessionSMTP
    		MaSession..AdresseServeur = "mail.xxxxxxxxxxx"
    		MaSession..Port="25"
    		MaSession..Nom = "xxx@xxxxxxx"
    		MaSession..MotDePasse = "xxxxxxxx"
     
    		//10 secondes pour le time out
    		EmailChangeTimeOut(5)
     
    		//Init des paramètres de l`email
    		SI EmailOuvreSession(MaSession) = Faux ALORS
    			Erreur("Impossible d'ouvrir la session SMTP.", ErreurInfo(), ...
    			"En cas de Time Out, assurez-vous des paramètres du ""Pare-Feu"" sur le port utilisé ("+...
    			MaSession..Port+")")
    		FIN
     
    		Email.Expéditeur=" xxx@xxxxxxx "
    		Email.NbDestinataire = 3
    		Email.NbCc = 1
    		Email.Destinataire[1] = COL_Mail_client
    		Email.Destinataire[2] = COL_Mail_Client2
    		Email.Destinataire[3] = COL_Mail_Client3
    		Email.Cc[1] = COL_Mail_srmi
    		Email.NbAttache=0
    		Email.Priorité=emailPrioritéHaute
    		Email.Sujet=("Etat de votre sauvegarde " + COL_Client + COL_Jeux)
    		Email.Message=("Madame,Monsieur, " + RC +  RC +"Votre quota de sauvegarde a été atteint, par conséquent votre sauvegarde en date du " + DateVersChaîne(COL_Date) + ...
    		" n'a pas été réalisée." + RC +  RC +"Votre responsable de compte "+(COL_RESP)) + " prendra contact avec vous dans les plus brefs délais." + RC+...
    		"Vous en souhaitant bonne réception" + RC + RC + ...
    		"XXXX service support"
    		EmailJauge("")
     
    				SI EmailEnvoieMessage(MaSession) = Faux ALORS
    			Erreur("L'envoi du message à échoué !'" + ErreurInfo(errMessage) + "'")
    		FIN
     
    	SINON
    		SI COL_Probleme<>"Quota" ET COL_Probleme<>"0" ALORS
     
    			// Ouverture d'une session SMTP
    			MaSession2 est un EmailSessionSMTP
    			MaSession2..AdresseServeur = "mail.xxxxxxx"
    			MaSession2..Port="25"
    			MaSession2..Nom = " xxx@xxxxxxx "
    			MaSession2..MotDePasse = "xxxxxxx"
     
    			//10 secondes pour le time out
    			EmailChangeTimeOut(5)
     
    			//Init des paramètres de l`email
    			SI EmailOuvreSession(MaSession2) = Faux ALORS
    				Erreur("Impossible d'ouvrir la session SMTP.", ErreurInfo(), ...
    				"En cas de Time Out, assurez-vous des paramètres du ""Pare-Feu"" sur le port utilisé ("+...
    				MaSession2..Port+")")
    			FIN
    			Email.Attache=0
    			Email.Expéditeur=" xxx@xxxxxxx "
    			Email.NbDestinataire =3
    			Email.NbCc =1
    			Email.Destinataire[1] = COL_Mail_client
    			Email.Destinataire[2] = COL_Mail_Client2
    			Email.Destinataire[3] = COL_Mail_Client3
    			Email.Cc[1]=" xxx@xxxxxxx "
    			Email.NbAttache=0
    			Email.Sujet=("Etat de votre sauvegarde " + COL_Client + COL_Jeux)
    			Email.Priorité=emailPrioritéHaute
    			Email.Message=("Madame,Monsieur, " + RC +  RC +"Votre sauvegarde a rencontré une erreur, par conséquent votre sauvegarde en date du " + DateVersChaîne(COL_Date) + ...
    			" n'a pas été réalisée." + RC +  RC +"Le support xxxx prendra contact avec vous dans les plus brefs délais." + RC+...
    			"Vous en souhaitant bonne réception" + RC + RC + ...
    			"xxxx service support")
    			EmailJauge(JAUGE_Mail)
    			SI EmailEnvoieMessage(MaSession2) = Faux ALORS
    				Erreur("L'envoi du message à échoué !'" + ErreurInfo(errMessage) + "'")	
    			FIN
     
    		FIN
    	FIN
    FIN

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    dans ton code, on voit que tu envoies des messages et que tu affiches des messages en cas d'erreur. Tu parcours une table, est-ce que c'est dans cette table que tu veux mettre un marqueur d'envoi ? Si oui, lorsque tu as un envoi, fais le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SI EmailEnvoieMessage(MaSession) = Faux ALORS
         Erreur("L'envoi du message à échoué !'" + ErreurInfo(errMessage) + "'")
    SINON
         COL_Mail_Envoyer=1
    FIN
    Idem pour MaSession2.

    Cependant, cela reste limité car si tu fermes et réouvres la fenêtre les marqueurs auront disparus. Donc si cela doit rester permanent à l'enregistrement, il faut le faire dans la table et la base de données également.

    à bientôt,

    Nicolas

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 41
    Points : 21
    Points
    21
    Par défaut
    Bonjour et merci pour votre réponse,

    Nous avons déjà le champ "Mail_Envoyer" dans la description de la table.
    L’affichage de la table est alimenter par une requête.

    Merci pour votre aide.



    Citation Envoyé par Nicolas_Jeanneau Voir le message
    Bonjour,

    dans ton code, on voit que tu envoies des messages et que tu affiches des messages en cas d'erreur. Tu parcours une table, est-ce que c'est dans cette table que tu veux mettre un marqueur d'envoi ? Si oui, lorsque tu as un envoi, fais le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SI EmailEnvoieMessage(MaSession) = Faux ALORS
         Erreur("L'envoi du message à échoué !'" + ErreurInfo(errMessage) + "'")
    SINON
         COL_Mail_Envoyer=1
    FIN
    Idem pour MaSession2.

    Cependant, cela reste limité car si tu fermes et réouvres la fenêtre les marqueurs auront disparus. Donc si cela doit rester permanent à l'enregistrement, il faut le faire dans la table et la base de données également.

    à bientôt,

    Nicolas

  4. #4
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Salut, je ne sais pas si votre problème est déjà résolu! Si ce n'est pas le cas alors je vous propose de faire une modification (HModifie) et non un ajout (hAjoute).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Si EmailEnvoieMessage.............. =faux alors
            Erreur....................................
     
    sinon
           Fichier.Mail_Envoyer=1
           Hmodifie(Fichier)
    fin

Discussions similaires

  1. [C#] Control user dans le code caché
    Par pc152 dans le forum ASP.NET
    Réponses: 7
    Dernier message: 07/05/2004, 06h36
  2. [langage] algo de bissection dans mon code
    Par killy dans le forum Langage
    Réponses: 5
    Dernier message: 19/01/2004, 18h35
  3. Quel est le problème dans ce code ?
    Par Luther13 dans le forum C
    Réponses: 12
    Dernier message: 26/08/2003, 16h09
  4. Modifier un événement dans le code
    Par HT dans le forum Langage
    Réponses: 6
    Dernier message: 20/06/2003, 09h46
  5. Création multiple table paradox dans le code
    Par scarabee dans le forum C++Builder
    Réponses: 8
    Dernier message: 30/10/2002, 10h17

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