OnComponentOk and order with tMap

One Star

OnComponentOk and order with tMap

I have the following flow:

1 Component that needs to be executed to extract from MYSQL a certain timestamp
3 MYSQL input that needs to use that timestamp
1 tMap which needs to get the 3 mysql input
However, I am not allowed to connect the 3 mysql into the single tMap because they are depending on the first component (through OnComponentOk) but with different order. How do I orchestrate this sort of situations?
Regards
Edmondo
Sixteen Stars

Re: OnComponentOk and order with tMap

If you show us a screenshot of what you have already, it might help a bit more. But I suspect that you need to use the tHashInput/Output components.
First of all you need to enable them if they are not already. Look here for this (https://www.safaribooksonline.com/library/view/talend-open-studio/9781782167266/ch01s03.html).
Consider these components as in-memory storage. You can save 3 separate datasets or append your data from your 3 db inputs into one dataset. Here is a Talend tutorial showing how these can be used (https://help.talend.com/pages/viewpage.action?pageId=8123271#technical-thashinput-scenario_speed).
You could make use of these components by dumping your data from your db into tHashOutput components. Then in a separate subjob connect the corresponding tHashInput components to your tmap (which should now be allowed). The reason you cannot connect them as you want to is that you cannot split a flow and then merge it again in the same subjob.
Thirteen Stars

Re: OnComponentOk and order with tMap

as alternative
tMySQLInput -> tFlowToIterate - save timestamp to Variable -> tJavaFlex as dummy ->
OnComponentOk
as many Input as You want which use this variable in SELECT
but agree - description not clean, would be good to have picture - what really expected
-----------
One Star

Re: OnComponentOk and order with tMap

I gues sthe answer was given on Stackoverflow. If I use onSubjobOk  between the subjob1 and the subjob2 where all the mysql selects are placed, everything works correctly
Thirteen Stars

Re: OnComponentOk and order with tMap

I gues sthe answer was given on Stackoverflow. If I use onSubjobOk  between the subjob1 and the subjob2 where all the mysql selects are placed, everything works correctly

not sure -what are You mean
but as described above - it not 100% correct, just connect it not true
if You are need as You describe in question use result of first input component in pother subjobs, You must save value somewhere
it could be global variable as example
-----------