FWTemporaryTable x MsCreate

Prezados,

Preciso trocar o comando MSCREATE() por FWTemporaryTable(). Porém, no MSCREATE eu defino exatamente o nome da tabela que será criada no SQL SERVER, no caso "SRZTESTE".

Já no FWTemporaryTable() parece que isso é criado automaticamente, seguindo o comando "oTempTable:Create()"

Como fazer nesse caso? Alguém está passando por este problema e encontrou alguma solução paliativa?

Winston bom dia.

Você pode continuar utilizando o nome que você quer. Segue exemplo


Local cAliasBrw     := "SRZTESTE"

oTempTable := FWTemporaryTable():New( cAliasBrw )

aAdd( aColumns, { "CODIGO"        ,"C",20,0 })
aAdd( aColumns, { "DESCRI"        ,"C",100,0})

oTemptable:SetFields( aColumns )

oTempTable:Create()

DbSelectArea(cAliasBrw)

Quando for criar é só fazer referência a variável criada.

Mas particularmente eu prefixo utilizar o comando abaixo para dar nomes a tabelas temporárias, acho mais seguro.


Local cAliasBrw     := GetNextalias()

Olá Felipe, agradeço pelo resposta, mas eu queria definir o nome que será gravado no SQL SERVER.

O Comando oTempTable:Create() cria um nome aleatório no banco de dados, no meu caso está criando dbo.##TMPSC00_52. Eu queria definir um nome só para seguir a lógica do programa que estou mexendo, mas me adaptei para usar o oTempTable:Create().

Muitíssimo obrigado por sua resposta, me deu um norte aqui em outras coisas.

Ok Winston, desculpe, então acho que não entendi direito a sua pergunta. Mas que bom que te ajudei de alguma forma. Att,

Olá. O nome que será criado no banco segue um padrão interno. Não é possível definir o nome dele. Você pode recuperar o mesmo pelo método GetRealName()

Em anexo tem um fonte que realiza a criação da tabela temporária e do arquivo de trabalho, assim como os dados da mesma.

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.