&IF STATEMENT EXEC statement Use the &IF control statement to test a condition in an EXEC procedure and to perform a particular action if the result is true. If the test is invalid, execution continues with the statement following the &IF control statement. The format of the &IF statement is: +-----------+-----------------------------------------------------------------+ | &IF | token1|&$|&* operator token2|&$|&* executable-statement | +-----------+-----------------------------------------------------------------+ where: token1 token2 may be numeric constants, character strings, or EXEC variable symbols. All variable symbols are substituted before the &IF statement is executed. &$ tests all of the arguments entered when the EXEC was invoked. If at least one of the arguments satisfies the specified condition, the &IF statement is true. &* tests all of the arguments entered when the EXEC was invoked. All of the entered arguments must meet the specified condition in order for the &IF statement to be true. operator indicates the test to be performed on the tokens. If both tokens are numeric, an arithmetic test is performed. Otherwise, a logical (alphabetic) test is performed. The comparison operators, listed below, may be specified either in symbolic or mnemonic form: Symbol Operation = or EQ equals ¬= or NE not equal < or LT less than <= or LE less than or equal to (not greater than) > or GT greater than >= or GE greater than or equal to (not less than) executable-statement is any valid EXEC executable statement which may be a CMS command, an EXEC control statement, or an assignment statement. You may also specify another &IF statement; the number of nested &IF statements must not exceed 32 tokens. Usage Notes: 1. The values &* and &$ are reset when an &ARGS or &READ ARGS control statement is executed. They are not changed when you reset a specific numeric variable (&1 through &30). 2. If a variable symbol used in an &IF control statement is undefined, the EXEC interpreter cannot properly compare it. In cases where a variable may be null, or to check for a null symbol, you should use a concatenation character when you write the &IF statement; for example: &IF .&1 EQ . &GOTO -NOARGS tests for a null symbol &1. 3. If the symbols &* or &$ are null because no arguments were entered, the entire &IF statement is treated as a null statement.