public static void Load(string _sJobName) { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sDevicePath = sExeFolder + "JobFile\\" + _sJobName + "\\MotrPstn.ini"; string sCommonPath = sExeFolder + "Util\\CommonPstn.ini"; string sMinMaxPath = sExeFolder + "Util\\LimitPstn.ini"; CIniFile IniDevice = new CIniFile(sDevicePath); CIniFile IniCommon = new CIniFile(sCommonPath); CIniFile IniMinMax = new CIniFile(sMinMaxPath); string sSection; //Save Device. for (int m = 0; m < m_iMaxMotr; m++) { //Set Dir. sSection = "Motor" + m.ToString(); for (int i = 0; i < MotrPstn[m].PstnValue.Length; i++) { if (MotrPstn[m].PstnValue[i].bCommon) { IniCommon.Load(sSection, MotrPstn[m].PstnValue[i].sName, out MotrPstn[m].PstnValue[i].dValue); } else { IniDevice.Load(sSection, MotrPstn[m].PstnValue[i].sName, out MotrPstn[m].PstnValue[i].dValue); } IniMinMax.Load(sSection, MotrPstn[m].PstnValue[i].sName.Trim() + "_MIN", out MotrPstn[m].PstnValue[i].dMin); IniMinMax.Load(sSection, MotrPstn[m].PstnValue[i].sName.Trim() + "_MAX", out MotrPstn[m].PstnValue[i].dMax); IniMinMax.Load(sSection, MotrPstn[m].PstnValue[i].sName.Trim() + "_SPD", out MotrPstn[m].PstnValue[i].iSpdPer); if (MotrPstn[m].PstnValue[i].dMax <= 0) { MotrPstn[m].PstnValue[i].dMax = ML.MT_GetMaxPosition(m); } if (MotrPstn[m].PstnValue[i].iSpdPer <= 0) { MotrPstn[m].PstnValue[i].iSpdPer = 100; } if (MotrPstn[m].PstnValue[i].iSpdPer > 100) { MotrPstn[m].PstnValue[i].iSpdPer = 100; } //if (MotrPstn[m].PstnValue[i].dMax <= 0 ) //ML.MT_GetInPosSgnl } } }
public void LoadSaveDayIni(bool _bLoad, ref TData _tData) { //Make Dir. string sPath = DAY_FOLDER + "DayInfo.ini"; if (_bLoad) { CIniFile IniLoadDayInfo = new CIniFile(sPath); IniLoadDayInfo.Load("Data", "dWorkTime ", out _tData.dWorkTime); IniLoadDayInfo.Load("Data", "dStopTime ", out _tData.dStopTime); IniLoadDayInfo.Load("Data", "dErrTime ", out _tData.dErrTime); IniLoadDayInfo.Load("Data", "dTotalTime", out _tData.dTotalTime); IniLoadDayInfo.Load("Data", "dUPEH ", out _tData.dUPEH); IniLoadDayInfo.Load("Data", "dUPH ", out _tData.dUPH); IniLoadDayInfo.Load("Data", "iWorkCnt ", out _tData.iWorkCnt); IniLoadDayInfo.Load("Data", "iLotCnt ", out _tData.iLotCnt); } else { CIniFile IniSaveDayInfo = new CIniFile(sPath); IniSaveDayInfo.Save("Data", "dWorkTime ", _tData.dWorkTime); IniSaveDayInfo.Save("Data", "dStopTime ", _tData.dStopTime); IniSaveDayInfo.Save("Data", "dErrTime ", _tData.dErrTime); IniSaveDayInfo.Save("Data", "dTotalTime", _tData.dTotalTime); IniSaveDayInfo.Save("Data", "dUPEH ", _tData.dUPEH); IniSaveDayInfo.Save("Data", "dUPH ", _tData.dUPH); IniSaveDayInfo.Save("Data", "iWorkCnt ", _tData.iWorkCnt); IniSaveDayInfo.Save("Data", "iLotCnt ", _tData.iLotCnt); } }
public void LoadId(string _sId, ref IdData Data) { //Make Dir. string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sPath = sExeFolder + "Util\\LogOn.ini"; CIniFile Ini = new CIniFile(sPath); int iTemp = 0; //Load Device. Ini.Load(_sId, "Password", out Data.Password); Ini.Load(_sId, "Level", out iTemp); Data.Level = (EN_LEVEL)iTemp; Data.ID = _sId; }
public static void LoadNodePos(string _sJobName) { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sDevOptnPath = sExeFolder + "JobFile\\" + _sJobName + "\\NodePos.ini"; CIniFile IniNodePos = new CIniFile(sDevOptnPath); for (int i = 0; i < OM.MAX_NODE_POS; i++) { IniNodePos.Load(i.ToString(), "dWrkSttPos", out NodePos[i].dWrkSttPos); IniNodePos.Load(i.ToString(), "iDirection", out NodePos[i].iDirection); IniNodePos.Load(i.ToString(), "dDegree ", out NodePos[i].dDegree); IniNodePos.Load(i.ToString(), "iWrkCnt ", out NodePos[i].iWrkCnt); IniNodePos.Load(i.ToString(), "iWrkPitch ", out NodePos[i].dWrkPitch); } }
public void SaveData(double _dStartTime, string _sLotNo, TLotData _LotData) { try { string sSpcFd = System.IO.Directory.GetParent(SPC.LOT.Folder).Parent.FullName.ToString(); string sSttDt = DateTime.FromOADate(_dStartTime).ToString("yyyyMMdd");//DateTime.Now.ToString("yyyyMMdd"); string sPath = SPC.LOT.Folder + sSttDt + "\\" + _sLotNo + ".ini"; DirectoryInfo di = new DirectoryInfo(Path.GetDirectoryName(sPath)); //DirectoryInfo di = new DirectoryInfo(sPath); if (!di.Exists) { di.Create(); } //몬가 마음에 안드는데 ... 시간상 패스 대충 쓸라고 만든거임 //카운트 저장. int iCnt = 0; CIniFile IniCnt = new CIniFile(sPath); IniCnt.Load("ETC", "DataCnt", ref iCnt);//이거 여기서 저장하는데 Datamap에서도 가져다가 쓴다. IniCnt.Save("ETC", "DataCnt", iCnt + 1); //데이터 저장. CAutoIniFile.SaveStruct(sPath, "LotData" + (iCnt).ToString(), ref _LotData); } catch (Exception _e) { Log.Trace("Data Save Fail" + _e.Message); } }
public void SaveErrIni(TData _tData) { string sPath; string sCaption; DateTime tErrDateTime; tErrDateTime = DateTime.FromOADate(_tData.dSttTime); sPath = ERR_FOLDER + DateTime.Now.ToString("yyyyMMdd") + ".ini"; int iCnt; CIniFile IniSaveErr = new CIniFile(sPath); IniSaveErr.Load("ETC", "ErrCnt", out iCnt); sCaption = iCnt.ToString(); IniSaveErr.Save(sCaption, "iErrNo ", _tData.iErrNo); IniSaveErr.Save(sCaption, "sErrName", _tData.sErrName); IniSaveErr.Save(sCaption, "dSttTime", _tData.dSttTime); IniSaveErr.Save(sCaption, "sErrMsg ", _tData.sErrMsg); IniSaveErr.Save(sCaption, "sLotId ", _tData.sLotId); iCnt++; IniSaveErr.Save("ETC", "ErrCnt", iCnt); }
public static void Load(string _sJobName) { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sDevicePath = sExeFolder + "JobFile\\" + _sJobName + "\\MotrPstn.ini"; string sCommonPath = sExeFolder + "Util\\CommonPstn.ini"; CIniFile IniDevice = new CIniFile(sDevicePath); CIniFile IniCommon = new CIniFile(sCommonPath); string sSection; //Save Device. for (int m = 0; m < m_iMaxMotr; m++) { //Set Dir. sSection = "Motor" + m.ToString(); for (int i = 0; i < MotrPstn[m].PstnValue.Length; i++) { if (MotrPstn[m].PstnValue[i].bCommon) { IniCommon.Load(sSection, MotrPstn[m].PstnValue[i].sName, out MotrPstn[m].PstnValue[i].dValue); } else { IniDevice.Load(sSection, MotrPstn[m].PstnValue[i].sName, out MotrPstn[m].PstnValue[i].dValue); } } } }
public void DispStripMap(string _sDate, string _sLotId, int _iMgz, int _iSlot, ListView _lvMap) { string sPath; int iColCnt; int iRowCnt; sPath = LOT_FOLDER + _sDate + "//" + _sLotId + ".ini"; CIniFile IniLoadMap = new CIniFile(sPath); //작업 메거진 카운트 갱신. IniLoadMap.Load("ETC", "ColCnt", out iColCnt); IniLoadMap.Load("ETC", "RowCnt", out iRowCnt); iRowCnt = _lvMap.Items.Count - 1; iColCnt = _lvMap.Columns.Count - 1; //_lvMap.FixedCols = 1; //_lvMap.FixedRows = 1; //맵 저장. string sRowData; string sCaption; string sIndex; string sData; sCaption = _iMgz.ToString() + "_" + _iSlot; for (int r = 0; r < iRowCnt; r++) { _lvMap.Items[r + 1].SubItems[0].Text = r.ToString(); sIndex = string.Format("Row{0:00}", r); IniLoadMap.Load(sCaption, sIndex, out sRowData); for (int c = 0; c < iColCnt; c++) { if (r == 0) { _lvMap.Items[0].SubItems[c + 1].Text = c.ToString(); } sData = sRowData.Substring(1, 2); //sRowData.Delete(1,3) ; _lvMap.Items[r + 1].SubItems[c + 1].Text = sData; } } }
//색깔 바꾸는거 저장/로드하는부분 public void LoadPttColor(string _sJobName) { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sPttColorPath = sExeFolder + "JobFile\\" + _sJobName + "\\HeightColor.ini"; CIniFile IniPttColor = new CIniFile(sPttColorPath); IniPttColor.Load("PttColor", "m_iHghtRgb ", ref m_iHghtRgb); }
public void Load() { //Set Dir. //ERR_FOLDER ; string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sFileName = string.Format("ComPort_{0:0}", iPortNo); string sSerialPath = sExeFolder + sFileName + ".ini"; string sTitle = string.Format("ComPort_{0:0}", iPortNo); CIniFile IniSerialInfo = new CIniFile(sSerialPath); IniSerialInfo.Load(sTitle, "PortNo ", out iPortNo); IniSerialInfo.Load(sTitle, "PortName ", out sPortName); IniSerialInfo.Load(sTitle, "BaudRate ", out iBaudRate); IniSerialInfo.Load(sTitle, "DataBit ", out iDataBit); IniSerialInfo.Load(sTitle, "ParityBit", out iParityBit); IniSerialInfo.Load(sTitle, "StopBit ", out iStopBit); //IniSerialInfo.Save(sTitle, "PortNo ", iPortNo); //IniSerialInfo.Save(sTitle, "PortName ", sPortName); //IniSerialInfo.Save(sTitle, "BaudRate ", iBaudRate); //IniSerialInfo.Save(sTitle, "DataBit ", iDataBit); //IniSerialInfo.Save(sTitle, "ParityBit", iParityBit); //IniSerialInfo.Save(sTitle, "StopBit ", iStopBit); }
public void LoadSaveLastErr(bool _bLoad) { //Set Dir. //ERR_FOLDER ; string sPath = ERR_FOLDER + "LastErr.ini"; if (_bLoad) { CIniFile IniLastErrInfo = new CIniFile(sPath); IniLastErrInfo.Load("LastInfo", "m_iLastErr", out m_iLastErr); IniLastErrInfo.Load("LastInfo", "m_sLastErrMsg", out m_sLastErrMsg); } else { CIniFile IniLastErrInfo = new CIniFile(sPath); //IniLastErrInfo.ClearFile(sPath) ; IniLastErrInfo.Save("LastInfo", "m_iLastErr", m_iLastErr); IniLastErrInfo.Save("LastInfo", "m_sLastErrMsg", m_sLastErrMsg); } }
public void SaveDataIni(double _dOaSaveDate, ref T _tData) { string sPath; DateTime tDateTime; tDateTime = DateTime.FromOADate(_dOaSaveDate); sPath = Folder + tDateTime.ToString("yyyyMMdd") + ".ini"; ////기존에 있던것들 지우기. //DirectoryInfo di = new DirectoryInfo(Folder); //if (!di.Exists) di.Create(); //foreach (FileInfo fi in di.GetFiles()) //{ // //if (fi.Extension != ".log") continue; // // 12개월 이전 로그를 삭제합니다. // if (fi.CreationTime <= DateTime.Now.AddMonths(-12)) // { // fi.Delete(); // } //} //기존에 있던것들 지우기. DirectoryInfo di = new DirectoryInfo(Folder); if (!di.Exists) { di.Create(); } foreach (FileInfo fi in di.GetFiles()) { //if (fi.Extension != ".log") continue; // 12개월 이전 로그를 삭제합니다. if (fi.CreationTime <= DateTime.Now.AddMonths(-12)) { fi.Delete(); } } //카운트 저장. int iCnt = 0; CIniFile IniGetErrCnt = new CIniFile(sPath); IniGetErrCnt.Load("ETC", "DataCnt", ref iCnt);//이거 여기서 저장하는데 Datamap에서도 가져다가 쓴다. int iAddedCnt = iCnt + 1; IniGetErrCnt.Save("ETC", "DataCnt", iAddedCnt); //데이터 저장. CAutoIniFile.SaveStruct <T>(sPath, iCnt.ToString(), ref _tData); }
public static void LoadLastInfo() { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sLastInfoPath = sExeFolder + "SeqData\\LastInfo.ini"; CIniFile IniLastInfo = new CIniFile(sLastInfoPath); //Load IniLastInfo.Load("LAST WORK INFO", "Device", out m_sCrntDev); if (m_sCrntDev == "") { m_sCrntDev = "NONE"; } }
/* * public static void LoadEqpStat() * { * string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; * string sEqpOptnPath = sExeFolder + "Util\\EqpStat.ini"; * CAutoIniFile.LoadStruct<CEqpStat>(sEqpOptnPath,"EqpStat",ref EqpStat); * } * public static void SaveEqpStat() * { * string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; * string sEqpOptnPath = sExeFolder + "Util\\EqpStat.ini"; * CAutoIniFile.SaveStruct<CEqpStat>(sEqpOptnPath,"EqpStat",ref EqpStat); * } */ public static bool LoadSave(bool _bLoad) { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sLotInfo = sExeFolder + "SeqData\\LotInfo.ini"; //Current Lot Informations. TLot Data = new TLot(); CIniFile IniLotInfo = new CIniFile(sLotInfo); //int iCount = LotList.Count ; if (_bLoad) { //IniLotInfo.Load("Total ", "Count" , out iCount ); IniLotInfo.Load("Total ", "LotOpened", out LotOpened); IniLotInfo.Load("Total ", "LotEnded", out LotEnded); CAutoIniFile.LoadStruct <TLot>(sLotInfo, "CrntLotData", ref CrntLotData); //LotList.Clear(); //for(int i = 0 ; i < iCount ; i++){ // CAutoIniFile.LoadStruct<TLot>(sLotInfo,i.ToString(),ref Data); // LotList.Add(Data); //} } else { //IniLotInfo.Save("Total ", "Count" , iCount ); IniLotInfo.Save("Total ", "LotOpened", LotOpened); IniLotInfo.Save("Total ", "LotEnded", LotEnded); CAutoIniFile.SaveStruct <TLot>(sLotInfo, "CrntLotData", ref CrntLotData); //for(int i = 0 ; i < iCount ; i++){ // Data = LotList[i]; // CAutoIniFile.SaveStruct<TLot>(sLotInfo,i.ToString(),ref Data); //} } return(true); }
public void LoadPassword(bool IsLoad) { string Path; //Make Dir. string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sCmnOptnPath = sExeFolder + "Util\\Password.ini"; //Load Device. if (IsLoad) { CIniFile IniLoadPass = new CIniFile(sCmnOptnPath); IniLoadPass.Load("PASSWORD", "m_sEngineerPass", out m_sEngineerPass); IniLoadPass.Load("PASSWORD", "m_sMasterPass ", out m_sMasterPass); } else { CIniFile IniSavePass = new CIniFile(sCmnOptnPath); IniSavePass.Save("PASSWORD", "m_sEngineerPass", m_sEngineerPass); IniSavePass.Save("PASSWORD", "m_sMasterPass ", m_sMasterPass); } }
public static bool LoadSave(bool _bLoad) { string sExeFolder = System.AppDomain.CurrentDomain.BaseDirectory; string sLotInfo = sExeFolder + "SeqData\\LotInfo.ini"; CIniFile IniLotInfo = new CIniFile(sLotInfo); string sLot = ""; int LotCount = 0; if (_bLoad) { IniLotInfo.Load("Total ", "LotCount", ref LotCount); IniLotInfo.Load("Total ", "LotOpened", ref LotOpened); IniLotInfo.Load("Total ", "LotEnded", ref LotEnded); IniLotInfo.Load("Total ", "iWorkMgzCnt", ref iWorkMgzCnt); IniLotInfo.Load("Total ", "CrntLotData", ref CrntLotData); IniLotInfo.Load("Total ", "LastPopLot", ref LastPopLot); LotList.Clear(); for (int i = 0; i < LotCount; i++) { IniLotInfo.Load("LotList ", i.ToString(), ref sLot); LotList.Add(sLot); } } else { LotCount = LotList.Count; IniLotInfo.Save("Total ", "LotCount", LotCount); IniLotInfo.Save("Total ", "LotOpened", LotOpened); IniLotInfo.Save("Total ", "LotEnded", LotEnded); IniLotInfo.Save("Total ", "iWorkMgzCnt", iWorkMgzCnt); IniLotInfo.Save("Total ", "CrntLotData", CrntLotData); IniLotInfo.Save("Total ", "LastPopLot", LastPopLot); for (int i = 0; i < LotCount; i++) { sLot = LotList[i]; IniLotInfo.Save("LotList ", i.ToString(), sLot); } } return(true); }
public int GetDataCnt(DateTime _tSttData, DateTime _tEndData) { string sPath; int iCnt = 0; int iCntSum = 0; string SearchDate; for (DateTime d = _tSttData; d <= _tEndData; d = d.AddDays(1)) { SearchDate = d.ToString(); sPath = Folder + d.ToString("yyyyMMdd") + ".ini"; CIniFile IniGetCnt = new CIniFile(sPath); IniGetCnt.Load("ETC", "DataCnt", ref iCnt); iCntSum += iCnt; } return(iCntSum); }
public void LoadDataCnt(double _dStartTime, string _sLotNo, ref int [] _ChipCnts) { //if(_ChipCnts.Length != (int)cs.MAX_CHIP_STAT) return ; //Read&Write. string sSPCFolder = System.IO.Directory.GetParent(SPC.LOT.Folder).Parent.FullName.ToString(); string sDataPath = ""; string sDay = DateTime.FromOADate(_dStartTime).ToString("yyyyMMdd");//DateTime.Now.ToString("yyyyMMdd"); sDataPath = sSPCFolder + "\\DataMap\\" + sDay + "\\" + _sLotNo + "\\Data.cnt"; DirectoryInfo di = new DirectoryInfo(Path.GetDirectoryName(sDataPath)); if (!di.Exists) { di.Create(); } CIniFile Ini = new CIniFile(sDataPath); Ini.Load("ChipCount", "Rslt", ref _ChipCnts); }
//패턴 파일 단일 로딩 할때... public void LoadPat(string _sFileName) { string sPath, sNum; int iNum; sPath = _sFileName; CIniFile IniPattern = new CIniFile(sPath); //dPosX //dPosY //dPosZ //iDelay //dSpeed //dUVSpeed //bDispOn for (iNum = 0; iNum < MAX_DSP_CMD; iNum++) { sNum = iNum.ToString(); IniPattern.Load("PatternPara", "dPosX" + sNum, ref DspPos[iNum].dPosX); IniPattern.Load("PatternPara", "dPosY" + sNum, ref DspPos[iNum].dPosY); IniPattern.Load("PatternPara", "dPosZ" + sNum, ref DspPos[iNum].dPosZ); IniPattern.Load("PatternPara", "bDispOn" + sNum, ref DspPos[iNum].bDispOn); } IniPattern.Load("PatternPara", "m_dXScale", ref m_dXScale); IniPattern.Load("PatternPara", "m_dYScale", ref m_dYScale); IniPattern.Load("PatternPara", "m_dXSttOffset", ref m_dXSttOffset); IniPattern.Load("PatternPara", "m_dYSttOffset", ref m_dYSttOffset); IniPattern.Load("PatternPara", "m_dSpeed", ref m_dSpeed); IniPattern.Load("PatternPara", "m_iDispPosCnt", ref m_iDispPosCnt); IniPattern.Load("PatternPara", "m_dAcc", ref m_dAcc); IniPattern.Load("PatternPara", "m_dDec", ref m_dDec); }
public bool LoadSave(bool _bLoad) { //if(_bLoad) //{ // CConfig Config = new CConfig(); // Config.Load(m_sParaFolderPath + "TowerLamp.ini",CConfig.EN_CONFIG_FILE_TYPE.ftIni); // // sIndex = "Para"; // Config.GetValue("iRedAdd",sIndex,out Para.iRedAdd); // Config.GetValue("iYelAdd",sIndex,out Para.iYelAdd); // Config.GetValue("iGrnAdd",sIndex,out Para.iGrnAdd); // Config.GetValue("iSndAdd",sIndex,out Para.iSndAdd); // // int iTemp; // sIndex = "LampInfo"; // for(int i = 0 ; i < (int)EN_SEQ_STAT.MAX_SEQ_STAT ; i++) // { // Config.GetValue("iRed ",sIndex,out iTemp);Para.LampInfo[i].iRed = (EN_LAMP_OPER)iTemp ; // Config.GetValue("iYel ",sIndex,out iTemp);Para.LampInfo[i].iYel = (EN_LAMP_OPER)iTemp ; // Config.GetValue("iGrn ",sIndex,out iTemp);Para.LampInfo[i].iGrn = (EN_LAMP_OPER)iTemp ; // Config.GetValue("iBuzz",sIndex,out iTemp);Para.LampInfo[i].iBuzz= (EN_LAMP_OPER)iTemp ; // } //} //else //{ // CConfig Config = new CConfig(); // // sIndex = "Para"; // Config.SetValue("iRedAdd",sIndex, Para.iRedAdd); // Config.SetValue("iYelAdd",sIndex, Para.iYelAdd); // Config.SetValue("iGrnAdd",sIndex, Para.iGrnAdd); // Config.SetValue("iSndAdd",sIndex, Para.iSndAdd); // // sIndex = "LampInfo"; // for(int i = 0;i < (int)EN_SEQ_STAT.MAX_SEQ_STAT;i++) // { // Config.SetValue("iRed ",sIndex,(int)Para.LampInfo[i].iRed); // Config.SetValue("iYel ",sIndex,(int)Para.LampInfo[i].iYel); // Config.SetValue("iGrn ",sIndex,(int)Para.LampInfo[i].iGrn); // Config.SetValue("iBuzz",sIndex,(int)Para.LampInfo[i].iBuzz); // } // Config.Save(m_sParaFolderPath + "TowerLamp.ini",CConfig.EN_CONFIG_FILE_TYPE.ftIni); //} string sIndex; CConfig Config = new CConfig(); if (_bLoad) { CIniFile TLampConfig = new CIniFile(m_sParaFolderPath + "TowerLamp.ini"); int iTemp; for (int i = 0; i < (int)EN_SEQ_STAT.MAX_SEQ_STAT; i++) { sIndex = string.Format("TOWER_LAMP({0:0000})", i); TLampConfig.Load("iRed ", sIndex, out iTemp); Para.LampInfo[i].iRed = (EN_LAMP_OPER)iTemp; TLampConfig.Load("iYel ", sIndex, out iTemp); Para.LampInfo[i].iYel = (EN_LAMP_OPER)iTemp; TLampConfig.Load("iGrn ", sIndex, out iTemp); Para.LampInfo[i].iGrn = (EN_LAMP_OPER)iTemp; TLampConfig.Load("iBuzz", sIndex, out iTemp); Para.LampInfo[i].iBuzz = (EN_LAMP_OPER)iTemp; } sIndex = "m_aAdd"; TLampConfig.Load(sIndex, "iRedAdd", out Para.iRedAdd); TLampConfig.Load(sIndex, "iYelAdd", out Para.iYelAdd); TLampConfig.Load(sIndex, "iGrnAdd", out Para.iGrnAdd); TLampConfig.Load(sIndex, "iSndAdd", out Para.iSndAdd); } else { CIniFile TLampConfig = new CIniFile(m_sParaFolderPath + "TowerLamp.ini"); for (int i = 0; i < (int)EN_SEQ_STAT.MAX_SEQ_STAT; i++) { sIndex = string.Format("TOWER_LAMP({0:0000})", i); TLampConfig.Save("iRed ", sIndex, (int)Para.LampInfo[i].iRed); TLampConfig.Save("iYel ", sIndex, (int)Para.LampInfo[i].iYel); TLampConfig.Save("iGrn ", sIndex, (int)Para.LampInfo[i].iGrn); TLampConfig.Save("iBuzz", sIndex, (int)Para.LampInfo[i].iBuzz); } sIndex = "m_aAdd"; TLampConfig.Save(sIndex, "iRedAdd", Para.iRedAdd); TLampConfig.Save(sIndex, "iYelAdd", Para.iYelAdd); TLampConfig.Save(sIndex, "iGrnAdd", Para.iGrnAdd); TLampConfig.Save(sIndex, "iSndAdd", Para.iSndAdd); } return(true); }
public void LoadSaveLotIni(bool _bLoad) { string sPath; sPath = LOT_FOLDER + LOT.GetLotNo() + "\\LotInfo.ini"; if (_bLoad) { CIniFile IniLoadLotInfo = new CIniFile(sPath); IniLoadLotInfo.Load("Data", "sLotId ", out m_tData.sLotId); IniLoadLotInfo.Load("Data", "iWorkCnt ", out m_tData.iWorkCnt); IniLoadLotInfo.Load("Data", "dSttTime ", out m_tData.dSttTime); IniLoadLotInfo.Load("Data", "dEndTime ", out m_tData.dEndTime); IniLoadLotInfo.Load("Data", "dWorkTime ", out m_tData.dWorkTime); IniLoadLotInfo.Load("Data", "dErrTime ", out m_tData.dErrTime); IniLoadLotInfo.Load("Data", "dStopTime ", out m_tData.dStopTime); IniLoadLotInfo.Load("Data", "dTotalTime", out m_tData.dTotalTime); IniLoadLotInfo.Load("Data", "dUPEH ", out m_tData.dUPEH); IniLoadLotInfo.Load("Data", "dUPH ", out m_tData.dUPH); IniLoadLotInfo.Load("Data", "sJobFile ", out m_tData.sJobFile); } else { CIniFile IniSaveLotInfo = new CIniFile(sPath); IniSaveLotInfo.Save("Data", "sLotId ", m_tData.sLotId); IniSaveLotInfo.Save("Data", "iWorkCnt ", m_tData.iWorkCnt); IniSaveLotInfo.Save("Data", "dSttTime ", m_tData.dSttTime); IniSaveLotInfo.Save("Data", "dEndTime ", m_tData.dEndTime); IniSaveLotInfo.Save("Data", "dWorkTime ", m_tData.dWorkTime); IniSaveLotInfo.Save("Data", "dErrTime ", m_tData.dErrTime); IniSaveLotInfo.Save("Data", "dStopTime ", m_tData.dStopTime); IniSaveLotInfo.Save("Data", "dTotalTime", m_tData.dTotalTime); IniSaveLotInfo.Save("Data", "dUPEH ", m_tData.dUPEH); IniSaveLotInfo.Save("Data", "dUPH ", m_tData.dUPH); IniSaveLotInfo.Save("Data", "sJobFile ", m_tData.sJobFile); } }
//public bool LoadSave(bool _bLoad) //{ // CConfig Config = new CConfig(); // // //LoadSave(bool _bLoad, int _iCylNo , ref CConfig _Config) // if(_bLoad) // { // Config.Load(m_sParaFolderPath + "Cylinder.ini",CConfig.EN_CONFIG_FILE_TYPE.ftIni); // for(int i = 0;i < m_iMaxCylinder;i++) // { // m_aCylinder[i].LoadSave(true,i,ref Config); // } // } // else // { // // for(int i = 0;i < m_iMaxCylinder;i++) // { // m_aCylinder[i].LoadSave(false,i,ref Config); // } // Config.Save(m_sParaFolderPath + "Cylinder.ini",CConfig.EN_CONFIG_FILE_TYPE.ftIni); // } // return true; //} public bool LoadSave(bool _bLoad) { CConfig Config = new CConfig(); string sSelLan; string sCylNo; switch (m_eLangSel) { default: sSelLan = "E_"; break; case EN_LAN_SEL.English: sSelLan = "E_"; break; case EN_LAN_SEL.Korean: sSelLan = "K_"; break; case EN_LAN_SEL.Chinese: sSelLan = "C_"; break; } if (_bLoad) { CIniFile CylConfig = new CIniFile(m_sParaFolderPath + "Cylinder.ini"); int iDirType = 0; for (int i = 0; i < m_iMaxCylinder; i++) { sCylNo = string.Format("Cylinder({0:000})", i); CylConfig.Load("sEnum", sCylNo, out m_aCylinder[i].Para.sEnum); CylConfig.Load(sSelLan + "sName", sCylNo, out m_aCylinder[i].Para.sName); CylConfig.Load(sSelLan + "sComment", sCylNo, out m_aCylinder[i].Para.sComment); CylConfig.Load("iFwdXAdd", sCylNo, out m_aCylinder[i].Para.iFwdXAdd); CylConfig.Load("iBwdXAdd", sCylNo, out m_aCylinder[i].Para.iBwdXAdd); CylConfig.Load("iFwdYAdd", sCylNo, out m_aCylinder[i].Para.iFwdYAdd); CylConfig.Load("iBwdYAdd", sCylNo, out m_aCylinder[i].Para.iBwdYAdd); CylConfig.Load("iFwdOnDelay", sCylNo, out m_aCylinder[i].Para.iFwdOnDelay); CylConfig.Load("iBwdOnDelay", sCylNo, out m_aCylinder[i].Para.iBwdOnDelay); CylConfig.Load("iFwdTimeOut", sCylNo, out m_aCylinder[i].Para.iFwdTimeOut); CylConfig.Load("iBwdTimeOut", sCylNo, out m_aCylinder[i].Para.iBwdTimeOut); CylConfig.Load("eDirType", sCylNo, out iDirType); CylConfig.Load("bActrSync", sCylNo, out m_aCylinder[i].Para.bActrSync); CylConfig.Load("iActrSync", sCylNo, out m_aCylinder[i].Para.iActrSync); CylConfig.Load("iRptDelay", sCylNo, out Repeat.iDelay); m_aCylinder[i].Para.eDirType = (EN_MOVE_DIRECTION)iDirType; } } else { CIniFile CylConfig = new CIniFile(m_sParaFolderPath + "Cylinder.ini"); for (int i = 0; i < m_iMaxCylinder; i++) { sCylNo = string.Format("Cylinder({0:000})", i); CylConfig.Save("sEnum", sCylNo, m_aCylinder[i].Para.sEnum); CylConfig.Save(sSelLan + "sName", sCylNo, m_aCylinder[i].Para.sName); CylConfig.Save(sSelLan + "sComment", sCylNo, m_aCylinder[i].Para.sComment); CylConfig.Save("iFwdXAdd", sCylNo, m_aCylinder[i].Para.iFwdXAdd); CylConfig.Save("iBwdXAdd", sCylNo, m_aCylinder[i].Para.iBwdXAdd); CylConfig.Save("iFwdYAdd", sCylNo, m_aCylinder[i].Para.iFwdYAdd); CylConfig.Save("iBwdYAdd", sCylNo, m_aCylinder[i].Para.iBwdYAdd); CylConfig.Save("iFwdOnDelay", sCylNo, m_aCylinder[i].Para.iFwdOnDelay); CylConfig.Save("iBwdOnDelay", sCylNo, m_aCylinder[i].Para.iBwdOnDelay); CylConfig.Save("iFwdTimeOut", sCylNo, m_aCylinder[i].Para.iFwdTimeOut); CylConfig.Save("iBwdTimeOut", sCylNo, m_aCylinder[i].Para.iBwdTimeOut); CylConfig.Save("eDirType", sCylNo, (int)m_aCylinder[i].Para.eDirType); CylConfig.Save("bActrSync", sCylNo, m_aCylinder[i].Para.bActrSync); CylConfig.Save("iActrSync", sCylNo, m_aCylinder[i].Para.iActrSync); CylConfig.Save("iRptDelay", sCylNo, Repeat.iDelay); } } return(true); }
//패턴 파일 단일 로딩 할때... public void LoadPat(string _sFileName) { string sPath, sNum; int iNum; sPath = _sFileName; CIniFile IniPattern = new CIniFile(sPath); for (iNum = 0; iNum < MAX_HGHT_CMD; iNum++) { sNum = iNum.ToString(); IniPattern.Load("PatternPara", "m_dHghtXPos" + sNum, ref HghtPos[iNum].dPosX); IniPattern.Load("PatternPara", "m_dHghtYPos" + sNum, ref HghtPos[iNum].dPosY); IniPattern.Load("PatternPara", "m_dHghtZPos" + sNum, ref HghtPos[iNum].dPosZ); } IniPattern.Load("PatternPara", "m_dXScale", ref m_dXScale); IniPattern.Load("PatternPara", "m_dYScale", ref m_dYScale); IniPattern.Load("PatternPara", "m_dXSttOffset", ref m_dXSttOffset); IniPattern.Load("PatternPara", "m_dYSttOffset", ref m_dYSttOffset); IniPattern.Load("PatternPara", "m_dSpeed", ref m_dSpeed); IniPattern.Load("PatternPara", "m_iHghtPosCnt", ref m_iHghtPosCnt); IniPattern.Load("PatternPara", "m_dAcc", ref m_dAcc); IniPattern.Load("PatternPara", "m_dDec", ref m_dDec); }
public bool LoadSave(bool _bLoad) { CConfig Config = new CConfig(); string sSelLan; string sErrNo; switch (m_eLangSel) { default: sSelLan = "E_"; break; case EN_LAN_SEL.English: sSelLan = "E_"; break; case EN_LAN_SEL.Korean: sSelLan = "K_"; break; case EN_LAN_SEL.Chinese: sSelLan = "C_"; break; } if (_bLoad) { CIniFile ErrorConfig = new CIniFile(m_sParaFolderPath + "Error.ini"); for (int i = 0; i < m_iMaxErr; i++) { sErrNo = string.Format("ERR({0:000})", i); ErrorConfig.Load("sEnum", sErrNo, out m_aErr[i].Para.sEnum); ErrorConfig.Load(sSelLan + "sName", sErrNo, out m_aErr[i].Para.sName); ErrorConfig.Load(sSelLan + "sAction", sErrNo, out m_aErr[i].Para.sAction); ErrorConfig.Load("sImgPath", sErrNo, out m_aErr[i].Para.sImgPath); ErrorConfig.Load("dRectLeft ", sErrNo, out m_aErr[i].Para.dRectLeft); ErrorConfig.Load("dRectTop ", sErrNo, out m_aErr[i].Para.dRectTop); ErrorConfig.Load("dRectWidth ", sErrNo, out m_aErr[i].Para.dRectWidth); ErrorConfig.Load("dRectHeight", sErrNo, out m_aErr[i].Para.dRectHeight); ErrorConfig.Load("iErrorLevel", sErrNo, out m_aErr[i].Para.iErrorLevel); } } else { CIniFile ErrorConfig = new CIniFile(m_sParaFolderPath + "Error.ini"); for (int i = 0; i < m_iMaxErr; i++) { sErrNo = string.Format("ERR({0:000})", i); ErrorConfig.Save("sEnum", sErrNo, m_aErr[i].Para.sEnum); ErrorConfig.Save(sSelLan + "sName", sErrNo, m_aErr[i].Para.sName); ErrorConfig.Save(sSelLan + "sAction", sErrNo, m_aErr[i].Para.sAction); ErrorConfig.Save("sImgPath", sErrNo, m_aErr[i].Para.sImgPath); ErrorConfig.Save("dRectLeft ", sErrNo, m_aErr[i].Para.dRectLeft); ErrorConfig.Save("dRectTop ", sErrNo, m_aErr[i].Para.dRectTop); ErrorConfig.Save("dRectWidth ", sErrNo, m_aErr[i].Para.dRectWidth); ErrorConfig.Save("dRectHeight", sErrNo, m_aErr[i].Para.dRectHeight); ErrorConfig.Save("iErrorLevel", sErrNo, m_aErr[i].Para.iErrorLevel); } } return(true); }
//------------------------------------------------------------------------------------------------------- //랏에 MGZ넘버가 없는 그냥 랏별 데이터 보여주기용 //------------------------------------------------------------------------------------------------------- public void DispLotData(string sPath, ListView _lvTable) { if (_lvTable == null) { return; } _lvTable.BeginUpdate(); int iCnt = 0; CIniFile IniCnt = new CIniFile(sPath); IniCnt.Load("ETC", "DataCnt", ref iCnt); List <TLotData> Datas = new List <TLotData>(); for (int c = 0; c < iCnt; c++) { TLotData LotData = new TLotData(); CAutoIniFile.LoadStruct(sPath, "LotData" + c.ToString(), ref LotData); Datas.Add(LotData); } _lvTable.Clear(); _lvTable.View = View.Details; _lvTable.LabelEdit = true; _lvTable.AllowColumnReorder = true; _lvTable.FullRowSelect = true; _lvTable.GridLines = true; //_lvTable.Sorting = SortOrder.Descending; _lvTable.Scrollable = true; //Type type = typeof(TLotData); //int iCntOfItem = type.GetProperties().Length; //FieldInfo[] f = type.GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); // ////컬럼추가 하고 이름을 넣는다. //_lvTable.Columns.Add("No", 100, HorizontalAlignment.Left); //for (int c = 0; c < f.Length; c++) //{ // _lvTable.Columns.Add(f[c].Name, 100, HorizontalAlignment.Left); //} Type type = typeof(TLotData); int iCntOfItem = type.GetProperties().Length; FieldInfo[] f = type.GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); //컬럼추가 하고 이름을 넣는다. _lvTable.Columns.Add("No", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("작업번호", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("결과", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("NG결과", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 체결토크", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 최대토크", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 후 체결토크1", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 후 최대토크1", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 후 체결토크2", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 후 최대토크2", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 후 체결토크3", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("본체결 후 최대토크3", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("높이측정 데이터1", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("높이측정 데이터2", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("높이측정 데이터3", 100, HorizontalAlignment.Left); _lvTable.Columns.Add("높이측정 데이터4", 100, HorizontalAlignment.Left); _lvTable.Items.Clear(); string sValue = ""; string sName = ""; ListViewItem[] liitem = new ListViewItem[Datas.Count]; for (int r = 0; r < Datas.Count; r++) { liitem[r] = new ListViewItem(string.Format("{0}", r + 1)); for (int c = 0; c < f.Length; c++) { sName = f[c].Name; sValue = f[c].GetValue(Datas[r]).ToString(); liitem[r].SubItems.Add(sValue); } liitem[r].UseItemStyleForSubItems = false; _lvTable.Items.Add(liitem[r]); } //_lvTable.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); //if(iCnt == 0) _lvTable.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize ); //else _lvTable.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); _lvTable.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); _lvTable.EndUpdate(); }
public bool LoadSave(bool _bLoad) { string sSelLan; string sIndex; switch (m_eLangSel) { default: sSelLan = "E_"; break; case EN_LAN_SEL.English: sSelLan = "E_"; break; case EN_LAN_SEL.Korean: sSelLan = "K_"; break; case EN_LAN_SEL.Chinese: sSelLan = "C_"; break; } if (_bLoad) { CIniFile InputConfig = new CIniFile(m_sParaFolderPath + "Input.ini"); for (int i = 0; i < m_iMaxIn; i++) { sIndex = string.Format("Input({0:000})", i); InputConfig.Load("Address ", sIndex, out m_aIn[i].Para.iAdd); InputConfig.Load("Invert ", sIndex, out m_aIn[i].Para.bInv); InputConfig.Load("Enum ", sIndex, out m_aIn[i].Para.sEnum); InputConfig.Load(sSelLan + "Name ", sIndex, out m_aIn[i].Para.sName); InputConfig.Load(sSelLan + "Comment ", sIndex, out m_aIn[i].Para.SComt); InputConfig.Load("OnDelay ", sIndex, out m_aIn[i].Para.iOnDelay); InputConfig.Load("OffDelay ", sIndex, out m_aIn[i].Para.iOffDelay); InputConfig.Load("NotLog ", sIndex, out m_aIn[i].Para.bNotLog); } CIniFile OutputConfig = new CIniFile(m_sParaFolderPath + "Output.ini"); for (int i = 0; i < m_iMaxOut; i++) { sIndex = string.Format("Output({0:000})", i); OutputConfig.Load("Address ", sIndex, out m_aOut[i].Para.iAdd); OutputConfig.Load("Invert ", sIndex, out m_aOut[i].Para.bInv); OutputConfig.Load("Enum ", sIndex, out m_aOut[i].Para.sEnum); OutputConfig.Load(sSelLan + "Name ", sIndex, out m_aOut[i].Para.sName); OutputConfig.Load(sSelLan + "Comment ", sIndex, out m_aOut[i].Para.SComt); OutputConfig.Load("OnDelay ", sIndex, out m_aOut[i].Para.iOnDelay); OutputConfig.Load("OffDelay ", sIndex, out m_aOut[i].Para.iOffDelay); OutputConfig.Load("NotLog ", sIndex, out m_aOut[i].Para.bNotLog); } } else { CIniFile InputConfig = new CIniFile(m_sParaFolderPath + "Input.ini"); for (int i = 0; i < m_iMaxIn; i++) { sIndex = string.Format("Input({0:000})", i); InputConfig.Save("Address ", sIndex, m_aIn[i].Para.iAdd); InputConfig.Save("Invert ", sIndex, m_aIn[i].Para.bInv); InputConfig.Save("Enum ", sIndex, m_aIn[i].Para.sEnum); InputConfig.Save(sSelLan + "Name ", sIndex, m_aIn[i].Para.sName); InputConfig.Save(sSelLan + "Comment ", sIndex, m_aIn[i].Para.SComt); InputConfig.Save("OnDelay ", sIndex, m_aIn[i].Para.iOnDelay); InputConfig.Save("OffDelay ", sIndex, m_aIn[i].Para.iOffDelay); InputConfig.Save("NotLog ", sIndex, m_aIn[i].Para.bNotLog); } CIniFile OutputConfig = new CIniFile(m_sParaFolderPath + "Output.ini"); for (int i = 0; i < m_iMaxOut; i++) { sIndex = string.Format("Output({0:000})", i); OutputConfig.Save("Address ", sIndex, m_aOut[i].Para.iAdd); OutputConfig.Save("Invert ", sIndex, m_aOut[i].Para.bInv); OutputConfig.Save("Enum ", sIndex, m_aOut[i].Para.sEnum); OutputConfig.Save(sSelLan + "Name ", sIndex, m_aOut[i].Para.sName); OutputConfig.Save(sSelLan + "Comment ", sIndex, m_aOut[i].Para.SComt); OutputConfig.Save("OnDelay ", sIndex, m_aOut[i].Para.iOnDelay); OutputConfig.Save("OffDelay ", sIndex, m_aOut[i].Para.iOffDelay); OutputConfig.Save("NotLog ", sIndex, m_aOut[i].Para.bNotLog); } } return(true); }
public void DispLotList(string _sDate, ListView _lvLotInfo) //SPC LotInfo ListView { //TSearchRec sr ; string sPath = LOT_FOLDER + _sDate; string sSerchFile = sPath + "\\*.ini"; DateTime tTime; //m_tData.Clear(); _lvLotInfo.Clear(); _lvLotInfo.View = View.Details; _lvLotInfo.LabelEdit = true; _lvLotInfo.AllowColumnReorder = true; _lvLotInfo.FullRowSelect = true; _lvLotInfo.GridLines = true; _lvLotInfo.Sorting = SortOrder.Descending; _lvLotInfo.Scrollable = true; _lvLotInfo.Columns.Add("No", 40, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("LotId", 100, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("WorkCount", 210, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("UPEH", 210, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("UPH", 210, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("Start", 210, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("End ", 210, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("WorkTime", 210, HorizontalAlignment.Left); _lvLotInfo.Columns.Add("JobFile", 210, HorizontalAlignment.Left); //LotCount확인 _lvLotInfo.Items.Clear(); DirectoryInfo Info = new DirectoryInfo(sPath); int FileCount = Info.GetFiles().Length; ListViewItem[] liitem = new ListViewItem[FileCount]; for (int i = 0; i < FileCount; i++) { liitem[i] = new ListViewItem(string.Format("{0}", iNo)); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].SubItems.Add(""); liitem[i].UseItemStyleForSubItems = false; liitem[i].UseItemStyleForSubItems = false; _lvLotInfo.Items.Add(liitem[i]); //iNo++; } var PropError = _lvLotInfo.GetType().GetProperty("DoubleBuffered", BindingFlags.Instance | BindingFlags.NonPublic); PropError.SetValue(_lvLotInfo, true, null); //LotData string sTemp; if (Info.Exists) { m_tLotData.dUPEH = 0; m_tLotData.dUPH = 0; foreach (FileInfo info in Info.GetFiles()) { //sIniPath = sPath + "\\" + sr.Name; CIniFile IniLoadLotList = new CIniFile(sPath + "\\LotInfo.ini"); //랏 정보 블러오기. IniLoadLotList.Load("Data", "sLotId ", out m_tLotData.sLotId); //_sgLotList->Cells[1][iLotCnt + 1] = tData.sLotId; IniLoadLotList.Load("Data", "iWorkCnt ", out m_tLotData.iWorkCnt); //_sgLotList->Cells[2][iLotCnt + 1] = tData.iWorkCnt; IniLoadLotList.Load("Data", "dUPEH ", out m_tLotData.dUPEH); //_sgLotList->Cells[3][iLotCnt + 1] = sTemp; IniLoadLotList.Load("Data", "dUPH ", out m_tLotData.dUPH); //_sgLotList->Cells[4][iLotCnt + 1] = sTemp; IniLoadLotList.Load("Data", "dSttTime ", out m_tLotData.dSttTime); //tTime.Val = tData.dSttTime; _sgLotList->Cells[5][iLotCnt + 1] = tTime.FormatString("hh:nn:ss"); IniLoadLotList.Load("Data", "dEndTime ", out m_tLotData.dEndTime); //tTime.Val = tData.dEndTime; _sgLotList->Cells[6][iLotCnt + 1] = tTime.FormatString("hh:nn:ss"); IniLoadLotList.Load("Data", "dWorkTime ", out m_tLotData.dWorkTime); //tTime.Val = tData.dWorkTime; _sgLotList->Cells[7][iLotCnt + 1] = tTime.FormatString("hh:nn:ss"); IniLoadLotList.Load("Data", "sJobFile ", out m_tLotData.sJobFile); //_sgLotList->Cells[9][iLotCnt + 1] = tData.sJobFile; IniLoadLotList.Load("Data", "dErrTime ", out m_tLotData.dErrTime); //디스플레이 안함. IniLoadLotList.Load("Data", "dStopTime ", out m_tLotData.dStopTime); //디스플레이 안함. } for (int i = 0; i < FileCount; i++) { _lvLotInfo.Items[i].SubItems[1].Text = m_tLotData.sLotId; _lvLotInfo.Items[i].SubItems[2].Text = m_tLotData.iWorkCnt.ToString(); sTemp = string.Format("{0:000}", m_tLotData.dUPEH); _lvLotInfo.Items[i].SubItems[3].Text = sTemp; sTemp = string.Format("{0:000}", m_tLotData.dUPH); _lvLotInfo.Items[i].SubItems[4].Text = sTemp; tTime = DateTime.FromOADate(m_tLotData.dSttTime); _lvLotInfo.Items[i].SubItems[5].Text = tTime.ToString("HH:mm:ss"); tTime = DateTime.FromOADate(m_tLotData.dEndTime); _lvLotInfo.Items[i].SubItems[6].Text = tTime.ToString("HH:mm:ss"); tTime = DateTime.FromOADate(m_tLotData.dWorkTime); _lvLotInfo.Items[i].SubItems[7].Text = tTime.ToString("HH:mm:ss"); _lvLotInfo.Items[i].SubItems[9].Text = m_tLotData.sJobFile; } } DateTime tCmprTime1; DateTime tCmprTime2; for (int i = 1; i < _lvLotInfo.Items.Count; i++) { if (_lvLotInfo.Items[9].SubItems[i] == null) { continue; //null일때 문제 없는지 확인해야함 진섭 } for (int j = i + 1; j < _lvLotInfo.Items.Count; j++) { if (_lvLotInfo.Items[9].SubItems[j] == null) { continue; } tCmprTime1 = Convert.ToDateTime(_lvLotInfo.Items[9].SubItems[i]); tCmprTime2 = Convert.ToDateTime(_lvLotInfo.Items[9].SubItems[j]); tCmprTime1 = Convert.ToDateTime(string.Format("fffff.ffffffffff")); tCmprTime2 = Convert.ToDateTime(string.Format("fffff.ffffffffff")); if (tCmprTime1 > tCmprTime2) { for (int x = 1; x < _lvLotInfo.Columns.Count; x++) { _lvLotInfo.Items[x].SubItems[_lvLotInfo.Items.Count] = _lvLotInfo.Items[x].SubItems[i]; _lvLotInfo.Items[x].SubItems[i] = _lvLotInfo.Items[x].SubItems[j]; _lvLotInfo.Items[x].SubItems[j] = _lvLotInfo.Items[x].SubItems[_lvLotInfo.Items.Count]; } } } } }