Migrating Spool C Transformers to Java Transformers
search cancel

Migrating Spool C Transformers to Java Transformers

book

Article ID: 124985

calendar_today

Updated On:

Products

OM Spool Output Management Web Viewer

Issue/Introduction

Spool V14.0 no longer supports the legacy AFP Transformers that were introduced in 1998.  The Spool Java Transformers were added to Spool in 2011 and provide support for five different input streams and nine output streams.  Spool customers who are still using the AFP Transformers will be required to migrate to the use of the Java Transformers in V14.0. 

Environment

Component: Output Management Spool for z/OS 14.0

Resolution

The C version of the AFP Transformers were withdrawn in Spool release 14.0. This fact is documented in the Spool 14.0 Release Notes:

Spool 14.0 Release Notes
  
You must install and configure the Java Transformers. Documentation for installation is in the link below:

Spool 14.0 Installing


You can find documentation about the Java Transformers customization in the link below:

Customizing the Java Transformers 
 
With the Java Transformers there is a separate started task that performs the conversions.
The connection between Spool and the Java Transformer started task is defined in the Spool parameters (ESFPARM).
 
When you use the Java Transformers there is an additional statement, X2YYDEF, in the ESFPARM:
 
X2YYDEF x2yyname,      Transformation FSS name      
        PROC=CAIQD2E,  FSS JCL procedure name       
        MAXTASK=10,    Max concurrent transformations
        DEFAULT=YES    Implicit X2YYDEF             
 
The name x2yyname can be anything. See that the PROC keyword points to the Java Transformer JCL procedure CAIQD2E (can be any name).
 
In the NODE statement you point to the FSS name in the keyword X2YY:
 
NODE    SAMPX2YY,      Sample transform printer      
        defnodename,   DEFNODE name                  
        GROUP=1,       Network group                 
        TRANSFRM=x2yy, Transfomation type and options
        X2YY=x2yyname  Transformation FSS name       
 
This example above can be found in the member CAIQPARM of the Spool 14.0 library CBQ4PARM.
 
When a file is queued for transformation, Spool determines if the specified Java FSS task is started.  If not, Spool starts the task.  It remains active unless the Transformer interface is halted or manually stopped.  Do not start the CAIQD2E task manually, Spool must start it.
You can halt the transformer task with the /HT command on the Spool menu or
F caspoolstc,HT from a z/OS console. You need to restart the interface using the /ST command on the Spool menu or F caspoolstc,ST from a z/OS console to activate the Transformers interface again. The Java task won't be started automatically after the ST command. It will be started when a file is queued for transformation.
 
You can stop the transformer task with the command /PFSS,x2yyname on the Spool menu or
F caspoolstc,PFSS,x2yyname from a z/OS console..  The Java task will be started again when the next file is queued for transformation.
 
- Most of the parameters used by Java FSS task are in USS files
- The parameters used in the transformations corresponding to the ones in the DDs A2PCPARM and A2PDPARM are in project files in an USS folder named /apps. For example, A2PC.d2eproj, A2PD.d2eproj. You can create any number of project files to accommodate requirements of different reports.
 
See how the project files are selected for each file in the link below:

Transformers Parameter Files

 
- The specific location of the /apps directory is defined in the STDENV DD of the Java Transformers started task
 
//STDENV   DD  DISP=SHR,DSN=&PARMLIB(&MEMBER)  * Environment Parms
 
Inside this member you have:
 
APP=/tpv/caspoold2e/xenos/apps
 
There are multiple environment variables like the APP example above that need to be defined in file allocated by the STDENV DD statement.  Configuration information for these variable can be found in the link below:

System Configuration File 
 
- The AFP resource libraries (fonts, pagedefs, formdefs, etc) are defined in parameters inside project files. They don't need to be allocated by the CA Spool started task anymore.
 
For example:
 
            <filedeflist name="FdFormDefs">
                <filedef directives="{afp}" location="DSN:SYS1.FDEFLIB({0})"  cache="job"/>
                <filedef directives="{afp}" location="DSN:user.FDEFLIB({0})"  cache="job"/>
            </filedeflist> 
 
More information about the parameters used in the project files can be found in the link below:

Customizing the Java Transformers

 
 
The SAS/C runtime library used by the C Transformers is no longer required by Spool V14.0.
 
Transformer parameter files: 
 
Some parameters used with the C Transformers have no correspondence in the Java Transformers. We recommend that the default settings are used with the Java Transformers and if the output is not correct you should open a support case to report the problem.
Some common parameters that have correspondence are:
 
C Transformers: FeedPCL
JavaTransformers: defineFeed
 
Example
 FeedPCL    = (1,1)              
 FeedPCL    = (2,2)               
 FeedPCL    = (3,4)         
 
<defineFeed inputTray="1"          
            outputTray="1">        
</defineFeed>              
<defineFeed inputTray="2"          
            outputTray="2">        
</defineFeed>                     
<defineFeed inputTray="3"          
            outputTray="4">        
</defineFeed>                
 
  
C Transformers:  Offset and LogPGBounds.
Java Transformers: marginTuning tuningOption
 
Example:
Offset     = (-20,0)
LogPGBounds= Yes
 
<marginTuning tuningOption="Manual"
              moveWholePage="false"
              adjustSingleElements="false"
              useLogicPageBoundary="true"
              scaleBarcodes="false"
              usePclOffsets="true"
              scaleBy="100">
    <shiftBy hShift="-20"
             vShift="0"/>
</marginTuning>
 
References in the documentation:

PCL Generator Parameters

Additional Information

There are some trainings regarding the migration from C to Java Transformers. Reference to these trainings can be found in the link below:

Migrating from AFP to Java Transformers