【发布时间】:2013-09-30 15:28:53
【问题描述】:
我一直在广泛寻找答案,我相信答案很简单。
我想使用连接/数据源名称作为针对多个数据库运行的图表的标题。
例如,我有一个模板并针对包含相同架构的不同数据库运行它。每次我认为可以很容易地从数据源/连接中获取图表的标题时,无需手动更新模板,因为这是独一无二的。
我正在专门寻找字段表达式来获取此信息。
谢谢!
【问题讨论】:
我一直在广泛寻找答案,我相信答案很简单。
我想使用连接/数据源名称作为针对多个数据库运行的图表的标题。
例如,我有一个模板并针对包含相同架构的不同数据库运行它。每次我认为可以很容易地从数据源/连接中获取图表的标题时,无需手动更新模板,因为这是独一无二的。
我正在专门寻找字段表达式来获取此信息。
谢谢!
【问题讨论】:
$P{REPORT_CONNECTION}.getCatalog()
【讨论】:
$P{REPORT_CONNECTION}.getCatalog() 是一个很好的答案。
请记住,如果这不是您真正想要的,您将拥有更大的灵活性。例如,您也可以在图表标题中添加如下内容:
$P{REPORT_CONNECTION}.getMetaData().getDatabaseProductName()
$P{REPORT_CONNECTION}.getMetaData().getUrl()
etc.
编辑:参数 $P{REPORT_CONNECTION} 在某种意义上是一个 JasperReports/iReport 创建...但实际上它只是一个 java.sql.Connection。所以你可以看到JDBC reference documents中的方法。
【讨论】:
$P{REPORT_CONNECTION}.getMetaData().getDatabaseProductName()
【讨论】: