BBP 集成(可选)

BBP 菜单与 CLZ 接入

适用场景

仅适用于把报表挂到 BBP 门户菜单,或由 BBP CLZ 容器直接加载报表的项目。

前置条件

已完成 BBP 环境准备,并取得菜单配置权限、目标角色和报表标识。用户、租户、角色、部门等参数必须来自当前登录上下文,不得写死真实 ID。

最小可运行配置

参数 示例 必填 说明
url ssdev.beereport.public.beeReportBBPContainer 是 BBP 容器 CLZ
code sales-summary 是 报表标识
version 1.0.0 是 报表版本
mode 1 否 预览模式,按环境验证
headerOptions {"show":true,"print":true} 否 完整字段见 API
printOptions {"viewPdf":false} 否 完整字段见 API

需要注入门户作用域时,从“模板设置”打开“作用域配置”;截图只用于定位入口:

BBP 作用域配置入口

CLZ URL 必须编码参数:

const params = new URLSearchParams({
  clz: "ssdev.beereport.public.beeReportBBPContainer",
  code: "sales-summary",
  version: "1.0.0",
});
const url = `https://your-bbp-host.example.com/?${params.toString()}`;

如需作用域变量,先在设计器注册变量,再由门户登录上下文注入。原文的作用域配置对话框可用于定位入口:

BBP 作用域变量配置对话框

接入步骤

  1. 新建菜单并配置容器 CLZ、sales-summary 和 1.0.0。
  2. 仅添加业务确实需要的 headerOptions、printOptions 和 mode。
  3. 将菜单授权给测试角色。
  4. 需要门户作用域时,使用 YOUR_TENANT_ID、YOUR_USER_ID、YOUR_ROLE_CODE、YOUR_DEPARTMENT_CODE 等运行时值,不写死 ID。
  5. URL 过长时改用 mount 的 iframe 方式传参,避免把复杂 JSON 塞进查询串。

成功验证

测试角色能看到菜单,报表正确显示;切换用户后作用域值随登录上下文变化,URL 和日志不出现真实凭据或固定用户 ID。

常见问题

  • 菜单不可见:检查角色授权,而不是重复创建菜单。
  • 参数解析失败:用 URLSearchParams 或 encodeURIComponent 编码,不手工拼 JSON。
  • 通用页面不要依赖 CLZ;CLZ 是本章 BBP 专用能力。

相关 API

headerOptions 与 reportOptions、iframe 集成。