• See also the Concepts described in the Introduction.With the aid of the Oracle Tuxedo Application Runtime for Batch components, the resulting shell scripts can be compiled and run on the target platform with the same behavior as on the source platform, except in some cases detailed in the section Behavior Coverage.
•
• (mandatory) the System Description File, which describes where to locate the JCL files and sub-files on the migration platform file system.
• (optional) specific configuration sub-files such as the file-to-RDBMS conversion table; see COBOL and JCL Conversion Guide Files in File-to-Oracle Converter or COBOL and JCL Conversion Guide Files in File-to-Db2/luw (udb) Converter.
• Translated KSH components in their textual representation: scripts (main files) and sub-files for procedures, INCLUDE files and possibly SYSIN files.For a detailed description of which JCL cards, parameters, options and utility programs are supported by the JCL translator and the underlying Oracle Tuxedo Application Runtime for Batch components,see Z/OS JCL in the Oracle Tuxedo Application Runtime Batch Environment in the book Oracle Tuxedo Application Runtime for Batch Reference Guide.The input components are all the JCL scripts (main files) in the asset, after they have been parsed by the cataloger. In fact, the JCL translator loads the POB files for the scripts, not their source files. In addition to the restrictions imposed by the cataloger (no multiple jobs per JCL, etc.; see the Cataloger), the following rules must be respected before attempting the JCL translation:The System Description File describes the location, type and possible dependencies of all the source files in the asset to process. As such, it is the key by which the cataloger, but also all of Tuxedo ART Workbench tools, including the JCL translator, can access these source files and the corresponding components.
Table 9‑1 JCL Translator Component Types
Table 9‑2 JCL Translator Global and Local Options List of pairs var-name = var-value separated by commas var-name is a symbol (or string interpreted as a symbol) and var-value is a string. When parsing a JCL script, the parser simulates the JCL-variable substitution process performed by JES2. The name-value pairs given here are used to substitute global variables (as opposed to parameters, etc.). The parser reports an error when it cannot find a suitable value for a variable. Path of the JCL-launcher specification file to use for this system or directory; see the section JCL-Launcher Specification Files in the Cataloger chapter for more information on the contents and use of these files. Listing 9‑1 JCL Translator global and local options examples
When this is set, the SYSIN for utility "DSNUTILB" is not converted. When this is set, the DB2 SYSTEM information is kept and converted.
•
• For the last two parameter names, set-delete-fsn and set-no-delete-fsn, the syntax of the parameter value is as follows:Table 9‑4 provides a detailed description for each field in the data class file.
Table 9‑4 Data Class File Content Name of the Data Class, it can be used by the DATACLAS parameter in the DD statement, or DEFINE or ALLOCATE command in IDCAMS Record Format, it specifies the record format of the file to be created using the data class specified by NAME field, its possible values are similar to RECFM parameter in DD statement. RECFM cannot be used in combination with RECORG. Logical record length, it specifies the logical record length of the file to be created, its possible values are similar to LRECL parameter in DD statement. Record organization, it is used for VSAM files only, its possible values are ES (VSAM ESDS), RR (VSAM RRDS), or KS (VSAM KSDS). For non-VSAM files, this field should be left blank. This field cannot be used in combination with RECFM field. Key Length, it specifies the key length in bytes. To use this attribute, you must specify either KS or blank for the Recorg attribute. If the Recorg value is KS, the Keylen attribute represents the length of the KSDS key field and ranges from 1-255, or you can leave it blank.If the Recorg value is blank, the KEYLEN value ranges from 0-255, or you can leave it blank. For either value of Recorg, you must assign a value to the Keylen attribute that is less than or equal to the LRECL value. Key Offset, it specifies the displacement from the beginning of a record to the KSDS key field. It is valid only when the RECORG value is KS.The KEYOFF value can range from 0 to the value of (LRECL - KEYLEN). If a KEYLEN value is specified, then the KEYOFF attribute must also be specified, or 0 value is used. This value is ignored only if the KEYLEN value is not specified in JCL.For each (main) JCL file (job), the JCL translator produces one (main) KSH file (script) with the same base name and extension as specified with the suffix-skeleton configuration parameter (see JCL-Translation Configuration File Contents). This file is placed under the hierarchy rooted at the directory specified with the root-skeleton configuration parameter, in the same relative sub-directory as was the source file under the system root. If the target file existed before the translation, it is overwritten.If a sub-file referenced by some main file is absent from the source asset when the main file is processed by the cataloger, the latter will complain in the log (with a message of the form "*Warning*: ZZZ file XXXXXX not found in JCL file YYYYYY", where ZZZ is PROC or INCL or SYSIN, or SYSTSIN) and an anomaly will be reported. In this case, the JCL translator will refuse to process the (incomplete) main file or produce a non-working, incomplete KSH script.Procedures are invoked using the m_ProcInclude Oracle Tuxedo Application Runtime for Batch function. The target sub-file is not "executable" outside of this function and, more generally, an Oracle Tuxedo Application Runtime for Batch-generated KSH script. The procedure contents are inserted into the script structure in the "conversion" phase of job processing, see the Oracle Tuxedo Application Runtime for Batch User Guide.Similarly, include files are invoked using the m_ShellInclude Oracle Tuxedo Application Runtime for Batch function and cannot be used outside this context. Most include files are translated into separate sub-files; however, in some cases, when the include file contains an EXEC card but does not define a (sequence of) complete steps(s), the extraction cannot be performed and the contents of the original sub-file is translated as if it came from the main file.The z/OS variables used in the original JCL are translated into special symbols of the form $[PARM], which are "statically" substituted in the manner of JES2 in the conversion phase, just before the execution phase. See the Oracle Tuxedo Application Runtime for Batch User Guide for more details.
• When option "use-file-catalog" is set in system description file, prefix ${DATA} is removed from the generated file name. However this is not applied to SYSIN and SYSTSIN for utility programs, the converted file name is the same no matter if "use-file-catalog" is set or not.
• Shell variables for return codes, step labels at which to jump ($JUMP_LABEL), etc.The following JCL cards or constructs are translated into invocations of appropriate Oracle Tuxedo Application Runtime for Batch functions: JOB, JCLLIB, SET, DD, proc-overriding DD, EXEC (program), EXEC (procedure), INCLUDE, IF/THEN/ ELSE/ENDIF from the original JCL, IF from IDCAMS command files and the COND option.The // card which terminates the job is translated as a jump to the end of the script.As mentioned above, an EXEC procedure card is translated into an invocation of the m_ProcInclude Oracle Tuxedo Application Runtime for Batch function, and an INCLUDE card is translated into an invocation of the m_ShellInclude function. SYSIN/SYSTSIN files and references (DD cards) are handled in two different ways:
• Listing 9‑2 Example Log file:The JCL translator is designed to be run through the refine command, which is the generic Tuxedo ART Workbench launcher. It handles various aspects of the operation of these tools, such as execution log management and incremental/repetitive operations. See Command-line Syntax in the Cataloger chapter.The launcher options are described in Command-line Syntax in the Cataloger chapter. The mandatory options are:
2. The Tuxedo ART Workbench process consumes more and more memory. Regularly, it checks whether the available physical memory drops below the threshold set by the minimum-free-ram-percent option in the system description file.IDCAMS ALTER NEWNAME command can be translated correctly to "m_FileRename", but there are two potential issues for renaming a file that is converted by Workbench to RDB file by file translator:
• The first potential issue is, "-b" option is not added by JCL translator for programs operating on the new file name in following JCL since JCL translator doesn't know whether the new file file needs to access RDBMS even though the source file does need.
• The procedures will be located in the directory /Workspace/Master-Proc/PROC.