我正在尝试根据以下(简化的)SQL表生成BIRT报告:
Product (ProductCode, ProductDescription, RRP)
- 此表包含已售出的产品和产品的属性。StockOnHand (ProductCode, WarehouseName, QtyOnHand)
- 此表显示每个仓库中每件产品的数量。现在我想生成一个报告,其中每一行显示每个产品及其属性,以及各种仓库中的库存。但我不知道哪个仓库可以显示现有库存,因为这将作为报告参数传递。
因此报告的列类似于以下内容:
ProductCode,ProductDescription,RRP,Warehouse1StockOnHand,Warehouse2StockOnHand,...,WarehouseNStockOnHand
我不清楚生成动态列集的最佳方法。我遇到了一个基于building the report in Java code的解决方案。
我想知道是否有一个更简单的解决方案,不涉及编写自定义Java代码?
答案 0 :(得分:1)
我认为您需要的是BIRT交叉表报告。 或者 - 如果你不喜欢BIRT交叉标签 - 你可以创建你的交叉标签"使用SQL pivot或SQL分析函数,然后在BIRT中使用一个简单的表项: