版本比较
标识
- 该行被添加。
- 该行被删除。
- 格式已经改变。
示例说明
在电子表格的导出按钮中,提供多个导出选项,如HTML、EXCEL、CVS等。有时候希望只保留某一些选项,可通过宏代码控制实现。
版本及客户端说明
1.smartbi版本:最新版本
2.客户端:PC
3.浏览器:IE11、谷歌浏览器(Chrome)、火狐浏览器(Firefox)
设置方法
1.创建电子表格
首先在电子表格设计器(Microsoft Office Excel)中,创建电子表格报表。
2.进入宏界面
在浏览器的“分析展现”节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面。
3.创建客户端宏
在报表宏界面新建客户端模块。在弹出的新建模块对话框中,选择对象为spreadSheetReport、事件为onRenderReport、并把下面宏代码复制到代码编辑区域。
宏类型
类型 | 对象 | 事件 |
---|---|---|
ClientSide | spreadsheetReport | onRenderReport |
宏代码
代码块 | ||||
---|---|---|---|---|
| ||||
function main(spreadsheetReport) { //旧方法备份 spreadsheetReport._initExportMenu_new = spreadsheetReport.initExportMenu; //重写方法 spreadsheetReport.initExportMenu = function() { spreadsheetReport._initExportMenu_new(); this.exportMenu.removeItem("CSV"); //屏蔽CSV this.exportMenu.removeItem("HTML"); //屏蔽HTML this.exportMenu.removeItem("PNG"); //屏蔽PNG this.exportMenu.removeItem("PDF"); //屏蔽PDF this.exportMenu.removeItem("WORD"); //屏蔽WORD //this.exportMenu.removeItem("EXCEL2007"); //屏蔽EXCEL } } |
2、实现点击导出按钮直接导出excel
重写导出按钮事件,实现点击按钮直接导出excel文件。
代码块 | ||||
---|---|---|---|---|
| ||||
function main(spreadsheetReport) { //旧方法备份 spreadsheetReport._initExportMenu_new = spreadsheetReport.initExportMenu; //重写方法 spreadsheetReport.initExportMenu = function() { spreadsheetReport._initExportMenu_new(); this.exportMenu.removeItem("CSV"); //屏蔽CSV this.exportMenu.removeItem("HTML"); //屏蔽HTML this.exportMenu.removeItem("PNG"); //屏蔽PNG this.exportMenu.removeItem("PDF"); //屏蔽PDF this.exportMenu.removeItem("WORD"); //屏蔽WORD //this.exportMenu.removeItem("EXCEL2007"); //屏蔽EXCEL } spreadsheetReport.old_doExport = spreadsheetReport.doExport; spreadsheetReport.doExport = function() { /*this.old_doExport(); this.exportMenu.panel.style.height = "";*/ //上面是高度自适应,下面是点击直接调用导出excel this.doExportMenuCloseUp("EXCEL2007"); //若是清单报表:this.doExportMenuCloseUp("LIST_EXCEL"); } } |
宏示例资源:电子表格屏蔽导出按钮中的选项.xml
面板 | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|