public override void Start() { using (ISession Sesion = m_SessionFactory.OpenSession()) { using (ITransaction Trans = Sesion.BeginTransaction()) { try { RendicionCotizacion Rendicion = (RendicionCotizacion)m_ObjectFlow; string sql = string.Format("UPDATE Cotizacion SET EstadoRendicion = 'PENDIENTE' WHERE ID = '{0}'", Rendicion.IDCotizacion); var dbCommand = Sesion.Connection.CreateCommand(); Sesion.Transaction.Enlist(dbCommand); dbCommand.CommandText = sql; dbCommand.ExecuteNonQuery(); Sesion.Delete(Rendicion); Trans.Commit(); m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { Trans.Rollback(); m_ResultProcess = EnumResult.ERROR; SoftException.Control(ex.InnerException); } } } base.Start(); }
public override void Start() { using (ISession Sesion = m_SessionFactory.OpenSession()) { using (ITransaction Trans = Sesion.BeginTransaction()) { try { Auditoria Auditoria = Auditoria.ConstruirAuditoria(base.m_ObjectFlow, "Creación"); RendicionCotizacion Rendicion = (RendicionCotizacion)m_ObjectFlow; string sql = string.Format("UPDATE Cotizacion SET EstadoRendicion = 'TOTAL' WHERE ID = '{0}'", Rendicion.IDCotizacion); var dbCommand = Sesion.Connection.CreateCommand(); Sesion.Transaction.Enlist(dbCommand); dbCommand.CommandText = sql; dbCommand.ExecuteNonQuery(); Sesion.Save(Rendicion); Sesion.Save(Auditoria); Trans.Commit(); m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { Trans.Rollback(); m_ResultProcess = EnumResult.ERROR; SoftException.Control(ex); } finally { base.Start(); } } } }
public override void Start() { try { Cotizacion Cotizacion = (Cotizacion)base.m_ObjectFlow; if (!Cotizacion.EstadoAprobacion.Equals("APROBADO")) { throw new Exception(String.Format("La Cotización Nº : {0} aún no ha sido APROBADA.", Cotizacion.Numeracion)); } if (Cotizacion.EstadoRendicion.Equals("TOTAL")) { throw new Exception(String.Format("La Cotización Nº : {0} ya ha sido RENDIDA.", Cotizacion.Numeracion)); } RendicionCotizacion Rendicion = new RendicionCotizacion(); Rendicion.IDCotizacion = Cotizacion.ID; Rendicion.NumeroCotizacion = Cotizacion.Numeracion; foreach (ItemCotizacion ItemCotizacion in Cotizacion.Items) { if (ItemCotizacion.Maquina != null) { ItemRendicionCotizacion ItemRendicion = new ItemRendicionCotizacion(); ItemRendicion.Codigo = ItemCotizacion.Maquina.Codigo; ItemRendicion.Descripcion = ItemCotizacion.Maquina.Descripcion; ItemRendicion.CantidadCotizacion = 1; ItemRendicion.PrecioCotizacion = ItemCotizacion.CostoMaquina; ItemRendicion.TotalCotizacion = ItemCotizacion.CostoMaquina / 1; ItemRendicion.CantidadReal = 1; ItemRendicion.PrecioReal = ItemCotizacion.CostoMaquina; ItemRendicion.TotalReal = ItemCotizacion.CostoMaquina / 1; Rendicion.Items.Add(ItemRendicion); } foreach (ItemCotizacionServicio ItemServicio in ItemCotizacion.Servicios) { if (ItemServicio.Servicio != null && ItemServicio.UnidadServicio != null) { ItemRendicionCotizacion ItemRendicion = new ItemRendicionCotizacion(); ItemRendicion.Codigo = ItemServicio.Servicio.Codigo; ItemRendicion.Descripcion = ItemServicio.Servicio.Descripcion; ItemRendicion.Unidad = ItemServicio.UnidadServicio.Unidad.Codigo; ItemRendicion.CantidadCotizacion = ItemServicio.CantidadServicio; ItemRendicion.PrecioCotizacion = ItemServicio.CostoServicio / ItemServicio.CantidadServicio; ItemRendicion.TotalCotizacion = ItemServicio.CostoServicio; ItemRendicion.CantidadReal = ItemServicio.CantidadServicio; ItemRendicion.PrecioReal = ItemServicio.CostoServicio / ItemServicio.CantidadServicio; ItemRendicion.TotalReal = ItemServicio.CostoServicio; Rendicion.Items.Add(ItemRendicion); } if (ItemServicio.Maquina != null && ItemServicio.UnidadMaquina != null) { ItemRendicionCotizacion ItemRendicion = new ItemRendicionCotizacion(); ItemRendicion.Codigo = ItemServicio.Maquina.Codigo; ItemRendicion.Descripcion = ItemServicio.Maquina.Descripcion; ItemRendicion.Unidad = ItemServicio.UnidadMaquina.Codigo; ItemRendicion.CantidadCotizacion = ItemServicio.CantidadMaquina; ItemRendicion.PrecioCotizacion = ItemServicio.CostoMaquina / ItemServicio.CantidadMaquina; ItemRendicion.TotalCotizacion = ItemServicio.CostoMaquina; ItemRendicion.CantidadReal = ItemServicio.CantidadMaquina; ItemRendicion.PrecioReal = ItemServicio.CostoMaquina / ItemServicio.CantidadMaquina; ItemRendicion.TotalReal = ItemServicio.CostoMaquina; Rendicion.Items.Add(ItemRendicion); } } } base.m_ObjectFlow = Rendicion; base.m_EntidadSF = (EntidadSF)HelperNHibernate.GetEntityByField("EntidadSF", "NombreClase", "RendicionCotizacion"); base.m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { base.m_ResultProcess = EnumResult.ERROR; SoftException.ShowException(ex); } base.Start(); }