//Insertar datos del encabezado del pedido public void InsertarPedidoE(clsPedidoEncabezado pedidoEncabezado) { OdbcConnection con = conexion.conexion(); OdbcCommand comando = con.CreateCommand(); OdbcTransaction transaccion; transaccion = con.BeginTransaction(); comando.Connection = con; comando.Transaction = transaccion; try { //Inserta en encabezado de pedido comando.CommandText = "INSERT INTO pedido_encabezado(pk_id_pedido_encabezado, fk_id_fabrica, estado_proceso_pedido_encabezado, fec_pedido_pedido_encabezado, total_pedido_encabezado, estado_pedido_encabezado) VALUES (?,?,?,?,?,?);"; comando.Parameters.Add("pk_id_pedido_encabezado", OdbcType.Int).Value = pedidoEncabezado.IdPedido; comando.Parameters.Add("fk_id_fabrica", OdbcType.Int).Value = pedidoEncabezado.IdFabrica; comando.Parameters.Add("estado_proceso_pedido_encabezado", OdbcType.Int).Value = pedidoEncabezado.EstadoProceso; comando.Parameters.Add("fec_pedido_pedido_encabezado", OdbcType.DateTime).Value = pedidoEncabezado.FechaPedido1; comando.Parameters.Add("total_pedido_encabezado", OdbcType.Double).Value = pedidoEncabezado.TotalPedido; comando.Parameters.Add("estado_pedido_encabezado", OdbcType.Int).Value = pedidoEncabezado.Estado1; comando.ExecuteNonQuery(); transaccion.Commit(); Console.WriteLine("Transaccion Exitosa"); } catch (Exception ex) { transaccion.Rollback(); Console.WriteLine(ex.Message); Console.WriteLine("Trasaccion Fallida"); MessageBox.Show("Error transaccion pedido encabezado", "", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
//Llena datos para pedido encabezado private clsPedidoEncabezado llenarCamposPedidoEncabezado(double Total) { if (validarEncabezado() == true) { DateTime dtFecha = dtpFechaCompra.Value; clsPedidoEncabezado auxMantenimiento = new clsPedidoEncabezado(); auxMantenimiento.IdPedido = int.Parse(txtCodigo.Text); auxMantenimiento.IdFabrica = int.Parse(cmbProveedor.SelectedValue.ToString()); auxMantenimiento.EstadoProceso = estadoProceso; auxMantenimiento.FechaPedido1 = dtFecha; auxMantenimiento.TotalPedido = Total; auxMantenimiento.Estado1 = 1; return(auxMantenimiento); } else { return(null); } }
//Registrar pedido private bool RegistrarPedido() { int CodLinea = 0, Producto, Cantidad; double PrecioU, SubtotalU; try { this.pedidoEncabezado = llenarCamposPedidoEncabezado(SumarColumnas()); if (pedidoEncabezado == null) { MessageBox.Show("Campos Vacios", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return(false); } else { controladorCompras.InsertarPedidoE(pedidoEncabezado); int iFilas = dgvCompras.Rows.Count; Console.WriteLine(iFilas); //Linea por linea del grid inserta a detalle compra while (CodLinea < (iFilas - 1)) { Producto = int.Parse(dgvCompras.Rows[CodLinea].Cells["cmbProducto"].Value.ToString()); Cantidad = int.Parse(dgvCompras.Rows[CodLinea].Cells["txtCantidad"].Value.ToString()); PrecioU = double.Parse(dgvCompras.Rows[CodLinea].Cells["txtPrecioUnitario"].Value.ToString()); SubtotalU = double.Parse(dgvCompras.Rows[CodLinea].Cells["txtSubtotal"].Value.ToString()); ++CodLinea; this.pedidoDetalle = llenarCamposPedidoDetalle(Producto, CodLinea, Cantidad, PrecioU, SubtotalU); controladorCompras.InsertarDetallePedido(pedidoDetalle); } MessageBox.Show("Datos de Pedido Ingresados", "", MessageBoxButtons.OK, MessageBoxIcon.Information); Console.WriteLine("Pedido Exitoso"); return(true); } } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine("Pedido Fallido"); MessageBox.Show("Error al Guardar Datos de Pedido", "", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } }