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


  • Subject: RE: Resolution to my MCH3601 problem
  • From: "McCallion, Martin" <MccalliM@xxxxxxxxxxxxxxxx>
  • Date: Thu, 31 May 2001 11:48:58 +0100

Simon Coulter  wrote:

> I was about to write very much the same thing.  It bears 
> repeating.  If you 
> write your code correctly you are shielded from API changes 
> unless you actually 
> care about the newly available data.  The APIs are designed 
> to be extndable in 
> an upwardly compatible manner.

I'm not so sure.  We had a very similar situation recently, but between
V4R3 and V4R5, and for the list fields API.  As I understand it, both we
and David were using the APIs as recommended: get the generic header
from the user space; start reading your data using the start of data
offset and entry length  from the generic header; continue reading it by
incrementing the offset by the entry length.

Our program was compiled at V4R3 using the relevant /COPY from QSYSINC
for the data structure to receive the returned data; all perfectly
standard stuff.  But when we ran it at V4R5 we got the the dreaded
MCH3601.  Recompiling at V4R5 fixed it, even with a target release of
V4R3, because the V4R5 QSYSINC member is picked up, and it defines the
longer data structure.  It can also be fixed by specifying the length to
retrieve as the length of the V4R3 data strucuture (though you still
have to increment by the entry length, of course).

So: are we doing something wrong?  Are IBM doing something wrong?  Are
APIs just not as future-proof as we're told?  I think that always
specifying the length to retrieve as %len(data-structure) would prevent
it ever happening, but I don't think that's documented in the
recommended procedure.

Cheers,

Martin.
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

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.