Usina BRAdvPL Guia
Entrar
← Todos os tópicos
CLASSEEm revisão

FWTemporaryTable

FWTemporaryTable():New([cAlias],[aFields])

Cria tabela temporária acessível apenas à thread proprietária.

FWTemporaryTableAdvPL
01 · VISÃO GERAL

Visão geral

Exige DBAccess 4.2 com build 20141119 ou superior. New aceita alias e estrutura {nome,tipo,tamanho,decimais}; SetFields define a estrutura e Create cria a tabela. Delete remove tabela e fecha alias. O exemplo utiliza GetNextAlias e não compartilha a tabela entre processos. A referência comunitária ilustra SetFields/Create/Delete; sua linha com RetSqlName não é reproduzida, pois a classe já fornece nomes específicos para queries e funções TC. (Fontes: refs. 1–2.)

02 · SINTAXE

Sintaxe

FWTemporaryTable():New([cAlias],[aFields])

Métodos

SetFieldsDefine estrutura dos campos.o:SetFields(aFields)
AddIndexAdiciona índice à definição.o:AddIndex(cIndexName,aFields)
CreateCria tabela temporária.o:Create()
GetAliasRetorna alias aberto.o:GetAlias() -> cAlias
DeleteRemove tabela e fecha alias.o:Delete()
03 · EXEMPLO PRÁTICO

Exemplo comentado

#Include "Protheus.ch"

User Function Ed451()
    Local oTmp := FWTemporaryTable():New(GetNextAlias())
    Local cAlias
    // Somente tabela temporaria de teste.
    oTmp:SetFields({{"ED_COD","C",6,0},{"ED_QTD","N",10,2}})
    oTmp:AddIndex("01",{"ED_COD"})
    oTmp:Create()
    cAlias := oTmp:GetAlias()
    ConOut(cAlias)
    oTmp:Delete()
    FreeObj(oTmp)
Return Nil
Resultado esperado

Cria estrutura vazia, informa alias e exclui a tabela temporária. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

BOAS PRÁTICAS
  • Garantir Delete também no tratamento de erros. AddIndex aceita nome de até dois caracteres. Não fechar áreas de outras rotinas.
  • Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Conteúdos relacionados

REFERÊNCIAS
  1. TOTVS. FWTemporaryTable. TDN. Consulta em 2026-10-27.
  2. thalysjuvenal/advpl-specialist. Cross-database examples; commit d80599b. Consulta em 2026-10-27.
Situação
Em revisão
Página criada em
Última revisão em
Idioma original
Português
Revisão
Usina.BR
0 comentário(s) aprovado(s)

Comentários

Ainda não há comentários aprovados.

Entre com Google ou Microsoft para comentar.

Powered by Usina Docs · Alpha