Tempo aproximado para leitura: 00:02:29 min
Ocorrência
Ao executar a rotina apresenta a mensagem: Trigger for XXXXX is executing database/XXXX/XXX/programa.p, which is compiled against a diferente logical database name (4461)
Ambiente
Framework - Framework (Linha Datasul) – Progress OpenEdge – Versão 12
Causa
O nome lógico do banco está diferente do programa em execução.
Solução
Verifique os passos abaixo para a correção:
1 - Alias.p incorreto;
No diretório onde encontra o arquivo alias.p deve ter o arquivo alias.r compilado. Cada alteração do alias.p é necessário recompilar. Exemplo do arquivo:
DEFINE INPUT PARAMETER v-parameter AS CHAR NO-UNDO.
CREATE ALIAS emsbas FOR DATABASE emscad NO-ERROR.
CREATE ALIAS emsedi FOR DATABASE emscad NO-ERROR.
CREATE ALIAS emsfin FOR DATABASE emscad NO-ERROR.
.
.
-- no final não há chamada para nenhum programa.
2 - Compilar o alias.p, para a compilação execute os passos abaixo:
2.1 - Abrir uma sessão do produto em uma estação que possua a licença de Query Results instalada;
2.2 - Abrir o Procedure Editor do Progress _edit.p;
2.3 - Executar o comando: COMPILE "diretorio/alias.p" SAVE.. Esse comando irá gerar o arquivo .r correspondente ao alias em questão;
2.4 - Executar um novo teste em uma das estações onde o erro era apresentado.
3 - Tabela apresentada na mensagem de erro pode estar criada no banco incorreto, neste caso execute o procedimento de dump/load para a transferência para o banco correto;
4 - Programa apresentado em tela pode estar com alias nome lógico -ld com nome diferente do arquivo alias.p. Corrigir o programa e compilar. Se for padrão, abrir um ticket para a equipe responsável pelo módulo.
Saiba mais
Informações adicionais em Error (4461) when using database trigger overrides, and using dynamic buffers on multiple connected databases
Bancos utilizados pelo produto Datasul Framework - Linha Datasul - TEC - Listagem de Bancos X Módulos do produto Datasul
0 Comentários