我如何列出 Jaspersoft 中域中使用的所有域和数据源。
我的意思是我有不同的域,如审计域、客户域等有没有办法让所有域与表(数据源)在 jaspersoft 的这些域中使用?
我有大约 20 个域,手动访问每个域并列出表格非常麻烦,所以我需要一些帮助!
我如何列出 Jaspersoft 中域中使用的所有域和数据源。
我的意思是我有不同的域,如审计域、客户域等有没有办法让所有域与表(数据源)在 jaspersoft 的这些域中使用?
我有大约 20 个域,手动访问每个域并列出表格非常麻烦,所以我需要一些帮助!
我没有找到一个好的方法(我相信你可以深入研究数据库),一种方法是导出域并将其导出到一个漂亮的整洁 XML 文件。由于我们只使用 JDBC 源,我们只需要查找“jdbcTable”和“jdbcQuery”标签来查看域正在使用什么,这一切都在 xml 的第二个 1/2 中。如果您使用其他数据源,您可能需要查看 xml 以了解 Jasper 如何在 XML 中引用它们。
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.jaspersoft.com/2007/SL/XMLSchema" version="1.0">
<resources>
<jdbcTable id="" datasourceId="" tableName="">
<jdbcQuery id="" datasourceId="">
<query> select * from table <\query>
以下解决方案用于识别依赖于域的临时视图,但我相信您可以使用依赖于数据源的域实现类似的解决方案。
在域中,我创建了一个派生表 [AdhocViewName]。该域的查询是:
SELECT a.id as AdhocID,
r.label as AdhocLabel,
a.reportDataSource as AdhocDataSourceID,
t.AdhocDataSourceLabel
FROM (SELECT id as AdhocDataSourceID,
label as AdhocDataSourceLabel
FROM public.jiresource
) as t
INNER JOIN public.jiadhocdataview a ON a.reportDataSource = t.AdhocDataSourceID
INNER JOIN public.jiresource r ON a.id = r.id
笔记:
当您将派生表拉入 Adhoc 视图时,