private void InitializeReport()
        {
            int year = int.Parse(Request.QueryString["Year"]);
            int days_count = GetMonthDayCount(year, 2);
            string DRStatus = Request.QueryString["Status"];
            string Area = Request.QueryString["Area"];

            DateTime DateTo = new DateTime(year, 12, 31);
            DateTime DateFrom = new DateTime(year, 1, 1);

            ReportDocument REPORT_DOC = new ReportDocument();
            string reportCacheKey = string.Concat("DRSummaryPerAreaAndCustomer", year, Request.QueryString["Brand"], Area,DRStatus);
            ParameterField prmDateFrom = new ParameterField();
            ParameterField prmDateTo = new ParameterField();
            ParameterField prmBrand = new ParameterField();
            ParameterField prmFebDaysCount = new ParameterField();
            ParameterField prmDRStatus = new ParameterField();
            ParameterFields prmList = new ParameterFields();

            prmDateFrom.ParameterFieldName = "@DATE_FROM_PARAM";
            prmDateTo.ParameterFieldName = "@DATE_TO_PARAM";
            prmBrand.ParameterFieldName = "@BRAND_NAME";
            prmFebDaysCount.ParameterFieldName = "@FEB_DAY_";
            prmDRStatus.ParameterFieldName = "@DR_STATUS";

            ParameterDiscreteValue prmDateFromValue = new ParameterDiscreteValue();
            ParameterDiscreteValue prmDateToValue = new ParameterDiscreteValue();
            ParameterDiscreteValue pramBrandValue = new ParameterDiscreteValue();
            ParameterDiscreteValue prmFebDaysCountValue = new ParameterDiscreteValue();
            ParameterDiscreteValue prmDRStatusValue = new ParameterDiscreteValue();

            prmDateFromValue.Value = DateFrom;
            prmDateToValue.Value = DateTo;
            pramBrandValue.Value = Request.QueryString["Brand"];
            prmFebDaysCountValue.Value = days_count;
            prmDRStatusValue.Value = DRStatus;

            prmDateFrom.CurrentValues.Add(prmDateFromValue);
            prmDateTo.CurrentValues.Add(prmDateToValue);
            prmBrand.CurrentValues.Add(pramBrandValue);
            prmFebDaysCount.CurrentValues.Add(prmFebDaysCountValue);
            prmDRStatus.CurrentValues.Add(prmDRStatusValue);

            prmList.Add(prmDateFrom);
            prmList.Add(prmDateTo);
            prmList.Add(prmBrand);
            prmList.Add(prmFebDaysCount);
            prmList.Add(prmDRStatus);

            if (Cache[reportCacheKey] != null)
            {
                REPORT_DOC = (RptCDISummaryPerAreaAndCustomerLuzon)Cache[reportCacheKey];
            }
            else
            {
                REPORT_DOC = new RptCDISummaryPerAreaAndCustomerLuzon();
                Cache.Insert(reportCacheKey, REPORT_DOC);
            }

            DataBaseLogIn(REPORT_DOC);
            this.DRSummaryPerAreaAndCustomerReport.ParameterFieldInfo = prmList;
            DRSummaryPerAreaAndCustomerReport.ReportSource = REPORT_DOC;
        }
 public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport()
 {
     RptCDISummaryPerAreaAndCustomerLuzon rpt = new RptCDISummaryPerAreaAndCustomerLuzon();
     rpt.Site = this.Site;
     return rpt;
 }