Assign SYSOUT IDs

It is possible to have ERO assign SYSOUT IDs based on text within a report itself. For example, you can give compilation listings of a production program a SYSOUT ID that is the name of the program.
view
It is possible to have ERO assign SYSOUT IDs based on text within a report itself. For example, you can give compilation listings of a production program a SYSOUT ID that is the name of the program.
It works as follows:
  • Specify a text string to be found in the report.
  • When the string is found, the preceding or following characters are extracted by ERO and assigned to the report as the SYSOUT ID. The text comprising that string must all be on one line of the report.
  • You can define up to five separate text strings, which you specify as initialization parameters PTEXT1 through PTEXT5.
Note:
Deliver
reports have a fixed report ID. You cannot use PTEXT
n
to change the SYSOUT ID for a
Deliver
report.
Contents
Text Extraction (+ and - )
Prefix the PTEXT text string with a plus or minus sign to indicate if the SYSOUT ID is to be the characters to the right of the PTEXT (specified with +) or to the left (specified with - ). The default is plus.
The characters following or preceding the PTEXT string are searched for the first non-blank valid SYSOUT ID character. Characters are extracted until an invalid character is encountered or 32 characters are obtained.
PTEXT1='LOADLIB('
The report can be a JCL listing containing the following:
//SYSLMOD DD DSN=PROD.LOADLIB(DEVWORK),DISP=SHR
The extracted SYSOUT ID is DEVWORK.
Segmented PTEXT Strings
You can specify a series of text strings separated by periods, referred to as
segmented text strings
. If segmented text is specified:
  • Enclose each text segment in single quotation marks.
  • Each PTEXT specification can be 40 characters, including the periods that separate the segmented text strings.
  • Quotation marks that enclose the text string are not included in the 40 characters.
The report is scanned until the first segment of PTEXT text is located, and then it is scanned for the next segment, and so on, until the last segment is found.
For the specification;
PTEXT1='SYSLMOD'.'LOAD('
when the following JCL is scanned:
//LKED.SYSLMOD  DD  DSN=PROD.LOAD(PGMA130),DISP=SHR
the extracted SYSOUT ID is the member name PGMA130.
Notice that the text segments SYSLMOD and LOAD are enclosed in single quotation marks to show that the period is a segment delimiter.
Special Characters
If you want to search for a period or a single quotation mark, use double quotation marks as the delimiter. For example:
PTEXT3="GRP.HTE'TRP'"
View
first checks the PTEXT entry for a single or double quotation mark. Whichever it finds first is taken as the delimiter.
The report is a compile listing containing:
-PROGRAM-ID. PROGRM1-
The following specification causes PROGRM1 to be the extracted SYSOUT ID:
PTEXT1= "PROGRAM-ID."
Special Characters Support
PTEXT processing uses a limited character set for valid characters in a report ID. The following characters are valid for report IDs during PTEXT processing:
  • Letters (A-Z)
  • Numbers (0-9)
  • National characters ($,#, @)
  • Dash (-)
PTEXT in the SYSOUT ID Hierarchy
The following list shows the hierarchy used by
View
and ERO to determine the SYSOUT ID for a report other than a
Deliver
report:
  • If the started task user exit (SARSTCUX) is coded to assign a SYSOUT ID not equal to the job name, that SYSOUT ID is used and it overrides all of the following items in this list.
  • If the SYSOUT DD statement has an external writer name not equal to the job name, the writer name is assigned as the SYSOUT ID. If a dollar sign precedes the writer name, the writer name (excluding the dollar sign) is appended to the job name, and the result is assigned as the SYSOUT ID. This overrides all of the following items in this list.
  • If the text specified in the PTEXT1 through PTEXT5 ERO initialization parameters is found in the report data, the SYSOUT ID is assigned based on characters extracted from the data.
  • If none of the above is found, the job name of the job that creates the report is the SYSOUT ID.