Space announcement This documentation space provides the same content as before, but the organization of the content has changed. The content is now organized based on logical branches instead of legacy book titles. We hope that the new structure will help you quickly find the content that you need.

On-the-fly Language Processing Support


This topic describes CSS support for on-the-fly language processing, invoked by the BMC AMI DevX Abend-AID Viewing Server.

CXOTFPRE & CXOTFPST Examples

CSS on-the-fly language processing support is performed by calling one of two CLIST members, CXOTFPST (postprocessing CLIST) or CXOTFPRE (preprocessing CLIST). The BMC AMI DevX Abend-AID Viewing Server will invoke these from the "Source Support Utilities Menu" panel: selecting option "1" invokes CXOTFPRE, selecting option "2" invokes CXOTFPST.

To provide a complete demonstration of on-the-fly language processing support, BMC has supplied two examples, complete with corresponding members (CLIST, PANEL, HELP, Skeleton). It is an actual working example that uses CA-Endevor as the source code and/or source listing repository.

Although the supplied sample is specific to CA-Endevor, any user-coded CLIST, REXX and/or program may be called as long as it conforms to the ISPF rules for program invocation. See the following IBM ISPF guides for more information about these APIs:

  •  SC34-4821-01 — ISPF Dialog Developer's guide and Reference
  •  SC34-4819-01 — ISPF Services guide

Supplied is the following:

CLIST name

Additional members

Use

CXOTFPST

P@CPST01

Language Postprocess dialog and panel


P@HPST01

Help Panel


CXSPST01

Skeleton Member

CXOTFPRE

P@CPRE01

Language Preprocess dialog and panel


P@HPRE01

Help Panel


CXSPRE01

Skeleton Member

The sample panel here, is a language postprocessing example (CA-Endevor P@CPST01). A similar panel (not shown) is distributed for language preprocessing (P@CPRE01).

Language Postprocessing Example for CA-Endeavor

Sample ----------- Retrieve Compiler Source Listing & Post-Process

Command ===>

1. Retrieve a Compiler source listing from Endevor
2. Generate JCL to LP Post-Process this Compiler source
   listing into a Source Listing format
3. Invoke EDIT to allow changes. Enter SUBMIT in EDIT when complete.

ENDEVOR Information:
ENVIRONMENT ===> AA ELEMENT ===> COMP5
SYSTEM ===> SAMPLE TYPE  ===> COBSRC
SUBSYSTEM ===> COBOL STAGE ===> 1
DATA SET NAME ===> COMPWARE.AAOTF.COBSRC

Post-Process Information:
STEPLIB ===> COMPWARE.ECC15.LOADLIB
CWPDDIO ===> COMPWARE.LE.LST
CWPPRMO ===> COMPWARE.ECC15.SLCXCNTL(CXLPCOBB)

JOBCARD Information:
Line 1 ===> //JOBNAME0 JOB ('ACCOUNT,DEPT'),'User name',
Line 2 ===> // CLASS=L,MSGCLASS=R,NOTIFY=&SYSUID

Method of operation

Data to be entered on these panels is presented in three parts:

  1. CA-Endevor specific. Information is exactly as needed on a foreground execution of CA-Endevor.
  2. BMC Postprocess specific. Information needed to customize execution of a language postprocess.
  3. JOBCARD orjob specific information. Needed to submit JCL to an internal reader.

All input is as-is in this example (that is, all data is taken exactly as entered and formatted for job execution). Because this is a sample, you can modify any of these CLISTs, panels.

At termination of the panel, the data entered will be:

  1. Merged with a JCL skeleton.
    An ISPSLIB PDS must be available at viewing time containing the BMC-supplied skeletons or those that the user has modified. This PDS can be an existing ISPSLIB used site-wide and allocated at TSO logon, or it can be one that is allocated dynamically at viewer startup time. See the previously mentioned ISPF guides for more details on customizing skeletons.

    Note

    The CXSPRE01 skeleton supplied must be modified to specify the desired language and compiler library to be used.

  2.  ISPF EDIT will be invoked to allow user changes.
  3.  JOB submission, via use of the “SUBMIT” command in ISPF EDIT.

For  more information, see BMC-supplied CXOTFPST CLIST. A similar CLIST, named CXOTFPRE, is also supplied for a language preprocess.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*