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.
EXTERNAL incluir, alterar, excluir
DECLARE vet_rot[3] = SPACE(7)
vet_rot[1] = "INCLUIR"
vet_rot[2] = "ALTERAR"
vet_rot[3] = "EXCLUIR"
var_num = ACHOICE (10,10,14,18,vet_rot)
&S (LOWER (vet_rot [var_num]))
$LIBRARY, DO, EXTERNAL, PROCEDURE, SET KEY, &SC(), &SD(), &SF(),
&SL() e &SN().