Discussion:
COBOL INSPECT
(too old to reply)
Ed Zell MF
2008-01-16 17:00:57 UTC
Permalink
I have a DOS/VSE COBOL program that is abending when
it runs under CICS TS. It works fine under CICS 2.3.

DFHSR0001 CICS5 An abend (code 0C4/AKEA) has occurred
at offset X'0002CC10' in program UNLR .

So it looks like a protection exception (0C4) and we
are running with STGPROT=YES and RENTPGM=PROTECT.

The offset into the program points to module ILBDCMM0
and we have tracked that back to an INSPECT statement
in the program. I don't see where INSPECT is restricted
by CICS TS so I believe it should be OK.

The programmer says that they usually use EXAMINE in older
DOS/VS COBOL programs and INSPECT in COBOL/VSE. He is
checking in to that.

We are using the current LE libraries when linking the old
DOS/VS COBOL program, so that shouldn't be an issue.

My questions:

1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?

2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?


My next step is to turn off storage protection and try it again.

Any other suggestions? Thanks for any advice you can offer.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
i***@winwholesale.com
2008-01-16 17:15:50 UTC
Permalink
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?
I use INSPECT in COBOL/VSE and CICS/TS all the time -- including
ASCII-to-EBCDIC and EBCDIC-to-ASCII translation. I'm checking on your
first question.

Sincerely,

Dave Clark

WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Ed Zell MF
2008-01-16 17:21:23 UTC
Permalink
Post by i***@winwholesale.com
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?
I use INSPECT in COBOL/VSE and CICS/TS all the time -- including
ASCII-to-EBCDIC and EBCDIC-to-ASCII translation. I'm checking
on your first question.
Thanks Dave. This program is a DOS/VS COBOL program.

I ran another test and brought up CICS TS with STGPROT=NO. The
application runs fine. So it looks like a storage protection
issue using INSPECT and DOS/VS COBOL.

Any thoughts? I really want to run CICS TS with storage protection
turned on.

Ed
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Stephen Frazier
2008-01-16 17:43:27 UTC
Permalink
My thought is to only INSPECT storage that you own. :)

Old Cobol programmers seem to like to start looking at row 0 in a table or go to the next row past
the end of the table. They always claim that it makes the program simpler if they don't have to
check for special cases like first and last. :(

Newer Cobol's with subscript range check and CICS/TS with storage protect don't like that.
Post by Ed Zell MF
I ran another test and brought up CICS TS with STGPROT=NO. The
application runs fine. So it looks like a storage protection
issue using INSPECT and DOS/VS COBOL.
Any thoughts? I really want to run CICS TS with storage protection
turned on.
--
Stephen Frazier
Information Technology Unit
Oklahoma Department of Corrections
3400 Martin Luther King
Oklahoma City, Ok, 73111-4298
Tel.: (405) 425-2549
Fax: (405) 425-2554
Pager: (405) 690-1828
email: stevef%doc.state.ok.us
i***@winwholesale.com
2008-01-16 17:49:16 UTC
Permalink
Post by Ed Zell MF
This program is a DOS/VS COBOL program.
Oh. Every time I try to run a DOS/VS COBOL program under CICS/TS it
blows up. So, anymore, I just convert them to COBOL/VSE. This, of course,
includes converting EXAMINE to INSPECT.

Sincerely,

Dave Clark

WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Stephen Frazier
2008-01-16 18:04:58 UTC
Permalink
Most of our DOS/VS COBOL programs work fine under CICS/TS. As long as the programmer followed the
COBOL language rules.
Post by i***@winwholesale.com
Post by Ed Zell MF
This program is a DOS/VS COBOL program.
Oh. Every time I try to run a DOS/VS COBOL program under CICS/TS it
blows up. So, anymore, I just convert them to COBOL/VSE. This, of course,
includes converting EXAMINE to INSPECT.
Sincerely,
Dave Clark
WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
--
Stephen Frazier
Information Technology Unit
Oklahoma Department of Corrections
3400 Martin Luther King
Oklahoma City, Ok, 73111-4298
Tel.: (405) 425-2549
Fax: (405) 425-2554
Pager: (405) 690-1828
email: stevef%doc.state.ok.us
Wakser, David
2008-01-16 18:06:08 UTC
Permalink
Simple Ed - recompile with COBOL/VSE.

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 12:21 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Post by i***@winwholesale.com
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?
I use INSPECT in COBOL/VSE and CICS/TS all the time -- including
ASCII-to-EBCDIC and EBCDIC-to-ASCII translation. I'm checking
on your first question.
Thanks Dave. This program is a DOS/VS COBOL program.

I ran another test and brought up CICS TS with STGPROT=NO. The
application runs fine. So it looks like a storage protection
issue using INSPECT and DOS/VS COBOL.

Any thoughts? I really want to run CICS TS with storage protection
turned on.

Ed
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.
Tim Kessler
2008-01-16 18:29:34 UTC
Permalink
Ed,
From your symptoms, I would guess that the INSPECT is issuing a GETVIS
for a work area. This area would be in CICS protected storage.

One option that should work, would be to define the program to CICS as
EXECKEY(CICS).

Tim Kessler
800-795-4914 x6008
www.e-vse.com (Powered by Entree on VSE)
Post by Ed Zell MF
Post by i***@winwholesale.com
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?
I use INSPECT in COBOL/VSE and CICS/TS all the time -- including
ASCII-to-EBCDIC and EBCDIC-to-ASCII translation. I'm checking
on your first question.
Thanks Dave. This program is a DOS/VS COBOL program.
I ran another test and brought up CICS TS with STGPROT=NO. The
application runs fine. So it looks like a storage protection
issue using INSPECT and DOS/VS COBOL.
Any thoughts? I really want to run CICS TS with storage protection
turned on.
Ed Zell MF
2008-01-16 19:29:40 UTC
Permalink
Post by Tim Kessler
From your symptoms, I would guess that the INSPECT is issuing a
GETVIS for a work area. This area would be in CICS protected storage.
One option that should work, would be to define the program to CICS
as EXECKEY(CICS).
Tim,

Thanks for the suggestion. This does indeed fix the problem.

Does that mean the system is working the way it is supposed to?

If you use INSPECT from a DOS/VS COBOL program under CICS TS
that it requires the program to be EXECKEY(CICS)?

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
David Stuart
2008-01-16 19:36:31 UTC
Permalink
Ed,

If it works just fine with EXECKEY(CICS), that indicates that the INSPECT is looking at storage that does not 'belong' to the application. Which is why the transaction was being canceled with Storage Protect errors.

I would take a close look at what it is INSPECTing.


Dave



Dave Stuart
Prin. Info. Systems Support Analyst
County of Ventura, CA
805-662-6731
Post by Tim Kessler
From your symptoms, I would guess that the INSPECT is issuing a
GETVIS for a work area. This area would be in CICS protected storage.
One option that should work, would be to define the program to CICS
as EXECKEY(CICS).
Tim,

Thanks for the suggestion. This does indeed fix the problem.

Does that mean the system is working the way it is supposed to?

If you use INSPECT from a DOS/VS COBOL program under CICS TS
that it requires the program to be EXECKEY(CICS)?

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Randy Evans
2008-01-16 19:43:55 UTC
Permalink
Below is verbiage from an IBM APAR discussing the problem
with DOS/VS COBOL INSPECT in CICS. The issue discussed
(use of VSE GETVIS) would not be resolved by running
the code under CICS/TS vs. CICS/VSE. Using EXECKEY(CICS)
may allow the program to execute under CICS/TS but you
would still leave yourself open to the GETVIS issue
described here.

Randy Evans, Viaserv, Inc.

====================================================
II06138: COBOL CAUSES GETVIS FAILURE IN VSE/ESA UNDER CICS.

APAR status
Closed as canceled.

Error description
568602601 RCA1 RCA2 RCA3 5746XX300 RA69 RA71 R170 R210.
MSG0P93I MSG0P96I MSG4228I and other indications that partition
GETVIS is exhausted has been observed when COBOL programs using
the CICS restricted verbs and options. This has been expecially
pervasive when VSE/ESA and CICS/VSE are installed. The
restricted COBOL options and verbs are listed under COBOL
considerations in the Application Programming Guide. DOS/VS
COBOL running under CICS cannot use any facility that directly
does VSE GETVIS because COBOL programs cannot go through
STOP RUN processing under CICS, so the acquired GETVIS is never
freed. The COBOL options that obtain GETVIS are: TRACE, COUNT,
FLOW, STATE and SYMDMP. The COBOL Verbs that do this are:
DISPLAY, EXHIBIT, INSPECT, STRING and UNSTRING. Note that the
EXAMINE and TRANSFORM verbs do not cause this problem and an
APAR is pending to remove them from the list.
If additional symptoms of this problem are observed, please
inform CICS Level 2 so that they can be added to this APAR.
* Some of the COBOL restricted verbs can be found in the
programs by using LIBR LIST and looking for eyecatchers
of ILBDDBG and ILBDCMM. If these are detected in the COBOL
programs, then it is likely that a restricted VERB such as
INSPECT or restricted option such as STATE or FLOW is
being used.
ILBDCMM is the COBOL STORAGE MANAGEMENT MODULE, and requests
GETVIS.

====================================================
Post by Ed Zell MF
Does that mean the system is working the way it is supposed to?
If you use INSPECT from a DOS/VS COBOL program under CICS TS
that it requires the program to be EXECKEY(CICS)?
Ed Zell MF
2008-01-16 19:58:25 UTC
Permalink
Post by Randy Evans
Below is verbiage from an IBM APAR discussing the problem
with DOS/VS COBOL INSPECT in CICS. The issue discussed
(use of VSE GETVIS) would not be resolved by running
the code under CICS/TS vs. CICS/VSE. Using EXECKEY(CICS)
may allow the program to execute under CICS/TS but you
would still leave yourself open to the GETVIS issue
described here.
Thanks Randy. That is very interesting to know. Now I just
need to figure out how to handle the problem. It would be
easy if programming reported to me, but that isn't the case!

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Wakser, David
2008-01-16 20:16:00 UTC
Permalink
Ed:

Let me make this clearer: if you choose to IGNORE the
prohibition of using INSPECT in an FCOBOL program, AT PRESENT you can,
at times, "get around" the abend problem by using EXECKEY(CICS).
However, don't be surprised if this, at some time, causes CICS problems!
After all, they didn't prohibit its use just to be mean!

Convert the program to COBOL/VSE and run the way it is SUPPOSED
to be run - with proper storage protection!

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 2:29 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Post by Tim Kessler
From your symptoms, I would guess that the INSPECT is issuing a GETVIS
for a work area. This area would be in CICS protected storage.
One option that should work, would be to define the program to CICS as
EXECKEY(CICS).
Tim,

Thanks for the suggestion. This does indeed fix the problem.

Does that mean the system is working the way it is supposed to?

If you use INSPECT from a DOS/VS COBOL program under CICS TS
that it requires the program to be EXECKEY(CICS)?

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.
Ed Zell MF
2008-01-16 20:22:48 UTC
Permalink
Post by Wakser, David
Convert the program to COBOL/VSE and run the way it is SUPPOSED
to be run - with proper storage protection!
David,

I would like nothing more than for programming to convert from
the old, unsupported DOS/VS COBOL compiler to the new COBOL/VSE
compiler. I understand that the effort is usually trivial or
at least not that difficult.

However, I don't get to make that call and I can't convince
management that this is best. I am told that they don't have
time to do the extensive testing that would be required by
converting. I don't agree with this logic, but I can't fight
it either.

Thanks for the help. I always appreciate it.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Wakser, David
2008-01-16 20:28:12 UTC
Permalink
Then they need to adhere to FCOBOL rules - no INSPECT!

I understand that they don't report to you, but I would NEVER set the
EXEC key to CICS because of a lazy staff - show them the manual and let
them fix the problems!

After all, it's only been a handful of years since we KNOW these items
cause problems in CICS/TS! :)

For a fee, I'll come and "fix" all of those programs! After working with
so many in the past months, I'm getting good at it!

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 3:22 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Convert the program to COBOL/VSE and run the way it is SUPPOSED to be
run - with proper storage protection!
David,

I would like nothing more than for programming to convert from
the old, unsupported DOS/VS COBOL compiler to the new COBOL/VSE
compiler. I understand that the effort is usually trivial or
at least not that difficult.

However, I don't get to make that call and I can't convince
management that this is best. I am told that they don't have
time to do the extensive testing that would be required by
converting. I don't agree with this logic, but I can't fight
it either.

Thanks for the help. I always appreciate it.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.
Ed Zell MF
2008-01-16 20:40:19 UTC
Permalink
Post by Wakser, David
I understand that they don't report to you, but I would NEVER
set the EXEC key to CICS because of a lazy staff - show them
the manual and let them fix the problems!
You are preaching to the choir my friend!

The problem is that I have been trying to get us to CICS TS
for a long, long time. I finally have them using it in test
and they run into this issue two days into it. Now you and I
both know what the real problem is, but to them, it is a
CICS TS issue and that is what is broken.

I need a cold one and some time to think about this.......

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Wakser, David
2008-01-16 20:47:00 UTC
Permalink
I guess I should be happy I'm not in your position tonight! :)

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 3:40 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Post by Wakser, David
I understand that they don't report to you, but I would NEVER set the
EXEC key to CICS because of a lazy staff - show them the manual and
let them fix the problems!
You are preaching to the choir my friend!

The problem is that I have been trying to get us to CICS TS for a long,
long time. I finally have them using it in test and they run into this
issue two days into it. Now you and I both know what the real problem
is, but to them, it is a CICS TS issue and that is what is broken.

I need a cold one and some time to think about this.......

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.

i***@winwholesale.com
2008-01-16 17:23:43 UTC
Permalink
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
Does this help any? This is the code generated for one of my
ASCII-to-EBCDIC translations:

L 2,92(0,13) TGTFIXD+92
L 15,68(0,2) V(IGZCIN1 )
LA 1,2869(0,10) PGMLIT AT +2781
BALR 14,15

Sincerely,

Dave Clark

WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Billy R. Bingham
2008-01-16 17:25:30 UTC
Permalink
Ed,

I compiled a DOS/VS COBOL program that didn't have the INSPECT statement in it and ILBDCMM0 was LNKEDTed in the program.


Billy
Post by Ed Zell MF
I have a DOS/VSE COBOL program that is abending when
it runs under CICS TS. It works fine under CICS 2.3.
DFHSR0001 CICS5 An abend (code 0C4/AKEA) has occurred
at offset X'0002CC10' in program UNLR .
So it looks like a protection exception (0C4) and we
are running with STGPROT=YES and RENTPGM=PROTECT.
The offset into the program points to module ILBDCMM0
and we have tracked that back to an INSPECT statement
in the program. I don't see where INSPECT is restricted
by CICS TS so I believe it should be OK.
The programmer says that they usually use EXAMINE in older
DOS/VS COBOL programs and INSPECT in COBOL/VSE. He is
checking in to that.
We are using the current LE libraries when linking the old
DOS/VS COBOL program, so that shouldn't be an issue.
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?
My next step is to turn off storage protection and try it again.
Any other suggestions? Thanks for any advice you can offer.
Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.
CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Ed Zell MF
2008-01-16 18:30:33 UTC
Permalink
Post by Billy R. Bingham
I compiled a DOS/VS COBOL program that didn't have the INSPECT
statement in it and ILBDCMM0 was LNKEDTed in the program.
I just got back from lunch and was going to try that out. Thanks
for saving me some time Billy, I do appreciate it.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Kevin Corkery
2008-01-16 17:57:10 UTC
Permalink
Everytime is a strong statement. If no restricted verbs were utilized (although at times STRING is tolerated) then the old DOS/VS programs should work. Also, it depends on the level of storage protection in effect and how your programs are linked. In any case, 'tis best to convert as much as possible.

--
Kevin Corkery
Independent Consultant
Voorhees, New Jersey

-------------- Original message ----------------------
Post by i***@winwholesale.com
Post by Ed Zell MF
This program is a DOS/VS COBOL program.
Oh. Every time I try to run a DOS/VS COBOL program under CICS/TS it
blows up. So, anymore, I just convert them to COBOL/VSE. This, of course,
includes converting EXAMINE to INSPECT.
Sincerely,
Dave Clark
WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Wakser, David
2008-01-16 18:09:21 UTC
Permalink
I agree - considering that I have HUNDREDS of FCOBOL programs running
under CICS/TS at present, with nary a problem. The ONLY ones I needed to
fix were those using verbs that were ALWAYS documented as being illegal
under CICS (pre-"TS").

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Kevin Corkery
Sent: Wednesday, January 16, 2008 12:57 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT

Everytime is a strong statement. If no restricted verbs were utilized
(although at times STRING is tolerated) then the old DOS/VS programs
should work. Also, it depends on the level of storage protection in
effect and how your programs are linked. In any case, 'tis best to
convert as much as possible.

--
Kevin Corkery
Independent Consultant
Voorhees, New Jersey

-------------- Original message ----------------------
Post by i***@winwholesale.com
Post by Ed Zell MF
This program is a DOS/VS COBOL program.
Oh. Every time I try to run a DOS/VS COBOL program under CICS/TS it
blows up. So, anymore, I just convert them to COBOL/VSE. This, of course,
includes converting EXAMINE to INSPECT.
Sincerely,
Dave Clark
WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
i***@winwholesale.com
2008-01-16 18:23:48 UTC
Permalink
Post by Kevin Corkery
Everytime is a strong statement.
Not in my case. ;-) It is quite literal. I haven't bothered
chasing it down as to ultimate cause. I just convert 'em. It would take
more time to analyze for ultimate cause than the, at most, 15 minutes I
spend converting them. One could argue that a one-time analysis might
reveal a configuration issue rather than an actual DOS/VSE COBOL coding
issue -- but I prefer converting them anyway. ;-)

Sincerely,

Dave Clark

WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Wakser, David
2008-01-16 18:04:23 UTC
Permalink
Look at the PHASE to see if it was compiled with FCOBOL or COBOL/VSE.
FCOBOL EXAMINE or INSPECT (or CURRENT-DATE or TIME-OF-DAY) will all work
(though clearly prohibited in the IBM manuals) in CICS/VSE but will
abend in CICS/TS.

I have been through this so many times recently, I can recite it in my
sleep. If you want additional help, contact me off-list.

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 12:00 PM
To: VSE Discussion List
Subject: COBOL INSPECT

I have a DOS/VSE COBOL program that is abending when
it runs under CICS TS. It works fine under CICS 2.3.

DFHSR0001 CICS5 An abend (code 0C4/AKEA) has occurred
at offset X'0002CC10' in program UNLR .

So it looks like a protection exception (0C4) and we
are running with STGPROT=YES and RENTPGM=PROTECT.

The offset into the program points to module ILBDCMM0
and we have tracked that back to an INSPECT statement
in the program. I don't see where INSPECT is restricted
by CICS TS so I believe it should be OK.

The programmer says that they usually use EXAMINE in older
DOS/VS COBOL programs and INSPECT in COBOL/VSE. He is
checking in to that.

We are using the current LE libraries when linking the old
DOS/VS COBOL program, so that shouldn't be an issue.

My questions:

1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?

2) If INSPECT is not restricted, shouldn't it run OK in CICS TS?


My next step is to turn off storage protection and try it again.

Any other suggestions? Thanks for any advice you can offer.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.
Ed Zell MF
2008-01-16 18:29:02 UTC
Permalink
Post by Wakser, David
FCOBOL EXAMINE or INSPECT (or CURRENT-DATE or TIME-OF-DAY)
will all work (though clearly prohibited in the IBM manuals)
in CICS/VSE but will abend in CICS/TS.
I have been through this so many times recently, I can recite
it in my sleep.
David,

Can you please point me to the documentation that says not
to use INSPECT in a CICS COBOL program? I didn't find the
restriction, but I probably didn't look everywhere I should.

Thanks.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Wakser, David
2008-01-16 18:40:25 UTC
Permalink
Ed:

I no longer have the manuals available, but it was either in the
COBOL Programmer's Guide or the CICS/VSE Application Reference manual -
or perhaps in both!

The list of "taboo" verbs included: EXAMINE, CURRENT-DATE,
INSPECT, OPEN, and many others. Many of them actually worked under
CICS/VSE (like CURRENT-DATE - which is why so many programmers used it)
but fails under CICS/TS.

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 1:28 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Post by Wakser, David
FCOBOL EXAMINE or INSPECT (or CURRENT-DATE or TIME-OF-DAY)
will all work (though clearly prohibited in the IBM manuals)
in CICS/VSE but will abend in CICS/TS.
I have been through this so many times recently, I can recite
it in my sleep.
David,

Can you please point me to the documentation that says not
to use INSPECT in a CICS COBOL program? I didn't find the
restriction, but I probably didn't look everywhere I should.

Thanks.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.
Ed Zell MF
2008-01-16 19:14:17 UTC
Permalink
Post by Wakser, David
I no longer have the manuals available, but it was either in the
COBOL Programmer's Guide or the CICS/VSE Application Reference
manual - or perhaps in both!
The list of "taboo" verbs included: EXAMINE, CURRENT-DATE,
INSPECT, OPEN, and many others. Many of them actually worked
under CICS/VSE (like CURRENT-DATE - which is why so many
programmers used it) but fails under CICS/TS.
That is interesting. Here is what I found in the manual. Neither
EXAMINE or INSPECT is listed as restricted. This comes from the
CICS Application Programming Guide SC33-1657-03:

Do not use the following statements:

ACCEPT READ
CALL 'literal' with DYNAM RERUN
CLOSE REWRITE
DELETE SORT
DISPLAY START
MERGE STOP 'literal'
OPEN WRITE
READ

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
r***@aol.com
2008-01-16 20:05:33 UTC
Permalink
David,

Although CURRENT-DATE is on your list (I think IBM's too) as far as I
know using it in CICS/VSE programs
was NOT a problem. Also, using CURRENT-DATE, in a CICS/TS COBOL/VSE
program, doesn't cause an abend. The program simply won't compile.
However, you can use MOVE FUNCTION CURRENT-DATE TO YADA-YADA and it
compiles just fine.


-----Original Message-----
From: Wakser, David <***@infocrossing.com>
To: VSE Discussion List <vse-***@Lehigh.EDU>
Sent: Wed, 16 Jan 2008 1:39 pm
Subject: RE: COBOL INSPECT



Ed:

I no longer have the manuals available, but it was either in the
COBOL Programmer's Guide or the CICS/VSE Application Reference manual -
or perhaps in both!

The list of "taboo" verbs included: EXAMINE, CURRENT-DATE,
INSPECT, OPEN, and many others. Many of them actually worked under
CICS/VSE (like CURRENT-DATE - which is why so many programmers used it)
but fails under CICS/TS.

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 1:28 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Post by Wakser, David
FCOBOL EXAMINE or INSPECT (or CURRENT-DATE or TIME-OF-DAY)
will all work (though clearly prohibited in the IBM manuals)
in CICS/VSE but will abend in CICS/TS.
I have been through this so many times recently, I can recite
it in my sleep.
David,

Can you please point me to the documentation that says not
to use INSPECT in a CICS COBOL program? I didn't find the
restriction, but I probably didn't look everywhere I should.

Thanks.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.


________________________________________________________________________
More new features than ever. Check out the new AOL Mail ! -
http://webmail.aol.com
Wakser, David
2008-01-16 20:22:01 UTC
Permalink
Yes, Bob, I am aware of the methods used to modify FCOBOL CICS programs
so that they will compile under COBOL/VSE and run correctly under
CICS/TS. In fact, I recently finished modifying about 130 such programs,
which used: CURRENT-DATE, TIME-OF-DAY, EXAMINE, INSPECT, DISPLAY, etc.
very liberally. In fact, even under COBOL/VSE, CURRENT-DATE was a
problem because it caused a GETVIS leak. I learned that lesson about 15
years ago!

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of ***@aol.com
Sent: Wednesday, January 16, 2008 3:05 PM
To: VSE Discussion List
Subject: Re: COBOL INSPECT

David,

Although CURRENT-DATE is on your list (I think IBM's too) as far as I
know using it in CICS/VSE programs was NOT a problem. Also, using
CURRENT-DATE, in a CICS/TS COBOL/VSE program, doesn't cause an abend.
The program simply won't compile.
However, you can use MOVE FUNCTION CURRENT-DATE TO YADA-YADA and it
compiles just fine.


-----Original Message-----
From: Wakser, David <***@infocrossing.com>
To: VSE Discussion List <vse-***@Lehigh.EDU>
Sent: Wed, 16 Jan 2008 1:39 pm
Subject: RE: COBOL INSPECT



Ed:

I no longer have the manuals available, but it was either in the
COBOL Programmer's Guide or the CICS/VSE Application Reference manual -
or perhaps in both!

The list of "taboo" verbs included: EXAMINE, CURRENT-DATE, INSPECT,
OPEN, and many others. Many of them actually worked under CICS/VSE (like
CURRENT-DATE - which is why so many programmers used it) but fails under
CICS/TS.

David Wakser

-----Original Message-----
From: owner-vse-***@Lehigh.EDU [mailto:owner-vse-***@Lehigh.EDU] On Behalf
Of Ed Zell MF
Sent: Wednesday, January 16, 2008 1:28 PM
To: VSE Discussion List
Subject: RE: COBOL INSPECT
Post by Wakser, David
FCOBOL EXAMINE or INSPECT (or CURRENT-DATE or TIME-OF-DAY) will all
work (though clearly prohibited in the IBM manuals) in CICS/VSE but
will abend in CICS/TS.
I have been through this so many times recently, I can recite it in my
sleep.
David,

Can you please point me to the documentation that says not
to use INSPECT in a CICS COBOL program? I didn't find the
restriction, but I probably didn't look everywhere I should.

Thanks.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
notify the sender and delete this e-mail from your system.


________________________________________________________________________
More new features than ever. Check out the new AOL Mail ! -
http://webmail.aol.com
i***@winwholesale.com
2008-01-16 18:04:23 UTC
Permalink
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
Have to compiled the program with // OPTION LISTX to see what is the
generated code for the statement?

Sincerely,

Dave Clark

WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Ed Zell MF
2008-01-16 18:31:25 UTC
Permalink
Post by i***@winwholesale.com
Have to compiled the program with // OPTION LISTX to see what is the
generated code for the statement?
No, but that is a good idea. Thanks Dave.

Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
David Stuart
2008-01-16 18:49:53 UTC
Permalink
If memory serves (questionable, some days), ILBDCMM0 is the FCOBOL Memory Manager...


DAve




Dave Stuart
Prin. Info. Systems Support Analyst
County of Ventura, CA
805-662-6731
Post by Ed Zell MF
1) Is there a way to confirm that INSPECT for DOS/VS COBOL
will call ILBDCMM0?
Have to compiled the program with // OPTION LISTX to see what is the
generated code for the statement?

Sincerely,

Dave Clark

WinWholesale Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
Kevin Corkery
2008-01-16 19:26:51 UTC
Permalink
Ed ....

See http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHVP309/1.2.1.1?SHELF=DFHVSH1C&DT=20000113152549&CASE=

Section 1.2.1.1 DOS/VS COBOL

I think you're looking at a newer book that assumes either COBOL II or LE/VSE COBOL (nee, COBOL for VSE)

--
Kevin Corkery
Independent Consultant
Voorhees, New Jersey

-------------- Original message ----------------------
Post by Ed Zell MF
Post by Wakser, David
I no longer have the manuals available, but it was either in the
COBOL Programmer's Guide or the CICS/VSE Application Reference
manual - or perhaps in both!
The list of "taboo" verbs included: EXAMINE, CURRENT-DATE,
INSPECT, OPEN, and many others. Many of them actually worked
under CICS/VSE (like CURRENT-DATE - which is why so many
programmers used it) but fails under CICS/TS.
That is interesting. Here is what I found in the manual. Neither
EXAMINE or INSPECT is listed as restricted. This comes from the
ACCEPT READ
CALL 'literal' with DYNAM RERUN
CLOSE REWRITE
DELETE SORT
DISPLAY START
MERGE STOP 'literal'
OPEN WRITE
READ
Ed Zell
Illinois Mutual Life
(309) 674-8255 x-107
.
CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error, notify
the sender and delete this e-mail from your system.
Ed Zell MF
2008-01-16 19:49:07 UTC
Permalink
Post by Kevin Corkery
See http://publibz.boulder.ibm.com/cgi-
bin/bookmgr_OS390/BOOKS/DFHVP309/1.2.1.1?SHELF=DFHVSH1C
&DT=20000113152549&CASE=
Section 1.2.1.1 DOS/VS COBOL
I think you're looking at a newer book that assumes either
COBOL II or LE/VSE COBOL (nee, COBOL for VSE)
Kevin,

You are exactly right on this one. I was looking at the
CICS TS manual.

What is going to be tough is that none of the DOS/VS COBOL
manuals we have that "APAR text" included. Programming is
going to claim they didn't know they weren't supposed to use
them :(

At least the mystery is solved. Plus Tim Kessler gave me a
work around to use EXECKEY(CICS) for the offending programs.
Not ideal, but I may not have a choice.


Ed Zell
Illinois Mutual Life
(309) 674-8255 x107
.


CONFIDENTIALITY: This e-mail (including any attachments) may contain confidential, proprietary and privileged information, and unauthorized disclosure or use is prohibited. If you receive this e-mail in error, notify the sender and delete this e-mail from your system.
Loading...