【发布时间】:2013-05-24 12:36:48
【问题描述】:
我想使用一些参数(动态运算符)为特定报告构建动态查询。
如何在不编写/编辑表达式的情况下添加动态参数?
因为我的查询很复杂,包括三连接表和聚合,我认为这可能是导致错误的原因。
我可以在数据集属性的表达式中连接表吗?
SELECT a.CaseNo, a.PatientName, a.PolicyNumber,
FROM Cases a
INNER JOIN GOPs b
ON a.CaseNo = b.CaseNo
INNER JOIN Invoices d ON d.CaseNo = a.CaseNo
WHERE (a.CreatedDate >= @StartDate AND a.CreatedDate <= @EndDate +1)
如果我直接在查询编辑器中编写此查询,则它可以正常工作。但是,当我把它作为表达式时,它就不再起作用了。
另外,我想在该查询中添加动态运算符。唯一的解决方案是将其作为表达式。例如。在查询的最后,我想添加以下内容:
AND FeeEuro "+ Parameters!Operator.Value + Parameters!OperatorValue.Value
类似的东西
AND FeeEuro > 200
是否有可能做我需要做的事情,如果可以,你能指出我正确的方向吗?
【问题讨论】:
-
你能给出一个简化版本的查询以及参数应该如何影响这个查询吗?
-
我添加了一些样本 Ian。我可以在表达式中使用 INNER JOIN、聚合吗?
-
酷,谢谢。您能否添加一些示例,说明
Parameters!Operator.Value可能是什么以及这将如何影响最后一行,即AND EWAFeeEuro ...? -
完整的最后一行应该是这样的:AND FeeEuro > 200
标签: sql reporting-services parameters aggregate-functions