【仅供内部供应商使用,不提供对外解答和培训】
...
Code Block | ||
---|---|---|
| ||
/** |
...
* 比较和Object是否相等 |
...
* @param ob 用 于比较的Object |
...
* @return 一个boolean值 |
...
* 备注:不相等时,触发激活保存按钮 |
...
*/ |
...
public |
...
boolean |
...
equals(Object ob) |
...
{ return ob instanceof Chart && super.equals(ob) |
...
&& ComparatorUtils.equals(((PieChart) ob).getChartTitle(), chartTitle) |
...
&& ComparatorUtils.equals(((PieChart) ob).getChartDescribe(), chartDescribe) |
...
&& ComparatorUtils.equals(((PieChart) ob).getChartDescribe(), roma); |
...
} |
...
...
9.0插件引擎定义了主包的概念,指的是插件主要类(比如xml中描述的接入点)所在的包。所有9.0插件默认的主包为com.fr.plugin。考虑到兼容问题,8.0插件的主包默认为com.fr,但这也并不能囊括所有的老插件,所以 允许在plugin.xml中添加<main-package>标签来自定义主包:
自定义主包
<main- package >com.personal.main</main- package > |
解决方法:
http://dev.fanruan.com:8090/pages/viewpage.action?pageId=327732
先确认是否严格按照http://dev.fanruan.com:8090/pages/viewpage.action?pageId=5373985,如果确认再看下面
解决方案:
moudle的class-output path 中的env/home 要与工作目录保持一致,不然会加载不到编译后的class文件
例如:
我的fr9.0的安装目录为/Applications/FineReport9.0;设计器设置的工作目录也是/Applications/FineReport9.0/WebReport/WEB-INF
那边这里的插件编译output 那边这里的插件编译output path 就要设为/Applications/FineReport9.0/WebReport/WEB-INF/plugins/plugin-com.fr.plugin.XXX-1.0.0/classes
很多开发者的插件在决策报表展现的是这样,这样不合理,需要修改
解决方案:
继承AbstractIndependentChartsUI,重写getIconPath方法即可
有开发者用了9.0中的BaseFormula,但是8.0中没有这个类,我们又想让公式计算出结果...so
解决方案:
Object object = "=now()" ; CalculatorProvider calculator = CalculatorProviderContext.getCalculatorProvider(); FormulaProvider formula = StableUtils.dealFormulaValue(formula, calculator); object = formula.getResult(); |
1)写一个DemoReportDataContentPane 继承 AbstractReportDataContentPane,在构造器中自定义面板
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
public class DemoReportDataContentPane extends AbstractReportDataContentPane {
public DemoReportDataContentPane(ChartDataPane parent) {
this.setLayout(new BorderLayout());
this.add(new UILabel("暂不支持单元格数据!", UILabel.CENTER), BorderLayout.CENTER);
}
@Override
protected String[] columnNames() {
return new String[0];
}
@Override
public void populateBean(ChartCollection ob) {
}
} |
2)在继承AbstractIndependentChartsUI 的 类中增加getReportDataSourcePane重写
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
/**
* @param plot
* @param parent
* @return 单元格数据配置面板,自定义单元格数据配置面板需要重写
*/
@Override
public AbstractReportDataContentPane getReportDataSourcePane(Plot plot, ChartDataPane parent) {
return new DemoReportDataContentPane(parent);
} |