Converts alphabetic characters to uppercase
before parsing
Maintains alphabetic characters in case entered
ARG
PARSE UPPER ARG
PARSEARG
PARSE UPPER EXTERNAL PARSEEXTERNAL
PARSE UPPER NUMERIC PARSE NUMERIC
PULL
PARSE UPPER PULL
PARSE PULL
PARSE UPPER SOURCE PARSESOURCE
PARSE UPPER VALUE PARSEVALUE
PARSE UPPER VAR PARSE VAR
PARSE UPPER VERSION PARSE VERSION

The ARG instruction is simply a short form of PARSE UPPERARG. The PULL instruction is simply a short

form of PARSE UPPER PULL. If you do not desire uppercase translation, use PARSEARG (instead of

ARG or PARSE UPPER ARG) and use PARSE PULL (instead of PULL or PARSE UPPER PULL).

Parsing Instructions Summary

Remember: All parsing instructions assign parts of the source string into the variables named in the

template. The following table summarizes where the source string comes from.

Instruction Where the source string comes from
ARG
PARSEARG
Arguments you list when you call the program or arguments in the call to a
subroutine or function.
PARSE EXTERNAL Next line from terminal input buffer
PARSE NUMERIC Numeric control information (from NUMERIC instruction).
PULL
PARSE PULL
The string at the head of the external data queue. (If queue empty, uses default
input, typically the terminal.)
PARSE SOURCE System-supplied string giving information about the executing program.
PARSE VALUE Expressionbetween the keyword VALUE and the keyword WITH in the instruction.
PARSE VARname Parses the value of name.
PARSE VERSION System-supplied string specifying the language, language level, and (three-word)
date.
Parsing Instructions Examples

All examples in this section parse source strings into words.

ARG

/* ARG with source string named in REXX program invocation */
/* Program name is PALETTE. Specify 2 primary colors (yellow, */
/* red, blue) on call. Assume call is: palette red blue */
arg var1 var2 /* Assigns: var1='RED'; var2='BLUE' */
If var1<>'RED' & var1<>'YELLOW' & var1<>'BLUE' then signal err
If var2<>'RED' & var2<>'YELLOW' & var2<>'BLUE' then signal err
total=length(var1)+length(var2)
SELECT;
Parsing
210 CICS TS for VSE/ESA: REXX Guide