/// <summary> /// Lot_Run赋值 /// </summary> /// <param name="dr">行数据</param> private void SetLotRun(DataRow dr) { if (string.IsNullOrEmpty(lot_run.Lot)) { lot_run.Lot = dr[0].ToString(); lot_run.Product = dr[1].ToString(); //debug:需要根据日期格式来判断 lot_run.MeasureTime = FixHlcmDate(dr[2].ToString()) + "_" + FixTime(dr[3]); lot_run.Operation = "HLCMWAT"; lot_run.SpecfileName = FileName; lot_run.TestProgram = lot_run.Product; lot_run.Operator = ""; lot_run.ProbeCard = ""; lot_run.FlatOrientation = "DOWN"; lot_run.Owner = ""; } Etest_Wafer_Run wafer_Run = GetWaferRun(dr); Etest_Site site = new Etest_Site() { SiteID = dr[5].ToString(), SiteX = wafer_Run.WaferNumber, SiteY = dr[5].ToString(), etest_ts = new List <Etest_T>() }; for (int i = 0; i < ParameterList.Count; i++) { site.etest_ts.Add(new Etest_T() { TestID = GetTestIDByDescription(ParameterList[i]).ToString(), TestValue = dr[i + 7].ToString() }); } wafer_Run.sites.Add(site); }
public void GetData(WAT wat, IList <WATSpecData> specDatas) { Lot = wat.LotID; SourceLot = ""; Operation = "WAT"; MeasureTime = wat.DateTime; Fab = "FAB2"; SpecfileName = wat.LimitFile; TestProgram = wat.TestProgram; Operator = wat.TesterID; ProbeCard = wat.ProbeCardID; FlatOrientation = wat.Notch; Owner = wat.UserID; foreach (WATSpecData spec in specDatas) { Etest_Limit limit = new Etest_Limit(); limit.GetData(spec); etest_limits.Add(limit); } foreach (WATWafer wafer in wat.wafers) { Etest_Wafer_Run wafer_Run = new Etest_Wafer_Run(); wafer_Run.GetData(wafer, wat); etest_wafers.Add(wafer_Run); } }
/// <summary> /// 判断是否已经存在WaferRun,并返回该WaferRun /// </summary> /// <param name="dr">行数据</param> /// <returns>LotRun中的WaferRun</returns> private Etest_Wafer_Run GetWaferRun(DataRow dr) { try { foreach (Etest_Wafer_Run wafer in lot_run.etest_wafers) { if (wafer.WaferNumber == dr[4].ToString()) { return(wafer); } } } catch (Exception) { } Etest_Wafer_Run wafer_Run = new Etest_Wafer_Run { WaferNumber = dr[4].ToString(), Comments = "", ParameterCount = ParameterList.Count.ToString() }; wafer_Run.sites = new List <Etest_Site>(); lot_run.etest_wafers.Add(wafer_Run); return(wafer_Run); }