0

I am kind of new to Datastage and i have a requirement to trigger multiple sequences when a timestamp is updated at a certain time of the day.

1st Sequence - 1.It starts with a parallel job that generates a list of sequences that are meant to run. 3.Then the loop starts (numeric, 26 times), 4.inside the loop it execute the 2nd sequence. 5.Then it sleeps for 15m before ending the loop.

2nd Sequence - 1.Reads list of Sequences with execute command. 2.Another loop starts with the command output of the list. 3.Then i side the loop it executes a parallel job that will check the timestamp for each item on the list. Saves result on a file ("ok" if it meets a condition to do with the timestamp). 4.Reads the result of the previous parallel job.

This is when it starts not working.

Basically what i want it to do is in case the result is ok, it's meant to go ahead and execute the sequence for that item, otherwise it goes back to this loop and checks next item.

I cannot wait for the sequence to be over before it checks the next item on the list. The list has 7 items.

So, what i have is,after it reads the result i have a nested condition which indicates which sequence to go for depending on the loop counter.

It always performs the first one well but then it ends and instead of going to the next item on the list it says "startloop was started but it did not complete all its iterations".

Please note that when it reads the result, if its not "ok", it goes down to a sequencer (set to any) and then back to the loop).

arh26
  • 1
  • Your question is not clear to me - the headline is about starting a Sequence job but in the text you are talking about loops within the sequence. Can you clarify this please? – MichaelTiefenbacher May 24 '21 at 19:46

1 Answers1

0

One of two options here.

  1. Use a Datastage Server routine to call the DataStage job you want without blocking.
  2. Write a shell script that calls dsjob and doesn't block.