× Linguagem de Programação ADVPL

Perguntas DbCloseArea dando erro em um gatilho

Mais
7 anos 7 meses atrás #31984 por Marco Antonio
Boa tarde!

Tenho um campo de produto que dispara um gatilho onde é pesquisado o valor desse produto em um contrato do cliente e preenche o campo de valor. O gatilho chama uma função que tem uma query. No momento do comando DBCloseArea, há um erro de gatilho dizendo que o Alias não existe. Alguém poderia me ajudar? Obrigado e segue código:

#INCLUDE "PROTHEUS.CH"
#INCLUDE "TOPCONN.CH"

User Function GatAgTec(cCli,cLoja,cProd)

Local cAlias := GetNextAlias()
Local cSQL := ""
Local lAchou := .f.
Local nRet := 0

cSQL += "SELECT TOM_SERVIC, TOM_VALOR, TOL_DTTERM FROM "+ RetSqlName("TOM") +" TOM INNER JOIN "+ RetSqlName("TOL") +" TOL ON"
cSQL += " TOL_NUMERO = TOM_NUMERO AND TOL.D_E_L_E_T_ = '' AND TOL_CLIENT = '"+cCli+"' AND TOL_LOJACL = '"+cLoja+"' AND TOL_STATUS IN ('1','3') WHERE TOM.D_E_L_E_T_ = '' ORDER BY TOL_DTTERM DESC"

DBUseArea(.T., "TOPCONN", TCGenQry(,,cSQL), cAlias, .T., .T.)

While (cAlias)->(!EOF())
If ALLTRIM((cAlias)->TOM_SERVIC) == ALLTRIM(cProd)
nRet:= TOM_VALOR
Exit
Endif
(cAlias)->(DbSkip())
EndDo

(cAlias)->(DbCloseArea())

Return nRet

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.115 segundos
Joomla templates by a4joomla