Explorar o código

报告导出首页表格进行修改

zhangjiaxin hai 1 ano
pai
achega
3310ba26f7

+ 1 - 1
Bin/x64/Debug/Config/ReportTemplate/SummaryInfo.xml

@@ -1,6 +1,6 @@
 <XmlConfig>
   <M_address>
     <Path>ReportTemplateConfig.xml</Path>
-    <Path_CA>ReportTemplateConfig - 副本.xml</Path_CA>
+    <Path_CA>ReportTemplateConfig.xml</Path_CA>
   </M_address>
 </XmlConfig>

BIN=BIN
Bin/x64/Debug/Config/ReportTemplate/language.db


+ 26 - 2
Bin/x64/Debug/Config/SysData/OTSStage.stg

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<XMLData Modify="true" PathName=".\Config\SysData\OTSStage.stg" WorkingStageId="0">
+<XMLData Modify="true" PathName=".\Config\SysData\OTSStage.stg" WorkingStageId="3">
   <Collection RegName="Stagelist">
     <Member strName="圆形九圆孔50mm">
       <Member RegName="boundary" PolygonPoint="" rectDomian="0,0,50000,0" shape="0:ROUND" />
@@ -54,7 +54,7 @@
         <Member HoleName="7" rectDomian="-23000,0,15000,0" shape="0" />
       </Collection>
     </Member>
-    <Member strName="Apero12_90">
+    <Member strName="Apero90mm">
       <Member RegName="boundary" PolygonPoint="" rectDomian="0,0,90000,90000" shape="1:RECTANGLE" />
       <Member RegName="std" PolygonPoint="" rectDomian="6300,0,2,0" shape="0:ROUND" />
       <Collection RegName="Holes">
@@ -78,5 +78,29 @@
         <Member HoleName="18" rectDomian="-14500,-24500,12000,0" shape="0" />
       </Collection>
     </Member>
+    <Member strName="Apero">
+      <Member RegName="boundary" PolygonPoint="" rectDomian="0,0,130000,120000" shape="1:RECTANGLE" />
+      <Member RegName="std" PolygonPoint="" rectDomian="6300,0,2,0" shape="0:ROUND" />
+      <Collection RegName="Holes">
+        <Member HoleName="9" rectDomian="0,0,10000,0" shape="0" />
+        <Member HoleName="2" rectDomian="0,25000,10000,0" shape="0" />
+        <Member HoleName="3" rectDomian="-15000,25000,10000,0" shape="0" />
+        <Member HoleName="1" rectDomian="15000,25500,10000,0" shape="0" />
+        <Member HoleName="4" rectDomian="22000,13000,10000,0" shape="0" />
+        <Member HoleName="5" rectDomian="7000,13000,10000,0" shape="0" />
+        <Member HoleName="6" rectDomian="-7500,13000,10000,0" shape="0" />
+        <Member HoleName="7" rectDomian="-22500,13000,10000,0" shape="0" />
+        <Member HoleName="8" rectDomian="14000,0,10000,0" shape="0" />
+        <Member HoleName="10" rectDomian="-15000,0,10000,0" shape="0" />
+        <Member HoleName="11" rectDomian="-30000,0,10000,0" shape="0" />
+        <Member HoleName="12" rectDomian="22000,-12500,10000,0" shape="0" />
+        <Member HoleName="13" rectDomian="7000,-12500,10000,0" shape="0" />
+        <Member HoleName="14" rectDomian="-7500,-12500,10000,0" shape="0" />
+        <Member HoleName="15" rectDomian="-22500,-12500,10000,0" shape="0" />
+        <Member HoleName="16" rectDomian="14500,-24500,10000,0" shape="0" />
+        <Member HoleName="17" rectDomian="-500,-24500,10000,0" shape="0" />
+        <Member HoleName="18" rectDomian="-14500,-24500,10000,0" shape="0" />
+      </Collection>
+    </Member>
   </Collection>
 </XMLData>

+ 28 - 14
OTSIncAReportApp/1-UI/Control_Grids/ResultGrid.cs

@@ -202,6 +202,26 @@ namespace OTSIncAReportGrids
             DateTime star = new DateTime();
             DateTime end = new DateTime();
 
+            //int filedCount = fielddata.GetFiledCount();
+            //double wide = resfile.GetImageWidth();
+            //double high = resfile.GetImageHeight();
+            //double pixelSize = resfile.GetPixelSize();
+            //double filedsArea = Math.Round(high * wide * pixelSize * pixelSize * filedCount, 2);
+            //int particleArea = fielddata.GetparticleArea();
+            //string xmlpath = Application.StartupPath + RptConfigFile.m_ReportMgrParamFile;
+            //DataSet ds = XMLoperate.GetXmlData(xmlpath, "XMLData");
+            //DataTable dt1 = ds.Tables["Member"];
+            //string sizestr = "1000";
+            //for (int i = 0; i < dt1.Rows.Count; i++)
+            //{
+            //    if (dt1.Rows[i]["RegName"].ToString() == "Scale")
+            //    {
+            //        sizestr = dt1.Rows[i]["strValue"].ToString();
+            //        break;
+            //    }
+            //}
+            //double ratio = Math.Round(particleArea / filedsArea * double.Parse(sizestr), 3);
+
             System.Globalization.DateTimeFormatInfo dtFormat = new System.Globalization.DateTimeFormatInfo();
             dtFormat.ShortDatePattern = "dd/MM/yyyy hh:mm:ss";
 
@@ -222,26 +242,16 @@ namespace OTSIncAReportGrids
             }
             TimeSpan timeSpan = end - star;
             int all_FiledCount = resfile.GetTotalFields();
-            ////当前屏幕尺寸/µm
-            //double ScanFieldSize = resfile.GetScanFieldSizeX();
-            ////100倍时屏幕尺寸/µm
-            //double ScanFieldSize100 = resfile.GetScanFieldSizeX100();
-            //double  Magnification = ScanFieldSize100 / ScanFieldSize * 100;
-
             double Magnification = resfile.GetMeasurementMagnification();
             int filedCount = fielddata.GetFiledCount();
-            //Dictionary<string, object> sampleMembers = ((Dictionary<string, object>)((Dictionary<string, object>)resfile.ResultInfo["Sample"])["Members"]);
-            //Dictionary<string, object> semDataMsr = (Dictionary<string, object>)sampleMembers["SEMDataMsr"];
-            //double scanFieldSize = resfile.GetScanFieldSizeX();
-            //Dictionary<string, object> imageScanParam = (Dictionary<string, object>)((Dictionary<string, object>)((Dictionary<string, object>)sampleMembers["MsrParams"])["Members"])["ImageScanParam"];
-            //string ImageResolution = imageScanParam["ImageResolution"].ToString();
+
             double wide = resfile.GetImageWidth();
             double high = resfile.GetImageHeight();
             double pixelSize = resfile.GetPixelSize();
             double filedsArea = Math.Round(high * wide * pixelSize * pixelSize * filedCount, 2);
             int particleArea = fielddata.GetparticleArea();
 
-            double ratio = particleArea / filedsArea;
+            //double ratio = particleArea / filedsArea;
 
             //报告参数文件
             string xmlpath = Application.StartupPath + RptConfigFile.m_ReportMgrParamFile;
@@ -256,11 +266,13 @@ namespace OTSIncAReportGrids
                     break;
                 }
             }
-            
+
+            double ratio = Math.Round(particleArea / filedsArea * double.Parse(sizestr), 3);
+
             keyValues.Add(table["col2"].ToString(), star.ToString("yyyy-MM-dd HH:mm:ss"));
             keyValues.Add(table["col3"].ToString(), end.ToString("yyyy-MM-dd HH:mm:ss"));
             keyValues.Add(table["col4"].ToString(), Math.Round(timeSpan.TotalMinutes, 2).ToString() + "mins");
-            keyValues.Add(table["col5"].ToString(), all_FiledCount.ToString());
+            keyValues.Add(table["col5"].ToString(), filedCount.ToString());
 
             string LibraryName = "";
             string rstSTD = resfile.GetSTDName();
@@ -283,6 +295,8 @@ namespace OTSIncAReportGrids
             keyValues.Add(table["col11"].ToString(), sizestr);
             keyValues.Add("Magnification", Math.Round(Magnification,2).ToString());
 
+           
+
             return keyValues;
         }
 

+ 2 - 0
OTSIncAReportApp/1-UI/OTSReportExport/DataIntegration/TableHeaderData.cs

@@ -26,6 +26,7 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
             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);//放大倍数
+            keyValues_ResultGrid.TryGetValue(ls_resultgrid.table["col10"].ToString(), out string InclusionIndex);//特征/夹杂物指数
 
             DataTable data = new DataTable();
             data.Columns.Add("Name");
@@ -37,6 +38,7 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
             data.Rows.Add("已检测特征", str_YJCTZ);
             data.Rows.Add("视场面积", str_SCMJ);
             data.Rows.Add("放大倍数", Magnification);
+            data.Rows.Add("特征/夹杂物指数",InclusionIndex);
             return data;
         }
 

+ 6 - 1
OTSIncAReportApp/1-UI/OTSReportExport/OTSReport_Export.cs

@@ -684,7 +684,12 @@ namespace OTSIncAReportApp
                     richTextBox1.AppendText(table["measurement_result"].ToString() + "\n");
                     richTextBox1.AppendText(table["loading"].ToString() + Math.Round(d1, length).ToString() + "%\n");
                     DEVReport.International_language(dev_internationalLanguage());
-                    DEVReport.setResultGrid();
+                    bool isINCA = false;
+                    if (m_ReportApp.m_RptConfigFile.Systype != OTS_SysType_ID.CleannessA)
+                    {
+                        isINCA = true;
+                    }
+                        DEVReport.setResultGrid(dev_internationalLanguage(), isINCA);
                     richTextBox1.ScrollToCaret();
                 }
             }

+ 42 - 3
OTSIncAReportApp/1-UI/OTSReportExport/Template/DataTemplate.cs

@@ -121,7 +121,7 @@ namespace OTSIncAReportApp._1_UI.OTSTemplateDesigner
         /// 首页部分数据插入
         /// </summary>ReportIdentification
         /// <param name="TemplateClass"></param>
-        public void setResultGrid()
+        public void setResultGrid(DataTable a_languageData,bool a_isINCA)
         {
             xrChart_ParticelSizeCalss.Visible = false;
             xrChart_ParticelSizeSubdivision.Visible = false;
@@ -147,9 +147,12 @@ namespace OTSIncAReportApp._1_UI.OTSTemplateDesigner
             setXRLabelData(dev_fbt, TemplateClass.M_SY.str_tb_FBT.ToString());//副标题
             setXRLabelData(dev_ypbh_text_up, TemplateClass.M_SY.str_tb_YPBH.ToString());//样品编号
             setXRLabelData(dev_bgsj_text_up, DateTime.Now.ToShortDateString().ToString());//当前日期
-            //setXRLabelData(dev_jcjgwj_text_up, data.Rows[0][1].ToString());//测量结果名称
-            //setXRLabelData(dev_ckbz_text_up, TemplateClass.M_SY.str_tb_CKBZ.ToString());//参考标准
+
             #endregion
+            if (a_isINCA)
+                xrTable1.Rows.Add(AddInclusionIndex(a_languageData, data.Rows[7][1].ToString()));
+
+            
         }
    
         private void add_SetTableS(List<DataTable> CompositeData, DataTable surface_dt2)
@@ -898,6 +901,42 @@ namespace OTSIncAReportApp._1_UI.OTSTemplateDesigner
             row.Controls.Add(tCell_data);
             return row;
         }
+        private XRTableRow AddInclusionIndex(DataTable a_data,string a_str)
+        {
+            XRTableRow row = new XRTableRow();
+            XRTableCell tCell_Name = new XRTableCell();
+            XRTableCell tCell_Text = new XRTableCell();
+            XRTableCell tCell_Notes = new XRTableCell();
+
+            string name = "";
+            string notes = "";
+            for (int i=0;i< a_data.Rows.Count;i++)
+            {
+                if (languageData.Rows[i]["Name"].ToString()== "tCell_Name")
+                {
+                    name = languageData.Rows[i]["Text"].ToString();
+                }
+                if (languageData.Rows[i]["Name"].ToString() == "tCell_Notes")
+                {
+                    notes = languageData.Rows[i]["Text"].ToString();
+                }
+            }
+            tCell_Name.Font = new Font(Schriftart_chinese, tCell_Name.Font.Size);
+            tCell_Name.Text = name;
+            tCell_Name.WidthF = 157.5f;
+            tCell_Text.Font = new Font(Schriftart_chinese, tCell_Text.Font.Size);
+            tCell_Text.Text = a_str;
+            tCell_Text.WidthF = 157.5f;
+            tCell_Notes.Font = new Font(Schriftart_chinese, tCell_Notes.Font.Size);
+            tCell_Notes.Text = notes;
+            tCell_Notes.WidthF = 315f;
+            row.Cells.Add(tCell_Name);
+            row.Cells.Add(tCell_Text);
+            row.Cells.Add(tCell_Notes);
+
+            row.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
+            return row;
+        }
 
         private void add_SetINCAtableS(DataTable a_data)
         {