//--------------------------------------------------------------------------- #include #include "ITSSkinF.h" #include "ITSUtilF.h" #include "AppGlobalF.h" #pragma hdrstop #include "FRAME_IncidentRegistF.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "cxContainer" #pragma link "cxControls" #pragma link "cxEdit" #pragma link "cxGraphics" #pragma link "cxGroupBox" #pragma link "cxLookAndFeelPainters" #pragma link "cxLookAndFeels" #pragma link "dxSkinBlack" #pragma link "dxSkinBlue" #pragma link "dxSkinCaramel" #pragma link "dxSkinCoffee" #pragma link "dxSkinDarkRoom" #pragma link "dxSkinDarkSide" #pragma link "dxSkinFoggy" #pragma link "dxSkinGlassOceans" #pragma link "dxSkiniMaginary" #pragma link "dxSkinLilian" #pragma link "dxSkinLiquidSky" #pragma link "dxSkinLondonLiquidSky" #pragma link "dxSkinMcSkin" #pragma link "dxSkinMoneyTwins" #pragma link "dxSkinOffice2007Black" #pragma link "dxSkinOffice2007Blue" #pragma link "dxSkinOffice2007Green" #pragma link "dxSkinOffice2007Pink" #pragma link "dxSkinOffice2007Silver" #pragma link "dxSkinOffice2010Black" #pragma link "dxSkinOffice2010Blue" #pragma link "dxSkinOffice2010Silver" #pragma link "dxSkinsCore" #pragma link "dxSkinSeven" #pragma link "dxSkinSharp" #pragma link "dxSkinSilver" #pragma link "dxSkinStardust" #pragma link "cxSplitter" #pragma link "cxClasses" #pragma link "cxCustomData" #pragma link "cxData" #pragma link "cxDataStorage" #pragma link "cxFilter" #pragma link "cxGrid" #pragma link "cxGridCustomTableView" #pragma link "cxGridCustomView" #pragma link "cxGridLevel" #pragma link "cxGridTableView" #pragma link "cxLabel" #pragma link "cxStyles" #pragma link "dxSkinscxPCPainter" #pragma link "cxButtons" #pragma link "cxTextEdit" #pragma link "cxDropDownEdit" #pragma link "cxMaskEdit" #pragma link "cxCalc" #pragma link "cxCalendar" #pragma resource "*.dfm" TFRAMEIncidentRegist *FRAMEIncidentRegist; //--------------------------------------------------------------------------- __fastcall TFRAMEIncidentRegist::TFRAMEIncidentRegist(TComponent* Owner) : TFrame(Owner) { ITSSkin_Load((TForm*)this); FTitle = "½Å±Ô µ¹¹ß µî·Ï"; m_pGDC = TvList->DataController; TvList->OptionsView->NoDataToDisplayInfoText = "<ÇöÀç µî·ÏµÈ µ¹¹ßÁ¤º¸°¡ ¾ø½À´Ï´Ù>"; FCodeIST = ItsCodeManager->FLists.Find("IST"); //µ¹¹ß»óȲ ¿øº» ÄÚµå : IST FCodeLTCU = ItsCodeManager->FLists.Find("LTCU"); //¼ÒÅë µî±Þ ÄÚµå : LTCU FCodeICM = ItsCodeManager->FLists.Find("ICM"); //µ¹¹ß»óȲ È®ÀÎ ¹æ¹ý ÄÚµå : ICM FCodeIDTU = ItsCodeManager->FLists.Find("IDTU"); //µ¹¹ß»óȲ À¯Çü ºÐ·ù ÄÚµå : IDTU FCodeACTU = ItsCodeManager->FLists.Find("ACTU"); //µ¹¹ß»óȲ À¯Çü ÄÚµå : ACTU, CRTU, EVTU, WETU Áß Çϳª FCodeCRTU = ItsCodeManager->FLists.Find("CRTU"); //µ¹¹ß»óȲ À¯Çü ÄÚµå : ACTU, CRTU, EVTU, WETU Áß Çϳª FCodeEVTU = ItsCodeManager->FLists.Find("EVTU"); //µ¹¹ß»óȲ À¯Çü ÄÚµå : ACTU, CRTU, EVTU, WETU Áß Çϳª FCodeWETU = ItsCodeManager->FLists.Find("WETU"); //µ¹¹ß»óȲ À¯Çü ÄÚµå : ACTU, CRTU, EVTU, WETU Áß Çϳª FCodeSRLU = ItsCodeManager->FLists.Find("SRLU"); //µ¹¹ß»óȲ ½É°¢µµ ÄÚµå : SRLU FCodePRTU = ItsCodeManager->FLists.Find("PRTU"); //ÅëÇà Á¦ÇÑ À¯Çü ÄÚµå : PRTU FCodeRSL = ItsCodeManager->FLists.Find("RSL"); //´ëÀÀ ¼öÁØ ÄÚµå : RSL FCodeISS = ItsCodeManager->FLists.Find("ISS"); //µ¹¹ß»óȲ ÁøÇà ´Ü°è ÄÚµå : ISS FCodeICM = ItsCodeManager->FLists.Find("ICM"); //µ¹¹ß»óȲ Á¾·á È®ÀÎ ¹æ¹ý ÄÚµå : ICM FCodeDFW = ItsCodeManager->FLists.Find("DFW"); //±â»ó ÄÚµå : DFW FCodeVIT = ItsCodeManager->FLists.Find("VIT"); //VMS µ¹¹ß À¯Çü ÄÚµå : VIT FCodeIDT = ItsCodeManager->FLists.Find("IDT"); //VMS µ¹¹ß À¯Çü ¼¼ºÎ ÄÚµå : IDT FCodeEDT = ItsCodeManager->FLists.Find("EDT"); //VMS µ¹¹ß À¯Çü ¼¼ºÎ ÄÚµå : EDT InitForm(); } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::InitForm() { DtINCD_CNFM_DT->Date = Now(); DtINCD_STRT_DT->Date = Now(); DtINCD_END_PRAR_DT->Date = Now() + ( 1 / 24 ); CbINCD_ORGN_CD->Properties->Items->Clear(); if (FCodeIST) { FOR_STL(TItsSubCode *, pSubCode, FCodeIST->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_ORGN_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } CbINCD_ORGN_CD->ItemIndex = 0; CbCMTR_GRAD_CD->Properties->Items->Clear(); if (FCodeLTCU) { FOR_STL(TItsSubCode *, pSubCode, FCodeLTCU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbCMTR_GRAD_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } CbCMTR_GRAD_CD->ItemIndex = 0; CbINCD_CNFM_MTHD_CD->Properties->Items->Clear(); if (FCodeICM) { FOR_STL(TItsSubCode *, pSubCode, FCodeICM->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_CNFM_MTHD_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } CbINCD_CNFM_MTHD_CD->ItemIndex = 0; CbINCD_SERN_CD->Properties->Items->Clear(); if (FCodeSRLU) { FOR_STL(TItsSubCode *, pSubCode, FCodeSRLU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_SERN_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } CbINCD_SERN_CD->ItemIndex = 0; CbINCD_TYPE_CLSF_CD->Properties->Items->Clear(); if (FCodeIDTU) { FOR_STL(TItsSubCode *, pSubCode, FCodeIDTU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_TYPE_CLSF_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } CbINCD_TYPE_CLSF_CD->ItemIndex = 0; CbINCD_TYPE_CLSF_CDClick((TObject *)CbINCD_TYPE_CLSF_CD); } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::UpdateList() { TItsSubCode *pSubCode; CMM_ClearGridTableView(TvList); int nRow = 0; try { TvList->BeginUpdate(); try { ItsIncidentManager->FLists.Lock(); FOR_STL(TItsIncident *, pObj, ItsIncidentManager->FLists) { if (pObj->INCD_PRGR_STEP_CD != "ISS1") continue; nRow = m_pGDC->AppendRecord(); String sIST = ""; if (pObj->INCD_ORGN_CD != "") sIST = " [" + pObj->INCD_ORGN_CD + "] "; String sLTCU= ""; if (pObj->CMTR_GRAD_CD != "") sLTCU = " [" + pObj->CMTR_GRAD_CD + "] "; String sICM = ""; if (pObj->INCD_CNFM_MTHD_CD != "") sICM = " [" + pObj->INCD_CNFM_MTHD_CD + "] "; String sSRLU= ""; if (pObj->INCD_SERN_CD != "") sSRLU = " [" + pObj->INCD_SERN_CD + "] "; String sIDTU = ""; if (pObj->INCD_TYPE_CLSF_CD != "") sIDTU = " [" + pObj->INCD_TYPE_CLSF_CD + "] "; String sACTU = ""; if (pObj->INCD_TYPE_CD != "") sACTU = " [" + pObj->INCD_TYPE_CD + "] "; String sISS = ""; if (pObj->INCD_PRGR_STEP_CD != "") sISS = " [" + pObj->INCD_PRGR_STEP_CD + "] "; String sDFW = ""; if (pObj->WTHR_CD != "") sDFW = " [" + pObj->WTHR_CD + "] "; String sRSL = ""; if (pObj->RESP_LVL_CD != "") sRSL = " [" + pObj->RESP_LVL_CD + "] "; String sPRTU = ""; if (pObj->TRVL_LMNT_TYPE_CD != "") sPRTU = " [" + pObj->TRVL_LMNT_TYPE_CD + "] "; if (FCodeIST) { pSubCode = FCodeIST->FSubLists.Find(pObj->INCD_ORGN_CD); if (pSubCode) sIST = sIST + pSubCode->CMMN_CD_KOR_NM; } if (FCodeLTCU) { pSubCode = FCodeLTCU->FSubLists.Find(pObj->CMTR_GRAD_CD); if (pSubCode) sLTCU = sLTCU + pSubCode->CMMN_CD_KOR_NM; } if (FCodeICM) { pSubCode = FCodeICM->FSubLists.Find(pObj->INCD_CNFM_MTHD_CD); if (pSubCode) sICM = sICM + pSubCode->CMMN_CD_KOR_NM; } if (FCodeSRLU) { pSubCode = FCodeSRLU->FSubLists.Find(pObj->INCD_SERN_CD); if (pSubCode) sSRLU = sSRLU + pSubCode->CMMN_CD_KOR_NM; } if (FCodeIDTU) { pSubCode = FCodeIDTU->FSubLists.Find(pObj->INCD_TYPE_CLSF_CD); if (pSubCode) sIDTU = sIDTU + pSubCode->CMMN_CD_KOR_NM; } if (!pObj->INCD_TYPE_CLSF_CD.IsEmpty() && !pObj->INCD_TYPE_CD.IsEmpty()) { if (pObj->INCD_TYPE_CLSF_CD == "1") { if (FCodeACTU) { pSubCode = FCodeACTU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } else if (pObj->INCD_TYPE_CLSF_CD == "2") { if (FCodeCRTU) { pSubCode = FCodeCRTU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } else if (pObj->INCD_TYPE_CLSF_CD == "3") { if (FCodeEVTU) { pSubCode = FCodeEVTU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } else if (pObj->INCD_TYPE_CLSF_CD == "4") { if (FCodeWETU) { pSubCode = FCodeWETU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } } if (FCodeISS) { pSubCode = FCodeISS->FSubLists.Find(pObj->INCD_PRGR_STEP_CD); if (pSubCode) sISS = sISS + pSubCode->CMMN_CD_KOR_NM; } if (FCodeDFW) { pSubCode = FCodeISS->FSubLists.Find(pObj->WTHR_CD); if (pSubCode) sDFW = sDFW + pSubCode->CMMN_CD_KOR_NM; } if (FCodeRSL) { pSubCode = FCodeRSL->FSubLists.Find(pObj->RESP_LVL_CD); if (pSubCode) sRSL = sRSL + pSubCode->CMMN_CD_KOR_NM; } if (FCodePRTU) { pSubCode = FCodePRTU->FSubLists.Find(pObj->TRVL_LMNT_TYPE_CD); if (pSubCode) sPRTU = sPRTU + pSubCode->CMMN_CD_KOR_NM; } m_pGDC->Values[nRow][Column01->Index] = pObj->INCD_OCRR_ID; //µ¹¹ß»óȲ ¹ß»ý ID m_pGDC->Values[nRow][Column02->Index] = ITSUtil_StrToDateTime(pObj->RGST_DT); //µî·Ï ÀϽà m_pGDC->Values[nRow][Column03->Index] = sISS;//pObj->INCD_PRGR_STEP_CD; //µ¹¹ß»óȲ ÁøÇà ´Ü°è ÄÚµå : ISS m_pGDC->Values[nRow][Column04->Index] = sIST;//pObj->INCD_ORGN_CD; //µ¹¹ß»óȲ ¿øº» ÄÚµå : IST m_pGDC->Values[nRow][Column05->Index] = pObj->OCRR_LCTN_NM; //¹ß»ý À§Ä¡ ¸í m_pGDC->Values[nRow][Column06->Index] = pObj->LINK_ID; //µ¹¹ß¹ß»ý LINK ID m_pGDC->Values[nRow][Column07->Index] = pObj->X_CRDN; //X ÁÂÇ¥ m_pGDC->Values[nRow][Column08->Index] = pObj->Y_CRDN; //Y ÁÂÇ¥ m_pGDC->Values[nRow][Column09->Index] = pObj->INCD_EXPL; //µ¹¹ß»óȲ ¼³¸í m_pGDC->Values[nRow][Column10->Index] = sLTCU;//pObj->CMTR_GRAD_CD; //¼ÒÅë µî±Þ ÄÚµå : LTCU m_pGDC->Values[nRow][Column11->Index] = pObj->IFMR_NM; //Á¦º¸ÀÚ ¸í m_pGDC->Values[nRow][Column12->Index] = sICM;//pObj->INCD_CNFM_MTHD_CD; //µ¹¹ß»óȲ È®ÀÎ ¹æ¹ý ÄÚµå : ICM m_pGDC->Values[nRow][Column13->Index] = sSRLU;//pObj->INCD_SERN_CD; //µ¹¹ß»óȲ ½É°¢µµ ÄÚµå : SRLU m_pGDC->Values[nRow][Column14->Index] = pObj->INCD_TITL; //µ¹¹ß»óȲ Á¦¸ñ m_pGDC->Values[nRow][Column15->Index] = sIDTU;//pObj->INCD_TYPE_CLSF_CD; //µ¹¹ß»óȲ À¯Çü ºÐ·ù ÄÚµå : IDTU m_pGDC->Values[nRow][Column16->Index] = sACTU;//pObj->INCD_TYPE_CD; //µ¹¹ß»óȲ À¯Çü ÄÚµå : ACTU, CRTU, EVTU, WETU Áß Çϳª m_pGDC->Values[nRow][Column17->Index] = ITSUtil_StrToDateTime(pObj->FINCD_STRT_DT); //µ¹¹ß»óȲ ½ÃÀÛ ÀϽà m_pGDC->Values[nRow][Column18->Index] = ITSUtil_StrToDateTime(pObj->INCD_END_PRAR_DT); //µ¹¹ß»óȲ Á¾·á ¿¹Á¤ ÀϽà m_pGDC->Values[nRow][Column19->Index] = pObj->INCD_OCRR_LANE; //µ¹¹ß»óȲ ¹ß»ý Â÷·Î m_pGDC->Values[nRow][Column20->Index] = pObj->INCD_CLSR_LANE; //µ¹¹ß»óȲ Â÷´Ü Â÷·Î m_pGDC->Values[nRow][Column21->Index] = pObj->DELY_LNGT; //Áöü ±æÀÌ m_pGDC->Values[nRow][Column22->Index] = pObj->INCD_LNGT; //µ¹¹ß»óȲ ±æÀÌ m_pGDC->Values[nRow][Column23->Index] = pObj->SMLT_VHCL_UNUM; //¼ÒÇü Â÷·® ´ë¼ö m_pGDC->Values[nRow][Column24->Index] = pObj->MDLT_VHCL_UNUM; //Áß´ëÇü Â÷·® ´ë¼ö m_pGDC->Values[nRow][Column25->Index] = pObj->INJR_PNUM; //ºÎ»óÀÚ Àοø¼ö m_pGDC->Values[nRow][Column26->Index] = pObj->FTLT_PNUM; //»ç¸ÁÀÚ Àοø¼ö m_pGDC->Values[nRow][Column27->Index] = sDFW;//pObj->WTHR_CD; //±â»ó ÄÚµå : DFW m_pGDC->Values[nRow][Column28->Index] = sRSL;//pObj->RESP_LVL_CD; //´ëÀÀ ¼öÁØ ÄÚµå : RSL m_pGDC->Values[nRow][Column29->Index] = pObj->UTIS_CNCT_YN; //UTIS ¿¬°è ¿©ºÎ m_pGDC->Values[nRow][Column30->Index] = pObj->TRUB_VHCL_YN; //°íÀå Â÷·® ¿©ºÎ m_pGDC->Values[nRow][Column31->Index] = pObj->FALT_YN; //³«ÇϹ° ¿©ºÎ m_pGDC->Values[nRow][Column32->Index] = pObj->FRWT_YN; //È­ÀçÀ§Çè¹° ¿©ºÎ m_pGDC->Values[nRow][Column33->Index] = sPRTU;//pObj->TRVL_LMNT_TYPE_CD; //ÅëÇà Á¦ÇÑ À¯Çü ÄÚµå : PRTU m_pGDC->Values[nRow][Column34->Index] = pObj->VMS_DSPL_YN; //VMS Ç¥Ãâ ¿©ºÎ m_pGDC->Values[nRow][Column35->Index] = ITSUtil_StrToDateTime(pObj->INCD_CNFM_DT); //VMS Ç¥Ãâ ¿©ºÎ m_pGDC->Values[nRow][Column99->Index] = (int)pObj; } } __finally { ItsIncidentManager->FLists.UnLock(); } } __finally { LblRecords->Caption = "("+FormatFloat("##,##0", m_pGDC->FilteredRecordCount) +"/"+FormatFloat("##,##0", m_pGDC->RecordCount) + ")"; TvList->EndUpdate(); TvList->DataController->GotoFirst(); TvList->DataController->FocusedRecordIndex = 0; } } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::TvListDataControllerFilterChanged(TObject *Sender) { LblRecords->Caption = "("+FormatFloat("##,##0", m_pGDC->FilteredRecordCount) +"/"+FormatFloat("##,##0", m_pGDC->RecordCount) + ")"; } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::BtnExlSaveClick(TObject *Sender) { TcxGrid *pGrid = CxList; TcxGridTableView *pView = TvList; String sTitle= "µî·ÏµÈ µ¹¹ßÁ¤º¸"; CMM_ExportToExcelFile(sTitle, pGrid, pView, (TForm*)this); } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::CbINCD_TYPE_CLSF_CDClick(TObject *Sender) { if (CbINCD_TYPE_CLSF_CD->ItemIndex < 0) return; CbINCD_TYPE_CD->Properties->Items->Clear(); String sCode = ITSUtil_GetCode(CbINCD_TYPE_CLSF_CD->Text); if (sCode == "1") { if (FCodeACTU) { FOR_STL(TItsSubCode *, pSubCode, FCodeACTU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_TYPE_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } } else if (sCode == "2") { if (FCodeCRTU) { FOR_STL(TItsSubCode *, pSubCode, FCodeCRTU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_TYPE_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } } else if (sCode == "3") { if (FCodeEVTU) { FOR_STL(TItsSubCode *, pSubCode, FCodeEVTU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_TYPE_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } } else if (sCode == "4") { if (FCodeWETU) { FOR_STL(TItsSubCode *, pSubCode, FCodeWETU->FSubLists) { if (pSubCode->USE_YN == "N") continue; CbINCD_TYPE_CD->Properties->Items->Add(" [" + pSubCode->CMMN_CD + "] " + pSubCode->CMMN_CD_KOR_NM); } } } CbINCD_TYPE_CD->ItemIndex = 0; } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::TvListCellDblClick(TcxCustomGridTableView *Sender, TcxGridTableDataCellViewInfo *ACellViewInfo, TMouseButton AButton, TShiftState AShift, bool &AHandled) { int nRow = m_pGDC->FocusedRecordIndex; if( nRow <= -1 ) return; TItsSubCode *pSubCode; int nMemPtr = m_pGDC->Values[nRow][Column99->Index]; TItsIncident *pObj = (TItsIncident *)nMemPtr; String sIST = ""; if (pObj->INCD_ORGN_CD != "") sIST = " [" + pObj->INCD_ORGN_CD + "] "; String sLTCU= ""; if (pObj->CMTR_GRAD_CD != "") sLTCU = " [" + pObj->CMTR_GRAD_CD + "] "; String sICM = ""; if (pObj->INCD_CNFM_MTHD_CD != "") sICM = " [" + pObj->INCD_CNFM_MTHD_CD + "] "; String sSRLU= ""; if (pObj->INCD_SERN_CD != "") sSRLU = " [" + pObj->INCD_SERN_CD + "] "; String sIDTU = ""; if (pObj->INCD_TYPE_CLSF_CD != "") sIDTU = " [" + pObj->INCD_TYPE_CLSF_CD + "] "; String sACTU = ""; if (pObj->INCD_TYPE_CD != "") sACTU = " [" + pObj->INCD_TYPE_CD + "] "; String sISS = ""; if (pObj->INCD_PRGR_STEP_CD != "") sISS = " [" + pObj->INCD_PRGR_STEP_CD + "] "; String sDFW = ""; if (pObj->WTHR_CD != "") sDFW = " [" + pObj->WTHR_CD + "] "; String sRSL = ""; if (pObj->RESP_LVL_CD != "") sRSL = " [" + pObj->RESP_LVL_CD + "] "; String sPRTU = ""; if (pObj->TRVL_LMNT_TYPE_CD != "") sPRTU = " [" + pObj->TRVL_LMNT_TYPE_CD + "] "; if (FCodeIST) { pSubCode = FCodeIST->FSubLists.Find(pObj->INCD_ORGN_CD); if (pSubCode) sIST = sIST + pSubCode->CMMN_CD_KOR_NM; } if (FCodeLTCU) { pSubCode = FCodeLTCU->FSubLists.Find(pObj->CMTR_GRAD_CD); if (pSubCode) sLTCU = sLTCU + pSubCode->CMMN_CD_KOR_NM; } if (FCodeICM) { pSubCode = FCodeICM->FSubLists.Find(pObj->INCD_CNFM_MTHD_CD); if (pSubCode) sICM = sICM + pSubCode->CMMN_CD_KOR_NM; } if (FCodeSRLU) { pSubCode = FCodeSRLU->FSubLists.Find(pObj->INCD_SERN_CD); if (pSubCode) sSRLU = sSRLU + pSubCode->CMMN_CD_KOR_NM; } if (FCodeIDTU) { pSubCode = FCodeIDTU->FSubLists.Find(pObj->INCD_TYPE_CLSF_CD); if (pSubCode) sIDTU = sIDTU + pSubCode->CMMN_CD_KOR_NM; } if (!pObj->INCD_TYPE_CLSF_CD.IsEmpty() && !pObj->INCD_TYPE_CD.IsEmpty()) { if (pObj->INCD_TYPE_CLSF_CD == "1") { if (FCodeACTU) { pSubCode = FCodeACTU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } else if (pObj->INCD_TYPE_CLSF_CD == "2") { if (FCodeCRTU) { pSubCode = FCodeCRTU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } else if (pObj->INCD_TYPE_CLSF_CD == "3") { if (FCodeEVTU) { pSubCode = FCodeEVTU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } else if (pObj->INCD_TYPE_CLSF_CD == "4") { if (FCodeWETU) { pSubCode = FCodeWETU->FSubLists.Find(pObj->INCD_TYPE_CD); if (pSubCode) sACTU = sACTU + pSubCode->CMMN_CD_KOR_NM; } } } if (FCodeISS) { pSubCode = FCodeISS->FSubLists.Find(pObj->INCD_PRGR_STEP_CD); if (pSubCode) sISS = sISS + pSubCode->CMMN_CD_KOR_NM; } if (FCodeDFW) { pSubCode = FCodeISS->FSubLists.Find(pObj->WTHR_CD); if (pSubCode) sDFW = sDFW + pSubCode->CMMN_CD_KOR_NM; } if (FCodeRSL) { pSubCode = FCodeRSL->FSubLists.Find(pObj->RESP_LVL_CD); if (pSubCode) sRSL = sRSL + pSubCode->CMMN_CD_KOR_NM; } if (FCodePRTU) { pSubCode = FCodePRTU->FSubLists.Find(pObj->TRVL_LMNT_TYPE_CD); if (pSubCode) sPRTU = sPRTU + pSubCode->CMMN_CD_KOR_NM; } EdINCD_OCRR_ID->Text = pObj->INCD_OCRR_ID; EdRGST_DT->Text = ITSUtil_StrToDateTime(pObj->RGST_DT); CbINCD_ORGN_CD->Text = sIST; EdOCRR_LCTN_NM->Text = pObj->OCRR_LCTN_NM; EdINCD_EXPL->Text = pObj->INCD_EXPL; CbCMTR_GRAD_CD->Text = sLTCU; EdIFMR_NM->Text = pObj->IFMR_NM; CbINCD_CNFM_MTHD_CD->Text = sICM; CbINCD_SERN_CD->Text = sSRLU; CbINCD_TYPE_CLSF_CD->Text = sIDTU; CbINCD_TYPE_CLSF_CDClick((TObject *)CbINCD_TYPE_CLSF_CD); CbINCD_TYPE_CD->Text = sACTU; DtINCD_CNFM_DT->Date = ITSUtil_StrToDateTime(pObj->INCD_CNFM_DT); DtINCD_STRT_DT->Date = ITSUtil_StrToDateTime(pObj->FINCD_STRT_DT); DtINCD_END_PRAR_DT->Date = ITSUtil_StrToDateTime(pObj->INCD_END_PRAR_DT); } //--------------------------------------------------------------------------- void __fastcall TFRAMEIncidentRegist::BtnSaveClick(TObject *Sender) { //ÀÔ·Â if (EdOCRR_LCTN_NM->Text.IsEmpty() || EdINCD_EXPL->Text.IsEmpty() || DtINCD_CNFM_DT->EditValue.IsEmpty()) { Application->MessageBox(L"¡ÚÇ׸ñÀº Çʼö ÀÔ·Â Ç׸ñÀÔ´Ï´Ù.\r\n¸ðµÎ ÀÔ·ÂÈÄ ÁøÇàÇØ ÁÖ¼¼¿ä.", FTitle.c_str(), MB_OK|MB_ICONERROR|MB_APPLMODAL); return; } if (Application->MessageBox(L"½Å±Ô µ¹¹ß Á¤º¸¸¦ ÀúÀå ÇϽðڽÀ´Ï±î?", FTitle.c_str(), MB_YESNO|MB_ICONQUESTION|MB_APPLMODAL) != IDYES) return; String sIncidentId = ""; if (!ItsIncidentManager->GetNextIncidentId(CenterId, sIncidentId)) { Application->MessageBox(L"½Å±Ô µ¹¹ß ID¸¦ Á¶È¸ÇÏÁö ¸øÇÏ¿´½À´Ï´Ù.\r\nµ¥ÀÌÅͺ£À̽º °ü¸®ÀÚ¿¡°Ô È®ÀÎ ÈÄ¿¡ ÀÛ¾÷Çϼ¼¿ä.", FTitle.c_str(), MB_OK|MB_ICONERROR|MB_APPLMODAL); return; } bool bResult = InsertToDb(sIncidentId, ITSUtil_GetCode(CbINCD_ORGN_CD->Text), EdOCRR_LCTN_NM->Text.Trim(), EdINCD_EXPL->Text.Trim(), ITSUtil_GetCode(CbCMTR_GRAD_CD->Text), EdIFMR_NM->Text.Trim(), ITSUtil_GetCode(CbINCD_CNFM_MTHD_CD->Text), ITSUtil_GetCode(CbINCD_SERN_CD->Text), ITSUtil_GetCode(CbINCD_TYPE_CLSF_CD->Text), ITSUtil_GetCode(CbINCD_TYPE_CD->Text), DtINCD_CNFM_DT->Date.FormatString("YYYYMMDDHHNNSS"), DtINCD_STRT_DT->Date.FormatString("YYYYMMDDHHNNSS"), DtINCD_END_PRAR_DT->Date.FormatString("YYYYMMDDHHNNSS")); if (bResult) { ItsIncidentManager->LoadFromDb(); UpdateList(); CMM_SetGridFocusRow(CxList, TvList, sIncidentId, Column01->Index); } } //--------------------------------------------------------------------------- bool __fastcall TFRAMEIncidentRegist::InsertToDb(String AINCD_OCRR_ID, //µ¹¹ßID String AINCD_ORGN_CD, //µ¹¹ß»óȲ ¿øº» ÄÚµå : IST String AOCRR_LCTN_NM, //¹ß»ý À§Ä¡ ¸í String AINCD_EXPL, //µ¹¹ß»óȲ ¼³¸í String ACMTR_GRAD_CD, //¼ÒÅë µî±Þ ÄÚµå : LTCU String AIFMR_NM, //Á¦º¸ÀÚ ¸í String AINCD_CNFM_MTHD_CD, //µ¹¹ß»óȲ È®ÀÎ ¹æ¹ý ÄÚµå : ICM String AINCD_SERN_CD, //µ¹¹ß»óȲ ½É°¢µµ ÄÚµå : SRLU String AINCD_TYPE_CLSF_CD, //µ¹¹ß»óȲ À¯Çü ºÐ·ù ÄÚµå : IDTU String AINCD_TYPE_CD, //µ¹¹ß»óȲ À¯Çü ÄÚµå : ACTU, CRTU, EVTU, WETU Áß Çϳª String AINCD_CNFM_DT, //µ¹¹ß»óȲ È®ÀÎ ÀϽà String AINCD_STRT_DT, //µ¹¹ß»óȲ ½ÃÀÛ ÀϽà String AINCD_END_PRAR_DT) //µ¹¹ß»óȲ Á¾·á ¿¹Á¤ ÀϽà { String sQry; TADOQuery *pADO = NULL; try { try { pADO = new TADOQuery(NULL); pADO->Close(); pADO->Connection = ITSDb_GetConnection(); ITSDb_GetConnection()->BeginTrans(); sQry = "INSERT INTO TB_INCD_OCRR(INCD_OCRR_ID, RGST_DT, INCD_ORGN_CD, OCRR_LCTN_NM, \r\n" " INCD_EXPL, CMTR_GRAD_CD, IFMR_NM, INCD_CNFM_MTHD_CD, \r\n" " INCD_CNFM_DT, INCD_STRT_DT, INCD_END_PRAR_DT, INCD_TYPE_CLSF_CD, \r\n" " INCD_TYPE_CD, INCD_SERN_CD, INCD_PRGR_STEP_CD ) \r\n" " VALUES(:p01, :p02, :p03, :p04, \r\n" " :p05, :p06, :p07, :p08, \r\n" " :p09, :p10, :p11, :p12, \r\n" " :p13, :p14, 'ISS1' ) \r\n"; ITSDb_SQLText(pADO, sQry); ITSDb_SQLBind(pADO, "p01", AINCD_OCRR_ID); ITSDb_SQLBind(pADO, "p02", Now().FormatString("YYYYMMDDHHNNSS")); ITSDb_SQLBind(pADO, "p03", AINCD_ORGN_CD); ITSDb_SQLBind(pADO, "p04", AOCRR_LCTN_NM); ITSDb_SQLBind(pADO, "p05", AINCD_EXPL); ITSDb_SQLBind(pADO, "p06", ACMTR_GRAD_CD); ITSDb_SQLBind(pADO, "p07", AIFMR_NM); ITSDb_SQLBind(pADO, "p08", AINCD_CNFM_MTHD_CD); ITSDb_SQLBind(pADO, "p09", AINCD_CNFM_DT); ITSDb_SQLBind(pADO, "p10", AINCD_STRT_DT); ITSDb_SQLBind(pADO, "p11", AINCD_END_PRAR_DT); ITSDb_SQLBind(pADO, "p12", AINCD_TYPE_CLSF_CD); ITSDb_SQLBind(pADO, "p13", AINCD_TYPE_CD); ITSDb_SQLBind(pADO, "p14", AINCD_SERN_CD); ITSDb_SQLExec(pADO); ITSDb_GetConnection()->CommitTrans(); Application->MessageBox(L"½Å±Ô µ¹¹ß Á¤º¸¸¦ ÀúÀå ÇÏ¿´½À´Ï´Ù.", FTitle.c_str(), MB_OK|MB_ICONINFORMATION|MB_APPLMODAL); } catch(EDatabaseError &E) { ITSDb_GetConnection()->RollbackTrans(); ShowMessage(String(E.ClassName()) + E.Message); } catch(Exception &exception) { ITSDb_GetConnection()->RollbackTrans(); ShowMessage(String(exception.ClassName()) + exception.Message); } catch(...) { ITSDb_GetConnection()->RollbackTrans(); ShowMessage("µ¥ÀÌÅÍ ÀÛ¾÷ Áß¿¡ ¾Ë¼ö¾ø´Â DB ¿À·ù°¡ ¹ß»ýÇÏ¿´½À´Ï´Ù."); } } __finally { if (pADO) { pADO->Close(); delete pADO; } } return true; } //---------------------------------------------------------------------------