How can I pass a UA value to DYLPARM in my VISION:Results DLI program?
search cancel

How can I pass a UA value to DYLPARM in my VISION:Results DLI program?

book

Article ID: 31070

calendar_today

Updated On:

Products

Vision:Results

Issue/Introduction

Passing parameters to programs is easy with the UA parameter on the EXEC statement unless it is an IMS program. 
A DLI job has strict control of the execution parameter list, so what to do?

 

Environment

Release:
Component: V:RSLT

Resolution

DYLPARM holds variable data provided by either the PARM parameter in the EXEC statement (z/OS only)
or the DATA phrase in the VISION:Results OPTION statement.

Example:

 JCL

     //S001 EXEC PGM=DYL280,PARM='UA=011596,01,02'
 
in program
     WORKAREA
       PARHOLD 12
     ON ONE
       MOVE DYLPARM TO PARHOLD
     ENDONE

UA cannot be used in DLI jobs since the parameters on the EXEC statement are passed directly to IMS and VISION:Results has no access to them.

To accomplish the same thing you can use OPTION DATA.
(See pages 51 and 74/75 of the Reference Guide for details)

This is normally part of the VISION:Results program which is the SYSIN DD.

You may modify the data outside of the program using a concatenated dataset such as:

//SYSIN DD DISP=SHR,DSN=PARMDATA  
//          DD DISP=SHR,DSN=your.results program

 where PARMDATA just has the OPTION DATA statement

or instream as

//SYSIN DD *
OPTION DATA '011596,01,02'
/*
// DD DISP=SHR,DSN=your.results.program