提示:本文档的示例代码仅适用于本文档中的示例报表/场景。若实际报表/场景与示例代码无法完全适配(如使用功能不一致,或多个宏代码冲突等),需根据实际需求开发代码。
示例说明
我们对电子表格报表进行回写时,经常会遇到如下这些需求。多sheet页报表,点击工具栏上“保存”按钮,默认的保存所有sheet页的回写表的,希望可以做到只保存当前sheet页。
版本及客户端说明
1.smartbi版本:V7.0、V8.0
2.客户端:PC
3.浏览器:IE11、谷歌浏览器(Chrome)、火狐浏览器(Firefox)
设置方法
1、首先在电子表格设计器(Microsoft Office Excel)中,创建电子表格报表。
2、分部对各个sheet创建回写规则:
3、在浏览器的资源定制节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面。
4、在报表宏界面新建客户端模块。在弹出的新建模块对话框中,选择对象为spreadSheetReport、事件为onRender、并把下面宏代码复制到代码编辑区域。
宏类型
类型 | 对象 | 事件 |
---|---|---|
ClientSide | spreadsheetReport | onRender |
宏代码
function main(spreadsheetReport) { spreadsheetReport.userOperations = spreadsheetReport.userOperations || {}; spreadsheetReport.userOperations.writeBackSheets = [spreadsheetReport.sheetNames[spreadsheetReport.currentSheetIndex]]; }