123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304 |
- using DevExpress.XtraReports.UI;
- using OTSIncAReportApp.OTSTemplateDesigner;
- using OTSIncAReportGrids;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using static OTSIncAReportApp.OTSReport_Export;
- namespace OTSIncAReportApp.ReportTemplate
- {
- public partial class GBReport : DevExpress.XtraReports.UI.XtraReport
- {
- string typeface = "微软雅黑";
- public OTSReport_Export m_otsreport_export;
- float LowPlace = 1000f;
- GBData m_export_reporttemplate;
- public GBReport(OTSReport_Export in_export)
- {
- m_otsreport_export = in_export;
- m_export_reporttemplate = new GBData(in_export);
- InitializeComponent();
- }
- private void setXRLabelData(XRLabel cell, string str)
- {
- cell.Text = str;
- cell.Font = new Font(typeface, cell.Font.Size);
- }
- private string GetlanguageData(string strName, DataTable languageData)
- {
- for (int i = 0; i < languageData.Rows.Count; i++)
- {
- if (strName == languageData.Rows[i]["Name"].ToString())
- {
- return languageData.Rows[i]["Text"].ToString();
- }
- }
- return "";
- }
- //国际化
- public void International_language(DataTable languageData)
- {
- setXRLabelData(GB_dev_ym, GetlanguageData(GB_dev_ym.Name.ToString(), languageData));//表头
- setXRLabelData(GB_bt, GetlanguageData(GB_bt.Name.ToString(), languageData));//标题
- setXRLabelData(GB_dev_ypsm, GetlanguageData(GB_dev_ypsm.Name.ToString(), languageData));//样品说明
- setXRLabelData(GB_dev_jcjgwj, GetlanguageData(GB_dev_jcjgwj.Name.ToString(), languageData));//测量结果名称:
- setXRLabelData(GB_dev_cljggk, GetlanguageData(GB_dev_cljggk.Name.ToString(), languageData));//测量结果概况
- setXRLabelData(GB_dev_yxsj, GetlanguageData(GB_dev_yxsj.Name.ToString(), languageData));//运行时间:
- setXRLabelData(GB_dev_flfa, GetlanguageData(GB_dev_flfa.Name.ToString(), languageData));//分类方案:
- setXRLabelData(GB_dev_scmj, GetlanguageData(GB_dev_scmj.Name.ToString(), languageData));//视场面积:
- setXRLabelData(GB_dev_sczs, GetlanguageData(GB_dev_sczs.Name.ToString(), languageData));//视场总数:
- setXRLabelData(GB_dev_yjctz, GetlanguageData(GB_dev_yjctz.Name.ToString(), languageData));//已检查特征:
- setXRLabelData(GB_dev_ckbz, GetlanguageData(GB_dev_ckbz.Name.ToString(), languageData));//参考标准:
- }
- public void set_GB_Method(List<DataTable> GB_List,List<string> GB1_NameList,string GBName)
- {
- XRPageBreak xRPage = new XRPageBreak();
- xRPage.LocationF = new PointF(0, LowPlace + 2);
- this.Detail.Controls.Add(xRPage);
- LowPlace = LowPlace + 4;
- XRLabel GBNameLabel = new XRLabel();
- GBNameLabel.SizeF = new SizeF(640, 0);
- GBNameLabel.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
- GBNameLabel.Text = GBName;
- GBNameLabel.LocationF = new PointF(5, LowPlace);
- GBNameLabel.Font = new Font(typeface, 24);
- this.Detail.Controls.Add(GBNameLabel);
- LowPlace = LowPlace + GBNameLabel.SizeF.Height;
- GB_NameData(out DataTable HeaderData, out DataTable HeaderData_DS);//获取标准表头
- XRTable Template = new XRTable();
- for (int a = 0; a < GB_List.Count - 1; a++)
- {
- XRTableRow Template_Rows_A_Class = new XRTableRow();
- XRTableCell Template_Rows_A_cell = new XRTableCell();
- Template_Rows_A_cell.WidthF = 640f;
- Template_Rows_A_cell.Text = GB1_NameList[a];
- Template_Rows_A_Class.Controls.Add(Template_Rows_A_cell);
- Template_Rows_A_Class.BackColor = Color.DarkGray;
- Template.Rows.Add(Template_Rows_A_Class);
- Template.Rows.Add(GB_Class_dataRow(HeaderData, 0));
- for (int i = 0; i < GB_List[a].Rows.Count; i++)
- {
- Template.Rows.Add(GB_Class_dataRow(GB_List[a], i));
- }
- }
- XRTableRow Template_Rows_A_Class_DS = new XRTableRow();
- XRTableCell Template_Rows_A_cell_DS = new XRTableCell();
- Template_Rows_A_cell_DS.WidthF = 640f;
- Template_Rows_A_cell_DS.Text = GB1_NameList[GB1_NameList.Count - 1];
- Template_Rows_A_Class_DS.Controls.Add(Template_Rows_A_cell_DS);
- Template_Rows_A_Class_DS.BackColor= Color.DarkGray;
- Template.Rows.Add(Template_Rows_A_Class_DS);
- Template.Rows.Add(GB_Class_dataRows_DS(HeaderData_DS, 0));
- for (int i = 0; i < GB_List[GB_List.Count - 1].Rows.Count; i++)
- {
- Template.Rows.Add(GB_Class_dataRows_DS(GB_List[GB_List.Count - 1], i));
- }
- Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
- Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
- Template.LocationF = new PointF(5, LowPlace);
- Template.SizeF = new SizeF(640, 0);
- Template.Font = new Font(typeface, Template.Font.Size);
- this.Detail.Controls.Add(Template);
- LowPlace = LowPlace + Template.SizeF.Height + 50;
- }
- private XRTableRow GB_Class_dataRow(DataTable dt,int index)
- {
- XRTableRow Template_Rows_A_Class_data = new XRTableRow();
- XRTableCell Template_Rows_A_cell_data_Class = new XRTableCell();
- Template_Rows_A_cell_data_Class.WidthF = 73.96f;
- Template_Rows_A_cell_data_Class.Text = dt.Rows[index]["Class"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_Class);
- XRTableCell Template_Rows_A_cell_data_Width = new XRTableCell();
- Template_Rows_A_cell_data_Width.WidthF = 85.42f;
- Template_Rows_A_cell_data_Width.Text = dt.Rows[index]["Width/um"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_Width);
- XRTableCell Template_Rows_A_cell_data_1 = new XRTableCell();
- Template_Rows_A_cell_data_1.WidthF = 43.69f;
- Template_Rows_A_cell_data_1.Text = dt.Rows[index]["0.0"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_1);
- XRTableCell Template_Rows_A_cell_data_2 = new XRTableCell();
- Template_Rows_A_cell_data_2.WidthF = 43.69f;
- Template_Rows_A_cell_data_2.Text = dt.Rows[index]["0.5"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_2);
- XRTableCell Template_Rows_A_cell_data_3 = new XRTableCell();
- Template_Rows_A_cell_data_3.WidthF = 43.69f;
- Template_Rows_A_cell_data_3.Text = dt.Rows[index]["1.0"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_3);
- XRTableCell Template_Rows_A_cell_data_4 = new XRTableCell();
- Template_Rows_A_cell_data_4.WidthF = 43.69f;
- Template_Rows_A_cell_data_4.Text = dt.Rows[index]["1.5"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_4);
- XRTableCell Template_Rows_A_cell_data_5 = new XRTableCell();
- Template_Rows_A_cell_data_5.WidthF = 43.69f;
- Template_Rows_A_cell_data_5.Text = dt.Rows[index]["2.0"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_5);
- XRTableCell Template_Rows_A_cell_data_6 = new XRTableCell();
- Template_Rows_A_cell_data_6.WidthF = 43.69f;
- Template_Rows_A_cell_data_6.Text = dt.Rows[index]["2.5"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_6);
- XRTableCell Template_Rows_A_cell_data_7 = new XRTableCell();
- Template_Rows_A_cell_data_7.WidthF = 43.69f;
- Template_Rows_A_cell_data_7.Text = dt.Rows[index]["3.0"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_7);
- XRTableCell Template_Rows_A_cell_data_8 = new XRTableCell();
- Template_Rows_A_cell_data_8.WidthF = 43.69f;
- Template_Rows_A_cell_data_8.Text = dt.Rows[index]["3.5"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_8);
- XRTableCell Template_Rows_A_cell_data_9 = new XRTableCell();
- Template_Rows_A_cell_data_9.WidthF = 43.69f;
- Template_Rows_A_cell_data_9.Text = dt.Rows[index]["4.0"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_9);
- XRTableCell Template_Rows_A_cell_data_10 = new XRTableCell();
- Template_Rows_A_cell_data_10.WidthF = 43.69f;
- Template_Rows_A_cell_data_10.Text = dt.Rows[index]["4.5"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_10);
- XRTableCell Template_Rows_A_cell_data_11 = new XRTableCell();
- Template_Rows_A_cell_data_11.WidthF = 43.69f;
- Template_Rows_A_cell_data_11.Text = dt.Rows[index]["5.0"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_11);
-
- return Template_Rows_A_Class_data;
- }
- private XRTableRow GB_Class_dataRows_DS(DataTable dt, int index)
- {
- XRTableRow Template_Rows_A_Class_data = new XRTableRow();
- XRTableCell Template_Rows_A_cell_data_Class = new XRTableCell();
- Template_Rows_A_cell_data_Class.WidthF = 106.67f;
- Template_Rows_A_cell_data_Class.Text = dt.Rows[index]["No."].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_Class);
- XRTableCell Template_Rows_A_cell_data_Area = new XRTableCell();
- Template_Rows_A_cell_data_Area.WidthF = 106.67f;
- Template_Rows_A_cell_data_Area.Text = dt.Rows[index]["Area/um2"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_Area);
- XRTableCell Template_Rows_A_cell_data_MaxFeret = new XRTableCell();
- Template_Rows_A_cell_data_MaxFeret.WidthF = 106.67f;
- Template_Rows_A_cell_data_MaxFeret.Text = dt.Rows[index]["MaxFeret/um"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_MaxFeret);
- XRTableCell Template_Rows_A_cell_data_X = new XRTableCell();
- Template_Rows_A_cell_data_X.WidthF = 106.67f;
- Template_Rows_A_cell_data_X.Text = dt.Rows[index]["X/um"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_X);
- XRTableCell Template_Rows_A_cell_data_Y = new XRTableCell();
- Template_Rows_A_cell_data_Y.WidthF = 106.67f;
- Template_Rows_A_cell_data_Y.Text = dt.Rows[index]["Y/um"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_Y);
- XRTableCell Template_Rows_A_cell_data_Grade = new XRTableCell();
- Template_Rows_A_cell_data_Grade.WidthF = 106.67f;
- Template_Rows_A_cell_data_Grade.Text = dt.Rows[index]["Grade"].ToString();
- Template_Rows_A_Class_data.Controls.Add(Template_Rows_A_cell_data_Grade);
- return Template_Rows_A_Class_data;
- }
- private void GB_NameData(out DataTable GBName_dt ,out DataTable GBName_dt_DS)
- {
- DataTable HeaderData = new DataTable();
- HeaderData.Columns.Add("Class");
- HeaderData.Columns.Add("Width/um");
- HeaderData.Columns.Add("0.0");
- HeaderData.Columns.Add("0.5");
- HeaderData.Columns.Add("1.0");
- HeaderData.Columns.Add("1.5");
- HeaderData.Columns.Add("2.0");
- HeaderData.Columns.Add("2.5");
- HeaderData.Columns.Add("3.0");
- HeaderData.Columns.Add("3.5");
- HeaderData.Columns.Add("4.0");
- HeaderData.Columns.Add("4.5");
- HeaderData.Columns.Add("5.0");
- DataRow dr = HeaderData.NewRow();
- dr["Class"] = "Class";
- dr["Width/um"] = "Width/um";
- dr["0.0"] = "0.0";
- dr["0.5"] = "0.5";
- dr["1.0"] = "1.0";
- dr["1.5"] = "1.5";
- dr["2.0"] = "2.0";
- dr["2.5"] = "2.5";
- dr["3.0"] = "3.0";
- dr["3.5"] = "3.5";
- dr["4.0"] = "4.0";
- dr["4.5"] = "4.5";
- dr["5.0"] = "5.0";
- HeaderData.Rows.Add(dr);
- GBName_dt = HeaderData.Copy();
- DataTable HeaderData_DS = new DataTable();
- HeaderData_DS.Columns.Add("No.");
- HeaderData_DS.Columns.Add("Area/um2");
- HeaderData_DS.Columns.Add("MaxFeret/um");
- HeaderData_DS.Columns.Add("X/um");
- HeaderData_DS.Columns.Add("Y/um");
- HeaderData_DS.Columns.Add("Grade");
- DataRow dr_DS = HeaderData_DS.NewRow();
- dr_DS["No."] = "No.";
- dr_DS["Area/um2"] = "Area/um2";
- dr_DS["MaxFeret/um"] = "MaxFeret/um";
- dr_DS["X/um"] = "X/um";
- dr_DS["Y/um"] = "Y/um";
- dr_DS["Grade"] = "Grade";
- HeaderData_DS.Rows.Add(dr_DS);
- GBName_dt_DS = HeaderData_DS.Copy();
- }
- /// <summary>
- /// 首页部分数据插入
- /// </summary>
- /// <param name="m_mbszclass"></param>
- public void setResultGrid(c_TemplateClass m_mbszclass)
- {
- #region 从Grid表中读取样品数据
- //------------------加载模块,获取数据-------------------------------------------------
- ResultGrid ls_resultgrid = new ResultGrid(m_otsreport_export.m_ReportApp);
- Dictionary<string, string> keyValues_ResultGrid = ls_resultgrid.GetData_ResultGrid_Report();
- //------------------加载模块,获取数据结束----------------------------------------------
- Dictionary<string, string>.Enumerator en = keyValues_ResultGrid.GetEnumerator();
- keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col1"].ToString(), out string str_CLJGMC);//测量结果名称
- keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col4"].ToString(), out string str_YXSJ);//运行时间
- keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col5"].ToString(), out string str_SCZS);//视场总数
- keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col6"].ToString(), out string str_FLFA);//分类方案
- keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col7"].ToString(), out string str_YJCTZ);//已检测特征
- keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col8"].ToString(), out string str_SCMJ);//视场面积
- keyValues_ResultGrid.TryGetValue("Magnification", out string Magnification);//放大倍数
- #endregion
- setXRLabelData(GB_dev_jcjgwj_text, str_CLJGMC);
- setXRLabelData(GB_dev_yxsj_text, str_YXSJ);
- setXRLabelData(GB_dev_sczs_text, str_SCZS);
- setXRLabelData(GB_dev_flfa_text, str_FLFA);
- setXRLabelData(GB_dev_yjctz_text, str_YJCTZ);
- setXRLabelData(GB_dev_scmj_text, str_SCMJ);
- setXRLabelData(GB_dev_ckbz_text, "GB30834");
- }
- }
- }
|