我使用 Report Builder 2.0 与 TFS 2010 的分析服务构建了一个非常简单的报告。该报告显示了针对特定团队项目记录的活动错误的数量,按优先级排序。
我有几个团队项目,我不想为每个项目重复相同的报告。相反,我想将团队项目作为 URL 中的参数传入。网络搜索显示了 John Socha-Leialoha 关于如何执行此操作(查找 MDX 参数并构建查询)的良好指导。
我在报告中设置了默认值以指向特定的团队项目,并且报告显示了预期的信息,当我向 URL 添加参数时,报告无法运行,并显示以下消息:'Value cannot be null. Parameter name: main'
以下 URL 使用默认团队项目正确显示报告:
/sites/tfsserver/_layouts/TfsRedirect.aspx?tf:Type=Report&tf:ReportName=Bug+Information/ActiveBugsByPriorityBarChart
我也试过附加参数,如下:
/sites/tfsserver/_layouts/TfsRedirect.aspx?tf:Type=Report&tf:ReportName=Bug+Information/ActiveBugsByPriorityBarChart&tf:Parameters=TeamProjectTeamProjectHierarchy=[Team Project].[Team Project Hierarchy].&[{E207FAFF-CA70-41A2-8A62-B881C9C9F8F1}]
这也会生成消息:'Value cannot be null. Parameter name: main'
这使我意识到我需要转义&
符号,如下所示:
/sites/tfsserver/_layouts/TfsRedirect.aspx?tf:Type=Report&tf:ReportName=Bug+Information/ActiveBugsByPriorityBarChart&tf:Parameters=TeamProjectTeamProjectHierarchy=[Team Project].[Team Project Hierarchy].&26[{E207FAFF-CA70-41A2-8A62-B881C9C9F8F1}]
但是,报告仍然无法运行,并显示相同的错误消息。
由于在 Socha 的示例中没有引用它,所以我也尝试在省略&tf:
参数标签的情况下运行报表,如下所示:
/sites/tfsserver/_layouts/TfsRedirect.aspx?tf:Type=Report&tf:ReportName=Bug+Information/ActiveBugsByPriorityBarChart&TeamProjectTeamProjectHierarchy=[Team Project].[Team Project Hierarchy].&26[{E207FAFF-CA70-41A2-8A62-B881C9C9F8F1}]
这似乎也不起作用。在这一点上,我很高兴能得到任何建议/指导。