皕杰技术社区

 找回密码
 立即加入

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1680|回复: 7

皕杰报表工具条上添加按钮

[复制链接]
发表于 2018-9-28 13:54:46 | 显示全部楼层 |阅读模式
我想在皕杰报表web访问报表的时候,工具条上再加个按钮,怎么设计?
发表于 2018-9-28 16:27:07 | 显示全部楼层
这个可以用自定义工具条按钮来实现。
在我们帮助文档-开发指南-javadoc-bios.report.api.factory-ToolbarButtonFactory中提供api接口。
你可以自定义代码继承bios.report.api.factory.ToolbarButtonFactory类,
在appendButton方法中写自定义工具条按钮的html代码。
然后报表web应用/web-inf/resources/config.xml中
  1. <toolbarButtonFactory></toolbarButtonFactory> <!-- 工具条按钮工厂,用于替换html工具条上的一些按钮  -->
复制代码
这个节点里添加节点值:这个自定义类的路径(包名.类名)
然后重启web应用就可以了。
回复 支持 1 反对 0

使用道具 举报

发表于 2018-9-28 16:36:48 | 显示全部楼层
本帖最后由 bijetsupport02 于 2018-9-28 16:38 编辑

示例代码:
  1. package bios.report.dev.examples.factory;
  2. import bios.report.api.factory.ToolbarButtonFactory;
  3. public class ToolbarBtnFactory extends ToolbarButtonFactory {       
  4.         public String appendButton(String position) {
  5.                 String rpt=reportMark.getRpt();//获取报表名称
  6.                 String params=reportMark.getParams();//获取报表参数
  7.                 String vars=reportMark.getVars();//获取报表变量
  8.                 StringBuffer toolbarBuf=new StringBuffer();
  9.                 toolbarBuf.append("<td><span class='btn-sep'/></td>");
  10.                 toolbarBuf.append("<td>");       
  11.                 toolbarBuf.append("<table cellspacing='0' cellpadding='0' title='txt导出' onclick=");
  12.                 toolbarBuf.append("openEmitter("").append(request.getContextPath()).append("/ReportEmitter?rpt=").append(rpt).append("&emitter=totxt¶ms=").append(params).append("&vars=").append(vars).append("")");
  13.                 toolbarBuf.append("><tr>");
复制代码
回复 支持 反对

使用道具 举报

发表于 2018-9-28 16:38:26 | 显示全部楼层
  1. //toolbarBuf.append("<td class='button-img btn-excel'></td>"); //按钮图片
  2. toolbarBuf.append("<td class='button-text' id='be_0'>txt</td>"); //按钮文字,id设置为be_n,可支持工具条长度不足时,自动隐藏文字
  3. toolbarBuf.append("</tr></table>");
  4. toolbarBuf.append("</td>");       
  5. int num=reportMark.getReportType();
  6. if(num==1 || num==0){
  7. if("save".equals(position) || "print".equals(position)){
  8. return toolbarBuf.toString();
  9. //return "...."; //在填报保存按钮后增加自定义按钮
  10. }
  11. }       
  12. return null;
  13. }
  14. }
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-28 16:48:13 | 显示全部楼层
谢谢 我试试
回复 支持 反对

使用道具 举报

发表于 2020-2-21 16:03:24 | 显示全部楼层
学到了,先收藏,后续用
回复 支持 反对

使用道具 举报

发表于 2020-4-21 14:43:56 | 显示全部楼层
这个可以用自定义工具条按钮来实现。
在我们帮助文档-开发指南-javadoc-bios.report.api.factory-ToolbarButtonFactory中提供api接口。
你可以自定义代码继承bios.report.api.factory.ToolbarButtonFactory类,
在appendButton方法中写自定义工具条按钮的html代码。
然后报表web应用/web-inf/resources/config.xml中
回复 支持 反对

使用道具 举报

发表于 2020-4-21 16:00:06 | 显示全部楼层
bijetsupport02 发表于 2018-9-28 16:27
这个可以用自定义工具条按钮来实现。
在我们帮助文档-开发指南-javadoc-bios.report.api.factory-ToolbarBu ...

我觉得你说的很对
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

QQ|小黑屋|手机版|皕杰软件 ( 京ICP备14050931号 )

GMT+8, 2024-4-20 10:11 , Processed in 1.129766 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表