Skip to main content
Announcements
Introducing a new Enhanced File Management feature in Qlik Cloud! GET THE DETAILS!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

[resolved] Running tSystem after iterations

Hi guys,
I'm using a tFileList component to help iterate through a bunch of files for processing and outputting to a file.  At the end of each file processing, I'm looking to run a command against the output file using tSystem component.
I don't want to use the append option on the tFileOutputDelimited component as the file can grow to be quite large, so I just want to run the tSystem command against the intermediate output file after each file iteration.
I've tried just hooking up the tSystem component to the output of tFileOutputDelimited component with the thinking that since the command I'm running has no dependency on the tFileOutputDelimited component besides the final file itself, it should just run in sequence.
However, what I'm seeing is that the tSystem is running out of sequence.
Does anyone have any suggestions around this?
Thanks!
Chris
Labels (2)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Replace Link OnSubJobOK by Iterate  for tSystem component
- This will execute your first iterate flow for first file and then once the flow is done, it will call tsystem and once the tsystem is done, it will pickup second file and continue in the same fashion till the end of file.
Thanks
Vaibhav

View solution in original post

4 Replies
Anonymous
Not applicable
Author

Hi Chris,
Can you show your job design? Flow which I can think should be like
tFileList----Iterate(1)--->tFileInputDelimited---->tFileOutputDelimited
          ----Iterate(2)--->TSystem (Run your command)
Try this way...
Vaibhav     
Anonymous
Not applicable
Author

Here's the job as it currently stands.  I'm running the tSystem after the first subjob is done, but I'd rather run it as part of the first subjob after the file is written.
The thing with this is that I don't want to write out multiple files, but rather keep replacing the output file for each iteration but running the tSystem on it first before moving on the next input file.
Thanks!
0683p000009MBd7.png 
Anonymous
Not applicable
Author

Replace Link OnSubJobOK by Iterate  for tSystem component
- This will execute your first iterate flow for first file and then once the flow is done, it will call tsystem and once the tsystem is done, it will pickup second file and continue in the same fashion till the end of file.
Thanks
Vaibhav
Anonymous
Not applicable
Author

Thanks!
Actually, what I decided to do instead was to add a OnComponentOk trigger from the last component in the flow to the tSystem component.
Either way, it still works!