Fórum Inclusão de produtos da tela de vendas no banco #535942
29/10/2015
0
Estou com dificuldade em algo que deve ser bem simples mas não consigo entender.
Estou criando um sistema de PDV simples e estou com um problema para incluir todos os produtos da tela de vendas na minha tabela do banco.
Se eu jogar 10 produtos na tela, apenas o último fica salvo no banco.
Alguém poderia me ajudar?
Estou utilizando Firebird 2.5 e Xe3.
Segue meu código de finalizar a venda, aqui ele lança os produtos em um CDS e abre a tela de finalização onde o usuário daria desconto e escolheria a forma de pagamento e daria um applyupdates no CDS...
procedure TfrmVendas.BitBtn3Click(Sender: TObject);
begin
dsPedido.DataSet.Open;
dsPedido.DataSet.Insert;
dmFechamento.cdsPedido.FieldByName('DATA').AsDateTime := now;
dmFechamento.cdsPedido.FieldByName('HORA_FECHA').AsDateTime := TIME;
dmFechamento.cdsPedidoVALOR_TOTAL.Value := ClientDataSet1SomaTotal.Value;
dmFechamento.cdsPedidoQTD_PRODUTO.Value := ClientDataSet1Qtd.Value;
dmFechamento.cdsPedidoCORTE.Value := ClientDataSet1TipoCorte.Value;
dmFechamento.cdsPedidoBORDA.Value := ClientDataSet1Borda.Value;
dmFechamento.cdsPedidoTAMANHO.Value := ClientDataSet1Tamanho.Value;
dmFechamento.cdsPedidoOBS_PRODUTO.Value := ClientDataSet1Obs.Value;
dmFechamento.cdsPedidoID_PRODUTO.Value := ClientDataSet1Id_Produto.Value;
dmFechamento.cdsPedidoID_SECAO.Value := ClientDataSet1ID_SECAO.Value;
dmFechamento.cdsPedidoID_FORNECEDOR.Value := ClientDataSet1ID_FORNECEDOR.Value;
dsPedido.DataSet.Post;
// dmFechamento.cdsPedido.ApplyUpdates(0);
frmFechamento := TfrmFechamento.Create(Self);
frmFechamento.ShowModal;
FreeAndNil(frmFechamento);
end;Obrigado.
William Pacini
Curtir tópico
+ 0Posts
29/10/2015
Wazowski
Gostei + 0
30/10/2015
Raimundo Pereira
Gostei + 0
02/11/2015
Dirceu Morais
procedure TfrmVendas.BitBtn3Click(Sender: TObject);
begin
dsPedido.DataSet.Open;
ClientDataSet1.first;
While Not ClientDataSet1.eof do
Begin
dmFechamento.cdsPedido.DataSet.Insert;
dmFechamento.cdsPedido.FieldByName('DATA').AsDateTime := now;
dmFechamento.cdsPedido.FieldByName('HORA_FECHA').AsDateTime := TIME;
dmFechamento.cdsPedidoVALOR_TOTAL.Value := ClientDataSet1SomaTotal.Value;
dmFechamento.cdsPedidoQTD_PRODUTO.Value := ClientDataSet1Qtd.Value;
dmFechamento.cdsPedidoCORTE.Value := ClientDataSet1TipoCorte.Value;
dmFechamento.cdsPedidoBORDA.Value := ClientDataSet1Borda.Value;
dmFechamento.cdsPedidoTAMANHO.Value := ClientDataSet1Tamanho.Value;
dmFechamento.cdsPedidoOBS_PRODUTO.Value := ClientDataSet1Obs.Value;
dmFechamento.cdsPedidoID_PRODUTO.Value := ClientDataSet1Id_Produto.Value;
dmFechamento.cdsPedidoID_SECAO.Value := ClientDataSet1ID_SECAO.Value;
dmFechamento.cdsPedidoID_FORNECEDOR.Value := ClientDataSet1ID_FORNECEDOR.Value;
dsPedido.DataSet.Post;
ClientDataSet1.next;
end;
dmFechamento.cdsPedido.ApplyUpdates(0);
frmFechamento := TfrmFechamento.Create(Self);
frmFechamento.ShowModal;
FreeAndNil(frmFechamento);
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)