SSRS 2012 参数化报表 -- 级联式参数设置

SSRS 2012 参数化报表 -- 级联式参数设置

再清楚的菜单,只要遇到选择项目一多的时候,难免会让人眼花缭乱,而找不到该选的选项。

当参数选项过多时,可以利用其他参数作为“预选”的项目,当前置参数被选定之后,就会同时限制了后设参数的值域,如此一来,即可做到快速选项减量的目的,例如,选择了“产品大类”为“灯具”后,那么“产品子类”就只会筛选出在这个大类下的项目,而这项功能称之为“级联式参数(Cascading Parameter)”。

级联式参数实例

步骤1

首先,设计出一张以销售年度为组的销售报表,使用的参数为产品子类。

步骤2

接着,建立两个新的数据集,分别为“ProductCategoryList”以及“ProductSubcategoryList”。而级联式参数的秘诀就在数据集(ProductSubcategoryList)的查询语句中参照了产品大类(ProductCategory)变量。

步骤3

设置完成后,报表数据窗口会显示如下效果。

级联参数的优先级:

在树状目录下的参数顺序标示它们被产生的顺序。因此,需要注意到逻辑的合理性。例如,本实例中我们应该是先选择产品大类参数,才会选择产品子类参数,因此需特别注意优先级,如果不正确,请利用上图上方的箭头调整。

步骤4

接下来,设置产品大类(ProductCategory)以及产品子类(ProductSubcategory)这两个参数。首先,开启ProductCategory参数的属性对话框,除了在“General”标签页中将它的“Prompt”改为“产品大类”,以及勾选“Allow multiple values”之外,同时切换至“Available Values”标签页,勾选“Select from one of the following options”,并且将数据集切换为“ProductCategoryList”,将值字段设为“ProductCategoryKey”(实际传递至WHERE条件的参数值),将标签字段设为“ProductCategoryName”(使用者看得懂的内容)。

步骤5

ProductSubcategory参数也是利用一样的方式开启属性对话框,在“General”标签页中将它的“Prompt”改为“产品子类”,以及勾选“Allow multiple values”。同时切换至“Available Values”标签页,勾选“Select from one of the following options”,并且将数据集切换为“ProductSubcategoryList”,将值字段设为“ProductSubcategoryKey”,将标签字段设为“ProductSubcategoryName”。

步骤6

设置完成后,将报表切换至“Preview”标签页预览报表,首先,会看到只有第一个参数可以利用下拉菜单选择,产品子类的菜单是被锁住而无法使用的。当产品大类选单选择值(灯具)之后,产品子类仅显示灯具类的子类项,当产品大类切换为其他项目时,产品子类也会跟着联动。

这种级联式的报表不但方便使用者勾选,同时还可以集成企业内部的权限层级,做到复杂的权限控制。例如,在查看报表时可以根据登录的使用者身份作为参数,仅列举出该使用者有权浏览的部门以及产品信息,这些都是利用级联参数来工作。

时间: 2024-12-26 16:29:32

SSRS 2012 参数化报表 -- 级联式参数设置的相关文章

SSRS 2012 参数化报表 -- 利用拼接字符串来取代查询参数

SSRS 2012 参数化报表 -- 利用拼接字符串来取代查询参数 以上介绍过了如何在SQL Server中使用参数化查询,但是,如果遇到一些不支持参数化查询的数据库又该怎么办呢?此时,最终极的招数就是整个查询语句都通过参数化查询以拼接字符串的方式来产生. 举例来说,除了XML文件之外,SSRS也能够接收外部Web Services返回的数据集以产生报表.在以下的实例中,利用立陶宛国家银行所提供的实时汇率换算Web服务,它提供各种货币与立陶宛币(Litas)的汇率换算. 步骤1: 请将数据表拖拉

SSRS 2012 参数化报表 -- 日期参数

SSRS 2012 参数化报表 -- 日期参数 在SSRS中,日期是比较特殊的一种参数,可以用"日历"格式显示. 日期参数实例 步骤1: 创建新的有销售日期条件的报表,利用BETWEEN加入销售日期的起始日期筛选条件. WHERE TRX_DTE BETWEEN @START_DTE AND @END_DTE 步骤2: 接着,只要在参数属性对话框将参数的数据类型设为"日期/时间"(前提是参数数据类型必须是date.smalldatetime.datetime.tim

SSRS 2012 交互式报表 -- 钻取式报表

SSRS 2012 交互式报表 -- 钻取式报表 当分析者运用报表观察汇总数据时,当对某个数据感兴趣或是察觉异常时,往往需要调阅汇总值,以仔细深入分析.这种需求称之为钻取(Drill-Through),钻取的观念也是来自于多维度分析,不过大家要注意别与刚才介绍的深化(Drill-Down)报表搞混了. 所谓的钻取式报表是由母子报表(两张独立的报表)所构成,在母报表可以预先定义某些区域经点击后可以调用子报表,使用者借由触发母报表的单元格,以导向定义好的子报表.同时在母报表连接至子报表的过程中,可以

SSRS 2012 交互式报表 -- 父子式报表

SSRS 2012 交互式报表 -- 父子式报表 在多维度分析中,父子式维度是非常重要的维度结构之一.它可以用最精简的数据结构来处理层数过多.层数不对称以及层数不确定的结构.像是组织架构.会计科目或是制造业的物料表(BOM)都属于父子式层次.以下将示范如何利用SSRS设计父子式层次报表. 步骤1: 首先,父子式层次一定需要符合以下原则.在数据表中,除了成员的键值之外,还要有另外一个字段用来表示父层成员的键值. 步骤2: 首先,加入一个数据表,将员工名称与销售金额字段加入此数据表. 步骤3: 建立

SSRS 2012 交互式报表 -- 深化式报表

SSRS 2012 交互式报表 -- 深化式报表 在报表中"组"是经常使用来显示汇总数据的方式,通过组可以让数据进行结构化的汇总,以方便浏览者解读报表信息.在复杂的商业报表中,经常会具有多重的组结构,例如,时间就可能会有年.季.月.日,为了方便使用者查看,如果组能够让使用者自行展开与闭合,分析者就可以选择想要查看的年份并深化至想要的时间层. 在商业智能中,除了固定式报表之外,大家所熟知的多维度分析(OLAP)最大的特点就是数据会根据维度进行汇总,让数以千万笔数据可以通过预先汇总的多维度

SSRS 2012 交互式报表 -- 层次性文档结构图

SSRS 2012 交互式报表 -- 层次性文档结构图 层次性文档结构图示例 当文档结构图的索引项目一变多,会变成跟参数下拉菜单一样,"太多的信息等于没有信息"而让使用者难以选择.此时,可利用层次式的文档结构图,以产生阶梯式的树状索引,能大幅缩短找寻索引项目的时间. 步骤1: 使用刚才的销售明细表,在产品大类的组内加入一个产品种类的子组. 步骤2: 在下方列组面板中右击子组(PRODUCTSUBCATEGORY_NAME)选择"Group Properties-".

SSRS 2012 交互式报表 -- 同步交互式排序

SSRS 2012 交互式报表 -- 同步交互式排序 步骤1: 首先,在刚才的"交互式排序"示例报表中再拖拉一个"Chart",设置为长条图,从报表数据窗口中将销售金额.销售数量拖至"Values",将产品大类拖放至"Category Groups"区域. 步骤2: 再回到刚才设置交互式排序的文本框,开启文本框属性,请勾选"Apply this sorting to all groups and data regio

SSRS 2012 交互式报表 -- 单层文档结构图

SSRS 2012 交互式报表 -- 单层文档结构图 当使用者查看一份页数超过数十页甚至于数百.数千页的报表时,可怜的使用者只能利用工具栏上方的"上一页"."下一页"功能,逐页靠自己的眼力寻找所需要的信息内容,这种搜寻模式不仅浪费时间,同时使用者在使用上也容易因为眼花而遗漏重大信息.因此,SSRS提供了"文档结构图"功能,让报表产生文档结构图标签,借此解决使用者面对大型报表数据搜寻的困扰. "文档结构图"的展现方式是在报表的左

SSRS 2012 交互式报表 -- 交互式排序

SSRS 2012 交互式报表 -- 交互式排序 在查看数据的过程中,为了能快速地找出特定信息以及确认数据的相对大小,总免不了使用排序的动作.但是,不同分析人员面对不同的使用习惯以及分析目的,报表数据必须随着利用不同的字段进行升序或降序排列.SSRS提供了方便的"交互式排序"功能,设计者只要通过属性窗口中的"交互式排序"标签页进行设置,使用者就可以在报表中随心所欲的指定字段排序规则. 交互式排序示例 步骤1: 首先,制作一张销售报表(以PRODUCTCATEGORY