我已经在这里做了很多例子,如果我问一个重复的问题,我会道歉,据我所知,我不是。
我制作了一份SSRS报告,显示了我们销售部门某些方面的总销售额。它们按行,成本,毛利,毛利%,订单数量,总销售额分列。"列是我们销售的方面。网络销售,电话销售等......
在Tablix中我可以格式化一个文本框以将结果显示为数字,但正如您所看到的,我还有Percentage和Count。我不知道如何在原始文本框格式的上下文中格式化这些格式。所以我知道我已经将所有在那里显示的内容作为一个数字,但是如何处理显示百分比的百分比和显示为计数的数量?
例如,所有百分比目前显示为" $ 0.35"以及遵循该形式的各种其他数字。该计数目前也显示为货币。
我使用了我在这里找到的一个例子," = Iif(Me.Value = Floor(Me.Value)," 0%"," 0.00 %"),"但所做的一切都是让那一栏中出现的所有东西," 0.00%"我对SSRS很新,过去两周一直在不停地填写,但我找不到这方面的帮助。提前感谢您提供的一切。
更新:=IIF(Fields!LVS_Web.Value=0.00, "0%", format(Fields!LVS_Web.Value, "P"))
这在某种程度上起作用,但现在一切都是百分之......在这里思考ELSE,但我不知道ELSE是如何进入的,我从未见过ELSE这个词。
更新2:我注意到的是,在声明中,它说的是&#34; = 0.00,&#34; 0%&#34;,&#34;这甚至不适用。我只是把它放在那里,因为我是新手,我只需要一个参数。在数字<1的条件下,我取0%并将其改为N. .99,希望我能抓住所有低于1的值的小数。比如,&#34; $。23&#34;,后来变成23.45%,所以我可以这样做,但是我不知道&# 39; t udnerstand它是否制造了其他所有东西,&#34; N,&#34;而不是数字。这是为什么?它没有做出其他一切,&#34; P?&#34;
我失去了该死的心灵。
还有一个事实是,这是从存储过程中提取的信息,我对这些信息还不太了解,我经常被分配简单的任务作为学习的踏脚凳。我真的不知道查询是什么,但如果我愿意,我就无法编辑它。这可以通过表达式格式化来完成,但我的表达式太宽泛,但我使用大于或小于的结果得到混合结果,并且它可能不是最明智的用法,因为这些数字不是一成不变的。我的日子差不多完成了,我的进步很少,但我吃了一顿丰盛的午餐。如此成功。
所以我为这个问题提供了自己的答案,并且它有效。谢谢我感谢所有试图帮助我并帮助我的人。我很欣赏陌生人为彼此付出的努力。
我开发了一个新问题,我需要显示相对于被拉数据的时间。我现在可以把它放在那里并获得今天的约会,但是如果有人从FEB提取信息,那么它们可能会在当前日期之前稍微改变一下。我很快就会想到这一点,但如果有人能在此期间提供帮助,我将不胜感激。
答案 0 :(得分:17)
标准原则是将数据与显示分开,因此使用Value
属性将数据存储在其本机数据类型中,并使用Format
属性以您希望的方式显示它。因此,不要使用Value
属性(例如=Format(Fields.SomeField.Value, "0.00%")
)格式化表达式,而将Value
保留为=Fields!SomeField.Value
,并将Format
属性设置为P2
。
将报表导出到Excel时,这一点尤为重要,因为如果您拥有正确的数据数据类型,它将作为正确的数据类型导出到Excel。如果您使用Format
函数,它将导出为文本,使排序和公式无法正常工作。
控制格式最简单的方法是使用standard numeric formats。单击要具有特定格式的单元格或单元格区域,然后设置Format
属性。它们是格式说明符字母,后跟可选的精度数字(小数位数)。一些有用的是:
C
带有2位小数的货币(默认情况下)
N4
带小数点后4位的数字
P0
没有小数位数的百分比
点击上面的链接查看完整列表。将数字单元格格式化为数字,将百分比格式化为百分比 - 您不需要尝试使每个单元格适合一个格式字符串。
这些标准数字格式也尊重区域设置。您应该将报告的Language
属性设置为=User!Language
,以使用用户的区域设置而不是报告服务器。
答案 1 :(得分:3)
=iif(Fields!Metric.Value = "Gross Profit %",
Format(Fields!LVS_Web.Value,"P"),
iif(Fields!Metric.Value = "Order Count",
Format(Fields!LVS_Web.Value,"G4"),
Format(Fields!LVS_Web.Value,"C")))
这就是拯救我并做我想做的事。还有另一个错误,但这是我的老板的错,所以现在我开始嘲笑他。谢谢大家。
答案 2 :(得分:3)
如果数字已经是* 100,例如。 9.5应显示为9.5%,然后使用格式:
0.00\%
9.5 - &gt; 9.5%
0.34 - &gt; 0.34%
这样您就可以使用标准数字格式,只需将%添加到结尾即可。 \转义%,阻止格式化* 100(这将使9.5显示950%。)。
答案 3 :(得分:0)
来源:
https://technet.microsoft.com/en-us/library/bb630415(v=sql.100).aspx
这很容易使用,
(当前范围的行项目总计之和)/(数据集的行项目总计之和)的百分比。 使用指定一个小数位的FormatPercent格式化此值。
="Percentage contributing to all sales: " & FormatPercent(Sum(Field!LineTotal.Value)/Sum(Field!LineTotal.Value,"Sales"),1)