Tempo aproximado para leitura: 00:06:00 min
Dúvida
Ao solicitar a impressão a partir do Browse de uma determinada rotina, como por exemplo a FINA040, é gerado o error log: Variable does not exist "E1_PARCELA" on TRBREAK:EXECUTE(REPORT07.PRW).
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - SIGAFIN - Todas as releases
Solução
Esse erro ocorre quando existe uma customização ou Ponto de Entrada ativo na rotina que altera a área de trabalho padrão do browse sem realizar a devida restauração. Quando a customização utiliza comandos de seleção de tabela, como a função DbSelectArea(), a área de trabalho do browse é desposicionada.
Com isso, o sistema tenta acessar um campo específico em uma tabela diferente da esperada, resultando na ocorrência de variável inexistente. Para correção, a customização deve ser ajustada para salvar o contexto de trabalho antes de sua execução e restaurá-lo ao final do processo.
#Include 'Protheus.ch'
User Function INFO()
Local aArea := GetArea() // Salva área atual para posterior restauração
// sua customização
DbSelectArea("TMP")
("TMP")->(DbCloseArea())
RestArea(aArea) // Restaura área atual
Return
0 Comentários