In this blog I am going to share how to run below programs from back end.

1. Run the Sync responsibility role data into the Workflow table concurrent program.
2. Run the Synchronize WF LOCAL tables concurrent program with parameter ALL
3. Run the Workflow Directory Services User/Role Validation concurrent program.

Parameters:

Default Batchsize=NULL
Fixing dangling user/roles = Yes
Add missing user/role assignments = Yes
Update WHO columns = Yes


Steps to perform from Apps user to run same from sqlplus

1. Sync responsibility role data into the Workflow table:

begin
fnd_user_resp_groups_api.sync_roles_all_resp_secgrps(TRUE);
end;


2. Workflow Directory Services User/Role Validation:


exec wf_maintenance.ValidateUserRoles(p_BatchSize => null, p_check_dangling => TRUE, p_check_missing_ura => TRUE, p_UpdateWho => FALSE);



How to run for a specific user:
begin
  fnd_user_resp_groups_api.sync_roles_all_resp_secgrps(TRUE);
  
  wf_local_synch.BulkSynchronization('ALL');
  
  wf_maintenance.ValidateUserRoles(p_BatchSize => null,
                                   p_UserName => 'HIMANSHU.SINGH',
                                   p_check_dangling => TRUE,
                                   p_check_missing_ura => TRUE,
                                   p_UpdateWho => TRUE);
end;
/

Verify effective end date should not be of past date:

select * from  apps.wf_local_user_roles 

where role_end_date is null and expiration_date is null and USER_NAME = 'HIMANSHU.SINGH';


Reference:
How To Run The Workflow Directory Services Concurrent Program From The SQLplus Prompt (Doc ID 1213304.1)