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 :

"tOracleInput, ORA-01843: ce n'est pas un mois valide"


Sujet :

Développement de jobs

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Points : 11
    Points
    11
    Par défaut "tOracleInput, ORA-01843: ce n'est pas un mois valide"
    Bonjour,

    Quand j'exécute mon job qui comprend un tOracleInput basé sur une vue ( avec deux champs Date), j'obtiens une erreur sur le tOracleInput :
    "
    Exception in component tOracleInput_1
    java.sql.SQLException: ORA-01843: ce n'est pas un mois valide

    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:169)
    at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
    at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
    at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
    at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889)
    at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:1826)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2015)
    at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:571)
    at test.immo_po_0_1.immo_po.tOracleInput_1Process(immo_po.java:2092)
    at test.immo_po_0_1.immo_po.runJobInTOS(immo_po.java:3384)
    at test.immo_po_0_1.immo_po.main(immo_po.java:3295)"


    Pour ce faire, j'ai appliqué sur les 2 champs dates de ma vue oracle la fonction to_char(monChampDate, 'dd/MM/YYYY') pour contourner le format date; à ma grande surprise, l'erreur persiste.
    J'utilise TOS 3.1.1

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 247
    Points : 277
    Points
    277
    Par défaut
    Salut,

    As-tu vérifié la définition de ces champs, dans le schéma de ton tOracleInput ?
    Si ce sont des types "Date", attention au pattern.
    Si ce sont des types "String", attention à la longueur.

    A+

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Points : 11
    Points
    11
    Par défaut oui
    Sur la vue c'est des Varchar2(10) , j'ai pris le soin de rafraichir le schémas.
    Par contre, je ne connais pas la notion de pattern sur talend.

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 247
    Points : 277
    Points
    277
    Par défaut
    Le pattern n'est à utiliser que sur des champs de type date, donc pas de soucis de ce côté là.

    Si les champs de ta vue sont définis en VARCHAR2, il faut que les champs de ton schéma (dans Talend) soient définis en String.

    Ensuite, ça devrait marcher normalement.

    Sinon, fais une capture d'écran de ton composant Oracle, (schéma + requête) qu'on essaie de voir d'où ça peut venir.

  5. #5
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Points : 11
    Points
    11
    Par défaut fichiers
    les fichiers input et le schéma.
    Images attachées Images attachées   

  6. #6
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Points : 11
    Points
    11
    Par défaut le bout du tunnel
    Bonjour,
    J'ai pu résoudre le problème non pas là où on l'attendait.Après avoir supprimé les champs date sur la vue et remuer ciel et terre :-) , le problème persistait.
    J'ai regardé la clause "where" de ma vue oracle qui avait une instruction :

    where
    ....
    trunc(INV.CREATION_DATE)>= '02-11-2009'

    que j'ai substitué en :

    where
    ....
    trunc(INV.CREATION_DATE)>= trunc(to_date('02/11/2009','DD/MM/YYYY'))
    puis opps! ca marche...
    Le problème a disparu. Ce qui veut dire que la vue de ma base Oracle qui est utilisée dans le OracleInput n'est pas aussi transparent que l'on pense coté Talend. Chose bizarre d'autant plus que la même vue est exécutée avec succées sur les éditeurs worksheet et SqlDeveloper.

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

Discussions similaires

  1. FOrms 10g : Ceci n'est pas un mois valide
    Par lolafrite dans le forum Forms
    Réponses: 4
    Dernier message: 01/02/2008, 09h35
  2. Erreur ORA-01843: ce n'est pas un mois valide
    Par Coldyo dans le forum SQL
    Réponses: 8
    Dernier message: 25/05/2007, 18h32
  3. Réponses: 2
    Dernier message: 27/07/2006, 09h30
  4. [débutant] Lire et compiler un source qui n'est pas de moi
    Par Le Furet dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 21/01/2006, 13h01
  5. l'executable n'est pas une win32 valide
    Par joebilou dans le forum Windows
    Réponses: 4
    Dernier message: 28/06/2005, 11h53

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