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

Développement de jobs Discussion :

Le composant tsendmail mais avec une condition:


Sujet :

Développement de jobs

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 106
    Par défaut Le composant tsendmail mais avec une condition:
    Bonjour à tous, j'ai encore une question, je veux envoyer un mail avec le composant tsendmail mais avec une condition:
    je génère un fichier excel ou csv ( c'est un résultat d'un traitement) si le fichier est généré donc j'envoie un mail veuillez trouver ....etc, sinon si le fichier n'est pas généré c'est à dire aucune donnée ou résultat, j’envoie un autre mail aucun résultat....etc.

    Est ce que quelqu'un a une réponse.

  2. #2
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2010
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Mai 2010
    Messages : 343
    Par défaut
    Bonjour,

    Tu peux utiliser les liens RUN-IF pour exécuter conditionnellement tes 2 tSendMail.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 106
    Par défaut
    Merci pour ta réponse, mais je ne sais pas comment utiliser le Run if, la syntaxe de la condition, ...

  4. #4
    Membre Expert Avatar de Benoit_Durand
    Profil pro
    Consultant en Business Intelligence Freelance
    Inscrit en
    Mars 2005
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence Freelance

    Informations forums :
    Inscription : Mars 2005
    Messages : 861
    Par défaut
    une simple condition java

    par exemple pour tester que la variable maChaine est égal à toto :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "toto".equals(maChaine)
    pour faire la négation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    !("toto".equals(maChaine))

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 106
    Par défaut
    Merci, mais ma chaine prend une valeur numérique c'est le résultat d'un count(*) et lorsque je mes ce code ((Integer)globalMap.get("mandat")).equals(0)

    ça m'affiche l'erreur suivante

    Exception in component tSetGlobalVar_1
    java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
    at alim_dwh_postgres.a_0_1.a.tPostgresqlInput_1Process(a.java:1591)
    at alim_dwh_postgres.a_0_1.a.runJobInTOS(a.java:2006)
    at alim_dwh_postgres.a_0_1.a.main(a.java:1877)

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 179
    Par défaut
    Salut,

    Essaye de remplacer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Integer.toString(globalMap.get("mandat")).equals("0");
    ++

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 179
    Par défaut
    L'ideal serait qur tu cast ta variable en int pour regler tes soucis de conversion

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 106
    Par défaut
    Merci ulquiorra pour ta réponse, mais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Integer.toString(globalMap.get("mandat")).equals("0")
    ne marche pas.
    Est ce que vous pouvez m'aider car je suis bloqué avec String marche mais avec Integer ne marche pas pour quoi? sachant que j'ai déclarer une var de contexte du meme nom et de type integer, je suis vraiment bloqué.

  9. #9
    Membre Expert Avatar de Benoit_Durand
    Profil pro
    Consultant en Business Intelligence Freelance
    Inscrit en
    Mars 2005
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence Freelance

    Informations forums :
    Inscription : Mars 2005
    Messages : 861
    Par défaut
    Simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((Integer)globalMap.get("mandat"))==0
    sinon en forcant le passage de Integer à int avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((Integer)globalMap.get("mandat")).intValue()==0
    Le premier devrait fonctionner.

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 179
    Par défaut
    Salut,

    Que veux tu dire par ca ne marche pas ?

    Si tu as besoin de cast ta variable en String pour faire un equals dessus , il faut utiliser la méthode toString() de Integer

    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Integer i = new Integer(5);
    	String s = Integer.toString(i);
     
    	if(s.equals("5"))
    	{
    		System.out.println("OK");
    	}
    Ou si tu veux tout simplement conserver le type de départ (Integer) , il te suffit de faire un "==" comme tu ferais avec les types primitifs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((Integer)globalMap.get("mandat"))==0
    Edit : devancé par Benoit_durand :p

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 106
    Par défaut
    C'est bon c'est résolu, je vous remercie tous, c'etais ma faute car j'ai utilisé un tflowtoiterate au lieu de tSetGlobalVar et ça marche parfaitement.

    Merci beaucoup

Discussions similaires

  1. if avec une condition mais 2 valeurs possibles
    Par chrisaccess dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/11/2011, 19h01
  2. Réponses: 1
    Dernier message: 30/06/2006, 16h01
  3. Réponses: 3
    Dernier message: 24/10/2005, 13h47
  4. Problème de requête avec une condition IN
    Par sorcer1 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 20/10/2005, 11h56
  5. envoyer submit avec une condition !
    Par delphinote dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/07/2005, 15h52

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