Two methods
#1
Have Job A's tasks proceed through, one at a time Only if each task is successful.
So like this
Job A
Tsk 1 - if successful go to next task
Task 2 - if successful go to next task
Task 3 - if successful go to next task
and so on
Then have Job B trigger on the successful completion of Job A. Since Job A cannot be successful without all Tasks in Job A successful Job B will not run if any fail
#2
If Job A has 10 tasks then Job B should have 10 triggers
Each trigger is fired after the successful completion of each task in Job A
All triggers are dependent on each other so that if any of them is NOT successful then Job B's triggers do not all fire and Job B does not run
If you want to get fancy for method #2....
Create a Job C. Job C is a simple email to you (or whomever) that is going to monitor Job B. The purpose would be to give feedback of why Job B does not run
Job C
Task 1 = email including the results of all Job A tasks
Set this to run at the end Job A IF any task fails
This way you always have two jobs that always run. If Job B runs then you know all of Job A was successful. If Job C runs then you know Job B did not, or will not, run and the you have the reason why.