Пример #1
0
        private void BuscarProducto()//metodo para buscar el producto para luego modificarlo
        {
            try
            {
                if (rbtCodigo.Checked)                                          //si el radiobutton codigo esta tachado
                {
                    if (txtFiltro.Text != "")                                   //si el texto del textbox filtro tiene informacion ingresada
                    {
                        data = adapter.BuscarProductoPorCodigo(txtFiltro.Text); //se busca la informacion del producto por su codigo de barrass
                    }
                }
                else //si es el radiobutton descripcion que esta tachado
                {
                    if (cboProducto.Text != "")//si el texto del combobox descripcion tiene informacion ingresada
                    {
                        data = adapter.BuscarProdPorNombre(cboProducto.Text);//se busca el producto por el nombre ingresado
                    }
                }

                if (data.Rows.Count == 0)                                                                                                                                                                                              // si no se encontró el producto
                {
                    MessageBox.Show($"No se encontró un producto con el {(rbtCodigo.Checked == true ? "Código" : "Nombre")}: {txtFiltro.Text}{cboProducto.Text}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);                //notifica al usuario que no se encontro el producto por medio de un mensaje

                    log.Warn($"Se intentó buscar al producto con el {(rbtCodigo.Checked == true ? "Código" : "Nombre")}: {txtFiltro.Text}{cboProducto.Text} por el usuario {usuario.Nombre} {usuario.Apellidos} pero no se encontró"); //se registra que se intentó buscar un producto pero la informacion ingresada para su busqueda no coincide con ninguno

                    LimpiarText();                                                                                                                                                                                                     //limpia la informacion que esta en la ventana
                }
                else//si se encontró el producto
                {
                    foreach (ProductoRow item in data)                                                                                                                                                             //se recorre la fila del producto
                    {
                        txtDescripcion.Text        = item.NombreProducto;                                                                                                                                          //se coloca el nombre del producto en el textbox descripcion
                        txtCodigo.Text             = item.CodigoBarra;                                                                                                                                             //se coloca el codigo de barras en el textbox codigo de barra
                        cboCategoria.SelectedValue = item.IdCategoriaP;                                                                                                                                            //se coloca la categoria en el combobox categoria
                        txtPrecioDetalle.Text      = item.PrecioDetalle.ToString();                                                                                                                                //se coloca el precio al detalle en el textbox detalle
                        txtPrecioMayor.Text        = item.PrecioMayor.ToString();                                                                                                                                  //se coloca el precio al mayor en el textbox precio mayor
                        txtNumExistencia.Text      = item.NumExistencias.ToString();                                                                                                                               //se coloca el numero de existencia actual en el textbox numexistencia
                        idProducto        = item.IdProducto;                                                                                                                                                       //se guarda el id del producto buscado para posteriormente modificarlo
                        txtDescuento.Text = item.Descuento.ToString();                                                                                                                                             //se coloca el descuento en el textbox descuento
                        cbxITBIS.Checked  = item.AplicaITBIS;                                                                                                                                                      //se coloca el estado de aplica itbis en el checkbox aplicaitbis
                    }
                    Permitir();                                                                                                                                                                                    //permite modificar los textbox para asi modificar el producto
                    log.Info($"Se buscó el producto con el {(rbtCodigo.Checked ? "Código" : "Nombre")}: {txtFiltro.Text}{cboProducto.Text} por el usuario {usuario.Nombre} {usuario.Apellidos} para modificarlo"); //se registra que se busco un producto
                    txtDescripcion.Focus();                                                                                                                                                                        //se hace focus en el texto descripcion
                }
            }
            catch (Exception error)
            {
                log.Error($"Error: {error.Message}", error);
                MessageBox.Show($"Error: {error.Message}");
            }
        }
Пример #2
0
        private void btnAgregar_Click(object sender, EventArgs e)//evento que se dispara cuando das clic al boton agregar
        {
            try
            {
                if (txtCodigo.Text != "" && txtNombre.Text != "" && txtPrecioDetalle.Text != "" && txtPrecioMayor.Text != "" && txtNumExistencia.Text != "")                                                                                                   //verifica que se introduzca la informacion necesaria
                {
                    ProductoTableAdapter adapter = new ProductoTableAdapter();                                                                                                                                                                                 //objeto para usar los querys de tblProducto
                    ProductoDataTable    data    = adapter.BuscarProductoPorCodigo(txtCodigo.Text);                                                                                                                                                            //objeto para almacenar informacion de tblProducto, en este caso buscada por el codigo de barra ingresado

                    if (data.Count == 0)                                                                                                                                                                                                                       //verifica que no haya ya un producto ingresado con ese codigo de barra
                    {
                        decimal descuento   = Convert.ToDecimal(txtDescuento.Text);                                                                                                                                                                            //convierte los numeros ingresados en el textbox descuento en decimal para ingresarlo posteriormente a la base de datos
                        int     idCategoria = Convert.ToInt32(cboCategoria.SelectedValue);                                                                                                                                                                     //guarda la categoria que se seleccionó para el producto
                        adapter.InsertarP(txtNombre.Text.Trim(), txtCodigo.Text.Trim(), Convert.ToDecimal(txtPrecioDetalle.Text), Convert.ToDecimal(txtPrecioMayor.Text), Convert.ToDecimal(txtNumExistencia.Text), idCategoria, descuento, cbxITBIS.Checked); //se inserta el producto en tblProducto
                        log.Info($"Se agregó el producto con el código [{txtCodigo.Text}] al sistema por el usuario {usuario.Nombre} {usuario.Apellidos}");                                                                                                    //se registra que se ingresó el producto
                        MessageBox.Show($"Se agregó al sistema el producto ingresado con el código: {txtCodigo.Text}", "Agregar producto", MessageBoxButtons.OK, MessageBoxIcon.Information);                                                                  //notifica al usuario con un mensaje que se ingresó el producto
                        Limpiar();                                                                                                                                                                                                                             //se limpian todos los textbox
                    }
                    else                                                                                                                                                                                                                                       //si ya hay un producto con este codigo de barra
                    {
                        if ((MessageBox.Show($"Ya hay un producto ingresado con este Código: {txtCodigo.Text}, ¿Desea limpiar todos los campos?", "Error", MessageBoxButtons.YesNo) == DialogResult.Yes))                                                      //le pregunta al usuario si desea limpiar todos los campos. si responde si pasa lo siguiente
                        {
                            Limpiar();                                                                                                                                                                                                                         //se limpian todos los textbox
                        }
                        else                                                                                                                                                                                                                                   //si responde que no
                        {
                            txtCodigo.Focus();                                                                                                                                                                                                                 //coloca al usuario en el textbox codigo para que lo modifique
                        }
                        log.Info($"Se intentó agregar el producto {txtCodigo.Text} al sistema por el usuario {usuario.Nombre} {usuario.Apellidos} pero ya existe uno con este mismo código");                                                                  //registra que se intentó agregar un producto para ya habia uno con este codigo
                    }
                }//si falta alguna informacion
                else
                {
                    string mensaje = "Falta(n) por llenar lo(s) siguiente(s) campo(s): ";          //string para guardar que info hace falta
                    if (txtCodigo.Text == "")                                                      //si no se ingresó el codigo de barra en su respectivo textbo
                    {
                        mensaje += "\nCódigo de Barras";                                           //notifica que falta el codigo de barras
                    }
                    if (txtNombre.Text == "")                                                      //si no se ingresó el nombre en su respectivo textbo
                    {
                        mensaje += "\nNombre";                                                     //notifica que falta el nombre
                    }
                    if (txtPrecioDetalle.Text == "")                                               //si no se ingresó el precio al detalle en su respectivo textbo
                    {
                        mensaje += "\nPrecio al Detalle";                                          //notifica que falta el precio al detalle
                    }
                    if (txtPrecioMayor.Text == "")                                                 //si no se ingresó el precio mayor en su respectivo textbo
                    {
                        mensaje += "\nPrecio al Mayor";                                            //notifica que falta el precio al por mayor
                    }
                    if (txtNumExistencia.Text == "")                                               //si no se ingresó el numero de existencias en su respectivo textbo
                    {
                        mensaje += "\nNúmero de Existencia";                                       //notifica que falta el numero de existencia
                    }
                    MessageBox.Show(mensaje, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); //notifica al usuario el mensaje de lo que falta
                }
            }
            catch (Exception error)
            {
                log.Error($"Error: {error.Message}", error);
                MessageBox.Show($"Error: {error.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #3
0
        private void BuscarProducto()
        {
            try
            {
                descuentoPro = 0;
                if (txtIdProducto.Enabled == true)
                {
                    dataPro = adapterPro.BuscarProductoPorCodigo(txtIdProducto.Text);

                    if (dataPro.Rows.Count == 1)
                    {
                        cboDescripcionProducto.Text = dataPro.Rows[0][dataPro.NombreProductoColumn].ToString();
                        txtPrecioDetalle.Text       = dataPro.Rows[0][dataPro.PrecioDetalleColumn].ToString();
                        txtPrecioMayor.Text         = dataPro.Rows[0][dataPro.PrecioMayorColumn].ToString();
                        numExistencias = dataPro.Rows[0][dataPro.NumExistenciasColumn].ToString();
                        descuentoPro  += Convert.ToDecimal(dataPro.Rows[0][dataPro.DescuentoColumn].ToString());
                        aplicaITBIS    = Convert.ToBoolean(dataPro[0][dataPro.AplicaITBISColumn]);
                        idProducto     = Convert.ToInt32(dataPro[0][dataPro.IdProductoColumn].ToString());
                        AgregarProducto();
                    }
                    else
                    {
                        MessageBox.Show($"No sé encontro el producto con el código: {txtIdProducto.Text}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        txtIdProducto.Text          = "";
                        cboDescripcionProducto.Text = "";
                        txtPrecioDetalle.Text       = "";
                        txtCantidad.Text            = "1";
                    }
                }
                else
                {
                    dataPro = adapterPro.BuscarProdPorNombre(cboDescripcionProducto.Text);

                    if (dataPro.Rows.Count == 1)
                    {
                        if (dataPro.Rows[0][dataPro.IdProductoColumn].ToString() != "0")
                        {
                            txtIdProducto.Text    = dataPro.Rows[0][dataPro.CodigoBarraColumn].ToString();
                            txtPrecioDetalle.Text = dataPro.Rows[0][dataPro.PrecioDetalleColumn].ToString();
                            txtPrecioMayor.Text   = dataPro.Rows[0][dataPro.PrecioMayorColumn].ToString();
                            numExistencias        = dataPro.Rows[0][dataPro.NumExistenciasColumn].ToString();
                            descuentoPro         += Convert.ToDecimal(dataPro.Rows[0][dataPro.DescuentoColumn].ToString());
                            aplicaITBIS           = Convert.ToBoolean(dataPro[0][dataPro.AplicaITBISColumn]);
                            idProducto            = Convert.ToInt32(dataPro[0][dataPro.IdProductoColumn].ToString());
                            txtCantidad.Focus();
                        }
                    }
                    else
                    {
                        MessageBox.Show($"No sé encontro el producto con el nombre: {cboDescripcionProducto.Text}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        txtIdProducto.Text          = "";
                        cboDescripcionProducto.Text = "";
                        txtPrecioDetalle.Text       = "";
                        txtCantidad.Text            = "1";
                    }
                }
            }
            catch (Exception error)
            {
                log.Error($"Error: {error.Message}", error);
                MessageBox.Show($"Error: {error.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }