![]() |
![]() |
SAS Component Language Dictionary |
Category: | Modular Programming |
Syntax | |
Details | |
See Also |
Syntax |
CALL DIALOG(entry<,parameters>) |
lists one or more parameters to pass to the called entry. In order for the called entry to accept these parameters, it must contain a corresponding ENTRY statement.
Note: These parameters are update parameters. See
Input, Output, and Update Parameters for more information.
Details |
DIALOG runs a FRAME entry, makes it the active entry, and disables all other windows. When the called entry is exited, control returns to the calling program. With the exception of disabling all other windows, DIALOG is similar to DISPLAY.
Note: From the window created with the
CALL DIALOG routine, you cannot execute a SUBMIT statement with the CONTINUE
option. See Controlling What Happens After a Submit Block Executes.
Using DIALOG without any options in the associated ENTRY statement requires a strict correspondence between DIALOG parameters and ENTRY statement arguments. The arguments and parameters must agree in number, data type, and relative position. If you pass an incorrect number of parameters or a parameter of the incorrect type, SCL halts the execution of the program. The argument-parameter correspondence is less restrictive when you use the options REST=, ARGLIST=, and OPTIONAL= in the ENTRY statement.
Names listed in parameter do not have to match the argument names in the ENTRY statement.
Parameters are passed in the following ways:
passes window variables and local variables and allows values to be returned to the calling program. This method allows the called program to modify values and then return them. If you do not want to return the new values, use the NOCHANGE routine. Or, if you do not want to return the new values for particular parameters, use the INPUT option for that parameter in the ENTRY statement. Here is an example of call-by-reference:
array employee{50}; call dialog('b.frame',var1,name,num,employee{1});
is used for all numeric constants, character constants, and expressions. It does not allow values to be returned to the calling program. Here is an example of call-by-value:
call dialog('b.frame',100,'hello',x+y);
See Also |
![]() |
![]() |
Copyright © 2011 by SAS Institute Inc., Cary, NC, USA. All rights reserved.