5515 - Erro ao logar no Monitor - Could not execute query
Problema:
Após colocar usuário e senha para logar no Monitor, é apresentado uma mensagem em vermelho logo abaixo do campo senha:
Solução: Solução:
O problema neste caso pode estar ocorrendo tanto para banco de dados Oracle como SQL Server, conforme detalhes abaixo:
Não foi possível realizar o login. could not execute query [ SELECT this_.SEQAGU as SEQAGU5_0_, this_.NOMGUS as NOMGUS5_0_, this_.NOMU... ou
Não foi possível realizar o login. Verifique o arquivo de log para obter detalhes.
Exemplo de mensagem para Oracle:
Erro apresentado no log do Monitor:
2012-12-13 20:50:58,327 [12] ERROR Inventti.NFePackWebMonitor.Login - Erro no login.
NHibernate.ADOException: could not execute query
[ SELECT this_.SEQAGU as SEQAGU5_0_, this_.NOMGUS as NOMGUS5_0_, this_.NOMUSU as NOMUSU5_0_, this_.SENUSU as SENUSU5_0_, this_.CODSIT as CODSIT5_0_, this_.CODTIP as CODTIP5_0_ FROM N010AGU this_ WHERE this_.CODTIP = ? and this_.NOMUSU = ? ]
Positional parameters: #0>Usuario #1>ti
[SQL: SELECT this_.SEQAGU as SEQAGU5_0_, this_.NOMGUS as NOMGUS5_0_, this_.NOMUSU as NOMUSU5_0_, this_.SENUSU as SENUSU5_0_, this_.CODSIT as CODSIT5_0_, this_.CODTIP as CODTIP5_0_ FROM N010AGU this_ WHERE this_.CODTIP = ? and this_.NOMUSU = ?] ---> System.Reflection.TargetInvocationException: Uma exceção foi acionada pelo destino de uma chamada. ---> System.TypeInitializationException: O inicializador de tipo de 'Oracle.DataAccess.Client.OracleCommand' acionou uma exceção. ---> Oracle.DataAccess.Client.OracleException The provider is not compatible with the version of Oracle client em Oracle.DataAccess.Client.OracleInit.Initialize()
em Oracle.DataAccess.Client.OracleCommand..cctor()
Exemplo de mensagem para Oracle:
Erro apresentado no log do Monitor:
2012-12-13 20:50:58,327 [12] ERROR Inventti.NFePackWebMonitor.Login - Erro no login.
NHibernate.ADOException: could not execute query
[ SELECT this_.SEQAGU as SEQAGU5_0_, this_.NOMGUS as NOMGUS5_0_, this_.NOMUSU as NOMUSU5_0_, this_.SENUSU as SENUSU5_0_, this_.CODSIT as CODSIT5_0_, this_.CODTIP as CODTIP5_0_ FROM N010AGU this_ WHERE this_.CODTIP = ? and this_.NOMUSU = ? ]
Positional parameters: #0>Usuario #1>ti
[SQL: SELECT this_.SEQAGU as SEQAGU5_0_, this_.NOMGUS as NOMGUS5_0_, this_.NOMUSU as NOMUSU5_0_, this_.SENUSU as SENUSU5_0_, this_.CODSIT as CODSIT5_0_, this_.CODTIP as CODTIP5_0_ FROM N010AGU this_ WHERE this_.CODTIP = ? and this_.NOMUSU = ?] ---> System.Reflection.TargetInvocationException: Uma exceção foi acionada pelo destino de uma chamada. ---> System.TypeInitializationException: O inicializador de tipo de 'Oracle.DataAccess.Client.OracleCommand' acionou uma exceção. ---> Oracle.DataAccess.Client.OracleException The provider is not compatible with the version of Oracle client em Oracle.DataAccess.Client.OracleInit.Initialize()
em Oracle.DataAccess.Client.OracleCommand..cctor()
ou
Exemplo de mensagem para SQL Server:
Rotina / Tela: Tela de Login do eDocs
Exemplo de mensagem para SQL Server:
Could not execute query: select acessogrup0_.SEQAGU as SEQAG1_51_, acessogrup0_.NOMGUS as NOMGU2_51_, acessogrup0_.NOMUSU as NOMUS3_51_, acessogrup0_.SENUSU as SENUS4_51_, acessogrup0_.CODSIT as CODSI5_51_, acessogrup0_.CODTIP as CODTI6_51_, acessogrup0_.SEQEPP as SEQEP7_51_, acessogrup0_.SEQFIP as SEQFI8_51_, acessogrup0_.LOGLDA as LOGLD9_51_ from N010AGU acessogrup0_ where acessogrup0_.CODTIP=@p0 and (acessogrup0_.NOMUSU=@p1 or acessogrup0_.LOGLDA=@p2) ORDER BY CURRENT_TIMESTAMP OFFSET 0 ROWS FETCH FIRST 1 ROWS ONLY
System.Data.SqlClient.SqlException (0x80131904): Incorrect syntax near 'OFFSET'.
Invalid usage of the option FIRST in the FETCH statement.
Rotina / Tela: Tela de Login do eDocs
Solução: Solução:
Para Oracle:
- Verificar se o banco de dados está acessível com o usuário de banco;
- Verificar se os seguintes arquivos do diretório C:/Senior/SDE/Monitor/Bin estão iguais (tamanho e data) aos arquivos do diretório C:/Senior/SDE/Comum/Bin/Oracle/Odp32 ou odp64 (conforme bits do SO). Os arquivos são:
oci.dll;
Oracle.DataAccess.dll;
oraociei11.dll;
OraOps11w.dll.
- Verificar se o banco de dados está acessível com o usuário de banco;
- Verificar se os seguintes arquivos do diretório C:/Senior/SDE/Monitor/Bin estão iguais (tamanho e data) aos arquivos do diretório C:/Senior/SDE/Comum/Bin/Oracle/Odp32 ou odp64 (conforme bits do SO). Os arquivos são:
oci.dll;
Oracle.DataAccess.dll;
oraociei11.dll;
OraOps11w.dll.
Para SQL Server:
Este tipo de situação normalmente apresenta-se para banco de dados SQL server, devido à divergência entre as versões. Deve-se portanto verificar no configurador do eDocs o Tipo de Banco de dados configurado para que esteja compatível com o utilizado pelo sistema eDocs, considerando principalmente a versão do correta do mesmo (Ex: SQL Server 2012 no configurador, sendo que o cliente utiliza o SQL Server 2008).
Após o parâmetro estar de acordo, reiniciar os serviços para que a alteração tenha efeito.
DICA: Para verificar a versão do SQL server via query, pode-se aplicar o comando: select @@version