public override void Start()
        {
            using (ISession Sesion = m_SessionFactory.OpenSession())
            {
                using (ITransaction Trans = Sesion.BeginTransaction())
                {
                    FrmProgress Progreso = new FrmProgress();
                    try
                    {
                        Collection Presupuestos = (Collection)m_ObjectFlow;
                        Progreso.Start(Presupuestos.Count, "Aprobando Presupuestos ...");
                        foreach (Presupuesto Presupuesto in Presupuestos)
                        {
                            Auditoria Auditoria = Auditoria.ConstruirAuditoria(Presupuesto, "Enviar Cliente");

                            if (!Presupuesto.EstadoAprobacion.Equals("APROBADO"))
                            {
                                throw new Exception(String.Format("El presupuesto número {0} no esta aprobado", Presupuesto.Numeracion));
                            }


                            if (!Presupuesto.EstadoAceptacion.Equals("PENDIENTE"))
                            {
                                throw new Exception(String.Format("El presupuesto número {0} ya fue enviado", Presupuesto.Numeracion));
                            }


                            SqlCommand SqlCmd = new SqlCommand();
                            SqlCmd.Connection = (SqlConnection)Sesion.Connection;
                            Trans.Enlist(SqlCmd);
                            SqlCmd.CommandText = "pSF_Enviar_Cliente_Presupuesto";
                            SqlCmd.CommandType = System.Data.CommandType.StoredProcedure;
                            SqlCmd.Parameters.AddWithValue("@ID", Presupuesto.ID);
                            SqlCmd.Parameters.AddWithValue("@EstadoAceptacion", "ENVIADO");
                            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();
        }
Пример #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())
                {
                    FrmProgress Progreso = new FrmProgress();
                    try
                    {
                        Collection Cotizaciones = (Collection)m_ObjectFlow;
                        Progreso.Start(Cotizaciones.Count, "Desaprobando Cotizaciones ...");
                        foreach (Cotizacion Cotizacion in Cotizaciones)
                        {
                            Auditoria Auditoria = Auditoria.ConstruirAuditoria(Cotizacion, "Desaprobar");
                            if (Cotizacion.EstadoAprobacion.Equals("PENDIENTE"))
                            {
                                throw new Exception(String.Format("La cotización número {0} aún no ha sido APROBADA.", Cotizacion.Numeracion));
                            }

                            SqlCommand SqlCmd = new SqlCommand();
                            SqlCmd.Connection = (SqlConnection)Sesion.Connection;
                            Trans.Enlist(SqlCmd);
                            SqlCmd.CommandText = "pSF_Aprobar_Desaprobar_Cotizacion";
                            SqlCmd.CommandType = System.Data.CommandType.StoredProcedure;
                            SqlCmd.Parameters.AddWithValue("@ID", Cotizacion.ID);
                            SqlCmd.Parameters.AddWithValue("@EstadoAprobacion", "PENDIENTE");
                            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())
                {
                    FrmProgress Progreso = new FrmProgress();
                    try
                    {
                        Collection Cps = (Collection)m_ObjectFlow;


                        Progreso.Start(Cps.Count, "Cambiando a Despacho a Ordenes de Produccion ...");
                        foreach (OrdenProduccion Cp in Cps)
                        {
                            Auditoria Auditoria = Auditoria.ConstruirAuditoria(Cp, "En Acabados");

                            SqlCommand SqlCmd = new SqlCommand();
                            SqlCmd.Connection = (SqlConnection)Sesion.Connection;
                            Trans.Enlist(SqlCmd);
                            SqlCmd.CommandText = "pSF_Estados_Produccion_OrdenProduccion";
                            SqlCmd.CommandType = System.Data.CommandType.StoredProcedure;
                            SqlCmd.Parameters.AddWithValue("@ID", Cp.ID);
                            SqlCmd.Parameters.AddWithValue("@EstadoAprobacion", "EN DESPACHO");
                            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();
        }
Пример #5
0
        public override void Start()
        {
            using (ISession Sesion = m_SessionFactory.OpenSession())
            {
                using (ITransaction Trans = Sesion.BeginTransaction())
                {
                    try
                    {
                        FrmProgress Progreso = new FrmProgress();

                        Collection cps = (Collection)m_ObjectFlow;
                        Progreso.Start(cps.Count, "");

                        foreach (Soft.Facturacion.Entidades.Facturacion cp in cps)
                        {
                            if (cp.EstadoEntrega.Equals("ENTREGADO"))
                            {
                                throw new Exception(String.Format("El comprobante de venta número {0} ya se encuentra ENTREGADO.", cp.Numeracion));
                            }

                            SqlCommand SqlCmd = new SqlCommand();
                            SqlCmd.Connection = (SqlConnection)Sesion.Connection;
                            Trans.Enlist(SqlCmd);
                            SqlCmd.CommandText = "pSF_Actualizar_EstadoEntrega_Facturacion";
                            SqlCmd.CommandType = System.Data.CommandType.StoredProcedure;
                            SqlCmd.Parameters.AddWithValue("@ID", cp.ID);
                            SqlCmd.ExecuteNonQuery();
                            Progreso.Next();
                        }
                        Trans.Commit();
                        Progreso.Close();
                        m_ResultProcess = EnumResult.SUCESS;
                    }
                    catch (Exception ex)
                    {
                        Trans.Rollback();
                        m_ResultProcess = EnumResult.ERROR;
                        SoftException.Control(ex);
                    }
                    finally
                    {
                        base.Start();
                    }
                }
            }
        }
Пример #6
0
        private static void UpdateMaps()
        {
            while (!Globals.ClosingEditor)
            {
                if (Globals.MapsToScreenshot.Count > 0 &&
                    Globals.FetchingMapPreviews == false &&
                    sMyForm.InvokeRequired)
                {
                    if (sProgressForm == null || sProgressForm.IsDisposed || sProgressForm.Visible == false)
                    {
                        sProgressForm = new FrmProgress();

                        sProgressForm.SetTitle(Strings.MapCacheProgress.title);
                        new Task(() => Globals.MainForm.ShowDialogForm(sProgressForm)).Start();
                        while (Globals.MapsToScreenshot.Count > 0)
                        {
                            try
                            {
                                var maps = MapInstance.Lookup.ValueList.ToArray();
                                foreach (MapInstance map in maps)
                                {
                                    if (!sMyForm.Disposing && sProgressForm.IsHandleCreated)
                                    {
                                        sProgressForm.BeginInvoke(
                                            (Action)(() => sProgressForm.SetProgress(
                                                         Strings.MapCacheProgress.remaining.ToString(
                                                             Globals.MapsToScreenshot.Count
                                                             ), -1, false
                                                         ))
                                            );
                                    }

                                    if (map != null)
                                    {
                                        map.Update();
                                    }

                                    Networking.Network.Update();
                                    Application.DoEvents();
                                }
                            }
                            catch (Exception ex)
                            {
                                Logging.Log.Error(
                                    ex, "JC's Solution for UpdateMaps collection was modified bug did not work!"
                                    );
                            }

                            Thread.Sleep(50);
                        }

                        Globals.MapGrid.ResetForm();
                        while (!sProgressForm.IsHandleCreated)
                        {
                            Thread.Sleep(50);
                        }

                        sProgressForm.BeginInvoke(new Action(() => sProgressForm.Close()));
                    }
                }

                Thread.Sleep(100);
            }
        }