187: CLOSE c_wf_role_existing;
188: IF (l_tp_role_existing <1) THEN -- Workflow role not exists
189: BEGIN
190: -- create a Ad Hoc Workflow role
191: WF_DIRECTORY.CreateAdHocRole(
192: role_name => l_tp_role_name
193: , role_display_name => l_tp_role_display_name
194: );
195: EXCEPTION
199: END IF;
200:
201: BEGIN
202: -- remove previous WF users from the WF role first
203: WF_DIRECTORY.RemoveUsersFromAdHocRole
204: ( role_name => l_tp_role_name
205: );
206: EXCEPTION
207: WHEN OTHERS THEN
212: FOR tp_names IN c_tp_name(
213: p_resp_key
214: ) LOOP
215: IF (tp_names.name IS NOT NULL) THEN
216: WF_DIRECTORY.AddUsersToAdHocRole(
217: role_name => l_tp_role_name
218: , role_users => tp_names.name
219: );
220: END IF;
449: CLOSE c_wf_role_existing;
450: IF (l_tp_role_existing <1) THEN -- Workflow role not exists
451: BEGIN
452: -- create a Ad Hoc Workflow role
453: WF_DIRECTORY.CreateAdHocRole(
454: role_name => l_tp_role_name
455: , role_display_name => l_tp_role_display_name
456: );
457: EXCEPTION
461: END IF;
462:
463: BEGIN
464: -- remove previous WF users from the WF role first
465: WF_DIRECTORY.RemoveUsersFromAdHocRole
466: ( role_name => l_tp_role_name
467: );
468: EXCEPTION
469: WHEN OTHERS THEN
474: FOR tp_names IN c_tp_name(
475: p_resp_key
476: ) LOOP
477: IF (tp_names.name IS NOT NULL) THEN
478: WF_DIRECTORY.AddUsersToAdHocRole(
479: role_name => l_tp_role_name
480: , role_users => tp_names.name
481: );
482: END IF;