Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/01/2012, 12h02   #1
Invité de passage
 
Yacine Chabane
Inscription : août 2010
Messages : 14
Détails du profil
Informations personnelles :
Nom : Yacine Chabane

Informations forums :
Inscription : août 2010
Messages : 14
Points : 2
Points : 2
Par défaut Format "téléphone" et regex

Bonjour,

2 transformations qui me donnent des erreurs

Doit être au format "06" suivi de 8 chiffres :

client.Numero == NULL ? "format incorrect" : "06" + (client.Numero.length().substring(0, 8))
Citation:
ERREUR : impossible d'invoquer substring sur le type int (pourtant mon numero client est en string)

Doit être au format "10 chiffres" ou au format "+" suivi de 19 chiffres max

Appel.No_appelant !=NULL && (Appel.No_appelant.matches("[0-9]{10}") || Appel.No_appelant.matches("^\\+[0-9]{19}"))
Citation:
ERREUR : non concordances de type -> bollean en string
Si quelqu'un pouvait m'expliquer mes erreurs...

merci
lordmao est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 12h08   #2
Membre Expert
 
Avatar de haskouse
 
Homme Mustapha EL HASSAK
Ingénieur développement logiciels
Inscription : août 2009
Messages : 628
Détails du profil
Informations personnelles :
Nom : Homme Mustapha EL HASSAK
Âge : 26
Localisation : Maroc

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : août 2009
Messages : 628
Points : 1 515
Points : 1 515
Code :
client.Numero == NULL ? "format incorrect" : "06" + (client.Numero.length().substring(0, 8))
Tu fias un subSting sur la fontion length() et cette dernièer renvoi un entier, c'est pour ça que tu as le message :
Citation:
ERREUR : impossible d'invoquer substring sur le type int
__________________
Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant. "Mohammed le Messager d’Allah" (que la paix et le salut d'Allah soient sur lui)

Mes articles publiés
haskouse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 12h11   #3
Membre Expert
 
Avatar de haskouse
 
Homme Mustapha EL HASSAK
Ingénieur développement logiciels
Inscription : août 2009
Messages : 628
Détails du profil
Informations personnelles :
Nom : Homme Mustapha EL HASSAK
Âge : 26
Localisation : Maroc

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : août 2009
Messages : 628
Points : 1 515
Points : 1 515
Code :
Appel.No_appelant !=NULL  && (Appel.No_appelant.matches("[0-9]{10}")  ||  Appel.No_appelant.matches("^\\+[0-9]{19}"))
Les fonctions matches renvoi des booléen, tu devrais plutôt renvoyer le string.
__________________
Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant. "Mohammed le Messager d’Allah" (que la paix et le salut d'Allah soient sur lui)

Mes articles publiés
haskouse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 13h07   #4
Invité de passage
 
Yacine Chabane
Inscription : août 2010
Messages : 14
Détails du profil
Informations personnelles :
Nom : Yacine Chabane

Informations forums :
Inscription : août 2010
Messages : 14
Points : 2
Points : 2
comment je dois procéder?
j'ai tenté autre chose mais je suis dans le flou

client.Numero == NULL ? "format incorrect" : "06" + (client.Numero.substring(0, 8))

ET

Appel.No_appelant !=NULL && String.valueof(Appel.No_appelant.matches("[0-9]{10}") || Appel.No_appelant.matches("^\\+[0-9]{19}"))
lordmao est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 14h18   #5
Membre Expert
 
Avatar de haskouse
 
Homme Mustapha EL HASSAK
Ingénieur développement logiciels
Inscription : août 2009
Messages : 628
Détails du profil
Informations personnelles :
Nom : Homme Mustapha EL HASSAK
Âge : 26
Localisation : Maroc

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : août 2009
Messages : 628
Points : 1 515
Points : 1 515
Il faut d'abord nous expliquer ce que tu veux faire, car ce n'est pas vraiment clair.
Essai de donner aussi un exemple.
Est ce que la transformation se fait dans un tMap ?
__________________
Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant. "Mohammed le Messager d’Allah" (que la paix et le salut d'Allah soient sur lui)

Mes articles publiés
haskouse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 14h45   #6
Invité de passage
 
Yacine Chabane
Inscription : août 2010
Messages : 14
Détails du profil
Informations personnelles :
Nom : Yacine Chabane

Informations forums :
Inscription : août 2010
Messages : 14
Points : 2
Points : 2
oui ca se fait dans un tmap, c'est la seule façon que je connaisse pour les transformations.
après ce que je veux faire, je l'ai énoncé plus haut.
lordmao est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 15h35   #7
Membre Expert
 
Avatar de haskouse
 
Homme Mustapha EL HASSAK
Ingénieur développement logiciels
Inscription : août 2009
Messages : 628
Détails du profil
Informations personnelles :
Nom : Homme Mustapha EL HASSAK
Âge : 26
Localisation : Maroc

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : août 2009
Messages : 628
Points : 1 515
Points : 1 515
J'ai bien vu ce qu'il y' a en haut, et ce n'est toujours pas clair.
Qu'est ce que tu as comme entrée (int, String ...), et qu'est ce que tu as comme sortie ?
__________________
Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant. "Mohammed le Messager d’Allah" (que la paix et le salut d'Allah soient sur lui)

Mes articles publiés
haskouse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 15h37   #8
Invité de passage
 
Yacine Chabane
Inscription : août 2010
Messages : 14
Détails du profil
Informations personnelles :
Nom : Yacine Chabane

Informations forums :
Inscription : août 2010
Messages : 14
Points : 2
Points : 2
tout est en string j'ai revérifié plusieurs fois au cas ou
lordmao est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 16h15   #9
Membre Expert
 
Avatar de haskouse
 
Homme Mustapha EL HASSAK
Ingénieur développement logiciels
Inscription : août 2009
Messages : 628
Détails du profil
Informations personnelles :
Nom : Homme Mustapha EL HASSAK
Âge : 26
Localisation : Maroc

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : août 2009
Messages : 628
Points : 1 515
Points : 1 515
Citation:
client.Numero == null ? "format incorrect" : "06" + (client.Numero.length().substring(0, 8))
Essai ça :

Code :
client.Numero == NULL ? "format incorrect" : "06" + (client.Numero.substring(0, 8))
pour le deuxième je n'ai rien compris.

Si tu veux une réponse clair, pose une question clair. Qu'est ce que ça te coûte de donner 2 ou 3 exemples pour chacune de tes questions !!
__________________
Le savant qui enseigne le bien aux gens et ne le met pas en pratique, est semblable à la torche qui éclaire en se brûlant. "Mohammed le Messager d’Allah" (que la paix et le salut d'Allah soient sur lui)

Mes articles publiés
haskouse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 16h44   #10
Invité de passage
 
Yacine Chabane
Inscription : août 2010
Messages : 14
Détails du profil
Informations personnelles :
Nom : Yacine Chabane

Informations forums :
Inscription : août 2010
Messages : 14
Points : 2
Points : 2
Doit être au format "10 chiffres" ou au format "+" suivi de 19 chiffres max

Appel.No_appelant !=NULL && (Appel.No_appelant.matches("[0-9]{10}") || Appel.No_appelant.matches("^\\+[0-9]{19}"))

ce sont des "regex" ou "expressions regulières"
lordmao est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h27.


 
 
 
 
Partenaires

Hébergement Web