Histórico da Página
Estado | ||||||
---|---|---|---|---|---|---|
|
Permite executar uma função tlpp como nome longo em qualquer fonte PRW com segurança.
Sintaxe
Bloco de código | ||
---|---|---|
| ||
tlpp.call( < cFunction >, [ xParms ] ) |
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cFunction | character | Nome da função a ser executada. Ex: "funcao_com_nome_longo" | X | |
xParms | variant | Parâmetros que serão passados para a função. Ex: tlpp.call"funcao_com_nome_longo", nI, 5, , "teste", @cRet"funcaocomnomelongo",nI,5,,"teste",@cRet |
Retorno
Nome | Tipo | Descrição |
---|---|---|
xRet | Variant | Conteúdo e tipo retornado varia conforme implementado na função que está sendo chamada. |
Observações
O nome da função sempre é uma string e se não for passado parâmetros extras (xParms), pode já conter toda a chamada possível.
Ex:
tlpp.call("funcao_com_nome_longo(5, 'teste')"), porém se forem passados parâmetros para a função eles serão prioritariamente usados e serão ignorados os que estiverem no nome da função.
tlpp.call("funcao_com_nome_longo(5, 'teste')", cParam1) -> será executado como: funcao_com_nome_longo(cParam1).
Exemplos
Bloco de código | ||
---|---|---|
| ||
function u_executaFuncao() Local lFound := .F. Local cFunction Local xRet Local cVar1 Local cVar2 Local cRet Local aMessages //--------------------------------------------------------------------------------------------------- // Exemplo de função que existe cFunction := "tlpp.environment.getIncludesTLPP" lFound := tlpp.ffunc( cFunction ) // Se compilado em um fonte TLPP ou PRW = .T. (verdadeiro pois a função existe) ConOut( 'Function [' + cFunction + '] ' + iif(lFound,'','NOT ') + 'found!' ) // Se a função existe, executa if ( lFound ) xRet := tlpp.call( cFunction, @cRet, @aMessages ) // executa a função ConOut( 'Function [' + cFunction + '] result: ' + cValToChar(xRet) ) endif //--------------------------------------------------------------------------------------------------- // Crie a sua função com nome longo ("sua_funcao_com_nome_longo") em um fonte TLPP cFunction := "sua_funcao_com_nome_longo" lFound := tlpp.ffunc( cFunction ) ConOut( 'Function [' + cFunction + '] ' + iif(lFound,'','NOT ') + 'found!' ) // Se a função existe, executa if ( lFound ) xRet := tlpp.call( cFunction ) // executa a função - sem parâmetros ConOut( 'Function [' + cFunction + '] result: ' + cValToChar(xRet) ) xRet := tlpp.call( cFunction + "(7, 'ABC')" ) // executa a função como string ConOut( 'Function [' + cFunction + '] result: ' + cValToChar(xRet) ) xRet := tlpp.call( cFunction, 32, "string 1", 7, cVar1, @cVar2, .T. ) // executa a função - com parâmetros ConOut( 'Function [' + cFunction + '] result: ' + cValToChar(xRet) ) endif //--------------------------------------------------------------------------------------------------- return xRet |
Abrangência
05/2023
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas