专项接入

报表设计器独立接入

适用场景

适用于从业务系统直接打开某一张报表的设计页面,而不是只读预览页面。

前置条件

目标环境已经部署可通过 CLZ 加载 reportWrapper 的宿主页,当前用户具备设计权限。只需由部署管理员确认宿主页地址;reportWrapper.js 是模块标识,不是供浏览器直接打开的页面 URL。

最小可运行示例

const designerUrl = new URL("https://your-designer-host.example.com/");
designerUrl.search = new URLSearchParams({
  clz: "ssdev/beereport/reportWrapper/reportWrapper.js",
  moduleType: "iife",
  reportCode: "sales-summary",
  reportVersion: "1.0.0",
  hideDataset: "0",
}).toString();

宿主页读取 clz 后由模块加载器执行设计器资源。hideDataset 的旧约定为 1 隐藏、0 显示;这些查询参数并非 bee-report 公共 API 的类型定义,接入前须在目标部署验证。

接入步骤

  1. 向部署管理员确认宿主页 URL 和鉴权方式,不要把 reportWrapper.js 资源路径当作页面地址。
  2. 以宿主页 URL 为 base,使用 URLSearchParams 设置 clz、moduleType、报表标识、版本和可选的 hideDataset。
  3. 在有设计权限的测试账号下打开入口。
  4. 保存前确认操作的是测试报表版本。

成功验证

入口加载设计器而非预览器,标题和版本对应 sales-summary / 1.0.0;有权限的用户能保存,无权限用户被明确拒绝。

常见问题

  • 页面没有加载设计器:检查宿主页是否识别 clz,以及模块加载器能否加载 ssdev/beereport/reportWrapper/reportWrapper.js。
  • 版本为空:不要依赖旧文档声称的默认版本,显式传 1.0.0。
  • 数据集面板状态不符:检查 hideDataset,并确认目标部署仍支持该参数。

相关 API

设计器入口不属于公开 ExportApi;运行时预览请改用 mount 与 unmount。