我正在构建一个需要包含“估计”列的报告,该列基于数据集中不可用的数据。
理想情况下,我希望能够定义一个 Java 接口
public int getEstimate(int foo_id, int bar_id, int quantity);
在哪里foo_id
,bar_id
和quantity
在我想要提供估计值的行中可用。
将有多种策略来产生估计,因此最好使用接口来允许在需要时交换它们。
查看 BIRT 文档,我认为我可能应该使用事件处理程序机制,但这似乎只允许定义一个要使用的类,我想以某种方式注入一个配置的估计器。
一个非混淆示例可能是说我有一个包含 IP 地址列的数据集,并且我希望能够使用一些 GeoIP 服务从 IP 地址解析国家/地区。在那种情况下,我会有一个接口public String getCountryName(String address)
,而实际的实现可能会使用 MaxMind、本地缓存或其他一些系统。
我该怎么做呢?
或者.. 编写一个脚本数据源,在将计算数据交付给 BIRT 之前将其集成,我会不会更好?
或者.. 某种脚本数据源,然后用于创建连接数据集?