[Home] [Help]
41: alive boolean;
42:
43: begin
44:
45: alive := FND_CONC.process_alive(pid);
46: return alive;
47:
48: end process_alive;
49:
65: if (is_sub_request = 'Y') then
66: -- Lock the parent so that no other process can
67: -- perform the same actions to follow (including CM).
68: -- If parent status is W (Paused), no need to update.
69: if (fnd_conc_request_pkg.lock_parent (parent_request_id)) then
70: -- If request to delete is the last pending child,
71: -- set paused parent request to pending for restart
72: -- Need to maintain the parent-child order of
73: -- request locking, so update parent first before
75: -- Status codes between 'I' and 'T' are pending or
76: -- running. They include 'I' Pending Normal,
77: -- 'Q' Pending Standby, 'R' Running Normal, and
78: -- 'T' Running Terminating.
79: if (fnd_conc_request_pkg.restart_parent (
80: request_id,
81: parent_request_id,
82: fnd_global.user_id)) then
83: fnd_message.set_name (
90: if (has_sub_request = 'Y') then
91: -- Update status of children to terminating,
92: -- terminated or cancelled unless they are already
93: -- complete or terminating.
94: fnd_conc_request_pkg.delete_children (
95: request_id,
96: fnd_global.user_id);
97: end if;
98: end cancel_subrequests;
151: end if;
152:
153: /* Are they incompatible? */
154: select count(*) into c
155: from fnd_concurrent_program_serial
156: where running_application_id = program_appl2
157: and running_concurrent_program_id = program_id2
158: and to_run_application_id = program_appl1
159: and to_run_concurrent_program_id = program_id1;
206: rid in number) is
207:
208: begin
209:
210: fnd_conc_request_pkg.get_phase_status(pcode, scode, hold, enbld,
211: null, stdate, rid,
212: req_phase, req_status);
213:
214: end get_phase_and_status;
400: controlling_manager, parent_request_id
401: into req_phase, req_status,
402: is_sub_req, has_sub_req,
403: mgr_proc, par_req_id
404: from fnd_concurrent_requests
405: where request_id = req_id
406: for update of phase_code nowait;
407: exception
408: when others then
438: who_cancelled := fnd_message.get;
439: end if;
440:
441:
442: update fnd_concurrent_requests
443: set phase_code = decode(new_status, 'T', phase_code, 'C'),
444: status_code = new_status,
445: completion_text = who_cancelled,
446: last_update_date = sysdate,
499:
500: begin
501: select phase_code, hold_flag, request_type
502: into req_phase, req_hold, req_type
503: from fnd_concurrent_requests
504: where request_id = req_id
505: for update of phase_code nowait;
506: exception
507: when others then
529: retval := 3;
530: end if;
531:
532:
533: update fnd_concurrent_requests
534: set hold_flag = new_hold,
535: last_update_date = sysdate,
536: last_updated_by = fnd_global.user_id
537: where request_id = req_id;
580:
581: begin
582: select phase_code
583: into req_phase
584: from fnd_concurrent_requests
585: where request_id = req_id
586: for update of phase_code nowait;
587: exception
588: when others then
598: return 2;
599: end if;
600:
601:
602: update fnd_concurrent_requests
603: set priority = new_priority,
604: last_update_date = sysdate,
605: last_updated_by = fnd_global.user_id
606: where request_id = req_id;