For technical information in case of an error, I want to find out the ADABAS database number, the file number and the ISN of the last ADABAS call. Database and file-number is no problem. I’m using USR2010N for that.
But what about the ISN? Any ideas?
Of cource. But it would be very usefull to know the ISN (or the first ISN of a list) if it is available.
Example: I want to display Database-Number, File-Number, ISN, *ETID, etc. by using an *ERROR-TA-Program. So the only chance I got is to move the ISN to a global variable before every read/find/histogram in every Natural-module.
Of course in many cases, it’s not possible anyway.
If I use *ISN in an ERROR-TA-Program, a NAT0285 will occur during compilation. *ISN is only valid with a properly associated READ, FIND, etc.
So it’s impossible to use it in ON-ERROR-Blocks or ERROR-TA-Programs. That’s why I’m searching for another way…
Interestingly enough, that information is available via TEST DBLOG. I presume you want this for a production system, not a system being developed. If it is a development system, then TEST DBLOG would be the way to go.
For a production system, well, probably not pretty. Of course, if the system is “small enough” (whatever that means, probably only a small number (couple of hundred) of Adabas calls per execution) you could probably still use DBLOG.
Maybe a proposed Change Enhancement. When running a LARGE production system, keep, say, the last 100 Adabas calls.
Thanks for this idea, but you’re right: It’s a production system (> 1000 user, Millions of ADABAS calls per day).
Are you talking about ADACLP? Unfortunately, LOGGING/ADACLP is a red rag to our database administrator. It produces a lot of data and causes a noticeable loss of performance.
Maybe I’ll try to work with it. But first I have to talk to our admin…
In your example *ISN is implicitely related to the GET statement. The question was to get the ISN of the most recent executed adabas call. This must not necessarily be the last coded call.
If you do not have any adabas calls in your program (e.g. in a ERROR-TA), *ISN is not available (try your example without the GET and DISPLAY but with an ASSIGN *ERROR=82 instead).