public ActionResult ReportDesignMode(int id, string name, string icon, string controller)
        {
            var design = new ReportDesignViewModel();

            //---
            if (icon != null)
            {
                Session["Icon"] = icon;
            }

            design.Icon       = icon;
            design.ReportId   = id;
            design.ReportName = name;
            design.Controller = controller;

            if (id > 0)
            {
                design.Report = GetReport(id, name);
            }
            else
            {
                design.Report = GetReportbyName(name);
            }

            return(View(design));
        }
        public ActionResult ReportViewMode(int id, string name, string icon, string controller)
        {
            var design = new ReportDesignViewModel();

            if (icon != null)
            {
                Session["Icon"] = icon;
            }

            design.Icon       = icon;
            design.ReportId   = id;
            design.ReportName = name;
            design.Controller = controller;

            if (id > 0)
            {
                design.Report = GetReport(id, name);
            }
            else
            {
                design.Report = GetReportbyName(name);
            }

            //Handling report header
            if (design.Report.Parameters["CompanyName"] != null)
            {
                design.Report.Parameters["CompanyName"].Value = companyName;
            }
            design.Report.Parameters["CompanyId"].Value = CompanyId;

            //Handling report footer
            design.Report.Parameters["User"].Value = userName;
            //daterange = db.Database.SqlQuery<DateRange>("select top(1) startDate, EndDate from FiscalYears order by startDate desc").FirstOrDefault();

            //Financial Date

            if (design.Report.Parameters["ConEmpStartDate"] != null)
            {
                design.Report.Parameters["ConEmpStartDate"].Value = dateRange.startDate;
            }
            if (design.Report.Parameters["ConEmpEndDate"] != null)
            {
                design.Report.Parameters["ConEmpEndDate"].Value = dateRange.EndDate;
            }

            ///////Today Date
            if (design.Report.Parameters["EmpEndDate"] != null)
            {
                design.Report.Parameters["EmpEndDate"].ValueInfo = DateTime.Now.Date.ToShortDateString();
            }
            if (design.Report.Parameters["AssignEndDate"] != null)
            {
                design.Report.Parameters["AssignEndDate"].ValueInfo = DateTime.Now.Date.ToShortDateString();
            }


            // Todo: Moved

            if (!(!(design.ReportName == "InsuranceEmployeesReports") ^ !(design.ReportName == "InsuranceEmployeesGrouping") ^ (!(design.ReportName == "en_InsuranceEmployeesReports") ^ !(design.ReportName == "en_InsuranceEmployeesReportsGrouping"))))
            {
                if ((!(design.ReportName == "InsuranceEmployeesDoc")))
                {
                    design.Report.DataSourceDemanded += Report_DataSourceDemanded;
                }
            }

            if (design.Report is IBasicInfoReport)
            {
                ((IBasicInfoReport)design.Report).CompanyLogo.BeforePrint += XrPictureBox8_BeforePrint;
            }


            if (design.Report is IEmployeeDataReport)
            {
                ((IEmployeeDataReport)design.Report).EmpStatusPicBox.BeforePrint += xrPictureBox2_BeforePrint;
            }

            if (design.Report is IProgressBars)
            {
                ((IProgressBars)design.Report).ReceiveProgress.BeforePrint  += ReceiveBar_Changed;
                ((IProgressBars)design.Report).DeliveryProgress.BeforePrint += Delivery_Changed;
            }

            return(View(design));
        }