Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Use a routine with a ConcurrentHashMap (https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html)
@rhall can you elaborate a little and maybe give some example?
I would like to have set of variables, set their values in one job according to table (var_name, var_val) and later be able to use that variables in run if conditions and filters for outputs in many other jobs. Looks like that HashMap can be a solution for me, but I found only this article
https://help.talend.com/reader/i6eFKBuNsRD2KzBCYnXHhw/4jPcdaVw7eaDvMyLDjdYfQ , and if I understand this correctly setValue/getValue functions in tJavaRow set/get value statically only for one variable so it wont work in my case if I have 100+ variables
When you say you want to use the values that have been set in RunIfs and filters in many other jobs, do you mean child jobs of the job that you are setting the values in? This is important since these will all run under the same process. They are essentially running in a single Java application. If that is the case, then this will work for you. Otherwise, you will need a different solution.
Assuming your requirement is for jobs running in the same process, this page goes through an example using a ConcurrentHashMap (https://www.talendbyexample.com/talend-returning-values-from-subjobs.html)