数据库清除列表或报表默认进入过滤方案(以销售订单执行明细表为例)原创
3人赞赏了该文章
140次浏览
编辑于2024年01月26日 16:06:52
使用场景:
有些客户反馈因为错误设置的默认过滤方案(一般是不合理的过滤条件,比如不合理的日期范围,或者性能较差的模糊查询),导致列表或报表无法进入,可参考以下SQL脚本,在数据库中删除特定用户与特定列表或报表的默认的进入方案
使用前提:
1、SQLServer数据库
2、因为需要清除缓存,如果在业务高发期间,不建议执行使用,可在空闲时处理
--1\备份数据
SELECT * INTO T_BAS_USERPARAMETER_SQLBAK_20240124_0915Z FROM T_BAS_USERPARAMETER;
--2\删除默认过滤方案
DELETE T
FROM T_BAS_USERPARAMETER T
WHERE
1=1
AND FUSERID IN(SELECT S.FUSERID FROM T_SEC_USER S WHERE S.FNAME='金蝶用户') --用户名
AND FKEY='NextEntrySchemeId' --默认进入方案参数
AND FPARAMETEROBJID='SAL_DetailReport' --订单执行明细
--3\清除缓存(全选清除),重新打开单据
--4\附注:其他单据或报表对应的FPARAMETEROBJID
--销售出库单:SAL_OUTSTOCK
--销售订单:SAL_SALEORDER
--发货通知单:SAL_DELIVERYNOTICE
--查询语句:前台功能对应的FPARAMETEROBJID
SELECT L.FNAME,A.FID
FROM T_META_OBJECTTYPE A INNER JOIN T_META_OBJECTTYPE_L L ON A.FID=L.FID AND L.FLOCALEID = 2052
WHERE L.FNAME like'销售%' AND A.FSUPPLIERNAME = 'KINGDEE' AND A.FDEVTYPE = 1
社区附件-删除过滤方案-KYLE.zip(0.85KB)