|
Hiya
Apologies if this is not what is happening, it's just what it sounds like :)
Regards Evan Harris
Greg - have you considered handling this using a completely different method?
After the pgm processes each record in the batch file, mark the record as deleted (either change a flag value to "D", or actually delete the record). (I would recommend changing a flag value so you can easily view deleted records).
Later during the nightly or weekly maintenance runs, when the interactive system is down, purge the deleted records using a program and/or SQL and RGZPFM.
Then you will never see those pesky lock issues!!
-----Original Message----- From: Greg Wenzloff [mailto:GWenzloff@xxxxxxxxxxx] Sent: Wednesday, February 09, 2005 8:45 AM To: 'midrange-l@xxxxxxxxxxxx' Subject: How to tell if an object is in use?
I have a CLP that will process a file in batch then delete it. Sometimes a user first performs maintenance on the file but fails to exit the maintenance program leaving the file locked. The CLP which runs in batch then hangs.
I put the following code in the program that is about to submit the batch job:
/* SOMETIMES USERS ARE IN MAINTENANCE IN ANOTHER SESSION */ ALCOBJ OBJ((&FILEE *FILE *EXCL *FIRST)) WAIT(5) MONMSG MSGID(CPF0000) EXEC(DO) <<< send the user a message to get out of the file >>>> ENDDO DLCOBJ OBJ((&FILEE *FILE *EXCL *FIRST))
This ALCOBJ/DLCOBJ does not seem very elegant. Is there a better way to tell if an object is being used by someone?
Thanks, Greg
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.