Invocar uma PROCEDURE através de macro-substituição.
&S(<exp.C>)
|
<exp.C> |
Representa o nome da sub rotina que será invocada. |
Substitui o comando DO possibilitando que várias PROCEDURES sejam executadas com uma única declaração.
Esta função facilita a programação, já que, executa a PROCEDURE cujo nome será o resultado de uma expressão-cadeia.
As PROCEDURES executadas devem ter o mesmo número e tipo de parâmetros para evitar erros de execução.
As PROCEDURES que poderão ser executadas, devem ser declaradas pelo comando EXTERNAL.
O exemplo a seguir mostra-nos a utilização desta função, montando um menu de opções com a função ACHOICE() e executando a opção escolhida.
public num(N)
num = 3
EXTERNAL maisum, menosum
&S ("maisum") && exibirá 4
&S ("menosum") && exibirá 2
proc maisum(N)
public num(N)
? num+1
proc menosum(N)
public num(N)
? num-1
$LIBRARY, EXTERNAL, PROCEDURE, &SC(), &SD(), &SF(), &SL() e &SN().