繁体   English   中英

SSRS报告参数导致问题

[英]SSRS Report Parameter causing problems

我面临着SSRS报告参数的怪异问题。 当前正在使用SSRS 2016版本。 我们连接到SSAS模型,并使用报告中的DAX查询创建数据集。

这是我的报表数据集中使用的示例DAX查询,

evaluate
summarize(
calculatetable(
('Field Measures',
  PATHCONTAINS(substitute( 
  substitute( 
  substitute( 
  @Parameter_District
  , "{ ", "") 
  , " }", "") 
  , ",", "|") , 'Field Location'[District]),
  PATHCONTAINS(substitute( 
  substitute( 
  substitute( 
  @Parameter_City
  , "{ ", "") 
  , " }", "") 
  , ",", "|") , 'Field Location'[City])
  )
  'Field Fact'[Field Interview Number],
  'Occurred Date'[Date],
  'Occurred Date'[Year]
 ))

我在此查询中定义了两个参数( District和City ),并且两个字段都来自同一个表“ Filed Location ”。

我面临的问题是,如果删除第二个参数“ CITY” ,则此查询效果很好。 但是,当我在查询中包括它时,它将失败。 为了简单起见,我在这里只提到了2个参数,但是我有大约5个参数来自同一张表,它们工作正常。 在此输入图像描述 我很想知道为什么只有当我在参数列表中包含[CITY]对象时才会发生这种情况,以及为什么在删除它时它会很好地起作用。 从字面上看,我不在意:(

请建议我一些调试此问题的方法。

谢谢一堆。 巴拉吉

我为我的问题找到了解决方案,但是我不知道它为什么起作用。

让我重新发布报表中使用的DAX查询,

evaluate
summarize(
calculatetable(
('Field Measures',
  PATHCONTAINS(substitute( 
  substitute( 
  substitute( 
  @Parameter_District
  , "{ ", "") 
  , " }", "") 
  , ",", "|") , 'Field Location'[District]),
  PATHCONTAINS(substitute( 
  substitute( 
  substitute( 
  @Parameter_City
  , "{ ", "") 
  , " }", "") 
  , ",", "|") , 'Field Location'[City])
  )
 'Field Fact'[Field Interview Number],
 'Occurred Date'[Date],
 'Occurred Date'[Year],
 "Field Count",[FieldInterview - Count]
  ))

如果我们观察到我之前发布的原始代码与现在发布的原始代码,则它们之间存在一行差异。 测量值( 字段计数 )。 在格式化我的问题时,我删除了最后一行代码(错误地)。但是当我重新访问自己的问题以寻找任何可能的答案时,我注意到了这种差异,我只是尝试通过删除上述Measure值来使用查询就像魔术一样工作!!

因此,我真的不了解度量,联接和参数在内部如何工作。 我仍然愿意接受这里专家的任何讨论/投入。

谢谢。 巴拉吉

简单的方法,而不是使用DAX创建参数,而是使用Filter

  1. 创建主数据集1(所有必填字段,包括城市列)
  2. 例如,为参数创建Dataset2(仅在此数据集中获取城市列)
  3. 使用数据集2创建参数,然后转到主数据集1-属性-过滤器。 -在表达式中添加列和参数。 这会奏效

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM