CDSParkF.cpp 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. //---------------------------------------------------------------------------
  2. #pragma hdrstop
  3. #include "CDSParkF.h"
  4. #include "ITS_OPLibF.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. //---------------------------------------------------------------------------
  8. void TCDSPark::Init()
  9. {
  10. }
  11. //---------------------------------------------------------------------------
  12. TCDSParkManager *CDSParkManager = NULL;
  13. //---------------------------------------------------------------------------
  14. /*
  15. * Manager
  16. */
  17. TCDSParkManager::TCDSParkManager()
  18. {
  19. }
  20. //---------------------------------------------------------------------------
  21. TCDSParkManager::~TCDSParkManager()
  22. {
  23. FLists.RemoveAll();
  24. }
  25. //---------------------------------------------------------------------------
  26. void TCDSParkManager::Init()
  27. {
  28. FOR_STL(TCDSPark*, pObj, FLists)
  29. {
  30. pObj->Init();
  31. }
  32. }
  33. //---------------------------------------------------------------------------
  34. bool TCDSParkManager::LoadFromDb(TADOConnection *ADbConn)
  35. {
  36. String sQry;
  37. TADOQuery *pADO = NULL;
  38. #ifdef USE_PARK2
  39. sQry = "SELECT * \r\n"
  40. " FROM TB_PRLT_CTLR \r\n"
  41. " WHERE DEL_YN = 'N' \r\n"
  42. " AND REAL_DATA_YN = 'Y' \r\n";
  43. //#endif
  44. //#ifdef USE_PARK
  45. #else
  46. sQry = "SELECT * \r\n"
  47. " FROM TB_PRK_PLCE \r\n"
  48. " WHERE pis_type != 'N' \r\n";
  49. #endif
  50. FLists.Lock();
  51. try
  52. {
  53. try
  54. {
  55. pADO = new TADOQuery(NULL);
  56. pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection();
  57. pADO->SQL->Clear();
  58. pADO->SQL->Text = sQry;
  59. pADO->Prepared = true;
  60. pADO->Open();
  61. for( ; !pADO->Eof; pADO->Next())
  62. {
  63. #ifdef USE_PARK2
  64. String PRLT_CTLR_NMBR = pADO->FieldByName("PRLT_CTLR_NMBR")->AsString.Trim();
  65. #else
  66. String PRLT_CTLR_NMBR = pADO->FieldByName("prk_plce_nmbr")->AsString.Trim();
  67. #endif
  68. TCDSPark *pObj = FLists.Find(PRLT_CTLR_NMBR);
  69. if (!pObj)
  70. {
  71. pObj = new TCDSPark();
  72. pObj->PRLT_CTLR_NMBR = PRLT_CTLR_NMBR;
  73. FLists.Push(pObj->PRLT_CTLR_NMBR, pObj);
  74. }
  75. #ifdef USE_PARK2
  76. pObj->PRLT_CTLR_ID = pADO->FieldByName("PRLT_CTLR_ID")->AsString.Trim();
  77. pObj->PRLT_NM = pADO->FieldByName("PRLT_NM")->AsString.Trim();
  78. pObj->REAL_DATA_YN = pADO->FieldByName("REAL_DATA_YN")->AsString.Trim();
  79. pObj->DEL_YN = pADO->FieldByName("DEL_YN")->AsString.Trim();
  80. #else
  81. pObj->PRLT_CTLR_ID = pADO->FieldByName("prk_plce_manage_no")->AsString.Trim();
  82. pObj->PRLT_NM = pADO->FieldByName("prk_plce_nm")->AsString.Trim();
  83. pObj->REAL_DATA_YN = 'Y';
  84. pObj->DEL_YN = 'N';
  85. #endif
  86. }
  87. }
  88. catch(EDatabaseError &E)
  89. {
  90. DBERRORMSG("TCDSParkManager::LoadFromDb", String(E.ClassName()), E.Message, sQry);
  91. throw Exception(String(E.ClassName()) + E.Message);
  92. }
  93. catch(Exception &e)
  94. {
  95. DBERRORMSG("TCDSParkManager::LoadFromDb", String(e.ClassName()), e.Message, sQry);
  96. throw Exception(String(e.ClassName()) + e.Message);
  97. }
  98. }
  99. __finally
  100. {
  101. if (pADO)
  102. {
  103. pADO->Close();
  104. delete pADO;
  105. }
  106. FLists.UnLock();
  107. }
  108. return true;
  109. }
  110. //---------------------------------------------------------------------------