How can I join two flows into one? (Unite does not work)

One Star

How can I join two flows into one? (Unite does not work)

Hi,
I found several times that a flow must branch to follow different processing but after a few components they are ready to join again.
Currently I handle this situation generating several files and then processing. But, Is there any better way to joint to flows?
I attach a screenshot.
Thank you
One Star

Re: How can I join two flows into one? (Unite does not work)

For the tJoin to work, it needs the schema of the input rows (their columns definition) to be the exact same.
One Star

Re: How can I join two flows into one? (Unite does not work)

But I don't want to join. I just one to concatenate both flows. Just like tUnite
One Star

Re: How can I join two flows into one? (Unite does not work)

Sry, I meant tUnite, not tJoin, needs all input rows to have the same schema.
One Star

Re: How can I join two flows into one? (Unite does not work)

Talend does not seem to allow this (see http://www.talendforge.org/bugs/view.php?id=10702)
Has anyone come up with a solution to this problem that doesn't involve writing to temporary files?
Four Stars

Re: How can I join two flows into one? (Unite does not work)

I was able to make something like this work for a reconciliation program. Not sure its exactly what you're looking for....
Ignore the names and look at the flows. The tmap first outputs my main/rejected outputs, they each go to an output (I only kept one of them to keep file size small), I sorted/filtered them and then I output them to a temporary csv file.
Then I input those csv files and was able to join them however I wanted. Please note that the second image is a subjob of the first image.
Six Stars

Re: How can I join two flows into one? (Unite does not work)

Talend does not allow a "closed circuit". You can unite separte sources into one flow but cannot - start,split,unite- again. In the OP's picture I would use a second tFileOutputDelimited in append mode. Using temp files or use of child jobs and tBufferOutput then tUnite are the usual ways to accomplish these kinds of operations.

Josh
One Star

Re: How can I join two flows into one? (Unite does not work)

I use now temporary files and splitted the problem into multiple minor ones
One Star

Re: How can I join two flows into one? (Unite does not work)

Warning:tUnite cannot exist in a data flow loop. For instance, if a data flow goes through several tMap components to generate two flows, they cannot be fed to tUnite.

This statement is from talend.
I am stuck in the similar position where i am creating two flow from a tmap and then need to take the union of these 2 flows ,, i tried to use tunite but on research i got to know the above mentioned statement. Please help is there any other possible way or any other component to achieve this ????

Your response would be very much appreciated i anyone can help. Talend Team???
Seventeen Stars

Re: How can I join two flows into one? (Unite does not work)

hi,
when you say :
i am creating two flow from a tmap

you're on the right road Smiley Happy
but you have  to create your 2 ouptput as a single ouptut !
Create your first output as usual , create second outpout as a 'join table' .
You will have a unique output at the end.
It's very useful, when you have to do different things on data depending on filter, values & so on , but result should be in the same flow.
your 2 differents output need to have same schema of course Smiley Wink


hope it helps
regards
laurent