Das ist der Fluch der Table-Functions, die zuerst immer alle Daten ermitteln muss, bevor eine Where-Einschränkung verwendet werden kann.
Die Dauer erklärt sich von selber, da zuerst über alle Jobs ermittelt werden muss, wer auf Lock wartet.
Nun basiert das API LockInfo (WRKOBJLCK) aber leider aus dem Zugriff über das Objekt und nicht den Job.
Somit muss ein Filter über den Job eben sämtliche Lock's ermitteln um dann den Job auszufiltern.

Das Ganze basiert ja auf den Standard-API's, die USRSPC's erstellen, Listen generieren und dann die Table-Functions bereitstellen.

Du must mal prüfen, ob es eine View für "Job-Sperren" gibt, die dir die Objekte und den Status auflistet. Diese kannst du dann auf "Wait" (Wartet) prüfen und hast somit das Objekt auf das gewartet wird.
Mit diesem kannst du dann die Record_Lock_Info nach Objekt durchsuchen, welcher Job den Status HELD auf dem Satz hat.

Zur Not kannst du ja die fehlende Table-Function selber schreiben:
https://www.ibm.com/support/knowledg...s/qwcrjblk.htm