private void btnUpdate_Click(object sender, EventArgs e) { DataTable tb = new DataTable(); tb.Columns.Add("staffid"); tb.Columns.Add("name"); tb.Columns.Add("pgroup"); string query = "select STAFF_ID, NAME_E, PUR_G from R3_O_ORGANIZATION where PUR_G is not null"; GlobalService.reader = MesService.GetInstance().ExecuteReader(query); while (GlobalService.reader.Read()) { string staffid = GlobalService.reader.GetString(0); string name = GlobalService.reader.GetString(1); string pgroup = GlobalService.reader.GetString(2); tb.Rows.Add(new object[] { staffid, name, pgroup }); } GlobalService.reader.Close(); string deltext = "delete from tb_purchaser"; DataService.GetInstance().ExecuteNonQuery(deltext); foreach (DataRow row in tb.Rows) { string text = string.Format("insert into tb_purchaser (tm_staffno, tm_name, tm_group)" + " values ('{0}', '{1}', '{2}')", row.ItemArray[0].ToString(), row.ItemArray[1].ToString(), row.ItemArray[2].ToString()); DataService.GetInstance().ExecuteNonQuery(text); } MessageBox.Show("Data updated"); }
public static string CheckPass(Queue <string[]> queue) { /* * 1、判断传入站是不是首站,首站的判断:根据设置的首站判断 * 2、判断上一站是否通过 * 3、判断传入站追溯号是否存在 * 4、判断传入站型号是否存在 * 5、判断传入站站位名称是否存在 * */ //根据传入站-查询该站的产线流程中的上一站 // //判断首站 //取出队列 string[] array = queue.Dequeue(); string sn_inner = array[0]; string sn_outter = array[1]; string sTypeNumber = array[2]; string sStationName = array[3]; MesService mesService = new MesService(); DataTable dataSet = mesService.SelectStation(sStationName, "").Tables[0]; var station = dataSet.Rows[0][1].ToString().Trim(); var order = int.Parse(dataSet.Rows[0][0].ToString().Trim()); if (sStationName == station) { //插入数据库 LogHelper.Log.Info("判断结果为首站,将插入到数据库"); string insertSQL = "INSERT INTO [WT_SCL].[dbo].[Product_Data] " + "([SN]," + "[Type_Number]," + "[Station_Name]," + "[Test_Result]," + "[CreateDate]," + "[UpdateDate]," + "[Remark]) " + $"VALUES('{sn_inner}-{sn_outter}','{sTypeNumber}','{sStationName}','','{GetDateTimeNow()}','{GetDateTimeNow()}','首站插入')"; int ins = SQLServer.ExecuteNonQuery(insertSQL); if (ins > 0) { //插入成功 return((int)FirstCheckResultEnum.STATUS_FIRST_STATION_INSERT_SUCCESS + ""); } return((int)FirstCheckResultEnum.ERR_FIRST_STATION_INSERT_FAIL + ""); } else { //非首站 //判断上一站位是否通过 //查询该产品型号的所属站位 DataTable data = mesService.SelectTypeStation(sTypeNumber).Tables[0]; string lastTestResult = ""; int lastIndex = 0; for (int i = 0; i < data.Columns.Count; i++) { if (data.Rows[0][i].ToString().Trim() == sStationName) { lastIndex = i - 1; break; } } //查询到上一个站位 string lastStation = data.Rows[0][lastIndex].ToString().Trim(); //验证传入参数是否存在:追溯号+型号+站位号 if (!IsExistRecord(sn_inner, sn_outter, sTypeNumber, sStationName)) { //不存在记录,则插入 //return (int)FirstCheckResultEnum.ERR_RECORD_NOT_EXIST + ""; } //查询上一个站位的测试结果 DataTable dt = SelectProductData(sn_inner.Trim(), sn_outter.Trim(), sTypeNumber, sStationName).Tables[0]; if (dt.Rows.Count > 0) { lastTestResult = dt.Rows[0][3].ToString().Trim(); } if (lastTestResult == "PASS") { LogHelper.Log.Info("last test result is pass..."); return((int)FirstCheckResultEnum.STATUS_LAST_TEST_PASS + ""); } else { LogHelper.Log.Info("last test result is fail..."); return((int)FirstCheckResultEnum.STATUS_LAST_TEST_FAIL + ""); } } }