【问题标题】:get specific value from parameter从参数中获取特定值
【发布时间】:2013-10-22 00:29:09
【问题描述】:

我有一个多值参数 TimeMonthOfYear(来自多维数据集),其中包含 January Februrary...December。 我想在运行报告时使用 MonthName(Month(Today)) 设置一个显示当前月份的默认值(我试过了,但没有用)...

如果我这样做 [Time].[Month Of Year].&[October] 就可以了!在选择了上一个下拉列表(年份)之后,在下拉列表中选择了十月。

我不想用“硬编码”的方式...我试过了 [时间].[一年中的月份].&[MonthName(Month(Today))] 和 ="[Time].[Month Of Year].&["&MonthName(Month(Today))&"]" 没有运气

非常感谢任何帮助!

【问题讨论】:

  • 今天之后你只是缺少括号吗? MonthName(Month(Today()))
  • 我已经试过了,谢谢。问题依然存在
  • 您如何准确地填充参数,因为如果我使用全文名称的值手动设置可用值,=MonthName(Month(Today())) 的默认值可以正常工作。 (即使启用了多选。)如果传入的空格可能会弄乱完全匹配...
  • 参数值中是否包含年份?在这种情况下,您可能必须将年份附加到 =Month... 并使用类似的年份表达式。
  • 我的参数来自一个名为 Time 的维度,该维度具有一年中的月份,其中包含月份的列表,即 1 月至 12 月。我也有 Year 作为另一个参数。我的参数 TimeMonthOfYear 有一些约束 ... , [Measures].[ParameterLevel]} ON COLUMNS , [Time].[Month Of Year].ALLMEMBERS ON ROWS FROM ( SELECT ( STRTOSET(@TimeYear, CONSTRAINED) ) ON COLUMNS FROM ( SELECT ( STRTOSET(@DimOrganisationDealerName, CONSTRAINED) ) ON COLUMNS FROM ...所以我不能硬编码可用值中的值,因为它只接受 [Time].[Month Of Year].&[September] 格式

标签: reporting-services parameters dataset report builder


【解决方案1】:

是的 :) 现在使用它可能不是一个很好的解决方案,但现在可以在 vb 代码的帮助下工作。在标准值中,我有 ="[Time].[Month Of Year].&[" + Code.SetMonth() + "]" 和自定义代码 Function SetMonth() As String Dim x as STRING x =CStr(MonthName(Month (今天))) 'CStr 不需要我认为 If x = "januari" Then x = "January" ElseIf x = "februari" Then x = "February" ... End If Return(x) End Function 这给了我在年份下拉列表中选择值后的当前月份:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-13
    • 1970-01-01
    • 1970-01-01
    • 2019-03-30
    • 2023-03-04
    • 1970-01-01
    相关资源
    最近更新 更多