Fórum Como gravar varios dados de uma só vez no banco? #367675
12/01/2009
0
Estou tentando gravar num dbgrid todos checbox com a letra T, ai quando executo este codigo grava.
Mais é só eu sair do form e voltar de novo, não tem nada gravado, é como se eu não apliquei o applyupdates no codigo.
Uso FB e componentes IBX
if Application.MessageBox(´Deseja marcar todos?´,´Aviso´,36) = idyes then
begin
try
with ibEmpresas do
begin
DisableControls; //desativa os controles para melhorar a performance da soma
Open;
First; //começo da tabela
while not Eof do //enquanto não for o fim
begin
Edit;
ibEmpresas.FieldByName(´marcarbox´).AsString := ´T´; //faz a soma total da tabela
//ibEmpresasCDEMPRESA.Value := StrToInt(frmPrincipal.StatusBar1.Panels[1].Text);
//Delete;
Post;
Next; //proximo
end;
EnableControls; //quando terminar ativa os controles novamente.
end;
if not dm.Transaction.InTransaction then
dm.Transaction.StartTransaction;
dm.Transaction.CommitRetaining;
{Atualiza o CDS para deixar a dbgrid atualizada}
DBGrid2.Refresh;
//ibEmpresas.Close;
//ibEmpresas.Open;
except
on E:Exception do
begin
if not dm.Transaction.InTransaction then
dm.Transaction.StartTransaction;
dm.Transaction.RollbackRetaining;
MessageDlg(´Ocorreu um erro neste processo. ´ +#1313 +´Erro gerado: ´+13+
E.Message + 1313 + ´Todo o processo foi abortado!´, mtError, [mbOk],0);
Abort;
end;
end; //Final try/except
end;Mais é só eu sair do form e voltar de novo, não tem nada gravado, é como se eu não apliquei o applyupdates no codigo.
Uso FB e componentes IBX
Adriano_servitec
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)