Page 1 of 1

Problem with level-88 item

PostPosted: Sun Dec 23, 2012 10:06 pm
by oerdgie
Hey folks,

I have an IMS message-driven program.
In the Working Storage I declared a level-88 item like this :

05 ACCESS PIC X(02).
88 INSERT VALUE 'I '.
88 UPDATE VALUE 'U '.
88 DELETE VALUE 'D '.

When I set the level-88 INSERT item in the Procedue Devision to TRUE, I would expect, the ACCESS item contais the value 'I '.
But it contains sometimes '30' or '79', not every time, sometimes.
No idea why... can anybode help me ?

Re: Problem with level-88 item

PostPosted: Sun Dec 23, 2012 10:23 pm
by Robert Sample
It sounds like you may have storage overlay problem. However, with what you have posted there is not much we can say.

Re: Problem with level-88 item

PostPosted: Sun Dec 23, 2012 10:24 pm
by enrico-sorichetti
just decide where You want Your questions answered
somebody will delete the useless copy..
( the topic on the other forum has been unlocked )

Re: Problem with level-88 item

PostPosted: Sun Dec 23, 2012 10:37 pm
by oerdgie
A storage overlay problem... yes, could be. I think, maybe there ist a problem with the literal pool. But what can I do ??
What information you need additional to help me ?

Re: Problem with level-88 item

PostPosted: Mon Dec 24, 2012 12:04 am
by BillyBoyo
You need to post the full definition of which the 05 is only a small part.

It is unlikely that anything is wrong with the literal pool, so look for other things first.

How did you discover that the other values exist?

Re: Problem with level-88 item

PostPosted: Mon Dec 24, 2012 12:45 am
by Robert Sample
The first thing for you to do is accept that if you code
SET INSERT TO TRUE
then the value of variable ACCESS is 'I ' -- period. There is nothing that will change this fact.

The second thing for you to do is to accept that if you are doing
DISPLAY ACCESS
after the previous code, and the value is NOT 'I ' then something in your program has changed that value. This, too, is a fact.

The third thing for you to do is to start looking at your code for where you change the value of ACCESS. It almost certainly will not be easy to locate, but that is the nature of storage violations. You might try using compiler option SSRANGE for a start.

Re: Problem with level-88 item

PostPosted: Mon Dec 24, 2012 3:16 am
by oerdgie
Thanks for the answer, I will try the compiler option SSRANGE.
As soon as I try SSRANGE, I give you an answwer :)

Re: Problem with level-88 item

PostPosted: Mon Dec 24, 2012 3:47 am
by BillyBoyo
And when you post something, post the names actually used, please. ACCESS, INSERT and DELETE are all Reserved Words.

If you don't post the original, unchanged, source, then we end up diagnosing your typos.