Within an OLAP DML program, the CALLTYPE function indicates whether a program was invoked as a function, as a command, by using a CALL statement, or triggered by the execution of an OLAP DML statement.
TEXT
The return value of CALLTYPE is:
FUNCTION
when the program was invoked as a function that returns a value.
COMMAND
when the program was invoked as a command.
CALL
when the program was invoked using a CALL statement.
TRIGGER
when the program is a trigger program (that is, when a TRIGGER command associated the program with an object event) was invoked in response to an OLAP DML statement.
Example 7-35 Determining the Calling Method
This sample program, called myprog
, demonstrates how CALLTYPE returns different values depending on how the program is invoked.
DEFINE myprog PROGRAM PROGRAM SHOW CALLTYPE RETURN('This is the return value') END
The following statements invoke myprog
: 1) as command; 2) with a CALL statement; 3) as a function.
myprog CALL myprog SHOW myprog
The three statements send the following output to the current outfile. Note that the return value of myprog appears only when the program is called as a function.
COMMAND CALL FUNCTION This is the return value