xlst

Top  Previous  Next

xlst manages printers in batch process in a VSE like flavour.

During batch executions xlst stores all printer commands in the JCL log file and at the end provides to associate each printer to assigned destination and issue print commands.

It can be called with different parameters to perform corresponding action.

XJCLLOG environment value MUST be set to a unique file identifier for any JOB using xlst (see xrun).

Syntax

--lst <list options>

read printer options such as destination class disposition ...

--assgn <dd_name>

assign printer file to specific destination

--alias <alias> <device>

define an alias for device

--spool

execute print commands

Environment variables

Environment name

Description

XJCLLOG

environment value MUST be set to a unique file identifier for any JOB using xlst (see xrun).

Configuration File

Configuration file has to be placed in $HOME/etc and named xlst.conf. Configuration is specified using the following commands :

set
ignore
map

Parameter definition

General parameters are defined using the set directive

Syntax

set <parameter>[=<value>]

Parameters

verbose

if specified xlst runs in verbose mode

off

default_printer

If xlst cannot resolve destination device for printer it assign this value. If no printer is defined, spool command aborts.

no_defaul

spool_command

command performed for all printers

xspooladd -N

Options definition

Using map or ignore settings you can customize your spool options command.

Syntax

map <parameter>=<value>

ignore <parameter>

 

Example : configure xlst to work with xspool

This is the xlst.conf to place in $HOME/etc.

set default_printer=01E
set spool_command=xspooladd -N
ignore LST
set verbose
map COPY=-n
map CLASS=-c
map DEST=-u
map FNO=-f

 

Example : VSE jcl

Original VSE step

* $$ LST CLASS=A,DISP=L,COPY=1,LST=FEF                                    *
// DLBL FILDOCU,'FIL.DOCUM',,VSAM,CAT=VSAMCAT
// DLBL FILTABE,'FIL.TABEL',,VSAM,CAT=VSAMCAT
// ASSGN SYS010,FEF                                                      
// DLBL FIL.MOVIN',,VSAM,CAT=VSAMCAT
// DLBL GEPIN,'FL200.W',,VSAM,CAT=FLATCAT
// EXEC PROGRAM,SIZE=200K
AAMMGG=021227
/*

Step converted

# * $$ LST CLASS=A,DISP=L,COPY=1,LST=FEF                                    *
xlst --lst "CLASS=A,DISP=L,COPY=1,LST=FEF"
# // DLBL FILDOCU,'FIL.DOCUM',,VSAM,CAT=VSAMCAT
# // DLBL FILTABE,'SAM.TABEL',,VSAM,CAT=VSAMCAT
# // ASSGN SYS010,FEF                                                    
xlst --alias SYS010 FEF
# // DLBL MOVINT,'FIL.MOVIN',,VSAM,CAT=VSAMCAT
# // DLBL GEPIN,'FL200.W',,VSAM,CAT=FLATCAT
# // EXEC PROGRAM,SIZE=200K
AAMMGG=021227
# /*
STEP0040:
xbmstep STEP0040
setenv dlbl_SYSLST "$XBM_JOBNAME.$XBM_REQID.$XBM_STEP.RPG.lst,cat=SYSLST,disp=(MOD,KEEP),type=flat"
setenv dlbl_SYS010 `xlst --assgn FEF`
setenv dlbl_FILDOCU "FIL.DOCUM,cat=VSAMCAT,type=vsam"
setenv dlbl_FILTABE "FIL.TABEL,cat=VSAMCAT,type=vsam"
setenv dlbl_MOVINT "FIL.MOVIN,cat=VSAMCAT,type=vsam"
setenv dlbl_GEPIN "FL200.W,cat=FLATCAT,type=flat"
 
xrun PROGRAM <<end_data_cards
AAMMGG=021227
end_data_cards
xbmrc
if ( $RC != 0 ) then
   xdisplay "$XBM_STEP flushing with RC=$RC"
   goto EOJ
endif

At EOJ step :

# /&
# * $$ EOJ
#
EOJ:
xlst --spool
source $HOME/etc/xjobexit.csh
exit $RC