Atualização só depois que o form fecha????
Algumas duvidas:
- Primeiro: Uso Delphi 7 / Interbase 6.0 / Firebird 1.5
- Pessoal, alguem poderia me dizer porque na minha aplicação os dados que ´gravo´ na tabela, na verdade nao sao gravados nele até que eu saia por completo da minha aplicação???? Alguem teria a solução para isso, para que ao apertar no botao salvar os dados fossem realmente gravados fisicamente na tabela....
exemplo de código:
- outra duvida. nao consigo editar nenhuma tabela de minha aplicação. ja fiz de um tudo aqui ja postei duvidas no forum mais nao teve jeito... vou postar novamente o código de edição que uso aqui. os componentes do banco de dados sao os da paleta Interbase. a ligação está tudo ok. ja to ficando maluco com esse problema (ele ja se tornou uma novela aqui no meu serviço)... se alguem quiser envio as UNITS pra quem se habilitar a tentar resolver esse meistério da meia noite....
- O problema: Simplesmente nao edita, só isso, mas o código roda até a mensagem de material editado com sucesso...
Tabela
--------
- Primeiro: Uso Delphi 7 / Interbase 6.0 / Firebird 1.5
- Pessoal, alguem poderia me dizer porque na minha aplicação os dados que ´gravo´ na tabela, na verdade nao sao gravados nele até que eu saia por completo da minha aplicação???? Alguem teria a solução para isso, para que ao apertar no botao salvar os dados fossem realmente gravados fisicamente na tabela....
exemplo de código:
procedure TLivros.Btn_SalvarClick(Sender: TObject); begin if Livros.Edit_Nome.Text = ´´ then ShowMessage(´Campo Nome está vazio, por favor verifique´) else begin DM.Tbl_Livros.Last; If Not(DM.Tr_Livros.InTransaction) Then DM.Tr_livros.StartTransaction; DM.Tbl_Livros.insert; DM.Tbl_Livros.FieldByName(´Codigo´).AsInteger := StrToInt(Edit_Codigo.Text); DM.Tbl_Livros.FieldByName(´Nome´).AsString := Edit_Nome.text; DM.Tbl_Livros.FieldByName(´Tipo´).AsString := Combo_Tipo.text; DM.Tbl_Livros.FieldByName(´Quantidade´).AsString:= Edit_Qtdade.text; DM.Tbl_Livros.FieldByName(´Autor´).AsString := Combo_autor.text; DM.Tbl_Livros.FieldByName(´Editora´).AsString := Combo_Editora.text; DM.Tbl_Livros.FieldByName(´Sinopse´).AsString := Memo_Sinopse.Lines.Text; DM.Tbl_Livros.FieldByName(´Area´).AsString := Combo_Area.text; DM.Tbl_Livros.FieldByName(´Exemplar´).AsString := Edit_Exemplar.text; DM.Tbl_Livros.FieldByName(´Volume´).AsString := Edit_Volume.text; DM.Tbl_Livros.FieldByName(´Local´).AsString := Edit_LocalEdicao.text; DM.Tbl_Livros.FieldByName(´Ano_Edicao´).AsString:= Edit_AnoEdicao.text; DM.Tbl_Livros.FieldByName(´Edicao´).AsString := Edit_Edicao.text; DM.Tbl_Livros.post; DM.Tbl_Livros.ApplyUpdates; ShowMessage(´Material Cadastrado Com Sucesso.´); limpa_Edit; Btn_Salvar.Enabled := False; Btn_Editar.Enabled := FALSE; Btn_Up.Enabled := true; Btn_Down.Enabled := true; Edit_Disable; end; end;
- outra duvida. nao consigo editar nenhuma tabela de minha aplicação. ja fiz de um tudo aqui ja postei duvidas no forum mais nao teve jeito... vou postar novamente o código de edição que uso aqui. os componentes do banco de dados sao os da paleta Interbase. a ligação está tudo ok. ja to ficando maluco com esse problema (ele ja se tornou uma novela aqui no meu serviço)... se alguem quiser envio as UNITS pra quem se habilitar a tentar resolver esse meistério da meia noite....
- O problema: Simplesmente nao edita, só isso, mas o código roda até a mensagem de material editado com sucesso...
procedure TLivros.Btn_EditarClick(Sender: TObject); begin if Livros.Edit_Nome.Text = ´´ then ShowMessage(´Campo Nome está vazio, por favor verifique´) else begin DM.Tbl_Livros.Edit; //DM.Tbl_LivrosCODIGO.AsInteger := StrToInt(Edit_Codigo.text); DM.Tbl_LivrosNome.AsString := Edit_Nome.text; DM.Tbl_LivrosTipo.AsString := Combo_Tipo.text; DM.Tbl_LivrosQuantidade.AsString:= Edit_Qtdade.text; DM.Tbl_LivrosAutor.AsString := Combo_autor.text; DM.Tbl_LivrosEditora.AsString := Combo_Editora.text; DM.Tbl_LivrosSinopse.AsString := Memo_Sinopse.Lines.Text; DM.Tbl_LivrosArea.AsString := Combo_Area.text; DM.Tbl_LivrosExemplar.AsString := Edit_Exemplar.text; DM.Tbl_LivrosVolume.AsString := Edit_Volume.text; DM.Tbl_LivrosLocal.AsString := Edit_LocalEdicao.text; DM.Tbl_LivrosAno_Edicao.AsString:= Edit_AnoEdicao.text; DM.Tbl_LivrosEdicao.AsString := Edit_Edicao.text; DM.Tbl_Livros.Post; DM.Tbl_Livros.ApplyUpdates; ShowMessage(´Material Editado Com Sucesso.´); limpa_Edit; Btn_Salvar.Enabled := False; Btn_Editar.Enabled := FALSE; Btn_Up.Enabled := true; Btn_Down.Enabled := true; Edit_Disable; end; end;
Tabela
--------
CREATE TABLE "LIVROS"
(
"CODIGO"INTEGER NOT NULL,
"NOME"VARCHAR(100) NOT NULL,
"QUANTIDADE"VARCHAR(50),
"TIPO"VARCHAR(50),
"AUTOR"VARCHAR(100),
"SINOPSE"VARCHAR(1000),
"EDITORA"VARCHAR(50),
"EXEMPLAR"VARCHAR(50),
"VOLUME"VARCHAR(50),
"EDICAO"VARCHAR(50),
"ANO_EDICAO"VARCHAR(50),
"LOCAL"VARCHAR(50),
"AREA"VARCHAR(50),
"STATUS"VARCHAR(50),
"RESERVA"VARCHAR(50),
CONSTRAINT "PK_LIVROS" PRIMARY KEY ("CODIGO")
);
Mahdak
Curtidas 0
Respostas
Edineidaniel
25/08/2005
Mahdak,
Você não especificou os componentes de acesso ao banco de dados, que você esta usando...
Mas acredito que seja da paleta InterBase.... Esses tm um sério problema na atualização dos dados em tempo de execussão...
Mas tm jeito de resolve....
1º - Você deve dar um Commit na transação...
2º - Atualizar a conexão com o banco....
3º - Atualizar a tabela ou Query...
Issoo!!!!
t+
Edinei
Você não especificou os componentes de acesso ao banco de dados, que você esta usando...
Mas acredito que seja da paleta InterBase.... Esses tm um sério problema na atualização dos dados em tempo de execussão...
Mas tm jeito de resolve....
1º - Você deve dar um Commit na transação...
2º - Atualizar a conexão com o banco....
3º - Atualizar a tabela ou Query...
Issoo!!!!
t+
Edinei
GOSTEI 0
Mahdak
25/08/2005
Mahdak,
Você não especificou os componentes de acesso ao banco de dados, que você esta usando...
Mas acredito que seja da paleta InterBase.... Esses tm um sério problema na atualização dos dados em tempo de execussão...
Mas tm jeito de resolve....
1º - Você deve dar um Commit na transação...
2º - Atualizar a conexão com o banco....
3º - Atualizar a tabela ou Query...
Issoo!!!!
t+
Edinei
isso mesmo edinei, sao os componentes da paleta interbase... vc poderia dar um exemplo aqui pra mim de código de como adotar esses tres passos?, pq se eh omo estou pensando ja fiz e nao deu certo...
Abraços!
GOSTEI 0
Mahdak
25/08/2005
sobe, pessoal é importante.... :cry:
GOSTEI 0
Gandalf.nho
25/08/2005
[b:57d6d01dae][color=red:57d6d01dae]Bloqueado por Infração às Regras de Conduta :[/color:57d6d01dae][/b:57d6d01dae]
Duplicidade.
[url]http://forum.clubedelphi.net/viewtopic.php?p=215114[/url]
Para maiores esclarecimentos pode mandar-me uma [url=http://forum.clubedelphi.net/privmsg.php?mode=post&u=8378]Mensagem Particular[/url].
Duplicidade.
[url]http://forum.clubedelphi.net/viewtopic.php?p=215114[/url]
Para maiores esclarecimentos pode mandar-me uma [url=http://forum.clubedelphi.net/privmsg.php?mode=post&u=8378]Mensagem Particular[/url].
GOSTEI 0