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())
                {
                    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();
                    }
                }
            }
        }
Пример #3
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 (OrdenProduccion Cp in Cps)
                        {
                            Auditoria Auditoria = Auditoria.ConstruirAuditoria(Cp, "Aprobacion");
                            if (Cp.EstadoAprobacion.Equals("APROBADO"))
                            {
                                throw new Exception(String.Format("La cotización 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_Desaprobar_OrdenProduccion";
                            SqlCmd.CommandType = System.Data.CommandType.StoredProcedure;
                            SqlCmd.Parameters.AddWithValue("@ID", Cp.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())
                {
                    FrmProgress Progreso = new FrmProgress();
                    try
                    {
                        Collection Cps = (Collection)m_ObjectFlow;


                        Progreso.Start(Cps.Count, "Cambiando a Terceros 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 TERCEROS");
                            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()
        {
            FrmProgress frmProgreso = new FrmProgress();

            frmProgreso.Start(2, "Exportando ...");
            frmProgreso.Next();
            try
            {
                CReporte            reporte  = null;
                ExportFormatOptions opciones = null;
                ExportFormatType    formato;
                string nombreArchivo = string.Empty;
                string extension     = string.Empty;
                string sql           = string.Empty;
                if (base.m_ObjectFlow is DocumentoGenerico)
                {
                    DocumentoGenerico documento = (DocumentoGenerico)base.m_ObjectFlow;
                    reporte       = documento.TipoDocumento.Reporte;
                    nombreArchivo = string.Format("{0} - Nº {1} {2}", reporte.Nombre, documento.Numeracion, DateTime.Now.ToString("yyyy-MM-dd"));
                    sql           = reporte.SQL;
                    foreach (ParametroReporte Parametro in reporte.ParametrosSQL)
                    {
                        sql = sql.Replace(Parametro.Nombre, documento.ValueByProperty(Parametro.Propiedad).ToString());
                    }
                }
                else if (base.m_ObjectFlow is CReporte)
                {
                    reporte       = (CReporte)base.m_ObjectFlow;
                    nombreArchivo = string.Format("{0} {1}", reporte.Nombre, DateTime.Now.ToString("yyyy-MM-dd"));
                    sql           = reporte.SQL;
                    foreach (ParametroReporte Parametro in reporte.ParametrosSQL)
                    {
                        sql = sql.Replace(Parametro.Nombre, Parametro.Valor);
                    }
                }
                switch (base.m_Parameter)
                {
                case TypeEnum.CEnumExportFormat.PDF:
                    formato   = ExportFormatType.PortableDocFormat;
                    opciones  = new PdfRtfWordFormatOptions();
                    extension = ".pdf";
                    break;

                case TypeEnum.CEnumExportFormat.WORD:
                    formato   = ExportFormatType.WordForWindows;
                    opciones  = new PdfRtfWordFormatOptions();
                    extension = ".doc";
                    break;

                case TypeEnum.CEnumExportFormat.EXCEL:
                    formato   = ExportFormatType.Excel;
                    opciones  = new ExcelFormatOptions();
                    extension = ".xls";
                    break;

                default:
                    throw new Exception("El formato no es válido.");
                }
                if (reporte != null)
                {
                    ReportDocument CryRpt = new ReportDocument();
                    CryRpt.Load(String.Format("{0}{1}", FrmMain.CarpetaReportes, reporte.Ubicacion));
                    frmProgreso.Next();
                    // Si existe una consulta SQL se ejecuta.
                    if (sql.Trim().Length > 0)
                    {
                        CryRpt.SetDataSource(HelperNHibernate.GetDataSet(sql));
                    }
                    // Se reemplazan los parámetros Crystal.
                    foreach (ParametroReporte Parametro in reporte.ParametrosCrystal)
                    {
                        CryRpt.SetParameterValue(Parametro.Nombre, Parametro.Valor);
                    }
                    // Se exporta el reporte.
                    ExportOptions CrExportOptions;
                    DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions();
                    CrDiskFileDestinationOptions.DiskFileName = string.Format("{0}{1}{2}", FrmMain.CarpetaExportacion, nombreArchivo, extension);
                    CrExportOptions = CryRpt.ExportOptions;
                    {
                        CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
                        CrExportOptions.ExportFormatType      = formato;
                        CrExportOptions.DestinationOptions    = CrDiskFileDestinationOptions;
                        CrExportOptions.FormatOptions         = opciones;
                    }
                    // Se exporta el archivo.
                    CryRpt.Export();
                    // Se inicia un proceso para abrir el archivo.
                    Process.Start(CrDiskFileDestinationOptions.DiskFileName);
                }
                else
                {
                    throw new Exception("Entidad no válida.");
                }
                base.m_ResultProcess = EnumResult.SUCESS;
            }
            catch (Exception ex)
            {
                SoftException.Control(ex);
            }
            finally
            {
                frmProgreso.Close();
                base.Start();
            }
        }
Пример #6
0
 public override void Start()
 {
     FrmProgress frmProgreso = new FrmProgress();
     frmProgreso.Start(2, "Exportando ...");
     frmProgreso.Next();
     try
     {
         CReporte reporte = null;
         ExportFormatOptions opciones = null;
         ExportFormatType formato;
         string nombreArchivo = string.Empty;
         string extension = string.Empty;
         string sql = string.Empty;
         if (base.m_ObjectFlow is DocumentoGenerico)
         {
             DocumentoGenerico documento = (DocumentoGenerico)base.m_ObjectFlow;
             reporte = documento.TipoDocumento.Reporte;
             nombreArchivo = string.Format("{0} - Nº {1} {2}", reporte.Nombre, documento.Numeracion, DateTime.Now.ToString("yyyy-MM-dd"));
             sql = reporte.SQL;
             foreach (ParametroReporte Parametro in reporte.ParametrosSQL)
                 sql = sql.Replace(Parametro.Nombre, documento.ValueByProperty(Parametro.Propiedad).ToString());
         }
         else if (base.m_ObjectFlow is CReporte)
         {
             reporte = (CReporte)base.m_ObjectFlow;
             nombreArchivo = string.Format("{0} {1}", reporte.Nombre, DateTime.Now.ToString("yyyy-MM-dd"));
             sql = reporte.SQL;
             foreach (ParametroReporte Parametro in reporte.ParametrosSQL)
                 sql = sql.Replace(Parametro.Nombre, Parametro.Valor);
         }
         switch (base.m_Parameter)
         {
             case TypeEnum.CEnumExportFormat.PDF:
                 formato = ExportFormatType.PortableDocFormat;
                 opciones = new PdfRtfWordFormatOptions();
                 extension = ".pdf";
                 break;
             case TypeEnum.CEnumExportFormat.WORD:
                 formato = ExportFormatType.WordForWindows;
                 opciones = new PdfRtfWordFormatOptions();
                 extension = ".doc";
                 break;
             case TypeEnum.CEnumExportFormat.EXCEL:
                 formato = ExportFormatType.Excel;
                 opciones = new ExcelFormatOptions();
                 extension = ".xls";
                 break;
             default:
                 throw new Exception("El formato no es válido.");
         }
         if (reporte != null)
         {
             
             ReportDocument CryRpt = new ReportDocument();
             CryRpt.Load(String.Format("{0}{1}", FrmMain.CarpetaReportes, reporte.Ubicacion));
             frmProgreso.Next();
             // Si existe una consulta SQL se ejecuta.
             if (sql.Trim().Length > 0) { CryRpt.SetDataSource(HelperNHibernate.GetDataSet(sql)); }
             // Se reemplazan los parámetros Crystal.
             foreach (ParametroReporte Parametro in reporte.ParametrosCrystal)
                 CryRpt.SetParameterValue(Parametro.Nombre, Parametro.Valor);
             // Se exporta el reporte.
             ExportOptions CrExportOptions;
             DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions();
             CrDiskFileDestinationOptions.DiskFileName = string.Format("{0}{1}{2}", FrmMain.CarpetaExportacion, nombreArchivo, extension);
             CrExportOptions = CryRpt.ExportOptions;
             {
                 CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
                 CrExportOptions.ExportFormatType = formato;
                 CrExportOptions.DestinationOptions = CrDiskFileDestinationOptions;
                 CrExportOptions.FormatOptions = opciones;
             }
             // Se exporta el archivo.
             CryRpt.Export();
             // Se inicia un proceso para abrir el archivo.
             Process.Start(CrDiskFileDestinationOptions.DiskFileName);
         }
         else
             throw new Exception("Entidad no válida.");
         base.m_ResultProcess = EnumResult.SUCESS;
     }
     catch (Exception ex)
     {
         SoftException.Control(ex);
     }
     finally
     {
         frmProgreso.Close();
         base.Start();
     }
 }