1. FS
FineReport.js 中除了包含 FineReport 属性和方法之外,还包含了决策系统相关的属性和方法。
报表中的 Web 事件、控件事件、JavaScript 类型的超级链接、决策报表事件中都可以通过 window.parent.FS 来获得 FS 对象。
1.1 FS.signOut()
该方法可以登出数据决策系统。
1)PC 端登出数据决策系统
模板中添加事件调用该方法,将模板挂载到决策平台目录,预览模板执行该事件,会自动退出登录,返回决策平台登录界面。JavaScript 代码如下:
window.location.href = window.parent.FS.signOut();
注:需要在决策系统中打开该模板,否则会报错。
2)App 端登出数据决策系统
模板中添加事件调用该方法,移动端预览模板执行该事件,会自动退出登录,返回 App 端数据决策系统登录界面,详细介绍参见文档:JS实现登出App ,JavaScript 代码如下:
FR.logoutApp();
1.2 FS.tabPane.closeActiveTab()
该方法可以关闭数据决策的标签页,JavaScript 代码如下:
window.parent.FS.tabPane.closeActiveTab();
注:因为报表在 iframe 里,先获取当前 window.parent 后然后再找到 FS。
1.3 FS.tabPane.addItem
注:不支持添加在对话框报表的超链接中。
该方法可以在数据决策系统中打开新标签页,JavaScript 代码如下:
window.parent.FS.tabPane.addItem({title:"baidu",src:"http://www.baidu.com"})
参数 entry 说明:
参数 | 类型 | 说明 |
---|---|---|
entry | Object | 必填,tab 项对应的 entry 对象 |
entry 以 json 格式提供,属性如下表所示:
属性 | 类型 | 说明 |
---|---|---|
title | String | 标签页的标题 |
src | String | 标签页的内容指向的地址 |
2. 示例
前面两个接口很简单,这里不再举例说明,下面详细介绍一下第三个接口,即在数据决策系统中打开一个新 Tab 页。
数据钻取是使用超级链接实现,打开方式有三种,当前窗口,对话框,新窗口。
前面两种方式很好理解,第三种在新窗口中打开,即在浏览器端打开一个新的 Tab 页面。
如果是在数据决策系统中使用,希望实现在决策系统框架下新增一个 Tab 页签,而不是在浏览器端重新打开一个窗口,这个该怎么实现呢?
实现方法有两种,详细参见文档:平台新标签页打开超链
3. 注意事项
如果将 FineReport 报表工程集成到 FineBI 中使用,登录 FS 需要注册决策平台功能点。
注册 FineReport 功能点的介绍详情参见:本地机器信息认证