estou aprendendo delphi e fiz um programa de controle de estoque mas quando clico no botão para gravar da a mensagem 'Dataset not in edit or insert mod' estou enviando o codigo que estou usando, por favor me ajude.
procedure TfrmPedidos.SpeedButton1Click(Sender: TObject);
begin
modestoque.tbDetPed.Edit;
modestoque.tbDetPed.First;
while not modestoque.tbDetPed.Eof do
begin
modestoque.tbProduto.Locate('CodPro',modestoque.tbDetPedCodPro.Value,[]);
if modestoque.tbDetPedBaixa.Value<> true then
begin
modestoque.tbProduto.Edit;
modestoque.tbProdutoQuantEst.Value:=modestoque.tbProdutoQuantEst.Value -
modestoque.tbDetPedQuantidade.Value;
modestoque.tbProduto.Post;
modestoque.tbDetPed.Edit;
modestoque.tbDetPedBaixa.Value:=True;
modestoque.tbDetPed.Post;
end;
modestoque.tbDetPed.Post;