ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
说明: * quickBi仪表板嵌入至BS系统的流程及配置事项,可以嵌入到三种地方 1. 嵌入到BS的首页当中 2. 嵌入到流程图界面当中 3. 嵌入到业务当中 注意事项】 APP表单的 固定id 只能是 chart 开头的,chart1、chart2 ...,不然会导致嵌入失败 【详细配置】 首先准备好要嵌入的APP界面。新建APP项目(如果有现成的就不用新建),并且随便建立一个“本地变量” ![](https://img.kancloud.cn/9c/2a/9c2acbec669ff9afb29b9ebfaf544bb6_1872x965.png) 建立APP表单,并且生成一个服务,指定APP表单的固定 id,**注意:id只能是以chart开头的** ![](https://img.kancloud.cn/e3/e8/e3e8bb1ee3c98de00aa6f211d50925bf_1865x971.png) # 注意 ![](https://img.kancloud.cn/02/b0/02b09e8bd44bc5832486f161b06728c9_670x269.png) 这里的表单样式代码块某些参数需要自定义 代码块如下,可复制至编辑器自定义修改需要修改的参数配置 ``` <iframeid\="tag"class\="quickbi-iframe-demo"scrolling\="no"frameborder\="0"style\="width:100 %;height:780px"\> // Quick BI地址,如使用其他地址可自行补充 constquickBIURL = \['https://das.base.shuju.aliyun.com', 'https://bi.aliyun.com'\]; functionmessageListener(event) { if (quickBIURL.includes(event.origin)) { // 使用postMessage传出的高度 console.log('Quick BI Dashboard Height:', event.data.height); // 使用postMessage传出的仪表板页面ID console.log('Quick BI Dashboard Id:', event.data.pageId);         }     } //通过ajax请求获取token window.onload = function () { $.ajax({ type:"GET", url:"/MySelfPage/getQuickBiToken", data: { accessId:'83ccbfcd-0a31-4efb-bc32-1ce5ef3ec02d', accessKey:'d5dd2339-2cb4-487f-8f9b-e11e721655f7', aliyunId:'feixun\_1108', validityTime:60             }, success:function (data) { data = JSON.parse(data); if (data.success) { document.getElementById('tag'); tag.setAttribute('src', 'https://das.base.shuju.aliyun.com/dashboard/view/pc.htm?spm=a2c10.workspacedashboard.0.0.76e54666tRnLtF&pageId=c07859f0-c299-416f-b802-213998241481' + '&accessToken=' + data.data.accessToken.accessToken);                 } else { alert('请求错误!');                 }             }, error:function (jqXHR) { alert("发生错误:" + jqXHR); console.log(jqXHR);             }         });     } // 在仪表板加载之前进行监听 window.addEventListener('message', messageListener); // 嵌入Quick BI仪表板的Iframe constiframe = document.querySelector('iframe'); // 主动请求Quick BI仪表板高度 // message传入的data中必须包含{ getDashboardHeight: true } iframe.contentWindow.postMessage({ getDashboardHeight:true }, '\*'); ``` 需要修改代码块的第33/34/35/36/42行,修改后粘贴至"表单样式" ![](https://img.kancloud.cn/42/c6/42c6589b99467ec32f347f4b8a302eff_1791x654.png) ## 需要修改的参数的获取方式 一. 获取accessId 和 accessKey 1.登录[Quick BI控制台](https://das.base.shuju.aliyun.com/?spm=a2c4g.11186623.2.10.2f122c46LeUdS0)。 2. 在顶部菜单栏单击[![配置面板](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/8059459951/p94740.png)](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/8059459951/p94740.png)图标。 3. 在组织管理页面,单击识别码页签。 4. 依次单击Quick BI AccessKey ID和Quick BI AccessKey Secret后的复制,获取accessId 和accessKey。 5. **将这两个参数对应替换到代码块的accessId和accessKey** ![](https://img.kancloud.cn/13/a6/13a64bb03a0828186915b11014e9fe6b_1112x362.png) 二. 获取aliyunId 如果您使用的是主账号,则登录账号为Aliyun ID。获取方法请参见[获取阿里云账号](https://help.aliyun.com/document_detail/134285.html?spm=a2c4g.11186623.2.15.485933ec7BvyRd)。 在安全设置页面,查看到的登录账号,即为此处的参数Aliyun ID对应的值。 ![](https://img.kancloud.cn/2b/c7/2bc762fbd113d65688aed5c93a666723_513x177.png) 如果您使用的是子账号,则Aliyun ID为主账号的账号名:子账号。 假设主账号的账号名为test,子账号为zhangsan@sdf123.onaliyun.com,则Aliyun ID为test:zhangsan。 您可以联系主账号管理员获取该子账号对应的主账号。 **将账号替换至代码块的“aliyunId** 三. 添加需要嵌入的仪表板 仅当仪表板是发布状态时,才支持设置报表嵌入功能。 1. 在Quick BI产品首页选择开放服务。 2. 在分享中心选择报表嵌入,如下图所示。 [![66](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/2658216061/p176802.png)](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/2658216061/p176802.png) 3. 单击\+ 新增嵌入报表。 4. 在新增嵌入报表页面,选中允许嵌入第三方的报表,单击确定。 此时您可以在报表嵌入页面的列表中,看到新嵌入的报表。 [![1](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/2658216061/p176807.png)](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/2658216061/p176807.png) 四.获取免登URL 1. 在Quick BI首页,单击工作空间\>仪表板。 2. 在仪表板管理页面,选择“三”中待嵌入的第三方报表。 ![](https://img.kancloud.cn/05/9a/059ae79040e3293ef1082b335fe1fc0c_1217x375.png) 单击[![1](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/3109845951/p133506.png)](https://static-aliyun-doc.oss-accelerate.aliyuncs.com/assets/img/zh-CN/3109845951/p133506.png)图标。 您在仪表板预览页面的地址栏中看到的地址即为访问报表的地址。 ![](https://img.kancloud.cn/16/d8/16d848c9b7d1b5cbf87dccbc726e92d6_1883x934.png) **复制该地址替换至代码块的“免登URL”。** <br/> # 嵌入至BS系统 建立一个BS的空表单当做容器,里面可以什么都不用填写 ![](https://img.kancloud.cn/82/35/82357f3d9a3207de265736d256f47fa6_1886x961.png) 准备工作做完后,现在演示三种情况的嵌入 1、嵌入到首页当中:修改下载的程序包中包含的 .bat 脚本文件,将配置对应上面建立的APP项目和表单 ![](https://img.kancloud.cn/30/2f/302f0616f8011e305c5314cccf8e9b42_1511x574.png) 界面效果: ![](https://img.kancloud.cn/9d/da/9dda1d874cfb0a879eedec224d31a5e2_1462x969.png) 2、嵌入到流程图当中:修改OA模块设计器中**菜单**的“**窗体名称**”字段,修改参数对应上面建立的APP表单、项目。完成后点击更新按钮! ~~~ ../myselfpage/mydesk?stype=0&opeid=790001&id=chart5&appno=oa ~~~ ![](https://img.kancloud.cn/81/3c/813cc93b571954ed91b104bd8359d266_1914x984.png) 3、嵌入到业务当中:修改OA模块设计器**业务**的“**窗体名称字段**”,修改参数对应上面建立的APP表单、项目。完成后点击更新按钮 ~~~ ../myselfpage/mydesk?stype=0&opeid=790001&id=chart5&appno=oa ~~~ ![](https://img.kancloud.cn/6f/c2/6fc2482c21ef87ff5d3edde390a3f193_1896x959.png)