midrange.com code scratchpad |
Name:
need help with QDBRJBRL (job record locks) API
|
Scriptlanguage:
Plain Text
|
Tabwidth:
4
|
Date:
01/23/2013 02:20:51 pm
|
IP:
Logged
|
|
Description:
ERRPRV = 256
ERRAVL = 0
ERRMSGID, ERRDTA are blank
LCKOSET = 16
LCKOSIZ = 36
LCKSAVAL, LCKSRTND are zero
|
Code:
- d KINAJOBSTK PR
- d JobName_in like(JobName)
- d JobUser_in like(JobUser)
- d JobNmbr_in like(JobNmbr)
-
- d KINAJOBSTK pi
- d JobName 10a
- d JobUser 10a
- d JobNmbr 6a
-
- d jobID ds
- d JobName@ 10a
- d JobUser@ 10a
- d JobNmbr@ 6a
-
- *
- d rcvJLcks pr ExtPgm('QDBRJBRL')
- d 32766a
- d 10i 0
- d 8a
- d 26a
- d 256a
- *
- d errDS ds
- d errPrv 10u 0 Inz(%Size(errDS))
- d errAvl 10u 0
- d errMSGID 7a
- d 1a Inz(x'00')
- d errDta 240a
-
- d LockFltr ds Based(lckf@)
- d FltrSiz 1 4b 0
- d FltrState 5 8b 0
- d FltrScop 9 12b 0
- d FltrStats 13 16b 0
- d FltrFile 17 26a
- d FltrMbrn 27 36a
- d FltrLibn 37 46a
- d FltrASPn 47 56a
-
- d ds Based(hdr2@)
- d lcksAval 1 4b 0
- d lcksRtnd 5 8b 0
- d lckOSet 9 12b 0
- d lckOsiz 13 16b 0
-
- d ds Based(det2@)
- d csFileNm 1 10a
- d csLibrNm 11 20a
- d csMembNm 21 30a
- d csLckSts 31 31a
- d csLckSte 32 32a
- d csLckRRN 33 36b 0
-
- d rcvrVar2 s 32766a
- d rcvrVarL2 s 10i 0 Inz(%Len(rcvrVar2))
- d fmt3 s 8a Inz('RJBL0100')
- d hdr2@ s * Inz(%Addr(rcvrVar2))
- d det2@ s *
- d lckf@ s *
- d $X s 3i 0 Inz(1)
-
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- /free
- *InLR = *On;
- JobName@ = JobName ;
- JobUser@ = JobUser ;
- JobNmbr@ = JobNmbr ;
-
- // retreve the locks
- rcvJLcks( rcvrVar2
- : rcvrVarL2
- : fmt3
- : jobID
- : errDS
- );
-
- If ERRAVL = 0 ;
- det2@ = hdr2@ + lckOSet;
-
- det2@ = det2@ + lckOSiz;
- EndIF ;
-
-
- Return;
- /end-free
- ****************** End of data *******************************************
|
|
|