private void EntradaSeguimiento_TextChanged(object sender, EventArgs e) { Lbl.Articulos.Seguimientos Seg = (Lbl.Articulos.Seguimientos)(EntradaSeguimiento.ValueInt); if (Seg == Lbl.Articulos.Seguimientos.Predeterminado) { Lbl.Articulos.Categoria Cat = EntradaCategoria.Elemento as Lbl.Articulos.Categoria; if (Cat != null) { Seg = Cat.ObtenerSeguimiento(); } } EntradaStockActual.ReadOnly = Seg == Lbl.Articulos.Seguimientos.Ninguno; if (EntradaStockActual.ReadOnly) { // El stock no editable if (this.Elemento.Existe) { // Para artículos existentes, muestro el stock actual real EntradaStockActual.ValueDecimal = this.Connection.FieldDecimal("SELECT stock_actual FROM articulos WHERE id_articulo=" + this.Elemento.Id.ToString()); } else { // Para artículos nuevos, muestro cero EntradaStockActual.ValueDecimal = 0; } } }
public override void ActualizarElemento() { Lbl.Articulos.Articulo Art = this.Elemento as Lbl.Articulos.Articulo; Art.Codigo1 = EntradaCodigo1.Text; Art.Codigo2 = EntradaCodigo2.Text; Art.Codigo3 = EntradaCodigo3.Text; Art.Codigo4 = EntradaCodigo4.Text; Art.Categoria = EntradaCategoria.Elemento as Lbl.Articulos.Categoria; Art.Marca = EntradaMarca.Elemento as Lbl.Articulos.Marca; Art.Caja = EntradaCaja.Elemento as Lbl.Cajas.Caja; Art.Modelo = EntradaModelo.Text; Art.Serie = EntradaSerie.Text; Art.Nombre = EntradaNombre.Text; Art.Url = EntradaUrl.Text; Art.Proveedor = EntradaProveedor.Elemento as Lbl.Personas.Persona; Art.Descripcion = EntradaDescripcion.Text; Art.Descripcion2 = EntradaDescripcion2.Text; Art.Destacado = EntradaDestacado.ValueInt != 0; Art.Costo = EntradaCosto.ValueDecimal; if (EntradaMargen.ValueInt > 0) { Art.Margen = this.Margenes.GetById(EntradaMargen.ValueInt); } else { Art.Margen = null; } Art.Pvp = EntradaPvp.ValueDecimal; Art.TipoDeArticulo = (Lbl.Articulos.TiposDeArticulo)(EntradaTipoDeArticulo.ValueInt); Art.Seguimiento = (Lbl.Articulos.Seguimientos)(EntradaSeguimiento.ValueInt); Art.Periodicidad = (Lbl.Articulos.Periodicidad)(EntradaPeriodicidad.ValueInt); Art.PuntoDeReposicion = Lfx.Types.Parsing.ParseStock(EntradaStockMinimo.Text); Art.Unidad = EntradaUnidad.TextKey; Art.Rendimiento = Rendimiento; Art.UnidadRendimiento = UnidadRendimiento; Art.Estado = 1; Art.Garantia = EntradaGarantia.ValueInt; Art.Publicacion = ((Lbl.Articulos.Publicacion)(EntradaWeb.ValueInt)); if (Art.Existe == false) { Art.ExistenciasInicial = EntradaStockActual.ValueDecimal; } Lbl.Articulos.Seguimientos Seg = Art.ObtenerSeguimiento(); if (Seg != Lbl.Articulos.Seguimientos.Ninguno) { // Verificar que los datos de seguimiento actual coincidan con el stock actual } base.ActualizarElemento(); }