| | |
| | | using FastReport; |
| | | using FastReport.Design.StandardDesigner; |
| | | using Gs.DevApp.Entity; |
| | | using Gs.DevApp.ToolBox; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Linq; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System; |
| | | using System.Data; |
| | | using System.IO; |
| | | using System.Windows.Forms; |
| | | using DevExpress.XtraEditors; |
| | | using FastReport; |
| | | using FastReport.Design; |
| | | using Gs.DevApp.ToolBox; |
| | | using Newtonsoft.Json; |
| | | |
| | | namespace Gs.DevApp.DevFrm.Sys |
| | | { |
| | | public partial class EasyRptDesign : DevExpress.XtraEditors.XtraForm |
| | | public partial class EasyRptDesign : XtraForm |
| | | { |
| | | private string _rptParameter; |
| | | public EasyRptDesign(string rptParameter) |
| | | private readonly string _rptParameter; |
| | | private readonly string _rptGuid; |
| | | public EasyRptDesign(string strGuid, string rptParameter) |
| | | { |
| | | _rptGuid = strGuid; |
| | | _rptParameter = rptParameter; |
| | | InitializeComponent(); |
| | | this.Text = (_rptParameter + "报表设计:设计时请参考字段说明,建议z开头为主表,m开头为明细表"); |
| | | Report report = new Report(); |
| | | DataTable RptRow = new DataTable(); |
| | | Text = _rptParameter + "报表设计:设计时请参考字段说明,建议z开头为主表,m开头为明细表"; |
| | | var report = new Report(); |
| | | var RptRow = new DataTable(); |
| | | var _obj = new |
| | | { |
| | | rptParameter = _rptParameter, |
| | | guid = _rptGuid, |
| | | isDesign = 1 |
| | | }; |
| | | try |
| | | { |
| | | string strJson = UtilityHelper.HttpPost("", "Report/GetTemplate", JsonConvert.SerializeObject(_obj)); |
| | | ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson); |
| | | var strJson = UtilityHelper.HttpPost("", "Report/GetRptData", |
| | | JsonConvert.SerializeObject(_obj)); |
| | | var _rtn = UtilityHelper.ReturnToDynamic(strJson); |
| | | if (_rtn.rtnCode > 0) |
| | | { |
| | | dynamic dy = _rtn.rtnData; |
| | | if (dy.reportData.ToString().Length > 0) |
| | | var dy = _rtn.rtnData; |
| | | if (dy.reportTemplateData.ToString().Length > 0) |
| | | { |
| | | byte[] buffer = (byte[])dy.reportData; |
| | | using (MemoryStream Stream = new MemoryStream(buffer)) |
| | | var buffer = (byte[])dy.reportTemplateData; |
| | | using (var Stream = new MemoryStream(buffer)) |
| | | { |
| | | report.Load(Stream); |
| | | } |
| | | var d = dy.reportCol; |
| | | foreach (var a in d) |
| | | { |
| | | listBox1.Items.Add(a); |
| | | } |
| | | foreach (var a in d) listBox1.Items.Add(a); |
| | | } |
| | | } |
| | | else |
| | | ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg); |
| | | { |
| | | MsgHelper.Warning("提示:" + _rtn.rtnMsg); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | ToolBox.MsgHelper.Warning("提示:" + ex.Message); |
| | | MsgHelper.Warning("提示:" + ex.Message); |
| | | } |
| | | |
| | | designerControl1.Report = report; |
| | | designerControl1.RefreshLayout(); |
| | | sidePanel2.Controls.Add(designerControl1); |
| | | designerControl1.Dock = DockStyle.Fill; |
| | | designerControl1.UIStateChanged += designerControl1_UIStateChanged; |
| | | environmentSettings1.CustomSaveReport += EnvironmentSettings1_CustomSaveReport; |
| | | environmentSettings1.CustomSaveDialog += EnvironmentSettings1_CustomSaveDialog; |
| | | environmentSettings1.CustomSaveReport += |
| | | EnvironmentSettings1_CustomSaveReport; |
| | | environmentSettings1.CustomSaveDialog += |
| | | EnvironmentSettings1_CustomSaveDialog; |
| | | } |
| | | private void EnvironmentSettings1_CustomSaveDialog(object sender, FastReport.Design.OpenSaveDialogEventArgs e) |
| | | { |
| | | |
| | | } |
| | | private void EnvironmentSettings1_CustomSaveReport(object sender, FastReport.Design.OpenSaveReportEventArgs e) |
| | | private void EnvironmentSettings1_CustomSaveDialog(object sender, |
| | | OpenSaveDialogEventArgs e) |
| | | { |
| | | using (MemoryStream ms = new MemoryStream()) |
| | | } |
| | | |
| | | private void EnvironmentSettings1_CustomSaveReport(object sender, |
| | | OpenSaveReportEventArgs e) |
| | | { |
| | | using (var ms = new MemoryStream()) |
| | | { |
| | | e.Report.Save(ms); |
| | | byte[] dddd = ms.ToArray(); |
| | | var dddd = ms.ToArray(); |
| | | var _obj = new |
| | | { |
| | | rptParameter = _rptParameter, |
| | | rptData = dddd, |
| | | rptData = dddd |
| | | }; |
| | | try |
| | | { |
| | | string strJson = UtilityHelper.HttpPost("", "Report/EdtTemplate", JsonConvert.SerializeObject(_obj)); |
| | | ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson); |
| | | ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnData.outMsg); |
| | | var strJson = UtilityHelper.HttpPost("", |
| | | "Report/EdtTemplate", |
| | | JsonConvert.SerializeObject(_obj)); |
| | | var _rtn = UtilityHelper.ReturnToDynamic(strJson); |
| | | MsgHelper.Warning("提示:" + _rtn.rtnData.outMsg); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | ToolBox.MsgHelper.Warning("提示:" + ex.Message); |
| | | MsgHelper.Warning("提示:" + ex.Message); |
| | | } |
| | | // designerControl1.Report.Dispose(); |
| | | } |
| | | } |
| | | |
| | | // 设计器ui改变事件 |
| | | private void designerControl1_UIStateChanged(object sender, EventArgs e) |
| | | { |