i am using using javaflex. In invalid output, i am setting context variable and checking it on "IF" condition. Now condition is working fine. But i am unable to send main data output to the SqlOutput. After if condition of javaflex i am getting only one row rather than entire parsed data.
tJavaFlex IF is a trigger, it's not possible... some components allow you to link an IF to a (row) component.
What would you like to achieve, what is your IF based on, specific row.column value?
and based on its value you like to write row output to, in example, a file A and if its not write to file B?
What are you trying to achieve here? I ask as you are processing 108852 rows just prior to this. The RunIF will fire ONCE per component completion. If you want it to fire 108852 times, you will need to use a tFlowToIterate and iterate over the each individual row. However, this will be a very lengthy process with 108852 rows.
Alternatively you can apply your IF logic in the tMap and filter the rows that are returned by that logic. Then you can just send your data that is output straight to your tPostgreSQL. You can see how to do that here:
But i want to store the data if there is no "Invalid parser output". If any parser error i am setting(context variable X) flag value as true else false in "tJavaflex_3" . Based on this context variable(X) i want to store the final output. If condition between tJavaflex_4 and tJavaflex_5
is validating the context variable (X).
Try Talend Cloud free for 30 days.
Introduction to Talend Open Studio for Data Integration.
Practical steps to developing your data integration strategy.
Create systems and workflow to manage clean data ingestion and data transformation.