View previous topic :: View next topic
|
Author |
Message |
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
Hi ,dear all
I write a sample PLI and compile it to a load module in our company mainframe. Then I use FTP (TYPE Image) to transfer it to the IBM DEMOMVS(a virtual MVS). And I run it again use the same JCL.
But it abends with S806 reason code=4 with saying the ENTRY POINT CAN NOT BE FOUND .
I am puzzled , why the same load module can not be run ? due to the difference between company mainframe and DEMOMVS?
Thank you |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
Hello,
(Pardon my little experience) Only PL/I ? Did other load-modules work the way you needed? |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
great question Anuj.
we need to sort out whether he has a jcl error (not pointing at the load module),
a copy error (load module not copied properly),
or the OS is looking for a different type of load module.
normally, and S806 means you did not allocate the appropriate load lib.
but
Quote: |
ENTRY POINT CAN NOT BE FOUND |
leads me to believe the module is there,
(load lib is allocated)
but the module is not in 'load module' format (file attributes are incorrect). |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10886 Location: italy
|
|
|
|
Quote: |
IBM DEMOMVS(a virtual MVS) |
please be a bit more specific about the environment |
|
Back to top |
|
|
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
Thanks for your concerns. Some details are listed below:
Firstly, in my company mainframe environment (ZOS V1.8).
I write a "Hello World" PLI and use PGM IBMZPLI and IEWL to complie and link into load module.Then I use a JCL to print it in SYSOUT. It works well.
(The load module library is Record format U,Record length 0,Block size 400)
Then, I use ZOS FTP (Image type) transfer the load module to a ibm virtual ZOS's load module library(Record format U,Record length 0,Block size 800).
The virtual ZOS is IBM DEMOMVS (ZOS 1.9 ,IP:demomvs.demopkg.ibm.com)
.The same JCL run it with ABEND S806 with saying :
Code: |
"IEW4007I FIND FOR MODULE HELLO FAILED BECAUSE DIRECTORY ENTRY IS NOT VALID FOR A LOAD MODULE."
"REQUESTED MODULE HELLO NOT FOUND"
"SYSTEM COMPLETION CODE=806 REASON CODE=00000004" |
Edited: Please use BBcode when You post some code/error, that's rather readable, Thanks... Anuj |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
Quote: |
IEW4007I FIND FOR MODULE program-name FAILED BECAUSE DIRECTORY ENTRY IS
NOT VALID FOR A LOAD MODULE.
Explanation: An invalid or incorrect PDS directory entry was detected during processing of the Loader's FIND function when loading a load module.
System Action: An abend 806-04 will occur, accompanied by message IEW4007 in the job log when an attempt is made to locate the module.
User Response: Determine cause of the invalid directory entry, rebuild it and rerun the job. Ensure the specified entry exists in the specified library
|
|
|
Back to top |
|
|
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
Anuj D. wrote: |
Hello,
(Pardon my little experience) Only PL/I ? Did other load-modules work the way you needed? |
Yes , Because I only write a PL/I program. |
|
Back to top |
|
|
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
dbzTHEdinosauer wrote: |
Quote: |
IEW4007I FIND FOR MODULE program-name FAILED BECAUSE DIRECTORY ENTRY IS
NOT VALID FOR A LOAD MODULE.
Explanation: An invalid or incorrect PDS directory entry was detected during processing of the Loader's FIND function when loading a load module.
System Action: An abend 806-04 will occur, accompanied by message IEW4007 in the job log when an attempt is made to locate the module.
User Response: Determine cause of the invalid directory entry, rebuild it and rerun the job. Ensure the specified entry exists in the specified library
|
|
Hi ,I am not familar with the words "directory entry". It means the PDS member? Could give some detailer action to setup the correct directory entry?thank you |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Please completely describe how you transported the load module from the original system to the library where it now abends. Please provide complete details of each step in the process.
It sounds like the load module was not correctly put into the load library on the target system (or that library is not properly defined to be a load library).
Also, please post the "info" from 3.4 for the target load lib as well as the individual line of info for the problem load module. |
|
Back to top |
|
|
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
dick scherrer wrote: |
Hello,
Please completely describe how you transported the load module from the original system to the library where it now abends. Please provide complete details of each step in the process.
It sounds like the load module was not correctly put into the load library on the target system (or that library is not properly defined to be a load library).
Also, please post the "info" from 3.4 for the target load lib as well as the individual line of info for the problem load module. |
Hi ,I transported the load module using FTP command in TSO Commands Shell.
==>FTP demomvs.demopkg.ibm.com
==> type I
==> put 'userid1.PLI.LOAD(HELLO)' 'userid2.PLI.LOAD(HELLO)'
of course , I allocate a the PDS 'userid2.PLI.LOAD' at first.
File attribute:
'userid1.PLI.LOAD' is Record format U,Record length 0,Block size 400.
'userid2.PLI.LOAD' is Record format U,Record length 0,Block size 800.
There is only one step in my execution JCL , it is //SYSPRINT DD SYSOUT=* because the HELLO
PLI program only PUT SKIP LIST"Hello world" |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
As an experiment, you might change this:
Code: |
put 'userid1.PLI.LOAD(HELLO)' 'userid2.PLI.LOAD(HELLO)' |
to this:
Code: |
put 'sys1.linklib(IEFBR14)' 'userid2.PLI.LOAD(IEFBR14)'
|
and see if this copy of IEFBR14 is executable or if there is an error.
Also, I do not recall ever transferring a load module directly into a loadlib via ftp. . . |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8700 Location: Dubuque, Iowa, USA
|
|
|
|
I looked in the z/OS V1R8 Communications Server User's Guide and found this about processing load modules through FTP (I added emphasis):
Quote: |
4.2.5 Load module transfer (LMTR)
As long as your FTP client and FTP server are both at the z/OS Communications Server V2R10 or later, you can use FTP to transfer MVS load modules between load libraries on different hosts or the same host. MVS load modules transferred, using z/OS Communications Server V2R10 or later support, are executable on the target system. A load module can be specified by its real name or by one of its alias names, and in either case, all aliases are transferred with each load module. Load module transfer is also supported for proxy transfer, in which case all three hosts (client, primary server, and secondary server) must be z/OS Communications Server V2R10 or later.
Load module transfer processing (at z/OS V1R2 Communications Server or later) makes use of the IEBCOPY system utility, which must be available on both the origin and destination hosts.
The following FTP file transfer commands will properly transfer MVS load modules:
* get
* mget
* put
* mput
Because of the special requirements of MVS load modules, there are some additional restrictions:
* The current working directory on both the client and the server must be the source or destination load library. A load library is a PDS or PDSE with RECFM=U.
* Only member names can be specified. No fully qualified names can be specified.
* File rename is not supported on load module transfer.
* Load modules can be transferred only between the same types of libraries. For example, PDS to PDSE transfer is not allowed.
* If load modules are being sent to or from the z/OS FTP client, the client must be started from one of the following environments:
o TSO terminal session
o TSO REXX
o TSO batch
o TSO background
o Unix System services terminal session
* A load module loading from a temporary data set will always be a REPLACE operation, overwriting existing members. LMTR is not performed in STOU mode (the user has toggled SUNIQUE on).
* There is no prompting on mput and mget subcommands. All files that match the mask provided are transferred. |
so your commands
Code: |
==>FTP demomvs.demopkg.ibm.com
==> type I
==> put 'userid1.PLI.LOAD(HELLO)' 'userid2.PLI.LOAD(HELLO)' |
are guaranteed not to work and need to be
Code: |
==>FTP demomvs.demopkg.ibm.com
==> type I
==> cd 'userid2.pli.load'
==> lcd 'userid1.pli.load'
==> put HELLO |
|
|
Back to top |
|
|
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
Thanks a lot . It works well if I cd and lcd firstly as you said
" Only member names can be specified. No fully qualified names can be specified. " |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Good to hear it is working - thank you for letting us know
d |
|
Back to top |
|
|
zhong guo ren
New User
Joined: 20 Jan 2009 Posts: 9 Location: china DL
|
|
|
|
dick scherrer wrote: |
Good to hear it is working - thank you for letting us know
d |
|
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8700 Location: Dubuque, Iowa, USA
|
|
|
|
Glad to hear that got you going. |
|
Back to top |
|
|
VIGNRSH Warnings : 1 New User
Joined: 18 Mar 2007 Posts: 44 Location: New Jersey,USA
|
|
|
|
How should i achieve the same process of transferring LOAD MODULES FROM one SYSTEM to another by using OPTION6 + INDFILE.
(or )
Precisely. Is it possible to transfer a load module from Mainframe to Local PC and then again upload in another Mainframe??
What are options I must choose , when trying to download to the Local PC from Mainframe host and vice -versa , while uploading from PC to HOST?? |
|
Back to top |
|
|
|