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

Announcements
Qlik GA: Multivariate Time Series in Qlik Predict: Get Details
cancel
Showing results for 
Search instead for 
Did you mean: 
sammierlening
Contributor III
Contributor III

[resolved] Concurrent Subjob execution.

Is it possible to call a Subjob over a iterate connection and not wait for sequential execution completion?
Lets say I have a folder with 10 files. I would like to process 4 files concurrently, passing each filename to a subjob for processing. Currently, 1 file name is passed to the subjob, when that subjob is complete, the next filename is passed. What I would like if for each filename to be passed to a subjob, the subjobs to execute concurrently, and once all 4 are finished, the next batch of four filenames are passed to subjobs.
Labels (2)
1 Solution

Accepted Solutions
sammierlening
Contributor III
Contributor III
Author

sanvaibhav, I use a tjava component coming out of the first tFileList iterate to determine which batch a file should process in. I map that value to the globalMap. Then I use a tLoop to loop each batch from 1 to the max batch number in the globalMap. Finally, I use a second tFileList to iterate each file in each batch. I changed the iterate link to "Enable parallel execution". Each filepath is passed to a subjob for each file in each batch.
0683p000009MEYm.png

View solution in original post

6 Replies
Anonymous
Not applicable

I would recommend you to have four subjobs which are running parallely as independent process in main job...
Inside your subjobs, once the file is processed, move to archive folder and it would do what you are expecting..
vaibhav
sammierlening
Contributor III
Contributor III
Author

Solved.
Anonymous
Not applicable

Hi,
If the issue is closed, could you please click the "Set this topic as resolved" link which is right underneath your initial post? This way, other users will be informed that this thread has been resolved.
Many thanks
Best regards
Sabrina
Anonymous
Not applicable

Hi,
Can you please provide a screenshot or approach used to solve the current problem.
thanks
vaibhav
sammierlening
Contributor III
Contributor III
Author

sanvaibhav, I use a tjava component coming out of the first tFileList iterate to determine which batch a file should process in. I map that value to the globalMap. Then I use a tLoop to loop each batch from 1 to the max batch number in the globalMap. Finally, I use a second tFileList to iterate each file in each batch. I changed the iterate link to "Enable parallel execution". Each filepath is passed to a subjob for each file in each batch.
0683p000009MEYm.png
Anonymous
Not applicable

Oh.. that's great...
Thanks for the information and update.
vaibhav