Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us in Bucharest on Sept 18th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
_AnonymousUser
Specialist III
Specialist III

How to store Variable while running Talend Job

hi,
Scenario->
                  I want to store Some record in File or table with ID column.
                 Suppose, For first run Storing 10 record
                 then, O/P will be 
ID
-----
1
2
3
.
.
10
         Now for Second run it should start from 11. for that we need to store max of last load i.e10
so it will be 
ID
---
1
2
3
.
.
10
11
12
13
...
how to do this in Talend.
Labels (2)
3 Replies
Anonymous
Not applicable

Hi
In the beginning of job, read the max ID from a static file and store it to a context variable or global variable for used later. For example:
tFileInputDelimimitecd--main--tJavaRow
on tJavaRow:
context.max_value=input_row.max_value;

In the main processing of job,
if source data are stored in database, select records only when ids bigger than max value, for example:
"select * from tableName where id>"+context.max_value
if source data are read from file or other data sources, filter the rows on tMap, and then load the result to destination. For example:
tFileInputDelimited--main--tMap--o/p component--main--tSortRow--tMap_2--main--tFleileOutDlimited_2
on tSortRow, sort all the ids with desc model.
on tMap_2: add a sequence number for each row, and filter the rows to get only the first row which is the max ID for this execution.
on tFleileOutDlimited_2: update the max ID to the static file.
Best regards
Shong
_AnonymousUser
Specialist III
Specialist III
Author

Hi Shong,
Thanks for reply. I did the same but I am getting same value again not newly max value.
Regards,
Kiran B.
Anonymous
Not applicable

Hi 
I don't know which step your are doing some things wrong, can you please export your job and send it to me?
BR
Shong