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 (
84: 'FND',
85: 'CONC-Restart parent request');
86: end if;
87: end if;
137: begin
138:
139: /* Is request 2 a run alone program? */
140: if (run_alone_flag2 = 'Y') then
141: fnd_message.set_name('FND', 'CONC-RUN ALONE AHEAD');
142: return fnd_message.get;
143: end if;
144:
145: /* Are they single threaded? */
138:
139: /* Is request 2 a run alone program? */
140: if (run_alone_flag2 = 'Y') then
141: fnd_message.set_name('FND', 'CONC-RUN ALONE AHEAD');
142: return fnd_message.get;
143: end if;
144:
145: /* Are they single threaded? */
146: if (single_thread_flag1 = 'Y' and single_thread_flag2 = 'Y' and
144:
145: /* Are they single threaded? */
146: if (single_thread_flag1 = 'Y' and single_thread_flag2 = 'Y' and
147: requested_by1 = requested_by2) then
148: fnd_message.set_name('FND', 'CONC-SINGLE THREAD AHEAD');
149: fnd_message.set_token('REQUEST_ID', request_id1);
150: return fnd_message.get;
151: end if;
152:
145: /* Are they single threaded? */
146: if (single_thread_flag1 = 'Y' and single_thread_flag2 = 'Y' and
147: requested_by1 = requested_by2) then
148: fnd_message.set_name('FND', 'CONC-SINGLE THREAD AHEAD');
149: fnd_message.set_token('REQUEST_ID', request_id1);
150: return fnd_message.get;
151: end if;
152:
153: /* Are they incompatible? */
146: if (single_thread_flag1 = 'Y' and single_thread_flag2 = 'Y' and
147: requested_by1 = requested_by2) then
148: fnd_message.set_name('FND', 'CONC-SINGLE THREAD AHEAD');
149: fnd_message.set_token('REQUEST_ID', request_id1);
150: return fnd_message.get;
151: end if;
152:
153: /* Are they incompatible? */
154: select count(*) into c
158: and to_run_application_id = program_appl1
159: and to_run_concurrent_program_id = program_id1;
160:
161: if (c > 0) then
162: fnd_message.set_name('FND', 'CONC-INCOMPATIBLE AHEAD');
163: fnd_message.set_token('REQUEST_ID', request_id1);
164: return fnd_message.get;
165: end if;
166:
159: and to_run_concurrent_program_id = program_id1;
160:
161: if (c > 0) then
162: fnd_message.set_name('FND', 'CONC-INCOMPATIBLE AHEAD');
163: fnd_message.set_token('REQUEST_ID', request_id1);
164: return fnd_message.get;
165: end if;
166:
167: /* Is this the wating request1 the parent of request2? */
160:
161: if (c > 0) then
162: fnd_message.set_name('FND', 'CONC-INCOMPATIBLE AHEAD');
163: fnd_message.set_token('REQUEST_ID', request_id1);
164: return fnd_message.get;
165: end if;
166:
167: /* Is this the wating request1 the parent of request2? */
168: if (status_code1 = 'W' and is_sub_request2 = 'Y'
166:
167: /* Is this the wating request1 the parent of request2? */
168: if (status_code1 = 'W' and is_sub_request2 = 'Y'
169: and parent_request2 = request_id1) then
170: fnd_message.set_name('FND', 'CONC-SUB-REQUEST');
171: fnd_message.set_token('REQUEST_ID', request_id1);
172: return fnd_message.get;
173: end if;
174:
167: /* Is this the wating request1 the parent of request2? */
168: if (status_code1 = 'W' and is_sub_request2 = 'Y'
169: and parent_request2 = request_id1) then
170: fnd_message.set_name('FND', 'CONC-SUB-REQUEST');
171: fnd_message.set_token('REQUEST_ID', request_id1);
172: return fnd_message.get;
173: end if;
174:
175:
168: if (status_code1 = 'W' and is_sub_request2 = 'Y'
169: and parent_request2 = request_id1) then
170: fnd_message.set_name('FND', 'CONC-SUB-REQUEST');
171: fnd_message.set_token('REQUEST_ID', request_id1);
172: return fnd_message.get;
173: end if;
174:
175:
176: /* Finally check user limit */
175:
176: /* Finally check user limit */
177: if (request_limit1 = 'Y' and request_limit2 = 'Y' and
178: requested_by1 = requested_by2) then
179: fnd_message.set_name('FND', 'CONC-LIMITED REQUESTS');
180: return fnd_message.get;
181: end if;
182:
183: return NULL;
176: /* Finally check user limit */
177: if (request_limit1 = 'Y' and request_limit2 = 'Y' and
178: requested_by1 = requested_by2) then
179: fnd_message.set_name('FND', 'CONC-LIMITED REQUESTS');
180: return fnd_message.get;
181: end if;
182:
183: return NULL;
184: exception
182:
183: return NULL;
184: exception
185: when others then
186: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
187: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.WHY_WAIT');
188: fnd_message.set_token('ERRNO', SQLCODE);
189: fnd_message.set_token('REASON', SQLERRM);
190: return fnd_message.get;
183: return NULL;
184: exception
185: when others then
186: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
187: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.WHY_WAIT');
188: fnd_message.set_token('ERRNO', SQLCODE);
189: fnd_message.set_token('REASON', SQLERRM);
190: return fnd_message.get;
191: end why_wait;
184: exception
185: when others then
186: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
187: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.WHY_WAIT');
188: fnd_message.set_token('ERRNO', SQLCODE);
189: fnd_message.set_token('REASON', SQLERRM);
190: return fnd_message.get;
191: end why_wait;
192:
185: when others then
186: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
187: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.WHY_WAIT');
188: fnd_message.set_token('ERRNO', SQLCODE);
189: fnd_message.set_token('REASON', SQLERRM);
190: return fnd_message.get;
191: end why_wait;
192:
193:
186: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
187: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.WHY_WAIT');
188: fnd_message.set_token('ERRNO', SQLCODE);
189: fnd_message.set_token('REASON', SQLERRM);
190: return fnd_message.get;
191: end why_wait;
192:
193:
194: --
397: return 2;
398:
399: exception
400: when others then
401: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
402: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.KILL_SESSION');
403: fnd_message.set_token('ERRNO', SQLCODE);
404: fnd_message.set_token('REASON', SQLERRM);
405: message := fnd_message.get;
398:
399: exception
400: when others then
401: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
402: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.KILL_SESSION');
403: fnd_message.set_token('ERRNO', SQLCODE);
404: fnd_message.set_token('REASON', SQLERRM);
405: message := fnd_message.get;
406: return 0;
399: exception
400: when others then
401: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
402: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.KILL_SESSION');
403: fnd_message.set_token('ERRNO', SQLCODE);
404: fnd_message.set_token('REASON', SQLERRM);
405: message := fnd_message.get;
406: return 0;
407: end;
400: when others then
401: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
402: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.KILL_SESSION');
403: fnd_message.set_token('ERRNO', SQLCODE);
404: fnd_message.set_token('REASON', SQLERRM);
405: message := fnd_message.get;
406: return 0;
407: end;
408:
401: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
402: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.KILL_SESSION');
403: fnd_message.set_token('ERRNO', SQLCODE);
404: fnd_message.set_token('REASON', SQLERRM);
405: message := fnd_message.get;
406: return 0;
407: end;
408:
409:
479: new_status := 'D';
480:
481: -- Who cancelled the request
482: current_user := FND_PROFILE.VALUE('USERNAME');
483: fnd_message.set_name ('FND', 'CONC-Cancelled by');
484: fnd_message.set_token ('USER', current_user);
485: who_cancelled := fnd_message.get;
486: end if;
487:
480:
481: -- Who cancelled the request
482: current_user := FND_PROFILE.VALUE('USERNAME');
483: fnd_message.set_name ('FND', 'CONC-Cancelled by');
484: fnd_message.set_token ('USER', current_user);
485: who_cancelled := fnd_message.get;
486: end if;
487:
488:
481: -- Who cancelled the request
482: current_user := FND_PROFILE.VALUE('USERNAME');
483: fnd_message.set_name ('FND', 'CONC-Cancelled by');
484: fnd_message.set_token ('USER', current_user);
485: who_cancelled := fnd_message.get;
486: end if;
487:
488:
489: update fnd_concurrent_requests
505: end if;
506:
507: exception
508: when others then
509: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
510: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TERMINATE_REQUEST');
511: fnd_message.set_token('ERRNO', SQLCODE);
512: fnd_message.set_token('REASON', SQLERRM);
513: message := fnd_message.get;
506:
507: exception
508: when others then
509: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
510: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TERMINATE_REQUEST');
511: fnd_message.set_token('ERRNO', SQLCODE);
512: fnd_message.set_token('REASON', SQLERRM);
513: message := fnd_message.get;
514: rollback;
507: exception
508: when others then
509: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
510: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TERMINATE_REQUEST');
511: fnd_message.set_token('ERRNO', SQLCODE);
512: fnd_message.set_token('REASON', SQLERRM);
513: message := fnd_message.get;
514: rollback;
515: return 0;
508: when others then
509: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
510: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TERMINATE_REQUEST');
511: fnd_message.set_token('ERRNO', SQLCODE);
512: fnd_message.set_token('REASON', SQLERRM);
513: message := fnd_message.get;
514: rollback;
515: return 0;
516: end;
509: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
510: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TERMINATE_REQUEST');
511: fnd_message.set_token('ERRNO', SQLCODE);
512: fnd_message.set_token('REASON', SQLERRM);
513: message := fnd_message.get;
514: rollback;
515: return 0;
516: end;
517:
588: return retval;
589:
590: exception
591: when others then
592: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
593: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TOGGLE_REQUEST_HOLD');
594: fnd_message.set_token('ERRNO', SQLCODE);
595: fnd_message.set_token('REASON', SQLERRM);
596: message := fnd_message.get;
589:
590: exception
591: when others then
592: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
593: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TOGGLE_REQUEST_HOLD');
594: fnd_message.set_token('ERRNO', SQLCODE);
595: fnd_message.set_token('REASON', SQLERRM);
596: message := fnd_message.get;
597: rollback to fnd_amp_private_hold_req;
590: exception
591: when others then
592: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
593: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TOGGLE_REQUEST_HOLD');
594: fnd_message.set_token('ERRNO', SQLCODE);
595: fnd_message.set_token('REASON', SQLERRM);
596: message := fnd_message.get;
597: rollback to fnd_amp_private_hold_req;
598: return 0;
591: when others then
592: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
593: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TOGGLE_REQUEST_HOLD');
594: fnd_message.set_token('ERRNO', SQLCODE);
595: fnd_message.set_token('REASON', SQLERRM);
596: message := fnd_message.get;
597: rollback to fnd_amp_private_hold_req;
598: return 0;
599: end;
592: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
593: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.TOGGLE_REQUEST_HOLD');
594: fnd_message.set_token('ERRNO', SQLCODE);
595: fnd_message.set_token('REASON', SQLERRM);
596: message := fnd_message.get;
597: rollback to fnd_amp_private_hold_req;
598: return 0;
599: end;
600:
657: return 3;
658:
659: exception
660: when others then
661: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
662: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.ALTER_REQUEST_PRIORITY');
663: fnd_message.set_token('ERRNO', SQLCODE);
664: fnd_message.set_token('REASON', SQLERRM);
665: message := fnd_message.get;
658:
659: exception
660: when others then
661: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
662: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.ALTER_REQUEST_PRIORITY');
663: fnd_message.set_token('ERRNO', SQLCODE);
664: fnd_message.set_token('REASON', SQLERRM);
665: message := fnd_message.get;
666: rollback to fnd_amp_private_alter_priority;
659: exception
660: when others then
661: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
662: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.ALTER_REQUEST_PRIORITY');
663: fnd_message.set_token('ERRNO', SQLCODE);
664: fnd_message.set_token('REASON', SQLERRM);
665: message := fnd_message.get;
666: rollback to fnd_amp_private_alter_priority;
667: return 0;
660: when others then
661: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
662: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.ALTER_REQUEST_PRIORITY');
663: fnd_message.set_token('ERRNO', SQLCODE);
664: fnd_message.set_token('REASON', SQLERRM);
665: message := fnd_message.get;
666: rollback to fnd_amp_private_alter_priority;
667: return 0;
668: end;
661: fnd_message.set_name('FND', 'SQL_PLSQL_ERROR');
662: fnd_message.set_token('ROUTINE', 'FND_AMP_PRIVATE.ALTER_REQUEST_PRIORITY');
663: fnd_message.set_token('ERRNO', SQLCODE);
664: fnd_message.set_token('REASON', SQLERRM);
665: message := fnd_message.get;
666: rollback to fnd_amp_private_alter_priority;
667: return 0;
668: end;
669: