Usina BRGuía AdvPL
Ingresar
← Todos los temas
GUíA PRáCTICAEn revisión

Buenas prácticas de variables: ámbito, inicialización y nombres claros

Declara datos temporales y evita dependencias implícitas entre llamadas.

Buenas prácticas de variables: ámbito, inicialización y nombres clarosAdvPL
01 · DESCRIPCIÓN GENERAL

Descripción general

Declarar e inicializar antes de usar. Local prevista como numérica sin valor contiene Nil, no cero. Asignar nombre inexistente en AdvPL puede crear Private implícita: error de escritura puede cambiar lógica sin error esperado. Preferir Local para temporales; reservar Static para estado persistente entre llamadas y documentar Private/Public exigidas por frameworks legados. Nombres deben explicar intención y tipos esperados ser coherentes. (TOTVS, s.f., refs. 1–2)

Retorno

No hay retorno único: se trata de un flujo compuesto.

03 · EJEMPLO PRÁCTICO

Ejemplo comentado

#Include "Protheus.ch"
User Function EdVars()
    Local nCantidad := 3
    Local nValorUnitario := 10
    Local nTotal := 0
    // Todos los operandos estan inicializados.
    nTotal := nCantidad * nValorUnitario
    ConOut(cValToChar(nTotal))
Return Nil
Resultado esperado

Resultado esperado: 30; sin estado global creado. En revisión: ejemplo editorial no compilado ni ejecutado en Protheus. Comprobar includes, release, RDD y contexto antes de probar.

BUENAS PRÁCTICAS
  • Revisar nombres y dependencias dinámicas. No transportar secretos en Public ni cachear en Static sin invalidación.
  • En revisión: ejemplo editorial no compilado ni ejecutado en Protheus. Comprobar includes, release, RDD y contexto antes de probar.

Contenido relacionado

REFERENCIAS
  1. TOTVS. Criação e Atribuição de Variáveis. TDN. Consulta el 2026-10-26.
  2. TOTVS. O Contexto de Variáveis dentro de um Programa. TDN. Consulta el 2026-10-26.
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