
Envoyé par
kasdo
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 :
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 :
(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 :
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 :
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" :
Partager