24338 - Erros acesso banco de dados (ORA-03149, ORA-01460 e outros) X AV no Middleware
Problema:
Solução:
Ao ser solicitado o acesso ao sistema, logo após ser inserido o usuário e senha de acesso, ocorrem mensagens de erro de acesso ao banco de dados. Exemplo de mensagens:
Erro de acesso ao banco de dados:
Banco de Dados: Oracle 11.
Erro do Banco (3149): ORA-03149: Invalid Oracle error code
Erro de acesso ao banco de da
Banco de Dados: Oracle 11.
Erro do Banco (1460): ORA-01460: unimplemented or unreasonable conversion requested
Importante: esse erro pode gerar Access Violation no processamento do SeniorMiddleware, quando requisições são enviadas para um Middleware que não consegue se comunicar com banco de dados.
Rotina / Tela: acesso ao ERP
Solução:
Solução 24338: Estas mensagens de erro podem ser apresentadas quando está sendo utilizada versão não homologada do Cliente do banco de dados Oracle. O cliente Oracle 10, por exemplo, não é mais homologado pela Senior.
Dessa forma, para solucionar o problema, é necessário instalar um Cliente homologado.
Informações adicionais:
1- No SeniorConfigCenter não há mais opção para uso do Oracle 10. Neste cenário, muitos clientes parametrizam a opção de conexão como sendo Oracle 11, por exemplo, mas o Cliente instalado continua sendo o do Oracle 10. A mensagem que é gerada pelo ERP indicando Oracle 11 vem dessa seleção do Oracle 11 realizada no SeniorConfigCenter e não da versão do Cliente do Banco de Dados efetivamente instalada.
2- Convém verificar na variável de ambiente PATH do Windows o apontamento para o Cliente do banco de dados que o Servidor/Estação de trabalho está utilizando.
3- Por se tratar de um problema relacionado ao ambiente, caso haja necessidade de apoio para fazer manutenção e configuração do Cliente de Banco de Dados Homologado, a área de Serviços da Senior poderá ser contatada para atuar nesta solicitação.
4- Dica para identificar qual versão do Cliente Oracle está sendo utilizado (não funciona em todos os ambientes)
4.1 Abrir o Prompt de Comando do Windows (CMD.exe)
4.2 Digitar sqlplus
4.3 Verificar a versão retornada do aplicativo
5- Por que o problema passa a acontecer após atualização do Sistema? Porque as novas funcionalidades da tecnologia da Senior são desenvolvidas e validadas em versões homologadas dos bancos de dados. Logo, funcionalidades que não estão disponíveis em versões não homologadas do banco de dados podem ser utilizadas pela Senior no desenvolvimento dos sistemas e causam incompatibilidade com banco de dados e clientes de banco de dados que não são mais homologados.
6- É importante lembrar de que, no caso do Oracle 10, o sistema ERP não é mais homologado desde a versão 5.8.9 para esta versão do banco de dados.
7- O problema também pode ocorrer quando utilizada uma versão do Cliente Oracle 11 que não é mais homologada pela Senior. Exemplo: versão 11.1. Atualmente apenas a versão 11.2 está homologada. Maiores informações sobre as plataformas homologadas podem ser encontradas na Documentação da Tecnologia Senior no Portal da Documentação
8- Na execução de processos via SeniorMiddleware (WebServices ou Processos Agendados, por exemplo), pode ocorrer o problema de retorno de Access Violation em diversas BPLs. Isso ocorre porque quando a instância do ERP é acionada para atender a requisição, ela precisa ser iniciada e não consegue se comunicar com o banco de dados. Um teste simples a ser feito neste caso é abrir o ERP Senior diretamente da máquina onde o SeniorMiddleware está instalado, pois é através desta máquina que o Middleware será executado e precisará de comunicação ao banco de dados.