Creación y descarte seguro de tablas temporales
Define estructura, ciclo de vida y responsabilidad de limpieza.
Descripción general
FWTemporaryTable define campos, crea tabla y la elimina mediante objeto propietario. Documentación limita visibilidad a thread creadora y funciones según LIB/DBAccess. Delete también cierra alias, no elimina un solo registro. Ejemplo crea temporal vacío y lo borra en ruta normal, sin tocar tablas de negocio. Flujo real debe limpiar en errores y salidas anticipadas; no es manejo completo de excepciones. (TOTVS, 2022, ref. 1)
Ejemplo comentado
#Include "Protheus.ch"
User Function Ed318()
Local oTemporal := FWTemporaryTable():New()
Local cAlias
// Estructura ficticia sin datos de negocio.
oTemporal:SetFields({{"ED_COD", "C", 10, 0}})
oTemporal:Create()
cAlias := oTemporal:GetAlias()
ConOut(cValToChar((cAlias)->(LastRec())))
oTemporal:Delete()
Return NilTemporal inicialmente vacío, LastRec esperado cero; eliminación solicitada al final. ED_COD identifica esquema didáctico fijo. En revisión: ejemplo editorial no compilado ni ejecutado en Protheus. Comprobar includes, release, RDD y contexto antes de probar.
- No compartir alias entre threads ni usar nombre físico ajeno. Validar fallos de creación/limpieza y retorno Delete según versión.
- En revisión: ejemplo editorial no compilado ni ejecutado en Protheus. Comprobar includes, release, RDD y contexto antes de probar.

Comentarios
Todavía no hay comentarios aprobados.
Inicia sesión con Google o Microsoft para comentar.