本文摘要
泛微 EC9 的 CUS_FIELDDATA 表用于跨模块存储自定义字段值,按 scope 区分归属:文档中心对应 DocCustomFieldBySecCategory,以目录 ID 和文档 ID 定位;人力资源对应 HrmCustomFieldByInfoType,以标签页和人员 ID 定位。文章提醒该表数据按需生成,无记录属正常,迁移组织架构和人员信息时必须同步此表,且默认禁止 DELETE,需修改配置文件加入白名单后方可删除。
一、表概述
CUS_FIELDDATA 是泛微 EC9 中跨模块存储自定义字段值的核心表。不同模块通过 scope 字段区分数据归属。
二、知识管理(文档中心)自定义字段
当 scope = 'DocCustomFieldBySecCategory' 时,存储文档自定义属性。
查询文档自定义字段值
SELECT 对应字段名FROM cus_fielddataWHERE scope = 'DocCustomFieldBySecCategory' AND scopeid = 文档目录ID AND id = 文档ID;查不到数据 = 该文档在该目录下未维护过该自定义字段。
三、人力资源模块自定义字段
当 scope = 'HrmCustomFieldByInfoType' 时,存储人员自定义字段。
关联字段说明
| 字段 | 含义 |
|---|---|
scope | 固定 'HrmCustomFieldByInfoType' |
scopeid | 标识人员卡片标签页:-1 → 基本信息1 → 个人信息3 → 工作信息 |
id | 对应 hrmresource 表中的人员ID |
存储特点
按需生成,非默认存在
系统为节省空间,人员默认无记录。只有在前台维护(保存/修改)了自定义字段后,才会生成对应记录。因此直接查询可能返回空。
数据操作
- 更新/插入:需根据
scope、scopeid、id精准定位,若无记录则先INSERT。 - 迁移关键:同步组织架构和人员信息时,必须迁移此表,否则人员信息可能显示异常。
四、DML 操作限制与放行
默认限制
默认情况下,CUS_FIELDDATA 禁止使用 DELETE 操作。
放行配置
编辑 {ecology目录}\WEB-INF\prop\checksqlStandard.properties:
# 是否开启 SQL 校验isOpen=true
# delete 语句白名单(添加 cus_fielddata)delete=formtable_main_261_dt1,cus_fielddata
# update 黑名单(禁止操作的表)update=workflow_requestbase,workflow_requestLog如需删除,请将
cus_fielddata加入白名单后重启服务,谨慎操作。
五、总结速览
文档模块
scope=DocCustomFieldBySecCategoryscopeid= 目录IDid= 文档ID
人力资源
scope=HrmCustomFieldByInfoTypescopeid= 标签页(-1/1/3)id= 人员ID
运维要点
- 迁移必带
- 默认禁止删,需加白名单
- 按需生成,无记录不代表异常