Пример #1
0
 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();
 }
Пример #2
0
        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();
        }
Пример #3
0
        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();
        }
Пример #4
0
        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);
        }
Пример #5
0
        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();
        }