Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Erro de " Item not found "
#1
Olá amigos!

Estou iniciando agora no Framework. 
Procurei mas não encontrei solução para a seguinte
situção:

Ao executar um update, em uma tabela que possui FK, 
ocorre erro de "Item not Found" exatamente no campo
da chave estrangeira. 


Código:
var
 objSubgrupo: TSUBGRUPO;
begin
  objSubgrupo := TSUBGRUPO.Create;
  try
    try
      objSubgrupo.ID := FIDRegistro;
      objSubgrupo.IDGRUPO := FIDGrupo; {erro aqui de Item Not Found}
      objSubgrupo.SUBBRUPO_DESC := edtSubgrupo.Text;
      //
      oContainerClient.Update(objSubgrupo);
      oMaster.Save(objSubgrupo);
      oMaster.ApplyUpdates(0);
      //
      Result := True;
    except
      Result := False;
      raise Exception.Create(ErrorEdit);
    end;
  finally
    objSubgrupo.Free;
  end;

Segue parte do código da classe:


Código:
//....
Restrictions([NotNull])]
[Column('FK_GRUPO', ftInteger)]
[ForeignKey('FK_SUBGRUPO_1', 'FK_GRUPO', 'GRUPO', 'ID_GRUPO', SetNull, Cascade)]
[Dictionary('FK_GRUPO', 'Mensagem de validação', '', '', '', taCenter)]
property IDGRUPO: Integer read FIDGRUPO write FIDGRUPO;
//....


Muito Obrigado!
Responder
#2
(24-06-2018, 10:00 PM)Geule Escreveu: Olá amigos!

Estou iniciando agora no Framework. 
Procurei mas não encontrei solução para a seguinte
situção:

Ao executar um update, em uma tabela que possui FK, 
ocorre erro de "Item not Found" exatamente no campo
da chave estrangeira. 


Código:
var
 objSubgrupo: TSUBGRUPO;
begin
  objSubgrupo := TSUBGRUPO.Create;
  try
    try
      objSubgrupo.ID := FIDRegistro;
      objSubgrupo.IDGRUPO := FIDGrupo; {erro aqui de Item Not Found}
      objSubgrupo.SUBBRUPO_DESC := edtSubgrupo.Text;
      //
      oContainerClient.Update(objSubgrupo);
      oMaster.Save(objSubgrupo);
      oMaster.ApplyUpdates(0);
      //
      Result := True;
    except
      Result := False;
      raise Exception.Create(ErrorEdit);
    end;
  finally
    objSubgrupo.Free;
  end;

Segue parte do código da classe:


Código:
//....
Restrictions([NotNull])]
[Column('FK_GRUPO', ftInteger)]
[ForeignKey('FK_SUBGRUPO_1', 'FK_GRUPO', 'GRUPO', 'ID_GRUPO', SetNull, Cascade)]
[Dictionary('FK_GRUPO', 'Mensagem de validação', '', '', '', taCenter)]
property IDGRUPO: Integer read FIDGRUPO write FIDGRUPO;
//....


Muito Obrigado!

vc está tentando pegar o valor de uma VAR interna da classe como ??? Como assim, olhe nos exemplos, la mostra como fazer.

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

Responder
#3
(25-06-2018, 09:03 AM)Isaque Pinheiro Escreveu:
(24-06-2018, 10:00 PM)Geule Escreveu: Olá amigos!

Estou iniciando agora no Framework. 
Procurei mas não encontrei solução para a seguinte
situção:

Ao executar um update, em uma tabela que possui FK, 
ocorre erro de "Item not Found" exatamente no campo
da chave estrangeira. 


Código:
var
 objSubgrupo: TSUBGRUPO;
begin
  objSubgrupo := TSUBGRUPO.Create;
  try
    try
      objSubgrupo.ID := FIDRegistro;
      objSubgrupo.IDGRUPO := FIDGrupo; {erro aqui de Item Not Found}
      objSubgrupo.SUBBRUPO_DESC := edtSubgrupo.Text;
      //
      oContainerClient.Update(objSubgrupo);
      oMaster.Save(objSubgrupo);
      oMaster.ApplyUpdates(0);
      //
      Result := True;
    except
      Result := False;
      raise Exception.Create(ErrorEdit);
    end;
  finally
    objSubgrupo.Free;
  end;

Segue parte do código da classe:


Código:
//....
Restrictions([NotNull])]
[Column('FK_GRUPO', ftInteger)]
[ForeignKey('FK_SUBGRUPO_1', 'FK_GRUPO', 'GRUPO', 'ID_GRUPO', SetNull, Cascade)]
[Dictionary('FK_GRUPO', 'Mensagem de validação', '', '', '', taCenter)]
property IDGRUPO: Integer read FIDGRUPO write FIDGRUPO;
//....


Muito Obrigado!

vc está tentando pegar o valor de uma VAR interna da classe como ??? Como assim, olhe nos exemplos, la mostra como fazer.

Olá  parceiro. Obrigado por responder.

Não estou pegando nenhuma variável interna não. 

Única coisa que fiz foi: Por meio da ferramenta geradora de classe, gerei duas classes (grupo e subgrupo), onde subgrupo tem FK de grupo. 
Os comandos para atualizar (acima citado) na classe de grupo funcionada OK; mas na classe de subgrupo que tem a FK não funcionada.

As estruturas das tabelas são:

Grupo [ID, DESC_GRUPO]
Subgrupo [ID, IDGRUPO, DESC_SUBGRUPO]

Os olhei os exemplos sim.

Vou voltar lá nos exemplos e analisar mais. 

Vlw brother.
Responder
#4
Boa noite!!!!

É firebird?
Responder


Possíveis Tópicos Relacionados...
Tópico: Autor Respostas: Visualizações: Última Mensagem
  Erro: Column cannot be repeated in update statement Cassiano 4 2,590 16-02-2019, 12:40 PM
Última Mensagem: Isaque Pinheiro
  Erro depois de atualização (ormbr.typer.blob) Osiel Gomes 1 1,525 15-05-2018, 01:23 PM
Última Mensagem: juliomar
  ERRO AO ABRIR DEMO ORMBrFireDac.dproj - Delphi XE7 willian 1 1,847 17-12-2017, 09:00 PM
Última Mensagem: juliomar
  "Item Not Found" em TDriverRegister.GetDriver Eduardo Girotto 14 8,641 22-11-2016, 09:29 AM
Última Mensagem: Eduardo Girotto

Saltar Fórum:


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