Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

How do I create an alias entry for an existing load module ?

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM
View previous topic :: :: View next topic  
Author Message
Stefan

Active User


Joined: 12 Jan 2006
Posts: 110
Location: Germany

PostPosted: Mon Dec 10, 2012 4:06 pm    Post subject: How do I create an alias entry for an existing load module ?
Reply with quote

I'm totally lost after browsing through numerous manuals and neither found any similar post on this board or elsewhere in the infinite vastness of cyberspace.
Maybe it's because it's monday. icon_wink.gif

Could somebody explain to me how I create an additional alias entry to an existing load module?
I don't want to customize the compile/link procedure.

The background is that we use a delivery mechanism for mainframe software which uses Connect:Direct.
The system guy for this tool is not able to configure Connect:Direct in such a way that alias entries in PDS load libraries are copied togethter with the original entries.
They simply get lost!
So I want to send the receiving site administrators a smart three-liner JCL to create those aliases after receiving the library.

When playing around with the TSO RENAME command and its ALIAS parameter, I achieved creating the alias entry, but the program was not properly loaded when referenced by its alias name. In addition the ISPF statistics got corrupted. So obviously this TSO command is not suitable for load modules.

Any ideas on this?
Back to top
View user's profile Send private message

Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7232

PostPosted: Mon Dec 10, 2012 4:18 pm    Post subject: Reply to: How do I create an alias entry for an existing loa
Reply with quote

For a loadmodule the ALIASing is done by the linkedit/binder. This can be done seperately from the original linkedit. Note: ALIASes done in this way have to be done again each time the original is linkedited.
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10202
Location: italy

PostPosted: Mon Dec 10, 2012 4:25 pm    Post subject: Reply to: How do I create an alias entry for an existing loa
Reply with quote

unfortunately no three liner for it

IIRC the only way to have a proper ALIAS for a LOAD module is
only at binder time

but also too often simply rebinding an existing load module will not be enough

iebcopy with the proper parameters will preserve the primary-alias relations

so most probably the safe way is to
iebcopy the load modules to a PS
transfer the PS
iebcopy back
Back to top
View user's profile Send private message
prino

Active Member


Joined: 07 Feb 2009
Posts: 984
Location: Oostende, Belgium

PostPosted: Mon Dec 10, 2012 4:38 pm    Post subject:
Reply with quote

You do not have the option to send them in XMIT format?
Back to top
View user's profile Send private message
Stefan

Active User


Joined: 12 Jan 2006
Posts: 110
Location: Germany

PostPosted: Mon Dec 10, 2012 5:50 pm    Post subject: Re: Reply to: How do I create an alias entry for an existing
Reply with quote

Bill Woodger wrote:
This can be done seperately from the original linkedit.

This sounds as if its possible to run a separate job step only to re-create the lost alias entries. So I tried now for the last few hours to get a IEWL job running, but whatever I tried did fail. The last experience was having a rc=0 but resulting in a member name of "tempnam0" as a separate member, not as an alias. Maybe I completely misunderstood the was the binder works.
Code:
//LKED   EXEC PGM=IEWL,REGION=2M,                     
//            PARM='AMODE(31),RMODE(ANY),LIST,XREF,LET'
//SYSLIB   DD DISP=SHR,DSN=INT1098.LOAD               
//SYSLMOD  DD DISP=SHR,DSN=INT1098.LOAD               
//SYSLIN   DD DISP=SHR,DSN=INT1098.LOAD(PGM1)         
//SYSPRINT DD SYSOUT=*                                 
//SYSIN    DD *                                       
  INCLUDE SYSLIB(PGM1)                                 
  ENTRY PGM1                                           
  NAME PGM1(R)                                         
  ALIAS PGM2                                           
/*
This job resulted in the following members:
Code:
LIBRARY           INT1098.LOAD                              Row 00001 of 00002
Command ===>                                                  Scroll ===> DATA
   Name     Prompt         Alias-of      Size       TTR      AC    AM     RM 
_ PGM1                                 00001530    00082A    00     31    ANY
_ TEMPNAM0                             00001530    000A12    00     31    ANY
  **End**

What should I have done instead?

To Prino: Sending the PDS in XMIT format is considered as a last resource. The existing delivery procedures easily allow adding a new type as for example a bind job to be executed. It would be much more complicated when we would change the processing of an existing dataset type, e.g. a load library.
Back to top
View user's profile Send private message
Garry Carroll

Active Member


Joined: 08 May 2006
Posts: 990
Location: Dublin, Ireland / Edinburgh, Scotland

PostPosted: Mon Dec 10, 2012 6:14 pm    Post subject:
Reply with quote

Your JCL -

Code:
//LKED   EXEC PGM=IEWL,REGION=2M,                     
//            PARM='AMODE(31),RMODE(ANY),LIST,XREF,LET'
//SYSLIB   DD DISP=SHR,DSN=INT1098.LOAD               
//SYSLMOD  DD DISP=SHR,DSN=INT1098.LOAD               
//SYSLIN   DD DISP=SHR,DSN=INT1098.LOAD(PGM1)         
//SYSPRINT DD SYSOUT=*                                 
//SYSIN    DD *                                       
  INCLUDE SYSLIB(PGM1)                                 
  ENTRY PGM1                                           
  NAME PGM1(R)                                         
  ALIAS PGM2                                           
/*


The input to your IEWL is SYSLIN, so you should have :

Code:
//LKED   EXEC PGM=IEWL,REGION=2M,                     
//            PARM='AMODE(31),RMODE(ANY),LIST,XREF,LET'
//SYSLIB   DD DISP=SHR,DSN=INT1098.LOAD               
//SYSLMOD  DD DISP=SHR,DSN=INT1098.LOAD         
//SYSPRINT DD SYSOUT=*                                 
//SYSLIN    DD *                                       
  INCLUDE SYSLIB(PGM1)                                 
  ENTRY PGM1                                           
  NAME PGM1(R)                                         
  ALIAS PGM2                                           

/*


Garry
Back to top
View user's profile Send private message
Stefan

Active User


Joined: 12 Jan 2006
Posts: 110
Location: Germany

PostPosted: Tue Dec 11, 2012 2:03 pm    Post subject:
Reply with quote

Many thanks for all your replies.
The following JCL did the trick:
Code:
//L1   EXEC PGM=IEWL,PARM='LIST,LET'
//INFILE        DD DISP=SHR,DSN=Input.dataset                 
//SYSLMOD  DD DISP=SHR,DNS=Output.dataset                   
//SYSPRINT  DD SYSOUT=*                                   
//SYSLIN      DD *                                           
   INCLUDE INFILE(Modulename)                          Input module               
  ALIAS COMP                                                   Alias you want

  NAME COMPRESS(R)                                        Main module name

To Enrico & Prino: Converting the PDS to PS or to XMIT format is definitely a good approach. But it is very easy with the existing delivery processes to additionally send yet another job than to change the installation procedure for an existing type (load modules). But in the long term it might be the preferred way if the Connect:Direct guy won't get it fixed.
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2422
Location: Netherlands, Amstelveen

PostPosted: Tue Dec 11, 2012 2:36 pm    Post subject:
Reply with quote

Stefan,

your JCL will result in a load module with an alias in SYSLMOD. INFILE will NOT be affected. Is that what you want?

I always for creating an alias use :

Code:

//XIBFALIA JOB 01,MSGCLASS=1,CLASS=A,NOTIFY=XIBF                        00010042
//LINK     EXEC  PGM=IEWL,PARM='XREF,LIST'                              00260045
//SYSLMOD  DD  DSN=XIBF.AMBAI.LOAD,DISP=SHR                             00270045
//SYSUT1   DD  UNIT=SYSDA,SPACE=(1024,(100,10))                         00280045
//SYSPRINT DD  SYSOUT=*                                                 00290045
//SYSLIN   DD  *                                                        00300045
 INCLUDE SYSLMOD(MCC87U05)                                              00310050
 ALIAS MCC87U00                                                         00320047
 NAME MCC87U05(R)                                                       00330050
Back to top
View user's profile Send private message
Stefan

Active User


Joined: 12 Jan 2006
Posts: 110
Location: Germany

PostPosted: Tue Dec 11, 2012 3:45 pm    Post subject:
Reply with quote

Thanks, Peter, for the supplement.
I'll give it a try.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
This topic is locked: you cannot edit posts or make replies. Rexx to create GDG by scanning JJ result krish.deepu CLIST & REXX 5 Tue Oct 25, 2016 5:32 pm
No new posts How can we create a flat file in JAVA... rakesh.v18 Java & MQSeries 7 Fri Sep 23, 2016 10:46 pm
No new posts Need Rexx Program to Load in to DB2 T... Hareesh Verma CLIST & REXX 22 Tue Sep 20, 2016 2:59 pm
No new posts Copybook structure in Load module Vai123 COBOL Programming 7 Fri Sep 16, 2016 8:29 pm
This topic is locked: you cannot edit posts or make replies. ERROR WHILE SUBMITTING LOAD JOB ANURADHA NEELAKANTAN JCL & VSAM 12 Thu Aug 25, 2016 11:50 am


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us