public List <R_SN> GetPanel(string PanelSN, MESDBHelper.OleExec SFCDB, MESDataObject.DB_TYPE_ENUM _DBType) { try { T_R_SN trs = new T_R_SN(SFCDB, DBType); List <R_SN> sn = trs.GetRSNbyPsn(PanelSN, SFCDB); return(sn); } catch (Exception e) { throw e; } }
/// <summary> /// 獲取實際連板數量 /// </summary> /// <param name="Sn"></param> /// <param name="PanelFlag"></param> /// <param name="sfcdb"></param> /// <returns></returns> //Add by LLF 2018-01-27 Begin public int GetLinkQty(string Sn, OleExec sfcdb, MESDataObject.DB_TYPE_ENUM _DBType) { int LinkQty = 1; this.sfcdb = sfcdb; this.DBType = _DBType; List <R_SN> ListSN = new List <R_SN>(); T_R_SN R_SN = new T_R_SN(sfcdb, DBType); if (!string.IsNullOrEmpty(Sn)) { ListSN = R_SN.GetRSNbySN(Sn, sfcdb); if (ListSN == null) { ListSN = R_SN.GetRSNbyPsn(Sn, sfcdb); LinkQty = ListSN.Count; } } return(LinkQty); }
/// <summary> /// 檢查當前工單的錫膏是否上線: ///HWD CHECK&補Allparts錫膏資料(連板&非連板均調用該SP) ///MES1.CHECK_SOLDER_INSERTDATA(Panelno,Nextevent,L_tmp_line,) ///var_message返回 OK則OK, 反之,throw(ErrorMessage) /// </summary> /// <param name="Station"></param> /// <param name="Input"></param> /// <param name="Paras"></param> public static void SMTSolderDatachecker(MESPubLab.MESStation.MESStationBase Station, MESPubLab.MESStation.MESStationInput Input, List <MESDataObject.Module.R_Station_Action_Para> Paras) { //Marked by LLF 2018-01-29 //if (Paras.Count == 0) //{ // throw new Exception("參數數量不正確!"); //} OleExec apdb = Station.APDB; string PsnInsert = Input.Value.ToString(); string Line = Station.Line; List <R_SN> ListRsn = new List <R_SN>(); T_R_SN RSn = new T_R_SN(Station.SFCDB, MESDataObject.DB_TYPE_ENUM.Oracle); ListRsn = RSn.GetRSNbyPsn(PsnInsert, Station.SFCDB); //Modify BY LLF 20108-01-29,應該是獲取當前工站 //string Next_Station = ListRsn[0].NEXT_STATION; string StationName = Station.StationName; OleDbParameter[] SolderSP = new OleDbParameter[4]; SolderSP[0] = new OleDbParameter("G_PSN", PsnInsert); SolderSP[1] = new OleDbParameter("G_EVENTNAME", StationName); SolderSP[2] = new OleDbParameter("G_LINE", Line); SolderSP[3] = new OleDbParameter(); SolderSP[3].Size = 1000; SolderSP[3].ParameterName = "RES"; SolderSP[3].Direction = System.Data.ParameterDirection.Output; SolderSP[3].Size = 200; string result = apdb.ExecProcedureNoReturn("MES1.CHECK_SOLDER_INSERTDATA", SolderSP); if (result == "OK") { Station.AddMessage("MES00000062", new string[] { PsnInsert }, MESPubLab.MESStation.MESReturnView.Station.StationMessageState.Pass); } else { throw new Exception(result); } }