Usina BRGuía AdvPL
Ingresar
← Todos los temas
FUNCIóNEn revisión

ExecBlock

ExecBlock( <cNomeFuncao>, [lPerg], [lMostra], [aParametros] )

Ejecuta dinámicamente una rutina por nombre, recurso común en disparadores y lanzamientos estándar.

Ejecución dinámicaBloquesDisparadoresFunciones
01 · DESCRIPCIÓN GENERAL

Descripción general

ExecBlock aparece en materiales introductorios como forma de referenciar y ejecutar un programa por nombre en situaciones como disparadores y lanzamientos estándar. Al ejecutar una rutina desde un identificador textual, exige cuidado con parámetros, existencia de la función y efectos colaterales.

02 · SINTAXIS

Sintaxis

ExecBlock( <cNomeFuncao>, [lPerg], [lMostra], [aParametros] )
03 · EJEMPLO PRÁCTICO

Llamada dinámica conceptual

#Include "TOTVS.ch"

User Function ExExecBlock()
    Local cRotina := "U_ProcessaItem"
    Local aParametros := {"001"}

    ExecBlock(cRotina, .F., .F., aParametros)
Return
Resultado esperado

La rutina indicada por nombre se llama con los parámetros informados, según disponibilidad y contrato del entorno.

BUENAS PRÁCTICAS
  • Use somente quando a chamada dinâmica fizer sentido no desenho da rotina.
  • Documente o nome da função chamada e os parâmetros esperados.
  • Valide em homologação quando o uso estiver ligado a gatilhos ou processos automáticos.
ERRORES COMUNES
  • Errores en el nombre de la función aparecen solo en tiempo de ejecución.
  • Las llamadas dinámicas dificultan rastrear dependencias.
  • Rutinas llamadas por disparadores deben ser rápidas y previsibles.

Contenido relacionado

REFERENCIAS
  1. Apostila ADVPL Introd. Microsiga Campinas, 2001. Documentação oficial histórica de caráter didático e de suporte. Conteúdo histórico, resumido, revisado e adaptado para guia de referência.
Estado
En revisión
Página creada el
Última revisión el
Idioma original
Portugués
Revisión
Usina.BR
0 comentario(s) aprobado(s)

Comentarios

Todavía no hay comentarios aprobados.

Inicia sesión con Google o Microsoft para comentar.

Desarrollado con Usina Docs · Alpha