I don't know if this is very elegant, but it matches up the record lock with
a user name:
0020 LOOP
0021 LOOP.COUNTER += 1
0022 * DISPLAY LOOP.COUNTER
0023 IF LOOP.COUNTER GT 100 THEN EXIT
0024 TRY.AGAIN = ""
0025 READVU FIELD1 FROM VOC.FILE,"VOCLIB",1 LOCKED
0026 USER.NO.WITH.LOCK = STATUS()
0027 EXECUTE "LIST.READU" CAPTURING LIST.READU.ARRAY
0028 LIST.READU.COUNT = DCOUNT(LIST.READU.ARRAY,@FM)
0029 FOR LIST.READU.CTR = 1 TO LIST.READU.COUNT
0030 USER.NO = FIELD(TRIM(LIST.READU.ARRAY<LIST.READU.CTR>),"
",4)
0031 IF USER.NO.WITH.LOCK = USER.NO THEN
0032 LOGIN.ID =
FIELD(TRIM(LIST.READU.ARRAY<LIST.READU.CTR>)," ",8)
0033 ITEM.ID =
FIELD(TRIM(LIST.READU.ARRAY<LIST.READU.CTR>)," ",9)
0034 ERROR.DISPLAY = "User ":USER.NO.WITH.LOCK:" ":
LOGIN.ID:" has the ITEM.ID of ":ITEM.ID:" locked."
0035 ERROR.DISPLAY.LENGTH = LEN(ERROR.DISPLAY)
0036 DISPLAY STR("-",ERROR.DISPLAY.LENGTH)
0037 DISPLAY "User ":USER.NO.WITH.LOCK:" ":LOGIN.ID:" has
the ITEM.ID of ":ITEM.ID:" locked."
0038 DISPLAY STR("-",ERROR.DISPLAY.LENGTH)
0039 DISPLAY LIST.READU.ARRAY<2>
0040 DISPLAY LIST.READU.ARRAY<3>
0041 DISPLAY LIST.READU.ARRAY<LIST.READU.CTR>
0042 END
0043 NEXT LIST.READU.CTR
0044 DISPLAY
0045 DISPLAY "Would you like to try again? ":
0046 INPUT TRY.AGAIN
0047 TRY.AGAIN = UPCASE(TRIM(TRY.AGAIN)[1,1])
0048 IF TRY.AGAIN NE "Y" THEN GO END.PROGRAM
0049 END THEN
0050 IF USER.NO.WITH.LOCK NE '' THEN
0051 DISPLAY "Lock released."
0052 END ELSE
0053 DISPLAY "To test this, ED VOC VOCLIB in another
session."
0054 END
0055 EXIT
0056 END
0057 REPEAT
-------
u2-users mailing list
[email protected]
To unsubscribe please visit http://listserver.u2ug.org/