Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Problema na Inserção de Registro


SAMW
 Share

Question

Bom dia pessoal estou precisando de uma ajuda meio urgente se alguém puder me ajudar eu agradeço muito, estou criando um projeto no Delphi 2007 e utilizando Interbase 10 como banco de dados.

Meu problema é o seguinte pelo banco de dados eu consigo inserir inumeros registros nas tabelas mas quando eu coloco no delphi ele não deixa eu colocar a tabela em modo de execução estou utilizando os componentes IBDatabase, IBTransaction, IBTable da palheta do interbase

Aqui está o código para o botão de inserção:

Banco.IBTableAUTOR.Insert;

if Banco.IBTableAUTOR.State in [dsInsert] then

begin

Banco.IBTableAUTOR.Last;

ultcod := Banco.IBTableAUTORCODIGO_AUTOR.value+1;

Banco.IBTableAUTORCODIGO_AUTOR.value := ultcod;

end;

O problema é que quando eu clico nesse botão ele me da a seguinte mensagem:

" not in edit mode "

já tentei utilizar no lugar dessa linha:

Banco.IBTableAUTOR.Insert;

essa:

Banco.IBTableAUTOR.Append;

mas tb não resolveu o problema continua dando a mesma mensagem se alguém puder me ajudar eu agradeço mesmo pela atenção

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

" not in edit mode "

Não esta no modo de edição ... use dessa maneira

begin
Banco.IBTableAUTOR.Last;  //  ultimo registro da tabela

Banco.IBTableAUTOR.Append;  //  inserir novo registro

Banco.IBTableAUTOR.Edit; // modo de  Edição do registro

ultcod := Banco.IBTableAUTORCODIGO_AUTOR.value+1;
Banco.IBTableAUTORCODIGO_AUTOR.value := ultcod;

Banco.IBTableAUTOR.Post;  //  gravar o registro

Banco.IBTableAUTOR.ApplyUpdates(-1);  // aplicar atualização nos registros 

end;

abraço

Link to comment
Share on other sites

  • 0

Boa tarde muito obrigado pela ajuda mas ainda não resolveu o problema na linha

Banco.IBTableAUTOR.ApplyUpdates(-1); // aplicar atualização nos registros

ele da um erro na parte em destaque se eu rodo ele sem essa parte ele compila mas no segundo registro ele já da um erro de cache e o código que eu tinha passado era para o botão inserir tem como dividir esse comando para colocar uma parte no inserir e a outra no salvar???

desde já muito obrigado mesmo pela ajuda

Link to comment
Share on other sites

  • 0

pode ser assim tambem

Banco.IBTableAUTOR.ApplyUpdates;

erro de cache e o código que eu tinha passado era para o botão inserir tem como dividir esse comando para colocar uma parte no inserir e a outra no salvar???

voce pode dividir sim... o padrão é voce usar botões de opção

exemplo:

1 - botão incluir

2 - botão Alterar

3 - botão Excluir

4 - botão Imprimir

5 - botão OK

6 - botão Cancel

no botão OK voce salva o registro e no botão Cancel voce cancela o registro

abraço

Link to comment
Share on other sites

  • 0

Boa noite desculpa a minha demora pra responder mas estava acertando os códigos a minhas necessidades mas ainda estou com um problema e se puderem me ajudar eu agradeço muito eu clico em novo e coloco o codigo:

begin
Banco.IBTableAUTOR.Last;  //  ultimo registro da tabela

Banco.IBTableAUTOR.Append;  //  inserir novo registro

Banco.IBTableAUTOR.Edit; // modo de  Edição do registro

ultcod := Banco.IBTableAUTORCODIGO_AUTOR.value+1;
Banco.IBTableAUTORCODIGO_AUTOR.value := ultcod;
end;
e no botão salvar o código:
begin

  Banco.IBTableAUTOR.Post;  //  gravar o registro

  Banco.IBTableAUTOR.ApplyUpdates;  // aplicar atualização nos registros

end;

no botão novo tá tranquilo mas quando eu clico em salvar me da a seguinte mensagem:

" CachedUpdates not enabled "

se alguém puder me ajudar eu agradeço

Link to comment
Share on other sites

  • 0

Muito obrigado pela ajuda e espero poder colaborar bastante com todos no que vocês precisarem também acabei nem precisando ler o artigo eu apenas retirei a linha:

Banco.IBTableAUTOR.ApplyUpdates;  // aplicar atualização nos registros
deixando assim: INSERIR:
begin
Banco.IBTableAUTOR.Last;  //  ultimo registro da tabela

Banco.IBTableAUTOR.Append;  //  inserir novo registro

Banco.IBTableAUTOR.Edit; // modo de  Edição do registro

ultcod := Banco.IBTableAUTORCODIGO_AUTOR.value+1;
Banco.IBTableAUTORCODIGO_AUTOR.value := ultcod;
end;
SALVAR:
begin

  Banco.IBTableAUTOR.Post;  //  gravar o registro

end;

e consegui resolver todos os meus problemas obrigado mesmo pela ajuda e se precisarem de algo podem contar comigo!!!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.9k
    • Total Posts
      648.8k
×
×
  • Create New...