//--------------------------------------------------------------------------- #include #include "ITSSkinF.h" #include "ITSUtilF.h" #include "AppGlobalF.h" #include "CDSCodeF.h" #pragma hdrstop #include "AVIS020MF.h" #include "AVIS0201F.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "cxButtons" #pragma link "cxContainer" #pragma link "cxControls" #pragma link "cxDropDownEdit" #pragma link "cxEdit" #pragma link "cxGraphics" #pragma link "cxGroupBox" #pragma link "cxLookAndFeelPainters" #pragma link "cxLookAndFeels" #pragma link "cxMaskEdit" #pragma link "cxPC" #pragma link "cxPCdxBarPopupMenu" #pragma link "cxSplitter" #pragma link "cxTextEdit" #pragma link "dxSkinBlack" #pragma link "dxSkinBlue" #pragma link "dxSkinsCore" #pragma link "dxSkinscxPCPainter" #pragma link "FRAME_AviDtctListF" #pragma resource "*.dfm" TAVIS020M *AVIS020M = NULL; //--------------------------------------------------------------------------- __fastcall TAVIS020M::TAVIS020M(TComponent* Owner) : TForm(Owner) { ITSSkin_Load(this); CMM_LoadForm(g_sFormsDir, this); FTitle = "AVI-°ËÁö±â ¼ÒÅëÁ¤º¸ Åë°è"; m_pFormList = new TList(); TsList01->TabVisible = false; FRAMEAviDtctList1->PnlTop->Visible = false; FRAMEAviDtctList1->PnlBottom->Visible = false; FRAMEAviDtctList1->ColumnSel->Visible = false; } //--------------------------------------------------------------------------- /* * ´Ý±â¹öư À̳ª x¹öư Ŭ¸¯½Ã °øÅëÀ¸·Î ó¸®ÇÏ´Â ·ÎÁ÷À̵é¾î°£´Ù.. * Form°ú DataModule class¸¦ delete½ÃŲ´Ù. * arguments * * return * void */ void __fastcall TAVIS020M::CommClose() { try { for (int idx = m_pFormList->Count-1; idx >= 0; idx--) { m_pFormList->Delete(idx); } delete m_pFormList; CMM_SaveForm(g_sFormsDir, this); } catch(...) { } } //--------------------------------------------------------------------------- /* * FormÀ» º¸¿©ÁÙ¶§ È£ÃâµÇ´Â event ¸Þ¼­µåÀÌ´Ù. * arguments * Sender : event handler °´Ã¼ * return * void */ void __fastcall TAVIS020M::FormShow(TObject *Sender) { Refresh(); FormInit(); TmrShow->Enabled = true; } //--------------------------------------------------------------------------- /* * form ÃʱâÈ­ * * arguments * * return * void */ void __fastcall TAVIS020M::FormInit() { CbStatType->ItemIndex = 0; TDateTime dtStart = Now()-1; TDateTime dtEnd = Now(); DtStDate->Date = dtStart; DtEdDate->Date = dtEnd; DtStTime->Date = dtStart; DtEdTime->Date = dtEnd; //DtStTime->Time = StrToDateTime("00:00"); //DtEdTime->Time = StrToDateTime("23:59"); } //--------------------------------------------------------------------------- /* * FormÀÌ ShowµÇ°í ³­ ÈÄ ÃÖÃÊ 1ȸ ¼öÇàµÇ´Â ŸÀÌ¸Ó À̺¥Æ® * arguments * Sender : event handler °´Ã¼ * return * void */ void __fastcall TAVIS020M::TmrShowTimer(TObject *Sender) { TmrShow->Enabled = false; FRAMEAviDtctList1->UpdateList(); } //--------------------------------------------------------------------------- /* * Refresh Data Event Function * arguments * * return * void */ void __fastcall TAVIS020M::RefreshData() { // °Ë»öÁ¶°Ç¿¡ ÀÇÇÑ ¸µÅ© µ¥ÀÌÅÍ Á¶È¸ try { //SelListData(); } __finally { } } //--------------------------------------------------------------------------- /* * Search ¹öư Ŭ¸¯ À̺¥Æ® Çڵ鷯 * arguments * Sender : event handler °´Ã¼ * return * void */ void __fastcall TAVIS020M::BtnSearchClick(TObject *Sender) { Application->ProcessMessages(); TSqlCursor sqlCrs((TControl*)BtnSearch); TcxGrid *pCxList; TcxGridTableView *pTvList = NULL; int nIdCol = -1; pCxList = FRAMEAviDtctList1->CxList; pTvList = FRAMEAviDtctList1->TvList; nIdCol = FRAMEAviDtctList1->Column02->Index; if (!pTvList) return; TcxDataController *pGDC = pTvList->DataController; int nIndex = pGDC->FocusedRecordIndex; if( nIndex < 0 ) { Application->MessageBox(FrmLang->lblSelErr->Caption.c_str(),//L"AVI-°ËÁö±â¸¦ ¸ÕÀú ¼±Åà Çϼ¼¿ä.", FTitle.c_str(), MB_OK|MB_ICONWARNING|MB_APPLMODAL); ActiveControl = pCxList; return; } FSelId = VarToStr(pGDC->Values[nIndex][nIdCol]); String sStTime, sEdTime, sTemp; switch(CbStatType->ItemIndex) { case 0: //15ºÐ Åë°è case 1: //½Ã°£ Åë°è(1½Ã°£) sStTime = DtStDate->Date.FormatString("yyyyMMdd") + DtStTime->Time.FormatString("hh"); sEdTime = DtEdDate->Date.FormatString("yyyyMMdd") + DtEdTime->Time.FormatString("hh"); FStTime = sStTime + "0000"; FEdTime = sEdTime + "5959"; break; case 2: //½Ã°£ Åë°è(1½Ã°£) sStTime = DtStDate->Date.FormatString("yyyyMMdd"); sEdTime = DtEdDate->Date.FormatString("yyyyMMdd"); FStTime = sStTime + "000000"; FEdTime = sEdTime + "235959"; break; case 3: //ÀÏ Åë°è(1ÀÏ) sStTime = DtStDate->Date.FormatString("yyyyMM"); sEdTime = DtEdDate->Date.FormatString("yyyyMM"); sTemp.printf(L"%02d", ITSUtil_GetMonthLastDay(AnsiString(sEdTime).c_str())); FStTime = sStTime + "01000000"; FEdTime = sEdTime + sTemp + "235959"; break; } if (sStTime > sEdTime) { Application->MessageBox(FrmLang->lblQryDtErr->Caption.c_str(),//L"°Ë»ö ½ÃÀ۽ð¢ÀÌ °Ë»ö Á¾·á½Ã°¢ º¸´Ù Å®´Ï´Ù.", FTitle.c_str(), MB_OK|MB_ICONWARNING|MB_APPLMODAL); ActiveControl = DtStDate; return; } FStatType = CbStatType->ItemIndex; String sTitle; sTitle.printf(L"%s(%s~%s) %s ", CbStatType->Text.c_str(), sStTime.c_str(), sEdTime.c_str(), FSelId.c_str()); String sCaption; #if 0 sCaption.printf(L"%s [%s] ", CbStatType->Text.c_str(), FSelId.c_str()); #else sTitle = VarToStr(pGDC->Values[nIndex][FRAMEAviDtctList1->Column02->Index]); sCaption.printf(L"%s [%s] ", CbStatType->Text.c_str(), sTitle.c_str()); #endif try { Application->ProcessMessages(); LockWindowUpdate(Handle); TcxTabSheet *pSheet = CMM_AddTabSheet(PgTab, sCaption); if (!pSheet) return; AVIS0201 = new TAVIS0201(this, Handle, FSelId, sStTime, sEdTime, FStatType); AVIS0201->Parent = pSheet; AVIS0201->Show(); PgTab->ActivePage = pSheet; pSheet = PgTab->ActivePage; m_pFormList->Add(AVIS0201); } __finally { LockWindowUpdate(0); } } //--------------------------------------------------------------------------- /* * Close ¹öư Ŭ¸¯ À̺¥Æ® Çڵ鷯 * arguments * Sender : event handler °´Ã¼ * return * void */ void __fastcall TAVIS020M::BtnCloseClick(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- /* * Á¶È¸°á°ú ÆûÀÌ ´ÝÈú¶§ ¸Þ½ÃÁö¸¦ ¹Þ¾Æ ó¸®ÇÑ´Ù. * arguments * Sender : event handler °´Ã¼ * return * void */ void __fastcall TAVIS020M::OnSubFormClose(TMessage Msg) { int nActiveIdx = PgTab->ActivePageIndex; if (nActiveIdx <= 0) return; LockWindowUpdate(Handle); TcxTabSheet *pSheet = PgTab->ActivePage; if (pSheet) { delete pSheet; } nActiveIdx--; // ù¹øÂ° ÅÇÀº È­¸é¿¡ ¼û°ÜÁ® ÀÖ´Ù. m_pFormList->Delete(nActiveIdx); LockWindowUpdate(0); } //--------------------------------------------------------------------------- /* * Tab ControlÀÇ TabÀ» ´õºíŬ¸¯ÇÏ¿© ´Ý´Â´Ù. * arguments * Sender : event handler °´Ã¼ * return * void */ void __fastcall TAVIS020M::PgTabDblClick(TObject *Sender) { TPoint APoint; APoint = PgTab->MouseDownPos; if (PgTab->IndexOfTabAt(APoint.x, APoint.y) != -1) POST_MSG(Handle, WM_SUBFORM_CLOSE, 0, 0); } //--------------------------------------------------------------------------- void __fastcall TAVIS020M::FormClose(TObject *Sender, TCloseAction &Action) { CommClose(); AVIS020M = NULL; Action = caFree; } //--------------------------------------------------------------------------- void __fastcall TAVIS020M::CbStatTypePropertiesChange(TObject *Sender) { switch(CbStatType->ItemIndex) { case 0: //15ºÐ Åë°è case 1: //½Ã°£ Åë°è(1½Ã°£) DtStDate->Format = " yyyy³â MM¿ù ddÀÏ"; DtEdDate->Format = " yyyy³â MM¿ù ddÀÏ"; DtStTime->Visible = true; DtEdTime->Visible = true; break; case 2: //ÀÏ Åë°è(1ÀÏ) DtStDate->Format = " yyyy³â MM¿ù ddÀÏ"; DtEdDate->Format = " yyyy³â MM¿ù ddÀÏ"; DtStTime->Visible = false; DtEdTime->Visible = false; break; case 3: //¿ù Åë°è(1°³¿ù) DtStDate->Format = " yyyy³â MM¿ù"; DtEdDate->Format = " yyyy³â MM¿ù"; DtStTime->Visible = false; DtEdTime->Visible = false; break; } } //--------------------------------------------------------------------------- void __fastcall TAVIS020M::PgTabCanCloseEx(TObject *Sender, int ATabIndex, bool &ACanClose) { int nActiveIdx = ATabIndex; if (nActiveIdx <= 0) return; nActiveIdx--; // ù¹øÂ° ÅÇÀº È­¸é¿¡ ¼û°ÜÁ® ÀÖ´Ù. m_pFormList->Delete(nActiveIdx); } //---------------------------------------------------------------------------