× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Well spotted, Joel. All of our file/record layouts are contained in
copybooks. With rare exceptions, all new fields are added at the end. Now
then, we have 2 major cases and sub-cases:

I. NEW FIELDS DO NOT EXHAUST THE FINAL FILLER (filler is simply reduced)
a) None of the new fields are numeric. Although we should, we don't always
re-compile ALL the programs that reference the file/record copybook. Only
the program(s) that deal with the new fields are changed.
b) At least one of the new fields is numeric. Here, we have to watch out for
the dreaded MCH1202 stop for an uninitialized numeric data item. We simply
have to re-compile all pgms that ref the copybook because if we didn't, as
sure as night follows day, some pgm that refs the copybook will IN FUTURE
ref the new numeric field. The assigned programmer (possibly not even with
us when the added numeric field change was done) assumes that all pgms that
ref the copybook were re-compiled. If this hasn't happened and the record
layout is passed as a parameter to a pgm which hasn't been re-compiled, the
called pgm doesn't know about the new numeric field and we can get the
dreaded MCH1202. Hope this is clear.

II. NEW FIELDS CAUSE THE RECORD LENGTH TO INCREASE
In this situation, we have conversion pgms which all our customers must run
when running on or above the release in which the file length was extended.
These pgms are also retained and automatically invoked when a customer
upgrades from a release below the one in which the change was made to that
release or higher. And yes, in this case we do have to do a re-compile all
all pgms that ref the copybook.

As to expanding a field in the middle of a format, we do indeed have this
happen (a recent case has been to expand a field from X(7) to X(15)) but we
simply replace the old field by a filler (X(7) in this case) and add the new
expanded X(15) field at the end of the file. A conversion pgm is necessary.

On your last point, to my knowledge, our customers have never complained
about slow response time for the interactive part of our system (a financial
application based on COBOL indexed files). Hope this clarifies matters.


-----Original Message-----
From: Stone, Joel [mailto:StoneJ@GourmetAward.com]
Sent: 16 August 2002 16:58
To: 'cobol400-l@midrange.com'
Subject: RE: OPM vs. ILE


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
--
[ Picked text/plain from multipart/alternative ]
Does separating the file handler from the application program allow you to
add a field to the end of a file, and not force a re-compile (except of the
file handler pgm)?

Can you add a field to the middle of a format or expand an old field in the
middle of a format and still not recompile all pgms that touch the file
(except of the file handler pgm)?

In OPM, wouldnt this slow things down dramatically because of sloy dynamic
calls?

Thanks

-----Original Message-----
From: David Silber [mailto:david.silber@hpdsoftware.com]
Sent: Friday, August 16, 2002 3:26 AM
To: 'COBOL400-L@midrange.com'
Subject: Re: OPM vs. ILE


A couple of comments in response to Jim Essinger's contribution.

(1) Pedantic -- I believe the O in OPM stands for Original, not Old
(2) You don't need ILE to create a pgm that does all your file I/O. We use
OPM COBOL and from the beginning designed a high-level I/O handler which all
'application' pgms call and a low-level handler (containing the Select
clause etc.) that does the actual I/O. Only the high-level handler calls the
low-level handler, thus insulating regular programs from the real I/O. This
has served us well because record sizes frequently increase and when they
do, we only have to change the high- and low-level handlers.
(3) Pointers - we are using Pointers, though in a limited way, in OPM COBOL.
(4) In my view, it would be a very unusual company that could take advantage
of C, COBOL, CL and RPG to warrant putting an application under ILE. I could
see a combination of 2, maybe 3 but not more. Having said all that, I'd
still like to go to ILE COBOL because that's the only one that is going to
support parts of the COBOL 2002 standard. But that decision isn't mine to
take.

David Silber, Quality Consultant
HPD Software Ltd



This email and any attachments are strictly confidential and are intended
solely for the addressee. If you are not the intended recipient you must
not disclose, forward, copy or take any action in reliance on this message
or its attachments. If you have received this email in error please notify
the sender as soon as possible and delete it from your computer systems.
Any views or opinions presented are solely those of the author and do not
necessarily reflect those of HPD Software Limited or its affiliates.

 At present the integrity of email across the internet cannot be guaranteed
and messages sent via this medium are potentially at risk.  All liability
is excluded to the extent permitted by law for any claims arising as a re-
sult of the use of this medium to transmit information by or to
HPD Software Limited or its affiliates.


_______________________________________________
This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing list
To post a message email: COBOL400-L@midrange.com
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/cgi-bin/listinfo/cobol400-l
or email: COBOL400-L-request@midrange.com
Before posting, please take a moment to review the archives
at http://archive.midrange.com/cobol400-l.
_______________________________________________
This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing list
To post a message email: COBOL400-L@midrange.com
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/cgi-bin/listinfo/cobol400-l
or email: COBOL400-L-request@midrange.com
Before posting, please take a moment to review the archives
at http://archive.midrange.com/cobol400-l.


This email and any attachments are strictly confidential and are intended
solely for the addressee. If you are not the intended recipient you must
not disclose, forward, copy or take any action in reliance on this message
or its attachments. If you have received this email in error please notify
the sender as soon as possible and delete it from your computer systems.
Any views or opinions presented are solely those of the author and do not
necessarily reflect those of HPD Software Limited or its affiliates.

 At present the integrity of email across the internet cannot be guaranteed
and messages sent via this medium are potentially at risk.  All liability
is excluded to the extent permitted by law for any claims arising as a re-
sult of the use of this medium to transmit information by or to
HPD Software Limited or its affiliates.




As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 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.