public override void ActualizarControl() { Lbl.Comprobantes.ComprobanteDeCompra Fac = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; this.SuspendLayout(); this.TipoComprob = Fac.Tipo; EntradaProveedor.Elemento = Fac.Cliente; if (Fac.FormaDePago != null) { EntradaFormaPago.ValueInt = Fac.FormaDePago.Id; } else { EntradaFormaPago.ValueInt = 0; } EntradaFormaPago.Enabled = Fac.Tipo.EsFactura; EntradaPV.Text = Fac.PV.ToString("0000"); EntradaNumero.Text = Fac.Numero.ToString("00000000"); EntradaHaciaSituacion.Elemento = Fac.SituacionDestino; EntradaHaciaSituacion.TemporaryReadOnly = Fac.Existe; EntradaTipo.TextKey = Fac.Tipo.Nomenclatura; EntradaEstado.TextKey = Fac.Estado.ToString(); EntradaTotal.ValueDecimal = Fac.Total; EntradaCancelado.ValueDecimal = Fac.ImporteCancelado; EntradaGastosEnvio.ValueDecimal = Fac.GastosDeEnvio; EntradaOtrosGastos.ValueDecimal = Fac.OtrosGastos; EntradaFecha.Text = Lfx.Types.Formatting.FormatDate(Fac.Fecha); EntradaObs.Text = Fac.Obs; EntradaProductos.CargarArticulos(Fac.Articulos); foreach (Lbl.Comprobantes.DetalleArticulo Det in Fac.Articulos) { if (Det.Articulo != null && ArticulosCantidadesOriginales.ContainsKey(Det.Articulo.Id) == false) { ArticulosCantidadesOriginales.Add(Det.Articulo.Id, Det.Cantidad); } } EntradaProductos.Changed = false; BotonConvertir.Visible = this.Elemento.Existe; base.ActualizarControl(); }
public override Lbl.IElementoDeDatos Crear() { Lbl.IElementoDeDatos Res = base.Crear(); if (Res is Lbl.Comprobantes.ComprobanteDeCompra) { string Tipo = this.Tipo; using (Crear FormCrear = new Crear()) { FormCrear.TipoComprob = Tipo; if (FormCrear.ShowDialog() == System.Windows.Forms.DialogResult.OK) { Tipo = FormCrear.TipoComprob; } else { return(null); } } Lbl.Comprobantes.ComprobanteDeCompra Comprob = Res as Lbl.Comprobantes.ComprobanteDeCompra; switch (Tipo) { case "FP": Tipo = "FA"; break; case "NC": Tipo = "NCA"; break; case "ND": Tipo = "NDA"; break; } if (Lbl.Comprobantes.Tipo.TodosPorLetra.ContainsKey(Tipo)) { Comprob.Tipo = Lbl.Comprobantes.Tipo.TodosPorLetra[Tipo]; } else { throw new InvalidOperationException("No se puede crear el tipo " + Tipo); } } return(Res); }
private void BotonConvertir_Click(object sender, EventArgs e) { using (Lfc.Comprobantes.Compra.Crear FormularioConvertir = new Lfc.Comprobantes.Compra.Crear()) { if (FormularioConvertir.ShowDialog() == DialogResult.OK) { Lbl.Comprobantes.ComprobanteDeCompra Comprob = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; if ((Comprob.Tipo.Nomenclatura == "NP" || Comprob.Tipo.Nomenclatura == "PD") && EntradaEstado.TextKey != "100") { EntradaEstado.TextKey = "100"; EntradaEstado.Changed = true; } else if ((Comprob.Tipo.EsPedido || FormularioConvertir.TipoComprob == "F" || FormularioConvertir.TipoComprob == "FP" || FormularioConvertir.TipoComprob == "R") && EntradaEstado.TextKey != "100") { EntradaEstado.TextKey = "100"; EntradaEstado.Changed = true; } Lbl.Comprobantes.ComprobanteDeCompra NuevoComprob; if (FormularioConvertir.TipoComprob == "FP") { Lbl.Comprobantes.Tipo NuevoTipo = Lbl.Comprobantes.Tipo.TodosPorLetra["FA"]; NuevoComprob = Comprob.Convertir(NuevoTipo); NuevoComprob.FormaDePago = new Lbl.Pagos.FormaDePago(this.Connection, 3); } else if (FormularioConvertir.TipoComprob == "RP") { Lbl.Comprobantes.Tipo NuevoTipo = Lbl.Comprobantes.Tipo.TodosPorLetra["R"]; NuevoComprob = Comprob.Convertir(NuevoTipo); NuevoComprob.FormaDePago = new Lbl.Pagos.FormaDePago(this.Connection, 3); } else { Lbl.Comprobantes.Tipo NuevoTipo = Lbl.Comprobantes.Tipo.TodosPorLetra[FormularioConvertir.TipoComprob]; NuevoComprob = Comprob.Convertir(NuevoTipo); } Lfc.FormularioEdicion FormularioEdicion = Lfc.Instanciador.InstanciarFormularioEdicion(NuevoComprob); FormularioEdicion.MdiParent = this.ParentForm.MdiParent; FormularioEdicion.Show(); } } }
private void EntradaProductos_ObtenerDatosSeguimiento(object sender, EventArgs e) { Lcc.Entrada.Articulos.DetalleComprobante Prod = ((Lcc.Entrada.Articulos.DetalleComprobante)(sender)); Lbl.Articulos.Articulo Articulo = Prod.Elemento as Lbl.Articulos.Articulo; decimal Cant = Prod.Cantidad; if (Cant != 0) { Lbl.Comprobantes.ComprobanteDeCompra Comprob = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; Lfc.Articulos.EditarSeguimiento Editar = new Lfc.Articulos.EditarSeguimiento(); Editar.Articulo = Articulo; Editar.Cantidad = Math.Abs(System.Convert.ToInt32(Cant)); Editar.SituacionOrigen = Comprob.SituacionOrigen; Editar.DatosSeguimiento = Prod.DatosSeguimiento; if (Editar.ShowDialog() == DialogResult.OK) { Prod.DatosSeguimiento = Editar.DatosSeguimiento; } } }
public void EnviarNP(object sender, System.EventArgs e) { Lbl.Comprobantes.ComprobanteDeCompra Comprob = new Lbl.Comprobantes.ComprobanteDeCompra(this.Connection); Comprob.Tipo = Lbl.Comprobantes.Tipo.TodosPorLetra["NP"]; Comprob.FormaDePago = new Lbl.Pagos.FormaDePago(this.Connection, 3); Lbl.Comprobantes.ColeccionDetalleArticulos newCole = new Lbl.Comprobantes.ColeccionDetalleArticulos(this.Connection); foreach (ListViewItem Itm in this.Listado.Items) { Lbl.Articulos.Articulo art = new Lbl.Articulos.Articulo(this.Connection, int.Parse(Itm.SubItems[0].Text)); Lbl.Comprobantes.DetalleArticulo detArt = new Lbl.Comprobantes.DetalleArticulo(this.Connection); detArt.Crear(); detArt.Articulo = art; decimal costoFinal = decimal.Parse(Itm.SubItems["articulos.costo"].Text); detArt.ImporteUnitario = costoFinal; decimal stockAct = decimal.Parse(Itm.SubItems["articulos.stock_actual"].Text); decimal stockMin = decimal.Parse(Itm.SubItems["articulos.stock_minimo"].Text); if (stockMin == 0) { detArt.Cantidad = 1; } else { detArt.Cantidad = stockMin > stockAct ? stockMin - stockAct : stockMin; } newCole.Add(detArt); } Comprob.Articulos.AddRange(newCole); Comprob.Estado = 50; Lfc.FormularioEdicion FormularioEdicion = Lfc.Instanciador.InstanciarFormularioEdicion(Comprob); FormularioEdicion.MdiParent = this.MdiParent; //this.ParentForm.MdiParent; FormularioEdicion.Show(); //Lbl.IElementoDeDatos El = Lbl.Instanciador.Instanciar(this.Definicion.ElementoTipo, Lfx.Workspace.Master.GetNewConnection("Crear " + this.Definicion.ElementoTipo.ToString()) as Lfx.Data.Connection); //El.Crear(); }
public override void ActualizarElemento() { Lbl.Comprobantes.ComprobanteDeCompra Comprob = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; Comprob.Compra = true; Comprob.Fecha = Lfx.Types.Parsing.ParseDate(EntradaFecha.Text); if (EntradaFormaPago.TextKey != "0") { Comprob.FormaDePago = new Lbl.Pagos.FormaDePago(Comprob.Connection, Lfx.Types.Parsing.ParseInt(EntradaFormaPago.TextKey)); } else { Comprob.FormaDePago = null; } Comprob.Vendedor = Lbl.Sys.Config.Actual.UsuarioConectado.Persona; Comprob.Cliente = EntradaProveedor.Elemento as Lbl.Personas.Persona; Comprob.Tipo = Lbl.Comprobantes.Tipo.TodosPorLetra[EntradaTipo.TextKey]; Comprob.PV = EntradaPV.ValueInt; Comprob.Numero = EntradaNumero.ValueInt; Comprob.SituacionDestino = EntradaHaciaSituacion.Elemento as Lbl.Articulos.Situacion; Comprob.GastosDeEnvio = EntradaGastosEnvio.ValueDecimal; Comprob.OtrosGastos = EntradaOtrosGastos.ValueDecimal; Comprob.Obs = EntradaObs.Text; if (EntradaEstado.Enabled && EntradaEstado.Visible) { Comprob.Estado = EntradaEstado.ValueInt; } else { Comprob.Estado = 0; } Comprob.Articulos = EntradaProductos.ObtenerArticulos(Comprob); base.ActualizarControl(); }
public override void ActualizarControl() { Lbl.Comprobantes.ComprobanteDeCompra Fac = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; this.SuspendLayout(); this.TipoComprob = Fac.Tipo; EntradaProveedor.Elemento = Fac.Cliente; if (Fac.FormaDePago != null) { EntradaFormaPago.ValueInt = Fac.FormaDePago.Id; } else { EntradaFormaPago.ValueInt = 0; } EntradaFormaPago.Enabled = Fac.Tipo.EsFactura; if ((TipoComprob.Nomenclatura == "NP" || TipoComprob.Nomenclatura == "PD") && (Fac.Tipo.NumerarAlGuardar || Fac.Tipo.NumerarAlImprimir)) { EntradaNumero.Enabled = false; } else { EntradaNumero.Enabled = true; } EntradaPV.Text = Fac.PV.ToString("0000"); EntradaNumero.Text = Fac.Numero.ToString("00000000"); EntradaHaciaSituacion.Elemento = Fac.Existe ? Fac.SituacionDestino : new Lbl.Articulos.Situacion(this.Connection, Lfx.Workspace.Master.CurrentConfig.Empresa.SituacionOrigenPredeterminada); EntradaHaciaSituacion.TemporaryReadOnly = Fac.Existe; EntradaTipo.TextKey = Fac.Tipo.Nomenclatura; if (Fac.Tipo.Nomenclatura == "NP" && Fac.Estado == 0) { EntradaEstado.TextKey = "50"; } else { EntradaEstado.TextKey = Fac.Estado.ToString(); } EntradaTotal.ValueDecimal = Fac.Total; EntradaCancelado.ValueDecimal = Fac.ImporteCancelado; EntradaGastosEnvio.ValueDecimal = Fac.GastosDeEnvio; EntradaOtrosGastos.ValueDecimal = Fac.OtrosGastos; EntradaFecha.Text = Lfx.Types.Formatting.FormatDate(Fac.Fecha); EntradaObs.Text = Fac.Obs; EntradaDescuento.ValueDecimal = Fac.Descuento; EntradaPercepcionIIBB.ValueDecimal = Fac.PercepcionIIBB; EntradaPercepcionIVA.ValueDecimal = Fac.PercepcionIVA; EntradaLocalidad.Elemento = Fac.Localidad; EntradaProductos.CargarArticulos(Fac.Articulos); foreach (Lbl.Comprobantes.DetalleArticulo Det in Fac.Articulos) { if (Det.Articulo != null && ArticulosCantidadesOriginales.ContainsKey(Det.Articulo.Id) == false) { ArticulosCantidadesOriginales.Add(Det.Articulo.Id, Det.Cantidad); } } if (Fac.Tipo.EsFactura) { EntradaAfecta.ValueInt = Fac.Existe ? Fac.Afecta : 1; } else { EntradaAfecta.ValueInt = Fac.Existe ? Fac.Afecta : 0; } EntradaMoneda.ValueInt = Fac.Moneda; EntradaCotiza.ValueDecimal = Fac.Cotiza; EntradaRemito.ValueInt = Fac.IdRemito; EntradaProductos.Changed = false; BotonConvertir.Visible = this.Elemento.Existe; base.ActualizarControl(); }
private void BotonConvertir_Click(object sender, EventArgs e) { //EntradaTipo.TextKey == "NP" || EntradaTipo.TextKey == "PD" using (Lfc.Comprobantes.Compra.Crear FormularioConvertir = new Lfc.Comprobantes.Compra.Crear()) { if (FormularioConvertir.ShowDialog() == DialogResult.OK) { Lbl.Comprobantes.ComprobanteDeCompra Comprob = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; if ((Comprob.Tipo.Nomenclatura == "NP" || Comprob.Tipo.Nomenclatura == "PD") && EntradaEstado.TextKey != "100") { //EntradaEstado.TextKey = "100"; //EntradaEstado.Changed = true; try { System.Data.IDbTransaction tran = this.Elemento.Connection.BeginTransaction(); this.Elemento.Connection.ExecuteNonQuery(@"UPDATE comprob SET estado = 100 WHERE id_comprob=" + this.Elemento.Id); tran.Commit(); } catch (Exception ex2) { MessageBox.Show(ex2.Message); return; } } else if ((Comprob.Tipo.EsPedido || FormularioConvertir.TipoComprob == "F" || FormularioConvertir.TipoComprob == "FP" || FormularioConvertir.TipoComprob == "R") && EntradaEstado.TextKey != "100") { try { System.Data.IDbTransaction tran = this.Elemento.Connection.BeginTransaction(); this.Elemento.Connection.ExecuteNonQuery(@"UPDATE comprob SET estado = 100 WHERE id_comprob=" + this.Elemento.Id); tran.Commit(); } catch (Exception ex2) { MessageBox.Show(ex2.Message); return; } } Lbl.Comprobantes.ComprobanteDeCompra NuevoComprob; if (FormularioConvertir.TipoComprob == "FP") { Lbl.Comprobantes.Tipo NuevoTipo = Lbl.Comprobantes.Tipo.TodosPorLetra["FA"]; NuevoComprob = Comprob.Convertir(NuevoTipo); NuevoComprob.FormaDePago = new Lbl.Pagos.FormaDePago(this.Connection, 3); } else if (FormularioConvertir.TipoComprob == "RP") { Lbl.Comprobantes.Tipo NuevoTipo = Lbl.Comprobantes.Tipo.TodosPorLetra["R"]; NuevoComprob = Comprob.Convertir(NuevoTipo); NuevoComprob.FormaDePago = new Lbl.Pagos.FormaDePago(this.Connection, 3); } else { Lbl.Comprobantes.Tipo NuevoTipo = Lbl.Comprobantes.Tipo.TodosPorLetra[FormularioConvertir.TipoComprob]; NuevoComprob = Comprob.Convertir(NuevoTipo); NuevoComprob.Numero = 10; } if (Comprob.TipoFac == "R") { NuevoComprob.IdRemito = Comprob.Id; } Lfc.FormularioEdicion FormularioEdicion = Lfc.Instanciador.InstanciarFormularioEdicion(NuevoComprob); FormularioEdicion.MdiParent = this.ParentForm.MdiParent; FormularioEdicion.Show(); this.Close(); } } }
public override void ActualizarElemento() { Lbl.Comprobantes.ComprobanteDeCompra Comprob = this.Elemento as Lbl.Comprobantes.ComprobanteDeCompra; Comprob.Compra = true; Comprob.Fecha = Lfx.Types.Parsing.ParseDate(EntradaFecha.Text); if (EntradaFormaPago.TextKey != "0") { Comprob.FormaDePago = new Lbl.Pagos.FormaDePago(Comprob.Connection, Lfx.Types.Parsing.ParseInt(EntradaFormaPago.TextKey)); } else { Comprob.FormaDePago = null; } Comprob.Vendedor = Lbl.Sys.Config.Actual.UsuarioConectado.Persona; Comprob.Cliente = EntradaProveedor.Elemento as Lbl.Personas.Persona; Comprob.Tipo = Lbl.Comprobantes.Tipo.TodosPorLetra[EntradaTipo.TextKey]; Comprob.PV = EntradaPV.ValueInt; if (EntradaNumero.Enabled) { Comprob.Numero = EntradaNumero.ValueInt; } else { Comprob.Numero = UltimoNumero(); } Comprob.SituacionDestino = EntradaHaciaSituacion.Elemento as Lbl.Articulos.Situacion; Comprob.GastosDeEnvio = EntradaGastosEnvio.ValueDecimal; Comprob.OtrosGastos = EntradaOtrosGastos.ValueDecimal; Comprob.Obs = EntradaObs.Text; Comprob.Descuento = EntradaDescuento.ValueDecimal; Comprob.PercepcionIIBB = EntradaPercepcionIIBB.ValueDecimal; Comprob.PercepcionIVA = EntradaPercepcionIVA.ValueDecimal; Comprob.Localidad = EntradaLocalidad.Elemento as Lbl.Entidades.Localidad; if (EntradaEstado.Enabled && EntradaEstado.Visible) { Comprob.Estado = EntradaEstado.ValueInt; } else { Comprob.Estado = 0; } Comprob.Afecta = EntradaAfecta.ValueInt; if (EntradaMoneda.Elemento != null) { Comprob.Moneda = EntradaMoneda.Elemento.Id; Comprob.Cotiza = EntradaCotiza.ValueDecimal; Lfx.Data.FacCompraTag factag = new Lfx.Data.FacCompraTag(); factag.Afecta = EntradaAfecta.ValueInt; factag.id_moneda = EntradaMoneda.Elemento.Id; factag.cotiza = EntradaCotiza.ValueDecimal; Comprob.Tag = factag; } if (EntradaRemito.Elemento != null) { Comprob.IdRemito = EntradaRemito.Elemento.Id; } Comprob.Articulos = EntradaProductos.ObtenerArticulos(Comprob); base.ActualizarControl(); }