Browse Source

导出模块夹杂物引用组概念后,夹杂物比例表发生BUG处理,颗粒列表图行导出优化BUG修复

zhangjiaxin 2 months ago
parent
commit
cbb2d6627a

+ 66 - 66
OTSIncAReportApp/1-UI/OTSReportExport/DataIntegration/InclusionProportion.cs

@@ -24,29 +24,29 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
         {
             //根据sql条件,查询获取颗粒信息数据
             //按照list列表进行物质类排序,物质类中的元素分类按照面积的大小进行排序
-            List<string> ClassName = new List<string>();
-            DataTable getClass_dt = basicData.GetAllClass();
-            bool bl = false;
-            for (int i = 0; i < getClass_dt.Rows.Count; i++)
-            {
-                if (getClass_dt.Rows[i]["GroupName"].ToString() != "NOT_INCLUTION" && getClass_dt.Rows[i]["GroupName"].ToString() != "Invalid"
-                && getClass_dt.Rows[i]["GroupName"].ToString() != "Not Identified")
-                    if (getClass_dt.Rows[i]["GroupName"].ToString() == "")
-                    {
-                        if (!bl)
-                        {
-                            ClassName.Add("Default");
-                            bl = true;
-                        }
-                    }
-                    else
-                    {
-                        if (getClass_dt.Rows[i]["GroupName"].ToString() != "Default")
-                        {
-                            ClassName.Add(getClass_dt.Rows[i]["GroupName"].ToString());
-                        }
-                    }
-            }
+            List<string> ClassName = basicData.GetGroupInformation();
+			//DataTable getClass_dt = basicData.GetAllClass();
+   //         bool bl = false;
+   //         for (int i = 0; i < getClass_dt.Rows.Count; i++)
+   //         {
+   //             if (getClass_dt.Rows[i]["GroupName"].ToString() != "NOT_INCLUTION" && getClass_dt.Rows[i]["GroupName"].ToString() != "Invalid"
+   //             && getClass_dt.Rows[i]["GroupName"].ToString() != "Not Identified")
+   //                 if (getClass_dt.Rows[i]["GroupName"].ToString() == "")
+   //                 {
+   //                     if (!bl)
+   //                     {
+   //                         ClassName.Add("Default");
+   //                         bl = true;
+   //                     }
+   //                 }
+   //                 else
+   //                 {
+   //                     if (getClass_dt.Rows[i]["GroupName"].ToString() != "Default")
+   //                     {
+   //                         ClassName.Add(getClass_dt.Rows[i]["GroupName"].ToString());
+   //                     }
+   //                 }
+   //         }
             //夹杂物面积比添加大类
             DataTable RawParticleData = InclusionAreaRatio_2(str, basicData, m_mbszclass);
             //夹杂物面积比计算大类占比
@@ -326,26 +326,26 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
 
             DataTable m_bt_DBData = InvalidRemoval(basicData.getParticleData().GetAreaByAllIncA(""));
 
-            DataTable AreaInformationOfAllElements;
-            if (m_mbszclass.list_str_MainPriority_Serial.Count==0)
-            {
-                AreaInformationOfAllElements = m_bt_DBData.Copy();
-            }
-            else
-            {
-                AreaInformationOfAllElements = m_bt_DBData.Clone();
-                for (int i = 0; i < m_bt_DBData.Rows.Count; i++)
-                {
-                    for (int a = 0; a < m_mbszclass.list_str_MainPriority_Serial.Count; a++)
-                    {
-                        if (m_bt_DBData.Rows[i]["TypeId"].ToString() == m_mbszclass.list_str_MainPriority_Serial[a])
-                        {
-                            AreaInformationOfAllElements.Rows.Add(m_bt_DBData.Rows[i].ItemArray);
-                            continue;
-                        }
-                    }
-                }
-            }
+            DataTable AreaInformationOfAllElements = m_bt_DBData.Copy();
+			//if (m_mbszclass.list_str_MainPriority_Serial.Count==0)
+   //         {
+   //             AreaInformationOfAllElements = m_bt_DBData.Copy();
+   //         }
+   //         else
+   //         {
+   //             AreaInformationOfAllElements = m_bt_DBData.Clone();
+   //             for (int i = 0; i < m_bt_DBData.Rows.Count; i++)
+   //             {
+   //                 for (int a = 0; a < m_mbszclass.list_str_MainPriority_Serial.Count; a++)
+   //                 {
+   //                     if (m_bt_DBData.Rows[i]["TypeId"].ToString() == m_mbszclass.list_str_MainPriority_Serial[a])
+   //                     {
+   //                         AreaInformationOfAllElements.Rows.Add(m_bt_DBData.Rows[i].ItemArray);
+   //                         continue;
+   //                     }
+   //                 }
+   //             }
+   //         }
             
 
 
@@ -380,29 +380,29 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
                 AllAnalysisDetails.Rows.Add(dr2);
             }
 
-            List<string> ClassName = new List<string>();
-            DataTable getClass_dt = basicData.GetAllClass();
-            bool bl = false;
-            for (int i = 0; i < getClass_dt.Rows.Count; i++)
-            {
-                if (getClass_dt.Rows[i]["GroupName"].ToString() != "NOT_INCLUTION" && getClass_dt.Rows[i]["GroupName"].ToString() != "Invalid"
-                && getClass_dt.Rows[i]["GroupName"].ToString() != "Not Identified")
-                    if (getClass_dt.Rows[i]["GroupName"].ToString() == "")
-                    {
-                        if (!bl)
-                        {
-                            ClassName.Add("Default");
-                            bl = true;
-                        }
-                    }
-                    else
-                    {
-                        if (getClass_dt.Rows[i]["GroupName"].ToString() != "Default")
-                        {
-                            ClassName.Add(getClass_dt.Rows[i]["GroupName"].ToString());
-                        }
-                    }
-            }
+            List<string> ClassName = basicData.GetGroupInformation();
+			//DataTable getClass_dt = basicData.GetAllClass();
+            //bool bl = false;
+            //for (int i = 0; i < getClass_dt.Rows.Count; i++)
+            //{
+            //    if (getClass_dt.Rows[i]["GroupName"].ToString() != "NOT_INCLUTION" && getClass_dt.Rows[i]["GroupName"].ToString() != "Invalid"
+            //    && getClass_dt.Rows[i]["GroupName"].ToString() != "Not Identified")
+            //        if (getClass_dt.Rows[i]["GroupName"].ToString() == "")
+            //        {
+            //            if (!bl)
+            //            {
+            //                ClassName.Add("Default");
+            //                bl = true;
+            //            }
+            //        }
+            //        else
+            //        {
+            //            if (getClass_dt.Rows[i]["GroupName"].ToString() != "Default")
+            //            {
+            //                ClassName.Add(getClass_dt.Rows[i]["GroupName"].ToString());
+            //            }
+            //        }
+            //}
 
             DataTable AreaRatio = new DataTable();
             AreaRatio.TableName = "InclusionAreaRatio";

+ 72 - 0
OTSIncAReportApp/1-UI/OTSReportExport/DataIntegration/ParticleList.cs

@@ -1116,6 +1116,78 @@ namespace OTSIncAReportApp._1_UI.OTSReportExport.DataIntegration
                 file_pic.Add(pic);
                 list_dt.Add(picDt);
 			}
+		}
+
+		/// <summary>
+		/// 颗粒列表帧图
+		/// </summary>
+		/// <param name="m_mbszclass"></param>
+		/// <param name="file_pic"></param>
+		/// <param name="list_dt"></param>
+		/// <param name="m_otsreport_export"></param>
+		public void Get_dev_kllb_data_frame_pic(c_TemplateClass m_mbszclass, out DataTable file_pic, out List<DataTable> list_dt, OTSReport_Export m_otsreport_export, List<DataTable> FrameData)
+		{
+			m_otsreport_export.m_ReportApp.im_ParticlesGridDevidePage = new ParticlesGridDevidePage(m_otsreport_export.m_ReportApp);
+			//根据sql条件,查询获取颗粒信息数据
+			ParticleData fielddata = new ParticleData(m_otsreport_export.m_ReportApp.m_rstDataMgr.ResultFilesList[m_otsreport_export.m_ReportApp.m_rstDataMgr.GetWorkingResultId()].FilePath);
+			string str_resultPath = m_otsreport_export.m_ReportApp.m_rstDataMgr.ResultFilesList[m_otsreport_export.m_ReportApp.m_rstDataMgr.GetWorkingResultId()].FilePath;
+
+			file_pic =new DataTable();
+            file_pic.Clear();
+			file_pic.Columns.Add("fieldid");
+			file_pic.Columns.Add("id");
+			file_pic.Columns.Add("fieldName");
+			file_pic.Columns.Add("cunt", typeof(int));
+			file_pic.Columns.Add("fieldFullName");
+			file_pic.Columns.Add("Field_pic", typeof(Bitmap));
+
+			list_dt = new List<DataTable>();
+
+			for (int i = 0; i < FrameData.Count; i++)
+			{
+				DataTable pic = new DataTable();
+				List<DataTable> picDt = new List<DataTable>();
+
+				m_otsreport_export.m_ReportApp.im_ParticlesGridDevidePage.Out_MarkParticleRectangleOnFieldFile(str_resultPath, FrameData[i], out List<string> vs, out DataTable data);
+				DataTable data_A = FrameGraphParticleTableDatat(FrameData[i], fielddata, data, m_mbszclass, m_otsreport_export);
+				for (int a = 0; a < data.Rows.Count; a++)
+				{
+					DataTable dataTable = data_A.Clone();
+					//在数据表中有颗粒在该帧图中的话,则对该帧图标记图像进行读取存入数据库
+					DataRow[] datarowlist = data_A.Select(data.Rows[a]["fieldid"].ToString());
+					if (datarowlist.Count() > 0)
+					{
+						for (int b = 0; b < data_A.Rows.Count; b++)
+						{
+							if (data.Rows[a]["id"].ToString() == data_A.Rows[b]["FieldId"].ToString())
+							{
+								dataTable.Rows.Add(data_A.Rows[b].ItemArray);
+                                dataTable.TableName = data_A.Rows[b]["FieldId"].ToString();
+							}
+						}
+
+                        //bool bl = false;
+                        //                  for (int j = 0; j < list_dt.Count; i++)
+                        //                  {
+                        //                      if (list_dt[j].TableName == dataTable.TableName)
+                        //                      {
+                        //                          bl = true;
+                        //                      }
+                        //                  }
+                        //                  if (!bl)
+                        //                  {
+                        list_dt.Add(dataTable);
+                        file_pic.Rows.Add(data.Rows[a].ItemArray);
+                        //}
+
+                    }
+				}
+			}
+            
+            
+
+
+
 		}
 		private DataTable InvalidRemoval(DataTable dt)
         {

+ 165 - 81
OTSIncAReportApp/1-UI/OTSReportExport/Template/DataTemplate.cs

@@ -2559,100 +2559,184 @@ namespace OTSIncAReportApp._1_UI.OTSTemplateDesigner
 		public void set_kllb_data_frame()
         {
             ParticleList particleList = new ParticleList();
-            particleList.Get_dev_kllb_data_frame(TemplateClass, out List<DataTable> dt_pic, out List<List<DataTable>> listData, m_otsreport_export, FrameData);
+            //particleList.Get_dev_kllb_data_frame(TemplateClass, out List<DataTable> dt_pic, out List<List<DataTable>> listData, m_otsreport_export, FrameData);
 
-
-            for (int FD = 0; FD < FrameData.Count; FD++)
-            {
-				for (int i = 0; i < listData.Count; i++)
+            particleList.Get_dev_kllb_data_frame_pic(TemplateClass, out DataTable dt_pic, out List<DataTable> listData, m_otsreport_export, FrameData);
+			for (int i = 0; i < listData.Count; i++)
+			{
+				for (int a = 0; a < listData[i].Rows.Count; a++)
 				{
-					for (int a = 0; a < listData[FD][i].Rows.Count; a++)
-					{
-						listData[FD][i].Rows[a]["Class"] = subscript.Getsubscriptstring(listData[FD][i].Rows[a]["Class"].ToString());
-					}
+					listData[i].Rows[a]["Class"] = subscript.Getsubscriptstring(listData[i].Rows[a]["Class"].ToString());
 				}
-				for (int i = 0; i < dt_pic[FD].Rows.Count; i++)
+			}
+			for (int i = 0; i < dt_pic.Rows.Count; i++)
+			{
+				//分页符
+				XRPageBreak xRPage = new XRPageBreak();
+				xRPage.Name = "framePage_" + i.ToString();
+				xRPage.LocationF = new PointF(0, NeueStartposition);
+				NeueStartposition = NeueStartposition + 10;
+				this.Detail.Controls.Add(xRPage);
+				//表头
+				XRTable Template = new XRTable();
+				XRTableRow Template_Rows_1 = new XRTableRow();
+				XRTableRow Template_Rows_2 = new XRTableRow();
+				XRTableCell Template_Rows1_Cell_1 = new XRTableCell();
+				XRTableCell Template_Rows2_Cell_1 = new XRTableCell();
+				Template_Rows1_Cell_1.WidthF = 688f;
+				Template_Rows2_Cell_1.WidthF = 688f;
+				Template_Rows_1.Controls.Add(Template_Rows1_Cell_1);
+				Template_Rows_2.Controls.Add(Template_Rows2_Cell_1);
+				Template.Rows.Add(Template_Rows_1);
+				Template.Rows.Add(Template_Rows_2);
+				Template.SizeF = new SizeF(688f, 25f);
+				Template.Rows[0].Cells[0].Text = GetlanguageData("dev_frame_diagram", "帧图") + dt_pic.Rows[i]["id"];
+				Template.LocationF = new PointF(0, NeueStartposition);
+				Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
+				Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
+				Template.Rows[0].Font = new Font(Schriftart_chinese, 14f, FontStyle.Regular);
+				Template.Rows[0].BackColor = Color.DarkGray;
+				this.Detail.Controls.Add(Template);
+				//图片
+				XRPictureBox xRPicture = new XRPictureBox();
+				xRPicture.Name = "frameName_" + i.ToString();
+				xRPicture.SizeF = new SizeF(688f, 485f);
+				xRPicture.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
+				xRPicture.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
+				ImageSource imageSource = new ImageSource((Bitmap)dt_pic.Rows[i]["Field_pic"]);
+				xRPicture.ImageSource = imageSource;
+				xRPicture.LocationF = new PointF(0, NeueStartposition + Template.SizeF.Height);
+				xRPicture.Borders = DevExpress.XtraPrinting.BorderSide.All;
+				this.Detail.Controls.Add(xRPicture);
+				NeueStartposition = NeueStartposition + xRPicture.SizeF.Height + Template.SizeF.Height;
+
+				for (int a = 0; a < listData.Count; a++)
 				{
-					//分页符
-					XRPageBreak xRPage = new XRPageBreak();
-					xRPage.Name = "framePage_" + i.ToString();
-					xRPage.LocationF = new PointF(0, NeueStartposition);
-					NeueStartposition = NeueStartposition + 10;
-					this.Detail.Controls.Add(xRPage);
-					//表头
-					XRTable Template = new XRTable();
-					XRTableRow Template_Rows_1 = new XRTableRow();
-					XRTableRow Template_Rows_2 = new XRTableRow();
-					XRTableCell Template_Rows1_Cell_1 = new XRTableCell();
-					XRTableCell Template_Rows2_Cell_1 = new XRTableCell();
-					Template_Rows1_Cell_1.WidthF = 688f;
-					Template_Rows2_Cell_1.WidthF = 688f;
-					Template_Rows_1.Controls.Add(Template_Rows1_Cell_1);
-					Template_Rows_2.Controls.Add(Template_Rows2_Cell_1);
-					Template.Rows.Add(Template_Rows_1);
-					Template.Rows.Add(Template_Rows_2);
-					Template.SizeF = new SizeF(688f, 25f);
-					Template.Rows[0].Cells[0].Text = 
-                        GetlanguageData("dev_frame_diagram", "帧图") + dt_pic[FD].Rows[i]["id"]+"("+ FrameData[i].Rows[0]["GroupName"].ToString() + "组)";
-					Template.LocationF = new PointF(0, NeueStartposition);
-					Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
-					Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
-					Template.Rows[0].Font = new Font(Schriftart_chinese, 14f, FontStyle.Regular);
-					Template.Rows[0].BackColor = Color.DarkGray;
-					this.Detail.Controls.Add(Template);
-					//图片
-					XRPictureBox xRPicture = new XRPictureBox();
-					xRPicture.Name = "frameName_" + i.ToString();
-					xRPicture.SizeF = new SizeF(688f, 485f);
-					xRPicture.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
-					xRPicture.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
-					ImageSource imageSource = new ImageSource((Bitmap)dt_pic[FD].Rows[i]["Field_pic"]);
-					xRPicture.ImageSource = imageSource;
-					xRPicture.LocationF = new PointF(0, NeueStartposition + Template.SizeF.Height);
-					xRPicture.Borders = DevExpress.XtraPrinting.BorderSide.All;
-					this.Detail.Controls.Add(xRPicture);
-					NeueStartposition = NeueStartposition + xRPicture.SizeF.Height + Template.SizeF.Height;
-
-					for (int a = 0; a < listData.Count; a++)
+					if (dt_pic.Rows[i]["id"].ToString() == listData[a].Rows[0]["FieldId"].ToString())
 					{
-						if (dt_pic[FD].Rows[i]["id"].ToString() == listData[FD][a].Rows[0]["FieldId"].ToString())
+						for (int b = 0; b < listData[a].Rows.Count; b++)
 						{
-							for (int b = 0; b < listData[FD][a].Rows.Count; b++)
+							//数据表
+							XRTable xRTable = add_XRTable_frame();
+							xRTable.Rows[0].Cells[0].Text = GetlanguageData("dev_image", "图像");
+							xRTable.Rows[0].Cells[0].Font = new Font(Schriftart_chinese, xRTable.Rows[0].Cells[0].Font.Size);
+							xRTable.Rows[0].Cells[1].Text = GetlanguageData("dev_class", "分类");
+							xRTable.Rows[0].Cells[1].Font = new Font(Schriftart_chinese, xRTable.Rows[0].Cells[1].Font.Size);
+							xRTable.Rows[0].Cells[2].Text = TemplateClass.M_KLLBXX.str_cb_kllb_sort_p1.ToString();
+							xRTable.Rows[0].Cells[3].Text = TemplateClass.M_KLLBXX.str_cb_kllb_sort_p2.ToString();
+							xRTable.Rows[1].Cells[1].Text = listData[a].Rows[b]["Class"].ToString();
+							xRTable.Rows[1].Cells[2].Text = listData[a].Rows[b]["pid"].ToString();
+							xRTable.Rows[1].Cells[3].Text = listData[a].Rows[b]["Size"].ToString();
+							for (int c = 1; c < 10; c++)
 							{
-								//数据表
-								XRTable xRTable = add_XRTable_frame();
-								xRTable.Rows[0].Cells[0].Text = GetlanguageData("dev_image", "图像");
-								xRTable.Rows[0].Cells[0].Font = new Font(Schriftart_chinese, xRTable.Rows[0].Cells[0].Font.Size);
-								xRTable.Rows[0].Cells[1].Text = GetlanguageData("dev_class", "分类");
-								xRTable.Rows[0].Cells[1].Font = new Font(Schriftart_chinese, xRTable.Rows[0].Cells[1].Font.Size);
-								xRTable.Rows[0].Cells[2].Text = TemplateClass.M_KLLBXX.str_cb_kllb_sort_p1.ToString();
-								xRTable.Rows[0].Cells[3].Text = TemplateClass.M_KLLBXX.str_cb_kllb_sort_p2.ToString();
-								xRTable.Rows[1].Cells[1].Text = listData[FD][a].Rows[b]["Class"].ToString();
-								xRTable.Rows[1].Cells[2].Text = listData[FD][a].Rows[b]["pid"].ToString();
-								xRTable.Rows[1].Cells[3].Text = listData[FD][a].Rows[b]["Size"].ToString();
-								for (int c = 1; c < 10; c++)
-								{
-									xRTable.Rows[2].Cells[c].Text = listData[FD][a].Rows[b]["ColName" + (c).ToString()].ToString();
-									xRTable.Rows[3].Cells[c].Text = listData[FD][a].Rows[b]["ColVal" + (c).ToString()].ToString();
-								}
-								xRTable.LocationF = new PointF(0, NeueStartposition);
-								XRPictureBox xRPicture1 = new XRPictureBox();
-								xRPicture1.ImageSource = new ImageSource((Bitmap)listData[FD][a].Rows[b]["pic"]);
-								xRPicture1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
-								xRPicture1.SizeF = new SizeF(94, 70);
-								xRPicture1.LocationF = new PointF(0, NeueStartposition + 20);
-								this.Detail.Controls.Add(xRTable);
-								this.Detail.Controls.Add(xRPicture1);
-								NeueStartposition = NeueStartposition + xRTable.SizeF.Height + 1;
+								xRTable.Rows[2].Cells[c].Text = listData[a].Rows[b]["ColName" + (c).ToString()].ToString();
+								xRTable.Rows[3].Cells[c].Text = listData[a].Rows[b]["ColVal" + (c).ToString()].ToString();
 							}
+							xRTable.LocationF = new PointF(0, NeueStartposition);
+							XRPictureBox xRPicture1 = new XRPictureBox();
+							xRPicture1.ImageSource = new ImageSource((Bitmap)listData[a].Rows[b]["pic"]);
+							xRPicture1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
+							xRPicture1.SizeF = new SizeF(94, 70);
+							xRPicture1.LocationF = new PointF(0, NeueStartposition + 20);
+							this.Detail.Controls.Add(xRTable);
+							this.Detail.Controls.Add(xRPicture1);
+							NeueStartposition = NeueStartposition + xRTable.SizeF.Height + 1;
 						}
 					}
 				}
-
 			}
 
-			
-        }
+			//for (int FD = 0; FD < FrameData.Count; FD++)
+			//         {
+			//	for (int i = 0; i < listData.Count; i++)
+			//	{
+			//		for (int a = 0; a < listData[FD][i].Rows.Count; a++)
+			//		{
+			//			listData[FD][i].Rows[a]["Class"] = subscript.Getsubscriptstring(listData[FD][i].Rows[a]["Class"].ToString());
+			//		}
+			//	}
+			//	for (int i = 0; i < dt_pic[FD].Rows.Count; i++)
+			//	{
+			//		//分页符
+			//		XRPageBreak xRPage = new XRPageBreak();
+			//		//xRPage.Name = "framePage_" + i.ToString();
+			//		xRPage.LocationF = new PointF(0, NeueStartposition);
+			//		NeueStartposition = NeueStartposition + 10;
+			//		this.Detail.Controls.Add(xRPage);
+			//		//表头
+			//		XRTable Template = new XRTable();
+			//		XRTableRow Template_Rows_1 = new XRTableRow();
+			//		XRTableRow Template_Rows_2 = new XRTableRow();
+			//		XRTableCell Template_Rows1_Cell_1 = new XRTableCell();
+			//		XRTableCell Template_Rows2_Cell_1 = new XRTableCell();
+			//		Template_Rows1_Cell_1.WidthF = 688f;
+			//		Template_Rows2_Cell_1.WidthF = 688f;
+			//		Template_Rows_1.Controls.Add(Template_Rows1_Cell_1);
+			//		Template_Rows_2.Controls.Add(Template_Rows2_Cell_1);
+			//		Template.Rows.Add(Template_Rows_1);
+			//		Template.Rows.Add(Template_Rows_2);
+			//		Template.SizeF = new SizeF(688f, 25f);
+			//		Template.Rows[0].Cells[0].Text = 
+			//                     GetlanguageData("dev_frame_diagram", "帧图") + dt_pic[FD].Rows[i]["id"]+"("+ FrameData[i].Rows[0]["GroupName"].ToString() + "组)";
+			//		Template.LocationF = new PointF(0, NeueStartposition);
+			//		Template.Borders = DevExpress.XtraPrinting.BorderSide.All;
+			//		Template.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
+			//		Template.Rows[0].Font = new Font(Schriftart_chinese, 14f, FontStyle.Regular);
+			//		Template.Rows[0].BackColor = Color.DarkGray;
+			//		this.Detail.Controls.Add(Template);
+			//		//图片
+			//		XRPictureBox xRPicture = new XRPictureBox();
+			//		xRPicture.Name = "frameName_" + i.ToString();
+			//		xRPicture.SizeF = new SizeF(688f, 485f);
+			//		xRPicture.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
+			//		xRPicture.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
+			//		ImageSource imageSource = new ImageSource((Bitmap)dt_pic[FD].Rows[i]["Field_pic"]);
+			//		xRPicture.ImageSource = imageSource;
+			//		xRPicture.LocationF = new PointF(0, NeueStartposition + Template.SizeF.Height);
+			//		xRPicture.Borders = DevExpress.XtraPrinting.BorderSide.All;
+			//		this.Detail.Controls.Add(xRPicture);
+			//		NeueStartposition = NeueStartposition + xRPicture.SizeF.Height + Template.SizeF.Height;
+
+			//		for (int a = 0; a < listData[FD].Count; a++)
+			//		{
+			//			if (dt_pic[FD].Rows[i]["id"].ToString() == listData[FD][a].Rows[0]["FieldId"].ToString())
+			//			{
+			//				for (int b = 0; b < listData[FD][a].Rows.Count; b++)
+			//				{
+			//					//数据表
+			//					XRTable xRTable = add_XRTable_frame();
+			//					xRTable.Rows[0].Cells[0].Text = GetlanguageData("dev_image", "图像");
+			//					xRTable.Rows[0].Cells[0].Font = new Font(Schriftart_chinese, xRTable.Rows[0].Cells[0].Font.Size);
+			//					xRTable.Rows[0].Cells[1].Text = GetlanguageData("dev_class", "分类");
+			//					xRTable.Rows[0].Cells[1].Font = new Font(Schriftart_chinese, xRTable.Rows[0].Cells[1].Font.Size);
+			//					xRTable.Rows[0].Cells[2].Text = TemplateClass.M_KLLBXX.str_cb_kllb_sort_p1.ToString();
+			//					xRTable.Rows[0].Cells[3].Text = TemplateClass.M_KLLBXX.str_cb_kllb_sort_p2.ToString();
+			//					xRTable.Rows[1].Cells[1].Text = listData[FD][a].Rows[b]["Class"].ToString();
+			//					xRTable.Rows[1].Cells[2].Text = listData[FD][a].Rows[b]["pid"].ToString();
+			//					xRTable.Rows[1].Cells[3].Text = listData[FD][a].Rows[b]["Size"].ToString();
+			//					for (int c = 1; c < 10; c++)
+			//					{
+			//						xRTable.Rows[2].Cells[c].Text = listData[FD][a].Rows[b]["ColName" + (c).ToString()].ToString();
+			//						xRTable.Rows[3].Cells[c].Text = listData[FD][a].Rows[b]["ColVal" + (c).ToString()].ToString();
+			//					}
+			//					xRTable.LocationF = new PointF(0, NeueStartposition);
+			//					XRPictureBox xRPicture1 = new XRPictureBox();
+			//					xRPicture1.ImageSource = new ImageSource((Bitmap)listData[FD][a].Rows[b]["pic"]);
+			//					xRPicture1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.Squeeze;
+			//					xRPicture1.SizeF = new SizeF(94, 70);
+			//					xRPicture1.LocationF = new PointF(0, NeueStartposition + 20);
+			//					this.Detail.Controls.Add(xRTable);
+			//					this.Detail.Controls.Add(xRPicture1);
+			//					NeueStartposition = NeueStartposition + xRTable.SizeF.Height + 1;
+			//				}
+			//			}
+			//		}
+			//	}
+
+			//}
+
+
+		}
         #endregion
   
         private void setXRLabelData(XRLabel cell, string str)