The DSPPGMREF command doc notes the following:
"Entries can be added as the ILE program or service program is updated
using UPDPGM or UPDSRVPGM, but entries are never removed."
As I understand it, UPDSRVPGM has no way of knowing that the original file
reference was completely replaced. You could conceivably have a module
that still makes use of the original format. Thus the multiple entries.
Everything, ie. level checks, still works as they should. You
can verify that yourself by OVRBDF to an older version of the file before
calling a program that makes use of your updated *SRVPGM.
On Wed, Apr 3, 2013 at 9:31 AM, Jeff Crosby <jlcrosby@xxxxxxxxxxxxxxxx>wrote:
I just stumbled onto something today. Apparently an UPDSRVPGM does not
update the file record format level ID within the service program object on
any files used.
I changed the format of a file (added a field) and recompiled all programs
using it. For the service program using this file I recompiled the module,
then did UPDSRVPGM. The service program record format ID does not match
the file record format ID.
So I looked around at other service programs and found, in many cases, the
record format ID does not match the file record format ID. But I'm not
getting level checks . . .
I took a couple of service programs whose record format ID did not match
and recreated the service program via CRTSRVPGM and now the record format
level ID matches the file format ID.
If I do a DSPPGMREF of a service program to an outfile, any file used is
listed twice. Presumably one of them is for the service program itself at
creation time, and the other is for the module as last updated via
UPDSRVPGM, which explains why no level checks.
Does this make sense? Just seems eerie to me.
VP Information Systems
P.O. Box 13369
Ft. Wayne, IN 46868-3369
The opinions expressed are my own and not necessarily the opinion of my
company. Unless I say so.
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives