首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将参数传递给Windward报表?

如何将参数传递给Windward报表?
EN

Stack Overflow用户
提问于 2012-08-27 04:56:50
回答 1查看 559关注 0票数 1

在运行报告时,我需要将参数(变量)传递到报告模板中。我该怎么做呢?我使用的是Java版本的Windward。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-27 04:56:50

您可以通过将参数附加到每个数据源来传递参数。您可以为每个数据源设置一组不同的参数和值。

您可以通过创建包含参数的java.util.Map来完成此操作。键是一个带有变量名称的字符串。该值可以是字符串、数字或日期。如果变量将用作select中的参数,则值类型应与数据库列类型匹配。

这些是通过调用DataSourceProvider.setMap()在数据源中设置的。Dom4jDataSource和JdbcDataSource都实现了DataSourceProvider。

代码语言:javascript
复制
DataSourceProvider datasource = new JdbcDataSource("com.microsoft.sqlserver.jdbc.SQLServerDriver", "jdbc:sqlserver://localhost:1433;DatabaseName=Northwind", "username, "password");
Map map = new HashMap();
map.put("now", new Date());
datasource.setMap(map);

请注意,如果将多个数据源应用于一个模板,则变量将跨数据源传递。如果在第一个数据源中设置了变量,但在第二个数据源中未设置,则该变量将保留第一个数据源中的值。如果它是在第二个中设置的,它将覆盖保存的值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12133850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档