Fórum Duvidas em uma dbcheckbox #411867
24/01/2012
0
Nao sei çporque isto esta acontecendo para fazer funcionar tenho que selecionar os pedidos que recebi e selecionar um a mais para ele alterar o ultimo.
Daniel
Curtir tópico
+ 0Posts
24/01/2012
Marcos Rocha
Gostei + 0
24/01/2012
Daniel
Mas onde e como devo colocar os codigos...
Bom, deixei desta forma no evento dbcheckboxclick
if dbcheckbox1.checked then begin dbcheckbox1.caption := dbcheckbox1.valuechecked; adoquery1.edit; adoquery1.post; end else begin dbcheckbox1.caption := dbcheckbox1.valueunchecked; adoquery1.edit; adoquery1.post; end; end;
mas ao clicar ele nao marca a checkbox e ao dar varios cliques ele mostra o seguinte erro:
ADOQuery1: DataSet not in edit or insert mode
Gostei + 0
25/01/2012
Marcos Rocha
Para que os dados do seu DataSet fiquem postados, você pode implementar o evento OnDataChange do DataSource da seguinte forma:
procedure TForm2.DataSource1DataChange(Sender: TObject; Field: TField);
begin
if ClientDataSet1.Modified then
ClientDataSet1.Post;
ClientDataSet1.Edit;
end;Lembrando que o OnDataChange é disparado, inclusive, quando você troca de coluna ou registro. Então sempre que você receber o erro DataSet is not in Editing mode é porque tem que dar um ClientDataSet1.Edit.
Caso tenha resolvido seu problema, por favor, finalize este chamado técnico.
Gostei + 0
27/01/2012
Daniel
Para que os dados do seu DataSet fiquem postados, você pode implementar o evento OnDataChange do DataSource da seguinte forma:
procedure TForm2.DataSource1DataChange(Sender: TObject; Field: TField);
begin
if ClientDataSet1.Modified then
ClientDataSet1.Post;
ClientDataSet1.Edit;
end;Lembrando que o OnDataChange é disparado, inclusive, quando você troca de coluna ou registro. Então sempre que você receber o erro DataSet is not in Editing mode é porque tem que dar um ClientDataSet1.Edit.
Caso tenha resolvido seu problema, por favor, finalize este chamado técnico.
Marcos ao executar ele aparece o seguinte erro:
Stack overflow
Checko o primeiro e ao tentar o segundo pedido ele mostra o erro...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)