/// <summary> /// 运算-获取要生成的表体信息(MEASUREMENT) /// </summary> /// <param name="dt">从模板EXCEL处获取的DT</param> /// <param name="tempdt">获取已运算成功的表头信息</param> /// <returns></returns> public DataTable GeneratetempEmpty(DataTable dt, DataTable tempdt) { var resultdt = new DataTable(); var bmaid = 1; //记录表体的BMAID主键信息 try { //获取对应临时表(表体) resultdt = dtList.Get_MeasureMentEmptydt(); //循环获取已运算成功的表头信息 foreach (DataRow row in tempdt.Rows) { //根据表头的ID信息查询从EXCEL模板得出的DT内的相关内容 var rows = dt.Select("ID='" + Convert.ToInt32(row[0]) + "'"); //当查询的结果有值的话,就按相关角度(15 45 110)进行对临时表赋值 if (rows.Length > 0) { //循环将记录插入至resultdt临时表内(注:每循环一次角度 主键 及相关值都要转换) for (var i = 0; i < 3; i++) { var newrow = resultdt.NewRow(); switch (i) { //角度:15 case 0: newrow = GetRecordToRows(newrow, bmaid, 15, Convert.ToInt32(row[0]), Convert.ToDecimal(rows[0][3]), //L Convert.ToDecimal(rows[0][4]), //A Convert.ToDecimal(rows[0][5]), //B Convert.ToDecimal(rows[0][6]), //C Convert.ToDecimal(rows[0][7]), //H Convert.ToDecimal(rows[0][8]), Convert.ToDecimal(rows[0][9]), Convert.ToDecimal(rows[0][10]), Convert.ToDecimal(rows[0][11]), Convert.ToDecimal(rows[0][12]), Convert.ToDecimal(rows[0][13]), Convert.ToDecimal(rows[0][14]), Convert.ToDecimal(rows[0][15]), Convert.ToDecimal(rows[0][16]), Convert.ToDecimal(rows[0][17]), Convert.ToDecimal(rows[0][18]), Convert.ToDecimal(rows[0][19]), Convert.ToDecimal(rows[0][20]), Convert.ToDecimal(rows[0][21]), Convert.ToDecimal(rows[0][22]), Convert.ToDecimal(rows[0][23]), Convert.ToDecimal(rows[0][24]), Convert.ToDecimal(rows[0][25]), Convert.ToDecimal(rows[0][26]), Convert.ToDecimal(rows[0][27]), Convert.ToDecimal(rows[0][28]), Convert.ToDecimal(rows[0][29]), Convert.ToDecimal(rows[0][30]), Convert.ToDecimal(rows[0][31]), Convert.ToDecimal(rows[0][32]), Convert.ToDecimal(rows[0][33]), Convert.ToDecimal(rows[0][34]), Convert.ToDecimal(rows[0][35]), Convert.ToDecimal(rows[0][36]), Convert.ToDecimal(rows[0][37]), Convert.ToDecimal(rows[0][38]) ); break; //角度:45 case 1: newrow = GetRecordToRows(newrow, bmaid, 45, Convert.ToInt32(row[0]), Convert.ToDecimal(rows[0][39]), //L Convert.ToDecimal(rows[0][40]), //A Convert.ToDecimal(rows[0][41]), //B Convert.ToDecimal(rows[0][42]), //C Convert.ToDecimal(rows[0][43]), //H Convert.ToDecimal(rows[0][44]), Convert.ToDecimal(rows[0][45]), Convert.ToDecimal(rows[0][46]), Convert.ToDecimal(rows[0][47]), Convert.ToDecimal(rows[0][48]), Convert.ToDecimal(rows[0][49]), Convert.ToDecimal(rows[0][50]), Convert.ToDecimal(rows[0][51]), Convert.ToDecimal(rows[0][52]), Convert.ToDecimal(rows[0][53]), Convert.ToDecimal(rows[0][54]), Convert.ToDecimal(rows[0][55]), Convert.ToDecimal(rows[0][56]), Convert.ToDecimal(rows[0][57]), Convert.ToDecimal(rows[0][58]), Convert.ToDecimal(rows[0][59]), Convert.ToDecimal(rows[0][60]), Convert.ToDecimal(rows[0][61]), Convert.ToDecimal(rows[0][62]), Convert.ToDecimal(rows[0][63]), Convert.ToDecimal(rows[0][64]), Convert.ToDecimal(rows[0][65]), Convert.ToDecimal(rows[0][66]), Convert.ToDecimal(rows[0][67]), Convert.ToDecimal(rows[0][68]), Convert.ToDecimal(rows[0][69]), Convert.ToDecimal(rows[0][70]), Convert.ToDecimal(rows[0][71]), Convert.ToDecimal(rows[0][72]), Convert.ToDecimal(rows[0][73]), Convert.ToDecimal(rows[0][74]) ); break; //角度:110 default: newrow = GetRecordToRows(newrow, bmaid, 110, Convert.ToInt32(row[0]), Convert.ToDecimal(rows[0][75]), //L Convert.ToDecimal(rows[0][76]), //A Convert.ToDecimal(rows[0][77]), //B Convert.ToDecimal(rows[0][78]), //C Convert.ToDecimal(rows[0][79]), //H Convert.ToDecimal(rows[0][80]), Convert.ToDecimal(rows[0][81]), Convert.ToDecimal(rows[0][82]), Convert.ToDecimal(rows[0][83]), Convert.ToDecimal(rows[0][84]), Convert.ToDecimal(rows[0][85]), Convert.ToDecimal(rows[0][86]), Convert.ToDecimal(rows[0][87]), Convert.ToDecimal(rows[0][88]), Convert.ToDecimal(rows[0][89]), Convert.ToDecimal(rows[0][90]), Convert.ToDecimal(rows[0][91]), Convert.ToDecimal(rows[0][92]), Convert.ToDecimal(rows[0][93]), Convert.ToDecimal(rows[0][94]), Convert.ToDecimal(rows[0][95]), Convert.ToDecimal(rows[0][96]), Convert.ToDecimal(rows[0][97]), Convert.ToDecimal(rows[0][98]), Convert.ToDecimal(rows[0][99]), Convert.ToDecimal(rows[0][100]), Convert.ToDecimal(rows[0][101]), Convert.ToDecimal(rows[0][102]), Convert.ToDecimal(rows[0][103]), Convert.ToDecimal(rows[0][104]), Convert.ToDecimal(rows[0][105]), Convert.ToDecimal(rows[0][106]), Convert.ToDecimal(rows[0][107]), Convert.ToDecimal(rows[0][108]), Convert.ToDecimal(rows[0][109]), Convert.ToDecimal(rows[0][110]) ); break; } bmaid++; resultdt.Rows.Add(newrow); } } } } catch (Exception) { resultdt.Rows.Clear(); resultdt.Columns.Clear(); } return(resultdt); }