字段授权出现脏数据时,检测及修复方案
【问题描述】
字段授权在系统内出现重复数据,导致打开字段授权页面,第一次勾选“显示全部业务对象”报错,提示“已添加具有相同键的项”,且找不到相关业务对象,如下图所示:
【解决方案】
检查预插表T_SEC_OBJECTTYPEPERMISSION是否存在重复插入的业务对象授权数据,可以通过删除重复数据解决进行处理来解决:
一. 主要步骤
检测脚本,查询异常的业务对象权限数据;
执行修复脚本。
二. 详细操作
1. 手动执行脚本
--检测脚本 查询异常的业务对象权限数据
SELECT T.FOBJECTTYPEID,T_META_OBJECTTYPE_L.FNAME, T.CT
FROM (
SELECT
FOBJECTTYPEID
,COUNT(1) CT
FROM T_SEC_OBJECTTYPEPERMISSION
GROUP BY FOBJECTTYPEID
) T
LEFT JOIN T_META_OBJECTTYPE_L ON T_META_OBJECTTYPE_L.FID= T.FOBJECTTYPEID AND T_META_OBJECTTYPE_L.FLOCALEID = 2052
WHERE T.CT > 1;
--修复脚本
DELETE FROM T_SEC_OBJECTTYPEPERMISSION
WHERE T_SEC_OBJECTTYPEPERMISSION.FID IN(
SELECT MAX(T_SEC_OBJECTTYPEPERMISSION.FID)
FROM (
SELECT
FOBJECTTYPEID
,COUNT(1) CT
FROM T_SEC_OBJECTTYPEPERMISSION
GROUP BY FOBJECTTYPEID
) T
INNER JOIN T_SEC_OBJECTTYPEPERMISSION ON T_SEC_OBJECTTYPEPERMISSION.FOBJECTTYPEID = T.FOBJECTTYPEID
WHERE T.CT > 1
GROUP BY T_SEC_OBJECTTYPEPERMISSION.FOBJECTTYPEID
)
字段授权出现脏数据时,检测及修复方案
本文2024-09-23 03:51:22发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-161537.html