Mainframe - Prepare and deliver the source code

This documentation is not maintained. Please refer to doc.castsoftware.com/technologies to find the latest updates.

Summary: This section describes how to prepare and deliver the source code of your Mainframe application.

Preparation - source code discovery

Discovery is a process that is actioned during the delivery process. CAST will attempt to automatically identify "projects" within your application using a set of predefined rules. Discoverers are currently embedded in CAST AIP Core:

You should read the relevant documentation for each discoverer (provided in the link above) to understand how the source code will be handled.

Using CAST AIP Console

See Application onboarding for more information.

Source code delivery

AIP Console expects either a ZIP/archive file or source code located in a folder configured in AIP Console. You should include in the ZIP/source code folder all Mainframe source code:

  • Cobol: *.cob, *.cbl, *.pco, *.sqb, *.cpy, *.cop, *.cpb
  • JCL: *.jcl, *.prc, *.mbr, *.inc
  • IMS: *.dbd, *.psb, *.tra (≥ 8.3.19), .mfs (≥ 8.3.25)
  • CICS: *.csd, *.cics, *.bms

CAST highly recommends placing the files in a folder dedicated to Mainframe. If you are using a ZIP/archive file, zip the folders in the "temp" folder - but do not zip the "temp" folder itself, nor create any intermediary folders:

D:\temp
	|-----Mainframe
	|-----OtherTechno1
	|-----OtherTechno2

Handling PDS dump files

A PDS is a type of "library" containing elements known as "members" exported from a z/OS system (eg. Cobol programs, copybooks, JCL etc.) Each member in the PDS is preceded by a banner containing the member's name (among other information) and is concatenated with other elements in text format. Since AIP Console 1.19, it is possible to deliver source code via a PDS dump. As with the legacy CAST Delivery Manager, AIP Console only supports one type of member and one banner prefix per PDS dump file. If there are several types of members they must be delivered through multiple dump files and if several banner prefixes are used for the same type of members, then the source code delivery must also be done through multiple dump files.

If you want to deliver PDS dump files (containing the Mainframe source code) in the ZIP or the source code folder location, you will need to configure AIP Console to recognise them. This can be done using the Administration Center - Settings - PDS Dump option available in Administration Center - Global Configurations:

Out of the box, Console will have several PDS library extensions predefined. This will ensure that Console is able to recognise PDS dump files provided in the source code configured as follows - you can leave these predefined PDS types as is, or you can delete/edit as necessary:

All entries will be configured with a banner prefix "VMEMBER NAME", left margin =1 and Line maxLength = 80:

  • COBX
    • .cob
  • CPYX
    • .cpy
  • JCLX
    • .jcl
  • PSBX
    • .psb
  • DBDX
    • .dbd
  • BMSX
    • .bms

Each PDS dump file that is recognised by AIP Console will be extracted: one file (that the CAST Mainframe Analyzer can analyze) will be created per element in the PDS dump file and these files are then analyzed when an analysis is run.

Using legacy CAST Delivery Manager Tool

How do I add a source code package to my delivery

See How do I add a source code package to my delivery.

What you should package?

When creating packages to discover and extract your Mainframe application you should create them as listed below

If you already have Mainframe files on disk (.cob, .jcl etc.)

Package

Package name/type

Mandatory?

Location/path

Notes

1

Source code

(tick)

Source code root folder

Use one of the options described in Packaging source code for file technologies in the CAST Delivery Manager Tool (example below):

Click to enlarge

If you have a PDS dump on disk

Package

Package name/type

Mandatory?

Location/path

Notes

1

Source code

(tick)

PDS dump location

Use the "Mainframe" option in the CAST Delivery Manager Tool:

Click to enlarge

The Mainframe PDS dump option is designed for target Mainframe source code (Cobol, JCL etc.) that is the result of a PDS (Partitioned Data Set) dump.

A PDS is a type of "library" containing elements known as "members" exported from a z/OS system (eg. Cobol programs, copybooks, JCL etc.) Each member in the PDS is preceded by a banner containing the member's name (among other information) and is concatenated with other elements in text format. The CAST Delivery Manager Tool package for PDS dumps only supports one type of members and one banner prefix per file. If there are several types of members they must be delivered through multiple dump files and if several banner prefixes are used for the same type of members, then the source code delivery must be done through multiple dump files.

The CAST Delivery Manager Tool enables you to specify one or more PDS dumps - each dump that is specified will be extracted: one file (that the CAST Mainframe Analyzer can exploit via the CAST Management Studio) will be created per element in the PDS dump file and packaged ready for analysis.

The PDS dump file does not need to be available during the analysis process in the CAST Management Studio because the CAST Delivery Manager Tool will extract the source code and package it before deployment to a specific location (defined in the CAST Management Studio).

When configuring the package, use the Add button to add the PDS dump file.

A dialog box will enable you to configure the settings for the PDS dump file:

Click to enlarge

Library file path (PDS dump)

Allows you to select the absolute location of your PDS dump file. Use the browse button to select the PDS dump file on disk.
Library contentThis option enables you to choose the content of the PDS dump file that will be extracted and packaged - i.e selecting Cobol Program will extract only files that are Cobol Programs. Filters are based on file extensions and are those that are accepted by the Mainframe Analyzer.
Banner prefixIndicates the left hand part of the banner in the PDS dump excluding the member name. This determines the start of each member - this is used by the CAST Delivery Manager Tool to identify each member.
Left marginIndicates the line column(s) in which system characters are present. This column (or columns) are ignored during the extraction and packaging process and are not transferred to file.
Line max sizeFor each member line that will be extracted, this value indicates the line max size that will be retained during the extraction to file. Any characters that are located in the line beyond the line max size will be ignored during the extraction and packaging process and are not transferred to file.

How do I fine-tune my Version ?

See How do I fine-tune my Version for more information.

How do I deliver the Version for analysis?

See How do I deliver the Version for analysis for more information.

Delivery acceptance

See Validate and Accept the Delivery for more information.