Record not found or changed by another user

Delphi

22/08/2007

---------------------------
Debugger Exception Notification
---------------------------
Project MATERIAIS.exe raised exception class EDatabaseError with message ´Record not found or changed by another user´.
---------------------------
Break Continue Help
---------------------------

Esta dando esse erro quando faço uma inserção. Mais grava no banco.

O que pode ser?

Vai aí a DFM se for ajudar:


 object sdsProjeto: TSQLDataSet
    Active = True
    CommandText = ´select * from projeto´
    MaxBlobSize = -1
    Params = <>
    SQLConnection = Conexao
    Left = 32
    Top = 80
    object sdsProjetoID_PROJETO: TIntegerField
      FieldName = ´ID_PROJETO´
    end
    object sdsProjetoNOME_PROJETO: TStringField
      FieldName = ´NOME_PROJETO´
      Size = 70
    end
    object sdsProjetoDATA_REGISTRO: TStringField
      FieldName = ´DATA_REGISTRO´
      Size = 15
    end
  end
  object dspProjeto: TDataSetProvider
    DataSet = sdsProjeto
    Left = 32
    Top = 144
  end
  object cdsProjeto: TClientDataSet
    Active = True
    Aggregates = <>
    Params = <>
    ProviderName = ´dspProjeto´
    AfterPost = cdsProjetoAfterPost
    AfterDelete = cdsProjetoAfterDelete
    Left = 32
    Top = 208
    object cdsProjetoID_PROJETO: TIntegerField
      Alignment = taCenter
      FieldName = ´ID_PROJETO´
    end
    object cdsProjetoNOME_PROJETO: TStringField
      FieldName = ´NOME_PROJETO´
      Size = 70
    end
    object cdsProjetoDATA_REGISTRO: TStringField
      FieldName = ´DATA_REGISTRO´
      EditMask = ´99/99/9999;1;_´
      Size = 15
    end
  end
  object dsProjeto: TDataSource
    DataSet = cdsProjeto
    Left = 32
    Top = 288
  end
end



Jpauloss

Jpauloss

Curtidas 0

Respostas

Leufmt

Leufmt

22/08/2007

Já respondi em outro forúm


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

22/08/2007

problema resolvido ?


GOSTEI 0
Jpauloss

Jpauloss

22/08/2007

problema resolvido ?


Ainda Não.
Não estou estou conseguindo resolver esse problema.
O programa não está sendo utilizado em rede. A chave primária é auto-incremente em uma Trigger:
SET SQL DIALECT 3;

SET NAMES ISO8859_1;

CREATE GENERATOR SEQ_PROJETO_ID;

SET TERM ^ ;


CREATE TRIGGER PROJETO_BI FOR PROJETO
ACTIVE BEFORE INSERT POSITION 0
as
begin
  if (new.id_projeto is null) then
    new.id_projeto = gen_id(seq_projeto_id,1);
end
^


SET TERM ; ^


Tem alguma idéia?


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

22/08/2007

coloque o item poPropagateChanges na propriedade Options do seu DatasetProvider e veja se resolve o problema.


GOSTEI 0
Jpauloss

Jpauloss

22/08/2007

coloque o item poPropagateChanges na propriedade Options do seu DatasetProvider e veja se resolve o problema.

Resolveu não. Tem mais alguma coisa que possa ser alterada?


GOSTEI 0
POSTAR