ISN of last ADABAS-call

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?



No chance, afaik, and in many cases an Adabas call will not be associated with a specific ISN anyway.

You’d need to capture and retrieve it yourself using SYSRDC.

Sorry, this is OpenSystems, no SYSRDC available …


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. :frowning:
Of course in many cases, it’s not possible anyway.

Thanks so far!

What about using *ISN …

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…

*ISN is available in ‘ON ERROR’. Please try following:

get employees 12223
display name *isn
on error
write 'on-error' *error *isn

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).