FWTemporaryTable
FWTemporaryTable():New([cAlias],[aFields])Cria tabela temporária acessível apenas à thread proprietária.
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.)
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()
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 NilCria 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.
- 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.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.