DSRM010MF.cpp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599
  1. /****************************************************************************
  2. * @source :
  3. * @description :
  4. ****************************************************************************
  5. * DATE AUTHOR DESCRIPTION
  6. * --------------------------------------------------------------------------
  7. * 2011/12/24 정승호 최초작성
  8. *
  9. ****************************************************************************/
  10. //---------------------------------------------------------------------------
  11. #include <vcl.h>
  12. #include "ITSSkinF.h"
  13. #include "ITSUtilF.h"
  14. #include "AppGlobalF.h"
  15. #include "CDSCodeF.h"
  16. #include "CDSFacilityF.h"
  17. #include "XiMapUtilF.h"
  18. #pragma hdrstop
  19. #include "DSRM010MF.h"
  20. //---------------------------------------------------------------------------
  21. #pragma package(smart_init)
  22. #pragma link "cxButtons"
  23. #pragma link "cxCalendar"
  24. #pragma link "cxContainer"
  25. #pragma link "cxControls"
  26. #pragma link "cxDropDownEdit"
  27. #pragma link "cxEdit"
  28. #pragma link "cxGraphics"
  29. #pragma link "cxGroupBox"
  30. #pragma link "cxLabel"
  31. #pragma link "cxLookAndFeelPainters"
  32. #pragma link "cxLookAndFeels"
  33. #pragma link "cxMaskEdit"
  34. #pragma link "cxPC"
  35. #pragma link "cxPCdxBarPopupMenu"
  36. #pragma link "cxSpinEdit"
  37. #pragma link "cxSplitter"
  38. #pragma link "cxTextEdit"
  39. #pragma link "cxTimeEdit"
  40. #pragma link "dxSkinBlack"
  41. #pragma link "dxSkinBlue"
  42. #pragma link "dxSkinCaramel"
  43. #pragma link "dxSkinCoffee"
  44. #pragma link "dxSkinDarkRoom"
  45. #pragma link "dxSkinDarkSide"
  46. #pragma link "dxSkinFoggy"
  47. #pragma link "dxSkinGlassOceans"
  48. #pragma link "dxSkiniMaginary"
  49. #pragma link "dxSkinLilian"
  50. #pragma link "dxSkinLiquidSky"
  51. #pragma link "dxSkinLondonLiquidSky"
  52. #pragma link "dxSkinMcSkin"
  53. #pragma link "dxSkinMoneyTwins"
  54. #pragma link "dxSkinOffice2007Black"
  55. #pragma link "dxSkinOffice2007Blue"
  56. #pragma link "dxSkinOffice2007Green"
  57. #pragma link "dxSkinOffice2007Pink"
  58. #pragma link "dxSkinOffice2007Silver"
  59. #pragma link "dxSkinOffice2010Black"
  60. #pragma link "dxSkinOffice2010Blue"
  61. #pragma link "dxSkinOffice2010Silver"
  62. #pragma link "dxSkinsCore"
  63. #pragma link "dxSkinscxPCPainter"
  64. #pragma link "dxSkinSeven"
  65. #pragma link "dxSkinSharp"
  66. #pragma link "dxSkinSilver"
  67. #pragma link "dxSkinStardust"
  68. #pragma link "FRAME_DsrcListF"
  69. #pragma link "cxRadioGroup"
  70. #pragma link "cxClasses"
  71. #pragma link "cxCustomData"
  72. #pragma link "cxData"
  73. #pragma link "cxDataStorage"
  74. #pragma link "cxDBData"
  75. #pragma link "cxFilter"
  76. #pragma link "cxGrid"
  77. #pragma link "cxGridCustomTableView"
  78. #pragma link "cxGridCustomView"
  79. #pragma link "cxGridDBTableView"
  80. #pragma link "cxGridLevel"
  81. #pragma link "cxGridTableView"
  82. #pragma link "cxStyles"
  83. #pragma link "FRAME_GisMapF"
  84. #pragma link "cxCheckBox"
  85. #pragma resource "*.dfm"
  86. TDSRM010M *DSRM010M = NULL;
  87. //---------------------------------------------------------------------------
  88. __fastcall TDSRM010M::TDSRM010M(TComponent* Owner)
  89. : TForm(Owner)
  90. {
  91. ITSSkin_Load(this);
  92. CMM_LoadForm(g_sFormsDir, this);
  93. FUpdate= false;
  94. FTitle = "DSRC-RSE 관리";
  95. FRAMEDsrcList1->PnlTop->Visible = false;
  96. FRAMEDsrcList1->PnlBottom->Visible = false;
  97. FRAMEDsrcList1->ColumnSel->Visible = false;
  98. //FRAMEDsrcList1->Column02->Visible = false;
  99. FRAMEGisMap1->LbDef->Caption = "(선택메뉴를 클릭하여 위치를 선택합니다.)";
  100. FRAMEGisMap1->LbDef->Hint = FRAMEGisMap1->LbDef->Caption;
  101. m_pGDC = FRAMEDsrcList1->TvList->DataController;
  102. }
  103. //---------------------------------------------------------------------------
  104. /*
  105. * 닫기버튼 이나 x버튼 클릭시 공통으로 처리하는 로직이들어간다..
  106. * Form과 DataModule class를 delete시킨다.
  107. * arguments
  108. *
  109. * return
  110. * void
  111. */
  112. void __fastcall TDSRM010M::CommClose()
  113. {
  114. try
  115. {
  116. CMM_SaveForm(g_sFormsDir, this);
  117. }
  118. catch(...)
  119. {
  120. }
  121. }
  122. //---------------------------------------------------------------------------
  123. /*
  124. * Form을 보여줄때 호출되는 event 메서드이다.
  125. * arguments
  126. * Sender : event handler 객체
  127. * return
  128. * void
  129. */
  130. void __fastcall TDSRM010M::FormShow(TObject *Sender)
  131. {
  132. Refresh();
  133. CbMnfcCmpyCd->Properties->Items->Clear();
  134. TItsCode *FCodeRMF = ItsCodeManager->FLists.Find("RMF");
  135. if (FCodeRMF)
  136. {
  137. FOR_STL(TItsSubCode *, pSubCode, FCodeRMF->FSubLists)
  138. {
  139. if (pSubCode->USE_YN == "N") continue;
  140. CbMnfcCmpyCd->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM);
  141. }
  142. }
  143. CbMnfcCmpyCd->ItemIndex = 0;
  144. FormInit();
  145. ChangeEditMode(1);
  146. TmrShow->Enabled = true;
  147. }
  148. //---------------------------------------------------------------------------
  149. /*
  150. * form 초기화
  151. *
  152. * arguments
  153. *
  154. * return
  155. * void
  156. */
  157. void __fastcall TDSRM010M::FormInit()
  158. {
  159. EdId->Text = "";
  160. EdRseId->Text = "";
  161. EdRoadSpotId->Text = "";
  162. EdLogCnncId->Text = "";
  163. EdLogCnncPwd->Text = "";
  164. EdIstlLctnNm->Text = "";
  165. SePosX->Value = 0;
  166. SePosY->Value = 0;
  167. EdIP->Text = "";
  168. EdPort->Text = "";
  169. CbMnfcCmpyCd->ItemIndex = 0;
  170. FNewDb = false;
  171. }
  172. //---------------------------------------------------------------------------
  173. /*
  174. * Form이 Show되고 난 후 최초 1회 수행되는 타이머 이벤트
  175. * arguments
  176. * Sender : event handler 객체
  177. * return
  178. * void
  179. */
  180. void __fastcall TDSRM010M::TmrShowTimer(TObject *Sender)
  181. {
  182. TmrShow->Enabled = false;
  183. FRAMEGisMap1->LinkLevel = 1;
  184. FRAMEGisMap1->LoadGisMap();
  185. //FRAMEGisMap1->ShowHideTrafficLayer(false);
  186. UpdateRseIcon();
  187. FRAMEDsrcList1->UpdateList();
  188. }
  189. //---------------------------------------------------------------------------
  190. /*
  191. * Close 버튼 클릭 이벤트 핸들러
  192. * arguments
  193. * Sender : event handler 객체
  194. * return
  195. * void
  196. */
  197. void __fastcall TDSRM010M::BtnCloseClick(TObject *Sender)
  198. {
  199. Close();
  200. }
  201. //---------------------------------------------------------------------------
  202. void __fastcall TDSRM010M::FormClose(TObject *Sender, TCloseAction &Action)
  203. {
  204. CommClose();
  205. DSRM010M = NULL;
  206. Action = caFree;
  207. }
  208. //---------------------------------------------------------------------------
  209. void __fastcall TDSRM010M::FormCloseQuery(TObject *Sender, bool &CanClose)
  210. {
  211. if (FUpdate)
  212. {
  213. POST_MSG(Application->MainForm->Handle, WM_DATABASE_REFRESH, WP_MSG_14, 0);
  214. }
  215. FRAMEDsrcList1->OnCloseQuery(CanClose);
  216. }
  217. //---------------------------------------------------------------------------
  218. void __fastcall TDSRM010M::DisplayInfo(TItsDsrc* AObj)
  219. {
  220. FormInit();
  221. if (!AObj) return;
  222. EdId->Text = AObj->ID;
  223. EdRseId->Text = AObj->RSE_ID;
  224. EdRoadSpotId->Text = AObj->ROAD_SPOT_ID;
  225. EdLogCnncId->Text = AObj->LOG_CNNC_ID;
  226. EdLogCnncPwd->Text = AObj->LOG_CNNC_PW;
  227. EdIstlLctnNm->Text = AObj->ISTL_LCTN_NM;
  228. SePosX->Value = StrToFloatDef(AObj->LCTN_X, 0);
  229. SePosY->Value = StrToFloatDef(AObj->LCTN_Y, 0);
  230. EdIP->Text = AObj->IP;
  231. EdPort->Text = AObj->PORT;
  232. SeCLCT_ABNR_BASI->Value = AObj->CLCT_ABNR_BASI;
  233. SeAbnrAll->Value = SeCLCT_ABNR_BASI->Value;
  234. CMM_SetComboBoxItem(CbMnfcCmpyCd, AObj->MNFC_CMPY_CD);
  235. FRAMEGisMap1->SelectObjectByPos(SePosX->Value, SePosY->Value, true);
  236. ChangeEditMode(3);
  237. }
  238. //---------------------------------------------------------------------------
  239. void __fastcall TDSRM010M::FRAMEGisMap1xclntMapMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
  240. {
  241. if (Button != mbLeft) return;
  242. if (FRAMEGisMap1->xclntMap->MapOperation != OnSelect) return;
  243. FRAMEGisMap1->xclntMap->SetFocus();
  244. TDDPoint dptCurr = FRAMEGisMap1->xclntMap->ScreenToReal(Point( X, Y));
  245. try {
  246. SePosX->Value = dptCurr.X;
  247. SePosY->Value = dptCurr.Y;
  248. } catch(...) {}
  249. }
  250. //---------------------------------------------------------------------------
  251. void __fastcall TDSRM010M::UpdateRseIcon()
  252. {
  253. FRAMEGisMap1->xclntMap->ClearCCTVEvent(true);
  254. TItsFacility *pFacility;
  255. try
  256. {
  257. if (ChkViewIcon->Checked)
  258. {
  259. try
  260. {
  261. FRAMEDsrcList1->MyItsDsrcManager->FLists.Lock();
  262. FOR_STL(TItsDsrc*, pObj, FRAMEDsrcList1->MyItsDsrcManager->FLists)
  263. {
  264. if (pObj->DEL_YN == "Y") continue;
  265. //pFacility = ItsFacilityManager->FLists.Find(pObj->ID);
  266. //if (!pFacility) continue;
  267. try {
  268. String sTitle = "▶▶DSRC-RSE 정보◀◀|ID : " + pObj->ID + "|명칭 : " + pObj->ISTL_LCTN_NM;
  269. FRAMEGisMap1->xclntMap->ADDCCTVEvent(DDPoint(StrToFloatDef(pObj->LCTN_X, 0), StrToFloatDef(pObj->LCTN_Y, 0)), pObj->ID, "", sTitle, 6, 1, 7);
  270. } catch(...) { }
  271. }
  272. }
  273. __finally
  274. {
  275. FRAMEDsrcList1->MyItsDsrcManager->FLists.UnLock();
  276. }
  277. }
  278. }
  279. catch(...)
  280. {
  281. }
  282. FRAMEGisMap1->xclntMap->ReDraw();
  283. }
  284. //---------------------------------------------------------------------------
  285. void __fastcall TDSRM010M::FRAMEDsrcList1TvListCellDblClick(TcxCustomGridTableView *Sender, TcxGridTableDataCellViewInfo *ACellViewInfo,
  286. TMouseButton AButton, TShiftState AShift, bool &AHandled)
  287. {
  288. if (!ACellViewInfo) return;
  289. int nRow = FRAMEDsrcList1->TvList->DataController->FocusedRecordIndex;
  290. if( nRow <= -1 )
  291. return;
  292. int nMemPtr = FRAMEDsrcList1->TvList->DataController->Values[nRow][FRAMEDsrcList1->Column99->Index];
  293. TItsDsrc* pObj = (TItsDsrc*)nMemPtr;
  294. DisplayInfo(pObj);
  295. }
  296. //---------------------------------------------------------------------------
  297. void __fastcall TDSRM010M::ChkViewIconClick(TObject *Sender)
  298. {
  299. UpdateRseIcon();
  300. }
  301. //---------------------------------------------------------------------------
  302. void __fastcall TDSRM010M::BtnEditClick(TObject *Sender)
  303. {
  304. if (BtnEdit->Caption == "편집")
  305. {
  306. ChangeEditMode(0);
  307. FNewDb = false;
  308. }
  309. else
  310. {
  311. String sId = EdId->Text;
  312. ChangeEditMode(1);
  313. TItsDsrc *pObj = FRAMEDsrcList1->MyItsDsrcManager->FLists.Find(sId);
  314. if (pObj)
  315. {
  316. CMM_SetGridRow(FRAMEDsrcList1->CxList, FRAMEDsrcList1->TvList, sId, FRAMEDsrcList1->Column01->Index);
  317. DisplayInfo(pObj);
  318. }
  319. }
  320. }
  321. //---------------------------------------------------------------------------
  322. void __fastcall TDSRM010M::ChangeEditMode(int AEdit)
  323. {
  324. bool bEnabled = false;
  325. switch(AEdit)
  326. {
  327. case 0: //편집버튼클릭
  328. {
  329. BtnEdit->Enabled = true;
  330. BtnInsert->Enabled = false;
  331. BtnDelete->Enabled = false;
  332. BtnSave->Enabled = true;
  333. BtnEdit->Caption = "취소";
  334. BtnEdit->Hint = "데이터 편집 취소";
  335. }
  336. break;
  337. case 1: //편집[취소]버튼클릭
  338. {
  339. FormInit(); //화면을 모두 지운다.
  340. BtnEdit->Enabled = false;
  341. BtnInsert->Enabled = true;
  342. BtnDelete->Enabled = false;
  343. BtnSave->Enabled = false;
  344. BtnEdit->Caption = "편집";
  345. BtnEdit->Hint = "데이터 편집";
  346. bEnabled = true;
  347. }
  348. break;
  349. case 2: //추가
  350. {
  351. BtnEdit->Enabled = true;
  352. BtnInsert->Enabled = false;
  353. BtnDelete->Enabled = false;
  354. BtnSave->Enabled = true;
  355. BtnEdit->Caption = "취소";
  356. BtnEdit->Hint = "데이터 편집 취소";
  357. }
  358. break;
  359. case 3: //수정모드
  360. {
  361. BtnEdit->Enabled = true;
  362. BtnInsert->Enabled = true;
  363. BtnDelete->Enabled = true;
  364. BtnSave->Enabled = false;
  365. BtnEdit->Caption = "편집";
  366. BtnEdit->Hint = "데이터 편집";
  367. bEnabled = true;
  368. }
  369. break;
  370. }
  371. if (AEdit == 0 || AEdit == 2)
  372. {
  373. FRAMEDsrcList1->CxList->Enabled = false;
  374. }
  375. else
  376. {
  377. FRAMEDsrcList1->CxList->Enabled = true;
  378. }
  379. #if 1
  380. EdId->Properties->ReadOnly = bEnabled;
  381. EdRseId->Properties->ReadOnly = bEnabled;
  382. EdRoadSpotId->Properties->ReadOnly = bEnabled;
  383. EdLogCnncId->Properties->ReadOnly = bEnabled;
  384. EdLogCnncPwd->Properties->ReadOnly = bEnabled;
  385. EdIstlLctnNm->Properties->ReadOnly = bEnabled;
  386. SePosX->Properties->ReadOnly = bEnabled;
  387. SePosY->Properties->ReadOnly = bEnabled;
  388. EdIP->Properties->ReadOnly = bEnabled;
  389. EdPort->Properties->ReadOnly = bEnabled;
  390. CbMnfcCmpyCd->Properties->ReadOnly = bEnabled;
  391. SeCLCT_ABNR_BASI->Properties->ReadOnly = bEnabled;
  392. #endif
  393. }
  394. //---------------------------------------------------------------------------
  395. void __fastcall TDSRM010M::BtnInsertClick(TObject *Sender)
  396. {
  397. FormInit();
  398. //신규아이디를 얻어와서 화면을 초기화한다.
  399. String sRseId;
  400. if (!FRAMEDsrcList1->MyItsDsrcManager->GetNextRseId(sRseId))
  401. {
  402. Application->MessageBox(L"새로운 RSE ID를 생성하지 못하였습니다.\r\n프로그램 종료후에 다시 시도해 보세요.",
  403. FTitle.c_str(), MB_OK|MB_ICONERROR|MB_APPLMODAL);
  404. return;
  405. }
  406. EdId->Text = sRseId;
  407. EdRseId->Text = sRseId;
  408. ChangeEditMode(2);
  409. FNewDb = true;
  410. }
  411. //---------------------------------------------------------------------------
  412. void __fastcall TDSRM010M::BtnDeleteClick(TObject *Sender)
  413. {
  414. int nIdx = m_pGDC->FocusedRecordIndex;
  415. if (nIdx < 0) return;
  416. String sId = EdId->Text;
  417. if (sId.IsEmpty())
  418. {
  419. Application->MessageBox(L"삭제할 DSRC-RSE를 목록에서 선택하세요.\r\n목록에서 더블클릭하여 선택합니다.", FTitle.c_str(), MB_OK|MB_ICONERROR|MB_APPLMODAL);
  420. return;
  421. }
  422. String sMsg;
  423. sMsg = "ID: " + sId;
  424. sMsg+= "\r\n선택하신 DSRC-RSE 정보를 삭제하시겠습니까?";
  425. if (Application->MessageBox(sMsg.c_str(), FTitle.c_str(), MB_YESNO|MB_ICONQUESTION|MB_APPLMODAL) != IDYES) return;
  426. TItsDsrc *pObj = FRAMEDsrcList1->MyItsDsrcManager->FLists.Find(sId);
  427. if (pObj)
  428. {
  429. if (FRAMEDsrcList1->MyItsDsrcManager->DeleteDsrc(pObj))
  430. {
  431. pObj->DEL_YN = "Y";
  432. FRAMEDsrcList1->UpdateList();
  433. }
  434. TItsFacility *pFacility = ItsFacilityManager->FLists.Find(sId);
  435. if (pFacility)
  436. {
  437. FUpdate = true;
  438. }
  439. Application->MessageBox(L"DSRC-RSE 정보삭제\r\nDSRC-RSE 정보를 삭제 하였습니다.",
  440. FTitle.c_str(), MB_OK|MB_ICONINFORMATION|MB_APPLMODAL);
  441. FormInit();
  442. ChangeEditMode(1);
  443. }
  444. }
  445. //---------------------------------------------------------------------------
  446. void __fastcall TDSRM010M::BtnSaveClick(TObject *Sender)
  447. {
  448. if (EdId->Text.IsEmpty() ||
  449. EdRseId->Text.Trim().IsEmpty() ||
  450. EdRoadSpotId->Text.IsEmpty() ||
  451. SePosX->Value == 0 ||
  452. SePosY->Value == 0 ||
  453. CbMnfcCmpyCd->Text.IsEmpty() )
  454. {
  455. Application->MessageBox(L"★항목은 필수 입력 항목입니다.\r\n모두 입력후 진행해 주세요.",
  456. FTitle.c_str(), MB_OK|MB_ICONERROR|MB_APPLMODAL);
  457. return;
  458. }
  459. String sId = EdId->Text;
  460. TItsDsrc *pObj;
  461. if (FNewDb)
  462. pObj = new TItsDsrc();
  463. else
  464. pObj = FRAMEDsrcList1->MyItsDsrcManager->FLists.Find(sId);
  465. if (pObj)
  466. {
  467. String sOldRseId = pObj->RSE_ID; //TODO
  468. pObj->ID = sId;
  469. pObj->RSE_ID = EdRseId->Text.Trim();
  470. pObj->ROAD_SPOT_ID = EdRoadSpotId->Text.Trim();
  471. pObj->LOG_CNNC_ID = EdLogCnncId->Text.Trim();
  472. pObj->LOG_CNNC_PW = EdLogCnncPwd->Text.Trim();
  473. pObj->ISTL_LCTN_NM = EdIstlLctnNm->Text.Trim();
  474. pObj->LCTN_X = VarToStr(SePosX->Value);
  475. pObj->LCTN_Y = VarToStr(SePosY->Value);
  476. pObj->IP = EdIP->Text.Trim();
  477. pObj->PORT = EdPort->Text.Trim();
  478. pObj->MNFC_CMPY_CD = ITSUtil_GetCode(CbMnfcCmpyCd->Text);
  479. pObj->CLCT_ABNR_BASI = (SeCLCT_ABNR_BASI->Value);
  480. pObj->Completed = true;
  481. pObj->MEM_DEL = "N";
  482. bool bResult;
  483. if (FNewDb)
  484. {
  485. bResult = FRAMEDsrcList1->MyItsDsrcManager->InsertDsrc(pObj);
  486. if (bResult)
  487. {
  488. FRAMEDsrcList1->MyItsDsrcManager->FLists.Push(sId, pObj);
  489. }
  490. }
  491. else
  492. {
  493. bResult = FRAMEDsrcList1->MyItsDsrcManager->UpdateDsrc(sOldRseId, pObj);
  494. }
  495. if (bResult)
  496. {
  497. Application->MessageBox(L"DSRC-RSE 정보저장\r\nDSRC-RSE 정보를 저장 하였습니다.",
  498. FTitle.c_str(), MB_OK|MB_ICONINFORMATION|MB_APPLMODAL);
  499. FUpdate = true;
  500. FRAMEDsrcList1->UpdateList();
  501. UpdateRseIcon();
  502. CMM_SetGridRow(FRAMEDsrcList1->CxList, FRAMEDsrcList1->TvList, sId, FRAMEDsrcList1->Column01->Index);
  503. DisplayInfo(pObj);
  504. }
  505. }
  506. }
  507. //---------------------------------------------------------------------------
  508. void __fastcall TDSRM010M::BtnSaveAllClick(TObject *Sender)
  509. {
  510. String sMsg;
  511. sMsg = "";
  512. sMsg+= "\r\n수집 이상 기준 정보를 전체 적용 하시겠습니까?";
  513. if (Application->MessageBox(sMsg.c_str(), FTitle.c_str(), MB_YESNO|MB_ICONQUESTION|MB_APPLMODAL) != IDYES) return;
  514. int nCLCT_ABNR_BASI = (SeAbnrAll->Value);
  515. if (FRAMEDsrcList1->MyItsDsrcManager->UpdateClctAbnrBasi(nCLCT_ABNR_BASI))
  516. {
  517. SeCLCT_ABNR_BASI->Value = SeAbnrAll->Value;
  518. FUpdate = true;
  519. Application->MessageBox(L"수집 이상 기준\r\n수집 이상 기준 정보를 저장 하였습니다.",
  520. FTitle.c_str(), MB_OK|MB_ICONINFORMATION|MB_APPLMODAL);
  521. }
  522. }
  523. //---------------------------------------------------------------------------