context
获取自定义函数所绑定对象的数据信息
context 已支持数据:
| 分类 | 变量名 | 数据 | 备注 |
|---|---|---|---|
| 通用 | |||
| context.tenantId | 字符串,当前租户id | 所有函数都有该数据 | |
| context.userId | 字符串,当前用户id | 所有函数都有该数据,-10000 标识以系统身份执行。分为两种情况:
|
|
| context.data | Map,当前操作的主对象数据 | 按钮、流程触发的函数均有该数据 | |
| context.details | Map,当前操作的从对象数据
|
||
| context.dataList | List,当前操作的批量数据 | 批量UI按钮触发的函数会将批量选中数据 | |
| context.objectIds | List,当前操作的对象数据的 id 列表 | 计划任务绑定对象的函数会有该数据 | |
| context.arg | Map,业务侧的传递参数 | 部分业务场景下将业务参数通过该属性透传给函数,包括:
|
|
| 互联 | |||
| context.outTenantId | 字符串,当前互联外部租户 id | 大于 10,000,000 的数字,仅按钮 EM6 互联请求会有该数据 | |
| context.outUserId | 字符串,当前互联外部用户 id | 大于 10,000,000 的数字,仅按钮 EM6 互联请求会有该数据 | |
| context.appId | 字符串,当前互联应用 AppId | 仅按钮 EM6 互联请求会有该数据 | |
| context.upstreamOwnerId | 字符串,当前下游对应上游企业对接人 | ||
| context.thirdType | 字符串,下游登录方式 | 2:纷享 4:微信服务号 5:小程序 6:微信扫码登录 7:第三方登录 8:微信统一登录 |
|
| context.thirdAppId | 第三方登录方式对应的应用id | 例如微信服务号appid | |
| context.thirdUserId | 第三方登录方式对应的用户id | 例如微信服务号的open_id |
各个场景 context 开放情况:
| 命名空间 | 业务类型 | 使用场景 | 正常运行 context | debug context | 备注 |
|---|---|---|---|---|---|
| 按钮/操作 | |||||
| 自定义业务按钮 | 不支持 details | ||||
| 自定义UI按钮(批量) | 这里是对象数据的 list | ||||
| 不支持 details | |||||
| 更换负责人 | |||||
| 不支持 details | |||||
| 复制 | 不支持 details | ||||
| 锁定 | 不支持 details | ||||
| 解锁 | 不支持 details | ||||
| 作废 | |||||
| 不支持 details | |||||
| 打印 | 不支持 details | ||||
| 添加相关团队成员 | context.arg 传入的是添加提交的相关团队成员数据 | ||||
| 编辑相关团队成员 | context.arg 传入的是编辑提交的相关团队成员数据 | ||||
| 移除相关团队成员 | context.arg 传入的是移除提交的相关团队成员数据 | ||||
| 流程 | - | - | |||
| 查找关联数据范围 | |||||
| 主对象-查找关联字段 | - | ||||
| 从对象-查找关联字段 | |||||
| 主从一起新建 | 此处 debug 与正常运行行为有差别!! | ||||
| 从单独新建 | 与主单独新建行为一致 | ||||
| 自增编号 | |||||
| 主对象-自增编号字段 | - | 不支持 details | |||
| 从对象-自增编号字段 | - | ||||
| 计划任务 | |||||
| 绑定对象 | - | ||||
| 不绑定对象 | - | - | - |
前验证/UI事件中字段为空的差异
- web端,字段为空是空串 ''
- 移动端/server端,字段为空是 null
带来的影响,在前验证/UI事件中获取字段 value,使用前除了判定 value != null 以外,还需判定 value != '',否则可能会拿到 '' 导致后续逻辑错误。