Salvar pedidos

Delphi

07/07/2011

tenho um aplicativo onde cadastro os pedidos na TABELAPEDIDO e dentro desta tabela tenho uma stringgrid onde cadastro os produtos TABELAITENS, utilizando a relação de pai e filhos, ou seja, um unico pedido pode ter diversos produtos porem ao tentar salvar utilizando estes codigos:
DBEdit15.Text:= TiraPonto(DBEdit15.Text);
  DBEdit16.Text:= TiraPonto(DBEdit16.Text);
  DBEdit17.Text:= TiraPonto(DBEdit17.Text);
  DBEdit18.Text:= TiraPonto(DBEdit17.Text);
  DBEdit20.Text:= '0';
  if StringGrid1.RowCount = 6 then exit;
  ADOTable1.Post;
  for i := 1 to StringGrid1.RowCount - 6 do
    begin
      ADOTable4.Append;
      ADOQuery1.SQL.Clear;
      ADOQuery1.SQL.Add('insert into TABELAITEM values(:Produto, :Unidade, :ValorUnitario, :Qtd, :ValorTotal)');
      ADOQuery1.Parameters.ParamByName('Produto').Value := Form_Itens.ADOQuery1.Fieldbyname('PRODUTO').DisplayText;//Atribui ao campo produto da tabela itens o registro do codigo do produto da tabela produtos
      ADOQuery1.Parameters.ParamByName('Unidade').Value := StringGrid1.Cells[1,i];
      ADOQuery1.Parameters.ParamByName('ValorUnitario').Value := StringGrid1.Cells[2,i];
      ADOQuery1.Parameters.ParamByName('Qtd').Value := StringGrid1.Cells[3,i];
      ADOQuery1.Parameters.ParamByName('ValorTotal').Value := StringGrid1.Cells[4,i];
      ADOQuery1.ExecSQL;}
    end;
    StringGrid1.RowCount:= 6;
      for I := 1 to 5 do
      begin
        StringGrid1.Cells[0,i] :='';
        StringGrid1.Cells[1,i] :='';
        StringGrid1.Cells[2,i] :='';
        StringGrid1.Cells[3,i] :='';
        StringGrid1.Cells[4,i] :='';
o aplicativo da o seguinte erro:'Numero de valores de consulta e campos de destino não coincidem.'
Daniel

Daniel

Curtidas 0

Respostas

José

José

07/07/2011

Este tópico esta sendo fechado por inatividade. Se necessário, sinalizar para que seja reaberto ou abrir um novo.
GOSTEI 0
POSTAR