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 :

If Statement Help


Sujet :

Développement de jobs

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    BI
    Inscrit en
    Septembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2015
    Messages : 41
    Par défaut If Statement Help
    Salut,

    quelqu’un peut m'aider sur cette expression svp :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    row13.INSERT_DATE.equals(null)||row13.INSERT_DATE.equals("")?"1900-01-01 00:00:00":TalendDate.formatDate("yyyy-MM-dd HH:mm:ss",row13.INSERT_DATE)
    ça ne marche pas dans le constructeur d'expression : Exception in thread "main" java.lang.Error: Unresolved compilation problem

    PS : le champ en sortie est en String


    Merci

  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 basculer dans la vue code ( l'onglet a coté de désigner de ton job ) pour visualiser ton code

    un tag rouge apparait sur la droite indiquant une erreur de compilation, tu cliques dessus.

    Tu arrives directement sur la ligne en erreur, tu passes ta souris sur la partie rouge, une infobulle donne l explication. Et c''est plus facile a comprendre

  3. #3
    Membre averti
    Homme Profil pro
    BI
    Inscrit en
    Septembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2015
    Messages : 41
    Par défaut
    Citation Envoyé par emenuet Voir le message
    Bonjour,

    Tu peux basculer dans la vue code ( l'onglet a coté de désigner de ton job ) pour visualiser ton code

    un tag rouge apparait sur la droite indiquant une erreur de compilation, tu cliques dessus.

    Tu arrives directement sur la ligne en erreur, tu passes ta souris sur la partie rouge, une infobulle donne l explication. Et c''est plus facile a comprendre
    Bonjour emenuet,

    Merci pour ta réponse, le souci c'est que j'ai cette erreur dans mon Tmap en mode "Construction d'expression" donc il ne génére pas de code. quand je lance mon job, il ne m'affiche aucune erreur, mais il ne prend pas la valeur voulu aussi !

    cdt

  4. #4
    Membre très actif Avatar de supergeoffrey
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Octobre 2010
    Messages : 802
    Par défaut
    Citation Envoyé par kasdo Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    row13.INSERT_DATE.equals(null)||row13.INSERT_DATE.equals("")?"1900-01-01 00:00:00":TalendDate.formatDate("yyyy-MM-dd HH:mm:ss",row13.INSERT_DATE)
    C'est quoi le type de INSERT_DATE dans ton schema ? C'est une chaîne de caractère (java.lang.String) ou une date java.util.Date ? Quel est aussi le type de ton retour ?

    Dans tous les cas tu es dans un de ces 4 cas :


    Si c'est une chaine de caractères et que tu veux retourner une date, je pense que tu voulais faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TalendDate.parseDate("yyyy-MM-dd HH:mm:ss", (row13.INSERT_DATE == null || "".equals(row13.INSERT_DATE)) ? "1900-01-01 00:00:00" :   row13.INSERT_DATE)
    Si c'est une chaîne de caractères et que tu comptes retourner une chaîne de caractères, tu dois faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (row13.INSERT_DATE == null || "".equals(row13.INSERT_DATE)) ? "1900-01-01 00:00:00" :   row13.INSERT_DATE
    Si c'est une date et que tu veux retourner une date :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    row13.INSERT_DATE == null ? TalendDate.parseDate("yyyy-MM-dd HH:mm:ss", "1900-01-01 00:00:00" ) :  row13.INSERT_DATE

    Si c'est une date et que tu veux retourner une chaîne de caractères :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    row13.INSERT_DATE == null ? "1900-01-01 00:00:00" : TalendDate.formatDate("yyyy-MM-dd HH:mm:ss",row13.INSERT_DATE)


    _____________________________________

    Quand tu veux faire des comparaison avec null, n'utilise pas la méthode equals, sinon tu risques d'avoir des java.lang.NullPointerException


    _______________________________________

    De plus quand tu as des erreurs de compilation, ça sert à rien de forcer l'exécution de ton job, regarde la ligne qui bloque dans le code généré comme te l'as dit emenuet, l'erreur de compilation montrée dans l'éditeur de code est souvent plus claire qu'une " java.lang.Error: Unresolve compilation error" :

  5. #5
    Membre éclairé

    Homme Profil pro
    informatique
    Inscrit en
    Avril 2013
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Avril 2013
    Messages : 280
    Billets dans le blog
    1
    Par défaut
    bonjour quel est le type de retour de ton expression.c'est très important sinon tu as des erreurs.

    je suppose que c'est une chaine de caractère vu ton expression,a lors voici l'expression que je te propose
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Relational.ISNULL(row13.INSERT_DATE)  ? "1900-01-01 00:00:00" : TalendDate.formatDate("yyyy-MM-dd HH:mm:ss",row13.INSERT_DATE)

  6. #6
    Membre averti
    Homme Profil pro
    BI
    Inscrit en
    Septembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2015
    Messages : 41
    Par défaut
    Merci pour toutes vos réponses. mon expression était bonne, c'était juste que ma table était vide, du coup aucune valeur pour INSERT_DATE


    Merci

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

Discussions similaires

  1. [PostgreSQL] Refus de STATEMENT dans un trigger
    Par alex2205 dans le forum Requêtes
    Réponses: 3
    Dernier message: 10/03/2003, 12h51
  2. help please
    Par atom267 dans le forum CORBA
    Réponses: 2
    Dernier message: 24/01/2003, 10h41
  3. [Kylix] fichiers help kylix2 oe ??
    Par sdoura2 dans le forum EDI
    Réponses: 2
    Dernier message: 29/11/2002, 14h32
  4. Help :Problème de clignotement
    Par LE CHAKAL dans le forum Composants VCL
    Réponses: 6
    Dernier message: 14/08/2002, 10h53
  5. Help InnoSetup ou Installshield
    Par buzz dans le forum Outils
    Réponses: 4
    Dernier message: 30/07/2002, 15h26

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