naja, ich hatte Dietlinde anders verstanden:

Job-b läuft auch interaktiv und im batch, darf nie mit job-a aber auch nie mit anderen Job-b's laufen.
und dann gehts, wie ich beschrieben habe.


Wenn das Szenario so ist, wie Du schreibst, geht es auch, ist allerdings etwas komplizierter:

Code:
Job-A:
versucht ALCOBJ OBJ((D2 *DTAARA *EXCL)) WAIT(0)  
versucht ALCOBJ OBJ((D1 *DTAARA *SHRRD)) WAIT(0)
Wenn beides geht, macht er 
DLCOBJ OBJ((D2 *DTAARA *EXCL))
startet die Verarbeitung
und anschl. DLCOBJ OBJ((D1 *DTAARA *SHRRD))
 
Job-B:
versucht ALCOBJ OBJ((D1 *DTAARA *EXCL)) WAIT(0)  
versucht ALCOBJ OBJ((D2 *DTAARA *SHRRD)) WAIT(0)
Wenn beides geht, macht er 
DLCOBJ OBJ((D1 *DTAARA *EXCL))
startet die Verarbeitung
und anschl. DLCOBJ OBJ((D2 *DTAARA *SHRRD))