我需要使用带有区域名称的SSRS 2008修改现有报告,它可能包含10个不同的区域。该区域只设置了一列,可能包含10个不同的值。我相信这是一个Tablix。目前,区域按字母顺序排序,但我必须对它们进行不同的排序,因此我根据所需的顺序在CASE语句中为每个区域分配了一个数字。然后,我按照列本身(tablix)中所需的顺序对区域进行排序,并在报告中按所需顺序对区域进行排序,但不幸的是,分配的数字在报告中而不是区域名称中。而不是
BF CF CO CL等......我明白了 报告标题中的1 2 3 4等。
CASE ,
WHEN teamgroup.Name = 'BF' THEN 1
WHEN teamgroup.Name = 'CF' THEN 2
WHEN teamgroup.Name = 'CO' THEN 3
WHEN teamgroup.Name = 'CL' THEN 4
WHEN teamgroup.Name = 'CN' THEN 5
WHEN teamgroup.Name = 'GA' THEN 6
WHEN teamgroup.Name = 'IN' THEN 7
WHEN teamgroup.Name = 'KY' THEN 8
WHEN teamgroup.Name = 'MD' THEN 9
WHEN teamgroup.Name = 'NF' THEN 10
END AS Region
我尝试将teamgroup.name显示为region,然后使用Region_sort作为CASE语句的别名,但它不起作用。在Tablix属性中,我使用了sort by:region_sort,order是A到Z,但区域按字母顺序排序。 任何帮助将不胜感激。
答案 0 :(得分:5)
您可以以与显示内容不同的方式对Tablix进行排序。
teamgroup.name
。switch
函数将名称更改为数字,或者更好的是使用SQL region_Sort
列(如果有的话)。如果您的Tablix中有群组,则需要对teamgroup.name
地区/群组执行此操作,而不是详细信息。