public int Registrar_venta(VentaEnt V, DataTable dt) { SqlConnection cn = Conexion.getCadenaConexion(); SqlCommand cmd1 = new SqlCommand("SP_REGISTRAR_VENTA", cn); SqlCommand cmd2 = new SqlCommand("SP_REGISTRAR_DETALLE_VENTA", cn); cn.Open(); SqlTransaction trx; trx = cn.BeginTransaction(); cmd1.CommandType = CommandType.StoredProcedure; cmd1.Transaction = trx; cmd2.CommandType = CommandType.StoredProcedure; cmd2.Transaction = trx; // PEDIDO CABECERA cmd1.Parameters.AddWithValue("@ID_USUARIO", V.ID_USUARIO1); cmd1.Parameters.Add("@CODIGOSALIDA", SqlDbType.Int).Direction = ParameterDirection.Output; cmd1.ExecuteNonQuery(); int cod = Int32.Parse(cmd1.Parameters["@CODIGOSALIDA"].Value.ToString()); // RECOREMOS LAS FILAS DE LA TABLA TEMPORAL CREADA for (int i = 0; i < dt.Rows.Count; i++) { DataRow row = dt.Rows[i]; cmd2.Parameters.Clear(); cmd2.Parameters.AddWithValue("@ID_VENTA", cod); cmd2.Parameters.AddWithValue("@ID_PROD ", row[0]); cmd2.Parameters.AddWithValue("@CANTIDAD", row[3]); cmd2.Parameters.AddWithValue("@DESCUENTO", 0.0); cmd2.ExecuteNonQuery(); } try { trx.Commit(); } catch (Exception) { trx.Rollback(); throw; } cn.Close(); return(cod); }
public int Registrar_venta(VentaEnt V, DataTable dt) { return(rdao.Registrar_venta(V, dt)); }