|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Nicolas VandenbergueConseil - Consultant en systèmes d'information Inscription : janvier 2011 Messages : 88 ![]() |
Bonjour,
Je cherche à récupérer dans un job père les variables de contexte modifiées dans un jobs fils. Les variables de contexte sont définies au niveau du projet (présents sur le job père et le job fils). J'ai coché 'Transmettre tout le contexte'. Une variable de contexte modifiée par le job père est bien disponible pour le job fils. En revanche, une modification de variable de contexte dans le job fils n'est pas disponible pour une utilisation ultérieure dans le job père. Y a-t-il une solution? J'ai vu les composants tContextDump et tContextLoad, mais je ne vois pas comment passer d'un job à l'autre. Merci, |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() Nicolas SaumandeArchitecte Décisionnel Inscription : février 2008 Messages : 693 ![]() |
Bonjour,
Effectivement tu peux utiliser ces composant pour récupérer les mises à jour réalisées sur tes variables de contextes. Le tContextDump te permettrait dans ton job fils d'exporter le contenu de toutes tes variables de contexte dans un flux, que tu peux ensuite diriger dans un fichier. Le tContextLoad te permet ensuite dans ton job père de récupérer le contenu d'un flux (par exemple celui généré par le fichier précédent) afin de l'utiliser pour mettre à jour tes variables de contexte. Nicolas |
|
|
00
|
|
|
#3 |
![]() ![]() Jean-Sébastien DARGESConsultant décisionnel Inscription : août 2008 Messages : 983 ![]() |
La méthode est simple :
Job Fils : une fois les modifications des variables de context fait, ajouter un tpostJob relié à un tContextDump (onComponentOk). Ce tContextDump est, lui, relié à un tBufferOutput (Main). Job Pere : tRunJob appelant le job fils avec coche "Transmettre tout le contexte" et relié à un tContextLoad en flux Main. Pour synchroniser le schéma du tRunjob et du tCOntextLoad clique sur "Copier le schéma du job fils"
__________________
Google est ton ami mais ton voisin aussi Modérateur BI Mes tutoriels - FAQ Talend - FAQ SQL*Plus Suivez @Developpez sur twitter !
|
|
|
10
|
|
|
#4 |
![]() ![]() |
Il y a une alternative : utiliser une variable statique, partagée dans toute l'application. Il y a par exemple la routine "StaticGlobalMap" sur Talend Exchange (version statique et partagée de la globalMap).
__________________
|
|
00
|
|
|
#5 | ||
|
Membre habitué
![]() Nicolas VandenbergueConseil - Consultant en systèmes d'information Inscription : janvier 2011 Messages : 88 ![]() |
Bonjour,
Merci pour les éléments de réponse. Avec la piste de jsd03, Citation:
Je joins les captures d'écran de mes deux jobs. CyberChouan, Citation:
http://www.talendforge.org/exchange/...ew.php?eid=277 As-tu des exemples d'utilisation à proposer ou un lien vers un tuto? |
||
|
|
00
|
|
|
#6 |
![]() ![]() Jean-Sébastien DARGESConsultant décisionnel Inscription : août 2008 Messages : 983 ![]() |
Normalement cette méthode fonctionne car on l'utilise tout les jours sur nos projets
__________________
Google est ton ami mais ton voisin aussi Modérateur BI Mes tutoriels - FAQ Talend - FAQ SQL*Plus Suivez @Developpez sur twitter !
|
|
|
00
|
|
|
#7 | |
|
Membre habitué
![]() Nicolas VandenbergueConseil - Consultant en systèmes d'information Inscription : janvier 2011 Messages : 88 ![]() |
Merci jsd03, mais cela ne fonctionne toujours pas chez moi
Citation:
Dans mon jobs père, à la sortie du tContextLoad, ma variable a pour valeur la valeur modifiée dans le job père (avant l'appel au job fils), et non pas la valeur modifiée dans le job fils. Je suis alors remonté au job fils. Dans le job fils, à la sortie du tContextDump, j'ai mis un tlogrow pour voir la valeur de ma variable, et j'obtiens 'null' si je lance le job fils, ou la valeur modifiée dans le job père si je lance le job père. La modification de la variable dans le job fils n'est pas prise en compte dans les variables de contexte. Pourtant, quand j'affiche cette variable dans une boîte de dialogue dans le job fils, j'ai bien la valeur modifiée dans le job fils. |
|
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : octobre 2005 Messages : 27 ![]() |
J'ai le même problème le fils et le père avec les même variables le fils les modifies dans une tjava et les affiche correctement, le père affiche toujours les ancienne valeurs.
|
|
|
00
|
|
|
#9 | |
|
Membre émérite
![]() Nicolas SaumandeArchitecte Décisionnel Inscription : février 2008 Messages : 693 ![]() |
Citation:
La solution de jsd03 devrait répondre à ton problème. Nicolas |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com