Label Décisionnel
Bienvenue, Invité
Merci de vous identifier ou de vous inscrire.    Mot de passe perdu?
Récupération du NLS_CHARACTERSET dans le KM SqlLdr (1 lecteur(s)) (1) Invité(s)
Aller en bas Répondre Ajouté aux favoris : 0
SUJET: Récupération du NLS_CHARACTERSET dans le KM SqlLdr
#808
jbrinon (Utilisateur)
Expert Boarder
Messages: 152
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Récupération du NLS_CHARACTERSET dans le KM SqlLdr depuis 7 Mois, 3 Semaines Karma: 18  
Bonjour,

Pour faire suite à mon sujet dans le forum Oracle, voici le problème auquel je suis exposé à présent :

Tout se passe dans le "LKM File to Oracle (SQLLDR)", dans la ligne de traitement "Generate CTL file".
Après la ligne "LOAD DATA" du fichier CTL, je souhaite rajouter une nouvelle ligne "CHARACTERSET abc", abc étant le NLS_CHARACTERSET de la base de données (qui, ici, est en réalité WE8ISO8859P1).
Pour récupérer ce dernier, je peux faire la requête suivante :
select VALUE
from NLS_DATABASE_PARAMETERS
where upper(PARAMETER)='NLS_CHARACTERSET'

Sauf que...
Où puis-je mettre cette requête pour que 'abc' soit remplacé de manière dynamique par le résultat de cette requête ?
J'ai essayé de la mettre en source de cette ligne de traitement (la requête Oracle en source, l'écriture du fichier CTL en destination) avec la variable #VALUE en destination (à la place de 'abc', mais ça plante.
Et ce que je ne comprends pas, c'est que ça plante directement sur la source : "Invalid format description".
Je mets cette même requête dans une nouvelle ligne de traitement, et dans ce cas ça marche... mais je ne peux pas récupérer la valeur.

Suis-je clair ?
Merci d'avance pour votre aide.

Josserand
 
 
Dernière édition: 16-05-2008 à 12:15 Par jbrinon.
 
Josserand BRINON
  L'administrateur a désactivé l'accès public en écriture.
#815
ChrYStophe (Utilisateur)
Gold Boarder
Messages: 174
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Re:Récupération du NLS_CHARACTERSET dans le KM SqlLdr depuis 7 Mois, 3 Semaines Karma: 18  
Hello,

Peut-être est-ce que VALUE est un mot réservé pour ODI... Essaie la requête select VALUE as ENCODAGE from NLS_DATABASE_PARAMETERS where upper(PARAMETER)='NLS_CHARACTERSET'

Et utilises après #ENCODAG pour voir...

ChrYStophe
 
  L'administrateur a désactivé l'accès public en écriture.
#816
jbrinon (Utilisateur)
Expert Boarder
Messages: 152
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Re:Récupération du NLS_CHARACTERSET dans le KM Sql depuis 7 Mois, 3 Semaines Karma: 18  
En fait, ce n'est pas le #VALUE (ou le #ENCODAGE) qui plante en destination, mais la requête en source directement.
Je définis bien la technologie Oracle.

Cette même requête fonctionne bien sur une autre ligne de traitement (en destination), mais elle m'est inutile dans une ligne isolée.

En fait, j'ai l'impression qu'en source, si ce n'est pas la technologie File (définie en Techno source du KM), même forcé en Oracle, il plante. Il s'attend toujours à la technologie File.
L'erreur :
0 : null : java.sql.SQLException: Invalid format description
java.sql.SQLException: Invalid format description
at com.sunopsis.jdbc.driver.file.c.k.a.a(a.java)
at com.sunopsis.jdbc.driver.file.x.(x.java)
at com.sunopsis.jdbc.driver.file.v.

Sinon, je vais essayer, dans une nouvelle ligne de traitement (en Jython, en destination) de requêter et affecter à une variable directement.
...Je poursuis et vous tiens au courant...
(Si t'as une meilleure solution Christophe, je prends aussi )

Josserand
 
 
Josserand BRINON
  L'administrateur a désactivé l'accès public en écriture.
#819
ChrYStophe (Utilisateur)
Gold Boarder
Messages: 174
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Re:Récupération du NLS_CHARACTERSET dans le KM Sql depuis 7 Mois, 3 Semaines Karma: 18  
Edite le KM. Dans le premier onglet tu as Multi-connexions de coché mais Techno Source est à 'File' et en grisé.

Décoche et recoche Multi-connexions, Techno source passe à non-définie.

Et relance pour nous raconter ....
 
  L'administrateur a désactivé l'accès public en écriture.
#822
jbrinon (Utilisateur)
Expert Boarder
Messages: 152
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Re:Récupération du NLS_CHARACTERSET dans le KM Sql depuis 7 Mois, 3 Semaines Karma: 18  
J'ai fait ça... et ça ne marche pas.
J'ai également essayé de laisser décocher multi-connexion, et rien non plus.

Enfin, l'erreur reste la même : il me parle toujours du driver JDBC File.
 
 
Dernière édition: 16-05-2008 à 16:14 Par jbrinon.
 
Josserand BRINON
  L'administrateur a désactivé l'accès public en écriture.
#825
ChrYStophe (Utilisateur)
Gold Boarder
Messages: 174
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Re:Récupération du NLS_CHARACTERSET dans le KM Sql depuis 7 Mois, 3 Semaines Karma: 18  
Quand tu a Techno Source à non-définie, retourne dans l'onglet Source de Generate CTL file et Change en non-définie.
 
  L'administrateur a désactivé l'accès public en écriture.
Revenir en haut Répondre
Développé par FireBoardObtenir les derniers messages directement sur votre PC
Joomla Template by Joomlashack
Joomla Templates by JoomlaShack Joomla Templates