public virtual void anularConciliacionAutomatica(TB_Conciliacion objConciliacion) { ServiceMovimientoContable unSMC = new ServiceMovimientoContable(); using (var context = new dbSG2000Entities()) { using (TransactionScope transaction = new TransactionScope()) { var objConciliacionBD = (from c in context.TB_Conciliacion where c.IdConciliacion == objConciliacion.IdConciliacion select c).First <TB_Conciliacion>(); objConciliacionBD.TB_ConciliacionDetalle.ToList(); TB_ArchivoTarjeta un_TB_ArchivoTarjeta = (from c in context.TB_ArchivoTarjeta where c.id == objConciliacion.idArchivo select c).First(); // Eliminamos el detalle de la conciliacion foreach (TB_ConciliacionDetalle item in objConciliacionBD.TB_ConciliacionDetalle) { // eliminamos los detalle existentes // liberamos al cupon TB_Cupones objCupon = (from c in context.TB_Cupones where item.nrCupon == c.nrCupon select c).First(); var vlMontoAcreditacion = Convert.ToDouble(objCupon.vlMontoAcreditacion); objCupon.dtCobradoalCliente = null; // limpiamos la fecha de cobrado objCupon.flCobradoalCliente = false; // desconciliamos el cupon lo liberamos de la conciliacion objCupon.IdConciliacion = null; objCupon.vlMontoAcreditacion = null; objCupon.dtFechaAcreditacion = null; var nrFactura = objCupon.tpComprobanteCliente + "-" + objCupon.tpLetraCliente + "-" + objCupon.nrTalonarioCliente + "-" + objCupon.nrComprabanteCliente.Trim() + "/ Cupon: " + ExtensionString.EmptyIfNull(objCupon.nrCuponPosnet).Trim() + "/ Tarjeta: " + ExtensionString.EmptyIfNull(objCupon.nrTarjeta).Trim(); unSMC.GrabarAsientoContablePosdatados(vlMontoAcreditacion, objConciliacion.nrCajaAdm.Value, objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes, objCupon.nrLicencia.ToString(), nrFactura, item.fechaPago.Value, objCupon.nrCupon, un_TB_ArchivoTarjeta.formato); } // Eliminamos el detalle de la conciliacion //context.Database.ExecuteSqlCommand("DELETE FROM TB_ConciliacionDetalle where IdConciliacion= {0}", objConciliacionBD.IdConciliacion); objConciliacionBD.dtModificacion = DateTime.Now; objConciliacion.dsUsuario = this.Usuario; objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm); objConciliacionBD.flestado = "E"; // Conciliacion Eliminada context.SaveChanges(); // Procesamos el Movimientos posdatados unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario); transaction.Complete(); } } }
public virtual void anularConciliacion(TB_Conciliacion objConciliacion) { using (var context = new dbSG2000Entities()) { using (TransactionScope transaction = new TransactionScope()) { double TotalConciliacionAnulado = 0.0; var objConciliacionBD = (from c in context.TB_Conciliacion where c.IdConciliacion == objConciliacion.IdConciliacion select c).First <TB_Conciliacion>(); objConciliacionBD.TB_ConciliacionDetalle.ToList(); // Eliminamos el detalle de la conciliacion foreach (TB_ConciliacionDetalle item in objConciliacionBD.TB_ConciliacionDetalle) { // eliminamos los detalle existentes // liberamos al cupon TB_Cupones objCupon = (from c in context.TB_Cupones where item.nrCupon == c.nrCupon select c).First(); objCupon.flCobradoalCliente = false; objCupon.dtCobradoalCliente = null; TotalConciliacionAnulado = TotalConciliacionAnulado + objCupon.vlMontoCupon.Value; } // Eliminamos el detalle de la conciliacion //context.Database.ExecuteSqlCommand("DELETE FROM TB_ConciliacionDetalle where IdConciliacion= {0}", objConciliacionBD.IdConciliacion); objConciliacionBD.dtModificacion = DateTime.Now; objConciliacionBD.dsUsuario = this._usuarioActivo; objConciliacionBD.nrCajaAdm = Decimal.Parse(this._cajactiva); objConciliacionBD.flestado = "E"; // Conciliacion Eliminada context.SaveChanges(); GrabarAsientoContable(TotalConciliacionAnulado, Decimal.Parse(this._cajactiva), this._usuarioActivo, objConciliacion, context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes); transaction.Complete(); } } }
public virtual void modificarConciliacionAutomatica(List <decimal> listaCuponesDesconciliados, List <decimal> listaCuponesConciliados, TB_Conciliacion objConciliacion) { ServiceMovimientoContable unSMC = new ServiceMovimientoContable(); //una_conciliacion.TB_ConciliacionDetalle using (var context = new dbSG2000Entities()) { // detalle conciliacion desconciliadas var listaDetalleDesconciliados = (from c in context.TB_ConciliacionDetalle where listaCuponesDesconciliados.Contains(c.nrCupon) && c.IdConciliacion == objConciliacion.IdConciliacion select c).ToList();; // cupones conciliacion desconciliadas var listaTB_CuponesDesconciliados = (from c in context.TB_Cupones where listaCuponesDesconciliados.Contains(c.nrCupon) select c.flCobradoalCliente).ToList();; using (TransactionScope transaction = new TransactionScope()) { objConciliacion = (from c in context.TB_Conciliacion where c.IdConciliacion == objConciliacion.IdConciliacion select c).First <TB_Conciliacion>(); objConciliacion.dsUsuario = this.Usuario; objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm); objConciliacion.flestado = "A"; objConciliacion.dtModificacion = DateTime.Now; context.SaveChanges(); foreach (var detalleConciliacion in listaDetalleDesconciliados) { TB_Cupones un_Cupon = (from c in context.TB_Cupones where c.nrCupon == detalleConciliacion.nrCupon select c).First(); TB_ArchivoTarjeta un_TB_ArchivoTarjeta = (from c in context.TB_ArchivoTarjeta where c.id == objConciliacion.idArchivo select c).First(); var vlMontoAcreditacion = Convert.ToDouble(un_Cupon.vlMontoAcreditacion); un_Cupon.dtCobradoalCliente = null; // limpiamos la fecha de cobrado un_Cupon.flCobradoalCliente = false; // desconciliamos el cupon lo liberamos de la conciliacion un_Cupon.IdConciliacion = null; un_Cupon.vlMontoAcreditacion = null; un_Cupon.dtFechaAcreditacion = null; context.SaveChanges(); var nrFactura = un_Cupon.tpComprobanteCliente + "-" + un_Cupon.tpLetraCliente + "-" + un_Cupon.nrTalonarioCliente + "-" + un_Cupon.nrComprabanteCliente.Trim() + "/ Cupon: " + ExtensionString.EmptyIfNull(un_Cupon.nrCuponPosnet).Trim() + "/ Tarjeta: " + ExtensionString.EmptyIfNull(un_Cupon.nrTarjeta).Trim(); // GrabarAsientoContable(TotalConciliacionAnulado, Decimal.Parse(this._cajactiva), this._usuarioActivo, // objConciliacion, context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes); unSMC.GrabarAsientoContablePosdatados(vlMontoAcreditacion, objConciliacion.nrCajaAdm.Value, objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes, un_Cupon.nrLicencia.ToString(), nrFactura, detalleConciliacion.fechaPago.Value, un_Cupon.nrCupon, un_TB_ArchivoTarjeta.formato); context.TB_ConciliacionDetalle.Remove(detalleConciliacion); } context.SaveChanges(); // Procesamos el Movimientos posdatados unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario); transaction.Complete(); return; //return listadeViajesaConciliar.ToList(); } // desafectar el cupon flCobradoalCliente = false // desafectar el cupon dtCobradoalCliente = null // grabar la tabla de Movimientos en forma de anulacion } }
public virtual void agregarConciliacion(List <TB_ConciliacionDetalleEx> plistaDetalleConciliacion, TB_Conciliacion objConciliacion) { ServiceMovimientoContable unSMC = new ServiceMovimientoContable(); try { using (var context = new dbSG2000Entities()) { using (TransactionScope transaction = new TransactionScope()) { objConciliacion.dsUsuario = this.Usuario; objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm); objConciliacion.flestado = "A"; objConciliacion.dtModificacion = DateTime.Now; context.TB_Conciliacion.Add(objConciliacion); context.SaveChanges(); foreach (var detalleConciliacion in plistaDetalleConciliacion) { TB_Cupones un_Cupon = (from c in context.TB_Cupones where c.nrCupon == detalleConciliacion.nrCupon select c).First(); TB_ArchivoTarjetaDetalle un_TB_ArchivoTarjetaDetalle = (from c in context.TB_ArchivoTarjetaDetalle where c.Id == detalleConciliacion.IdArchivoTarjetaDetalle select c).First(); TB_ArchivoTarjeta un_TB_ArchivoTarjeta = (from c in context.TB_ArchivoTarjeta where c.id == objConciliacion.idArchivo select c).First(); if (detalleConciliacion.fechaPago.Value.Subtract(detalleConciliacion.dtCupon).TotalDays >= this.CONCILIACION_DIF_DIAS_FECHA_PAGO_Y_CUPON) { detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(this.CONCILIACION_CANT_DIAS_COBRO_TARJETA_CREDITO); } else { detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(this.CONCILIACION_CANT_DIAS_COBRO_TARJETA_DEBITO); } un_Cupon.dtCobradoalCliente = detalleConciliacion.FechaPagoLicenciatario; // muy importante para habilitar el pago al licenciatario un_Cupon.flCobradoalCliente = true; // Marca de cociliacion un_Cupon.dtFechaAcreditacion = detalleConciliacion.fechaPago; // Fecha en que visa o master pagan al banco un_Cupon.vlMontoAcreditacion = System.Convert.ToDouble(un_TB_ArchivoTarjetaDetalle.importe); // importe enviado por la Tarjeta detalleConciliacion.IdConciliacion = objConciliacion.IdConciliacion; context.TB_ConciliacionDetalle.Add(detalleConciliacion.ToTB_ConciliacionDetalle()); context.SaveChanges(); un_Cupon.IdConciliacion = detalleConciliacion.IdConciliacion; // Asociamos la conciliacion al cupon var nrFactura = un_Cupon.tpComprobanteCliente + "-" + un_Cupon.tpLetraCliente + "-" + un_Cupon.nrTalonarioCliente + "-" + un_Cupon.nrComprabanteCliente.Trim() + "/ Cupon: " + ExtensionString.EmptyIfNull(un_Cupon.nrCuponPosnet).Trim() + "/ Tarjeta: " + ExtensionString.EmptyIfNull(un_Cupon.nrTarjeta).Trim(); unSMC.GrabarAsientoContablePosdatados(un_Cupon.vlMontoAcreditacion.Value, objConciliacion.nrCajaAdm.Value, objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Conciliacion_de_Viajes, Viajes_con_Tarjeta_a_Bancos, un_Cupon.nrLicencia.ToString(), nrFactura, detalleConciliacion.fechaPago.Value, un_Cupon.nrCupon, un_TB_ArchivoTarjeta.formato); } context.SaveChanges(); // Procesamos el Movimientos posdatados unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario); transaction.Complete(); return; //return listadeViajesaConciliar.ToList(); } } // Cierre using } catch (DbEntityValidationException e) { Console.WriteLine(e); Trace.TraceError(e.Message); foreach (var eve in e.EntityValidationErrors) { Trace.TraceError("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Trace.TraceError("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } }
public override void agregarConciliacion(List <TB_ConciliacionDetalleEx> plistaDetalleConciliacion, TB_Conciliacion objConciliacion) { ServiceMovimientoContable unSMC = new ServiceMovimientoContable(); using (var context = new dbSG2000Entities()) { using (TransactionScope transaction = new TransactionScope()) { objConciliacion.dsUsuario = this.Usuario; objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm); objConciliacion.flestado = "A"; objConciliacion.dtModificacion = DateTime.Now; context.TB_Conciliacion.Add(objConciliacion); context.SaveChanges(); foreach (var detalleConciliacion in plistaDetalleConciliacion) { TB_Cupones un_Cupon = (from c in context.TB_Cupones where c.nrCupon == detalleConciliacion.nrCupon select c).First(); TB_ArchivoTarjetaDetalle un_TB_ArchivoTarjetaDetalle = (from c in context.TB_ArchivoTarjetaDetalle where c.Id == detalleConciliacion.IdArchivoTarjetaDetalle select c).First(); TB_ArchivoTarjeta un_TB_ArchivoTarjeta = (from c in context.TB_ArchivoTarjeta where c.id == objConciliacion.idArchivo select c).First(); detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(10); un_Cupon.dtCobradoalCliente = detalleConciliacion.FechaPagoLicenciatario; // muy importante para habilitar el pago al licenciatario un_Cupon.flCobradoalCliente = true; // Marca de cociliacion un_Cupon.dtFechaAcreditacion = detalleConciliacion.fechaPago; // Fecha en que visa o master pagan al banco un_Cupon.vlMontoAcreditacion = System.Convert.ToDouble(un_TB_ArchivoTarjetaDetalle.importe); // importe enviado por la Tarjeta detalleConciliacion.IdConciliacion = objConciliacion.IdConciliacion; context.TB_ConciliacionDetalle.Add(detalleConciliacion.ToTB_ConciliacionDetalle()); context.SaveChanges(); un_Cupon.IdConciliacion = detalleConciliacion.IdConciliacion; // Asociamos la conciliacion al cupon /* NO GRABAMOS MOVIMIENTOS POSTADATOS - PORQUE EL PAGO ES EN EFECTIVO * var nrFactura = un_Cupon.tpComprobanteCliente + "-" + un_Cupon.tpLetraCliente +"-" + un_Cupon.nrTalonarioCliente + "-" + un_Cupon.nrComprabanteCliente.Trim () + "/ Cupon: " + ExtensionString.EmptyIfNull( un_Cupon.nrCuponPosnet).Trim() + "/ Tarjeta: " + ExtensionString.EmptyIfNull(un_Cupon.nrTarjeta).Trim() ; * unSMC.GrabarAsientoContablePosdatados(un_Cupon.vlMontoAcreditacion.Value, objConciliacion.nrCajaAdm.Value, * objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Conciliacion_de_Viajes, Viajes_con_Tarjeta_a_Bancos, un_Cupon.nrLicencia.ToString(), nrFactura, detalleConciliacion.fechaPago.Value, un_Cupon.nrCupon, un_TB_ArchivoTarjeta.formato); * */ } context.SaveChanges(); transaction.Complete(); // Procesamos el Movimientos posdatados // unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario); return; //return listadeViajesaConciliar.ToList(); } } }
} // fin de modificarConciliacionAutomatica public override void anularConciliacion(TB_Conciliacion objConciliacion) { ServiceMovimientoContable unSMC = new ServiceMovimientoContable(); try { using (var context = new dbSG2000Entities()) { using (TransactionScope transaction = new TransactionScope()) { var objConciliacionBD = (from c in context.TB_Conciliacion where c.IdConciliacion == objConciliacion.IdConciliacion select c).First <TB_Conciliacion>(); objConciliacionBD.TB_ConciliacionDetalle.ToList(); // Eliminamos el detalle de la conciliacion foreach (TB_ConciliacionDetalle item in objConciliacionBD.TB_ConciliacionDetalle) { // eliminamos los detalle existentes // liberamos al cupon TB_Cupones objCupon = (from c in context.TB_Cupones where item.nrCupon == c.nrCupon select c).First(); var vlMontoAcreditacion = Convert.ToDouble(objCupon.vlMontoAcreditacion); objCupon.dtCobradoalCliente = null; // limpiamos la fecha de cobrado objCupon.flCobradoalCliente = false; // desconciliamos el cupon lo liberamos de la conciliacion objCupon.IdConciliacion = null; objCupon.vlMontoAcreditacion = null; objCupon.dtFechaAcreditacion = null; var nrFactura = objCupon.tpComprobanteCliente + "-" + objCupon.tpLetraCliente + "-" + objCupon.nrTalonarioCliente + "-" + objCupon.nrComprabanteCliente.Trim() + "/ Cupon: " + ExtensionString.EmptyIfNull(objCupon.nrCuponPosnet).Trim() + "/ Tarjeta: " + ExtensionString.EmptyIfNull(objCupon.nrTarjeta).Trim(); unSMC.GrabarAsientoContablePosdatados(vlMontoAcreditacion, objConciliacion.nrCajaAdm.Value, objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Anula_Viajes_con_Tarjeta_a_Bancos, Anula_conciliacion_de_Viajes, objCupon.nrLicencia.ToString(), nrFactura, item.fechaPago.Value, objCupon.nrCupon, "Manual"); } // Eliminamos el detalle de la conciliacion //context.Database.ExecuteSqlCommand("DELETE FROM TB_ConciliacionDetalle where IdConciliacion= {0}", objConciliacionBD.IdConciliacion); objConciliacionBD.dtModificacion = DateTime.Now; objConciliacion.dsUsuario = this.Usuario; objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm); objConciliacionBD.flestado = "E"; // Conciliacion Eliminada context.SaveChanges(); // Procesamos el Movimientos posdatados unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario); transaction.Complete(); } } } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); Trace.TraceError("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); Trace.TraceError("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } } // FIN anularConciliacionAutomatica
public void agregarConciliacion(List <TB_ConciliacionDetalleEx> plistaDetalleConciliacion, TB_Conciliacion objConciliacion) { var paramLog = new SGLibrary.Utility.ParamLogUtility(() => plistaDetalleConciliacion, () => objConciliacion).GetLog(); Trace.TraceInformation(paramLog); ServiceMovimientoContable unSMC = new ServiceMovimientoContable(); using (var context = new dbSG2000Entities()) { using (TransactionScope transaction = new TransactionScope()) { objConciliacion.dsUsuario = this.Usuario; objConciliacion.nrCajaAdm = Decimal.Parse(this.CajaAdm); objConciliacion.flestado = "A"; objConciliacion.dtModificacion = DateTime.Now; context.TB_Conciliacion.Add(objConciliacion); context.SaveChanges(); foreach (var detalleConciliacion in plistaDetalleConciliacion) { TB_Cupones un_Cupon = (from c in context.TB_Cupones where c.nrCupon == detalleConciliacion.nrCupon select c).First(); if (detalleConciliacion.fechaPago.Value.Subtract(detalleConciliacion.dtCupon).TotalDays >= 20) { detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(30); } else { detalleConciliacion.FechaPagoLicenciatario = detalleConciliacion.dtCupon.AddDays(5); } un_Cupon.dtCobradoalCliente = detalleConciliacion.FechaPagoLicenciatario; // muy importante para habilitar el pago al licenciatario un_Cupon.flCobradoalCliente = true; // Marca de cociliacion un_Cupon.dtFechaAcreditacion = detalleConciliacion.fechaPago; // Fecha en que visa o master pagan al banco un_Cupon.vlMontoAcreditacion = un_Cupon.vlMontoCupon; // importe enviado por la Tarjeta detalleConciliacion.IdConciliacion = objConciliacion.IdConciliacion; context.TB_ConciliacionDetalle.Add(detalleConciliacion.ToTB_ConciliacionDetalle()); context.SaveChanges(); un_Cupon.IdConciliacion = detalleConciliacion.IdConciliacion; // Asociamos la conciliacion al cupon var nrFactura = un_Cupon.tpComprobanteCliente + "-" + un_Cupon.tpLetraCliente + "-" + un_Cupon.nrTalonarioCliente + un_Cupon.nrComprabanteCliente.Trim(); unSMC.GrabarAsientoContablePosdatados(un_Cupon.vlMontoAcreditacion.Value, objConciliacion.nrCajaAdm.Value, objConciliacion.dsUsuario, objConciliacion.IdConciliacion.ToString(), context, Conciliacion_de_Viajes, Viajes_con_Tarjeta_a_Bancos, un_Cupon.nrLicencia.ToString(), nrFactura, detalleConciliacion.fechaPago.Value, un_Cupon.nrCupon, "Manual"); } context.SaveChanges(); // Procesamos el Movimientos posdatados unSMC.procesarMovimientosPosdatados(Decimal.Parse(this.CajaAdm), this.Usuario); transaction.Complete(); return; //return listadeViajesaConciliar.ToList(); } } }
/// <summary> /// grabar movimientos contables para reflejar la salida del dinero /// </summary> /// <param name="una_conciliacion"></param> /// <returns></returns> public void GrabarCupon(Double pvlPesos, decimal pnrCaja, String pdsUsuario, int pIdConciliacion, dbSG2000Entities pdbSG2000Entities, int pnrLicencia, String pnrFactura, DateTime pdtFecha, Decimal pnrCupon, String pdsObservaccion, int pcdCliente, String ptpComprobanteCliente, String pnrComprabanteCliente, String pnrTalonarioCliente, String ptpLetraCliente, double pvlMontoCupon, double pvlComision) { Trace.TraceInformation("ingresando a GrabarCupon"); try { // Setear conceptos y caja // Obtener la entidad Usuario TB_Cupones unCupon = new TB_Cupones(); var max = (from p in pdbSG2000Entities.TB_Cupones select p).OrderByDescending(p => p.nrCupon).FirstOrDefault(); if (max == null) { throw new DAOEntityException("no se pudo obtener el máximo nro de cupón"); } else { unCupon.nrCupon = max.nrCupon + 1; unCupon.dtCupon = DateTime.UtcNow; unCupon.cdCliente = pcdCliente; unCupon.nrLicencia = 99; // definir que licencia vamos a utilizar para el armado de estos recibos unCupon.tpComprobanteCliente = ptpComprobanteCliente; unCupon.nrComprabanteCliente = pnrComprabanteCliente; unCupon.nrTalonarioCliente = pnrTalonarioCliente; unCupon.tpLetraCliente = ptpLetraCliente; unCupon.vlMontoCupon = pvlMontoCupon; unCupon.vlComision = pvlComision; unCupon.vlPagoPesos = 0; unCupon.vlPagoReales = 0; unCupon.vlPagoEuros = 0; unCupon.vlPagoDolares = 0; unCupon.IdConciliacion = pIdConciliacion; unCupon.flCobradoalCliente = false; unCupon.flCompensado = false; unCupon.flAnulado = false; unCupon.nrCajaCliente = pnrCaja; unCupon.vlIVA = 0; unCupon.vlSubtotal = 0; pdbSG2000Entities.TB_Cupones.Add(unCupon); pdbSG2000Entities.SaveChanges(); } } catch (Exception e) { Console.WriteLine(e); //foreach (var eve in e.EntityValidationErrors) //{ // Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", // eve.Entry.Entity.GetType().Name, eve.Entry.State); // foreach (var ve in eve.ValidationErrors) // { // Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", // ve.PropertyName, ve.ErrorMessage); // } //} throw; } return; } // CIERRA GrabarCupon