OTS_DEVReport.cs 68 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230
  1. using DevExpress.XtraCharts;
  2. using DevExpress.XtraPrinting.Drawing;
  3. using DevExpress.XtraReports.UI;
  4. using OTSIncAReportApp.OTSTemplateDesigner;
  5. using OTSIncAReportGrids;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Data;
  9. using System.Drawing;
  10. using static OTSIncAReportApp.OTSReport_Export;
  11. namespace OTSIncAReportApp._1_UI.OTSTemplateDesigner
  12. {
  13. public partial class OTS_DEVReport : DevExpress.XtraReports.UI.XtraReport
  14. {
  15. public OTSReport_Export m_otsreport_export;
  16. //string typeface = "Arial Unicode MS";
  17. string typeface = "微软雅黑";
  18. string dataFont = "Arial Unicode MS";
  19. List<string> TemplateList;
  20. Export_ReportTemplate export_ReportTemplate;
  21. //SizeF syx_Size = new SizeF(668f, 660.54f);
  22. SizeF syx_Size = new SizeF(668f, 616.67f);
  23. float LowPlace = 3120f;
  24. ElementSubscript subscript=new ElementSubscript();
  25. public OTS_DEVReport(OTSReport_Export in_export)
  26. {
  27. m_otsreport_export = in_export;
  28. ElementSubscript subscript = new ElementSubscript();
  29. export_ReportTemplate = new Export_ReportTemplate(m_otsreport_export);
  30. TemplateList = new List<string>();
  31. //加载三元相图各项
  32. string pathtpf = in_export.m_ReportApp.m_rstDataMgr.m_RptConfigFile.TrigTemplateFileFolder + "\\" + in_export.m_ReportApp.m_rstDataMgr.m_RptConfigFile.TriTempFile;
  33. DataSet ds = DataOperation.DataAccess.XMLoperate.GetXmlData(pathtpf, "XMLData");
  34. DataTable dt = ds.Tables["Member"];
  35. foreach (DataRow item in dt.Rows)
  36. {
  37. if (item["TemplateName"].ToString() != "")
  38. {
  39. TemplateList.Add(item["TemplateName"].ToString());
  40. }
  41. }
  42. InitializeComponent();
  43. }
  44. #region 接口
  45. /// <summary>
  46. /// 国际化显示
  47. /// </summary>
  48. /// <param name="languageData"></param>
  49. public void International_language(DataTable languageData)
  50. {
  51. setXRLabelData(dev_ypbh_up, GetlanguageData(dev_ypbh_up.Name.ToString(), languageData));//样品编号(中间的)
  52. setXRLabelData(dev_bgsj_up, GetlanguageData(dev_bgsj_up.Name.ToString(), languageData));//报告时间(中间的)
  53. setXRLabelData(dev_jcjgwj_up, GetlanguageData(dev_jcjgwj_up.Name.ToString(), languageData));//检测结果文件(中间的)
  54. setXRLabelData(dev_ckbz_up, GetlanguageData(dev_ckbz_up.Name.ToString(), languageData));//参考标准(中间的)
  55. setXRLabelData(dev_ypsm, GetlanguageData(dev_ypsm.Name.ToString(), languageData));//表中样品说明
  56. setXRLabelData(dev_jcjgwj, GetlanguageData(dev_jcjgwj.Name.ToString(), languageData));//表中测量结果名称
  57. setXRLabelData(dev_cljggk, GetlanguageData(dev_cljggk.Name.ToString(), languageData));//表中测量结果概况
  58. setXRLabelData(dev_yxsj, GetlanguageData(dev_yxsj.Name.ToString(), languageData));//表中运行时间
  59. setXRLabelData(dev_sczs, GetlanguageData(dev_sczs.Name.ToString(), languageData));//表中视场总数
  60. setXRLabelData(dev_flfa, GetlanguageData(dev_flfa.Name.ToString(), languageData));//表中分类方案
  61. setXRLabelData(dev_ckbz, GetlanguageData(dev_ckbz.Name.ToString(), languageData));//表中参考标准
  62. setXRLabelData(dev_yjctz, GetlanguageData(dev_yjctz.Name.ToString(), languageData));//表中已检测特征
  63. setXRLabelData(dev_scmj, GetlanguageData(dev_scmj.Name.ToString(), languageData));//表中视场面积
  64. setXRLabelData(dev_bgsj, GetlanguageData(dev_bgsj.Name.ToString(), languageData));//表中报告时间
  65. setXRLabelData(dev_fdbs, GetlanguageData(dev_fdbs.Name.ToString(), languageData));//表中放大倍数
  66. //颗粒列表图
  67. setXRLabelData(xrLabel_size_IconQuestion_Class, GetlanguageData(xrLabel_size_IconQuestion_Class.Name.ToString(), languageData));//大类图表头
  68. setXRLabelData(xrLabel_size_IconQuestion_Subdivision, GetlanguageData(xrLabel_size_IconQuestion_Subdivision.Name.ToString(), languageData));//细分类表头
  69. //元素分析表
  70. setXRLabelData(xrCellElementArea, GetlanguageData(xrCellElementArea.Name.ToString(), languageData));//元素分析表表头
  71. setXRLabelData(xrCellElementArea_details, GetlanguageData(xrCellElementArea_details.Name.ToString(), languageData));//详情
  72. setXRLabelData(xrCell_Element_classify, GetlanguageData(xrCell_Element_classify.Name.ToString(), languageData));//分类
  73. setXRLabelData(xrCell_Element_subdivision, GetlanguageData(xrCell_Element_subdivision.Name.ToString(), languageData));//细分
  74. setXRLabelData(xrCell_Element_Area, GetlanguageData(xrCell_Element_Area.Name.ToString(), languageData));//面积
  75. //夹杂物面积比
  76. setXRLabelData(xrCellAreaOfInclusion, GetlanguageData(xrCellAreaOfInclusion.Name.ToString(), languageData));//夹杂物面积比表表头
  77. setXRLabelData(xrCell_inclusion_classify, GetlanguageData(xrCell_inclusion_classify.Name.ToString(), languageData));//分类
  78. setXRLabelData(xrCell_inclusion_subdivision, GetlanguageData(xrCell_inclusion_subdivision.Name.ToString(), languageData));//细分类
  79. setXRLabelData(xrCell_inclusion_Area, GetlanguageData(xrCell_inclusion_Area.Name.ToString(), languageData));//面积(μm^2)
  80. setXRLabelData(xrCell_inclusion_percentageOfIncA, GetlanguageData(xrCell_inclusion_percentageOfIncA.Name.ToString(), languageData));//夹杂物比(%)
  81. setXRLabelData(xrCell_inclusion_FieldRatio, GetlanguageData(xrCell_inclusion_FieldRatio.Name.ToString(), languageData));//视场占比(%)
  82. //夹杂物面积比图
  83. setXRLabelData(xrLabel_inca_pic_class, GetlanguageData(xrLabel_inca_pic_class.Name.ToString(), languageData));//夹杂物面积比图
  84. setXRLabelData(xrLabel_inca_pic_subdivision, GetlanguageData(xrLabel_inca_pic_subdivision.Name.ToString(), languageData));//夹杂物面积比细分图
  85. setXRLabelData(dev_DimensionTable, GetlanguageData(dev_DimensionTable.Name.ToString(), languageData));//颗粒尺寸分析结果
  86. setXRLabelData(dev_DimensionTable_2, GetlanguageData(dev_DimensionTable_2.Name.ToString(), languageData));//尺寸计算基于:
  87. }
  88. /// <summary>
  89. /// 首页部分数据插入
  90. /// </summary>
  91. /// <param name="m_mbszclass"></param>
  92. public void setResultGrid(c_TemplateClass m_mbszclass)
  93. {
  94. #region 从Grid表中读取样品数据
  95. //------------------加载模块,获取数据-------------------------------------------------
  96. ResultGrid ls_resultgrid = new ResultGrid(m_otsreport_export.m_ReportApp);
  97. Dictionary<string, string> keyValues_ResultGrid = ls_resultgrid.GetData_ResultGrid_Report();
  98. //------------------加载模块,获取数据结束----------------------------------------------
  99. Dictionary<string, string>.Enumerator en = keyValues_ResultGrid.GetEnumerator();
  100. keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col1"].ToString(), out string str_CLJGMC);//测量结果名称
  101. keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col4"].ToString(), out string str_YXSJ);//运行时间
  102. keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col5"].ToString(), out string str_SCZS);//视场总数
  103. keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col6"].ToString(), out string str_FLFA);//分类方案
  104. keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col7"].ToString(), out string str_YJCTZ);//已检测特征
  105. keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col8"].ToString(), out string str_SCMJ);//视场面积
  106. keyValues_ResultGrid.TryGetValue("Magnification", out string Magnification);//放大倍数
  107. #endregion
  108. #region 加载Grid表数据
  109. setTableCellData(dev_jcjgwj_text, str_CLJGMC);//测量结果名称
  110. setTableCellData(dev_yxsj_text, str_YXSJ);//运行时间
  111. setTableCellData(dev_sczs_text, str_SCZS);//视场总数
  112. setTableCellData(dev_flfa_text, str_FLFA);//分类方案
  113. setTableCellData(dev_yjctz_text, str_YJCTZ);//已检测特征
  114. setTableCellData(dev_scmj_text, str_SCMJ);//视场面积
  115. setTableCellData(dev_fdbs_text, Magnification);//放大倍数
  116. setTableCellData(dev_bgsj_text, DateTime.Now.ToShortDateString().ToString());//报告时间:
  117. setTableCellData(dev_ckbz_text, m_mbszclass.M_SY.str_tb_CKBZ.ToString());//参考标准
  118. #endregion
  119. #region 加载模板设置文档数据
  120. setXRLabelData(dev_ym, m_mbszclass.M_YMYJ.str_tb_ymwb.ToString());//页眉
  121. setXRLabelData(dev_yj, m_mbszclass.M_YMYJ.str_tb_yjwb.ToString());//页脚
  122. setXRLabelData(dev_zbt, m_mbszclass.M_SY.str_tb_ZBT.ToString());//主标题
  123. setXRLabelData(dev_fbt, m_mbszclass.M_SY.str_tb_FBT.ToString());//副标题
  124. setXRLabelData(dev_ypbh_text_up, m_mbszclass.M_SY.str_tb_YPBH.ToString());//样品编号
  125. setXRLabelData(dev_bgsj_text_up, DateTime.Now.ToShortDateString().ToString());//当前日期
  126. setXRLabelData(dev_jcjgwj_text_up, str_CLJGMC);//测量结果名称
  127. setXRLabelData(dev_ckbz_text_up, m_mbszclass.M_SY.str_tb_CKBZ.ToString());//参考标准
  128. #endregion
  129. }
  130. /// <summary>
  131. /// 颗粒尺寸分析表
  132. /// </summary>
  133. /// <param name="m_mbszclass"></param>
  134. public void setParticleSizeTable(c_TemplateClass m_mbszclass)
  135. {
  136. //ElementSubscript subscript = new ElementSubscript();
  137. // Export_ReportTemplate export_ReportTemplate = new Export_ReportTemplate(m_otsreport_export);
  138. export_ReportTemplate.ParticleSizeTable(m_mbszclass, out DataTable surface_dt, out DataTable ls_partsize_dt, out DataTable class_dt, out DataTable subdivde_dt);
  139. for (int i=0;i< class_dt.Rows.Count;i++)
  140. {
  141. class_dt.Rows[i]["Class"] = subscript.Getsubscriptstring(class_dt.Rows[i]["Class"].ToString());
  142. }
  143. for (int i=0;i< subdivde_dt.Rows.Count;i++)
  144. {
  145. subdivde_dt.Rows[i]["Name"] = subscript.Getsubscriptstring(subdivde_dt.Rows[i]["Name"].ToString());
  146. subdivde_dt.Rows[i]["Class"] = subscript.Getsubscriptstring(subdivde_dt.Rows[i]["Class"].ToString());
  147. }
  148. #region 插入数据
  149. xrTa_ParticleSizeTable.Visible = true;
  150. xrChart_ParticelSizeCalss.Visible = true;
  151. xrChart_ParticelSizeSubdivision.Visible = true;
  152. xrLabel_size_IconQuestion_Class.Visible = true;
  153. xrLabel_size_IconQuestion_Subdivision.Visible = true;
  154. List<List<ParticleSizeDEVData>> list_ParticelSizeData = new List<List<ParticleSizeDEVData>>();
  155. for (int i = 0; i < surface_dt.Rows.Count; i++)
  156. {
  157. list_ParticelSizeData.Add(switch_ParticleSize(subscript.Getsubscriptstring(surface_dt.Rows[i]["Class"].ToString()) , subscript.Getsubscriptstring(surface_dt.Rows[i]["Name"].ToString()), surface_dt.Rows[i]["total"].ToString(), surface_dt.Rows[i]["c1"].ToString(), surface_dt.Rows[i]["c2"].ToString(), surface_dt.Rows[i]["c3"].ToString(),
  158. surface_dt.Rows[i]["c4"].ToString(), surface_dt.Rows[i]["c5"].ToString(), surface_dt.Rows[i]["c6"].ToString(), surface_dt.Rows[i]["c7"].ToString()));
  159. }
  160. dev_size_1.Text = ls_partsize_dt.Rows[0]["c1"].ToString();
  161. dev_size_2.Text = ls_partsize_dt.Rows[0]["c2"].ToString();
  162. dev_size_3.Text = ls_partsize_dt.Rows[0]["c3"].ToString();
  163. dev_size_4.Text = ls_partsize_dt.Rows[0]["c4"].ToString();
  164. dev_size_5.Text = ls_partsize_dt.Rows[0]["c5"].ToString();
  165. dev_size_6.Text = ls_partsize_dt.Rows[0]["c6"].ToString();
  166. dev_size_7.Text = ls_partsize_dt.Rows[0]["c7"].ToString();
  167. dev_DimensionTable_2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
  168. dev_DimensionTable_2.Text = dev_DimensionTable_2.Text.ToString() + m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs.ToString();
  169. dev_DimensionTable_2.Font = new Font(typeface, dev_DimensionTable_2.Font.Size);
  170. for (int i = 0; i < surface_dt.Rows.Count; i++)
  171. {
  172. XRTableRow row = new XRTableRow();
  173. XRTableCell tCell_Class = new XRTableCell();
  174. XRTableCell tCell_Name = new XRTableCell();
  175. XRTableCell tCell_total = new XRTableCell();
  176. XRTableCell tCell_size_1 = new XRTableCell();
  177. XRTableCell tCell_size_2 = new XRTableCell();
  178. XRTableCell tCell_size_3 = new XRTableCell();
  179. XRTableCell tCell_size_4 = new XRTableCell();
  180. XRTableCell tCell_size_5 = new XRTableCell();
  181. XRTableCell tCell_size_6 = new XRTableCell();
  182. XRTableCell tCell_size_7 = new XRTableCell();
  183. XRTableCellData(row, tCell_Class, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_Class");
  184. XRTableCellData(row, tCell_Name, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_Name");
  185. XRTableCellData(row, tCell_total, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_total");
  186. XRTableCellData(row, tCell_size_1, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_1");
  187. XRTableCellData(row, tCell_size_2, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_2");
  188. XRTableCellData(row, tCell_size_3, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_3");
  189. XRTableCellData(row, tCell_size_4, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_4");
  190. XRTableCellData(row, tCell_size_5, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_5");
  191. XRTableCellData(row, tCell_size_6, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_6");
  192. XRTableCellData(row, tCell_size_7, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ParticelSizeData[i], "size_7");
  193. xrTa_ParticleSizeTable.Rows.Add(row);
  194. }
  195. #region 大分类chart图
  196. // 实例化饼图对象
  197. Series pieSeriesClass = new Series("颗粒尺寸大分类", ViewType.Pie);
  198. pieSeriesClass.ArgumentScaleType = ScaleType.Qualitative;
  199. // 项目名称
  200. pieSeriesClass.ArgumentDataMember = "Class";
  201. pieSeriesClass.ValueScaleType = ScaleType.Numerical;
  202. //取值字段
  203. pieSeriesClass.ValueDataMembers.AddRange(new string[] { "total" });
  204. (pieSeriesClass.Label as PieSeriesLabel).Position = PieSeriesLabelPosition.Inside;
  205. //显示百分比
  206. pieSeriesClass.PointOptions.PointView = PointView.ArgumentAndValues;
  207. pieSeriesClass.PointOptions.ValueNumericOptions.Format = NumericFormat.Percent;
  208. //设置数据源
  209. pieSeriesClass.DataSource = class_dt;
  210. pieSeriesClass.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False;
  211. // 饼图空间添加 新建的饼图对象
  212. xrChart_ParticelSizeCalss.Series.Add(pieSeriesClass);
  213. //右上角分组视图
  214. this.xrChart_ParticelSizeCalss.Legend.MarkerSize = new System.Drawing.Size(20, 20);
  215. this.xrChart_ParticelSizeCalss.Legend.TextOffset = 5;
  216. this.xrChart_ParticelSizeCalss.Legend.VerticalIndent = 5;
  217. this.xrChart_ParticelSizeCalss.Legend.Border.Color = Color.Red;//红色边框
  218. #endregion
  219. #region 细分chart图
  220. // 实例化饼图对象
  221. Series pieSeries = new Series("颗粒尺寸细化分类", ViewType.Pie);
  222. pieSeries.ArgumentScaleType = ScaleType.Qualitative;
  223. // 项目名称
  224. pieSeries.ArgumentDataMember = "Name";
  225. pieSeries.ValueScaleType = ScaleType.Numerical;
  226. //取值字段
  227. pieSeries.ValueDataMembers.AddRange(new string[] { "total" });
  228. (pieSeries.Label as PieSeriesLabel).Position = PieSeriesLabelPosition.Inside;
  229. //显示百分比
  230. pieSeries.PointOptions.PointView = PointView.ArgumentAndValues;
  231. pieSeries.PointOptions.ValueNumericOptions.Format = NumericFormat.Percent;
  232. //设置数据源
  233. pieSeries.DataSource = subdivde_dt;
  234. pieSeries.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False;
  235. // 饼图空间添加 新建的饼图对象
  236. xrChart_ParticelSizeSubdivision.Series.Add(pieSeries);
  237. //右上角分组视图
  238. this.xrChart_ParticelSizeSubdivision.Legend.MarkerSize = new System.Drawing.Size(20, 20);
  239. this.xrChart_ParticelSizeSubdivision.Legend.TextOffset = 5;
  240. this.xrChart_ParticelSizeSubdivision.Legend.VerticalIndent = 5;
  241. this.xrChart_ParticelSizeSubdivision.Legend.Border.Color = Color.Red;//红色边框
  242. #endregion
  243. #endregion
  244. }
  245. /// <summary>
  246. /// 设置插入元素分析表数据
  247. /// </summary>
  248. /// <param name="m_mbszclass"></param>
  249. public void setElementAvgGrid(c_TemplateClass m_mbszclass)
  250. {
  251. xrTb_ElementAnalysisTable.Visible = true;
  252. export_ReportTemplate.InsertReportTemplateTable_ElementAvgGrid(m_mbszclass, out DataTable dt1, out DataTable dt2);
  253. setXRLabelData(xrCell_Element_s1, dt1.Rows[0][2].ToString());
  254. setXRLabelData(xrCell_Element_s2, dt1.Rows[0][3].ToString());
  255. setXRLabelData(xrCell_Element_s3, dt1.Rows[0][4].ToString());
  256. setXRLabelData(xrCell_Element_s4, dt1.Rows[0][5].ToString());
  257. setXRLabelData(xrCell_Element_s5, dt1.Rows[0][6].ToString());
  258. setXRLabelData(xrCell_Element_s6, dt1.Rows[0][7].ToString());
  259. setXRLabelData(xrCell_Element_s7, dt1.Rows[0][8].ToString());
  260. setXRLabelData(xrCell_Element_s8, dt1.Rows[0][9].ToString());
  261. setXRLabelData(xrCell_Element_s9, dt1.Rows[0][10].ToString());
  262. setXRLabelData(xrCell_Element_s10, dt1.Rows[0][11].ToString());
  263. List<List<ElementalAnalysisDEVData>> list_ElementalAnalysisData = new List<List<ElementalAnalysisDEVData>>();
  264. //ElementSubscript subscript = new ElementSubscript();
  265. for (int i = 0; i < dt2.Rows.Count; i++)
  266. {
  267. list_ElementalAnalysisData.Add(set_ElementalAnalysis(subscript.Getsubscriptstring(dt2.Rows[i]["Class"].ToString()) , subscript.Getsubscriptstring(dt2.Rows[i]["Name"].ToString()), dt2.Rows[i]["Area"].ToString(),
  268. dt2.Rows[i][2].ToString(), dt2.Rows[i][3].ToString(), dt2.Rows[i][4].ToString(), dt2.Rows[i][5].ToString(), dt2.Rows[i][6].ToString(),
  269. dt2.Rows[i][7].ToString(), dt2.Rows[i][8].ToString(), dt2.Rows[i][9].ToString(), dt2.Rows[i][10].ToString(), dt2.Rows[i][11].ToString()));
  270. }
  271. for (int i = 0; i < dt2.Rows.Count; i++)
  272. {
  273. XRTableRow row = new XRTableRow();
  274. XRTableCell tCell_classify = new XRTableCell();
  275. XRTableCell tCell_subdivision = new XRTableCell();
  276. XRTableCell tCell_area = new XRTableCell();
  277. XRTableCell tCell_s1 = new XRTableCell();
  278. XRTableCell tCell_s2 = new XRTableCell();
  279. XRTableCell tCell_s3 = new XRTableCell();
  280. XRTableCell tCell_s4 = new XRTableCell();
  281. XRTableCell tCell_s5 = new XRTableCell();
  282. XRTableCell tCell_s6 = new XRTableCell();
  283. XRTableCell tCell_s7 = new XRTableCell();
  284. XRTableCell tCell_s8 = new XRTableCell();
  285. XRTableCell tCell_s9 = new XRTableCell();
  286. XRTableCell tCell_s10 = new XRTableCell();
  287. XRTableCellData_ElementAnalysis(row, tCell_classify, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "classify");
  288. XRTableCellData_ElementAnalysis(row, tCell_subdivision, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "subdivision");
  289. XRTableCellData_ElementAnalysis(row, tCell_area, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "Area");
  290. XRTableCellData_ElementAnalysis(row, tCell_s1, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s1");
  291. XRTableCellData_ElementAnalysis(row, tCell_s2, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s2");
  292. XRTableCellData_ElementAnalysis(row, tCell_s3, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s3");
  293. XRTableCellData_ElementAnalysis(row, tCell_s4, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s4");
  294. XRTableCellData_ElementAnalysis(row, tCell_s5, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s5");
  295. XRTableCellData_ElementAnalysis(row, tCell_s6, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s6");
  296. XRTableCellData_ElementAnalysis(row, tCell_s7, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s7");
  297. XRTableCellData_ElementAnalysis(row, tCell_s8, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s8");
  298. XRTableCellData_ElementAnalysis(row, tCell_s9, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s9");
  299. XRTableCellData_ElementAnalysis(row, tCell_s10, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_ElementalAnalysisData[i], "s10");
  300. xrTb_ElementAnalysisTable.Rows.Add(row);
  301. }
  302. }
  303. /// <summary>
  304. /// 设置插入夹杂物面积比表数据
  305. /// </summary>
  306. /// <param name="m_mbszclass"></param>
  307. public void setINCAtable(c_TemplateClass m_mbszclass)
  308. {
  309. //ElementSubscript subscript = new ElementSubscript();
  310. export_ReportTemplate.GenerateINCAtable(dev_scmj_text.Text, out DataTable dt);
  311. xr_tbAreaOfInclusion.Visible = true;
  312. List<List<AreaOfInclusionDEVData>> list_AreaOfInclusion = new List<List<AreaOfInclusionDEVData>>();
  313. for (int i = 0; i < dt.Rows.Count; i++)
  314. {
  315. list_AreaOfInclusion.Add(set_AreaOfInclusion(subscript.Getsubscriptstring(dt.Rows[i]["Class"].ToString()) , subscript.Getsubscriptstring(dt.Rows[i]["subdivision"].ToString()), dt.Rows[i]["Area"].ToString(), dt.Rows[i]["inca_proportion"].ToString(),
  316. dt.Rows[i]["inca_FieldRatio"].ToString()));
  317. }
  318. for (int i = 0; i < dt.Rows.Count; i++)
  319. {
  320. XRTableRow row = new XRTableRow();
  321. XRTableCell tCell_classify = new XRTableCell();
  322. XRTableCell tCell_subdivision = new XRTableCell();
  323. XRTableCell tCell_area = new XRTableCell();
  324. XRTableCell tCell_inca_proportion = new XRTableCell();
  325. XRTableCell tCell_inca_FieldRatio = new XRTableCell();
  326. XRTableCellData_AreaOfInclusion(row, tCell_classify, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_AreaOfInclusion[i], "classify");
  327. XRTableCellData_AreaOfInclusion(row, tCell_subdivision, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_AreaOfInclusion[i], "subdivision");
  328. XRTableCellData_AreaOfInclusion(row, tCell_area, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_AreaOfInclusion[i], "Area");
  329. XRTableCellData_AreaOfInclusion(row, tCell_inca_proportion, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_AreaOfInclusion[i], "inca_proportion");
  330. XRTableCellData_AreaOfInclusion(row, tCell_inca_FieldRatio, dataFont, DevExpress.XtraPrinting.TextAlignment.MiddleCenter, "Text", list_AreaOfInclusion[i], "inca_FieldRatio");
  331. xr_tbAreaOfInclusion.Rows.Add(row);
  332. }
  333. }
  334. /// <summary>
  335. /// 设置插入夹杂物面积比图像
  336. /// </summary>
  337. /// <param name="m_mbszclass"></param>
  338. public void set_incaPIC_classify(c_TemplateClass m_mbszclass)
  339. {
  340. xrChart_incaClass.Visible = true;
  341. xrLabel_inca_pic_class.Visible = true;
  342. DataTable data = export_ReportTemplate.ClassificationIntegration(m_mbszclass, dev_sczs_text.Text);
  343. for (int i=0;i< data.Rows.Count;i++)
  344. {
  345. data.Rows[i]["Class"] = subscript.Getsubscriptstring(data.Rows[i]["Class"].ToString());
  346. }
  347. // 实例化饼图对象
  348. Series pieSeriesClass = new Series("夹杂物面积比分类", ViewType.Pie);
  349. pieSeriesClass.ArgumentScaleType = ScaleType.Qualitative;
  350. // 项目名称
  351. pieSeriesClass.ArgumentDataMember = "Class";
  352. pieSeriesClass.ValueScaleType = ScaleType.Numerical;
  353. //取值字段
  354. pieSeriesClass.ValueDataMembers.AddRange(new string[] { "Cunt" });
  355. (pieSeriesClass.Label as PieSeriesLabel).Position = PieSeriesLabelPosition.Inside;
  356. //显示百分比
  357. pieSeriesClass.PointOptions.PointView = PointView.ArgumentAndValues;
  358. pieSeriesClass.PointOptions.ValueNumericOptions.Format = NumericFormat.Percent;
  359. //设置数据源
  360. pieSeriesClass.DataSource = data;
  361. pieSeriesClass.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False;
  362. // 饼图空间添加 新建的饼图对象
  363. xrChart_incaClass.Series.Add(pieSeriesClass);
  364. //右上角分组视图
  365. this.xrChart_incaClass.Legend.MarkerSize = new System.Drawing.Size(20, 20);
  366. this.xrChart_incaClass.Legend.TextOffset = 5;
  367. this.xrChart_incaClass.Legend.VerticalIndent = 5;
  368. this.xrChart_incaClass.Legend.Border.Color = Color.Red;//红色边框
  369. }
  370. public void set_incaPIC_subdivision(c_TemplateClass m_mbszclass)
  371. {
  372. xrChart_incaSubdivision.Visible = true;
  373. xrLabel_inca_pic_subdivision.Visible = true;
  374. DataTable data = export_ReportTemplate.subdivisionIntegration(m_mbszclass);
  375. for (int i=0;i<data.Rows.Count;i++)
  376. {
  377. data.Rows[i]["TypeName"] = subscript.Getsubscriptstring(data.Rows[i]["TypeName"].ToString());
  378. data.Rows[i]["GroupName"] = subscript.Getsubscriptstring(data.Rows[i]["GroupName"].ToString());
  379. }
  380. // 实例化饼图对象
  381. Series pieSeriesClass = new Series("夹杂物面积比细分类", ViewType.Pie);
  382. pieSeriesClass.ArgumentScaleType = ScaleType.Qualitative;
  383. // 项目名称
  384. pieSeriesClass.ArgumentDataMember = "TypeName";
  385. pieSeriesClass.ValueScaleType = ScaleType.Numerical;
  386. //取值字段
  387. pieSeriesClass.ValueDataMembers.AddRange(new string[] { "con" });
  388. (pieSeriesClass.Label as PieSeriesLabel).Position = PieSeriesLabelPosition.Inside;
  389. //显示百分比
  390. pieSeriesClass.PointOptions.PointView = PointView.ArgumentAndValues;
  391. pieSeriesClass.PointOptions.ValueNumericOptions.Format = NumericFormat.Percent;
  392. //设置数据源
  393. pieSeriesClass.DataSource = data;
  394. pieSeriesClass.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False;
  395. // 饼图空间添加 新建的饼图对象
  396. xrChart_incaSubdivision.Series.Add(pieSeriesClass);
  397. //右上角分组视图
  398. this.xrChart_incaSubdivision.Legend.MarkerSize = new System.Drawing.Size(20, 20);
  399. this.xrChart_incaSubdivision.Legend.TextOffset = 5;
  400. this.xrChart_incaSubdivision.Legend.VerticalIndent = 5;
  401. this.xrChart_incaSubdivision.Legend.Border.Color = Color.Red;//红色边框
  402. }
  403. /// <summary>
  404. /// 三元图
  405. /// </summary>
  406. /// <param name="m_mbszclass"></param>
  407. public void InsertReportTemplateChart_Trianglediagram(c_TemplateClass m_mbszclass)
  408. {
  409. List<Color> Color_list = new List<Color>();
  410. Color_list.Add(Color.FromArgb(238, 175, 14));
  411. Color_list.Add(Color.FromArgb(0, 0, 238));
  412. Color_list.Add(Color.FromArgb(0, 205, 0));
  413. Color_list.Add(Color.FromArgb(238, 0, 0));
  414. Color_list.Add(Color.FromArgb(153, 50, 204));
  415. Color_list.Add(Color.FromArgb(255, 102, 153));
  416. Color_list.Add(Color.FromArgb(160, 82, 45));
  417. Color_list.Add(Color.FromArgb(181, 181, 181));
  418. Color_list.Add(Color.FromArgb(250, 235, 215));
  419. Color_list.Add(Color.FromArgb(238, 130, 238));
  420. Color_list.Add(Color.FromArgb(174, 238, 238));
  421. Color_list.Add(Color.FromArgb(247, 172, 189));
  422. Color_list.Add(Color.FromArgb(202, 134, 135));
  423. Color_list.Add(Color.FromArgb(34, 90, 31));
  424. Color_list.Add(Color.FromArgb(238, 175, 14));
  425. Color_list.Add(Color.FromArgb(0, 0, 238));
  426. Color_list.Add(Color.FromArgb(0, 205, 0));
  427. Color_list.Add(Color.FromArgb(238, 0, 0));
  428. Color_list.Add(Color.FromArgb(153, 50, 204));
  429. Color_list.Add(Color.FromArgb(255, 102, 153));
  430. Color_list.Add(Color.FromArgb(160, 82, 45));
  431. Color_list.Add(Color.FromArgb(181, 181, 181));
  432. Color_list.Add(Color.FromArgb(250, 235, 215));
  433. Color_list.Add(Color.FromArgb(238, 130, 238));
  434. Color_list.Add(Color.FromArgb(174, 238, 238));
  435. Color_list.Add(Color.FromArgb(247, 172, 189));
  436. Color_list.Add(Color.FromArgb(202, 134, 135));
  437. Color_list.Add(Color.FromArgb(34, 90, 31));
  438. //for (int i = 0; i < m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i++)
  439. //{
  440. // set_syt_pic_legend(Color_list);
  441. // set_syt_pic( m_mbszclass, m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i], Color_list);
  442. // XRPageBreak xRPage = new XRPageBreak();
  443. // xRPage.LocationF = new PointF(0, LowPlace + 2);
  444. // this.Detail.Controls.Add(xRPage);
  445. //}
  446. for (int i = 0; i < m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i=i+4)
  447. {
  448. set_syt_pic_legend(Color_list);
  449. if (i< m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count)
  450. {
  451. set_syt_pic(m_mbszclass, m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i], Color_list, new PointF(10f, LowPlace + 2));
  452. }
  453. if (i+1 < m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count)
  454. {
  455. set_syt_pic(m_mbszclass, m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i+1], Color_list, new PointF(343.8f, LowPlace + 2));
  456. }
  457. if (i+2 < m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count)
  458. {
  459. set_syt_pic(m_mbszclass, m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i+2], Color_list, new PointF(10f, LowPlace + 345+5));
  460. }
  461. if (i + 3 < m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count)
  462. {
  463. set_syt_pic(m_mbszclass, m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i+3], Color_list, new PointF(343.8f, LowPlace + 345+5));
  464. }
  465. //set_syt_pic(m_mbszclass, m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i], Color_list);
  466. XRLine rLine = new XRLine();
  467. rLine.SizeF = new SizeF(5f, 698.5f);
  468. rLine.LineDirection = LineDirection.Vertical;
  469. rLine.LocationF = new PointF(335f, LowPlace+2);
  470. this.Detail.Controls.Add(rLine);
  471. XRLine rLine_level = new XRLine();
  472. rLine_level.SizeF = new SizeF(668f, 5f);
  473. rLine_level.LineDirection = LineDirection.Horizontal;
  474. rLine_level.LocationF = new PointF(10f, LowPlace + 345);
  475. this.Detail.Controls.Add(rLine_level);
  476. XRPageBreak xRPage = new XRPageBreak();
  477. xRPage.LocationF = new PointF(0, LowPlace + 850);
  478. LowPlace = LowPlace + 870;
  479. this.Detail.Controls.Add(xRPage);
  480. }
  481. }
  482. /// <summary>
  483. /// 颗粒列表
  484. /// </summary>
  485. /// <param name="m_mbszclass"></param>
  486. public void set_kllb_data(c_TemplateClass m_mbszclass)
  487. {
  488. XRPageBreak xRPage = new XRPageBreak();
  489. xRPage.Name = "kllb_Page";
  490. xRPage.LocationF = new PointF(0, LowPlace + 2);
  491. this.Detail.Controls.Add(xRPage);
  492. xrTable_kllb_surface.LocationF = new PointF(0, LowPlace + 5);
  493. xrTable_kllb_surface.Visible = true;
  494. LowPlace = xrTable_kllb_surface.LocationF.Y + xrTable_kllb_surface.SizeF.Height;
  495. // Export_ReportTemplate export_ReportTemplate = new Export_ReportTemplate(m_otsreport_export);
  496. DataTable dataTable = export_ReportTemplate.Get_dev_kllb_data(m_mbszclass);
  497. for (int i=0;i<dataTable.Rows.Count;i++)
  498. {
  499. dataTable.Rows[i]["Class"] = subscript.Getsubscriptstring(dataTable.Rows[i]["Class"].ToString());
  500. }
  501. for (int i = 0; i < dataTable.Rows.Count; i++)
  502. {
  503. XRTable table = add_XRTable();
  504. add_kllb(m_mbszclass, dataTable, i, table);
  505. }
  506. LowPlace = LowPlace + 10;
  507. }
  508. /// <summary>
  509. /// 颗粒列表 帧图
  510. /// </summary>
  511. /// <param name="m_mbszclass"></param>
  512. public void set_kllb_data_frame(c_TemplateClass m_mbszclass)
  513. {
  514. // Export_ReportTemplate export_ReportTemplate = new Export_ReportTemplate(m_otsreport_export);
  515. export_ReportTemplate.Get_dev_kllb_data_frame(m_mbszclass, out DataTable dt_pic, out List<DataTable> listData);
  516. for (int i=0;i< listData.Count;i++)
  517. {
  518. for (int a=0;a< listData[i].Rows.Count;a++)
  519. {
  520. listData[i].Rows[a]["Class"] = subscript.Getsubscriptstring(listData[i].Rows[a]["Class"].ToString());
  521. }
  522. }
  523. for (int i = 0; i < dt_pic.Rows.Count; i++)
  524. {
  525. //分页符
  526. XRPageBreak xRPage = new XRPageBreak();
  527. xRPage.Name = "framePage_" + i.ToString();
  528. xRPage.LocationF = new PointF(0, LowPlace);
  529. LowPlace = LowPlace + 10;
  530. this.Detail.Controls.Add(xRPage);
  531. //表头
  532. XRTable Template = new XRTable();
  533. XRTableRow Template_Rows_1 = new XRTableRow();
  534. XRTableRow Template_Rows_2 = new XRTableRow();
  535. XRTableCell Template_Rows1_Cell_1 = new XRTableCell();
  536. XRTableCell Template_Rows2_Cell_1 = new XRTableCell();
  537. Template_Rows1_Cell_1.WidthF = 688f;
  538. Template_Rows2_Cell_1.WidthF = 688f;
  539. Template_Rows_1.Controls.Add(Template_Rows1_Cell_1);
  540. Template_Rows_2.Controls.Add(Template_Rows2_Cell_1);
  541. Template.Rows.Add(Template_Rows_1);
  542. Template.Rows.Add(Template_Rows_2);
  543. Template.SizeF = new SizeF(688f, 25f);
  544. Template.Rows[0].Cells[0].Text = "帧图 " + dt_pic.Rows[i]["id"];
  545. Template.LocationF = new PointF(0, LowPlace);
  546. Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
  547. Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
  548. Template.Rows[0].Font = new Font(typeface, 14f, FontStyle.Bold);
  549. Template.Rows[0].BackColor = Color.DarkGray;
  550. this.Detail.Controls.Add(Template);
  551. //图片
  552. XRPictureBox xRPicture = new XRPictureBox();
  553. xRPicture.Name = "frameName_" + i.ToString();
  554. xRPicture.SizeF = new SizeF(688f, 485f);
  555. xRPicture.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
  556. xRPicture.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
  557. ImageSource imageSource = new ImageSource((Bitmap)dt_pic.Rows[i]["Field_pic"]);
  558. xRPicture.ImageSource = imageSource;
  559. xRPicture.LocationF = new PointF(0, LowPlace + Template.SizeF.Height);
  560. xRPicture.Borders = DevExpress.XtraPrinting.BorderSide.All;
  561. this.Detail.Controls.Add(xRPicture);
  562. LowPlace = LowPlace + xRPicture.SizeF.Height + Template.SizeF.Height;
  563. for (int a = 0; a < listData.Count; a++)
  564. {
  565. if (dt_pic.Rows[i]["id"].ToString() == listData[a].Rows[0]["FieldId"].ToString())
  566. {
  567. for (int b = 0; b < listData[a].Rows.Count; b++)
  568. {
  569. //数据表
  570. XRTable xRTable = add_XRTable_frame();
  571. xRTable.Rows[0].Cells[0].Text = "图像";
  572. xRTable.Rows[0].Cells[1].Text = "分类";
  573. xRTable.Rows[0].Cells[2].Text = m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p1.ToString();
  574. xRTable.Rows[0].Cells[3].Text = m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p2.ToString();
  575. XRPictureBox xRPicture1 = new XRPictureBox();
  576. xRPicture1.ImageSource = new ImageSource((Bitmap)listData[a].Rows[b]["pic"]);
  577. xRPicture1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
  578. xRPicture1.SizeF = new SizeF(94, 35);
  579. //xRPicture1.BackColor = Color.DarkGray;
  580. xRTable.Rows[1].Cells[0].Controls.Add(xRPicture1);
  581. xRTable.Rows[1].Cells[1].Text = listData[a].Rows[b]["Class"].ToString();
  582. xRTable.Rows[1].Cells[2].Text = listData[a].Rows[b]["pid"].ToString();
  583. xRTable.Rows[1].Cells[3].Text = listData[a].Rows[b]["Size"].ToString();
  584. for (int c = 0; c < 10; c++)
  585. {
  586. xRTable.Rows[2].Cells[c].Text = listData[a].Rows[b]["ColName" + (c + 1).ToString()].ToString();
  587. xRTable.Rows[3].Cells[c].Text = listData[a].Rows[b]["ColVal" + (c + 1).ToString()].ToString();
  588. }
  589. xRTable.LocationF = new PointF(0, LowPlace + 5);
  590. this.Detail.Controls.Add(xRTable);
  591. LowPlace = LowPlace + xRTable.SizeF.Height + 5 + 2;
  592. }
  593. }
  594. }
  595. }
  596. }
  597. #endregion
  598. private void setTableCellData(XRTableCell cell, string str)
  599. {
  600. cell.Text = str;
  601. cell.Font = new Font(typeface, cell.Font.Size);
  602. }
  603. private void setXRLabelData(XRLabel cell, string str)
  604. {
  605. cell.Text = str;
  606. cell.Font = new Font(typeface, cell.Font.Size);
  607. }
  608. /// <summary>
  609. /// 读取报告控件中英文
  610. /// </summary>
  611. /// <param name="strName"></param>
  612. /// <param name="languageData"></param>
  613. /// <returns></returns>
  614. private string GetlanguageData(string strName, DataTable languageData)
  615. {
  616. for (int i = 0; i < languageData.Rows.Count; i++)
  617. {
  618. if (strName == languageData.Rows[i]["Name"].ToString())
  619. {
  620. return languageData.Rows[i]["Text"].ToString();
  621. }
  622. }
  623. return "";
  624. }
  625. #region 整理成DEV需要的数据格式
  626. private void XRTableCellData(XRTableRow xR, XRTableCell rTableCell, string typeface, DevExpress.XtraPrinting.TextAlignment textAlignment, string cellText, List<ParticleSizeDEVData> switchDEVDatas, string cellName)
  627. {
  628. rTableCell.TextAlignment = textAlignment;
  629. rTableCell.Font = new Font(typeface, rTableCell.Font.Size);
  630. xR.Cells.Add(rTableCell);
  631. rTableCell.DataBindings.Add(cellText, switchDEVDatas, cellName);
  632. }
  633. private void XRTableCellData_ElementAnalysis(XRTableRow xR, XRTableCell rTableCell, string typeface, DevExpress.XtraPrinting.TextAlignment textAlignment, string cellText, List<ElementalAnalysisDEVData> switchDEVDatas, string cellName)
  634. {
  635. rTableCell.TextAlignment = textAlignment;
  636. rTableCell.Font = new Font(typeface, rTableCell.Font.Size);
  637. xR.Cells.Add(rTableCell);
  638. rTableCell.DataBindings.Add(cellText, switchDEVDatas, cellName);
  639. }
  640. private void XRTableCellData_AreaOfInclusion(XRTableRow xR, XRTableCell rTableCell, string typeface, DevExpress.XtraPrinting.TextAlignment textAlignment, string cellText, List<AreaOfInclusionDEVData> switchDEVDatas, string cellName)
  641. {
  642. rTableCell.TextAlignment = textAlignment;
  643. rTableCell.Font = new Font(typeface, rTableCell.Font.Size);
  644. xR.Cells.Add(rTableCell);
  645. rTableCell.DataBindings.Add(cellText, switchDEVDatas, cellName);
  646. }
  647. /// <summary>
  648. /// 颗粒尺寸表向list中插入数据
  649. /// </summary>
  650. /// <param name="Class"></param>
  651. /// <param name="Name"></param>
  652. /// <param name="total"></param>
  653. /// <param name="size_1"></param>
  654. /// <param name="size_2"></param>
  655. /// <param name="size_3"></param>
  656. /// <param name="size_4"></param>
  657. /// <param name="size_5"></param>
  658. /// <param name="size_6"></param>
  659. /// <param name="size_7"></param>
  660. /// <returns></returns>
  661. private List<ParticleSizeDEVData> switch_ParticleSize(string Class, string Name, string total, string size_1, string size_2, string size_3, string size_4, string size_5, string size_6, string size_7)
  662. {
  663. List<ParticleSizeDEVData> oTS_DEVs = new List<ParticleSizeDEVData>();
  664. oTS_DEVs.Add(new ParticleSizeDEVData
  665. {
  666. size_total = total,
  667. size_Class = Class,
  668. size_Name = Name,
  669. size_1 = size_1,
  670. size_2 = size_2,
  671. size_3 = size_3,
  672. size_4 = size_4,
  673. size_5 = size_5,
  674. size_6 = size_6,
  675. size_7 = size_7
  676. });
  677. return oTS_DEVs;
  678. }
  679. /// <summary>
  680. /// 元素分析表向list中插入数据
  681. /// </summary>
  682. /// <param name="classify"></param>
  683. /// <param name="subdivision"></param>
  684. /// <param name="area"></param>
  685. /// <param name="s1"></param>
  686. /// <param name="s2"></param>
  687. /// <param name="s3"></param>
  688. /// <param name="s4"></param>
  689. /// <param name="s5"></param>
  690. /// <param name="s6"></param>
  691. /// <param name="s7"></param>
  692. /// <param name="s8"></param>
  693. /// <param name="s9"></param>
  694. /// <param name="s10"></param>
  695. /// <returns></returns>
  696. private List<ElementalAnalysisDEVData> set_ElementalAnalysis(string classify, string subdivision, string area, string s1, string s2, string s3, string s4, string s5, string s6, string s7, string s8, string s9, string s10)
  697. {
  698. List<ElementalAnalysisDEVData> oTS_DEVs = new List<ElementalAnalysisDEVData>();
  699. oTS_DEVs.Add(new ElementalAnalysisDEVData
  700. {
  701. classify = classify,
  702. subdivision = subdivision,
  703. Area = area,
  704. s1 = s1,
  705. s2 = s2,
  706. s3 = s3,
  707. s4 = s4,
  708. s5 = s5,
  709. s6 = s6,
  710. s7 = s7,
  711. s8 = s8,
  712. s9 = s9,
  713. s10 = s10
  714. });
  715. return oTS_DEVs;
  716. }
  717. /// <summary>
  718. /// 夹杂物分析表(清洁度不需要)
  719. /// </summary>
  720. /// <param name="classify"></param>
  721. /// <param name="subdivision"></param>
  722. /// <param name="Area"></param>
  723. /// <param name="inca_proportion"></param>
  724. /// <param name="inca_FieldRatio"></param>
  725. /// <returns></returns>
  726. private List<AreaOfInclusionDEVData> set_AreaOfInclusion(string classify, string subdivision, string Area, string inca_proportion, string inca_FieldRatio)
  727. {
  728. List<AreaOfInclusionDEVData> oTS_DEVs = new List<AreaOfInclusionDEVData>();
  729. oTS_DEVs.Add(new AreaOfInclusionDEVData
  730. {
  731. classify = classify,
  732. subdivision = subdivision,
  733. Area = Area,
  734. inca_proportion = inca_proportion,
  735. inca_FieldRatio = inca_FieldRatio
  736. });
  737. return oTS_DEVs;
  738. }
  739. #endregion
  740. #region 三元相图数据
  741. /// <summary>
  742. /// 动态生成加载三元图图片加分页符
  743. /// </summary>
  744. /// <param name="syt_pic_name"></param>
  745. /// <param name="syt_Page_name"></param>
  746. /// <param name="m_mbszclass"></param>
  747. /// <param name="index"></param>
  748. private void set_syt_pic(c_TemplateClass m_mbszclass, int index, List<Color> Color_list)
  749. {
  750. XRPictureBox xRPicture = new XRPictureBox();
  751. xRPicture.LocationF = new PointF(10f, LowPlace);
  752. xRPicture.SizeF = syx_Size;
  753. ImageSource imageSource = new ImageSource(export_ReportTemplate.DrawATernaryPicture(index, m_mbszclass,Color_list));
  754. xRPicture.ImageSource = imageSource;
  755. xRPicture.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
  756. xRPicture.Visible = true;
  757. this.Detail.Controls.Add(xRPicture);
  758. LowPlace = syx_Size.Height + LowPlace + 10;
  759. }
  760. private void set_syt_pic(c_TemplateClass m_mbszclass, int index, List<Color> Color_list, PointF position)
  761. {
  762. XRPictureBox xRPicture = new XRPictureBox();
  763. xRPicture.LocationF = position;
  764. xRPicture.SizeF = new SizeF(321f, 330.2f);
  765. ImageSource imageSource = new ImageSource(export_ReportTemplate.DrawATernaryPicture(index, m_mbszclass, Color_list));
  766. xRPicture.ImageSource = imageSource;
  767. xRPicture.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
  768. xRPicture.Visible = true;
  769. this.Detail.Controls.Add(xRPicture);
  770. //LowPlace = syx_Size.Height + LowPlace ;
  771. }
  772. private void set_syt_pic_legend(List<Color> Color_list)
  773. {
  774. XRPictureBox xRPicture_legend = new XRPictureBox();
  775. xRPicture_legend.LocationF = new PointF(95f, LowPlace);
  776. xRPicture_legend.SizeF = new SizeF(504f, 120.85f);
  777. xRPicture_legend.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
  778. ImageSource imageSource_legend = new ImageSource(export_ReportTemplate.DrawATernaryDiagramLegend(Color_list));
  779. xRPicture_legend.ImageSource = imageSource_legend;
  780. LowPlace = LowPlace + xRPicture_legend.SizeF.Height;
  781. this.Detail.Controls.Add(xRPicture_legend);
  782. }
  783. #endregion
  784. #region 颗粒列表
  785. private XRTable add_XRTable()
  786. {
  787. XRTable Template = new XRTable();
  788. XRTableRow Template_Rows_1 = new XRTableRow();
  789. XRTableCell Template_Rows1_Cell_1 = new XRTableCell();
  790. XRTableCell Template_Rows1_Cell_2 = new XRTableCell();
  791. XRTableCell Template_Rows1_Cell_3 = new XRTableCell();
  792. XRTableCell Template_Rows1_Cell_4 = new XRTableCell();
  793. XRTableCell Template_Rows1_Cell_5 = new XRTableCell();
  794. XRTableCell Template_Rows1_Cell_6 = new XRTableCell();
  795. XRTableRow Template_Rows_2 = new XRTableRow();
  796. XRTableCell Template_Rows2_Cell_1 = new XRTableCell();
  797. XRTableCell Template_Rows2_Cell_2 = new XRTableCell();
  798. XRTableCell Template_Rows2_Cell_3 = new XRTableCell();
  799. XRTableCell Template_Rows2_Cell_4 = new XRTableCell();
  800. XRTableCell Template_Rows2_Cell_5 = new XRTableCell();
  801. XRTableCell Template_Rows2_Cell_6 = new XRTableCell();
  802. XRTableRow Template_Rows_3 = new XRTableRow();
  803. XRTableCell Template_Rows3_Cell_1 = new XRTableCell();
  804. XRTableCell Template_Rows3_Cell_2 = new XRTableCell();
  805. XRTableCell Template_Rows3_Cell_3 = new XRTableCell();
  806. XRTableCell Template_Rows3_Cell_4 = new XRTableCell();
  807. XRTableCell Template_Rows3_Cell_5 = new XRTableCell();
  808. XRTableCell Template_Rows3_Cell_6 = new XRTableCell();
  809. XRTableCell Template_Rows3_Cell_7 = new XRTableCell();
  810. XRTableCell Template_Rows3_Cell_8 = new XRTableCell();
  811. XRTableCell Template_Rows3_Cell_9 = new XRTableCell();
  812. XRTableCell Template_Rows3_Cell_10 = new XRTableCell();
  813. XRTableCell Template_Rows3_Cell_11 = new XRTableCell();
  814. XRTableRow Template_Rows_4 = new XRTableRow();
  815. XRTableCell Template_Rows4_Cell_1 = new XRTableCell();
  816. XRTableCell Template_Rows4_Cell_2 = new XRTableCell();
  817. XRTableCell Template_Rows4_Cell_3 = new XRTableCell();
  818. XRTableCell Template_Rows4_Cell_4 = new XRTableCell();
  819. XRTableCell Template_Rows4_Cell_5 = new XRTableCell();
  820. XRTableCell Template_Rows4_Cell_6 = new XRTableCell();
  821. XRTableCell Template_Rows4_Cell_7 = new XRTableCell();
  822. XRTableCell Template_Rows4_Cell_8 = new XRTableCell();
  823. XRTableCell Template_Rows4_Cell_9 = new XRTableCell();
  824. XRTableCell Template_Rows4_Cell_10 = new XRTableCell();
  825. XRTableCell Template_Rows4_Cell_11 = new XRTableCell();
  826. XRTableRow Template_Rows_5 = new XRTableRow();
  827. XRTableCell Template_Rows5_Cell_1 = new XRTableCell();
  828. Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
  829. Template_Rows1_Cell_1.WidthF = 115.67f;
  830. Template_Rows1_Cell_2.WidthF = 53f;
  831. Template_Rows1_Cell_3.WidthF = 211.79f;
  832. Template_Rows1_Cell_4.WidthF = 102.51f;
  833. Template_Rows1_Cell_5.WidthF = 102.51f;
  834. Template_Rows1_Cell_6.WidthF = 102.51f;
  835. Template_Rows_1.Controls.Add(Template_Rows1_Cell_1);
  836. Template_Rows_1.Controls.Add(Template_Rows1_Cell_2);
  837. Template_Rows_1.Controls.Add(Template_Rows1_Cell_3);
  838. Template_Rows_1.Controls.Add(Template_Rows1_Cell_4);
  839. Template_Rows_1.Controls.Add(Template_Rows1_Cell_5);
  840. Template_Rows_1.Controls.Add(Template_Rows1_Cell_6);
  841. Template_Rows2_Cell_1.WidthF = 115.67f;
  842. Template_Rows2_Cell_2.WidthF = 53f;
  843. Template_Rows2_Cell_3.WidthF = 211.79f;
  844. Template_Rows2_Cell_4.WidthF = 102.51f;
  845. Template_Rows2_Cell_5.WidthF = 102.51f;
  846. Template_Rows2_Cell_6.WidthF = 102.51f;
  847. Template_Rows_2.Controls.Add(Template_Rows2_Cell_1);
  848. Template_Rows_2.Controls.Add(Template_Rows2_Cell_2);
  849. Template_Rows_2.Controls.Add(Template_Rows2_Cell_3);
  850. Template_Rows_2.Controls.Add(Template_Rows2_Cell_4);
  851. Template_Rows_2.Controls.Add(Template_Rows2_Cell_5);
  852. Template_Rows_2.Controls.Add(Template_Rows2_Cell_6);
  853. Template_Rows3_Cell_1.WidthF = 115.67f;
  854. Template_Rows3_Cell_2.WidthF = 57.23f;//63.59f
  855. Template_Rows3_Cell_3.WidthF = 57.23f;
  856. Template_Rows3_Cell_4.WidthF = 57.23f;
  857. Template_Rows3_Cell_5.WidthF = 57.23f;
  858. Template_Rows3_Cell_6.WidthF = 57.23f;
  859. Template_Rows3_Cell_7.WidthF = 57.23f;
  860. Template_Rows3_Cell_8.WidthF = 57.23f;
  861. Template_Rows3_Cell_9.WidthF = 57.23f;
  862. Template_Rows3_Cell_10.WidthF = 57.23f;
  863. Template_Rows3_Cell_11.WidthF = 57.23f;
  864. Template_Rows_3.Controls.Add(Template_Rows3_Cell_1);
  865. Template_Rows_3.Controls.Add(Template_Rows3_Cell_2);
  866. Template_Rows_3.Controls.Add(Template_Rows3_Cell_3);
  867. Template_Rows_3.Controls.Add(Template_Rows3_Cell_4);
  868. Template_Rows_3.Controls.Add(Template_Rows3_Cell_5);
  869. Template_Rows_3.Controls.Add(Template_Rows3_Cell_6);
  870. Template_Rows_3.Controls.Add(Template_Rows3_Cell_7);
  871. Template_Rows_3.Controls.Add(Template_Rows3_Cell_8);
  872. Template_Rows_3.Controls.Add(Template_Rows3_Cell_9);
  873. Template_Rows_3.Controls.Add(Template_Rows3_Cell_10);
  874. Template_Rows_3.Controls.Add(Template_Rows3_Cell_11);
  875. Template_Rows4_Cell_1.WidthF = 115.67f;
  876. Template_Rows4_Cell_2.WidthF = 57.23f;//63.59f
  877. Template_Rows4_Cell_3.WidthF = 57.23f;
  878. Template_Rows4_Cell_4.WidthF = 57.23f;
  879. Template_Rows4_Cell_5.WidthF = 57.23f;
  880. Template_Rows4_Cell_6.WidthF = 57.23f;
  881. Template_Rows4_Cell_7.WidthF = 57.23f;
  882. Template_Rows4_Cell_8.WidthF = 57.23f;
  883. Template_Rows4_Cell_9.WidthF = 57.23f;
  884. Template_Rows4_Cell_10.WidthF = 57.23f;
  885. Template_Rows4_Cell_11.WidthF = 57.23f;
  886. Template_Rows_4.Controls.Add(Template_Rows4_Cell_1);
  887. Template_Rows_4.Controls.Add(Template_Rows4_Cell_2);
  888. Template_Rows_4.Controls.Add(Template_Rows4_Cell_3);
  889. Template_Rows_4.Controls.Add(Template_Rows4_Cell_4);
  890. Template_Rows_4.Controls.Add(Template_Rows4_Cell_5);
  891. Template_Rows_4.Controls.Add(Template_Rows4_Cell_6);
  892. Template_Rows_4.Controls.Add(Template_Rows4_Cell_7);
  893. Template_Rows_4.Controls.Add(Template_Rows4_Cell_8);
  894. Template_Rows_4.Controls.Add(Template_Rows4_Cell_9);
  895. Template_Rows_4.Controls.Add(Template_Rows4_Cell_10);
  896. Template_Rows_4.Controls.Add(Template_Rows4_Cell_11);
  897. Template_Rows_5.Controls.Add(Template_Rows5_Cell_1);
  898. Template.Rows.Add(Template_Rows_1);
  899. Template.Rows.Add(Template_Rows_2);
  900. Template.Rows.Add(Template_Rows_3);
  901. Template.Rows.Add(Template_Rows_4);
  902. Template.Rows.Add(Template_Rows_5);
  903. Template.SizeF = new SizeF(688f, 125);
  904. Template.Rows[0].Font = new Font(dataFont, 14f, FontStyle.Bold);
  905. Template.Rows[2].Font = new Font(dataFont, 14f, FontStyle.Bold);
  906. Template.Rows[1].Font = new Font(dataFont, 14f);
  907. Template.Rows[3].Font = new Font(dataFont, 14f);
  908. Template.Rows[0].BackColor = Color.DarkGray;
  909. Template.Rows[2].BackColor = Color.DarkGray;
  910. Template.Rows[0].Cells[0].BackColor = Color.Transparent;
  911. Template.Rows[2].Cells[0].BackColor = Color.Transparent;
  912. Template.Rows[2].BackColor = Color.DarkGray;
  913. Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
  914. Template.Rows[0].Cells[0].Borders = DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top;
  915. Template.Rows[1].Cells[0].Borders = DevExpress.XtraPrinting.BorderSide.Left;
  916. Template.Rows[2].Cells[0].Borders = DevExpress.XtraPrinting.BorderSide.Left;
  917. Template.Rows[3].Cells[0].Borders = DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Bottom;
  918. return Template;
  919. }
  920. private void add_kllb(c_TemplateClass m_mbszclass, DataTable dataTable, int position, XRTable xRTable)
  921. {
  922. XRTable table = new XRTable();
  923. table = xRTable;
  924. table.Name = "table_kllb_" + position.ToString();
  925. table.Rows[0].Cells[1].Text = "ID";
  926. table.Rows[0].Cells[2].Text = "Class";
  927. table.Rows[0].Cells[3].Text = m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p1.ToString();
  928. table.Rows[0].Cells[4].Text = m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p2.ToString();
  929. table.Rows[0].Cells[5].Text = m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p3.ToString();
  930. table.Rows[1].Cells[1].Text = dataTable.Rows[position]["pid"].ToString();
  931. table.Rows[1].Cells[2].Text = dataTable.Rows[position]["Class"].ToString();
  932. table.Rows[1].Cells[3].Text = dataTable.Rows[position]["Size"].ToString();
  933. table.Rows[1].Cells[4].Text = dataTable.Rows[position]["DMAX"].ToString();
  934. table.Rows[1].Cells[5].Text = dataTable.Rows[position]["DMIN"].ToString();
  935. for (int i = 1; i < 11; i++)
  936. {
  937. table.Rows[2].Cells[i].Text = dataTable.Rows[position]["ColName" + i.ToString()].ToString();
  938. string str_ColVal = "";
  939. if (dataTable.Rows[position]["ColVal" + i.ToString()].ToString() == "0")
  940. {
  941. str_ColVal = "";
  942. }
  943. else
  944. {
  945. str_ColVal = dataTable.Rows[position]["ColVal" + i.ToString()].ToString();
  946. }
  947. table.Rows[3].Cells[i].Text = str_ColVal;
  948. }
  949. //XRPictureBox xRPicture1 = new XRPictureBox();
  950. //xRPicture1.ImageSource = new ImageSource((Bitmap)dataTable.Rows[position]["p1"]);
  951. //xRPicture1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
  952. //xRPicture1.BackColor = Color.DarkGray;
  953. //xRPicture1.SizeF=new SizeF(107f,122f);
  954. //table.Rows[4].Cells[0].Controls.Add(xRPicture1);
  955. table.Rows[4].Cells[0].BackColor = Color.DarkGray;
  956. table.Rows[4].Cells[0].TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
  957. XRPictureBox xRPicture2 = new XRPictureBox();
  958. xRPicture2.ImageSource = new ImageSource((Bitmap)dataTable.Rows[position]["p3"]);
  959. xRPicture2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.AutoSize;
  960. table.Rows[4].Cells[0].Controls.Add(xRPicture2);
  961. table.Visible = true;
  962. table.LocationF = new PointF(0, LowPlace);
  963. table.SendToBack();
  964. //table.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
  965. this.Detail.Controls.Add(table);
  966. XRPictureBox xRPicture_pic = new XRPictureBox();
  967. xRPicture_pic.Name = "Picture_kllb_" + position.ToString();
  968. xRPicture_pic.ImageSource = new ImageSource((Image)dataTable.Rows[position]["p1"]);
  969. xRPicture_pic.LocationF = new PointF(1, LowPlace);
  970. xRPicture_pic.Visible = true;
  971. xRPicture_pic.BackColor = Color.DarkGray;
  972. xRPicture_pic.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
  973. xRPicture_pic.SizeF = new SizeF(115f, 96.88f);
  974. xRPicture_pic.BringToFront();
  975. this.Detail.Controls.Add(xRPicture_pic);
  976. LowPlace = table.SizeF.Height + LowPlace+5;
  977. }
  978. #endregion
  979. #region 颗粒列表帧图
  980. private XRTable add_XRTable_frame()
  981. {
  982. XRTable Template = new XRTable();
  983. XRTableRow Template_Rows_1 = new XRTableRow();
  984. XRTableRow Template_Rows_2 = new XRTableRow();
  985. XRTableRow Template_Rows_3 = new XRTableRow();
  986. XRTableRow Template_Rows_4 = new XRTableRow();
  987. XRTableCell Template_Rows1_Cell_1 = new XRTableCell();
  988. XRTableCell Template_Rows1_Cell_2 = new XRTableCell();
  989. XRTableCell Template_Rows1_Cell_3 = new XRTableCell();
  990. XRTableCell Template_Rows1_Cell_4 = new XRTableCell();
  991. XRTableCell Template_Rows2_Cell_1 = new XRTableCell();
  992. XRTableCell Template_Rows2_Cell_2 = new XRTableCell();
  993. XRTableCell Template_Rows2_Cell_3 = new XRTableCell();
  994. XRTableCell Template_Rows2_Cell_4 = new XRTableCell();
  995. XRTableCell Template_Rows3_Cell_1 = new XRTableCell();
  996. XRTableCell Template_Rows3_Cell_2 = new XRTableCell();
  997. XRTableCell Template_Rows3_Cell_3 = new XRTableCell();
  998. XRTableCell Template_Rows3_Cell_4 = new XRTableCell();
  999. XRTableCell Template_Rows3_Cell_5 = new XRTableCell();
  1000. XRTableCell Template_Rows3_Cell_6 = new XRTableCell();
  1001. XRTableCell Template_Rows3_Cell_7 = new XRTableCell();
  1002. XRTableCell Template_Rows3_Cell_8 = new XRTableCell();
  1003. XRTableCell Template_Rows3_Cell_9 = new XRTableCell();
  1004. XRTableCell Template_Rows3_Cell_10 = new XRTableCell();
  1005. XRTableCell Template_Rows4_Cell_1 = new XRTableCell();
  1006. XRTableCell Template_Rows4_Cell_2 = new XRTableCell();
  1007. XRTableCell Template_Rows4_Cell_3 = new XRTableCell();
  1008. XRTableCell Template_Rows4_Cell_4 = new XRTableCell();
  1009. XRTableCell Template_Rows4_Cell_5 = new XRTableCell();
  1010. XRTableCell Template_Rows4_Cell_6 = new XRTableCell();
  1011. XRTableCell Template_Rows4_Cell_7 = new XRTableCell();
  1012. XRTableCell Template_Rows4_Cell_8 = new XRTableCell();
  1013. XRTableCell Template_Rows4_Cell_9 = new XRTableCell();
  1014. XRTableCell Template_Rows4_Cell_10 = new XRTableCell();
  1015. Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
  1016. Template_Rows1_Cell_1.WidthF = 94.63f;
  1017. Template_Rows1_Cell_2.WidthF = 290f;
  1018. Template_Rows1_Cell_3.WidthF = 155.73f;
  1019. Template_Rows1_Cell_4.WidthF = 155.73f;
  1020. Template_Rows_1.Controls.Add(Template_Rows1_Cell_1);
  1021. Template_Rows_1.Controls.Add(Template_Rows1_Cell_2);
  1022. Template_Rows_1.Controls.Add(Template_Rows1_Cell_3);
  1023. Template_Rows_1.Controls.Add(Template_Rows1_Cell_4);
  1024. Template_Rows2_Cell_1.WidthF = 94.63f;
  1025. Template_Rows2_Cell_2.WidthF = 290f;
  1026. Template_Rows2_Cell_3.WidthF = 155.73f;
  1027. Template_Rows2_Cell_4.WidthF = 155.73f;
  1028. Template_Rows_2.Controls.Add(Template_Rows2_Cell_1);
  1029. Template_Rows_2.Controls.Add(Template_Rows2_Cell_2);
  1030. Template_Rows_2.Controls.Add(Template_Rows2_Cell_3);
  1031. Template_Rows_2.Controls.Add(Template_Rows2_Cell_4);
  1032. Template_Rows3_Cell_1.WidthF = 68.8f;
  1033. Template_Rows3_Cell_2.WidthF = 68.8f;
  1034. Template_Rows3_Cell_3.WidthF = 68.8f;
  1035. Template_Rows3_Cell_4.WidthF = 68.8f;
  1036. Template_Rows3_Cell_5.WidthF = 68.8f;
  1037. Template_Rows3_Cell_6.WidthF = 68.8f;
  1038. Template_Rows3_Cell_7.WidthF = 68.8f;
  1039. Template_Rows3_Cell_8.WidthF = 68.8f;
  1040. Template_Rows3_Cell_9.WidthF = 68.8f;
  1041. Template_Rows3_Cell_10.WidthF = 68.8f;
  1042. Template_Rows_3.Controls.Add(Template_Rows3_Cell_1);
  1043. Template_Rows_3.Controls.Add(Template_Rows3_Cell_2);
  1044. Template_Rows_3.Controls.Add(Template_Rows3_Cell_3);
  1045. Template_Rows_3.Controls.Add(Template_Rows3_Cell_4);
  1046. Template_Rows_3.Controls.Add(Template_Rows3_Cell_5);
  1047. Template_Rows_3.Controls.Add(Template_Rows3_Cell_6);
  1048. Template_Rows_3.Controls.Add(Template_Rows3_Cell_7);
  1049. Template_Rows_3.Controls.Add(Template_Rows3_Cell_8);
  1050. Template_Rows_3.Controls.Add(Template_Rows3_Cell_9);
  1051. Template_Rows_3.Controls.Add(Template_Rows3_Cell_10);
  1052. Template_Rows4_Cell_1.WidthF = 68.8f;
  1053. Template_Rows4_Cell_2.WidthF = 68.8f;
  1054. Template_Rows4_Cell_3.WidthF = 68.8f;
  1055. Template_Rows4_Cell_4.WidthF = 68.8f;
  1056. Template_Rows4_Cell_5.WidthF = 68.8f;
  1057. Template_Rows4_Cell_6.WidthF = 68.8f;
  1058. Template_Rows4_Cell_7.WidthF = 68.8f;
  1059. Template_Rows4_Cell_8.WidthF = 68.8f;
  1060. Template_Rows4_Cell_9.WidthF = 68.8f;
  1061. Template_Rows4_Cell_10.WidthF = 68.8f;
  1062. Template_Rows_4.Controls.Add(Template_Rows4_Cell_1);
  1063. Template_Rows_4.Controls.Add(Template_Rows4_Cell_2);
  1064. Template_Rows_4.Controls.Add(Template_Rows4_Cell_3);
  1065. Template_Rows_4.Controls.Add(Template_Rows4_Cell_4);
  1066. Template_Rows_4.Controls.Add(Template_Rows4_Cell_5);
  1067. Template_Rows_4.Controls.Add(Template_Rows4_Cell_6);
  1068. Template_Rows_4.Controls.Add(Template_Rows4_Cell_7);
  1069. Template_Rows_4.Controls.Add(Template_Rows4_Cell_8);
  1070. Template_Rows_4.Controls.Add(Template_Rows4_Cell_9);
  1071. Template_Rows_4.Controls.Add(Template_Rows4_Cell_10);
  1072. Template.Rows.Add(Template_Rows_1);
  1073. Template.Rows.Add(Template_Rows_2);
  1074. Template.Rows.Add(Template_Rows_3);
  1075. Template.Rows.Add(Template_Rows_4);
  1076. Template.Rows[0].BackColor = Color.DarkGray;
  1077. Template.Rows[2].BackColor = Color.DarkGray;
  1078. Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
  1079. Template.SizeF = new SizeF(688f, 30);
  1080. Template.Font= new Font(dataFont, 14f);
  1081. return Template;
  1082. }
  1083. #endregion
  1084. }
  1085. public class ParticleSizeDEVData
  1086. {
  1087. public string size_Class { get; set; }
  1088. public string size_Name { get; set; }
  1089. public string size_total { get; set; }
  1090. public string size_1 { get; set; }
  1091. public string size_2 { get; set; }
  1092. public string size_3 { get; set; }
  1093. public string size_4 { get; set; }
  1094. public string size_5 { get; set; }
  1095. public string size_6 { get; set; }
  1096. public string size_7 { get; set; }
  1097. }
  1098. public class ElementalAnalysisDEVData
  1099. {
  1100. public string classify { get; set; }
  1101. public string subdivision { get; set; }
  1102. public string Area { get; set; }
  1103. public string s1 { get; set; }
  1104. public string s2 { get; set; }
  1105. public string s3 { get; set; }
  1106. public string s4 { get; set; }
  1107. public string s5 { get; set; }
  1108. public string s6 { get; set; }
  1109. public string s7 { get; set; }
  1110. public string s8 { get; set; }
  1111. public string s9 { get; set; }
  1112. public string s10 { get; set; }
  1113. }
  1114. public class AreaOfInclusionDEVData
  1115. {
  1116. public string classify { get; set; }
  1117. public string subdivision { get; set; }
  1118. public string Area { get; set; }
  1119. public string inca_proportion { get; set; }
  1120. public string inca_FieldRatio { get; set; }
  1121. }
  1122. }