皕杰报表web端展示的时候,表下方工具条里有翻页按钮。如果报表只有一页,想让工具条上的翻页按钮不显示,该如何实现呢?
这个需求可以根据皕杰报表提供的api写自定义工具条按钮来实现。
[if !supportLists]① [endif]参考帮助文档-开发指南-javadoc-bios.report.api.factory-ToolbarButtonFactory这个类重写replacePaginateArea这个方法。
[if !supportLists]② [endif]将这个自定义工具条按钮类打成jar包放到皕杰报表环境web应用下/WEB-INF/lib文件夹下(或者如果是class文件放到web应用下/WEB-INF/classes)。
[if !supportLists]③ [endif]然后修改皕杰报表环境web应用下WEB-INF\resources\report-config.xml里的〈toolbarButtonFactory〉〈/toolbarButtonFactory〉节点值,节点值是包名.类名(package.class,demo.factory.MyToolbarBtnFactory )
〈!-- 用户自定义接口配置,包括工厂、事件等 --〉
〈userDef〉
〈!-- 〈reportFactory〉〈/reportFactory〉 --〉 〈!-- 报表工厂,用于自定义报表加载和计算等 --〉
〈!-- 〈dataSourceFactory〉〈/dataSourceFactory〉--〉 〈!-- 自定义数据源工厂,用于通过自定义的方式获取报表数据源 --〉
〈!-- 〈toolbarFactory〉〈/toolbarFactory〉 --〉 〈!-- 工具条工厂,用于自定义html工具条 --〉
〈toolbarButtonFactory〉demo.factory.MyToolbarBtnFactory〈/toolbarButtonFactory〉 〈!-- 工具条按钮工厂,用于替换html工具条上的一些按钮 --〉
〈!-- 〈printEventListener〉〈/printEventListener〉 --〉 〈!-- 打印事件监听器 --〉
〈!-- 〈fillinEventListener〉〈/fillinEventListener〉 --〉 〈!-- 填报事件监听器 --〉
〈!-- 〈exportEventListener〉〈/exportEventListener〉 --〉 〈!-- 报表导出事件监听器 --〉
〈!-- 〈reportLogHandler〉〈/reportLogHandler〉 --〉 〈!-- 自定义报表日志输出处理器,在报表系统日志的基础上,增加其他日志记录方式 --〉
〈/userDef〉
1、代码示例
2、示例效果