Esempio n. 1
0
        private DataTable ReportDataDrilldown(string aRowLabel)
        {
            DataTable     reportDataSet  = new DataTable();
            StatisticsDAO lStatisticsDAO = new StatisticsDAO();

            string reportName = "";

            if (aRowLabel.StartsWith("Compliance : "))
            {
                reportName = aRowLabel.Substring(13);
            }
            else if (aRowLabel.StartsWith("Installations for : "))
            {
                reportName = aRowLabel.Substring(20);
            }
            else
            {
                reportName  = aRowLabel.Substring(0, aRowLabel.IndexOf(":"));
                reportName += ": ";
            }

            switch (reportName)
            {
            case StatisticTitles.ComputersDiscovered:
                reportDataSet = lStatisticsDAO.ComputersDiscovered();
                break;

            case StatisticTitles.ComputersAudited:
                reportDataSet = lStatisticsDAO.ComputersAudited();
                break;

            case StatisticTitles.ComputerLastAudit:
                reportDataSet = lStatisticsDAO.ComputerLastAudit();
                break;

            case StatisticTitles.AssetsInStock:
                reportDataSet = lStatisticsDAO.AssetsInStock();
                break;

            case StatisticTitles.AssetsInUse:
                reportDataSet = lStatisticsDAO.AssetsInUse();
                break;

            case StatisticTitles.AssetsPending:
                reportDataSet = lStatisticsDAO.AssetsPending();
                break;

            case StatisticTitles.AssetsDisposed:
                reportDataSet = lStatisticsDAO.AssetsDisposed();
                break;

            case StatisticTitles.AgentsDeployed:
                reportDataSet = lStatisticsDAO.AgentsDeployed();
                break;

            case StatisticTitles.UniqueApplications:
                reportDataSet = lStatisticsDAO.UniqueApplications();
                break;

            case StatisticTitles.TotalApplications:
                reportDataSet = lStatisticsDAO.TotalApplications();
                break;

            case StatisticTitles.AuditedToday:
                reportDataSet = lStatisticsDAO.AuditedToday();
                break;

            case StatisticTitles.NotAudited7:
                reportDataSet = lStatisticsDAO.NotAudited7();
                break;

            case StatisticTitles.NotAudited14:
                reportDataSet = lStatisticsDAO.NotAudited14();
                break;

            case StatisticTitles.NotAudited30:
                reportDataSet = lStatisticsDAO.NotAudited30();
                break;

            case StatisticTitles.NotAudited90:
                reportDataSet = lStatisticsDAO.NotAudited90();
                break;

            case StatisticTitles.NotAudited:
                reportDataSet = lStatisticsDAO.NotAudited();
                break;

            case StatisticTitles.LastAlert:
                reportDataSet = lStatisticsDAO.LastAlert();
                break;

            case StatisticTitles.OutstandingAlerts:
                reportDataSet = lStatisticsDAO.StatisticsAssetsStatusDrilldown(aRowLabel);
                break;

            case StatisticTitles.AlertsToday:
                reportDataSet = lStatisticsDAO.AlertsToday();
                break;

            case StatisticTitles.AlertsThisWeek:
                reportDataSet = lStatisticsDAO.AlertsThisWeek();
                break;

            case StatisticTitles.AlertsThisMonth:
                reportDataSet = lStatisticsDAO.AlertsThisMonth();
                break;

            case StatisticTitles.SupportExpired:
                reportDataSet = lStatisticsDAO.SupportExpired();
                break;

            case StatisticTitles.SupportExpireToday:
                reportDataSet = lStatisticsDAO.SupportExpireToday();
                break;

            case StatisticTitles.SupportExpireThisWeek:
                reportDataSet = lStatisticsDAO.SupportExpireThisWeek();
                break;

            case StatisticTitles.SupportExpireThisMonth:
                reportDataSet = lStatisticsDAO.SupportExpireThisMonth();
                break;

            case StatisticTitles.SupportExpiredAsset:
                reportDataSet = lStatisticsDAO.SupportExpiredAsset();
                break;

            case StatisticTitles.SupportExpireTodayAsset:
                reportDataSet = lStatisticsDAO.SupportExpireTodayAsset();
                break;

            case StatisticTitles.SupportExpireThisWeekAsset:
                reportDataSet = lStatisticsDAO.SupportExpireThisWeekAsset();
                break;

            case StatisticTitles.SupportExpireThisMonthAsset:
                reportDataSet = lStatisticsDAO.SupportExpireThisMonthAsset();
                break;

            case "Compliant":
            case "Non-Compliant":
            case "Ignored":
            case "Not Defined":
                reportDataSet = lStatisticsDAO.StatisticsComplianceDrilldown(reportName);
                break;

            default:
                AssetDAO lAssetDAO        = new AssetDAO();
                string   lVersion         = (reportName.EndsWith(")")) ? reportName.Substring(reportName.LastIndexOf('(') + 2).TrimEnd(')') : "";
                string   lApplicationName = (lVersion == "") ? reportName : reportName.Substring(0, reportName.LastIndexOf(" ("));
                //reportDataSet = lAssetDAO.FindAssetByApplicationNameAndVersion(lApplicationName, lVersion, lAssetDAO.GetAllAssetIdsAsString());

                // CMD 8.4.2.3 - Why pass in all asset IDS???  A null string is better from what I can see
                reportDataSet = lAssetDAO.FindAssetByApplicationNameAndVersion(lApplicationName, lVersion, "");
                break;
            }

            return(reportDataSet);
        }