EBS R12中重新enable失效用户之后,丢失职责

oracle support说这并不是一个bug,是一个问题,呵呵,bug和问题,都是你的错,oracle!

工作中将某个用户失效之后,有可能又需要重新将用户重新启用,在更改了用户的失效时间之后,所有的职责都不见了,琢磨了好一阵子用户相关的表,基本能够确定问题是由于有效截止日期并没有同步导致,但是由于有可能需要手动update标准表,风险相当大,为此提了一个sr,support给我来了个owc,多番操作之后得出解决方法如下:


1. Go into the responsibility: System Administrator.

2. Navigate to Request > Run.

3. Submit request 'Synchronize WF LOCAL tables'

4. Submit request 'Workflow Directory Services User/Role Validation'

5. Check result in table wf_local_user_roles via:

select role_name, effective_end_date from wf_local_user_roles
where user_name='<>';

6. If still find some records haven't been changed to null, perform:
a.) backup the records:
create table wf_local_user_roles_bak as
select * from wf_local_user_roles
where user_name='<>' and effective_end_date <> to_date('<>','RRRR-MM-DD');
b.) update effective_end_date to null
update wf_local_user_roles
set effective_end_date=to_date('9999-01-01','RRRR-MM-DD')
where user_name='<>' and effective_end_date <> to_date('<>','RRRR-MM-DD');

7. Retest the issue.

8. Migrate the solution as appropriate to other environments.

 

他们自己都无法确定请求跑完之后是不是能解决这个问题,呵呵!挺讽刺!

值得注意的一点是,Synchronize WF LOCAL tablese 和Workflow Directory Services User/Role Validation请求是需要在有任何用户变更之后提交的,这是避免问题出现的办法。虽然不喜欢这种方式,但还只能每天定时运行。。。

猜你喜欢

转载自hutianci.iteye.com/blog/1422545