public override void Start() { try { object documento = (object)base.m_ObjectFlow; if (!(documento.GetType().GetProperty("TipoDocumento") == null)) { TipoDocumento tipoDocumento = (TipoDocumento)documento.GetType().GetProperty("TipoDocumento").GetValue(documento, null); EReporte reporte = tipoDocumento.Reporte; String sql = reporte.SQL; foreach (ParametroReporte parametro in reporte.ParametrosSQL) { sql = sql.Replace(parametro.Nombre, documento.GetType().GetProperty(parametro.Propiedad).GetValue(documento, null).ToString());//.ValueByProperty(parametro.Propiedad).ToString()); } ReportDocument reportDocument = new ReportDocument(); reportDocument.Load(String.Format("{0}{1}", FrmMain.CarpetaReportes, reporte.Ubicacion)); reportDocument.SetDataSource(HelperNHibernate.GetDataSet(sql)); foreach (ParametroReporte parametro in reporte.ParametrosCrystal) { reportDocument.SetParameterValue(parametro.Nombre, parametro.Valor); } FrmMain.MostrarReporte(reporte.Nombre, reportDocument); } else { throw new Exception("No se ha seleccionado ningún Documento ..."); } base.m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { MessageBox.Show(ex.Source); MessageBox.Show(ex.InnerException.Message); } base.Start(); }
public override void Start() { try { if (string.IsNullOrEmpty(base.m_Parameter)) { if (base.m_ObjectFlow is CReporte) { CReporte Reporte = (CReporte)base.m_ObjectFlow; String SQL = Reporte.SQL; ReportDocument ReportDocument = new ReportDocument(); ReportDocument.Load(String.Format("{0}{1}", FrmMain.CarpetaReportes, Reporte.Ubicacion)); foreach (ParametroReporte Parametro in Reporte.ParametrosSQL) { SQL = SQL.Replace(Parametro.Nombre, Parametro.Valor); } if (SQL.Trim().Length > 0) { ReportDocument.SetDataSource(HelperNHibernate.GetDataSet(SQL)); } foreach (ParametroReporte Parametro in Reporte.ParametrosCrystal) { ReportDocument.SetParameterValue(Parametro.Nombre, Parametro.Valor); } FrmMain.MostrarReporte(Reporte.Nombre, ReportDocument); } else { throw new Exception("No se ha seleccionado ningún Reporte ..."); } } else { CReporte reporte = ObtenerReporte(); String sql = reporte.SQL; foreach (ParametroReporte parametro in reporte.ParametrosSQL) { sql = sql.Replace(parametro.Nombre, base.m_ObjectFlow.GetType().GetProperty(parametro.Propiedad).GetValue(base.m_ObjectFlow, null).ToString());//.ValueByProperty(parametro.Propiedad).ToString()); } ReportDocument reportDocument = new ReportDocument(); reportDocument.Load(String.Format("{0}{1}", FrmMain.CarpetaReportes, reporte.Ubicacion)); reportDocument.SetDataSource(HelperNHibernate.GetDataSet(sql)); foreach (ParametroReporte parametro in reporte.ParametrosCrystal) { reportDocument.SetParameterValue(parametro.Nombre, parametro.Valor); } FrmMain.MostrarReporte(reporte.Nombre, reportDocument); } base.m_ResultProcess = EnumResult.SUCESS; } catch (Exception ex) { MessageBox.Show(ex.Source); MessageBox.Show(ex.InnerException.Message); } }