Пример #1
0
        /// <summary>
        /// Scenario2 - Report
        /// </summary>
        /// <returns></returns>
        OlapReport LoadOlapData1()
        {
            OlapReport report = new OlapReport();

            report.CurrentCubeName = "Adventure Works";

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            DimensionElement dimensionElement1 = new DimensionElement();
            DimensionElement dimensionElement2 = new DimensionElement();

            dimensionElement1.Name = "Date";
            dimensionElement1.AddLevel("Fiscal Year", "Fiscal Year");

            dimensionElement2.Name = "Product";
            dimensionElement2.AddLevel("Product Categories", "Category");

            report.CategoricalElements.Add(new Item {
                ElementValue = dimensionElement1
            });
            report.CategoricalElements.Add(new Item {
                ElementValue = kpiElement
            });
            report.SeriesElements.Add(new Item {
                ElementValue = dimensionElement2
            });
            return(report);
        }
        private OlapReport OlapReport()
        {
            OlapReport olapReport = new OlapReport();

            olapReport.Name            = "KPIChart";
            olapReport.CurrentCubeName = "Adventure Works";

            //Getting KPI elements
            KpiElements kpiElement = new KpiElements();

            //Customizing kpi elements properties
            kpiElement.Elements.Add(new KpiElement {
                Name = "Internet Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            //Specifying the Row Name for the Dimension element
            DimensionElement dimensionElementRow = new DimensionElement();

            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            //Adding categorical elements
            olapReport.CategoricalElements.Add(kpiElement);
            //Adding Series elements
            olapReport.SeriesElements.Add(dimensionElementRow);

            return(olapReport);
        }
Пример #3
0
        OlapReport LoadComplexKPI()
        {
            OlapReport olapReport = new OlapReport();

            olapReport.CurrentCubeName = "Adventure Works";

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Internet Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            DimensionElement dimensionElementColumn = new DimensionElement();

            //Specifying the Dimension Name
            dimensionElementColumn.Name = "Employee";
            dimensionElementColumn.AddLevel("Employee Department", "Department");

            DimensionElement dimensionElementRow = new DimensionElement();

            //Specifying the Dimension Name
            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            olapReport.CategoricalElements.Add(dimensionElementRow);
            olapReport.CategoricalElements.Add(kpiElement);
            olapReport.SeriesElements.Add(dimensionElementColumn);
            return(olapReport);
        }
Пример #4
0
        private OlapReport CreateOLAPReport()
        {
            OlapReport olapReport = new OlapReport
            {
                Name            = "Virtual KPI Report",
                CurrentCubeName = "Adventure Works"
            };

            DimensionElement dimensionElementColumn = new DimensionElement();

            dimensionElementColumn.Name          = "Customer";
            dimensionElementColumn.HierarchyName = "Customer Geography";
            dimensionElementColumn.AddLevel("Customer Geography", "Country");

            MeasureElements measureElementColumn = new MeasureElements();

            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Internet Sales Amount"
            });
            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Sales Amount"
            });

            // Virtual KPI element
            VirtualKpiElement Virtualkpi = new VirtualKpiElement();

            Virtualkpi.Name = "Growth in Order Quantity";
            Virtualkpi.KpiGoalExpression   = "[Measures].[Order Quantity]";
            Virtualkpi.KpiStatusExpression = "Case When [Measures].[Order Quantity] > 1 Then 1 Else -1 End";
            Virtualkpi.KpiTrendExpression  = "Case When IsEmpty ( ParallelPeriod ( [Date].[Fiscal].[Fiscal Year], 1, [Date].[Fiscal].CurrentMember ) ) Then 0  Else -1 End";
            Virtualkpi.KpiValueExpression  = "[Measures].[Order Quantity]";
            olapReport.VirtualKpiElements.Add(Virtualkpi);

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIStatus = true, ShowKPIGoal = false, ShowKPITrend = true, ShowKPIValue = true
            });

            DimensionElement dimensionElementRow = new DimensionElement();

            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            // Adding column members
            olapReport.CategoricalElements.Add(dimensionElementColumn);

            // Adding measure element
            olapReport.CategoricalElements.Add(measureElementColumn);
            olapReport.CategoricalElements.Add(Virtualkpi);
            olapReport.CategoricalElements.Add(kpiElement);

            // Adding row members
            olapReport.SeriesElements.Add(dimensionElementRow);

            return(olapReport);
        }
Пример #5
0
        private OlapReport VirtualKPIReport()
        {
            OlapReport olapReport = new OlapReport()
            {
                Name = "VirtualKPI.Report"
            };

            olapReport.CurrentCubeName = "Adventure Works";

            DimensionElement internalDimension = new DimensionElement();

            internalDimension.Name = "Product";
            internalDimension.AddLevel("Product Categories", "Category");
            internalDimension.Hierarchy.LevelElements[0].Add(new MemberElement {
                Name = "Bikes"
            });

            VirtualKpiElement Virtualkpi = new VirtualKpiElement();

            Virtualkpi.Name = "Growth in Order Quantity";
            Virtualkpi.KpiGoalExpression   = "[Measures].[Order Quantity]";
            Virtualkpi.KpiStatusExpression = "Case When [Measures].[Order Quantity] > 1 Then 1 Else -1 End";
            Virtualkpi.KpiTrendExpression  = "Case When IsEmpty ( ParallelPeriod ( [Date].[Fiscal].[Fiscal Year], 1, [Date].[Fiscal].CurrentMember ) ) Then 0  Else -1 End";
            Virtualkpi.KpiValueExpression  = "[Measures].[Order Quantity]";

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIStatus = true, ShowKPIGoal = false, ShowKPITrend = true, ShowKPIValue = true
            });

            MeasureElements measureElementColumn = new MeasureElements();

            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Sales Amount"
            });
            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Order Quantity"
            });

            DimensionElement dimensionElementRow = new DimensionElement();

            //Specifying the Dimension Name
            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            olapReport.VirtualKpiElements.Add(Virtualkpi);

            //Adding Measure Element
            olapReport.CategoricalElements.Add(measureElementColumn);
            olapReport.CategoricalElements.Add(kpiElement);
            olapReport.CategoricalElements.Add(Virtualkpi);
            //Adding Row Members
            olapReport.SeriesElements.Add(dimensionElementRow);

            return(olapReport);
        }
Пример #6
0
        /// <summary>
        /// This method is used to create the new OLAP report with cube information.
        /// </summary>
        /// <returns></returns>
        private OlapReport CreateKPIReport()
        {
            OlapReport olapReport = new OlapReport()
            {
                Name = "VirtualKPI.Report"
            };

            olapReport.CurrentCubeName = "Adventure Works";

            #region KPI Elements

            KpiElements kpiElement = new KpiElements();
            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIStatus = true, ShowKPIGoal = false, ShowKPITrend = true, ShowKPIValue = true
            });

            #endregion

            #region Measure Elements

            MeasureElements measureElementColumn = new MeasureElements();
            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Sales Amount"
            });

            #endregion

            #region Dimension Elements

            DimensionElement dimensionElementRow = new DimensionElement();
            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            DimensionElement dimensionElement = new DimensionElement();
            dimensionElement.Name = "Employee";
            dimensionElement.AddLevel("Employee", "Employee");

            DimensionElement dimensionElement1 = new DimensionElement();
            dimensionElement1.Name = "Customer";
            dimensionElement1.AddLevel("Customer Geography", "Country");

            DimensionElement internalDimension = new DimensionElement();
            internalDimension.Name = "Customer";
            internalDimension.AddLevel("Customer", "Customer");

            #endregion

            #region Report Elements

            olapReport.CategoricalElements.Add(measureElementColumn);
            olapReport.CategoricalElements.Add(kpiElement);
            olapReport.SeriesElements.Add(dimensionElementRow);

            #endregion

            return(olapReport);
        }
        private OlapReport CreateOlapReport()
        {
            OlapReport report = new OlapReport();

            report.CurrentCubeName = "Adventure Works";

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            DimensionElement dimensionElement1 = new DimensionElement();
            DimensionElement dimensionElement2 = new DimensionElement();
            DimensionElement dimensionElement3 = new DimensionElement();

            MeasureElements measureElement = new MeasureElements();

            measureElement.Elements.Add(new MeasureElement {
                UniqueName = "[Measures].[Customer Count]"
            });

            dimensionElement1.Name = "Date";
            dimensionElement1.AddLevel("Fiscal Year", "Fiscal Year");
            dimensionElement1.Hierarchy.LevelElements["Fiscal Year"].Add("FY 2004");
            dimensionElement1.Hierarchy.LevelElements["Fiscal Year"].IncludeAvailableMembers = true;

            dimensionElement2.Name = "Sales Channel";
            dimensionElement2.AddLevel("Sales Channel", "Sales Channel");
            dimensionElement2.Hierarchy.LevelElements["Sales Channel"].Add("Reseller");
            dimensionElement2.Hierarchy.LevelElements["Sales Channel"].IncludeAvailableMembers = true;

            dimensionElement3.Name = "Product";
            dimensionElement3.AddLevel("Product Model Lines", "Product Line");

            report.CategoricalElements.Add(new Item {
                ElementValue = dimensionElement2
            });
            report.CategoricalElements.Add(new Item {
                ElementValue = dimensionElement1
            });
            report.CategoricalElements.Add(new Item {
                ElementValue = kpiElement
            });
            report.SeriesElements.Add(new Item {
                ElementValue = dimensionElement3
            });
            return(report);
        }
        private OlapReport CreateOlapReport()
        {
            OlapReport report = new OlapReport
            {
                CurrentCubeName = "Adventure Works"
            };

            //Specifying the KPI name
            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Internet Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            DimensionElement dimensionElementColumn = new DimensionElement
            {
                //Specifying the dimension name
                Name = "Customer"
            };

            //Adding the level with the hierarchy Name
            dimensionElementColumn.AddLevel("Customer Geography", "Country");

            //Specifying the measure name
            MeasureElements measureElementColumn = new MeasureElements();

            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Internet Sales Amount"
            });

            DimensionElement dimensionElementRow = new DimensionElement
            {
                //Specifying the dimension name
                Name = "Date"
            };

            //Adding the level with the hierarchy Name
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");
            dimensionElementRow.Hierarchy.LevelElements["Fiscal Year"].Add("FY 2004");
            dimensionElementRow.Hierarchy.LevelElements["Fiscal Year"].IncludeAvailableMembers = true;

            report.CategoricalElements.Add(dimensionElementColumn);
            report.CategoricalElements.Add(kpiElement);
            report.CategoricalElements.Add(measureElementColumn);
            report.SeriesElements.Add(dimensionElementRow);
            return(report);
        }
Пример #9
0
        /// <summary>
        /// OlapReport the with KPI Elements
        /// </summary>
        /// <returns></returns>
        private OlapReport ProductSalesAnalysis()
        {
            OlapReport olapReport = new OlapReport();

            olapReport.CurrentCubeName = "Adventure Works";

            DimensionElement dimensionElementColumn = new DimensionElement();

            // Specifying the name for Dimension Element for Column
            dimensionElementColumn.Name = "Product";
            dimensionElementColumn.AddLevel("Product Categories", "Category");


            MeasureElements measureElementColumn = new MeasureElements();

            // Specifying the name for Measure Element
            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Gross Profit"
            });

            DimensionElement dimensionElementRow = new DimensionElement();

            // Specifying the Name for Row Dimension Element
            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIStatus = true, ShowKPIGoal = false, ShowKPITrend = true, ShowKPIValue = true
            });

            // Adding Column Members
            olapReport.SeriesElements.Add(dimensionElementRow);
            olapReport.CategoricalElements.Add(kpiElement);
            // Adding Measure Elements
            olapReport.CategoricalElements.Add(measureElementColumn);

            //olapReport.ShowExpanders = false;

            return(olapReport);
        }
Пример #10
0
        private OlapReport CreateOlapReport()
        {
            OlapReport olapReport = new OlapReport
            {
                Name            = "Products Sales Report",
                CurrentCubeName = "Adventure Works"
            };

            DimensionElement dimensionElementColumn = new DimensionElement
            {
                Name = "Product"
            };

            dimensionElementColumn.AddLevel("Product Categories", "Category");

            MeasureElements measureElementColumn = new MeasureElements();

            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Gross Profit"
            });

            DimensionElement dimensionElementRow = new DimensionElement
            {
                Name = "Date"
            };

            dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Revenue", ShowKPIStatus = true, ShowKPIGoal = false, ShowKPITrend = true, ShowKPIValue = true
            });

            olapReport.CategoricalElements.Add(dimensionElementColumn);
            olapReport.CategoricalElements.Add(kpiElement);
            olapReport.CategoricalElements.Add(measureElementColumn);
            olapReport.SeriesElements.Add(dimensionElementRow);

            return(olapReport);
        }
Пример #11
0
        OlapReport LoadBasicKPI()
        {
            OlapReport olapReport = new OlapReport();

            olapReport.CurrentCubeName = "Adventure Works";

            DimensionElement dimensionElementColumn = new DimensionElement();

            // Specifying the name for Dimension Element for Column
            dimensionElementColumn.Name = "Product";
            dimensionElementColumn.AddLevel("Product Categories", "Category");
            dimensionElementColumn.Hierarchy.LevelElements["Category"].Add(this.SelectedProductName);
            dimensionElementColumn.Hierarchy.LevelElements["Category"].IncludeAvailableMembers = true;

            MeasureElements measureElementColumn = new MeasureElements();

            // Specifying the name for Measure Element
            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Gross Profit"
            });

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Internet Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            DimensionElement dimensionElementRow = new DimensionElement();

            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal");

            // Adding Column Members
            olapReport.CategoricalElements.Add(dimensionElementColumn);
            olapReport.CategoricalElements.Add(kpiElement);
            olapReport.SeriesElements.Add(dimensionElementRow);

            return(olapReport);
        }
Пример #12
0
        /// <summary>
        /// This method is used to load the OLAP report with KPI elements.
        /// </summary>
        /// <returns></returns>
        OlapReport LoadBasicKPI()
        {
            OlapReport olapReport = new OlapReport();

            olapReport.CurrentCubeName = "Adventure Works";

            DimensionElement dimensionElementColumn = new DimensionElement();

            dimensionElementColumn.Name = "Product";
            dimensionElementColumn.AddLevel("Product Categories", "Category");
            dimensionElementColumn.Hierarchy.LevelElements["Category"].Add((this.cmbProduct.SelectedItem as ComboBoxItem).Content.ToString());
            dimensionElementColumn.Hierarchy.LevelElements["Category"].IncludeAvailableMembers = true;

            MeasureElements measureElementColumn = new MeasureElements();

            measureElementColumn.Elements.Add(new MeasureElement {
                Name = "Gross Profit"
            });

            KpiElements kpiElement = new KpiElements();

            kpiElement.Elements.Add(new KpiElement {
                Name = "Internet Revenue", ShowKPIGoal = true, ShowKPIStatus = true, ShowKPIValue = true, ShowKPITrend = true
            });

            DimensionElement dimensionElementRow = new DimensionElement();

            dimensionElementRow.Name = "Date";
            dimensionElementRow.AddLevel("Fiscal", "Fiscal");

            olapReport.CategoricalElements.Add(dimensionElementColumn);
            olapReport.CategoricalElements.Add(kpiElement);
            olapReport.SeriesElements.Add(dimensionElementRow);

            return(olapReport);
        }
        private OlapReport CreateOlapReport(string Report)
        {
            OlapReport olapReport = new OlapReport()
            {
                Name = "Default Report"
            };

            olapReport.CurrentCubeName = "Adventure Works";

            if (Report == "Paging")
            {
                olapReport.EnablePaging = true;
                olapReport.PagerOptions.SeriesPageSize      = 5;
                olapReport.PagerOptions.CategoricalPageSize = 3;

                DimensionElement dimensionElement = new DimensionElement()
                {
                    Name = "Customer"
                };
                dimensionElement.AddLevel("Customer", "Customer");
                olapReport.CategoricalElements.Add(dimensionElement);

                DimensionElement dimensionElementRow = new DimensionElement()
                {
                    Name = "Customer", HierarchyName = "Customer"
                };
                dimensionElementRow.AddLevel("Customer Geography", "Country");
                olapReport.SeriesElements.Add(dimensionElementRow);

                MeasureElements measureElementColumn = new MeasureElements();
                measureElementColumn.Elements.Add(new MeasureElement {
                    Name = "Internet Sales Amount"
                });
                olapReport.CategoricalElements.Add(measureElementColumn);
            }
            else if (Report == "CalculatedMember")
            {
                DimensionElement internalDimension = new DimensionElement();
                internalDimension.Name = "Product";
                internalDimension.AddLevel("Product Categories", "Category");

                //// Calculated Measure
                CalculatedMember calculatedMeasure1 = new CalculatedMember();
                calculatedMeasure1.Name       = "Oder on Discount";
                calculatedMeasure1.Expression = "[Measures].[Order Quantity] + ([Measures].[Order Quantity] * 0.10)";
                calculatedMeasure1.AddElement(new MeasureElement {
                    Name = "Order Quantity"
                });

                // Calculated Dimension
                CalculatedMember calculateDimension = new CalculatedMember();
                calculateDimension.Name       = "Bikes & Components";
                calculateDimension.Expression = "([Product].[Product Categories].[Category].[Bikes] + [Product].[Product Categories].[Category].[Components] )";
                calculateDimension.AddElement(internalDimension);

                MeasureElements measureElementColumn = new MeasureElements();
                measureElementColumn.Elements.Add(new MeasureElement {
                    Name = "Sales Amount"
                });
                measureElementColumn.Elements.Add(new MeasureElement {
                    Name = "Order Quantity"
                });

                DimensionElement dimensionElementRow = new DimensionElement();
                //Specifying the Dimension Name
                dimensionElementRow.Name = "Date";
                dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");


                //// Adding Calculated members in calculated member collection
                olapReport.CalculatedMembers.Add(calculatedMeasure1);
                olapReport.CalculatedMembers.Add(calculateDimension);

                ///Adding Measure Element
                olapReport.CategoricalElements.Add(measureElementColumn);
                olapReport.CategoricalElements.Add(calculatedMeasure1);

                ///Adding Row Members
                olapReport.SeriesElements.Add(dimensionElementRow);
                olapReport.SeriesElements.Add(calculateDimension);
            }
            else if (Report == "KPI")
            {
                DimensionElement dimensionElement = new DimensionElement()
                {
                    Name = "Date"
                };
                dimensionElement.AddLevel("Fiscal", "Fiscal Year");
                olapReport.CategoricalElements.Add(dimensionElement);

                DimensionElement dimensionElementRow = new DimensionElement()
                {
                    Name = "Customer", HierarchyName = "Customer"
                };
                dimensionElementRow.AddLevel("Customer Geography", "Country");
                olapReport.SeriesElements.Add(dimensionElementRow);

                MeasureElements measureElementColumn = new MeasureElements();
                measureElementColumn.Elements.Add(new MeasureElement {
                    Name = "Internet Sales Amount"
                });
                olapReport.CategoricalElements.Add(measureElementColumn);

                KpiElements kpiElement = new KpiElements();
                kpiElement.Elements.Add(new KpiElement
                {
                    Name          = "Revenue",
                    ShowKPIStatus = false,
                    ShowKPIGoal   = false,
                    ShowKPITrend  = true,
                    ShowKPIValue  = false
                });
                olapReport.CategoricalElements.Add(kpiElement);
            }
            else
            {
                MeasureElements measureElement = new MeasureElements();
                measureElement.Elements.Add(new MeasureElement {
                    UniqueName = "[Measures].[Customer Count]"
                });

                DimensionElement dimensionElementRow = new DimensionElement();
                dimensionElementRow.Name = "Date";
                dimensionElementRow.AddLevel("Fiscal", "Fiscal Year");

                olapReport.SeriesElements.Add(dimensionElementRow);
                olapReport.CategoricalElements.Add(measureElement);
            }
            return(olapReport);
        }