浏览代码

Merge branch 'OTSRelease3_0' of http://36.129.163.148:30080/gogsadmin/OTS into OTSRelease3_0

cxs 8 月之前
父节点
当前提交
cb3a96b1e0

+ 152 - 0
Bin/x64/Debug/Config/ReportTemplate/TCleannessA_Template/ReportTemplateConfig.xml

@@ -0,0 +1,152 @@
+<XmlConfig>
+  <M_SY>
+    <str_tb_ZBT>Cleanness Report</str_tb_ZBT>
+    <str_tb_FBT>有限公司</str_tb_FBT>
+    <str_tb_YPBH>0001</str_tb_YPBH>
+    <str_tb_CKBZ>
+    </str_tb_CKBZ>
+    <b_ck_ypsm>True</b_ck_ypsm>
+    <b_ck_jggk>True</b_ck_jggk>
+    <str_bz>
+    </str_bz>
+    <str_xzkl>全部颗粒</str_xzkl>
+    <int_xzkl>0</int_xzkl>
+    <LOGName>ReportIdentification.bmp</LOGName>
+    <StandardLibraryName>
+    </StandardLibraryName>
+  </M_SY>
+  <M_YMYJ>
+    <str_tb_ymwb>锂电异物分析报告</str_tb_ymwb>
+    <str_tb_KHH>Copi0000123012</str_tb_KHH>
+    <b_ck_ym>True</b_ck_ym>
+    <str_tb_yjwb>OTS Result</str_tb_yjwb>
+  </M_YMYJ>
+  <M_KLFXJG>
+    <b_ck_klcc_xsmk>True</b_ck_klcc_xsmk>
+    <index_cb_klcc_jsfs>0</index_cb_klcc_jsfs>
+    <index_cb_klcc_ljb>0</index_cb_klcc_ljb>
+    <index_cb_klcc_klfw>0</index_cb_klcc_klfw>
+    <b_cb_jzwfl_xsmk>True</b_cb_jzwfl_xsmk>
+    <index_cb_jzwfl_xstx>0</index_cb_jzwfl_xstx>
+    <index_cb_jzwfl_jsfs>0</index_cb_jzwfl_jsfs>
+    <index_cb_jzwfl_ljb>0</index_cb_jzwfl_ljb>
+    <index_cb_jzwfl_klfw>0</index_cb_jzwfl_klfw>
+    <str_cb_klcc_jsfs>DMAX</str_cb_klcc_jsfs>
+    <b_ck_klcc_xsddt>True</b_ck_klcc_xsddt>
+    <b_ck_klcc_dfl>True</b_ck_klcc_dfl>
+    <b_ck_klcc_xfl>True</b_ck_klcc_xfl>
+    <str_cb_klcc_ljb>j4.psf</str_cb_klcc_ljb>
+  </M_KLFXJG>
+  <M_YSFXJG>
+    <b_ck_ysfx_xsmk>True</b_ck_ysfx_xsmk>
+    <index_cb_yxfx_jsfs>0</index_cb_yxfx_jsfs>
+    <index_cb_ysfx_klfw>0</index_cb_ysfx_klfw>
+    <str_tb_ysfx_xsys>Al,Si,C,S,N,O,Fe,Ti,Mn,Mg,Ca,Ce,La</str_tb_ysfx_xsys>
+    <list_str_tb_ysfx_xsys>
+      <YS0>Al</YS0>
+      <YS1>Si</YS1>
+      <YS2>C</YS2>
+      <YS3>S</YS3>
+      <YS4>N</YS4>
+      <YS5>O</YS5>
+      <YS6>Fe</YS6>
+      <YS7>Ti</YS7>
+      <YS8>Mn</YS8>
+      <YS9>Mg</YS9>
+      <YS10>Ca</YS10>
+      <YS11>Ce</YS11>
+      <YS12>La</YS12>
+    </list_str_tb_ysfx_xsys>
+    <b_ck_yscf_xsmk>True</b_ck_yscf_xsmk>
+    <index_cb_yscf_xstx>0</index_cb_yscf_xstx>
+    <index_cb_yscf_jsfs>0</index_cb_yscf_jsfs>
+    <index_cb_yscf_klfw>0</index_cb_yscf_klfw>
+    <str_tb_yscf_ysxx>H</str_tb_yscf_ysxx>
+    <list_str_tb_yscf_ysxx>
+      <YS0>H</YS0>
+    </list_str_tb_yscf_ysxx>
+  </M_YSFXJG>
+  <M_SYXT>
+    <b_ck_syxt_xsmk>False</b_ck_syxt_xsmk>
+    <index_cb_syxt_jsfs>0</index_cb_syxt_jsfs>
+    <index_cb_syxt_klfw>0</index_cb_syxt_klfw>
+    <str_cb_syxt_mhxssl>2</str_cb_syxt_mhxssl>
+    <list_lbv_syxt_mblb>
+      <MB0>MgO.CaO.Al₂O₃</MB0>
+      <MB1>CaO.SiO₂.Al₂O₃</MB1>
+    </list_lbv_syxt_mblb>
+    <list_lbv_syxt_mblb_index>
+      <MBIndex0>0</MBIndex0>
+      <MBIndex1>2</MBIndex1>
+    </list_lbv_syxt_mblb_index>
+    <str_cb_syxt_ljb>
+    </str_cb_syxt_ljb>
+  </M_SYXT>
+  <M_KLLBXX>
+    <b_ck_kllb_xsmk>True</b_ck_kllb_xsmk>
+    <index_cb_kllb_jsfs>0</index_cb_kllb_jsfs>
+    <index_cb_kllb_klfw>0</index_cb_kllb_klfw>
+    <int_tb_kllb_ylsx>1</int_tb_kllb_ylsx>
+    <str_tb_kllb_sxys>O,Al,Mg,Ca,Ti,Si,S,Mn</str_tb_kllb_sxys>
+    <list_str_tb_lllb_sxys>
+      <YS0>O</YS0>
+      <YS1>Al</YS1>
+      <YS2>Mg</YS2>
+      <YS3>Ca</YS3>
+      <YS4>Ti</YS4>
+      <YS5>Si</YS5>
+      <YS6>S</YS6>
+      <YS7>Mn</YS7>
+    </list_str_tb_lllb_sxys>
+    <b_ck_kllb_ystx>True</b_ck_kllb_ystx>
+    <b_ck_kllb_fdtx>False</b_ck_kllb_fdtx>
+    <b_ck_kllb_npxx>True</b_ck_kllb_npxx>
+    <str_cb_kllb_sort>Hardness</str_cb_kllb_sort>
+    <index_cb_kllb_sort>2</index_cb_kllb_sort>
+    <index_cb_kllb_sort_p1>1</index_cb_kllb_sort_p1>
+    <str_cb_kllb_sort_p2>Area</str_cb_kllb_sort_p2>
+    <index_cb_kllb_sort_p2>0</index_cb_kllb_sort_p2>
+    <str_cb_kllb_sort_p3>AveGray</str_cb_kllb_sort_p3>
+    <index_cb_kllb_sort_p3>3</index_cb_kllb_sort_p3>
+    <str_cb_kllb_chartSort_p1>Area</str_cb_kllb_chartSort_p1>
+    <index_cb_kllb_chartSort_p1>0</index_cb_kllb_chartSort_p1>
+    <str_cb_kllb_chartSort_p2>DMAX</str_cb_kllb_chartSort_p2>
+    <index_cb_kllb_chartSort_p2>1</index_cb_kllb_chartSort_p2>
+    <str_cb_kllb_chartSort_p3>AveGray</str_cb_kllb_chartSort_p3>
+    <index_cb_kllb_chartSort_p3>2</index_cb_kllb_chartSort_p3>
+    <str_cb_kllb_sort_p1>DMAX</str_cb_kllb_sort_p1>
+    <b_ck_kllb_fjzt>True</b_ck_kllb_fjzt>
+    <list_str_kllb_qcys>
+    </list_str_kllb_qcys>
+    <str_kllb_qcys>
+    </str_kllb_qcys>
+    <str_kllb_DeleteClass>misc,Other Non-Magnetic</str_kllb_DeleteClass>
+    <list_str_kllb_DeleteClass>
+      <YS0>misc</YS0>
+      <YS1>Other Non-Magnetic</YS1>
+    </list_str_kllb_DeleteClass>
+    <list_int_kllb_number>20</list_int_kllb_number>
+  </M_KLLBXX>
+  <M_address>
+    <Path>./Config/ReportTemplate/ReportTemplateConfig.xml</Path>
+  </M_address>
+  <M_JZWZB>
+    <b_ck_surface>False</b_ck_surface>
+    <b_ck_chart>False</b_ck_chart>
+  </M_JZWZB>
+  <whole>
+    <list_str_MainPriority>System.Collections.Generic.List`1[System.String]</list_str_MainPriority>
+    <list_str_SecondaryPriority>System.Collections.Generic.List`1[System.String]<YS0>Nialloy</YS0><YS1>Fe-O</YS1><YS2>Fe-Cr</YS2><YS3>Fe-alloy</YS3></list_str_SecondaryPriority>
+    <str_MainPriority>
+    </str_MainPriority>
+    <str_SecondaryPriority>Nialloy,Fe-O,Fe-Cr,Fe-alloy</str_SecondaryPriority>
+    <list_str_MainPriority_Serial>System.Collections.Generic.List`1[System.String]</list_str_MainPriority_Serial>
+  </whole>
+  <M_DZ>
+    <Notes>
+    </Notes>
+  </M_DZ>
+  <M_VDA19>
+    <IsVDA19>True</IsVDA19>
+  </M_VDA19>
+</XmlConfig>

+ 2 - 1
Bin/x64/Debug/Resources/XMLData/AppResource_ZH.xml

@@ -396,7 +396,8 @@
 	<Control name="library_does_not_match" text="未找到标准库!" />
 	
 	
-	
+	<Control name="tcleannessa" text="加载VDA19模块" />
+	<Control name="tcleannessa_fail" text="VDA19模块加载失败!" />
 	
 	<Control name="dev_bgsj_up" text="报告时间:" />
 	<Control name="dev_jcjgwj_up" text="测量结果文件:" />

+ 3 - 3
OTSIncAMeasureApp/0-OTSModel/OTSDataType/COTSSample.cs

@@ -312,14 +312,14 @@ namespace OTSDataType
             double totalArea;
             if (m_poMsrArea.GetShape() == DOMAIN_SHAPE.RECTANGLE)
             {
-                totalArea = m_poMsrArea.GetRectDomain().Width * m_poMsrArea.GetRectDomain().Height;
+                totalArea = m_poMsrArea.GetRectDomain().Width * m_poMsrArea.GetRectDomain().Height * 0.000001;
 
 
             }
             else if (m_poMsrArea.GetShape() == DOMAIN_SHAPE.ROUND)
             {
 
-                totalArea = (m_poMsrArea.GetRectDomain().Width / 2) * (m_poMsrArea.GetRectDomain().Width / 2) * 3.14159;
+                totalArea = (m_poMsrArea.GetRectDomain().Width / 2) * (m_poMsrArea.GetRectDomain().Width / 2) * 3.14159 * 0.000001;
 
             }
             else 
@@ -328,7 +328,7 @@ namespace OTSDataType
                 totalArea = m_listFieldData.Count * singleFldarea;
             
             }
-            return totalArea * 0.000001;
+            return totalArea ;
         
         }
         public bool InitFieldPosData(  out List<Point> lisFieldPos, out Size iSzie)

+ 120 - 113
OTSIncAMeasureApp/1-OTSMeasure/Measure/3-MeasureFlow/CSmplMeasure.cs

@@ -644,178 +644,185 @@ namespace OTSModelSharp
 
                 for (int i = 0; i < FldDatas.Count; ++i)
                 {// check and break if stop button is clicked
-
-                    var curFld = FldDatas[i];
-                    if (curFld.GetIsMeasureComplete())
+                    try
                     {
-                        continue;
-                    }
-                    if (IsPaused())
-                    {// measure stopped			
-                        pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.PAUSED);
-                        // record end time
-                        pStatus.ComputeTime(OTS_MSR_TIME_TYPE.STOPPED);
-                        //must wait for the saving data thread  finished,or we'll get null pointer exception when we stop the measure process.			
-                        while (fieldQueue.Count() > 0)
+                        var curFld = FldDatas[i];
+                        if (curFld.GetIsMeasureComplete())
                         {
-                            Thread.Sleep(100);
+                            continue;
                         }
+                        if (IsPaused())
+                        {// measure stopped			
+                            pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.PAUSED);
+                            // record end time
+                            pStatus.ComputeTime(OTS_MSR_TIME_TYPE.STOPPED);
+                            //must wait for the saving data thread  finished,or we'll get null pointer exception when we stop the measure process.			
+                            while (fieldQueue.Count() > 0)
+                            {
+                                Thread.Sleep(100);
+                            }
 
-                        SetSEMExteralOff();
-                        // update thread measure status class, let the main thread know that this sample measurement stopped
-                        ST_MSTMsg MsgSmpStop = new ST_MSTMsg(m_Sample);
+                            SetSEMExteralOff();
+                            // update thread measure status class, let the main thread know that this sample measurement stopped
+                            ST_MSTMsg MsgSmpStop = new ST_MSTMsg(m_Sample);
 
-                        MsgSmpStop.InitSamplePausedMsg();
+                            MsgSmpStop.InitSamplePausedMsg();
 
-                        m_pMsrThread.SendMessageToMeasureGUI(MsgSmpStop);
-                        while (IsPaused())
-                        {
-                            Thread.Sleep(300);
+                            m_pMsrThread.SendMessageToMeasureGUI(MsgSmpStop);
+                            while (IsPaused())
+                            {
+                                Thread.Sleep(300);
+
+                            }
 
                         }
+                        if (IsAborted())
+                        {// measure stopped			
+                            pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.STOPPED);
+                            // record end time
+                            pStatus.ComputeTime(OTS_MSR_TIME_TYPE.STOPPED);
+                            //must wait for the saving data thread  finished,or we'll get null pointer exception when we stop the measure process.			
+                            while (fieldQueue.Count() > 0)
+                            {
+                                Thread.Sleep(100);
+                            }
+                            break;
+                        }
 
-                    }
-                    if (IsAborted())
-                    {// measure stopped			
-                        pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.STOPPED);
-                        // record end time
-                        pStatus.ComputeTime(OTS_MSR_TIME_TYPE.STOPPED);
-                        //must wait for the saving data thread  finished,or we'll get null pointer exception when we stop the measure process.			
-                        while (fieldQueue.Count() > 0)
+                        // check if sample measurement completes
+                        COTSImgScanPrm pScanParam = m_Sample.GetMsrParams().GetImageScanParam();
+
+                        if (IsSampleOver(pScanParam))
                         {
-                            Thread.Sleep(100);
+                            pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.SUCCESSED);
+                            pStatus.ComputeTime(OTS_MSR_TIME_TYPE.COMPLT);
+                            break;
                         }
-                        break;
-                    }
 
-                    // check if sample measurement completes
-                    COTSImgScanPrm pScanParam = m_Sample.GetMsrParams().GetImageScanParam();
+                        // get a field center 
+                        System.Drawing.PointF poiFieldCentre = curFld.GetOTSPosition();
 
-                    if (IsSampleOver(pScanParam))
-                    {
-                        pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.SUCCESSED);
-                        pStatus.ComputeTime(OTS_MSR_TIME_TYPE.COMPLT);
-                        break;
-                    }
+                        // update thread measure status class, let the main thread know that starts a new field
 
-                    // get a field center 
-                    System.Drawing.PointF poiFieldCentre = curFld.GetOTSPosition();
 
-                    // update thread measure status class, let the main thread know that starts a new field
+                        ST_MSTMsg MsgFieldStart = new ST_MSTMsg(m_Sample, curFld);
 
+                        MsgFieldStart.InitFieldStartMsg();
 
-                    ST_MSTMsg MsgFieldStart = new ST_MSTMsg(m_Sample, curFld);
+                        m_pMsrThread.SendMessageToMeasureGUI(MsgFieldStart);
+                        int fldNo = curFld.GetId();
+                        log.Warn("Current field:" + fldNo.ToString());
 
-                    MsgFieldStart.InitFieldStartMsg();
 
-                    m_pMsrThread.SendMessageToMeasureGUI(MsgFieldStart);
-                    int fldNo = curFld.GetId();
-                    log.Warn("Current field:" + fldNo.ToString());
 
+                        // move SEM to the field center
+                        if (!MoveSEMToPoint(poiFieldCentre))
+                        {// failed to move SEM to the position
+                            log.Error("DoMeasure: failed to move SEM to the field centre point.");
+                            pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.FAILED);
+                            // record end time
+                            pStatus.ComputeTime(OTS_MSR_TIME_TYPE.STOPPED);
+                            return;
+                        }
+                        log.Info("Begin to Acquire BSE image!");
+                        // take BSE image for the fields
+                        CBSEImgClr pBSEImg = AcquireABSEImage();
 
+                        // let the main thread to know that image process is completed
 
-                    // move SEM to the field center
-                    if (!MoveSEMToPoint(poiFieldCentre))
-                    {// failed to move SEM to the position
-                        log.Error("DoMeasure: failed to move SEM to the field centre point.");
-                        pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.FAILED);
-                        // record end time
-                        pStatus.ComputeTime(OTS_MSR_TIME_TYPE.STOPPED);
-                        return;
-                    }
-                    log.Info("Begin to Acquire BSE image!");
-                    // take BSE image for the fields
-                    CBSEImgClr pBSEImg = AcquireABSEImage();
+                        if (pBSEImg == null)
+                        {
+                            log.Error("ImageProcess: can't get BSE image.");
+                            pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.FAILED);
+                            return;
+                        }
+                        curFld.SetBSEImage(pBSEImg);
 
-                    // let the main thread to know that image process is completed
 
-                    if (pBSEImg == null)
-                    {
-                        log.Error("ImageProcess: can't get BSE image.");
-                        pStatus.SetStatus(OTS_MSR_SAMPLE_STATUS.FAILED);
-                        return;
-                    }
-                    curFld.SetBSEImage(pBSEImg);
+                        //BSEData
+                        ST_MSTMsg MsgFieldBSE = new ST_MSTMsg(m_Sample, curFld);
+                        MsgFieldBSE.InitFieldBSEImageMsg();
 
+                        m_pMsrThread.SendMessageToMeasureGUI(MsgFieldBSE);
 
-                    //BSEData
-                    ST_MSTMsg MsgFieldBSE = new ST_MSTMsg(m_Sample, curFld);
-                    MsgFieldBSE.InitFieldBSEImageMsg();
 
-                    m_pMsrThread.SendMessageToMeasureGUI(MsgFieldBSE);
+                        log.Info("Acquire BSE image success! Processing image...");
+
+                        // image process
+
+                        FieldImageProcess(curFld);
 
+                        MsgFieldBSE.InitFieldBSEAnalysisPartsDataMsg();
 
-                    log.Info("Acquire BSE image success! Processing image...");
+                        m_pMsrThread.SendMessageToMeasureGUI(MsgFieldBSE);
 
-                    // image process
+                        if (m_ifAquireClearParticleImage)
+                        {
+                            var listAnalysisParts = curFld.GetListAnalysisParticles();
+                            foreach (var p in listAnalysisParts)
+                            {
+                                Rectangle r = (Rectangle)p.GetParticleRect();
+                                var img = m_ScanHardwareMgr.AcquireRectangleBSEImage(r);
+                                if (img != null)
+                                {
+                                    curFld.particleImages.Add(img);
+                                }
+                            }
 
-                    FieldImageProcess(curFld);
+                        }
 
-                    MsgFieldBSE.InitFieldBSEAnalysisPartsDataMsg();
 
-                    m_pMsrThread.SendMessageToMeasureGUI(MsgFieldBSE);
+                        COTSXRayParam pXRayParam = m_Sample.GetMsrParams().GetXRayParam();
 
-                    if (m_ifAquireClearParticleImage)
-                    {
-                        var listAnalysisParts = curFld.GetListAnalysisParticles();
-                        foreach (var p in listAnalysisParts)
+                        if (pXRayParam.GetUsingXray() == true)
                         {
-                            Rectangle r = (Rectangle)p.GetParticleRect();
-                            var img = m_ScanHardwareMgr.AcquireRectangleBSEImage(r);
-                            if (img != null)
+                            foreach (var p in curFld.GetListAnalysisParticles())
+                            {
+                                p.SetIsXrayParticle(true);
+                            }
+                            try
+                            {
+                                CollectParticlesXrayData(curFld);
+                            }
+                            catch (Exception e)
                             {
-                                curFld.particleImages.Add(img);
+                                log.Error(e.Message);
                             }
+
+
+
                         }
 
-                    }
+                        m_Sample.GetMsrStatus().SetStatus(OTS_MSR_SAMPLE_STATUS.SUCCESSED);
 
 
-                    COTSXRayParam pXRayParam = m_Sample.GetMsrParams().GetXRayParam();
+                        curFld.SetIsMeasureComplete(true);
 
-                    if (pXRayParam.GetUsingXray() == true)
-                    {
-                        foreach (var p in curFld.GetListAnalysisParticles())
-                        {
-                            p.SetIsXrayParticle(true);
-                        }
+                        log.Info("Begin to classify particles! particle num:" + curFld.GetListAnalysisParticles().Count);
                         try
                         {
-                            CollectParticlesXrayData(curFld);
+                            ClassifyFieldParticles(curFld);
                         }
                         catch (Exception e)
                         {
                             log.Error(e.Message);
-                        }
-
 
+                        }
 
-                    }
-
-                    m_Sample.GetMsrStatus().SetStatus(OTS_MSR_SAMPLE_STATUS.SUCCESSED);
 
+                        MsgFieldBSE.InitFieldSTDColoredPartsDataMsg();
 
-                    curFld.SetIsMeasureComplete(true);
+                        m_pMsrThread.SendMessageToMeasureGUI(MsgFieldBSE);
+                        //start db save
+                        StartSaveFileThread(ref curFld);
 
-                    log.Info("Begin to classify particles! particle num:" + curFld.GetListAnalysisParticles().Count);
-                    try
-                    {
-                        ClassifyFieldParticles(curFld);
+                        SendFieldParticlesInfoToGUI(curFld, m_Sample.GetMsrStatus());
                     }
                     catch (Exception e)
                     {
                         log.Error(e.Message);
 
                     }
-
-
-                    MsgFieldBSE.InitFieldSTDColoredPartsDataMsg();
-
-                    m_pMsrThread.SendMessageToMeasureGUI(MsgFieldBSE);
-                    //start db save
-                    StartSaveFileThread(ref curFld);
-
-                    SendFieldParticlesInfoToGUI(curFld, m_Sample.GetMsrStatus());
                 }
 
 

+ 1 - 1
OTSIncAReportApp/1-UI/Control_Graph/Controls/Control_XRayTable.cs

@@ -316,7 +316,7 @@ namespace OTSIncAReportGraph.Controls
                 m_list_twopoint2.Add(tp);
             }
             List<ShowElementInfo> in_list_showelementinfo2 = new List<ShowElementInfo>();
-            if (in_list_showelementinfo.Count > 4) in_list_showelementinfo2 = in_list_showelementinfo.GetRange(0, 4);
+            if (in_list_showelementinfo.Count > 10) in_list_showelementinfo2 = in_list_showelementinfo.GetRange(0, 10);
             else in_list_showelementinfo2 = in_list_showelementinfo;
             //重新实现的计算峰值上显示元素的计算方法
             CalcKMLFPoint(in_list_showelementinfo2);

+ 1 - 1
OTSIncAReportApp/1-UI/OTSReportExport/Category.cs

@@ -52,7 +52,7 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport
                 {
                     for (int a = 0; a < CheckTheOptions.Count; a++)
                     {
-                        if (checkedListBox1.Items[i].ToString() == CheckTheOptions[a].ToString())
+                        if (ElementList.Rows[i]["STDId"].ToString() == CheckTheOptions[a].ToString())
                             checkedListBox1.SetItemChecked(i, true);
                     }
                 }

+ 11 - 8
OTSIncAReportApp/1-UI/OTSReportExport/DataIntegration/ParticleList.cs

@@ -38,18 +38,20 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
             ParticleData fielddata = new ParticleData(m_otsreport_export.m_ReportApp.m_rstDataMgr.ResultFilesList[m_otsreport_export.m_ReportApp.m_rstDataMgr.GetWorkingResultId()].FilePath);
             DataTable btb = InvalidRemoval(fielddata.GetIncaSurfaceData(m_mbszclass.M_KLLBXX.list_str_kllb_qcys));
             DataTable dt;
-            if (m_mbszclass.list_str_MainPriority.Count == 0)
+            
+            if (m_mbszclass.list_str_MainPriority_Serial.Count == 0)
             {
                 dt = btb.Copy();
             }
             else
             {
+                
                 dt = btb.Clone();
                 for (int i = 0; i < btb.Rows.Count; i++)
                 {
-                    for (int a = 0; a < m_mbszclass.list_str_MainPriority.Count; a++)
+                    for (int a = 0; a < m_mbszclass.list_str_MainPriority_Serial.Count; a++)
                     {
-                        if (btb.Rows[i]["TypeName"].ToString() == m_mbszclass.list_str_MainPriority[a])
+                        if (btb.Rows[i]["TypeId"].ToString() == m_mbszclass.list_str_MainPriority_Serial[a])
                         {
                             dt.Rows.Add(btb.Rows[i].ItemArray);
                             continue;
@@ -87,7 +89,7 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
             {
                 for (int i = dt.Rows.Count - 1; i >= 0; i--)
                 {
-                    if (dt.Rows[i]["TypeName"].ToString() == m_mbszclass.M_KLLBXX.list_str_kllb_DeleteClass[a].ToString())
+                    if (dt.Rows[i]["TypeId"].ToString() == m_mbszclass.M_KLLBXX.list_str_kllb_DeleteClass[a].ToString())
                     {
                         dt.Rows.RemoveAt(i);
                     }
@@ -98,18 +100,19 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
             for (int i=0;i< dt.Rows.Count;i++)
             {
                 
-                for (int a=0;a< m_mbszclass.list_str_MainPriority.Count;a++)
+                for (int a=0;a< m_mbszclass.list_str_MainPriority_Serial.Count;a++)
                 {
-                    if (m_mbszclass.list_str_MainPriority[a].ToString()== dt.Rows[i]["TypeName"].ToString())
+                    if (m_mbszclass.list_str_MainPriority_Serial[a].ToString()== dt.Rows[i]["TypeId"].ToString())
                     {
                         PriorityOne.Rows.Add(dt.Rows[i].ItemArray);
-                   
+                        continue;
+
                     }
                 }
 
             }
             DataTable dt_ParticlesGridDevidePage;
-            if (m_mbszclass.list_str_MainPriority.Count!=0)
+            if (m_mbszclass.list_str_MainPriority_Serial.Count!=0)
             {
                 dt_ParticlesGridDevidePage = dt.Clone();
                 DataView dvs = PriorityOne.DefaultView;

+ 2 - 1
OTSIncAReportApp/1-UI/OTSReportExport/OTSReport_Template_CleannessA.cs

@@ -766,7 +766,8 @@ namespace OTSIncAReportApp.OTSTemplateDesigner
             }
 
             
-            Category category = new Category(vs, ReadClassification(comboBox1.SelectedIndex));
+            //Category category = new Category(vs, ReadClassification(comboBox1.SelectedIndex));
+            Category category = new Category(m_OTSReport_Export.m_mbszclass.list_str_MainPriority_Serial, ReadClassification(comboBox1.SelectedIndex));
             category.ShowDialog();
             List<string> ls = category.OutElementList;
             TCCleannessAList = category.vs;