private bool CHECK_EMP() { bool Flag = false; string EMP = InputStr; try { DataTable dt = OperateDB.Get_User_Info(EMP.Split('-')[0], EMP.Split('-')[1]); if (dt.Rows.Count > 0) { //ListViewItem lvi = new ListViewItem(); //View.Details = System.Windows.Forms.View.Details; //lvi.SubItems[0].Text = "00"; //lvi.SubItems.Add(dt.Rows[0]["USERID"].ToString()); //lvi.SubItems.Add(dt.Rows[0]["USERNAME"].ToString()); //listView1.Items.Add(lvi); EmpLoyee = EMP; dataGridEmp.Rows[0].Cells[0].Value = dt.Rows[0]["USERID"].ToString(); dataGridEmp.Rows[0].Cells[1].Value = dt.Rows[0]["USERNAME"].ToString(); SendMsg(mLogMsgType.Incoming, "EMP OK,Input CMD"); Flag = true; } else { SendMsg(mLogMsgType.Error, "NO Employee"); } } catch (Exception ex) { SendMsg(mLogMsgType.Error, "检查权限失败:" + ex.Message); Flag = false; } return(Flag); }
private bool Call_TEST_STOCKIN(string STOCK_NO) { // Application.DoEvents(); bool C_Flag = false; int Cur_Rec = 0; int Tot_Rec = 0; int Err_Rec = 0; DataTable dt = OperateDB.getNewTable(OperateDB.Get_Wip_Tracking("STORENUMBER", STOCK_NO), string.Format("LOCSTATION<>'{0}'", MYGROUP)); Tot_Rec = dt.Rows.Count; string _StrErr = string.Empty; foreach (DataRow dr in dt.Rows) { _StrErr = OperateDB.TEST_MAIN_ONLY(dr["ESN"].ToString(), MYGROUP, Section, MYGROUP + "1", EmpLoyee, Line_Name); Cur_Rec = Cur_Rec + 1; progressBarX1.Value = (int)(Math.Round((decimal)Cur_Rec / Tot_Rec, 2) * 100); //Convert.ToInt32((Convert.ToDouble(Cur_Rec / Tot_Rec) * 100)); progressBarX1.Update(); progressBarX1.Text = (Tot_Rec - Cur_Rec).ToString(); progressBarX1.Update(); if (Cur_Rec % 50 == 0) { System.Threading.Thread.Sleep(200); this.Refresh(); } if (_StrErr != "OK") { Err_Rec = Err_Rec + 1; LabError.Visible = true; LabError.Text = "NG Count-->" + Err_Rec.ToString(); } } return(C_Flag); }
private void Frm_StationName_Load(object sender, EventArgs e) { cb_line.Items.Clear(); List <string> LsLine = OperateDB.Get_Line_List(); foreach (string str in LsLine) { cb_line.Items.Add(str); } cb_line.SelectedIndex = 0; dgvstation.DataSource = OperateDB.Get_All_Station(); }
private void Insert_Z_WIP_TRACKING(string STOCK_NO) { string _StrErr = OperateDB.Inser_Z_WIP_TRACKING(STOCK_NO); if (_StrErr == "OK") { SendMsg(mLogMsgType.Incoming, "上传数据完成"); } else { SendMsg(mLogMsgType.Error, "上传数据到仓库异常:" + _StrErr); } }
private int CHECK_WOSTATUS() { DataTable dt = OperateDB.Get_WoInfo(My_MoNumber); if (dt.Rows.Count == 0) { return(99); } else { return(Convert.ToInt32(dt.Rows[0]["WOSTATE"].ToString())); } }
private int Check_DATA_Correct() { int Flag = 0; foreach (DataRow dr in InputData.Rows) { if (OperateDB.CHECK_DATA_Z_WHS_WIP_TRACKING(dr["ESN"].ToString()) != 0) { SendMsg(mLogMsgType.Error, dr["ESN"].ToString() + " 仓库数据重复"); return(1); } } return(Flag); }
private static void UPDATE_WIPSTATION(string STOCK_NO) { DataTable dt = OperateDB.Get_Wip_Tracking("STORENUMBER", STOCK_NO, "DISTINCT WOID"); foreach (DataRow dr in dt.Rows) { Dictionary <string, object> dic = new Dictionary <string, object>(); dic.Add("WOID", dr["WOID"].ToString()); dic.Add("STORENUMBER", STOCK_NO); dic.Add("WIPSTATION", OperateDB.GetWOLoc(dr["WOID"].ToString())); List <string> ListFields = new List <string>(); ListFields = new List <string>(); ListFields.Add("WOID"); ListFields.Add("STORENUMBER"); OperateDB.UPDATE_WIP_TRACKING(dic, ListFields); } }
private bool CHECK_ROUTE() { bool Flag = true; DataView dataView = InputData.DefaultView; DataTable dataTableDistinct = dataView.ToTable(true, "LOCSTATION"); foreach (DataRow dr in dataTableDistinct.Rows) { DataTable dt = OperateDB.getNewTable(InputData, string.Format("LOCSTATION='{0}'", dr["LOCSTATION"].ToString())); string _StrErr = OperateDB.CHECK_ROUTE(dt.Rows[0]["ESN"].ToString(), MYGROUP); if (_StrErr != "OK") { Flag = false; SendMsg(mLogMsgType.Error, dt.Rows[0]["ESN"].ToString() + " " + _StrErr); break; } } return(Flag); }
/// 列印入库单据 /// </summary> /// <param name="StockIn"></param> private void PrintInventoryDocuments(string StockIn) { bool PrintFlag = true; StockNo = StockIn; dtStock = OperateDB.GetStockInPrint(StockNo); foreach (DataRow dr in dtStock.Rows) { if (dr[2].ToString() != OperateDB.GetWOLoc(dr["WOID"].ToString())) { SendMsg(mLogMsgType.Error, "数据未全部上抛完成,不列印单据"); PrintFlag = false; break; } } if ((PrintFlag) && (dtStock.Rows.Count > 0)) { PrintStockInNo.Print(); } dtStock = null; }
private bool CHECK_CLOSE_STATUS() { bool Flag = true; int PACKTYPE = 0; Dictionary <string, object> dic = new Dictionary <string, object>(); switch (dataGridEmp.Rows[0].Cells[2].Value.ToString()) { case "T": PACKTYPE = 0; break; case "C": PACKTYPE = 1; break; case "P": PACKTYPE = 2; break; } dic.Add("PALLETNUMBER", InputStr); dic.Add("PACKTYPE", PACKTYPE); DataTable dt = OperateDB.Get_Pallet_Info(dic); if (dt.Rows.Count > 0) { if (Convert.ToInt32(dt.Rows[0]["CLOSEFLAG"].ToString()) == 0) { Flag = false; SendMsg(mLogMsgType.Error, InputStr + " 没有关闭"); } if (dt.Rows.Count > 1) { Flag = false; SendMsg(mLogMsgType.Error, InputStr + " 数据存在多笔,请联系SFIS人员"); } } return(Flag); }
/// <summary> /// 检查产品状态 1 没有数据,2有报废,3有不良 /// </summary> /// <returns></returns> private int CHECK_ERROR() { int Flag = 0; DataTable dt = OperateDB.Get_Wip_Tracking(sCmd, InputStr); InputData = dt; if (dt.Rows.Count == 0) { Flag = 1; return(Flag); } if (OperateDB.getNewTable(dt, string.Format("SCRAPFLAG<>'{0}'", "0")).Rows.Count > 0) { Flag = 2; } if (OperateDB.getNewTable(dt, string.Format("ERRFLAG<>'{0}'", "0")).Rows.Count > 0) { Flag = 3; } My_MoNumber = dt.Rows[0]["WOID"].ToString(); return(Flag); }
private void UpLoad_System() { if (listBoxEsn.Items.Count == 0 && listBoxTray.Items.Count == 0 && listBoxCarton.Items.Count == 0 && listBoxPallet.Items.Count == 0) { SendMsg(mLogMsgType.Error, "No Data Upload"); return; } else { SendMsg(mLogMsgType.Normal, "更改入库单号"); #region 更改入库单号 StockNo = OperateDB.GetStockinNumber(); Dictionary <string, object> mst = null; List <string> Fields = null; string _StrErr = string.Empty; if (listBoxEsn.Items.Count > 0) { Fields = new List <string>(); Fields.Add("ESN"); foreach (string ItemStr in listBoxEsn.Items) { mst = new Dictionary <string, object>(); mst.Add("STORENUMBER", StockNo); mst.Add("ESN", ItemStr); _StrErr = OperateDB.UPDATE_WIP_TRACKING(mst, Fields); if (_StrErr != "OK") { SendMsg(mLogMsgType.Error, "UPDATE STOCKNO Faill: " + _StrErr); return; } } } if (listBoxTray.Items.Count > 0) { Fields = new List <string>(); Fields.Add("TRAYNO"); foreach (string ItemStr in listBoxTray.Items) { mst = new Dictionary <string, object>(); mst.Add("STORENUMBER", StockNo); mst.Add("TRAYNO", ItemStr); _StrErr = OperateDB.UPDATE_WIP_TRACKING(mst, Fields); if (_StrErr != "OK") { SendMsg(mLogMsgType.Error, "UPDATE STOCKNO Faill: " + _StrErr); return; } } } if (listBoxCarton.Items.Count > 0) { Fields = new List <string>(); Fields.Add("CARTONNUMBER"); foreach (string ItemStr in listBoxCarton.Items) { mst = new Dictionary <string, object>(); mst.Add("STORENUMBER", StockNo); mst.Add("CARTONNUMBER", ItemStr); _StrErr = OperateDB.UPDATE_WIP_TRACKING(mst, Fields); if (_StrErr != "OK") { SendMsg(mLogMsgType.Error, "UPDATE STOCKNO Faill: " + _StrErr); return; } } } if (listBoxPallet.Items.Count > 0) { Fields = new List <string>(); Fields.Add("PALLETNUMBER"); foreach (string ItemStr in listBoxPallet.Items) { mst = new Dictionary <string, object>(); mst.Add("STORENUMBER", StockNo); mst.Add("PALLETNUMBER", ItemStr); _StrErr = OperateDB.UPDATE_WIP_TRACKING(mst, Fields); if (_StrErr != "OK") { SendMsg(mLogMsgType.Error, "UPDATE STOCKNO Faill: " + _StrErr); return; } } } #endregion LabError.Text = string.Empty; SendMsg(mLogMsgType.Normal, "执行过站..."); Call_TEST_STOCKIN(StockNo); if (!string.IsNullOrEmpty(LabError.Text)) { SendMsg(mLogMsgType.Error, "Call_TEST_STOCKIN Error"); return; } SendMsg(mLogMsgType.Normal, "更改WIP STATION"); UPDATE_WIPSTATION(StockNo); SendMsg(mLogMsgType.Normal, "写入数据到仓库..."); Insert_Z_WIP_TRACKING(StockNo); ClearData(); SendMsg(mLogMsgType.Normal, "数据上传完成...."); PrintInventoryDocuments(StockNo); } }
private void Frm_StockingIn_Load(object sender, EventArgs e) { if (!Directory.Exists("C:\\SFIS")) { Directory.CreateDirectory("C:\\SFIS"); } FileVersionInfo myFileVersion = FileVersionInfo.GetVersionInfo(System.Windows.Forms.Application.ExecutablePath); this.Text = string.Format("{0} Version:{1} (Build Date:{2})", "Stockin_In", myFileVersion.FileVersion, System.IO.File.GetLastWriteTime(System.Windows.Forms.Application.ExecutablePath).ToShortDateString()); string _StrErr = string.Empty; if (!OperateDB.Check_Version("STOCKIN", System.Windows.Forms.Application.ProductVersion, null, null, null, out _StrErr)) { if (_StrErr == "OK") { RunFile(System.Windows.Forms.Application.StartupPath + @"\", "AutoUpdate.exe", appfilename); MessageBox.Show("该程序为版本不是最新版\r\n请更新后运行"); string FileName = System.IO.Path.GetFileName(System.Windows.Forms.Application.ExecutablePath); Process[] prc = Process.GetProcessesByName(FileName.Substring(0, FileName.LastIndexOf('.'))); if (prc.Length > 0) { foreach (Process pc in prc) { pc.Kill(); } } return; } else { MessageBox.Show("检查版本失败:" + _StrErr, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); Application.Exit(); } } Line_Name = IniReadValue("STOCKIN", "LINE", IniFilePath); MYGROUP = IniReadValue("STOCKIN", "MYGROUP", IniFilePath); SetStation(); dataGridEsn.Columns.Add("ESN", "ESN"); dataGridEsn.Columns.Add("Toatal", "Toatal Qty"); dataGridEsn.Rows.Add("Toatal", "0"); dataGridTray.Columns.Add("Tray", "Tray"); dataGridTray.Columns.Add("Toatal", "Toatal Qty"); dataGridTray.Rows.Add("Toatal", "0"); dataGridCarton.Columns.Add("CARTON", "CARTON"); dataGridCarton.Columns.Add("Toatal", "Toatal Qty"); dataGridCarton.Rows.Add("Toatal", "0"); dataGridPallet.Columns.Add("Pallet", "PALLET"); dataGridPallet.Columns.Add("Toatal", "Toatal Qty"); dataGridPallet.Rows.Add("Toatal", "0"); SetdataGridWidth(); dataGridEmp.Rows.Add("", "", "0"); SetStation(); if (!Directory.Exists(Application.StartupPath + @"\Database")) { Directory.CreateDirectory(Application.StartupPath + @"\Database"); } if (File.Exists(Application.StartupPath + @"\Database\dbtemp.mdb")) { File.Delete(Application.StartupPath + @"\Database\dbtemp.mdb"); } CreateAccessDb CDB = new CreateAccessDb(); CDB._CreateMDB(); CDB._Create_T_CHECK_SAP(); cdbAccess cda = new cdbAccess(); cda.ExecuteOleDbCommand("delete from T_CHECK_SAP"); txt_InputStr.Focus(); }
private bool CHECK_SAP() { bool AccessFlag = false; cdbAccess cdb = new cdbAccess(); DataTable dt = cdb.GetDatatable("select woId,partnumber,sum(data_qty) as QTY from T_CHECK_SAP group by woId,partnumber"); if (dt.Rows.Count == 0) { AccessFlag = true; dt.Rows.Add(InputData.Rows[0]["WOID"].ToString(), InputData.Rows[0]["partnumber"].ToString(), InputData.Rows.Count); } bool sFlag = false; string FactoryId = string.Empty; foreach (DataRow dr in dt.Rows) { int CHK_QTY = 0; if (dr["WOID"].ToString() == InputData.Rows[0]["WOID"].ToString() && !AccessFlag) { CHK_QTY = Convert.ToInt32(dr["QTY"].ToString()) + InputData.Rows.Count; } else { CHK_QTY = Convert.ToInt32(dr["QTY"].ToString()); } FactoryId = OperateDB.Get_WoInfo(dr["WOID"].ToString()).Rows[0]["FACTORYID"].ToString(); Dictionary <string, object> dic = new Dictionary <string, object>(); dic.Add("PARTNUMBER", dr["PARTNUMBER"].ToString()); dic.Add("WOID", dr["WOID"].ToString()); dic.Add("QTY", CHK_QTY); dic.Add("EMP_NO", dr["QTY"].ToString()); dic.Add("EMP_NAME", dr["QTY"].ToString()); dic.Add("PLANT", string.IsNullOrEmpty(FactoryId) ? "2100" : FactoryId); string[] LsMsg = SapConn.CHK_STOCKIN_Z_RFC_AUFNR_MIGO(DictionaryToJson(dic)); if (LsMsg.Length < 5) { SendMsg(mLogMsgType.Error, "检查SAP 发生异常" + LsMsg[0].ToString()); sFlag = false; } else { string SAP_STOCKNO = LsMsg[0].ToString(); string SAP_TYPE = LsMsg[1].ToString(); string SAP_E_ID = LsMsg[2].ToString(); string SAP_E_NUM = LsMsg[3].ToString(); string SAP_MSG = LsMsg[4].ToString(); if (SAP_TYPE.ToUpper() == "S") { SendMsg(mLogMsgType.Incoming, string.Format("检查SAP 工单:[{0}] 数量:[{1}] OK", dr["WOID"].ToString(), CHK_QTY.ToString())); sFlag = true; } else { string sSAP_MSG = string.Format("工单:{0},料号:{1},数量:{2},MSG:{3}", dr["WOID"].ToString(), dr["PARTNUMBER"].ToString(), CHK_QTY.ToString(), SAP_TYPE + "-" + SAP_E_ID + "-" + SAP_E_NUM + "-" + SAP_MSG); SendMsg(mLogMsgType.Error, "SAP:" + sSAP_MSG); sFlag = false; break; } } } SendMsg(mLogMsgType.Incoming, "检查SAP数据完成...."); return(sFlag); }