//todo: Para validar el detalle private bool ValidarDetalle() { MyErrorProvider.Clear(); bool paso = true; if (Convert.ToInt32(CantidadNumericUpDown.Value) == 0) { MyErrorProvider.SetError(CantidadNumericUpDown, "La cantidad de productos a vender no puede ser 0"); CantidadNumericUpDown.Focus(); paso = false; } if (string.IsNullOrWhiteSpace(ProductoTextBox.Text)) { MyErrorProvider.SetError(ProductoTextBox, "Debe de seleccionar un producto para poder añadirlo a la lista de compra"); ProductoTextBox.Focus(); return(false); } if (CantidadNumericUpDown.Value > BusquedaProductos.listaProductoEnviar[0].Existencia) { MyErrorProvider.SetError(CantidadNumericUpDown, "La cantidad de productos a vender debe ser menor o igual a la que hay en existencia"); CantidadNumericUpDown.Focus(); paso = false; } return(paso); }
private bool Validar() //Funcion que valida todo el registro { bool paso = true; MyErrorProvider.Clear(); if (ProductoTextBox.Text == string.Empty)//Valida que haya un producto seleccionado { MyErrorProvider.SetError(ProductoTextBox, "Debe seleccionar un producto!"); ProductoTextBox.Focus(); paso = false; } if (EntradaIdNumericUpDown.Value > 0)//Valida que si se modifica una entrada el producto sea el mismo! { if (!ValidarProducto()) { MyErrorProvider.SetError(ProductoTextBox, "El producto de la entrada no puede variar!"); VerProductosButton.Focus(); paso = false; } } if (CantidadNumericUpDown.Value == 0)//Valida que la cantidad de entrada sea mayor a 0 { MyErrorProvider.SetError(CantidadNumericUpDown, "La cantidad de la entrada debe ser mayor a 0!"); CantidadNumericUpDown.Focus(); paso = false; } return(paso); }
private void GrabarButton_Click(object sender, EventArgs e) { if (ProveedorComboBox.SelectedIndex == -1) { errorProvider1.SetError(ProveedorComboBox, "Dbe seleccionar un Proveedor"); ProveedorComboBox.Focus(); return; } errorProvider1.Clear(); if (BodegaComboBox.SelectedIndex == -1) { errorProvider1.SetError(BodegaComboBox, "Dbe seleccionar una Bodega"); BodegaComboBox.Focus(); return; } errorProvider1.Clear(); if (misDetalles.Count == 0) { errorProvider1.SetError(ProductoTextBox, "Ingresar Productos en la compra"); ProductoTextBox.Focus(); return; } errorProvider1.Clear(); DialogResult rta = MessageBox.Show("¿Está seguro de grabar la compra?", "Confirmació n", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (DialogResult.No == rta) { return; } int IDProveedor = (int)ProveedorComboBox.SelectedValue; int IDBodega = (int)BodegaComboBox.SelectedValue; //Grabamos Encabezado de la Compra int IDCompra = CADCompra.InsertCompra(ComprasDateTimePicker.Value, IDProveedor, IDBodega); DateTime Fecha = ComprasDateTimePicker.Value; //Grabamos detalle de la compra foreach (DetalleCompra miDetalle in misDetalles) { //Actualixamos la tabla bodegaProducto CADBodegaProducto miBodegaProducto = CADBodegaProducto.GetBodegaProductoByIDBodegaAndIDProducto (IDBodega, miDetalle.IDProducto); if (miBodegaProducto == null) { CADBodegaProducto.UpdateBodegaProducto(IDBodega, miDetalle.IDProducto, 1, 1, 1, 1); } CADCompra.AumentarStock(miDetalle.Cantidad, IDBodega, miDetalle.IDProducto); //Actualizamos el Kardex CADKardex miKardex = CADKardex.UltimoKardex(IDBodega, miDetalle.IDProducto); int IDKardex; float nuevoSaldo; decimal nuevoCostoPromedio; if (miKardex == null) { nuevoSaldo = miDetalle.Cantidad; nuevoCostoPromedio = miDetalle.ValorNeto / (decimal)miDetalle.Cantidad; } else { nuevoSaldo = miKardex.Saldo + miDetalle.Cantidad; nuevoCostoPromedio = (miKardex.CostoPromedio * (decimal)miKardex.Saldo + miDetalle.ValorNeto) / (decimal)nuevoSaldo; } IDKardex = CADKardex.InsertKardex(IDBodega, miDetalle.IDProducto, Fecha, string.Format("CO-{0}", IDCompra), miDetalle.Cantidad, 0, nuevoSaldo, miDetalle.ValorNeto / (decimal)miDetalle.Cantidad, nuevoCostoPromedio); //Actulaizamos CompraDetalle CADCompraDetalle.InsertCompraDetalle(IDCompra, miDetalle.IDProducto, miDetalle.Descripcion, miDetalle.Costo, miDetalle.Cantidad, IDKardex, miDetalle.PorcentajeIVA, miDetalle.PorcentajeDescuento); } MessageBox.Show(string.Format("Lacompra: {0}, fue grabada de forma exitosa", IDCompra, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)); ProveedorComboBox.SelectedIndex = -1; BodegaComboBox.SelectedIndex = -1; misDetalles.Clear(); RefrescarGrid(); ProveedorComboBox.Focus(); }
private void AñadirButton_Click(object sender, EventArgs e) { if (ultimoProducto == null) { errorProvider1.SetError(ProductoTextBox, "Debe ingresar un Producto"); ProductoTextBox.Focus(); return; } errorProvider1.Clear(); if (CantidadTextBox.Text == string.Empty) { errorProvider1.SetError(CantidadTextBox, "Debe Ingresar una Cantidad"); return; } errorProvider1.Clear(); float cantidad; if (!float.TryParse(CantidadTextBox.Text, out cantidad)) { errorProvider1.SetError(CantidadTextBox, "Debe ingresar un valor Numérico"); return; } errorProvider1.Clear(); if (cantidad <= 0) { errorProvider1.SetError(CantidadTextBox, "Debe ingresar un valor Numérico mayor a 0"); return; } errorProvider1.Clear(); if (CostoTextBox.Text == string.Empty) { errorProvider1.SetError(CostoTextBox, "Debe Ingresar un Costo"); return; } errorProvider1.Clear(); decimal costo; if (!decimal.TryParse(CostoTextBox.Text, out costo)) { errorProvider1.SetError(CostoTextBox, "Debe ingresar un valor Numérico"); return; } errorProvider1.Clear(); if (costo <= 0) { errorProvider1.SetError(CostoTextBox, "Debe ingresar un valor Numérico mayor a 0"); return; } errorProvider1.Clear(); float descuento = 0; if (DescuentoTextBox.Text != "") { if (!float.TryParse(DescuentoTextBox.Text, out descuento)) { errorProvider1.SetError(DescuentoTextBox, "Debe ingresar un valor Numérico"); return; } errorProvider1.Clear(); if (descuento < 0 && descuento <= 100) { errorProvider1.SetError(DescuentoTextBox, "Debe ingresar un valor Numérico mayor a 0 y menor e igual a 100"); return; } errorProvider1.Clear(); descuento /= 100; } CADIVA miIVA = CADIVA.GetIVA(ultimoProducto.IDIVA); DetalleCompra miDetalle = new DetalleCompra(); miDetalle.IDProducto = ultimoProducto.IDProducto; miDetalle.Cantidad = cantidad; miDetalle.Costo = costo; miDetalle.PorcentajeDescuento = descuento; miDetalle.Descripcion = ultimoProducto.Descripcion; miDetalle.PorcentajeIVA = miIVA.Tarifa; misDetalles.Add(miDetalle); RefrescarGrid(); ultimoProducto = null; ProductoTextBox.Text = String.Empty; CantidadTextBox.Text = String.Empty; CostoTextBox.Text = String.Empty; DescuentoTextBox.Text = String.Empty; ProductoLabel.Text = "Producto..."; }