public DataTable BuscarNombreAndCategoria(DDetalleIngresoArticulo ingresodetalle)
        {
            string        cadena = "sp_listar_ingreso_articulos_por_nombre";
            DataTable     tabla  = new DataTable();
            SqlConnection cn     = new SqlConnection();

            try
            {
                cn.ConnectionString = Conexion.conectar;
                cn.Open();
                using (SqlDataAdapter da = new SqlDataAdapter(cadena, cn))
                {
                    da.SelectCommand.Parameters.AddWithValue("@nombre", ingresodetalle.Nombre);
                    da.SelectCommand.CommandType = CommandType.StoredProcedure;
                    da.Fill(tabla);
                }
            }
            catch (Exception)
            {
                return(tabla);

                throw;
            }
            finally
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
            }
            return(tabla);
        }
        // metodo insertar
        public bool Insertar(DDetalleIngresoArticulo detalleIngreso)
        {
            int           rpta   = 0;
            string        cadena = "sp_insertar_detalle_ingreso_articulo";
            SqlConnection cn     = new SqlConnection();

            try
            {
                // code here
                cn.ConnectionString = Conexion.conectar;
                cn.Open();

                using (SqlCommand cmd = new SqlCommand(cadena, cn))
                {
                    cmd.Parameters.AddWithValue("@idingresoart", detalleIngreso.IdIngresoArticulo);
                    cmd.Parameters.AddWithValue("@idarticulo", detalleIngreso.IdArticulo);
                    cmd.Parameters.AddWithValue("@preciocompra", detalleIngreso.PrecioCompra);
                    cmd.Parameters.AddWithValue("@precioventa", detalleIngreso.PrecioVenta);
                    cmd.Parameters.AddWithValue("@stockinicial", detalleIngreso.StockInicial);
                    cmd.Parameters.AddWithValue("@stockactual", detalleIngreso.StockActual);
                    cmd.Parameters.AddWithValue("@fechaproduccion", detalleIngreso.FechaProduccion);
                    cmd.Parameters.AddWithValue("@fechavencimiento", detalleIngreso.FechaVencimiento);

                    cmd.CommandType = CommandType.StoredProcedure;

                    rpta = cmd.ExecuteNonQuery();
                    if (rpta == 1)
                    {
                        return(true);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error ... ???", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);

                throw;
            }
            finally
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
            }
            return(false);
        }