tenho um datagridview que é alimentado por uma pesquisa em um banco de dados para realizar uma venda porem so consigo vender um produto de cada vez pois a tabela de vendas nao consegue receber 2 ou mais produtos simultaneamente ja tentamos separar a tabela de vendas em 2: itens_venda e vendas, onde vendas armazena o codigo da venda, a forma de pagamento e a data, enquanto itens_venda armazena os produtos. Quando finalizo a venda só é feito o armazenamento na tabela de vendas(que é feito por uma procedure) e na itens_venda nao acontece nada (o armazenamento aqui é realizado pelo table adapter e data table) se voces puderem me ajudar ficaria muito grato
segue o código do botão de finalizar compra
private void btnFinCompra_Click(object sender, EventArgs e) { try { int codigo = Convert.ToInt16(TAVendas.insereVenda(DateTime.Now, pagamento)); txtCodVenda.Text = codigo.ToString(); try { for(int cont = 0; cont<=dgvVenda.Rows.Count - 2; cont++) { DadosDataSet.tbitensvendaRow linha; linha = (DadosDataSet.tbitensvendaRow)DTitens.NewRow(); linha.BeginEdit(); linha.codvenda = Convert.ToInt16(txtCodVenda.Text); linha.codproduto = Convert.ToInt16(dgvVenda.Rows[cont].Cells["clmCodigo"].Value); linha.nomecor = dgvVenda.Rows[cont].Cells["clmNomeCor"].Value.ToString(); linha.categoria = dgvVenda.Rows[cont].Cells["clmCategoria"].Value.ToString(); linha.subcategoria = dgvVenda.Rows[cont].Cells["clmSubCat"].Value.ToString(); linha.subcategoria2 = dgvVenda.Rows[cont].Cells["clmSubCat2"].Value.ToString(); linha.qtde = Convert.ToInt16(dgvVenda.Rows[cont].Cells["clmQtde"].Value); linha.peso = Convert.ToDouble(dgvVenda.Rows[cont].Cells["clmPeso"].Value); linha.marcatipo = dgvVenda.Rows[cont].Cells["clmMarcaTipo"].Value.ToString(); linha.precovenda = Convert.ToDouble(dgvVenda.Rows[cont].Cells["clmPreco"].Value); linha.totalvenda = Convert.ToDouble(dgvVenda.Rows[cont].Cells["clmSubTotal"].Value); linha.EndEdit(); DTitens.Rows.Add(linha); } TAitens.Update(DTitens); MessageBox.Show("Venda realizada com sucesso", "Vendas", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show("Erro ao finalizar compra\n" + ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error); TAVendas.excluirVenda(Convert.ToInt16(txtCodVenda.Text)); } } catch(Exception ex) { MessageBox.Show("Erro ao finalizar compra\n" + ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error); } }