Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin
Composition Setup
import.css=/download/attachments/327912/newLayout.css
Portuguese

Pagetitle
TCRefresh
TCRefresh

Função: TCRefresh

Atualiza as definições globais de uma tabela no cache de definições do DBAccess.

TCRefresh ( < cTabela> ) --> NIL

NomeTipoDescriçãoObrigatórioReferência
cTabelaCaracterIndica o nome da tabela para atualizar o cache de definições do DBAccess. X
    NIL()
  • Esta função sempre retorna nulo.

O DBAccess mantém um cache de definições de estruturas de tabelas em uso (estruturas de campos, índices e controle de numeração), para as tabelas abertas pelo sistema. Este cache é criado à medida que novas tabelas são abertas, e otimiza a abertura de tabelas da aplicação, uma vez que qualquer alteração estrutural na tabela ou suas definições é feita utilizando demais funções da RDD através do DBAccess, ele mesmo atualiza os caches internos de estruturas.

Caso um programa realize instruções de alteração estruturas ou índices diretamente nas tabelas do banco, mediante a função TCSQLExec() ou procedures por exemplo, e pode ser necessário solicitar ao DBAccess que ele atualize o cache global com as novas definições da tabela. Neste caso, utiliza-se a função TCRefresh().

Internamente, a obtenção das definições de campos, índices e tratamentos adicionais de uma tabela de dados do DBAccess consiste em executar queries montadas dinamicamente para obter do banco de dados as definições das colunas e índices da tabela em questão, depois obter as definições complementares registradas na TOP_FIELD, atualizar o número do último registro físico (R_E_C_N_O_ ) da tabela em memória, para o controle de inserções. Ao executarmos a função TCRefresh(), informando o nome da tabela, o DBAccess vai recriar a definição estrutural desta tabela no cache de estruturas do DBAccess.

A utilização desta função é para fins específicos, em aplicações onde isto realmente é necessário. Chamar a função TCRefresh() desnecessariamente em uma aplicação pode prejudicar a performance da mesma.

cTable := RetSqlName("SA1")TcRefresh( cTable )
Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server