动态 SQL 查询作为参数

马斯库

我需要一个报告,用户必须在其中选择 2 个参数。第一个参数包含年份 (2017, 2016...),第二个包含 ID 进程。根据用户选择的进程,SQL 语句将是一个或另一个。参数year是第二个参数中包含的SQL的WHERE子句的一部分。

所以我有这个带有 2 个参数 ( param_year, Indicador) 的报告查询参数使用表数据源完成,其中 ID 列包含 SQL 语句,值列包含用户必须选择的文本。

设置参数

所以我接下来要做的是set ${Indicador}作为我对数据库所做的 JDBC 连接中的 SQL 语句。这是向我报告 SQL 错误

“查询失败:${Indicador}。

将参数设置为 SQL 语句

任何建议将不胜感激。提前致谢。

用户名

另一种选择是在主/子报告中创建多个数据源,然后使用Master/sub Report -> Attributes -> query -> name属性上的PRD 表达式选择适当的数据源

更详细的解释:

  1. 为您需要的每个 SQL 字符串创建一个查询(我的意思是作为 PRD 对象的查询,它使用 PRD 数据源)并将 SQL 字符串从参数表移动到报表设计器查询定义中。
  2. 用相应查询的名称替换参数表中的 SQL 字符串,例如: 参数表
  3. 使用参数的值(应该等于 PRD 查询名称)作为Master/sub Report -> Attributes -> query -> name属性的查询名称表达式

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章