Model 204 installation: Difference between revisions

From m204wiki
Jump to navigation Jump to search
Line 12: Line 12:
<div id="FUNU"></div>
<div id="FUNU"></div>
===FUNU===
===FUNU===
 
<!--Warning: <div> above-->


This section lists installation considerations if you have your own user-written $functions module (FUNU).
This section lists installation considerations if you have your own user-written $functions module (FUNU).
Line 33: Line 33:


<div id="zOS_link_onl"></div>
<div id="zOS_link_onl"></div>
===Linking the Model 204 ONLINE load module===
===Linking the Model 204 ONLINE load module===
<!--Warning: <div> above-->
<!--Warning: <div> above-->

Revision as of 03:13, 10 August 2014

This page is under construction.

z/OS installation

This section is under construction.

Downloading the object library in z/OS

This section is under construction. It will be cribbed from the instructions on the download page. A key thing mentioned is our use of ROKOB204 in the documentation to refer to the downloaded object library.

FUNU

This section lists installation considerations if you have your own user-written $functions module (FUNU).

  1. After making any changes required for the version of Model 204 you are installing, run the job to assemble FUNU into your local object library.
  2. Be sure that you have modified the JCL to link ONLINE to reference your local object library (the ROKOB204 DD statement will be the concatenation of your local object library and the downloaded object library).
  3. You do not need to insert an INCLUDE statement for FUNU; there is already one in the INCLUDE member (LKSQLONL or LKNOSONL) provided in the downloaded object library.

    Version 7.5 and later

    Starting with version 7.5 of Model 204, all $functions are entered in AMODE 64. This requires you to modify the ENTER macro for each $function, and may require you to modify the code for proper addressing in AMODE 64.

    • The default ENTER macro (that is, without the ZMODE= operand) will not function in AMODE 64 - it will issue a BUG message (label Bad AMODE, expect 31) and produce a snap.
    • In order to exploit QTBL above the 2G bar, any $functions which has arguments must be in AMODE 64. The ENTER macro should use ZMODE=GQ (the AMODE will remain as 64) and the code must be changed for proper addressing.
    • If the $function does not have any arguments or if you will not exploit QTBL above the bar, and if your $function does not access any other data structures which may be above the bar, you can use the ZMODE=31 operand on the ENTER macro. This will cause your $function to switch to AMODE 31 at entry (and restore the AMODE upon exit).
    • In any case, the AMODE issues need to be accounted for in any routines which your $function routine does a CCALL to.

    Linking the Model 204 ONLINE load module

    After downloading the object library, one of the members of ROKOB204 is named JZLONLN - the basic ONLINE link JCL. You can use this to link-edit the Model 204 online. It contains a number of choices which you can make to modify this basic JCL; each choice is indicated in the JCL by a line which ends with <<.

    Most of the choices are "optional", in the sense that a working ONLINE does not require the indicated modification, although, for many customers' environments, a modification will be needed, for example, to select an external authorizer.

    1Only one modification is always required, based on whether the ONLINE is to use RSQL (for Connect*) or not:
    • To link an ONLINE which does use RSQL, you must un-comment the INCLUDE ROKOB204(LKSQLONL) statement.
    • To link an ONLINE which does not use RSQL, you must un-comment the INCLUDE ROKOB204(LKNOSONL) statement.
    2The other modification frequently needed is to use an external authorizer such as RACF or ACF2. If you do, you must:
    • Prepare the appropriate xxxPARM object file (e.g., RACFPARM orACF2PARM), adding that to a *different* object library (with the same DCB attributes as ROKOB204). We refer to this as your local object libary (it will also be used for other assemble output, such as your FUNU).
    • In the SYSLIN DD *, un-comment the appropriate INCLUDE statement(s) for your external authorizer.

      Note: If you use ACF2, there are two INCLUDE statements to be un-commented; one refers to your system ACF2 library. You must un-comment the ACF2 DD as well, and fill in the DSN for that library.

    3If you have other programs which you assemble for your Model 204 ONLINE module, for example, FUNU, they should be assembled into your local object library (creating one - with the same DCB attributes as ROKOB204 - if you have not already created one for the external authorizer xxxxPARM object file). You do *not* need to add additional INCLUDE statements for FUNU or other locally assembled object files - they are already present in the include streams from ROKOB204.
    4Hence, there are two choices for the ROKOB204 DD statement:
    • If you have a local object library, fill that in for the first concatenation, and fill in the ROKOB204 DSN for the second concatenation.
    • If you do not have a local object library, there is only one dataset for the ROKOB204 DD - your ROKOB204 library.
    5Finally, change the DSN of the SYSLMOD DD to the load module library you have allocated for it.

    The modified JCL is now ready to run.

    Notes:

    • There is not a separate link step for BATCH204. It is not maintained as a separate module; the same module as ONLINE is used, with a BATCH204 alias.
    • The object library has the authorization zap pre-applied, so you *do not* need to get a new one from the web site.
    • It also has the maintenance zaps (as of the time the stream was prepared) pre-applied, so you *do not* need to apply any maintenance.

    Basic JCL to link ONLINE

    //LKM204P PROC HLQ=, High level qualifier(s) of install DSNs // MQ=NULLFILE, IBM MQ series load library // ACF2=NULLFILE ACF2 security interface load/objlib //* //* ******* z/OS JCL PROC to link edit into Model 204 loadlib ****** //* //* ****************************************************************** //* ** Do not copy nor edit this PROC. It is invoked by a ** //* ** jobstream member (such as LKONLNJ, LKIFAM1, etc.) for the ** //* ** particular load module you are linking. You should copy the ** //* ** jobstream member from the downloaded object library and then ** //* ** edit in a local TSO library. The jobstream contains ** //* ** instructions to modify and submit that jobstream. ** //* ****************************************************************** //* //* The first symbolic parameter (HLQ=) is required. //* //* The other two depend on the jobstream being used to invoke this //* PROC, and on your Model 204 configuration. //* //* Detailed explanations are also available for the load module //* you are linking at //* //* http://m204wiki.rocketsoftware.com/index.php/M204_inst_zOS //* //M204LINK EXEC PGM=IEWL,REGION=0M, // PARM='SIZE=(2048K,200K),LIST,LET,NCAL,MAP,AC=1,RMODE=ANY' //SYSPRINT DD SYSOUT=* //* //RKOBJ204 DD DISP=SHR,DSN=&HLQ..M204V75.LOCAL.OBJLIB, // DCB=BLKSIZE=32720 // DD DISP=SHR,DSN=&HLQ..M204V75.RKOBJLIB Downloaded obj lib //* //SYSLMOD DD DISP=SHR,DSN=&HLQ..M204V75.LOADLIB Model 204 modules //* //MQ DD DISP=SHR,DSN=&MQ IBM MQ series load library //* //ACF2 DD DISP=SHR,DSN=&ACF2 ACF2 system load/object library //* // PEND ************** End of LKM204P PROC *************