问题描述
在用户的PPM模块中,很多PPM的object没有Delegated Owner,而General Info和Team标签依旧显示相应的图标表示存在Delegated Owner。
分析
在一个PPM对象中,当设置了Delegated Owner且对方还没有accept时,General Info的标签页会有一个小黑圆点,且Team标签有一个小红圆点,均指示当前对象存在一个没有接收的Delegated Owner。下图为正确情形。
客户的情况正好相反,没有Delegated Owner,却两个圆点依旧显示。见下面2个图
分析数据库如下:
SQL> select activity_number, delegated_owner, flags from activity where
(delegated_owner<0 or delegated_owner is null)
and length(flags)=32 and substr(flags, 26,1)='1'
Returned:
T03852 -1 00000000000000000000000001001000
PH01065 -1 00000000000000000000000001000010
T03860 -1 00000000000000000000000001000100
...
More
delegated_owner一栏正确的值应为null或者一个大于0的有效整数。flags值的第25位表示有无delegated_owner。在客户的数据中,delegated_owner无效,第25位flag为1。数据错误。
解决方法
通过下面的SQL修正所有有问题的PPM对象,并重启Agile服务。
update activity set delegated_owner=null, flags = substr(flags, 0, 25) || '0' || substr(flags, 27)
where
(delegated_owner<0 or delegated_owner is null) and length(flags)=32 and substr(flags, 26,1)='1';