public override void Start() { using (ISession Sesion = m_SessionFactory.OpenSession()) { using (ITransaction Trans = Sesion.BeginTransaction()) { try { ConsolidadoOp ConsolidadoOp = (ConsolidadoOp)m_ObjectFlow; SqlCommand SqlCmd = new SqlCommand(); SqlCmd.Connection = (SqlConnection)Sesion.Connection; Trans.Enlist(SqlCmd); SqlCmd.CommandText = "pSF_Actualizar_IDConsolidadoOP_OrdenProduccion"; SqlCmd.CommandType = System.Data.CommandType.StoredProcedure; SqlCmd.Parameters.AddWithValue("@IDConsolidadoOp", ConsolidadoOp.ID); SqlCmd.Parameters.AddWithValue("@Items", "<Items/>"); SqlCmd.ExecuteNonQuery(); Sesion.Delete(ConsolidadoOp); Trans.Commit(); m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { Trans.Rollback(); m_ResultProcess = EnumResult.ERROR; SoftException.Control(ex); } } } base.Start(); }
public override void Start() { using (ISession Sesion = m_SessionFactory.OpenSession()) { using (ITransaction Trans = Sesion.BeginTransaction()) { FrmProgress Progreso = new FrmProgress(); try { Collection Cps = (Collection)m_ObjectFlow; Progreso.Start(Cps.Count, "Aprobando Cotizaciones ..."); foreach (ConsolidadoOp Cp in Cps) { Auditoria Auditoria = Auditoria.ConstruirAuditoria(Cp, "Aprobacion"); ConsolidadoOp ConsolidadoOp = (ConsolidadoOp)HelperNHibernate.GetEntityByID("ConsolidadoOp", Cp.ID); if (ConsolidadoOp.EstadoAprobacion.Equals("APROBADO")) { throw new Exception(String.Format("El consolidado número {0} ya se encuentra APROBADA.", Cp.Numeracion)); } SqlCommand SqlCmd = new SqlCommand(); SqlCmd.Connection = (SqlConnection)Sesion.Connection; Trans.Enlist(SqlCmd); SqlCmd.CommandText = "pSF_Aprobar_ConsolidadoOp"; SqlCmd.CommandType = System.Data.CommandType.StoredProcedure; SqlCmd.Parameters.AddWithValue("@ID", ConsolidadoOp.ID); SqlCmd.Parameters.AddWithValue("@EstadoAprobacion", "APROBADO"); SqlCmd.ExecuteNonQuery(); Sesion.Save(Auditoria); Progreso.Next(); } Trans.Commit(); Progreso.Close(); m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { Trans.Rollback(); Progreso.Close(); m_ResultProcess = EnumResult.ERROR; SoftException.Control((ex.InnerException != null) ? ex.InnerException : ex); } } } 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"); ConsolidadoOp ConsolidadoOp = (ConsolidadoOp)m_ObjectFlow; SqlCommand SqlCmd = new SqlCommand(); SqlCmd.Connection = (SqlConnection)Sesion.Connection; Trans.Enlist(SqlCmd); SqlCmd.CommandText = "pSF_Actualizar_IDConsolidadoOP_OrdenProduccion"; SqlCmd.CommandType = System.Data.CommandType.StoredProcedure; SqlCmd.Parameters.AddWithValue("@IDConsolidadoOp", ConsolidadoOp.ID); SqlCmd.Parameters.AddWithValue("@Items", ContruirXML(ConsolidadoOp)); SqlCmd.ExecuteNonQuery(); Sesion.Save(ConsolidadoOp); Sesion.Flush(); // Actualizamos la Numeración if (ConsolidadoOp.TipoDocumento.GeneraNumeracionAlFinal) { SqlCmd.CommandText = "pSF_Generar_Numeracion"; SqlCmd.Parameters.Clear(); SqlCmd.Parameters.AddWithValue("@Documento", "ConsolidadoOp"); SqlCmd.Parameters.AddWithValue("@TipoDocumento", "TipoDocumentoConsolidadoOp"); SqlCmd.Parameters.AddWithValue("@IDDocumento", ConsolidadoOp.ID); SqlCmd.Parameters.AddWithValue("@IDTipoDocumento", ConsolidadoOp.TipoDocumento.ID); SqlCmd.ExecuteNonQuery(); } Sesion.Save(Auditoria); Trans.Commit(); m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { Trans.Rollback(); m_ResultProcess = EnumResult.ERROR; SoftException.Control(ex); } } } base.Start(); }
public String ContruirXML(ConsolidadoOp ConsolidadoOp) { XmlDocument XML = new XmlDocument(); XML.LoadXml("<Items/>"); foreach (ItemConsolidadoOp Item in ConsolidadoOp.Items) { XmlNode Node = XML.CreateNode(XmlNodeType.Element, "Item", ""); XML.DocumentElement.AppendChild(Node); XmlAttribute Attribute = XML.CreateAttribute("IDOrdenProduccion"); Attribute.Value = Item.IDOrdenProduccion; Node.Attributes.Append(Attribute); } return(XML.OuterXml); }
public override void Start() { using (ISession Sesion = m_SessionFactory.OpenSession()) { using (ITransaction Trans = Sesion.BeginTransaction()) { try { Auditoria Auditoria = Auditoria.ConstruirAuditoria(base.m_ObjectFlow, "Modificar"); ConsolidadoOp ConsolidadoOp = (ConsolidadoOp)m_ObjectFlow; if (!ConsolidadoOp.EstadoAprobacion.Equals("PENDIENTE")) { throw new Exception("El consolidado numero " + ConsolidadoOp.Numeracion + " se encuentra " + ConsolidadoOp.EstadoAprobacion); } SqlCommand SqlCmd = new SqlCommand(); SqlCmd.Connection = (SqlConnection)Sesion.Connection; Trans.Enlist(SqlCmd); SqlCmd.CommandText = "pSF_Actualizar_IDConsolidadoOP_OrdenProduccion"; SqlCmd.CommandType = System.Data.CommandType.StoredProcedure; SqlCmd.Parameters.AddWithValue("@IDConsolidadoOp", ConsolidadoOp.ID); SqlCmd.Parameters.AddWithValue("@Items", ContruirXML(ConsolidadoOp)); SqlCmd.ExecuteNonQuery(); Sesion.Update(ConsolidadoOp); Sesion.Save(Auditoria); Trans.Commit(); m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { Trans.Rollback(); m_ResultProcess = EnumResult.ERROR; SoftException.Control(ex); } } } base.Start(); }