Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
"Item Not Found" em TDriverRegister.GetDriver
#1
Olá Pessoal, tudo bem?
Eu estava testando o ORM em uma aplicação de uso interno de nossa empresa, e ao tentar criar um Container para um TFDMemTable, obtive a seguinte inconsistência:

Citar:---------------------------
Debugger Exception Notification
---------------------------
Project CSDBC.exe raised exception class EListError with message 'Item not found'.
---------------------------
Break Continue Help
---------------------------

Isso ocorre ao tentar pegar o Driver do Banco, em TDriverRegister.GetDriver(ADriverName).
Sendo que meu IDBConnection está conectado corretamente.
Segue o trecho que me retorna o ErroSadObs: Ao criar meu Container, obtenho o erro)

Código:
Connection := TFactoryFireDAC.Create(fdqSQLite, dnSQLite);
  oConexao := TContainerFDMemTable<TConexao>.Create(Connection, fdmConexao);
Desenvolvedor Junior
The Worlds is a Filthy Place
Responder
#2
Outro detalhe...
Quando utilizado TClientDataSet, a inconsistência não ocorre.
Desenvolvedor Junior
The Worlds is a Filthy Place
Responder
#3
Olá, está com seus fontes atualizados pelo do repositório? Se sim, abra o demo da pasta Demo\Data\FireDAC, compile e veja se esta funcionando, sim compilar e executar, olhe se não está faltando alguma unit no uses do seu projeto.

  Isaque Pinheiro
  Fundador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder
#4
Na Demo com Dataset, ocorre o mesmo erro.
Já na Demo sem Dataset, tudo funciona corretamente.
Desenvolvedor Junior
The Worlds is a Filthy Place
Responder
#5
Qual a versão do seu Delphi, pois aqui para mim no Delphi Berlin, tudo funciona normal sem erro.

Se não estou enganado, passei por um erro desse, mas corrigi e subi as correções para o repositório.

Crie um demo simples, que mostre o erro e me manda para eu testar aqui.

  Isaque Pinheiro
  Fundador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder
#6
Estamos usando o XE7, vou testar no Berlin aqui, e já lhe retorno.
Desenvolvedor Junior
The Worlds is a Filthy Place
Responder
#7
Outro detalhe que poderia ocasionar esse erro é:
Se vc está usando o driver para acesso ao banco SQLite, deve adicionar no uses do seu projeto a unit "ormbr.dml.generator.sqlite.pas" para que a mesma dispare o método no escopo initialization

Código:
initialization
  TDriverRegister.RegisterDriver(dnSQLite, TDMLGeneratorSQLite.Create);

Qualquer coisa adicione essa unit ao seu projeto e debug essa linha para vê se está passando por ela, para registrar o driver.

  Isaque Pinheiro
  Fundador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder
#8
Era isso!
Faltava essa Uses. Smile
Muito Obrigado Isaque.
Desenvolvedor Junior
The Worlds is a Filthy Place
Responder
#9
Que isso, obrigado vc por acreditar no projeto, precisando só chamar.

Estou fazendo um tratamento, para essa situação, avisando assim o motivo do erro, para que auxilie melhor a quem possa passar pela situação.

  Isaque Pinheiro
  Fundador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder
#10
Solução para a situação, disponibilizada no repositório, agora o ORMBr irá alertar o desenvolvedor com a seguinte tela de erro.


Arquivo(s) anexado(s)
.png   Hoje, 11:48 PM">registerdriver.png (Tamanho: 5.31 KB / Downloads: 868)

  Isaque Pinheiro
  Fundador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder


Possíveis Tópicos Relacionados...
Tópico: Autor Respostas: Visualizações: Última Mensagem
  Erro de " Item not found " Geule 3 4,376 27-06-2018, 08:06 PM
Última Mensagem: Osiel Gomes

Saltar Fórum:


usuários a ver este tópico: 1 Visitante(s)