//--------------------------------------------------------------------------- #pragma hdrstop #include "CDSVmsObjTypeF.h" #include "VmsCommonLibF.h" //--------------------------------------------------------------------------- #pragma package(smart_init) //--------------------------------------------------------------------------- TVmsTypeManager *VmsTypeManager = NULL; //--------------------------------------------------------------------------- TVmsTypeManager::TVmsTypeManager() { } //--------------------------------------------------------------------------- TVmsTypeManager::~TVmsTypeManager() { FLists.RemoveAll(); } //--------------------------------------------------------------------------- bool TVmsTypeManager::LoadFromDb(TADOConnection *ADbConn/*=NULL*/) { String sQry; TADOQuery *pADO = NULL; FLists.Lock(); try { FLists.RemoveAll(); FSortLists.RemoveAll(); } __finally { FLists.UnLock(); } sQry = "SELECT A.*, \r\n" " 2 AS POWR_MODL_ROW, \r\n" " 6 AS POWR_MODL_COL \r\n" " FROM TB_VMS_MODL_KIND A \r\n" " WHERE USE_YN = 'Y' \r\n" " ORDER BY A.VMS_MODL_KIND \r\n"; FLists.Lock(); try { try { pADO = new TADOQuery(NULL); pADO->Close(); pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection(); pADO->SQL->Clear(); pADO->SQL->Text = sQry; pADO->Prepared = true; pADO->Open(); for( ; !pADO->Eof; pADO->Next()) { String USE_YN = pADO->FieldByName("USE_YN")->AsString; if (USE_YN != "Y") continue; TVmsType *pObj = new TVmsType(); if (!pObj) { continue; } pObj->VMS_MODL_KIND = pADO->FieldByName("VMS_MODL_KIND")->AsString.Trim(); pObj->VMS_MODL_KIND_NM = pADO->FieldByName("VMS_MODL_KIND_NM")->AsString.Trim(); pObj->VMS_MODL_ROW = pADO->FieldByName("VMS_MODL_ROW")->AsInteger; pObj->VMS_MODL_COL = pADO->FieldByName("VMS_MODL_COL")->AsInteger; pObj->MODL_PIXL_WDTH = pADO->FieldByName("MODL_PIXL_WDTH")->AsInteger; pObj->MODL_PIXL_HGHT = pADO->FieldByName("MODL_PIXL_HGHT")->AsInteger; pObj->POWR_MODL_ROW = pADO->FieldByName("POWR_MODL_ROW")->AsInteger; pObj->POWR_MODL_COL = pADO->FieldByName("POWR_MODL_COL")->AsInteger; pObj->MODL_CLR = pADO->FieldByName("MODL_CLR")->AsString.Trim(); pObj->USE_YN = pADO->FieldByName("USE_YN")->AsString; pObj->VMS_WDTH = pObj->VMS_MODL_COL * pObj->MODL_PIXL_WDTH; pObj->VMS_HGHT = pObj->VMS_MODL_ROW * pObj->MODL_PIXL_HGHT; pObj->USE_LCS = "N"; pObj->LCS_LANE_CNT = 0; FLists.Push(pObj->VMS_MODL_KIND, pObj); if ("C0312_32" == pObj->VMS_MODL_KIND) { FSortLists.Push(1, pObj); } else if ("F0312_32" == pObj->VMS_MODL_KIND) { FSortLists.Push(2, pObj); } else if ("F0315_32" == pObj->VMS_MODL_KIND) { FSortLists.Push(3, pObj); } else if ("F1824_16" == pObj->VMS_MODL_KIND) { FSortLists.Push(4, pObj); } else if ("F2026_16" == pObj->VMS_MODL_KIND) { FSortLists.Push(5, pObj); } else if ("F1290_16" == pObj->VMS_MODL_KIND) { FSortLists.Push(6, pObj); } else if ("F0105_32" == pObj->VMS_MODL_KIND) { FSortLists.Push(7, pObj); } else if ("C0422_08" == pObj->VMS_MODL_KIND) { FSortLists.Push(8, pObj); } else if ("C0408_08" == pObj->VMS_MODL_KIND) { FSortLists.Push(9, pObj); } else if ("C0205_08" == pObj->VMS_MODL_KIND) { FSortLists.Push(10, pObj); } else { FSortLists.Push(20 + FSortLists.Size(), pObj); } } } catch(EDatabaseError &E) { DBERRORMSG("TVmsTypeManager::LoadFromDb", String(E.ClassName()), E.Message, sQry); throw Exception(String(E.ClassName()) + E.Message); } catch(Exception &e) { DBERRORMSG("TVmsTypeManager::LoadFromDb", String(e.ClassName()), e.Message, sQry); throw Exception(String(e.ClassName()) + e.Message); } } __finally { if (pADO) { pADO->Close(); delete pADO; } FLists.UnLock(); } return LcsModlLoadFromDb(ADbConn); } //--------------------------------------------------------------------------- bool TVmsTypeManager::LcsModlLoadFromDb(TADOConnection *ADbConn/*=NULL*/) { String sQry; TADOQuery *pADO = NULL; sQry = "SELECT T.LCS_CTLR_ID, T.VMS_MODL_KIND, T.INSTL_LANE_CNT \r\n" " FROM TB_LCS_CTLR T \r\n" " WHERE 1=1 \r\n" " AND T.USE_YN = 'Y' \r\n"; try { try { pADO = new TADOQuery(NULL); pADO->Close(); pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection(); pADO->SQL->Clear(); pADO->SQL->Text = sQry; pADO->Prepared = true; pADO->Open(); for( ; !pADO->Eof; pADO->Next()) { String VMS_MODL_KIND = pADO->FieldByName("VMS_MODL_KIND")->AsString.Trim(); TVmsType *pObj = FLists.Find(VMS_MODL_KIND); if (!pObj) { continue; } pObj->USE_LCS = "Y"; pObj->LCS_LANE_CNT = pADO->FieldByName("INSTL_LANE_CNT")->AsInteger; } } catch(EDatabaseError &E) { DBERRORMSG("TVmsTypeManager::LcsModlLoadFromDb", String(E.ClassName()), E.Message, sQry); throw Exception(String(E.ClassName()) + E.Message); } catch(Exception &e) { DBERRORMSG("TVmsTypeManager::LcsModlLoadFromDb", String(e.ClassName()), e.Message, sQry); throw Exception(String(e.ClassName()) + e.Message); } } __finally { if (pADO) { pADO->Close(); delete pADO; } } return true; } //--------------------------------------------------------------------------- TVmsObjUse::TVmsObjUse() { } //--------------------------------------------------------------------------- TVmsObjUse::~TVmsObjUse() { MODE = enUPDATE; } //--------------------------------------------------------------------------- TVmsObjUseManager::TVmsObjUseManager() { } //--------------------------------------------------------------------------- TVmsObjUseManager::~TVmsObjUseManager() { FLists.RemoveAll(); } //--------------------------------------------------------------------------- bool TVmsObjUseManager::LoadFromDb(String AFormId, TADOConnection *ADbConn/*=NULL*/) { return true; } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- TVmsObjType::TVmsObjType() { } //--------------------------------------------------------------------------- TVmsObjType::~TVmsObjType() { FLists.RemoveAll(); } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- TVmsObjTypeManager *VmsObjTypeManager = NULL; //--------------------------------------------------------------------------- TVmsObjTypeManager::TVmsObjTypeManager() { } //--------------------------------------------------------------------------- TVmsObjTypeManager::~TVmsObjTypeManager() { FLists.RemoveAll(); } //--------------------------------------------------------------------------- bool TVmsObjTypeManager::LoadFromDb(TADOConnection *ADbConn/*=NULL*/) { String sQry; TADOQuery *pADO = NULL; FLists.Lock(); try { FLists.RemoveAll(); } __finally { FLists.UnLock(); } sQry = "SELECT VMS_FORM_TYPE_CD AS TYPE, \r\n" " VMS_FORM_OBJECT_TYPE_CD AS CD, \r\n" " VMS_FORM_OBJECT_TYPE_NM AS NM, \r\n" " USE_YN \r\n" " FROM TB_VMS_FORM_OBJECT_TYPE \r\n" " WHERE USE_YN = 'Y' \r\n" " ORDER BY TYPE, CD \r\n"; FLists.Lock(); try { try { pADO = new TADOQuery(NULL); pADO->Close(); pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection(); pADO->SQL->Clear(); pADO->SQL->Text = sQry; pADO->Prepared = true; pADO->Open(); for( ; !pADO->Eof; pADO->Next()) { int nFormType = pADO->FieldByName("TYPE")->AsInteger; TVmsObjType *pObj = FLists.Find(nFormType); if (!pObj) { pObj = new TVmsObjType(); FLists.Push(nFormType, pObj); } pObj->TYPE = nFormType; int nType = pADO->FieldByName("CD")->AsInteger; TFormObjType *pType = pObj->FLists.Find(nType); if (!pType) { pType = new TFormObjType(); pObj->FLists.Push(nType, pType); } pType->TYPE = pADO->FieldByName("CD")->AsInteger; pType->NAME = pADO->FieldByName("NM")->AsString; } } catch(EDatabaseError &E) { DBERRORMSG("TVmsObjTypeManager::LoadFromDb", String(E.ClassName()), E.Message, sQry); throw Exception(String(E.ClassName()) + E.Message); } catch(Exception &e) { DBERRORMSG("TVmsObjTypeManager::LoadFromDb", String(e.ClassName()), e.Message, sQry); throw Exception(String(e.ClassName()) + e.Message); } } __finally { if (pADO) { pADO->Close(); delete pADO; } FLists.UnLock(); } return true; } //---------------------------------------------------------------------------