版本比较
比较
标识
- 该行被添加。
- 该行被删除。
- 格式已经改变。
示例效果
导入的Excel数据包含三列:发生日期、借方余额和贷方余额。需要实现规则校验类,判断借方余额和贷方余额是否相等,若不相等,则校验不通过,产生提示信息。
导入数据:
实现步骤
1、参考插件开发指南和 Excel数据导入完整教程 中的演示绑定自定义java类的导入模板,实现该类,并编译生成扩展包。
2、参考扩展包部署,部署该扩展包。
3、新建Excel导入模板,进行基本设置及列设置。
4、切换到“扩展设置”,输入实现的规则校验类名称并保存。
5、打开该Excel导入规则,导入其中借方余额和贷方余额不相等的数据,提示“借贷不相等”。
附录
规则校验类代码:
代码块 | ||
---|---|---|
| ||
package smartbi.ext; import smartbi.daq.excelimport.IRuleValidator; import smartbi.daq.excelimport.ImportFileConfig; import smartbi.daq.excelimport.RowData; import smartbi.daq.excelimport.RuleValidatorResult; import smartbi.net.sf.json.JSONObject; //示例验证类,判断借贷是否相等 public class DemoRuleValidator implements IRuleValidator { @Override public RuleValidatorResult valid(JSONObject ruleConfig, RowData rowData, ImportFileConfig config) throws Exception { if (rowData.getCell(1).equals(rowData.getCell(2))) return new RuleValidatorResult(); else return new RuleValidatorResult(false,"借贷不相等"); } } |
注意 |
---|
以上规则验证会使得系统配置界面的 1、以上规则验证会使得系统配置界面的 校验设置 失效,要想那个生效,请继承smartbi.daq.excelimport.DefaultRuleValidator,并在实现类调用基类方法。 |
面板 | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
扩展包应该设置优先级:depends2、扩展包应该设置优先级:depends="DataImporter" ,否则类找不到。