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(); }
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(); } } } }
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(); }
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(); } }
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(); } }