public bool LoadTemplate(string reportID, string fileName) { string sql = GetSelectTemplateSql(reportID, fileName); DataSet ds = CliUtils.ExecuteSql("GLModule", "cmdRefValUse", sql, true, CliUtils.fCurrentProject); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count == 1) { DataRow dr = ds.Tables[0].Rows[0]; BinarySerialize serializer = new BinarySerialize(); report.ReportName = dr[SysRptDB.ReportName].ToString(); report.Description = dr[SysRptDB.Description].ToString(); report.FilePath = dr[SysRptDB.FilePath].ToString(); report.OutputMode = (OutputModeType)Enum.Parse(typeof(OutputModeType), dr[SysRptDB.OutputMode].ToString()); string repeater = dr[SysRptDB.HeaderRepeat].ToString(); if (string.IsNullOrEmpty(repeater)) { report.HeaderRepeat = true; } else { report.HeaderRepeat = Boolean.Parse(repeater); } report.HeaderFont = (Font)serializer.DeSerialize((byte[])dr[SysRptDB.HeaderFont]); ReportItemCollection headerItems = (ReportItemCollection)serializer.DeSerialize(((byte[])dr[SysRptDB.HeaderItems])); report.HeaderItems.Clear(); foreach (ReportItem item in headerItems) { report.HeaderItems.Add(item.Copy()); } report.FieldFont = (Font)serializer.DeSerialize((byte[])dr[SysRptDB.FieldFont]); DataSourceItemCollection fieldItems = (DataSourceItemCollection)serializer.DeSerialize(((byte[])dr[SysRptDB.FieldItems])); report.FieldItems.Clear(); foreach (DataSourceItem item in fieldItems) { report.FieldItems.Add(item.Copy()); } report.FooterFont = (Font)serializer.DeSerialize((byte[])dr[SysRptDB.FooterFont]); ReportItemCollection FooterItems = (ReportItemCollection)serializer.DeSerialize(((byte[])dr[SysRptDB.FooterItems])); report.FooterItems.Clear(); foreach (ReportItem item in FooterItems) { report.FooterItems.Add(item.Copy()); } ParameterItemCollection parameters = (ParameterItemCollection)serializer.DeSerialize((byte[])dr[SysRptDB.Parameters]); report.Parameters.Clear(); foreach (ParameterItem item in parameters) { report.Parameters.Add(item.Copy()); } ImageItemCollection images = (ImageItemCollection)serializer.DeSerialize((byte[])dr[SysRptDB.Images]); report.Images.Clear(); foreach (ImageItem item in images) { report.Images.Add(item.Copy()); } ((ReportFormat)serializer.DeSerialize((byte[])dr[SysRptDB.Format])).CopyTo(this.report.Format); ((MailConfig)serializer.DeSerialize((byte[])dr[SysRptDB.MailSetting])).CopyTo(this.report.MailSetting); return true; } else { return false; } }
public ExecutionResult SaveTemplate(string fileName) { #region Variable Definition ExecutionResult execRes = new ExecutionResult(); BinarySerialize serializer = new BinarySerialize(); byte[] buffer = null; Hashtable values = new Hashtable(); #endregion //IDbConnection iDbConn = this.GetConnection(this.report.EEPAlias); try { #region Get serialized values //ReportID if (string.IsNullOrEmpty(this.report.ReportID)) { values.Add(SysRptDB.ReportID, SysRptDB.SysReportID); } else { values.Add(SysRptDB.ReportID, this.report.ReportID); } //FileName //values.Add(Path.GetFileName(report.FilePath)); values.Add(SysRptDB.FileName, fileName); //ReportName values.Add(SysRptDB.ReportName, report.ReportName); //Description values.Add(SysRptDB.Description, report.Description); //FilePath values.Add(SysRptDB.FilePath, report.FilePath); //OutputMode values.Add(SysRptDB.OutputMode, report.OutputMode.ToString()); //HeaderRepeat values.Add(SysRptDB.HeaderRepeat, report.HeaderRepeat.ToString()); //HeaderFont buffer = serializer.Serialize(report.HeaderFont); values.Add(SysRptDB.HeaderFont, buffer); //HeaderItems buffer = serializer.Serialize(report.HeaderItems); values.Add(SysRptDB.HeaderItems, buffer); //FooterFont buffer = serializer.Serialize(report.FooterFont); values.Add(SysRptDB.FooterFont, buffer); //FooterItems buffer = serializer.Serialize(report.FooterItems); values.Add(SysRptDB.FooterItems, buffer); //FieldFont buffer = serializer.Serialize(report.FieldFont); values.Add(SysRptDB.FieldFont, buffer); //FieldItems buffer = serializer.Serialize(report.FieldItems); values.Add(SysRptDB.FieldItems, buffer); ////Setting //buffer = serializer.Serialize(report.Setting); //values.Add(SysRptDB.Setting, buffer); //Format buffer = serializer.Serialize(report.Format); values.Add(SysRptDB.Format, buffer); //Parameters buffer = serializer.Serialize(report.Parameters); values.Add(SysRptDB.Parameters, buffer); //Images buffer = serializer.Serialize(report.Images); values.Add(SysRptDB.Images, buffer); //Mail Setting buffer = serializer.Serialize(report.MailSetting); values.Add(SysRptDB.MailSetting, buffer); #endregion if (this.report.ReportID == null || this.report.ReportID == String.Empty) { execRes = this.ExecuteSql(GetSelectTemplateSql(fileName), ExecuteMode.Select); } else { execRes = this.ExecuteSql(GetSelectTemplateSql(this.report.ReportID, fileName), ExecuteMode.Select); } if (execRes.Status) { if (((DataTable)execRes.Anything).Rows.Count == 0) { execRes = this.ExecuteSql(GetInsertSysRptTableSql(values), ExecuteMode.Insert, values); } else { //if (saveMode == SaveMode.Save) //{ execRes = this.ExecuteSql(GetUpdateSysRptTableSql(values), ExecuteMode.Update, values); //} //else //{ // execRes.Status = false; // execRes.Message = MessageInfo.TemplateExist; //} } } if (execRes.Status) { execRes.Message = MessageInfo.SaveSuccess; } } catch (Exception ex) { execRes.Status = false; execRes.Message = ex.Message; } finally { } return execRes; }
public WebEasilyReport() { headerItems = new ReportItemCollection(this); footerItems = new ReportItemCollection(this); fieldItems = new DataSourceItemCollection(this); dataSource = new WebDataSourceItemCollection(this); mailSetting = new MailConfig(); format = new ReportFormat(); parameters = new ParameterItemCollection(); images = new ImageItemCollection(); dbGateway = new DBGateway(this); serializer = new BinarySerialize(); this.reportID = ComponentInfo.DefaultReportID + DateTime.Now.ToString("yyyyMMdd"); this.reportName = ""; fontConvert = new FontConverter(); Visible = false; if (this.UIType == EasilyReportUIType.AspNet) { render = new AspNetRender(this); } else { render = new ExtJsRender(this); } }