|Oracle® OLAP DML Reference
10g Release 1 (10.1)
Part Number B10339-02
When a program is invoked as a command -- that is, without parentheses around the arguments -- Oracle OLAP counts each word and punctuation mark on the command line as a separate argument. Therefore, you should not include arithmetic expressions, functions, qualified data references, or IF...THEN...ELSE... statements as arguments.
When you want to include any of these types of expressions as arguments in a program that will be invoked as a command, use PARSE in the program. Alternatively, you can enclose the arguments within parentheses and invoke the program either as a user-defined function or with CALL. When the program is invoked with CALL, the return value is discarded.
Example 8-4 Checking the Number of Arguments
In the following example, the program, a user-defined function, verifies that three arguments are passed. When the number of arguments passed is not equal to 3, the program terminates with
-1 as a return value.
DEFINE threearg PROGRAM INTEGER LD User-defined function expecting three arguments PROGRAM ARGUMENT division TEXT ARGUMENT product TEXT ARGUMENT month MONTH IF ARGCOUNT NE 3 THEN RETURN -1 ELSE DO ...