public override Lfx.Types.OperationResult Ok() { if (Lfx.Types.Parsing.ParseCurrency(EntradaImporte.Text) <= 0) return new Lfx.Types.FailureOperationResult("Por favor escriba el importe."); if(EntradaCaja.ValueInt <= 0) return new Lfx.Types.FailureOperationResult("Por favor seleccione la caja de destino."); IDbTransaction Trans = this.Connection.BeginTransaction(IsolationLevel.Serializable); Lbl.Personas.Persona Cliente = new Lbl.Personas.Persona(Connection, EntradaCliente.ValueInt); Lbl.Comprobantes.ReciboDeCobro Rec = new Lbl.Comprobantes.ReciboDeCobro(this.Connection); Rec.Crear(); Rec.Cliente = Cliente; Rec.Cobros.Add(new Lbl.Comprobantes.Cobro(Connection, Lbl.Pagos.TiposFormasDePago.Caja, Lfx.Types.Parsing.ParseCurrency(EntradaImporte.Text))); Rec.Cobros[0].CajaDestino = new Lbl.Cajas.Caja(Connection, EntradaCaja.ValueInt); Rec.Vendedor = Lbl.Sys.Config.Actual.UsuarioConectado.Persona; Lfx.Types.OperationResult Res = Rec.Guardar(); if (Res.Success) { Trans.Commit(); if (Rec.Tipo.ImprimirAlGuardar) { using (IDbTransaction TransImpr = Rec.Connection.BeginTransaction()) { Lazaro.Impresion.Comprobantes.ImpresorRecibo Impresor = new Lazaro.Impresion.Comprobantes.ImpresorRecibo(Rec, TransImpr); Lfx.Types.OperationResult ResImprimir = Impresor.Imprimir(); if (ResImprimir.Success) { TransImpr.Commit(); } else { TransImpr.Rollback(); if (ResImprimir.Message != null) Lui.Forms.MessageBox.Show(ResImprimir.Message, "Error"); else Lui.Forms.MessageBox.Show("Se creó el recibo, pero no se imprimió correctamente.", "Error"); } } } string NombreCliente = EntradaCliente.TextDetail; Lfx.Workspace.Master.RunTime.Toast("Se creo un recibo para el cliente " + NombreCliente, "Recibo rápido"); EntradaCliente.ValueInt = 0; EntradaCliente.Focus(); return new Lfx.Types.CancelOperationResult(); } else { Trans.Rollback(); return Res; } }
private void CrearReciboParaEstaFactura() { Lbl.Comprobantes.ComprobanteConArticulos Factura = this.Elemento as Lbl.Comprobantes.ComprobanteConArticulos; Lbl.Comprobantes.ReciboDeCobro Recibo = new Lbl.Comprobantes.ReciboDeCobro(Lfx.Workspace.Master.GetNewConnection("Nuevo recibo para " + Factura.ToString()) as Lfx.Data.Connection); Recibo.Crear(); Recibo.Facturas.AddWithValue(Factura, Factura.ImporteImpago); Recibo.Cliente = Factura.Cliente; Recibo.Concepto = Lbl.Cajas.Concepto.IngresosPorFacturacion; Recibo.ConceptoTexto = "Cancelación de " + Factura.ToString(); Lfc.FormularioEdicion NuevoRecibo = Lfc.Instanciador.InstanciarFormularioEdicion(Recibo); NuevoRecibo.MdiParent = this.ParentForm.MdiParent; NuevoRecibo.Show(); }
private void CrearReciboParaEstaFactura() { Lbl.Comprobantes.ComprobanteConArticulos Factura = this.Elemento as Lbl.Comprobantes.ComprobanteConArticulos; Lbl.Comprobantes.ReciboDeCobro Recibo = new Lbl.Comprobantes.ReciboDeCobro(Lfx.Workspace.Master.GetNewConnection("Nuevo recibo para " + Factura.ToString())); Recibo.Crear(); Recibo.Facturas.AddWithValue(Factura, Factura.ImporteImpago); Recibo.Cliente = Factura.Cliente; Recibo.Concepto = Lbl.Cajas.Concepto.IngresosPorFacturacion; Recibo.ConceptoTexto = "Cancelación de " + Factura.ToString(); Lfc.FormularioEdicion NuevoRecibo = Lfc.Instanciador.InstanciarFormularioEdicion(Recibo); NuevoRecibo.MdiParent = this.ParentForm.MdiParent; NuevoRecibo.Show(); }
public override Lfx.Types.OperationResult Ok() { if (Lfx.Types.Parsing.ParseCurrency(EntradaImporte.Text) <= 0) { return(new Lfx.Types.FailureOperationResult("Por favor escriba el importe.")); } if (EntradaCaja.ValueInt <= 0) { return(new Lfx.Types.FailureOperationResult("Por favor seleccione la caja de destino.")); } IDbTransaction Trans = this.Connection.BeginTransaction(IsolationLevel.Serializable); Lbl.Personas.Persona Cliente = new Lbl.Personas.Persona(Connection, EntradaCliente.ValueInt); Lbl.Comprobantes.ReciboDeCobro Rec = new Lbl.Comprobantes.ReciboDeCobro(this.Connection); Rec.Crear(); Rec.Cliente = Cliente; Rec.Cobros.Add(new Lbl.Comprobantes.Cobro(Connection, Lbl.Pagos.TiposFormasDePago.Caja, Lfx.Types.Parsing.ParseCurrency(EntradaImporte.Text))); Rec.Cobros[0].CajaDestino = new Lbl.Cajas.Caja(Connection, EntradaCaja.ValueInt); Rec.Vendedor = Lbl.Sys.Config.Actual.UsuarioConectado.Persona; Lfx.Types.OperationResult Res = Rec.Guardar(); if (Res.Success) { Trans.Commit(); if (Rec.Tipo.ImprimirAlGuardar) { using (IDbTransaction TransImpr = Rec.Connection.BeginTransaction()) { Lazaro.Base.Util.Impresion.Comprobantes.ImpresorRecibo Impresor = new Lazaro.Base.Util.Impresion.Comprobantes.ImpresorRecibo(Rec, TransImpr); Lfx.Types.OperationResult ResImprimir = Impresor.Imprimir(); if (ResImprimir.Success) { TransImpr.Commit(); } else { TransImpr.Rollback(); if (ResImprimir.Message != null) { Lui.Forms.MessageBox.Show(ResImprimir.Message, "Error"); } else { Lui.Forms.MessageBox.Show("Se creó el recibo, pero no se imprimió correctamente.", "Error"); } } } } string NombreCliente = EntradaCliente.TextDetail; Lfx.Workspace.Master.RunTime.Toast("Se creo un recibo para el cliente " + NombreCliente, "Recibo rápido"); EntradaCliente.ValueInt = 0; EntradaCliente.Focus(); return(new Lfx.Types.CancelOperationResult()); } else { Trans.Rollback(); return(Res); } }