//--------------------------------------------------------------------------- #include #include "ITSSkinF.h" #include "ITSUtilF.h" #include "ITSLangTransF.h" #pragma hdrstop #include "FRAME_VmsSchListF.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "cxButtons" #pragma link "cxCalc" #pragma link "cxCheckBox" #pragma link "cxClasses" #pragma link "cxContainer" #pragma link "cxControls" #pragma link "cxCustomData" #pragma link "cxData" #pragma link "cxDataStorage" #pragma link "cxEdit" #pragma link "cxFilter" #pragma link "cxGraphics" #pragma link "cxGrid" #pragma link "cxGridCustomTableView" #pragma link "cxGridCustomView" #pragma link "cxGridLevel" #pragma link "cxGridTableView" #pragma link "cxLookAndFeelPainters" #pragma link "cxLookAndFeels" #pragma link "cxStyles" #pragma link "cxTextEdit" #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 "dxSkinscxPCPainter" #pragma link "dxSkinSeven" #pragma link "dxSkinSharp" #pragma link "dxSkinSilver" #pragma link "dxSkinStardust" #pragma link "cxLabel" #pragma resource "*.dfm" //TFRAMEVmsSchList *FRAMEVmsSchList; //--------------------------------------------------------------------------- __fastcall TFRAMEVmsSchList::TFRAMEVmsSchList(TComponent* Owner) : TFrame(Owner) { LangTrans->Translate(this, ITSDb_GetConnection()); m_pGDC = TvList->DataController; //TvList->OptionsView->NoDataToDisplayInfoText = "<µî·ÏµÇ¾î ÀÖ´Â VMS Á¤º¸°¡ ¾ø½À´Ï´Ù>"; FTitle = lblTitle->Caption; } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::UpdateList(String AVmsTypeCd) { CMM_ClearGridTableView(TvList); int nRow = 0; try { TvList->BeginUpdate(); try { VmsManager->FLists.Lock(); FOR_STL(TVmsCtlr*, pObj, VmsManager->FLists) { if (pObj->DEL_YN == "Y") continue; if (pObj->VMS_TYPE_CD != AVmsTypeCd) continue; nRow = m_pGDC->AppendRecord(); m_pGDC->Values[nRow][ColumnSel->Index] = false; m_pGDC->Values[nRow][Column00->Index] = "-"; m_pGDC->Values[nRow][Column01->Index] = String(pObj->VMS_CTLR_NMBR); m_pGDC->Values[nRow][Column02->Index] = pObj->VMS_CTLR_ID; m_pGDC->Values[nRow][Column03->Index] = pObj->VMS_NM; m_pGDC->Values[nRow][Column99->Index] = (int)pObj; m_pGDC->Values[nRow][Column11->Index] = pObj->VMS_CTLR_NMBR; m_pGDC->Values[nRow][Column12->Index] = pObj->VMS_CTLR_ID; m_pGDC->Values[nRow][Col04->Index] = String(pObj->FormCnt[enFormTraffic][1]) + "/" + String(pObj->FormCnt[enFormTraffic][0]); m_pGDC->Values[nRow][Col05->Index] = String(pObj->FormCnt[enFormDolbal][1]) + "/" + String(pObj->FormCnt[enFormDolbal][0]); m_pGDC->Values[nRow][Col06->Index] = String(pObj->FormCnt[enFormGongsa][1]) + "/" + String(pObj->FormCnt[enFormGongsa][0]); m_pGDC->Values[nRow][Col07->Index] = String(pObj->FormCnt[enFormHongbo][1]) + "/" + String(pObj->FormCnt[enFormHongbo][0]); m_pGDC->Values[nRow][Col08->Index] = String(pObj->FormCnt[enFormDeture][1]) + "/" + String(pObj->FormCnt[enFormDeture][0]); m_pGDC->Values[nRow][Col09->Index] = String(pObj->FormCnt[enFormFixed][1]) + "/" + String(pObj->FormCnt[enFormFixed][0]); m_pGDC->Values[nRow][Col11->Index] = String(pObj->FormCnt[enFormBase][1]) + "/" + String(pObj->FormCnt[enFormBase][0]); m_pGDC->Values[nRow][Col12->Index] = String(pObj->FormCnt[enFormCongest][1]) + "/" + String(pObj->FormCnt[enFormCongest][0]); int nAutoTot = pObj->FormCnt[0][0] + pObj->FormCnt[1][0] + pObj->FormCnt[2][0] + pObj->FormCnt[3][0] + pObj->FormCnt[4][0] + pObj->FormCnt[7][0]; int nAutoUse = pObj->FormCnt[0][1] + pObj->FormCnt[1][1] + pObj->FormCnt[2][1] + pObj->FormCnt[3][1] + pObj->FormCnt[4][1] + pObj->FormCnt[7][1]; m_pGDC->Values[nRow][Col10->Index] = String(nAutoUse) + "/" + String(nAutoTot); } } __finally { VmsManager->FLists.UnLock(); } } __finally { LblRecords->Caption = "("+FormatFloat("##,##0", m_pGDC->FilteredRecordCount) +"/"+FormatFloat("##,##0", m_pGDC->RecordCount) + ")"; TvList->EndUpdate(); TvList->DataController->GotoFirst(); TvList->DataController->FocusedRecordIndex = 0; Column11->SortIndex = Column11->Index; Column11->SortOrder = soAscending; } } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::BtnAllSelectClick(TObject *Sender) { TcxButton *pBtn = (TcxButton*)Sender; CMM_CheckAllListItem(TvList, ColumnSel->Index, pBtn->Tag); } //--------------------------------------------------------------------------- int __fastcall TFRAMEVmsSchList::GetSelIds(String &ALinkIds) { ALinkIds = ""; if (TvList->ViewData->RecordCount <= 0) return 0; int nIndex = m_pGDC->FocusedRecordIndex; if( nIndex < 0 ) return 0; String sLinkId = VarToStr(m_pGDC->Values[nIndex][Column01->Index]); ALinkIds = sLinkId; return 1; } //--------------------------------------------------------------------------- int __fastcall TFRAMEVmsSchList::GetSelIds(TStringList *AStringList) { int nSelCnt = 0; try { TvList->BeginUpdate(); int nRowCnt = TvList->ViewData->RecordCount; for (int ii = 0; ii < nRowCnt; ii++) { TcxCustomGridRow* ARow = TvList->ViewData->Rows[ii]; if (((bool)ARow->Values[ColumnSel->Index])) { AStringList->Add(ARow->Values[Column01->Index]); nSelCnt++; } } } __finally { TvList->EndUpdate(); } return nSelCnt; } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::TvListDataControllerFilterChanged(TObject *Sender) { LblRecords->Caption = "("+FormatFloat("##,##0", m_pGDC->FilteredRecordCount) +"/"+FormatFloat("##,##0", m_pGDC->RecordCount) + ")"; } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::BtnExlSaveClick(TObject *Sender) { TcxGrid *pGrid = CxList; TcxGridTableView *pView = TvList; String sTitle= FTitle;//"VMSÁ¤º¸"; CMM_ExportToExcelFile(sTitle, pGrid, pView, (TForm*)this); } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::OnCloseQuery(bool &CanClose) { } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::ColSchenarioGetDataText(TcxCustomGridTableItem *Sender, int ARecordIndex, UnicodeString &AText) { if (ARecordIndex < 0) return; int nIdx = Sender->Tag; try { int nMemPtr = (int)(TvList->DataController->Values[ARecordIndex][Column99->Index]); TVmsCtlr *pObj = (TVmsCtlr*)nMemPtr; if (pObj) { AText = String(pObj->FormCnt[nIdx][1]) + "/" + String(pObj->FormCnt[nIdx][0]); } } catch(Exception &e) {} } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::Col10GetDataText(TcxCustomGridTableItem *Sender, int ARecordIndex, UnicodeString &AText) { if (ARecordIndex < 0) return; try { int nMemPtr = (int)(TvList->DataController->Values[ARecordIndex][Column99->Index]); TVmsCtlr *pObj = (TVmsCtlr*)nMemPtr; if (pObj) { int nAutoTot = pObj->FormCnt[0][0] + pObj->FormCnt[1][0] + pObj->FormCnt[2][0] + pObj->FormCnt[3][0] + pObj->FormCnt[4][0] + pObj->FormCnt[7][0]; int nAutoUse = pObj->FormCnt[0][1] + pObj->FormCnt[1][1] + pObj->FormCnt[2][1] + pObj->FormCnt[3][1] + pObj->FormCnt[4][1] + pObj->FormCnt[7][1]; AText = String(nAutoUse) + "/" + String(nAutoTot); } } catch(Exception &e) {} } //--------------------------------------------------------------------------- void __fastcall TFRAMEVmsSchList::RefreshVmsFormUsage() { CxList->LayoutChanged(); } //---------------------------------------------------------------------------