Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
...
Pagetitle | ||||
---|---|---|---|---|
|
Função: TCSetConn
...
Permite alternar entre as conexões ativas com o DBAccess.
Sintaxe
Bloco de código | ||
---|---|---|
| ||
TCSetConn( <nHndConn> ) --> lRet nHandle > )
|
Parâmetros
...
Nome | Tipo | Descrição | Obrigatório | Referência |
---|
...
nHandle |
...
numérico | Indica o número da conexão que deve ser tornar a corrente. |
...
X |
Retorno
...
Nome | Tipo | Descrição |
---|---|---|
lRet | lógico | Retorna verdadeiro (.T.), se a conexão corrente for trocada com sucesso. Se a conexão informada não existir ou já estiver sido fechada, a conexão atual é mantida e a função retorna falso (.F.). |
Observações
...
- A troca de uma conexão ativa não fecha a conexão anteriormente em uso.
- Quando utilizamos mais de uma conexão, devemos trocar as conexões ativas quando necessário
...
- e abrir um recurso, tabela, query ou execução de statement, pois estas execuções são sempre realizadas na conexão ativa.
- O handler
...
- indicado em nHandle é obtido no momento que a conexão é criada, quando utilizamos a função TCLink
...
- .
- Esta função é útil quando da necessidade de integração de aplicações, onde o
...
- ERP utiliza um SGBD através do DBAccess, e existe a necessidade da aplicação AdvPL conectar com outro banco de dados para ler ou gravar informações. Neste caso, um programa customizado executado a partir do menu do ERP, que já está conectado com
...
- o DBAccess apontando para o banco oficial de dados, pode fazer um TCLink()
...
- para um outro DBAccess apontando para outro banco, e alternar entre as conexões ativas, abrindo tabelas e queries em uma conexão e gravando informações em tabelas abertas na segunda conexão.
- Como a troca entre conexões ativas com
...
- o DBAccess requer o handler retornado pela TCLink
...
- , e o FrameWork do
...
- ERP Protheus já estabelece esta conexão, é possível obter o handler da conexão atual já existente no processo através da função de Framework
...
- "AdvConnection
...
- "
...
- (
...
- Esta função somente está disponíveis em
...
- repositório para ambientes TOP/
...
- SGBD).
Exemplos
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
/ */ Exemplo de função que alterna entre conexão de dados de ERPE e conexão adicional // com outro banco através do DBAccess. Deve ser executada a partir do Menu do ERP*/ . User Function OtherConn() // Recupera handler da conexão atual com o DBAccess // Esta conexão foi feita pelo Framework do AdvPL, usando TCLink() LocalnHErp nHndERP := AdvConnection() Local cDBOra := "ORACLE/P10 DB_TESTE" Local cSrvOra := "172.16.0.1" Local nHndOra := -1 Local cQuery := '' conout( "ERP conectado - Handler = " + str(nHndOra nHndERP, 4 ) ) // Cria uma conexão com um outro banco , outro DBAccesDBAccesnHndOra nHndOra := TcLink( cDbOra, cSrvOra, 7890 ) If nHndOra < 0 UserException( "Falha ao conectar com " + cDbOra + " em " + cSrvOra)Endifconout( ) Endif conout( "Oracle conectado - Handler = " + str( nHndOra, 4 ) ) conout( "Banco = " + TcGetDB() ) // Volta para conexão ERP tcSetConn(nHErp) nHndERP ) conout( "Banco = " + TcGetDB() ) // Fecha a conexão com o Oracle TcUnlink( nHndOra ) conout( "Oracle desconectado" ) // Mostra a conexão ativa conout( "Banco = " + TcGetDB() )Return Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server
Return
|
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas