`
netxdiy
  • 浏览: 728278 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

《Microsoft SQL Server 2008 MDX Step by Step》学习笔记十三:创建报表(本书完)

 
阅读更多

SQL Server 2008中SQL应用系列及BI学习笔记系列--目录索引

导读:本文主要创建报表,也就是MDX结果的最终展现,包括:

■1、创建一个简单的报表项目

■2、连接到Analysis Services

■3、设计DataSet

■4、添加参数到DataSet

■5、在Report中设置数据

本文所用数据库和所有源码,请到微软官网下载

本文末尾处附本文所用示例下载。

1、创建一个最简单的报表项目

步骤如下:第一步:在VS2008环境中新建一个Report项目,如下图所示:

邀月工作室

邀月工作室

邀月工作室

二、连接到Analysis Services

创建一个数据源即可。

邀月工作室

邀月工作室

邀月工作室

三、设计DataSet

邀月工作室

邀月工作室

添加一个计算成员

邀月工作室

邀月工作室

例12-1

WITH
MEMBER [Measures].[Reseller Sales Per Order] AS
([Measures].[Reseller Sales Amount]) / ([Measures].[Reseller Order Count])
SELECT
NON EMPTY {
[Measures].[Reseller Order Count],
[Measures].[Reseller Sales Per Order],
[Measures].[Reseller Sales Amount]
} ON COLUMNS,
NON EMPTY { ( [Product].[Product].[Product].ALLMEMBERS ) }
DIMENSION PROPERTIES
MEMBER_CAPTION, MEMBER_UNIQUE_NAME
ON ROWS
FROM [Step-by-Step]
CELL PROPERTIES
VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE,
FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS

修改MDX查询:

邀月工作室

至此,设计DataSet完成。

四、添加参数到DataSet

邀月工作室

注意到查询也发生了变化

例12-2

WITH
MEMBER [Measures].[Reseller Sales Per Order] AS
([Measures].[Reseller Sales Amount]) / ([Measures].[Reseller Order Count])
SELECT
{
[Measures].[Reseller Order Count],
[Measures].[Reseller Sales Per Order],
[Measures].[Reseller Sales Amount]
} ON COLUMNS,
{ ([Product].[Product].[Product].ALLMEMBERS ) }
DIMENSION PROPERTIES
MEMBER_CAPTION, MEMBER_UNIQUE_NAME
ON ROWS
FROM (
SELECT
( { [Product].[Product Categories].[Subcategory].&[1] } ) ON COLUMNS
FROM [Step-by-Step]
)
WHERE ( [Product].[Product Categories].[Subcategory].&[1] )
CELL PROPERTIES
VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE,
FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS

邀月工作室

例12-3

WITH
MEMBER [Measures].[Reseller Sales Per Order] AS
([Measures].[Reseller Sales Amount]) / ([Measures].[Reseller Order Count])
SELECT
{
[Measures].[Reseller Order Count],
[Measures].[Reseller Sales Per Order],
[Measures].[Reseller Sales Amount]
} ON COLUMNS,
{ ([Product].[Product].[Product].ALLMEMBERS ) }
DIMENSION PROPERTIES
MEMBER_CAPTION, MEMBER_UNIQUE_NAME
ON ROWS
FROM (
SELECT
( STRTOSET(@ProductProductCategories, CONSTRAINED) ) ON COLUMNS
FROM [Step-by-Step]
)
WHERE
( IIF(
STRTOSET(@ProductProductCategories, CONSTRAINED).Count = 1,

STRTOSET(@ProductProductCategories, CONSTRAINED),
[Product].[Product Categories].currentmember
)
)
CELL PROPERTIES
VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE,
FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS

可以修改我们刚添加的参数:

邀月工作室

邀月工作室

修改参数以限制到Subcategory及以上的级别

例12-4

WITH MEMBER [Measures].[ParameterCaption] AS

[Product].[Product Categories].CURRENTMEMBER.MEMBER_CAPTION

MEMBER [Measures].[ParameterValue] AS

[Product].[Product Categories].CURRENTMEMBER.UNIQUENAME

MEMBER [Measures].[ParameterLevel] AS

[Product].[Product Categories].CURRENTMEMBER.LEVEL.ORDINAL

SELECT {

[Measures].[ParameterCaption],

[Measures].[ParameterValue],

[Measures].[ParameterLevel]

} ON COLUMNS ,

[Product].[Product Categories].ALLMEMBERS ON ROWS

FROM [Step-By-Step]

修改后的结果:

例12-5

WITH
MEMBER [Measures].[ParameterCaption] AS
[Product].[Product Categories].CURRENTMEMBER.MEMBER_CAPTION
MEMBER [Measures].[ParameterValue] AS
[Product].[Product Categories].CURRENTMEMBER.UNIQUENAME
MEMBER [Measures].[ParameterLevel] AS
[Product].[Product Categories].CURRENTMEMBER.LEVEL.ORDINAL
SELECT
{
[Measures].[ParameterCaption],
[Measures].[ParameterValue],
[Measures].[ParameterLevel]
} ON COLUMNS,
{
Descendants(
[Product].[Product Categories].[All Products],
[Product].[Product Categories].[Subcategory],
SELF_AND_BEFORE
)
} ON ROWS
FROM [Step-by-Step]

重要:Report Service提供“Select All”选项,此时,当某个用户设置All Members时,在参数的DataSet中的每个可用Member将被选择并提交。

邀月工作室

附带介绍一下Filter 操作符(运算符):

邀月工作室

在上面我们也用到三个字符转换函数:

StrToSet(http://msdn.microsoft.com/zh-cn/library/ms144782.aspx

StrToMember(http://msdn.microsoft.com/zh-cn/library/ms146022.aspx

StrToTuple(http://msdn.microsoft.com/zh-cn/library/ms146079.aspx

5、在Report中设置数据

邀月工作室

增加report汇总

邀月工作室

邀月工作室

邀月工作室

上图的结果我们通过前节的练习,知道,结果是不准确的,Report Service默认使用Sum进行汇总,实际上我们需要使用的是Aggregate函数。

Reseller Order Count列基于Reseller Order Count度量,使用Distinct Count聚合函数。下面我们修改以使用Aggregate函数。

对第三列和第四列依次使用Aggregate函数:

邀月工作室

修改后的效果:

邀月工作室

格式化表格

邀月工作室

邀月工作室

注意:Currency与当前的操作系统设置相关。

邀月工作室

当然,你可以尝试更多的显示效果,例如背景色:

邀月工作室

邀月工作室

小结:本文是关于Report的初级入门知识,主要是前面所学MdX函数应用的前台展示。本书的学习也到此结束,总的来说,这算是一本书相当简易的基础书,其中的大部分内容都可以在MSDN中找到。

下面一本书将是Cube的提高《Expert Cube Development with Microsoft SQL Server 2008 Analysis Services》,欢迎有兴趣的同学一起读书。

本文所用演示代码:下载

参考资源:

1、MDX官方教程(http://msdn.microsoft.com/zh-cn/library/ms145506.aspx


邀月注:本文版权由邀月和CSDN共同所有,转载请注明出处。
助人等于自助!
3w@live.cn


分享到:
评论

相关推荐

    Microsoft SQL Server 2008 MDX Step by Step Feb 2009

    ### Microsoft SQL Server 2008 MDX Step by Step (Feb 2009) #### 知识点一:Multidimensional Expressions (MDX) 基础 **Multidimensional Expressions (MDX)** 是一种用于查询多维数据集的语言。MDX 提供了一种...

    Microsoft SQL Server 2008 Analysis Services Step by Step 随书光盘

    《Microsoft SQL Server 2008 Analysis Services Step by Step》随书光盘包含了大量实践性的文件,旨在帮助读者深入理解并掌握SQL Server 2008的Analysis Services(简称SSAS)这一强大的数据仓库和商务智能工具。...

    Microsoft+SQL+Server+2008+MDX+Step+by+Step

    《Microsoft SQL Server 2008 MDX Step by Step》是一本专为SQL Server数据库管理员、数据分析师和开发人员设计的教程,旨在深入探讨多维表达式(Multidimensional Expressions,简称MDX)在SQL Server 2008中的应用...

    Microsoft SQL Server2005 Analysis Step by Step

    Provides information on the fundamentals of Microsoft SQL Server 2005 Analysis Services. Teach yourself the fundamentals of SQL Server Analysis Services—one step at a time. With this practical, ...

    SQL-Server-2008---Step-by-Step.rar_SQL SERVER 2008_step by step

    《SQL Server 2008 Step by Step》是微软出版社发布的一本针对SQL Server 2008的全面教程,适合初学者和有一定基础的数据库管理员。这本书通过逐步指导的方式,帮助读者掌握SQL Server 2008的核心功能和操作技巧。 ...

    Microsoft.Press.Microsoft.SQL.Server.2008.MDX.Step.by.Step.Feb.2009.rar

    《Microsoft SQL Server 2008 MDX 步步为营》是微软出版社于2009年2月推出的一本专门针对SQL Server 2008中的多维表达式(Multidimensional Expressions,简称MDX)技术的实战指南。这本书详细介绍了如何在SQL ...

    SQL Server 2008报表服务入门到精通

    SQL Server 2008报表服务是微软提供的一款强大的商业智能工具,用于创建、管理和分发各种类型的报表。本教程旨在帮助初学者从基础到深入理解并掌握SQL Server 2008报表服务的各项功能。 1. **报表服务概述** SQL ...

    Microsoft SQL Server 2005 Analysis Services Step by Step

    Provides information on the fundamentals of Microsoft SQL Server 2005 Analysis Services. Teach yourself the fundamentals of SQL Server Analysis Services—one step at a time. With this practical, ...

    Microsoft SQL Server 2008 分析服务从入门到精通(全套资料)

    电子书《Microsoft SQL Server 2008 Analysis Services Step by Step》很可能是逐步教程,涵盖了从安装配置到实际操作的整个过程。书中可能涉及以下内容: 1. **安装与配置**:如何在服务器上安装SQL Server 2008,...

    Professional SQL Server 2012 Analysis Services with MDX and DAX part2

    This title serves as an authoritative guide to Microsofts new "SQL Server 2012 Analysis Services" BI product and is written by key members of the Microsoft Analysis Services product development team....

    sql server2008文档教程

    SQL Server 2008是微软公司推出的一款关系型数据库管理系统,它在企业级数据管理、分析和报告方面表现出色。这款教程适用于初学者,旨在帮助用户掌握SQL Server 2008的基础知识和核心功能。 一、SQL Server 2008...

    精通微软SQLServer2008管理.rar

    《精通微软SQL Server 2008管理》 在IT领域,数据库管理是不可或缺的一环,而微软的SQL Server 2008作为一款广泛使用的数据库管理系统,深受企业和开发者的青睐。本文将深入探讨SQL Server 2008的核心管理知识,...

    Microsoft SQL Server 2012 Analysis Services 高级教程 pdf

    《Microsoft SQL Server 2012 Analysis Services 高级教程》是针对数据库管理员、数据分析师以及IT专业人士的一本深入指南,旨在帮助读者掌握SQL Server 2012中的Analysis Services(简称SSAS)的各项高级功能。...

    SQL Server 2005 Analysis Services Step by Step

    ### SQL Server 2005 Analysis Services Step by Step #### 概述 SQL Server 2005 Analysis Services (SSAS) 是一个强大的商业智能工具,用于构建多维数据集和数据挖掘模型。本书旨在为用户提供一个逐步指南,帮助...

    SQL_Server_SSAS_MDX_翻译资料

    它起源于微软在1998年的SQL Server Analysis Services 7.0版本,现在已经成为一个标准化的语言,被其他OLAP(在线分析处理)供应商如Microstrategy Intelligence Server、Hyperion Essbase Server和SAS的Enterprise ...

    Practical MDX Queries: For Microsoft SQL Server Analysis Services 2008 PDF

    "Practical DMX Queries for Microsoft SQL Server Analysis Services 2008" contains more than 250 downloadable DMX queries you can use to extract and visualize data. The application, syntax, and results...

    Professional SQL Server 2012 Analysis Services with MDX and DAX

    《SQL Server2012Analysis Services高级教程(第2版)》由Microsoft产品团队的主要成员(哈日那思、菲尔格林等)编写,介绍了如何应用这些新功能来创建复杂的BI解决方案。为了实现这一目的,你将在本书中了解到如何...

Global site tag (gtag.js) - Google Analytics