0

我对 Reporting Services 报告有疑问。我的报表有两个数据集,一个用于获取实际的报表数据,另一个用于获取已翻译的资源字符串,以便在报表上使用文字文本的任何位置进行显示。该数据集需要三个参数,一个语言集 id、一个语言代码和一个字符串来匹配资源名称。

按照我在此处找到的示例(Miguel Catalão 的回复),我创建了一个多值参数 @Resources,该参数将从资源数据集中填充,并创建一个代码函数,该函数从多值查询中查找特定值。然后将在使用文字字符串的表达式中调用此函数。

我认为这应该可行,但我遇到了一个我无法完全找到解决方法的问题。@Resources 参数依赖于资源数据集存在依赖问题,而资源数据集又依赖于三个参数;@LanguageSetID、@LanguageCode 和 @ResourceNameLookup。我已经读过声明参数的顺序很重要,所以我确保最后三个参数出现在 @Resources 之一的上方,并且所有三个参数都具有默认值,这将导致数据集检索数据。

然而,我在预览报告时仍然收到以下错误;任何建议或指导将不胜感激。

The report parameter ‘Resources’ has a DefaultValue or a ValidValue that depends on the report parameter “LanguageCode”. Forward dependencies are not valid.
The report parameter ‘Resources’ has a DefaultValue or a ValidValue that depends on the report parameter “ResourceNameLookup”. Forward dependencies are not valid.
4

2 回答 2

2

我有同样的错误,但这是由于其他原因。我所做的是在我的报告中创建了一个参数,然后将默认值链接到一个数据集。

这反过来又添加了数据集中所需的参数。不知何故,我列表中参数的顺序发生了变化。这是我盯着“前向依赖项无效”错误的时候。

然后我查看了另一个使用相同过程将参数链接到数据集的报告。我注意到我的参数顺序不同。我只是回到我的新报告,并使用向上和向下箭头,直到我的参数与工作报告的顺序相同。这似乎解决了错误并且工作正常。显然,使用数据集的参数需要低于 SPROC 中使用的参数。

从长远来看,这对某人有帮助。

C/N:参数正在由数据集(存储过程)填充。正在填充的参数高于它为 SPROC 所期望的一些参数。

于 2013-03-22T20:36:59.927 回答
0

这一切都是由我犯的一个愚蠢的错误引起的。我从我提到的帖子中复制并修改了代码函数,但忽略了将参数的数据类型从整数更改为字符串,我的就是这样。

错误以它的方式表现出来似乎很奇怪,但我现在已经解决了这个问题,只是遇到了我在另一个问题中询问的另一个问题

于 2011-07-06T10:35:01.683 回答