Bonjour.
Dans un Source Qualifier (SQ) j'aimerai effectuer 2 jointures différentes sur une même table. Cas typique pour récupérer l'utilisateur qui a créé un enregistrement (MaTable.ID_USER_CREAT) et celui qui l'a modifié en dernier (MaTable.ID_USER_MODIF).
Dans mon SQ, je tente de modifier la propriété "User Defined Join" en utilisant la syntaxe Informatica :
Ma base est sous Oracle, et je constate déjà que pour les jointures externes, Informatica utilise la syntaxe (+)...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 { MaTable LEFT OUTER JOIN USER as USER_CREAT ON MaTable.ID_USER_CREAT=USER_CREAT.ID_USER LEFT OUTER JOIN USER as USER_MODIF ON MaTable.ID_USER_MODIF=USER_MODIF.ID_USER }
Et malheureusement, Informatica supprime l'alias lorsqu'il traduit ma jointure....
Le SQL devient :
Pourtant, l'aide Informatica et les différents tutos vus sur le net semblent dire que ça devrait fonctionner...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT ... FROM MaTable, USER, USER WHERE MaTable.ID_USER_CREAT=USER_CREAT.ID_USER(+) AND MaTable.ID_USER_MODIF=USER_MODIF.ID_USER(+)
Je me suis trompé quelque part ?
Merci d'avance.
Partager