Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Informatica
Informatica Forum d'entraide Informatica (PowerCenter, PowerExchange, Complex Data Exchange, etc.)
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/08/2011, 12h28   #1
Futur Membre du Club
 
Femme
Consultant en Business Intelligence
Inscription : juillet 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : juillet 2011
Messages : 17
Points : 15
Points : 15
Par défaut Problème dans Informatica

Bonjour,
je travaille à partir d'une table dans laquelle certaines cellules sont vides. Je souhaite isoler les cellules vides, j'ai essayé avec un filtre en utilisant la fonction 'isnull' mais bizarrement les cellules ne sont pas sélectionnées. Ce que je ne comprends pas, c'est que j'ai déjà utilisé cette fonction auparavant et que ça marchait très bien! J'ai l'impression que dans ce cas, Informatica ne considère pas les cellules comme étant non renseigées (null), pourquoi???

Quelqu'un a t'-il déjà eu ce problème?
Merci!
boucledor13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 12h39   #2
Futur Membre du Club
 
Femme
Consultant en Business Intelligence
Inscription : juillet 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : juillet 2011
Messages : 17
Points : 15
Points : 15
J'ajoute que j'ai fait un ltrim sur l'ensemble des cellules dans l'étape précédente...
boucledor13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 15h21   #3
Membre Expert
 
Avatar de Glutinus
 
Homme
Consultant en Business Intelligence
Inscription : avril 2005
Messages : 676
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : avril 2005
Messages : 676
Points : 1 467
Points : 1 467
Ta condition de filtre est IsNull(champ1), ou plutôt un IsNull(ltrim(champ1)) pour ne garder que les lignes dont champ1 est null ?

A tout hasard, un ltrim(rtrim(champ1)) ? enfin je suis d'accord, techniquement seul le premier suffit, c'est juste que j'ai l'habitude de faire toujours les deux... pour éviter les mauvaises surprises.
__________________

Dogbert : Here's my final report on your company. I've concluded you're doomed. You waste too much money on consultants.
Boss : You're a consultant.
Dogbert : Ironic, isn't it ?
~~
La culture, c'est comme la confiture : quand on l'aime, on la partage.
Amateur de photos et de groupes de rock qui gagnent à être connus ? Clique WWW !
Glutinus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/08/2011, 12h46   #4
Futur Membre du Club
 
Femme
Consultant en Business Intelligence
Inscription : juillet 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : juillet 2011
Messages : 17
Points : 15
Points : 15
Rien à faire, avec tous les ltrim et rtrim du monde la fonction isnull ne veut pas marcher!!!
Finalement je m'en suis sortie par une alternative tordue : j'ai ajouté un espace comme premier caractère de chaque cellule avec un CONCAT puis j'ai lancé un rtrim sur les cellules (les cellules vides se retrouvent alors sans espace contrairement aux autres cellules) et enfin j'ai fait une sélection sur les cellules qui ne contiennent pas d'espace (en utilisant INSTR) pour ne récupérer que les cellules qui m'intéressent. Ca marche mais un simple ISNULL m'aurait mieux arrangé
boucledor13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/08/2011, 14h12   #5
Membre Expert
 
Avatar de Glutinus
 
Homme
Consultant en Business Intelligence
Inscription : avril 2005
Messages : 676
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : avril 2005
Messages : 676
Points : 1 467
Points : 1 467
Ou alors c'est un caractère spécial qui ressemblerait à du blanc.
Ou une option qui s'est cochée quelque part...

Bah le principal est que ça marche, faut aussi penser à la maintenance du truc (commentaire, doc...)
__________________

Dogbert : Here's my final report on your company. I've concluded you're doomed. You waste too much money on consultants.
Boss : You're a consultant.
Dogbert : Ironic, isn't it ?
~~
La culture, c'est comme la confiture : quand on l'aime, on la partage.
Amateur de photos et de groupes de rock qui gagnent à être connus ? Clique WWW !
Glutinus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 09h48   #6
Membre habitué
 
Inscription : janvier 2004
Messages : 507
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 507
Points : 101
Points : 101
c'est normal que ton isnull ne marche pas
parcequ'il va considérer que le champs vide, n'est pas un null
mais un chaine vide du coup ta fonction isnull renverra 0 et non 1 (1 signifie le champs est null)

quand j'ai eu ce probleme et que le isnull ne fonctionnait pas,
je faisais
Citation:
IIF ( length(monchamps)=0 or monchamps='' ,NULL,monchamps)
donny est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h18.


 
 
 
 
Partenaires

Hébergement Web