15: -- 11/02/05 musman fixed bug: 4695424
16: ---------------------------------------------------------------------
17: PROCEDURE create_cell(
18: p_api_version IN NUMBER,
19: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
20: p_commit IN VARCHAR2 := FND_API.g_false,
21: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
22:
23: x_return_status OUT NOCOPY VARCHAR2,
16: ---------------------------------------------------------------------
17: PROCEDURE create_cell(
18: p_api_version IN NUMBER,
19: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
20: p_commit IN VARCHAR2 := FND_API.g_false,
21: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
22:
23: x_return_status OUT NOCOPY VARCHAR2,
24: x_msg_count OUT NOCOPY NUMBER,
17: PROCEDURE create_cell(
18: p_api_version IN NUMBER,
19: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
20: p_commit IN VARCHAR2 := FND_API.g_false,
21: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
22:
23: x_return_status OUT NOCOPY VARCHAR2,
24: x_msg_count OUT NOCOPY NUMBER,
25: x_msg_data OUT NOCOPY VARCHAR2,
60: SAVEPOINT create_cell;
61:
62: AMS_Utility_PVT.debug_message(l_full_name||': start');
63:
64: IF FND_API.to_boolean(p_init_msg_list) THEN
65: FND_MSG_PUB.initialize;
66: END IF;
67:
68: IF NOT FND_API.compatible_api_call(
64: IF FND_API.to_boolean(p_init_msg_list) THEN
65: FND_MSG_PUB.initialize;
66: END IF;
67:
68: IF NOT FND_API.compatible_api_call(
69: l_api_version,
70: p_api_version,
71: l_api_name,
72: g_pkg_name
70: p_api_version,
71: l_api_name,
72: g_pkg_name
73: ) THEN
74: RAISE FND_API.g_exc_unexpected_error;
75: END IF;
76:
77: x_return_status := FND_API.g_ret_sts_success;
78:
73: ) THEN
74: RAISE FND_API.g_exc_unexpected_error;
75: END IF;
76:
77: x_return_status := FND_API.g_ret_sts_success;
78:
79:
80: OPEN c_default_cell_user_status_id;
81: FETCH c_default_cell_user_status_id INTO l_cell_rec.user_status_id;
92: x_msg_count => x_msg_count,
93: x_msg_data => x_msg_data,
94: p_cell_rec => l_cell_rec
95: );
96: IF l_return_status = FND_API.g_ret_sts_error THEN
97: RAISE FND_API.g_exc_error;
98: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
99: RAISE FND_API.g_exc_unexpected_error;
100: END IF;
93: x_msg_data => x_msg_data,
94: p_cell_rec => l_cell_rec
95: );
96: IF l_return_status = FND_API.g_ret_sts_error THEN
97: RAISE FND_API.g_exc_error;
98: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
99: RAISE FND_API.g_exc_unexpected_error;
100: END IF;
101:
94: p_cell_rec => l_cell_rec
95: );
96: IF l_return_status = FND_API.g_ret_sts_error THEN
97: RAISE FND_API.g_exc_error;
98: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
99: RAISE FND_API.g_exc_unexpected_error;
100: END IF;
101:
102: -- try to generate a unique id from the sequence
95: );
96: IF l_return_status = FND_API.g_ret_sts_error THEN
97: RAISE FND_API.g_exc_error;
98: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
99: RAISE FND_API.g_exc_unexpected_error;
100: END IF;
101:
102: -- try to generate a unique id from the sequence
103: IF l_cell_rec.cell_id IS NULL THEN
197: --dbms_output.put_line('returen status is: ' || x_return_status);
198: ------------------------- finish -------------------------------
199: x_cell_id := l_cell_rec.cell_id;
200:
201: IF FND_API.to_boolean(p_commit) THEN
202: COMMIT;
203: END IF;
204:
205: FND_MSG_PUB.count_and_get(
202: COMMIT;
203: END IF;
204:
205: FND_MSG_PUB.count_and_get(
206: p_encoded => FND_API.g_false,
207: p_count => x_msg_count,
208: p_data => x_msg_data
209: );
210:
211: AMS_Utility_PVT.debug_message(l_full_name ||': end');
212:
213: EXCEPTION
214:
215: WHEN FND_API.g_exc_error THEN
216: ROLLBACK TO create_cell;
217: x_return_status := FND_API.g_ret_sts_error;
218: FND_MSG_PUB.count_and_get(
219: p_encoded => FND_API.g_false,
213: EXCEPTION
214:
215: WHEN FND_API.g_exc_error THEN
216: ROLLBACK TO create_cell;
217: x_return_status := FND_API.g_ret_sts_error;
218: FND_MSG_PUB.count_and_get(
219: p_encoded => FND_API.g_false,
220: p_count => x_msg_count,
221: p_data => x_msg_data
215: WHEN FND_API.g_exc_error THEN
216: ROLLBACK TO create_cell;
217: x_return_status := FND_API.g_ret_sts_error;
218: FND_MSG_PUB.count_and_get(
219: p_encoded => FND_API.g_false,
220: p_count => x_msg_count,
221: p_data => x_msg_data
222: );
223: WHEN FND_API.g_exc_unexpected_error THEN
219: p_encoded => FND_API.g_false,
220: p_count => x_msg_count,
221: p_data => x_msg_data
222: );
223: WHEN FND_API.g_exc_unexpected_error THEN
224: ROLLBACK TO create_cell;
225: x_return_status := FND_API.g_ret_sts_unexp_error ;
226: FND_MSG_PUB.count_and_get(
227: p_encoded => FND_API.g_false,
221: p_data => x_msg_data
222: );
223: WHEN FND_API.g_exc_unexpected_error THEN
224: ROLLBACK TO create_cell;
225: x_return_status := FND_API.g_ret_sts_unexp_error ;
226: FND_MSG_PUB.count_and_get(
227: p_encoded => FND_API.g_false,
228: p_count => x_msg_count,
229: p_data => x_msg_data
223: WHEN FND_API.g_exc_unexpected_error THEN
224: ROLLBACK TO create_cell;
225: x_return_status := FND_API.g_ret_sts_unexp_error ;
226: FND_MSG_PUB.count_and_get(
227: p_encoded => FND_API.g_false,
228: p_count => x_msg_count,
229: p_data => x_msg_data
230: );
231:
230: );
231:
232: WHEN OTHERS THEN
233: ROLLBACK TO create_cell;
234: x_return_status := FND_API.g_ret_sts_unexp_error ;
235:
236: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
237: THEN
238: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
238: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
239: END IF;
240:
241: FND_MSG_PUB.count_and_get(
242: p_encoded => FND_API.g_false,
243: p_count => x_msg_count,
244: p_data => x_msg_data
245: );
246: END create_cell;
254: -- 12/15/99 mpande Created.
255: ---------------------------------------------------------------
256: PROCEDURE delete_cell(
257: p_api_version IN NUMBER,
258: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
259: p_commit IN VARCHAR2 := FND_API.g_false,
260:
261: x_return_status OUT NOCOPY VARCHAR2,
262: x_msg_count OUT NOCOPY NUMBER,
255: ---------------------------------------------------------------
256: PROCEDURE delete_cell(
257: p_api_version IN NUMBER,
258: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
259: p_commit IN VARCHAR2 := FND_API.g_false,
260:
261: x_return_status OUT NOCOPY VARCHAR2,
262: x_msg_count OUT NOCOPY NUMBER,
263: x_msg_data OUT NOCOPY VARCHAR2,
277: SAVEPOINT delete_cell;
278:
279: AMS_Utility_PVT.debug_message(l_full_name||': start');
280:
281: IF FND_API.to_boolean(p_init_msg_list) THEN
282: FND_MSG_PUB.initialize;
283: END IF;
284:
285: IF NOT FND_API.compatible_api_call(
281: IF FND_API.to_boolean(p_init_msg_list) THEN
282: FND_MSG_PUB.initialize;
283: END IF;
284:
285: IF NOT FND_API.compatible_api_call(
286: l_api_version,
287: p_api_version,
288: l_api_name,
289: g_pkg_name
287: p_api_version,
288: l_api_name,
289: g_pkg_name
290: ) THEN
291: RAISE FND_API.g_exc_unexpected_error;
292: END IF;
293:
294: x_return_status := FND_API.G_RET_STS_SUCCESS;
295:
290: ) THEN
291: RAISE FND_API.g_exc_unexpected_error;
292: END IF;
293:
294: x_return_status := FND_API.G_RET_STS_SUCCESS;
295:
296: ------------------------ delete ------------------------
297: AMS_Utility_PVT.debug_message(l_full_name ||': delete');
298:
306: THEN
307: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
308: FND_MSG_PUB.add;
309: END IF;
310: RAISE FND_API.g_exc_error;
311: END IF;
312:
313:
314: -------------------- finish --------------------------
311: END IF;
312:
313:
314: -------------------- finish --------------------------
315: IF FND_API.to_boolean(p_commit) THEN
316: COMMIT;
317: END IF;
318:
319: FND_MSG_PUB.count_and_get(
316: COMMIT;
317: END IF;
318:
319: FND_MSG_PUB.count_and_get(
320: p_encoded => FND_API.g_false,
321: p_count => x_msg_count,
322: p_data => x_msg_data
323: );
324:
325: AMS_Utility_PVT.debug_message(l_full_name ||': end');
326:
327: EXCEPTION
328:
329: WHEN FND_API.g_exc_error THEN
330: ROLLBACK TO delete_cell;
331: x_return_status := FND_API.g_ret_sts_error;
332: FND_MSG_PUB.count_and_get(
333: p_encoded => FND_API.g_false,
327: EXCEPTION
328:
329: WHEN FND_API.g_exc_error THEN
330: ROLLBACK TO delete_cell;
331: x_return_status := FND_API.g_ret_sts_error;
332: FND_MSG_PUB.count_and_get(
333: p_encoded => FND_API.g_false,
334: p_count => x_msg_count,
335: p_data => x_msg_data
329: WHEN FND_API.g_exc_error THEN
330: ROLLBACK TO delete_cell;
331: x_return_status := FND_API.g_ret_sts_error;
332: FND_MSG_PUB.count_and_get(
333: p_encoded => FND_API.g_false,
334: p_count => x_msg_count,
335: p_data => x_msg_data
336: );
337:
334: p_count => x_msg_count,
335: p_data => x_msg_data
336: );
337:
338: WHEN FND_API.g_exc_unexpected_error THEN
339: ROLLBACK TO delete_cell;
340: x_return_status := FND_API.g_ret_sts_unexp_error ;
341: FND_MSG_PUB.count_and_get(
342: p_encoded => FND_API.g_false,
336: );
337:
338: WHEN FND_API.g_exc_unexpected_error THEN
339: ROLLBACK TO delete_cell;
340: x_return_status := FND_API.g_ret_sts_unexp_error ;
341: FND_MSG_PUB.count_and_get(
342: p_encoded => FND_API.g_false,
343: p_count => x_msg_count,
344: p_data => x_msg_data
338: WHEN FND_API.g_exc_unexpected_error THEN
339: ROLLBACK TO delete_cell;
340: x_return_status := FND_API.g_ret_sts_unexp_error ;
341: FND_MSG_PUB.count_and_get(
342: p_encoded => FND_API.g_false,
343: p_count => x_msg_count,
344: p_data => x_msg_data
345: );
346:
345: );
346:
347: WHEN OTHERS THEN
348: ROLLBACK TO delete_cell;
349: x_return_status := FND_API.g_ret_sts_unexp_error ;
350:
351: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
352: THEN
353: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
353: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
354: END IF;
355:
356: FND_MSG_PUB.count_and_get(
357: p_encoded => FND_API.g_false,
358: p_count => x_msg_count,
359: p_data => x_msg_data
360: );
361:
370: -- 12/15/99 mpande Created.
371: --------------------------------------------------------------------
372: PROCEDURE lock_cell(
373: p_api_version IN NUMBER,
374: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
375:
376: x_return_status OUT NOCOPY VARCHAR2,
377: x_msg_count OUT NOCOPY NUMBER,
378: x_msg_data OUT NOCOPY VARCHAR2,
406:
407: -------------------- initialize ------------------------
408: AMS_Utility_PVT.debug_message(l_full_name||': start');
409:
410: IF FND_API.to_boolean(p_init_msg_list) THEN
411: FND_MSG_PUB.initialize;
412: END IF;
413:
414: IF NOT FND_API.compatible_api_call(
410: IF FND_API.to_boolean(p_init_msg_list) THEN
411: FND_MSG_PUB.initialize;
412: END IF;
413:
414: IF NOT FND_API.compatible_api_call(
415: l_api_version,
416: p_api_version,
417: l_api_name,
418: g_pkg_name
416: p_api_version,
417: l_api_name,
418: g_pkg_name
419: ) THEN
420: RAISE FND_API.g_exc_unexpected_error;
421: END IF;
422:
423: x_return_status := FND_API.G_RET_STS_SUCCESS;
424:
419: ) THEN
420: RAISE FND_API.g_exc_unexpected_error;
421: END IF;
422:
423: x_return_status := FND_API.G_RET_STS_SUCCESS;
424:
425: ------------------------ lock -------------------------
426: AMS_Utility_PVT.debug_message(l_full_name||': lock');
427:
432: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
433: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
434: FND_MSG_PUB.add;
435: END IF;
436: RAISE FND_API.g_exc_error;
437: END IF;
438: CLOSE c_cell_b;
439:
440: OPEN c_cell_tl;
441: CLOSE c_cell_tl;
442:
443: -------------------- finish --------------------------
444: FND_MSG_PUB.count_and_get(
445: p_encoded => FND_API.g_false,
446: p_count => x_msg_count,
447: p_data => x_msg_data
448: );
449:
451:
452: EXCEPTION
453:
454: WHEN AMS_Utility_PVT.resource_locked THEN
455: x_return_status := FND_API.g_ret_sts_error;
456: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
457: FND_MESSAGE.set_name('AMS', 'AMS_API_RESOURCE_LOCKED');
458: FND_MSG_PUB.add;
459: END IF;
458: FND_MSG_PUB.add;
459: END IF;
460:
461: FND_MSG_PUB.count_and_get(
462: p_encoded => FND_API.g_false,
463: p_count => x_msg_count,
464: p_data => x_msg_data
465: );
466:
463: p_count => x_msg_count,
464: p_data => x_msg_data
465: );
466:
467: WHEN FND_API.g_exc_error THEN
468: x_return_status := FND_API.g_ret_sts_error;
469: FND_MSG_PUB.count_and_get(
470: p_encoded => FND_API.g_false,
471: p_count => x_msg_count,
464: p_data => x_msg_data
465: );
466:
467: WHEN FND_API.g_exc_error THEN
468: x_return_status := FND_API.g_ret_sts_error;
469: FND_MSG_PUB.count_and_get(
470: p_encoded => FND_API.g_false,
471: p_count => x_msg_count,
472: p_data => x_msg_data
466:
467: WHEN FND_API.g_exc_error THEN
468: x_return_status := FND_API.g_ret_sts_error;
469: FND_MSG_PUB.count_and_get(
470: p_encoded => FND_API.g_false,
471: p_count => x_msg_count,
472: p_data => x_msg_data
473: );
474:
471: p_count => x_msg_count,
472: p_data => x_msg_data
473: );
474:
475: WHEN FND_API.g_exc_unexpected_error THEN
476: x_return_status := FND_API.g_ret_sts_unexp_error ;
477: FND_MSG_PUB.count_and_get(
478: p_encoded => FND_API.g_false,
479: p_count => x_msg_count,
472: p_data => x_msg_data
473: );
474:
475: WHEN FND_API.g_exc_unexpected_error THEN
476: x_return_status := FND_API.g_ret_sts_unexp_error ;
477: FND_MSG_PUB.count_and_get(
478: p_encoded => FND_API.g_false,
479: p_count => x_msg_count,
480: p_data => x_msg_data
474:
475: WHEN FND_API.g_exc_unexpected_error THEN
476: x_return_status := FND_API.g_ret_sts_unexp_error ;
477: FND_MSG_PUB.count_and_get(
478: p_encoded => FND_API.g_false,
479: p_count => x_msg_count,
480: p_data => x_msg_data
481: );
482:
480: p_data => x_msg_data
481: );
482:
483: WHEN OTHERS THEN
484: x_return_status := FND_API.g_ret_sts_unexp_error ;
485: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
486: THEN
487: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
488: END IF;
487: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
488: END IF;
489:
490: FND_MSG_PUB.count_and_get(
491: p_encoded => FND_API.g_false,
492: p_count => x_msg_count,
493: p_data => x_msg_data
494: );
495:
506: -- 10/23/01 yxliu owner_id can be changed
507: ----------------------------------------------------------------------
508: PROCEDURE update_cell(
509: p_api_version IN NUMBER,
510: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
511: p_commit IN VARCHAR2 := FND_API.g_false,
512: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
513:
514: x_return_status OUT NOCOPY VARCHAR2,
507: ----------------------------------------------------------------------
508: PROCEDURE update_cell(
509: p_api_version IN NUMBER,
510: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
511: p_commit IN VARCHAR2 := FND_API.g_false,
512: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
513:
514: x_return_status OUT NOCOPY VARCHAR2,
515: x_msg_count OUT NOCOPY NUMBER,
508: PROCEDURE update_cell(
509: p_api_version IN NUMBER,
510: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
511: p_commit IN VARCHAR2 := FND_API.g_false,
512: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
513:
514: x_return_status OUT NOCOPY VARCHAR2,
515: x_msg_count OUT NOCOPY NUMBER,
516: x_msg_data OUT NOCOPY VARCHAR2,
532: SAVEPOINT update_cell;
533:
534: AMS_Utility_PVT.debug_message(l_full_name||': start');
535:
536: IF FND_API.to_boolean(p_init_msg_list) THEN
537: FND_MSG_PUB.initialize;
538: END IF;
539:
540: IF NOT FND_API.compatible_api_call(
536: IF FND_API.to_boolean(p_init_msg_list) THEN
537: FND_MSG_PUB.initialize;
538: END IF;
539:
540: IF NOT FND_API.compatible_api_call(
541: l_api_version,
542: p_api_version,
543: l_api_name,
544: g_pkg_name
542: p_api_version,
543: l_api_name,
544: g_pkg_name
545: ) THEN
546: RAISE FND_API.g_exc_unexpected_error;
547: END IF;
548:
549: x_return_status := FND_API.G_RET_STS_SUCCESS;
550:
545: ) THEN
546: RAISE FND_API.g_exc_unexpected_error;
547: END IF;
548:
549: x_return_status := FND_API.G_RET_STS_SUCCESS;
550:
551: ----------------------- validate ----------------------
552: AMS_Utility_PVT.debug_message(l_full_name ||': validate');
553: AMS_Utility_PVT.debug_message(l_full_name ||': just before call the complete_cell_rec');
562: p_cell_rec => l_cell_rec,
563: p_validation_mode => JTF_PLSQL_API.g_update,
564: x_return_status => l_return_status
565: );
566: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
567: RAISE FND_API.g_exc_unexpected_error;
568: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
569: RAISE FND_API.g_exc_error;
570: END IF;
563: p_validation_mode => JTF_PLSQL_API.g_update,
564: x_return_status => l_return_status
565: );
566: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
567: RAISE FND_API.g_exc_unexpected_error;
568: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
569: RAISE FND_API.g_exc_error;
570: END IF;
571: END IF;
564: x_return_status => l_return_status
565: );
566: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
567: RAISE FND_API.g_exc_unexpected_error;
568: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
569: RAISE FND_API.g_exc_error;
570: END IF;
571: END IF;
572:
565: );
566: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
567: RAISE FND_API.g_exc_unexpected_error;
568: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
569: RAISE FND_API.g_exc_error;
570: END IF;
571: END IF;
572:
573: -- record level
596: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
597: FND_MSG_PUB.add;
598: END IF;
599: AMS_Utility_PVT.debug_message(l_full_name ||': update b');
600: RAISE FND_API.g_exc_error;
601: END IF;
602:
603: update ams_cells_all_tl set
604: cell_name = l_cell_rec.cell_name,
615: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
616: FND_MSG_PUB.add;
617: AMS_Utility_PVT.debug_message(l_full_name ||': updatetl');
618: END IF;
619: RAISE FND_API.g_exc_error;
620: END IF;
621:
622: -------------------- finish --------------------------
623: IF FND_API.to_boolean(p_commit) THEN
619: RAISE FND_API.g_exc_error;
620: END IF;
621:
622: -------------------- finish --------------------------
623: IF FND_API.to_boolean(p_commit) THEN
624: COMMIT;
625: END IF;
626:
627: FND_MSG_PUB.count_and_get(
624: COMMIT;
625: END IF;
626:
627: FND_MSG_PUB.count_and_get(
628: p_encoded => FND_API.g_false,
629: p_count => x_msg_count,
630: p_data => x_msg_data
631: );
632:
633: AMS_Utility_PVT.debug_message(l_full_name ||': end');
634:
635: EXCEPTION
636:
637: WHEN FND_API.g_exc_error THEN
638: ROLLBACK TO update_cell;
639: x_return_status := FND_API.g_ret_sts_error;
640: FND_MSG_PUB.count_and_get(
641: p_encoded => FND_API.g_false,
635: EXCEPTION
636:
637: WHEN FND_API.g_exc_error THEN
638: ROLLBACK TO update_cell;
639: x_return_status := FND_API.g_ret_sts_error;
640: FND_MSG_PUB.count_and_get(
641: p_encoded => FND_API.g_false,
642: p_count => x_msg_count,
643: p_data => x_msg_data
637: WHEN FND_API.g_exc_error THEN
638: ROLLBACK TO update_cell;
639: x_return_status := FND_API.g_ret_sts_error;
640: FND_MSG_PUB.count_and_get(
641: p_encoded => FND_API.g_false,
642: p_count => x_msg_count,
643: p_data => x_msg_data
644: );
645:
642: p_count => x_msg_count,
643: p_data => x_msg_data
644: );
645:
646: WHEN FND_API.g_exc_unexpected_error THEN
647: ROLLBACK TO update_cell;
648: x_return_status := FND_API.g_ret_sts_unexp_error;
649: FND_MSG_PUB.count_and_get(
650: p_encoded => FND_API.g_false,
644: );
645:
646: WHEN FND_API.g_exc_unexpected_error THEN
647: ROLLBACK TO update_cell;
648: x_return_status := FND_API.g_ret_sts_unexp_error;
649: FND_MSG_PUB.count_and_get(
650: p_encoded => FND_API.g_false,
651: p_count => x_msg_count,
652: p_data => x_msg_data
646: WHEN FND_API.g_exc_unexpected_error THEN
647: ROLLBACK TO update_cell;
648: x_return_status := FND_API.g_ret_sts_unexp_error;
649: FND_MSG_PUB.count_and_get(
650: p_encoded => FND_API.g_false,
651: p_count => x_msg_count,
652: p_data => x_msg_data
653: );
654:
653: );
654:
655: WHEN OTHERS THEN
656: ROLLBACK TO update_cell;
657: x_return_status := FND_API.g_ret_sts_unexp_error;
658:
659: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
660: THEN
661: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
661: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
662: END IF;
663:
664: FND_MSG_PUB.count_and_get(
665: p_encoded => FND_API.g_false,
666: p_count => x_msg_count,
667: p_data => x_msg_data
668: );
669:
678: -- 12/15/99 mpande Created.
679: --------------------------------------------------------------------
680: PROCEDURE validate_cell(
681: p_api_version IN NUMBER,
682: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
683: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
684:
685: x_return_status OUT NOCOPY VARCHAR2,
686: x_msg_count OUT NOCOPY NUMBER,
679: --------------------------------------------------------------------
680: PROCEDURE validate_cell(
681: p_api_version IN NUMBER,
682: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
683: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
684:
685: x_return_status OUT NOCOPY VARCHAR2,
686: x_msg_count OUT NOCOPY NUMBER,
687: x_msg_data OUT NOCOPY VARCHAR2,
700:
701: ----------------------- initialize --------------------
702: AMS_Utility_PVT.debug_message(l_full_name||': start');
703:
704: IF FND_API.to_boolean(p_init_msg_list) THEN
705: FND_MSG_PUB.initialize;
706: END IF;
707:
708: IF NOT FND_API.compatible_api_call(
704: IF FND_API.to_boolean(p_init_msg_list) THEN
705: FND_MSG_PUB.initialize;
706: END IF;
707:
708: IF NOT FND_API.compatible_api_call(
709: l_api_version,
710: p_api_version,
711: l_api_name,
712: g_pkg_name
710: p_api_version,
711: l_api_name,
712: g_pkg_name
713: ) THEN
714: RAISE FND_API.g_exc_unexpected_error;
715: END IF;
716:
717: x_return_status := FND_API.g_ret_sts_success;
718:
713: ) THEN
714: RAISE FND_API.g_exc_unexpected_error;
715: END IF;
716:
717: x_return_status := FND_API.g_ret_sts_success;
718:
719: ---------------------- validate ------------------------
720: AMS_Utility_PVT.debug_message(l_full_name||': check items');
721:
724: p_cell_rec => p_cell_rec,
725: p_validation_mode => JTF_PLSQL_API.g_create,
726: x_return_status => l_return_status
727: );
728: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
729: RAISE FND_API.g_exc_unexpected_error;
730: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
731: RAISE FND_API.g_exc_error;
732: END IF;
725: p_validation_mode => JTF_PLSQL_API.g_create,
726: x_return_status => l_return_status
727: );
728: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
729: RAISE FND_API.g_exc_unexpected_error;
730: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
731: RAISE FND_API.g_exc_error;
732: END IF;
733: END IF;
726: x_return_status => l_return_status
727: );
728: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
729: RAISE FND_API.g_exc_unexpected_error;
730: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
731: RAISE FND_API.g_exc_error;
732: END IF;
733: END IF;
734:
727: );
728: IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
729: RAISE FND_API.g_exc_unexpected_error;
730: ELSIF l_return_status = FND_API.g_ret_sts_error THEN
731: RAISE FND_API.g_exc_error;
732: END IF;
733: END IF;
734:
735:
734:
735:
736: -------------------- finish --------------------------
737: FND_MSG_PUB.count_and_get(
738: p_encoded => FND_API.g_false,
739: p_count => x_msg_count,
740: p_data => x_msg_data
741: );
742:
743: AMS_Utility_PVT.debug_message(l_full_name ||': end');
744:
745: EXCEPTION
746:
747: WHEN FND_API.g_exc_error THEN
748: x_return_status := FND_API.g_ret_sts_error;
749: FND_MSG_PUB.count_and_get(
750: p_encoded => FND_API.g_false,
751: p_count => x_msg_count,
744:
745: EXCEPTION
746:
747: WHEN FND_API.g_exc_error THEN
748: x_return_status := FND_API.g_ret_sts_error;
749: FND_MSG_PUB.count_and_get(
750: p_encoded => FND_API.g_false,
751: p_count => x_msg_count,
752: p_data => x_msg_data
746:
747: WHEN FND_API.g_exc_error THEN
748: x_return_status := FND_API.g_ret_sts_error;
749: FND_MSG_PUB.count_and_get(
750: p_encoded => FND_API.g_false,
751: p_count => x_msg_count,
752: p_data => x_msg_data
753: );
754:
751: p_count => x_msg_count,
752: p_data => x_msg_data
753: );
754:
755: WHEN FND_API.g_exc_unexpected_error THEN
756: x_return_status := FND_API.g_ret_sts_unexp_error ;
757: FND_MSG_PUB.count_and_get(
758: p_encoded => FND_API.g_false,
759: p_count => x_msg_count,
752: p_data => x_msg_data
753: );
754:
755: WHEN FND_API.g_exc_unexpected_error THEN
756: x_return_status := FND_API.g_ret_sts_unexp_error ;
757: FND_MSG_PUB.count_and_get(
758: p_encoded => FND_API.g_false,
759: p_count => x_msg_count,
760: p_data => x_msg_data
754:
755: WHEN FND_API.g_exc_unexpected_error THEN
756: x_return_status := FND_API.g_ret_sts_unexp_error ;
757: FND_MSG_PUB.count_and_get(
758: p_encoded => FND_API.g_false,
759: p_count => x_msg_count,
760: p_data => x_msg_data
761: );
762:
760: p_data => x_msg_data
761: );
762:
763: WHEN OTHERS THEN
764: x_return_status := FND_API.g_ret_sts_unexp_error;
765: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
766: THEN
767: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
768: END IF;
767: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
768: END IF;
769:
770: FND_MSG_PUB.count_and_get(
771: p_encoded => FND_API.g_false,
772: p_count => x_msg_count,
773: p_data => x_msg_data
774: );
775:
791: )
792: IS
793: BEGIN
794:
795: x_return_status := FND_API.g_ret_sts_success;
796: ------------------------ cell_code --------------------------
797: IF p_cell_rec.cell_code IS NULL THEN
798: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
799: THEN
799: THEN
800: FND_MESSAGE.set_name('AMS', 'AMS_CELL_NO_CODE');
801: FND_MSG_PUB.add;
802: END IF;
803: x_return_status := FND_API.g_ret_sts_error;
804: RETURN;
805: END IF;
806:
807: ------------------------ cell_name --------------------------
810: THEN
811: FND_MESSAGE.set_name('AMS', 'AMS_CELL_NO_NAME');
812: FND_MSG_PUB.add;
813: END IF;
814: x_return_status := FND_API.g_ret_sts_error;
815: RETURN;
816: END IF;
817:
818: END check_cell_req_items;
833: IS
834: l_valid_flag VARCHAR2(1);
835: BEGIN
836:
837: x_return_status := FND_API.g_ret_sts_success;
838:
839: -- For create_cell, when cell_id is passed in, we need to
840: -- check if this cell_id is unique.
841: IF p_validation_mode = JTF_PLSQL_API.g_create
843: THEN
844: IF AMS_Utility_PVT.check_uniqueness(
845: 'ams_cells_vl',
846: 'cell_id = ' || p_cell_rec.cell_id
847: ) = FND_API.g_false
848: THEN
849: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
850: THEN
851: FND_MESSAGE.set_name('AMS', 'AMS_CELL_DUPLICATE_ID');
850: THEN
851: FND_MESSAGE.set_name('AMS', 'AMS_CELL_DUPLICATE_ID');
852: FND_MSG_PUB.add;
853: END IF;
854: x_return_status := FND_API.g_ret_sts_error;
855: RETURN;
856: END IF;
857: END IF;
858:
871: ''' AND cell_id <> ' || p_cell_rec.cell_id
872: );
873: END IF;
874:
875: IF l_valid_flag = FND_API.g_false THEN
876: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
877: THEN
878: FND_MESSAGE.set_name('AMS', 'AMS_CELL_DUPLICATE_NAME');
879: FND_MSG_PUB.add;
877: THEN
878: FND_MESSAGE.set_name('AMS', 'AMS_CELL_DUPLICATE_NAME');
879: FND_MSG_PUB.add;
880: END IF;
881: x_return_status := FND_API.g_ret_sts_error;
882: RETURN;
883: END IF;
884: -- Check if cell_code is unique. Need to handle create and
885: -- update differently.
895: ''' AND cell_id <> ' || p_cell_rec.cell_id
896: );
897: END IF;
898:
899: IF l_valid_flag = FND_API.g_false THEN
900: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
901: THEN
902: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_CODE');
903: FND_MSG_PUB.add;
901: THEN
902: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_CODE');
903: FND_MSG_PUB.add;
904: END IF;
905: x_return_status := FND_API.g_ret_sts_error;
906: RETURN;
907: END IF;
908:
909: END check_cell_uk_items;
921: x_return_status OUT NOCOPY VARCHAR2
922: )
923: IS
924: BEGIN
925: x_return_status := FND_API.g_ret_sts_success;
926: --------------------ownerid---------------------------
927: IF p_cell_rec.owner_id <> FND_API.g_miss_num THEN
928: IF AMS_Utility_PVT.check_fk_exists(
929: 'ams_jtf_rs_emp_v',
923: IS
924: BEGIN
925: x_return_status := FND_API.g_ret_sts_success;
926: --------------------ownerid---------------------------
927: IF p_cell_rec.owner_id <> FND_API.g_miss_num THEN
928: IF AMS_Utility_PVT.check_fk_exists(
929: 'ams_jtf_rs_emp_v',
930: 'resource_id',
931: p_cell_rec.owner_id
928: IF AMS_Utility_PVT.check_fk_exists(
929: 'ams_jtf_rs_emp_v',
930: 'resource_id',
931: p_cell_rec.owner_id
932: ) = FND_API.g_false
933: THEN
934: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
935: THEN
936: FND_MESSAGE.set_name('AMS', 'AMS_CELL_BAD_OWNER_USER_ID');
935: THEN
936: FND_MESSAGE.set_name('AMS', 'AMS_CELL_BAD_OWNER_USER_ID');
937: FND_MSG_PUB.add;
938: END IF;
939: x_return_status := FND_API.g_ret_sts_error;
940: RETURN;
941: END IF;
942: END IF;
943:
941: END IF;
942: END IF;
943:
944: --------------------- parent_cell_id ------------------------
945: IF p_cell_rec.parent_cell_id <> FND_API.g_miss_num THEN
946: IF AMS_Utility_PVT.check_fk_exists(
947: 'ams_cells_vl',
948: 'cell_id',
949: p_cell_rec.parent_cell_id
946: IF AMS_Utility_PVT.check_fk_exists(
947: 'ams_cells_vl',
948: 'cell_id',
949: p_cell_rec.parent_cell_id
950: ) = FND_API.g_false
951: THEN
952: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
953: THEN
954: FND_MESSAGE.set_name('AMS', 'AMS_CELL_WRONG_PARENT_CELL_ID');
953: THEN
954: FND_MESSAGE.set_name('AMS', 'AMS_CELL_WRONG_PARENT_CELL_ID');
955: FND_MSG_PUB.add;
956: END IF;
957: x_return_status := FND_API.g_ret_sts_error;
958: RETURN;
959: END IF;
960: END IF;
961:
976: )
977: IS
978: BEGIN
979:
980: x_return_status := FND_API.g_ret_sts_success;
981:
982: ----------------------- enabled_flag ------------------------
983: IF p_cell_rec.enabled_flag <> FND_API.g_miss_char
984: AND p_cell_rec.enabled_flag IS NOT NULL
979:
980: x_return_status := FND_API.g_ret_sts_success;
981:
982: ----------------------- enabled_flag ------------------------
983: IF p_cell_rec.enabled_flag <> FND_API.g_miss_char
984: AND p_cell_rec.enabled_flag IS NOT NULL
985: THEN
986: IF AMS_Utility_PVT.is_Y_or_N(p_cell_rec.enabled_flag) = FND_API.g_false
987: THEN
982: ----------------------- enabled_flag ------------------------
983: IF p_cell_rec.enabled_flag <> FND_API.g_miss_char
984: AND p_cell_rec.enabled_flag IS NOT NULL
985: THEN
986: IF AMS_Utility_PVT.is_Y_or_N(p_cell_rec.enabled_flag) = FND_API.g_false
987: THEN
988: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
989: THEN
990: FND_MESSAGE.set_name('AMS', 'AMS_CELL_WRONG_ENABLED_FLAG');
989: THEN
990: FND_MESSAGE.set_name('AMS', 'AMS_CELL_WRONG_ENABLED_FLAG');
991: FND_MSG_PUB.add;
992: END IF;
993: x_return_status := FND_API.g_ret_sts_error;
994: RETURN;
995: END IF;
996: END IF;
997:
1027: and cell_id = l_child_id ;
1028:
1029: BEGIN
1030:
1031: x_return_status := FND_API.g_ret_sts_success;
1032:
1033: ----------------------- status ------------------------
1034: IF p_cell_rec.status_code = 'CANCELLED'
1035: THEN
1045: THEN
1046: FND_MESSAGE.set_name('AMS', 'AMS_CELL_CANCEL_ERROR');
1047: FND_MSG_PUB.add;
1048: END IF;
1049: x_return_status := FND_API.g_ret_sts_error;
1050: RETURN;
1051: END IF;
1052: END IF;
1053:
1050: RETURN;
1051: END IF;
1052: END IF;
1053:
1054: x_return_status := FND_API.g_ret_sts_success;
1055:
1056: ----------------------- Over lapping child --------------------
1057: IF p_cell_rec.parent_cell_id <> FND_API.g_miss_num
1058: AND p_cell_rec.parent_cell_id IS NOT NULL
1053:
1054: x_return_status := FND_API.g_ret_sts_success;
1055:
1056: ----------------------- Over lapping child --------------------
1057: IF p_cell_rec.parent_cell_id <> FND_API.g_miss_num
1058: AND p_cell_rec.parent_cell_id IS NOT NULL
1059: THEN
1060: open c_check_parent(p_cell_rec.cell_id,p_cell_rec.parent_cell_id);
1061: fetch c_check_parent into l_count;
1066: THEN
1067: FND_MESSAGE.set_name('AMS', 'AMS_CELL_PARENT_ERROR');
1068: FND_MSG_PUB.add;
1069: END IF;
1070: x_return_status := FND_API.g_ret_sts_error;
1071: RETURN;
1072: END IF;
1073: END IF;
1074:
1094: p_cell_rec => p_cell_rec,
1095: x_return_status => x_return_status
1096: );
1097:
1098: IF x_return_status <> FND_API.g_ret_sts_success THEN
1099: RETURN;
1100: END IF;
1101:
1102: check_cell_uk_items(
1104: p_validation_mode => p_validation_mode,
1105: x_return_status => x_return_status
1106: );
1107:
1108: IF x_return_status <> FND_API.g_ret_sts_success THEN
1109: RETURN;
1110: END IF;
1111:
1112: check_cell_fk_items(
1113: p_cell_rec => p_cell_rec,
1114: x_return_status => x_return_status
1115: );
1116:
1117: IF x_return_status <> FND_API.g_ret_sts_success THEN
1118: RETURN;
1119: END IF;
1120:
1121: check_cell_flag_items(
1122: p_cell_rec => p_cell_rec,
1123: x_return_status => x_return_status
1124: );
1125:
1126: IF x_return_status <> FND_API.g_ret_sts_success THEN
1127: RETURN;
1128: END IF;
1129:
1130: check_cell_hier_items(
1131: p_cell_rec => p_cell_rec,
1132: x_return_status => x_return_status
1133: );
1134:
1135: IF x_return_status <> FND_API.g_ret_sts_success THEN
1136: RETURN;
1137: END IF;
1138: END check_cell_items;
1139:
1150: )
1151: IS
1152: BEGIN
1153: -- dbms_output.put_line('init Start');
1154: x_cell_rec.cell_id := FND_API.g_miss_num;
1155: x_cell_rec.last_update_date := FND_API.g_miss_date;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1151: IS
1152: BEGIN
1153: -- dbms_output.put_line('init Start');
1154: x_cell_rec.cell_id := FND_API.g_miss_num;
1155: x_cell_rec.last_update_date := FND_API.g_miss_date;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1152: BEGIN
1153: -- dbms_output.put_line('init Start');
1154: x_cell_rec.cell_id := FND_API.g_miss_num;
1155: x_cell_rec.last_update_date := FND_API.g_miss_date;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1153: -- dbms_output.put_line('init Start');
1154: x_cell_rec.cell_id := FND_API.g_miss_num;
1155: x_cell_rec.last_update_date := FND_API.g_miss_date;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1154: x_cell_rec.cell_id := FND_API.g_miss_num;
1155: x_cell_rec.last_update_date := FND_API.g_miss_date;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1155: x_cell_rec.last_update_date := FND_API.g_miss_date;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1156: x_cell_rec.last_updated_by := FND_API.g_miss_num;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1157: x_cell_rec.creation_date := FND_API.g_miss_date;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1158: x_cell_rec.created_by := FND_API.g_miss_num;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1159: x_cell_rec.last_update_login := FND_API.g_miss_num;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1160: x_cell_rec.object_version_number := FND_API.g_miss_num;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1161: x_cell_rec.parent_cell_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1162: x_cell_rec.cell_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1163: x_cell_rec.original_size := FND_API.g_miss_num;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1171: x_cell_rec.status_date := FND_API.g_miss_date;
1164: x_cell_rec.enabled_flag := FND_API.g_miss_char;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1171: x_cell_rec.status_date := FND_API.g_miss_date;
1172: x_cell_rec.user_status_id := FND_API.g_miss_num;
1165: x_cell_rec.owner_id := FND_API.g_miss_num;
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1171: x_cell_rec.status_date := FND_API.g_miss_date;
1172: x_cell_rec.user_status_id := FND_API.g_miss_num;
1173:
1166: x_cell_rec.cell_name := FND_API.g_miss_char;
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1171: x_cell_rec.status_date := FND_API.g_miss_date;
1172: x_cell_rec.user_status_id := FND_API.g_miss_num;
1173:
1174: -- dbms_output.put_line('init End');
1167: x_cell_rec.description := FND_API.g_miss_char;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1171: x_cell_rec.status_date := FND_API.g_miss_date;
1172: x_cell_rec.user_status_id := FND_API.g_miss_num;
1173:
1174: -- dbms_output.put_line('init End');
1175: END init_cell_rec;
1168: x_cell_rec.sel_type := FND_API.g_miss_char;
1169: x_cell_rec.org_id := FND_API.g_miss_num;
1170: x_cell_rec.status_code := FND_API.g_miss_char;
1171: x_cell_rec.status_date := FND_API.g_miss_date;
1172: x_cell_rec.user_status_id := FND_API.g_miss_num;
1173:
1174: -- dbms_output.put_line('init End');
1175: END init_cell_rec;
1176:
1206: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1207: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
1208: FND_MSG_PUB.add;
1209: END IF;
1210: RAISE FND_API.g_exc_error;
1211: END IF;
1212: CLOSE c_cell;
1213:
1214: IF p_cell_rec.owner_id = FND_API.g_miss_num THEN
1210: RAISE FND_API.g_exc_error;
1211: END IF;
1212: CLOSE c_cell;
1213:
1214: IF p_cell_rec.owner_id = FND_API.g_miss_num THEN
1215: x_complete_rec.owner_id := l_cell_rec.owner_id;
1216: END IF;
1217:
1218: IF p_cell_rec.enabled_flag = FND_API.g_miss_char THEN
1214: IF p_cell_rec.owner_id = FND_API.g_miss_num THEN
1215: x_complete_rec.owner_id := l_cell_rec.owner_id;
1216: END IF;
1217:
1218: IF p_cell_rec.enabled_flag = FND_API.g_miss_char THEN
1219: x_complete_rec.enabled_flag := l_cell_rec.enabled_flag;
1220: END IF;
1221:
1222: IF p_cell_rec.original_size = FND_API.g_miss_num THEN
1218: IF p_cell_rec.enabled_flag = FND_API.g_miss_char THEN
1219: x_complete_rec.enabled_flag := l_cell_rec.enabled_flag;
1220: END IF;
1221:
1222: IF p_cell_rec.original_size = FND_API.g_miss_num THEN
1223: x_complete_rec.original_size := l_cell_rec.original_size;
1224: END IF;
1225:
1226: IF p_cell_rec.cell_code = FND_API.g_miss_char THEN
1222: IF p_cell_rec.original_size = FND_API.g_miss_num THEN
1223: x_complete_rec.original_size := l_cell_rec.original_size;
1224: END IF;
1225:
1226: IF p_cell_rec.cell_code = FND_API.g_miss_char THEN
1227: x_complete_rec.cell_code := l_cell_rec.cell_code;
1228: END IF;
1229:
1230: IF p_cell_rec.parent_cell_id = FND_API.g_miss_num THEN
1226: IF p_cell_rec.cell_code = FND_API.g_miss_char THEN
1227: x_complete_rec.cell_code := l_cell_rec.cell_code;
1228: END IF;
1229:
1230: IF p_cell_rec.parent_cell_id = FND_API.g_miss_num THEN
1231: x_complete_rec.parent_cell_id:= l_cell_rec.parent_cell_id;
1232: END IF;
1233:
1234:
1231: x_complete_rec.parent_cell_id:= l_cell_rec.parent_cell_id;
1232: END IF;
1233:
1234:
1235: IF p_cell_rec.cell_name = FND_API.g_miss_char THEN
1236: x_complete_rec.cell_name := l_cell_rec.cell_name;
1237: END IF;
1238:
1239: IF p_cell_rec.description = FND_API.g_miss_char THEN
1235: IF p_cell_rec.cell_name = FND_API.g_miss_char THEN
1236: x_complete_rec.cell_name := l_cell_rec.cell_name;
1237: END IF;
1238:
1239: IF p_cell_rec.description = FND_API.g_miss_char THEN
1240: x_complete_rec.description := l_cell_rec.description;
1241: END IF;
1242:
1243: IF p_cell_rec.sel_type = FND_API.g_miss_char THEN
1239: IF p_cell_rec.description = FND_API.g_miss_char THEN
1240: x_complete_rec.description := l_cell_rec.description;
1241: END IF;
1242:
1243: IF p_cell_rec.sel_type = FND_API.g_miss_char THEN
1244: x_complete_rec.sel_type := l_cell_rec.sel_type;
1245: END IF;
1246:
1247: IF p_cell_rec.user_status_id = FND_API.g_miss_num THEN
1243: IF p_cell_rec.sel_type = FND_API.g_miss_char THEN
1244: x_complete_rec.sel_type := l_cell_rec.sel_type;
1245: END IF;
1246:
1247: IF p_cell_rec.user_status_id = FND_API.g_miss_num THEN
1248: x_complete_rec.user_status_id := l_cell_rec.user_status_id;
1249: END IF;
1250:
1251: IF p_cell_rec.status_date = FND_API.g_miss_date THEN
1247: IF p_cell_rec.user_status_id = FND_API.g_miss_num THEN
1248: x_complete_rec.user_status_id := l_cell_rec.user_status_id;
1249: END IF;
1250:
1251: IF p_cell_rec.status_date = FND_API.g_miss_date THEN
1252: x_complete_rec.status_date := l_cell_rec.status_date;
1253: END IF;
1254:
1255: x_complete_rec.status_code := AMS_Utility_PVT.get_system_status_code(
1266: -- 01/19/01 yxliu Created.
1267: ---------------------------------------------------------------------
1268: PROCEDURE add_sel_workbook(
1269: p_api_version IN NUMBER,
1270: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1271: p_commit IN VARCHAR2 := FND_API.g_false,
1272: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1273:
1274: x_return_status OUT NOCOPY VARCHAR2,
1267: ---------------------------------------------------------------------
1268: PROCEDURE add_sel_workbook(
1269: p_api_version IN NUMBER,
1270: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1271: p_commit IN VARCHAR2 := FND_API.g_false,
1272: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1273:
1274: x_return_status OUT NOCOPY VARCHAR2,
1275: x_msg_count OUT NOCOPY NUMBER,
1268: PROCEDURE add_sel_workbook(
1269: p_api_version IN NUMBER,
1270: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1271: p_commit IN VARCHAR2 := FND_API.g_false,
1272: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1273:
1274: x_return_status OUT NOCOPY VARCHAR2,
1275: x_msg_count OUT NOCOPY NUMBER,
1276: x_msg_data OUT NOCOPY VARCHAR2,
1321: SAVEPOINT add_sel_workbook;
1322:
1323: AMS_Utility_PVT.debug_message(l_full_name||': start');
1324:
1325: IF FND_API.to_boolean(p_init_msg_list) THEN
1326: FND_MSG_PUB.initialize;
1327: END IF;
1328:
1329: IF NOT FND_API.compatible_api_call(
1325: IF FND_API.to_boolean(p_init_msg_list) THEN
1326: FND_MSG_PUB.initialize;
1327: END IF;
1328:
1329: IF NOT FND_API.compatible_api_call(
1330: l_api_version,
1331: p_api_version,
1332: l_api_name,
1333: g_pkg_name
1331: p_api_version,
1332: l_api_name,
1333: g_pkg_name
1334: ) THEN
1335: RAISE FND_API.g_exc_unexpected_error;
1336: END IF;
1337:
1338: x_return_status := FND_API.g_ret_sts_success;
1339:
1334: ) THEN
1335: RAISE FND_API.g_exc_unexpected_error;
1336: END IF;
1337:
1338: x_return_status := FND_API.g_ret_sts_success;
1339:
1340: ------------------------ start -------------------------
1341: AMS_Utility_PVT.debug_message(l_full_name ||': start');
1342:
1346: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1347: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
1348: FND_MSG_PUB.add;
1349: END IF;
1350: RAISE FND_API.g_exc_error;
1351: END IF;
1352: CLOSE c_discoverer_cell;
1353:
1354: ------------------ Verify the sql string --------------
1393: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1394: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_SQL');
1395: FND_MSG_PUB.add;
1396: END IF;
1397: RAISE FND_API.g_exc_error;
1398: -- x_return_status := FND_API.g_ret_sts_error;
1399: RETURN;
1400: END IF;
1401:
1394: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_SQL');
1395: FND_MSG_PUB.add;
1396: END IF;
1397: RAISE FND_API.g_exc_error;
1398: -- x_return_status := FND_API.g_ret_sts_error;
1399: RETURN;
1400: END IF;
1401:
1402:
1408: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1409: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_ORDERBY');
1410: FND_MSG_PUB.add;
1411: END IF;
1412: RAISE FND_API.g_exc_error;
1413: -- x_return_status := FND_API.g_ret_sts_error;
1414: RETURN;
1415: END IF;
1416:
1409: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_ORDERBY');
1410: FND_MSG_PUB.add;
1411: END IF;
1412: RAISE FND_API.g_exc_error;
1413: -- x_return_status := FND_API.g_ret_sts_error;
1414: RETURN;
1415: END IF;
1416:
1417:
1455:
1456:
1457: ------------------------- finish -------------------------------
1458:
1459: IF FND_API.to_boolean(p_commit) THEN
1460: COMMIT;
1461: END IF;
1462:
1463: FND_MSG_PUB.count_and_get(
1460: COMMIT;
1461: END IF;
1462:
1463: FND_MSG_PUB.count_and_get(
1464: p_encoded => FND_API.g_false,
1465: p_count => x_msg_count,
1466: p_data => x_msg_data
1467: );
1468:
1469: AMS_Utility_PVT.debug_message(l_full_name ||': end');
1470:
1471: EXCEPTION
1472:
1473: WHEN FND_API.g_exc_error THEN
1474: ROLLBACK TO add_sel_workbook;
1475: x_return_status := FND_API.g_ret_sts_error;
1476: FND_MSG_PUB.count_and_get(
1477: p_encoded => FND_API.g_false,
1471: EXCEPTION
1472:
1473: WHEN FND_API.g_exc_error THEN
1474: ROLLBACK TO add_sel_workbook;
1475: x_return_status := FND_API.g_ret_sts_error;
1476: FND_MSG_PUB.count_and_get(
1477: p_encoded => FND_API.g_false,
1478: p_count => x_msg_count,
1479: p_data => x_msg_data
1473: WHEN FND_API.g_exc_error THEN
1474: ROLLBACK TO add_sel_workbook;
1475: x_return_status := FND_API.g_ret_sts_error;
1476: FND_MSG_PUB.count_and_get(
1477: p_encoded => FND_API.g_false,
1478: p_count => x_msg_count,
1479: p_data => x_msg_data
1480: );
1481:
1478: p_count => x_msg_count,
1479: p_data => x_msg_data
1480: );
1481:
1482: WHEN FND_API.g_exc_unexpected_error THEN
1483: ROLLBACK TO add_sel_workbook;
1484: x_return_status := FND_API.g_ret_sts_unexp_error ;
1485: FND_MSG_PUB.count_and_get(
1486: p_encoded => FND_API.g_false,
1480: );
1481:
1482: WHEN FND_API.g_exc_unexpected_error THEN
1483: ROLLBACK TO add_sel_workbook;
1484: x_return_status := FND_API.g_ret_sts_unexp_error ;
1485: FND_MSG_PUB.count_and_get(
1486: p_encoded => FND_API.g_false,
1487: p_count => x_msg_count,
1488: p_data => x_msg_data
1482: WHEN FND_API.g_exc_unexpected_error THEN
1483: ROLLBACK TO add_sel_workbook;
1484: x_return_status := FND_API.g_ret_sts_unexp_error ;
1485: FND_MSG_PUB.count_and_get(
1486: p_encoded => FND_API.g_false,
1487: p_count => x_msg_count,
1488: p_data => x_msg_data
1489: );
1490:
1490:
1491:
1492: WHEN OTHERS THEN
1493: ROLLBACK TO add_sel_workbook;
1494: x_return_status := FND_API.g_ret_sts_unexp_error ;
1495:
1496: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
1497: THEN
1498: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1498: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1499: END IF;
1500:
1501: FND_MSG_PUB.count_and_get(
1502: p_encoded => FND_API.g_false,
1503: p_count => x_msg_count,
1504: p_data => x_msg_data
1505: );
1506:
1515: -- 04/10/01 yxliu Modified. Use AMS_List_Query_PVT.Create_List_Query.
1516: ---------------------------------------------------------------------
1517: PROCEDURE add_sel_sql(
1518: p_api_version IN NUMBER,
1519: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1520: p_commit IN VARCHAR2 := FND_API.g_false,
1521: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1522:
1523: x_return_status OUT NOCOPY VARCHAR2,
1516: ---------------------------------------------------------------------
1517: PROCEDURE add_sel_sql(
1518: p_api_version IN NUMBER,
1519: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1520: p_commit IN VARCHAR2 := FND_API.g_false,
1521: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1522:
1523: x_return_status OUT NOCOPY VARCHAR2,
1524: x_msg_count OUT NOCOPY NUMBER,
1517: PROCEDURE add_sel_sql(
1518: p_api_version IN NUMBER,
1519: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1520: p_commit IN VARCHAR2 := FND_API.g_false,
1521: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1522:
1523: x_return_status OUT NOCOPY VARCHAR2,
1524: x_msg_count OUT NOCOPY NUMBER,
1525: x_msg_data OUT NOCOPY VARCHAR2,
1540:
1541: l_sql_string VARCHAR2(20000) := p_sql_string;
1542:
1543: l_list_query_rec AMS_List_Query_PVT.list_query_rec_type := AMS_List_Query_PVT.g_miss_list_query_rec;
1544: l_list_query_id NUMBER := FND_API.G_MISS_NUM;
1545:
1546: l_from_position NUMBER := 0;
1547:
1548: BEGIN
1551: SAVEPOINT add_sel_sql;
1552:
1553: AMS_Utility_PVT.debug_message(l_full_name||': initialize');
1554:
1555: IF FND_API.to_boolean(p_init_msg_list) THEN
1556: FND_MSG_PUB.initialize;
1557: END IF;
1558:
1559: IF NOT FND_API.compatible_api_call(
1555: IF FND_API.to_boolean(p_init_msg_list) THEN
1556: FND_MSG_PUB.initialize;
1557: END IF;
1558:
1559: IF NOT FND_API.compatible_api_call(
1560: l_api_version,
1561: p_api_version,
1562: l_api_name,
1563: g_pkg_name
1561: p_api_version,
1562: l_api_name,
1563: g_pkg_name
1564: ) THEN
1565: RAISE FND_API.g_exc_unexpected_error;
1566: END IF;
1567:
1568: x_return_status := FND_API.g_ret_sts_success;
1569:
1564: ) THEN
1565: RAISE FND_API.g_exc_unexpected_error;
1566: END IF;
1567:
1568: x_return_status := FND_API.g_ret_sts_success;
1569:
1570: ------------------------ start -------------------------
1571: AMS_Utility_PVT.debug_message(l_full_name ||': start');
1572:
1598: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1599: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_SQL');
1600: FND_MSG_PUB.add;
1601: END IF;
1602: RAISE FND_API.g_exc_error;
1603: RETURN;
1604: END IF;
1605:
1606: IF instr(l_sql_string, 'ORDER BY') > 0
1609: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1610: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_ORDERBY');
1611: FND_MSG_PUB.add;
1612: END IF;
1613: RAISE FND_API.g_exc_error;
1614: -- x_return_status := FND_API.g_ret_sts_error;
1615: RETURN;
1616: END IF;
1617:
1610: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_ORDERBY');
1611: FND_MSG_PUB.add;
1612: END IF;
1613: RAISE FND_API.g_exc_error;
1614: -- x_return_status := FND_API.g_ret_sts_error;
1615: RETURN;
1616: END IF;
1617:
1618: ----------------------- Insert ---------------------------
1636: x_msg_data => x_msg_data,
1637: p_list_query_rec => l_list_query_rec,
1638: x_list_query_id => l_list_query_id
1639: );
1640: IF l_return_status = FND_API.g_ret_sts_error THEN
1641: RAISE FND_API.g_exc_error;
1642: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1643: RAISE FND_API.g_exc_unexpected_error;
1644: END IF;
1637: p_list_query_rec => l_list_query_rec,
1638: x_list_query_id => l_list_query_id
1639: );
1640: IF l_return_status = FND_API.g_ret_sts_error THEN
1641: RAISE FND_API.g_exc_error;
1642: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1643: RAISE FND_API.g_exc_unexpected_error;
1644: END IF;
1645:
1638: x_list_query_id => l_list_query_id
1639: );
1640: IF l_return_status = FND_API.g_ret_sts_error THEN
1641: RAISE FND_API.g_exc_error;
1642: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1643: RAISE FND_API.g_exc_unexpected_error;
1644: END IF;
1645:
1646: ------------------------- finish -------------------------------
1639: );
1640: IF l_return_status = FND_API.g_ret_sts_error THEN
1641: RAISE FND_API.g_exc_error;
1642: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1643: RAISE FND_API.g_exc_unexpected_error;
1644: END IF;
1645:
1646: ------------------------- finish -------------------------------
1647:
1644: END IF;
1645:
1646: ------------------------- finish -------------------------------
1647:
1648: IF FND_API.to_boolean(p_commit) THEN
1649: COMMIT;
1650: END IF;
1651:
1652: FND_MSG_PUB.count_and_get(
1649: COMMIT;
1650: END IF;
1651:
1652: FND_MSG_PUB.count_and_get(
1653: p_encoded => FND_API.g_false,
1654: p_count => x_msg_count,
1655: p_data => x_msg_data
1656: );
1657:
1658: AMS_Utility_PVT.debug_message(l_full_name ||': end');
1659:
1660: EXCEPTION
1661:
1662: WHEN FND_API.g_exc_error THEN
1663: ROLLBACK TO add_sel_sql;
1664: x_return_status := FND_API.g_ret_sts_error;
1665: FND_MSG_PUB.count_and_get(
1666: p_encoded => FND_API.g_false,
1660: EXCEPTION
1661:
1662: WHEN FND_API.g_exc_error THEN
1663: ROLLBACK TO add_sel_sql;
1664: x_return_status := FND_API.g_ret_sts_error;
1665: FND_MSG_PUB.count_and_get(
1666: p_encoded => FND_API.g_false,
1667: p_count => x_msg_count,
1668: p_data => x_msg_data
1662: WHEN FND_API.g_exc_error THEN
1663: ROLLBACK TO add_sel_sql;
1664: x_return_status := FND_API.g_ret_sts_error;
1665: FND_MSG_PUB.count_and_get(
1666: p_encoded => FND_API.g_false,
1667: p_count => x_msg_count,
1668: p_data => x_msg_data
1669: );
1670:
1667: p_count => x_msg_count,
1668: p_data => x_msg_data
1669: );
1670:
1671: WHEN FND_API.g_exc_unexpected_error THEN
1672: ROLLBACK TO add_sel_sql;
1673: x_return_status := FND_API.g_ret_sts_unexp_error ;
1674: FND_MSG_PUB.count_and_get(
1675: p_encoded => FND_API.g_false,
1669: );
1670:
1671: WHEN FND_API.g_exc_unexpected_error THEN
1672: ROLLBACK TO add_sel_sql;
1673: x_return_status := FND_API.g_ret_sts_unexp_error ;
1674: FND_MSG_PUB.count_and_get(
1675: p_encoded => FND_API.g_false,
1676: p_count => x_msg_count,
1677: p_data => x_msg_data
1671: WHEN FND_API.g_exc_unexpected_error THEN
1672: ROLLBACK TO add_sel_sql;
1673: x_return_status := FND_API.g_ret_sts_unexp_error ;
1674: FND_MSG_PUB.count_and_get(
1675: p_encoded => FND_API.g_false,
1676: p_count => x_msg_count,
1677: p_data => x_msg_data
1678: );
1679:
1679:
1680:
1681: WHEN OTHERS THEN
1682: ROLLBACK TO add_sel_sql;
1683: x_return_status := FND_API.g_ret_sts_unexp_error ;
1684:
1685: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
1686: THEN
1687: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1687: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1688: END IF;
1689:
1690: FND_MSG_PUB.count_and_get(
1691: p_encoded => FND_API.g_false,
1692: p_count => x_msg_count,
1693: p_data => x_msg_data
1694: );
1695:
1704: -- 01/17/01 yxliu Created.
1705: ---------------------------------------------------------------------
1706: PROCEDURE get_single_sql(
1707: p_api_version IN NUMBER,
1708: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1709: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1710:
1711: x_return_status OUT NOCOPY VARCHAR2,
1712: x_msg_count OUT NOCOPY NUMBER,
1705: ---------------------------------------------------------------------
1706: PROCEDURE get_single_sql(
1707: p_api_version IN NUMBER,
1708: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1709: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1710:
1711: x_return_status OUT NOCOPY VARCHAR2,
1712: x_msg_count OUT NOCOPY NUMBER,
1713: x_msg_data OUT NOCOPY VARCHAR2,
1752: --------------------- initialize -----------------------
1753:
1754: AMS_Utility_PVT.debug_message(l_full_name||': start');
1755:
1756: IF FND_API.to_boolean(p_init_msg_list) THEN
1757: FND_MSG_PUB.initialize;
1758: END IF;
1759:
1760: IF NOT FND_API.compatible_api_call(
1756: IF FND_API.to_boolean(p_init_msg_list) THEN
1757: FND_MSG_PUB.initialize;
1758: END IF;
1759:
1760: IF NOT FND_API.compatible_api_call(
1761: l_api_version,
1762: p_api_version,
1763: l_api_name,
1764: g_pkg_name
1762: p_api_version,
1763: l_api_name,
1764: g_pkg_name
1765: ) THEN
1766: RAISE FND_API.g_exc_unexpected_error;
1767: END IF;
1768:
1769: x_return_status := FND_API.g_ret_sts_success;
1770: x_sql_string := '';
1765: ) THEN
1766: RAISE FND_API.g_exc_unexpected_error;
1767: END IF;
1768:
1769: x_return_status := FND_API.g_ret_sts_success;
1770: x_sql_string := '';
1771:
1772: ---------------------- get sel type --------------------
1773: AMS_Utility_PVT.debug_message(l_full_name ||': get sel type');
1815:
1816: EXCEPTION
1817:
1818: WHEN NO_DATA_FOUND THEN
1819: x_return_status := FND_API.g_ret_sts_unexp_error ;
1820:
1821: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
1822: THEN
1823: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1823: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1824: END IF;
1825:
1826: FND_MSG_PUB.count_and_get(
1827: p_encoded => FND_API.g_false,
1828: p_count => x_msg_count,
1829: p_data => x_msg_data
1830: );
1831:
1828: p_count => x_msg_count,
1829: p_data => x_msg_data
1830: );
1831:
1832: WHEN FND_API.g_exc_error THEN
1833: x_return_status := FND_API.g_ret_sts_error;
1834: FND_MSG_PUB.count_and_get(
1835: p_encoded => FND_API.g_false,
1836: p_count => x_msg_count,
1829: p_data => x_msg_data
1830: );
1831:
1832: WHEN FND_API.g_exc_error THEN
1833: x_return_status := FND_API.g_ret_sts_error;
1834: FND_MSG_PUB.count_and_get(
1835: p_encoded => FND_API.g_false,
1836: p_count => x_msg_count,
1837: p_data => x_msg_data
1831:
1832: WHEN FND_API.g_exc_error THEN
1833: x_return_status := FND_API.g_ret_sts_error;
1834: FND_MSG_PUB.count_and_get(
1835: p_encoded => FND_API.g_false,
1836: p_count => x_msg_count,
1837: p_data => x_msg_data
1838: );
1839:
1836: p_count => x_msg_count,
1837: p_data => x_msg_data
1838: );
1839:
1840: WHEN FND_API.g_exc_unexpected_error THEN
1841: x_return_status := FND_API.g_ret_sts_unexp_error ;
1842: FND_MSG_PUB.count_and_get(
1843: p_encoded => FND_API.g_false,
1844: p_count => x_msg_count,
1837: p_data => x_msg_data
1838: );
1839:
1840: WHEN FND_API.g_exc_unexpected_error THEN
1841: x_return_status := FND_API.g_ret_sts_unexp_error ;
1842: FND_MSG_PUB.count_and_get(
1843: p_encoded => FND_API.g_false,
1844: p_count => x_msg_count,
1845: p_data => x_msg_data
1839:
1840: WHEN FND_API.g_exc_unexpected_error THEN
1841: x_return_status := FND_API.g_ret_sts_unexp_error ;
1842: FND_MSG_PUB.count_and_get(
1843: p_encoded => FND_API.g_false,
1844: p_count => x_msg_count,
1845: p_data => x_msg_data
1846: );
1847:
1855: -- 01/18/01 yxliu Created.
1856: ---------------------------------------------------------------------
1857: PROCEDURE get_comp_sql(
1858: p_api_version IN NUMBER,
1859: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1860: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1861:
1862: x_return_status OUT NOCOPY VARCHAR2,
1863: x_msg_count OUT NOCOPY NUMBER,
1856: ---------------------------------------------------------------------
1857: PROCEDURE get_comp_sql(
1858: p_api_version IN NUMBER,
1859: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
1860: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
1861:
1862: x_return_status OUT NOCOPY VARCHAR2,
1863: x_msg_count OUT NOCOPY NUMBER,
1864: x_msg_data OUT NOCOPY VARCHAR2,
1863: x_msg_count OUT NOCOPY NUMBER,
1864: x_msg_data OUT NOCOPY VARCHAR2,
1865:
1866: p_cell_id IN NUMBER,
1867: p_party_id_only IN VARCHAR2 := FND_API.g_false,
1868: x_sql_tbl OUT NOCOPY DBMS_SQL.VARCHAR2S
1869: )
1870: IS
1871:
1896: --------------------- initialize -----------------------
1897:
1898: AMS_Utility_PVT.debug_message(l_full_name||': start');
1899:
1900: IF FND_API.to_boolean(p_init_msg_list) THEN
1901: FND_MSG_PUB.initialize;
1902: END IF;
1903:
1904: IF NOT FND_API.compatible_api_call(
1900: IF FND_API.to_boolean(p_init_msg_list) THEN
1901: FND_MSG_PUB.initialize;
1902: END IF;
1903:
1904: IF NOT FND_API.compatible_api_call(
1905: l_api_version,
1906: p_api_version,
1907: l_api_name,
1908: g_pkg_name
1906: p_api_version,
1907: l_api_name,
1908: g_pkg_name
1909: ) THEN
1910: RAISE FND_API.g_exc_unexpected_error;
1911: END IF;
1912:
1913: x_return_status := FND_API.g_ret_sts_success;
1914: x_sql_tbl(1) := '';
1909: ) THEN
1910: RAISE FND_API.g_exc_unexpected_error;
1911: END IF;
1912:
1913: x_return_status := FND_API.g_ret_sts_success;
1914: x_sql_tbl(1) := '';
1915:
1916: ---------- get sql string for current cell ------------
1917: AMS_Utility_PVT.debug_message(l_full_name ||': get sql string for current cell');
1924: x_msg_data => x_msg_data,
1925: p_cell_id => l_cell_id,
1926: x_sql_string => l_sql_string
1927: );
1928: IF l_return_status = FND_API.g_ret_sts_error THEN
1929: RAISE FND_API.g_exc_error;
1930: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1931: RAISE FND_API.g_exc_unexpected_error;
1932: END IF;
1925: p_cell_id => l_cell_id,
1926: x_sql_string => l_sql_string
1927: );
1928: IF l_return_status = FND_API.g_ret_sts_error THEN
1929: RAISE FND_API.g_exc_error;
1930: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1931: RAISE FND_API.g_exc_unexpected_error;
1932: END IF;
1933:
1926: x_sql_string => l_sql_string
1927: );
1928: IF l_return_status = FND_API.g_ret_sts_error THEN
1929: RAISE FND_API.g_exc_error;
1930: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1931: RAISE FND_API.g_exc_unexpected_error;
1932: END IF;
1933:
1934:
1927: );
1928: IF l_return_status = FND_API.g_ret_sts_error THEN
1929: RAISE FND_API.g_exc_error;
1930: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1931: RAISE FND_API.g_exc_unexpected_error;
1932: END IF;
1933:
1934:
1935: -- if we only need party_id column for the current cell sql
1932: END IF;
1933:
1934:
1935: -- if we only need party_id column for the current cell sql
1936: IF FND_API.to_boolean(p_party_id_only) THEN
1937: l_sql_string1 := l_sql_string;
1938: format_sql_string(l_sql_string1, l_sql_string,l_party_id_string);
1939: END IF;
1940:
1981: );
1982:
1983: AMS_Utility_PVT.debug_message(l_full_name ||': return status from get single sql'|| x_return_status);
1984:
1985: IF x_return_status = FND_API.g_ret_sts_error THEN
1986: RAISE FND_API.g_exc_error;
1987: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
1988: RAISE FND_API.g_exc_unexpected_error;
1989: END IF;
1982:
1983: AMS_Utility_PVT.debug_message(l_full_name ||': return status from get single sql'|| x_return_status);
1984:
1985: IF x_return_status = FND_API.g_ret_sts_error THEN
1986: RAISE FND_API.g_exc_error;
1987: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
1988: RAISE FND_API.g_exc_unexpected_error;
1989: END IF;
1990:
1983: AMS_Utility_PVT.debug_message(l_full_name ||': return status from get single sql'|| x_return_status);
1984:
1985: IF x_return_status = FND_API.g_ret_sts_error THEN
1986: RAISE FND_API.g_exc_error;
1987: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
1988: RAISE FND_API.g_exc_unexpected_error;
1989: END IF;
1990:
1991: -- manipulate parent cell's sql string
1984:
1985: IF x_return_status = FND_API.g_ret_sts_error THEN
1986: RAISE FND_API.g_exc_error;
1987: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
1988: RAISE FND_API.g_exc_unexpected_error;
1989: END IF;
1990:
1991: -- manipulate parent cell's sql string
1992: l_parent_sql_string1 := l_parent_sql_string;
2055:
2056: WHEN NO_DATA_FOUND THEN
2057: AMS_Utility_PVT.debug_message(l_full_name || ': No Data Found error in get composite sql for cell ' || l_cell_id);
2058: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Please check if the workbook or sql statement is valid');
2059: x_return_status := FND_API.g_ret_sts_unexp_error ;
2060:
2061: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
2062: THEN
2063: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2063: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2064: END IF;
2065:
2066: FND_MSG_PUB.count_and_get(
2067: p_encoded => FND_API.g_false,
2068: p_count => x_msg_count,
2069: p_data => x_msg_data
2070: );
2071:
2068: p_count => x_msg_count,
2069: p_data => x_msg_data
2070: );
2071:
2072: WHEN FND_API.g_exc_error THEN
2073: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Expected error in get composite sql for cell '||l_cell_id);
2074: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Please check if the workbook or sql statement is valid');
2075:
2076: x_return_status := FND_API.g_ret_sts_error;
2072: WHEN FND_API.g_exc_error THEN
2073: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Expected error in get composite sql for cell '||l_cell_id);
2074: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Please check if the workbook or sql statement is valid');
2075:
2076: x_return_status := FND_API.g_ret_sts_error;
2077: FND_MSG_PUB.count_and_get(
2078: p_encoded => FND_API.g_false,
2079: p_count => x_msg_count,
2080: p_data => x_msg_data
2074: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Please check if the workbook or sql statement is valid');
2075:
2076: x_return_status := FND_API.g_ret_sts_error;
2077: FND_MSG_PUB.count_and_get(
2078: p_encoded => FND_API.g_false,
2079: p_count => x_msg_count,
2080: p_data => x_msg_data
2081: );
2082:
2079: p_count => x_msg_count,
2080: p_data => x_msg_data
2081: );
2082:
2083: WHEN FND_API.g_exc_unexpected_error THEN
2084: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Unexpected error in get composite sql for cell ' || l_cell_id);
2085: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Please check if the workbook or sql statement is valid');
2086: x_return_status := FND_API.g_ret_sts_unexp_error ;
2087: FND_MSG_PUB.count_and_get(
2082:
2083: WHEN FND_API.g_exc_unexpected_error THEN
2084: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Unexpected error in get composite sql for cell ' || l_cell_id);
2085: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Please check if the workbook or sql statement is valid');
2086: x_return_status := FND_API.g_ret_sts_unexp_error ;
2087: FND_MSG_PUB.count_and_get(
2088: p_encoded => FND_API.g_false,
2089: p_count => x_msg_count,
2090: p_data => x_msg_data
2084: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Unexpected error in get composite sql for cell ' || l_cell_id);
2085: AMS_Utility_Pvt.Debug_Message(l_full_name || ': Please check if the workbook or sql statement is valid');
2086: x_return_status := FND_API.g_ret_sts_unexp_error ;
2087: FND_MSG_PUB.count_and_get(
2088: p_encoded => FND_API.g_false,
2089: p_count => x_msg_count,
2090: p_data => x_msg_data
2091: );
2092:
2092:
2093: WHEN OTHERS THEN
2094: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Error in get composite sql for cell ' || l_cell_id);
2095: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Please check if the workbook or sql statement is valid');
2096: x_return_status := FND_API.g_ret_sts_unexp_error ;
2097: FND_MSG_PUB.count_and_get(
2098: p_encoded => FND_API.g_false,
2099: p_count => x_msg_count,
2100: p_data => x_msg_data
2094: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Error in get composite sql for cell ' || l_cell_id);
2095: AMS_Utility_Pvt.Debug_Message(l_full_name ||': Please check if the workbook or sql statement is valid');
2096: x_return_status := FND_API.g_ret_sts_unexp_error ;
2097: FND_MSG_PUB.count_and_get(
2098: p_encoded => FND_API.g_false,
2099: p_count => x_msg_count,
2100: p_data => x_msg_data
2101: );
2102:
2161: -- if there is no party_id in the select clause, raise exception
2162: IF instr(upper(l_string), 'PARTY_ID') = 0
2163: OR instr(upper(l_string), 'PARTY_ID',1,1) > instr(upper(l_string), 'FROM',1,1)
2164: THEN
2165: RAISE FND_API.g_exc_unexpected_error;
2166:
2167: ELSIF instr(upper(l_string), '.PARTY_ID') = 0 THEN
2168: -- simple select ... party_id .... from ...
2169: x_string := concat('SELECT DISTINCT PARTY_ID ',
2203: -- 03/01/2001 yxliu Created.
2204: ---------------------------------------------------------------------
2205: PROCEDURE get_workbook_sql(
2206: p_api_version IN NUMBER,
2207: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2208: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2209:
2210: x_return_status OUT NOCOPY VARCHAR2,
2211: x_msg_count OUT NOCOPY NUMBER,
2204: ---------------------------------------------------------------------
2205: PROCEDURE get_workbook_sql(
2206: p_api_version IN NUMBER,
2207: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2208: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2209:
2210: x_return_status OUT NOCOPY VARCHAR2,
2211: x_msg_count OUT NOCOPY NUMBER,
2212: x_msg_data OUT NOCOPY VARCHAR2,
2249: --------------------- initialize -----------------------
2250:
2251: AMS_Utility_PVT.debug_message(l_full_name||': start');
2252:
2253: IF FND_API.to_boolean(p_init_msg_list) THEN
2254: FND_MSG_PUB.initialize;
2255: END IF;
2256:
2257: IF NOT FND_API.compatible_api_call(
2253: IF FND_API.to_boolean(p_init_msg_list) THEN
2254: FND_MSG_PUB.initialize;
2255: END IF;
2256:
2257: IF NOT FND_API.compatible_api_call(
2258: l_api_version,
2259: p_api_version,
2260: l_api_name,
2261: g_pkg_name
2259: p_api_version,
2260: l_api_name,
2261: g_pkg_name
2262: ) THEN
2263: RAISE FND_API.g_exc_unexpected_error;
2264: END IF;
2265:
2266: x_return_status := FND_API.g_ret_sts_success;
2267: x_sql_string := '';
2262: ) THEN
2263: RAISE FND_API.g_exc_unexpected_error;
2264: END IF;
2265:
2266: x_return_status := FND_API.g_ret_sts_success;
2267: x_sql_string := '';
2268:
2269: ------------------- get sql string ---------------------
2270:
2289: ------------------------- finish -------------------------------
2290: x_sql_string := l_sql_string;
2291:
2292: FND_MSG_PUB.count_and_get(
2293: p_encoded => FND_API.g_false,
2294: p_count => x_msg_count,
2295: p_data => x_msg_data
2296: );
2297:
2299:
2300: EXCEPTION
2301:
2302: WHEN NO_DATA_FOUND THEN
2303: x_return_status := FND_API.g_ret_sts_unexp_error ;
2304:
2305: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
2306: THEN
2307: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2307: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2308: END IF;
2309:
2310: FND_MSG_PUB.count_and_get(
2311: p_encoded => FND_API.g_false,
2312: p_count => x_msg_count,
2313: p_data => x_msg_data
2314: );
2315:
2312: p_count => x_msg_count,
2313: p_data => x_msg_data
2314: );
2315:
2316: WHEN FND_API.g_exc_error THEN
2317: x_return_status := FND_API.g_ret_sts_error;
2318: FND_MSG_PUB.count_and_get(
2319: p_encoded => FND_API.g_false,
2320: p_count => x_msg_count,
2313: p_data => x_msg_data
2314: );
2315:
2316: WHEN FND_API.g_exc_error THEN
2317: x_return_status := FND_API.g_ret_sts_error;
2318: FND_MSG_PUB.count_and_get(
2319: p_encoded => FND_API.g_false,
2320: p_count => x_msg_count,
2321: p_data => x_msg_data
2315:
2316: WHEN FND_API.g_exc_error THEN
2317: x_return_status := FND_API.g_ret_sts_error;
2318: FND_MSG_PUB.count_and_get(
2319: p_encoded => FND_API.g_false,
2320: p_count => x_msg_count,
2321: p_data => x_msg_data
2322: );
2323:
2320: p_count => x_msg_count,
2321: p_data => x_msg_data
2322: );
2323:
2324: WHEN FND_API.g_exc_unexpected_error THEN
2325: x_return_status := FND_API.g_ret_sts_unexp_error ;
2326: FND_MSG_PUB.count_and_get(
2327: p_encoded => FND_API.g_false,
2328: p_count => x_msg_count,
2321: p_data => x_msg_data
2322: );
2323:
2324: WHEN FND_API.g_exc_unexpected_error THEN
2325: x_return_status := FND_API.g_ret_sts_unexp_error ;
2326: FND_MSG_PUB.count_and_get(
2327: p_encoded => FND_API.g_false,
2328: p_count => x_msg_count,
2329: p_data => x_msg_data
2323:
2324: WHEN FND_API.g_exc_unexpected_error THEN
2325: x_return_status := FND_API.g_ret_sts_unexp_error ;
2326: FND_MSG_PUB.count_and_get(
2327: p_encoded => FND_API.g_false,
2328: p_count => x_msg_count,
2329: p_data => x_msg_data
2330: );
2331:
2342: -- 03/01/2001 yxliu Created.
2343: ---------------------------------------------------------------------
2344: PROCEDURE get_segment_size(
2345: p_api_version IN NUMBER,
2346: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2347: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2348:
2349: x_return_status OUT NOCOPY VARCHAR2,
2350: x_msg_count OUT NOCOPY NUMBER,
2343: ---------------------------------------------------------------------
2344: PROCEDURE get_segment_size(
2345: p_api_version IN NUMBER,
2346: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2347: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2348:
2349: x_return_status OUT NOCOPY VARCHAR2,
2350: x_msg_count OUT NOCOPY NUMBER,
2351: x_msg_data OUT NOCOPY VARCHAR2,
2372: --------------------- initialize -----------------------
2373:
2374: AMS_Utility_PVT.debug_message(l_full_name||': start');
2375:
2376: IF FND_API.to_boolean(p_init_msg_list) THEN
2377: FND_MSG_PUB.initialize;
2378: END IF;
2379:
2380: IF NOT FND_API.compatible_api_call(
2376: IF FND_API.to_boolean(p_init_msg_list) THEN
2377: FND_MSG_PUB.initialize;
2378: END IF;
2379:
2380: IF NOT FND_API.compatible_api_call(
2381: l_api_version,
2382: p_api_version,
2383: l_api_name,
2384: g_pkg_name
2382: p_api_version,
2383: l_api_name,
2384: g_pkg_name
2385: ) THEN
2386: RAISE FND_API.g_exc_unexpected_error;
2387: END IF;
2388:
2389: x_return_status := FND_API.g_ret_sts_success;
2390:
2385: ) THEN
2386: RAISE FND_API.g_exc_unexpected_error;
2387: END IF;
2388:
2389: x_return_status := FND_API.g_ret_sts_success;
2390:
2391: ------------------ Validate sql string ----------------------
2392: AMS_Utility_PVT.debug_message(l_full_name||': validate sql string');
2393:
2398: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2399: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_SQL');
2400: FND_MSG_PUB.add;
2401: END IF;
2402: RAISE FND_API.g_exc_error;
2403: -- x_return_status := FND_API.g_ret_sts_error;
2404: RETURN;
2405: END IF;
2406:
2399: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_SQL');
2400: FND_MSG_PUB.add;
2401: END IF;
2402: RAISE FND_API.g_exc_error;
2403: -- x_return_status := FND_API.g_ret_sts_error;
2404: RETURN;
2405: END IF;
2406:
2407: ------------------- get segment size ---------------------
2427:
2428: ------------------------- finish -------------------------------
2429:
2430: FND_MSG_PUB.count_and_get(
2431: p_encoded => FND_API.g_false,
2432: p_count => x_msg_count,
2433: p_data => x_msg_data
2434: );
2435:
2437:
2438: EXCEPTION
2439:
2440: WHEN NO_DATA_FOUND THEN
2441: x_return_status := FND_API.g_ret_sts_unexp_error ;
2442:
2443: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
2444: THEN
2445: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2445: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2446: END IF;
2447:
2448: FND_MSG_PUB.count_and_get(
2449: p_encoded => FND_API.g_false,
2450: p_count => x_msg_count,
2451: p_data => x_msg_data
2452: );
2453:
2450: p_count => x_msg_count,
2451: p_data => x_msg_data
2452: );
2453:
2454: WHEN FND_API.g_exc_error THEN
2455: x_return_status := FND_API.g_ret_sts_error;
2456: FND_MSG_PUB.count_and_get(
2457: p_encoded => FND_API.g_false,
2458: p_count => x_msg_count,
2451: p_data => x_msg_data
2452: );
2453:
2454: WHEN FND_API.g_exc_error THEN
2455: x_return_status := FND_API.g_ret_sts_error;
2456: FND_MSG_PUB.count_and_get(
2457: p_encoded => FND_API.g_false,
2458: p_count => x_msg_count,
2459: p_data => x_msg_data
2453:
2454: WHEN FND_API.g_exc_error THEN
2455: x_return_status := FND_API.g_ret_sts_error;
2456: FND_MSG_PUB.count_and_get(
2457: p_encoded => FND_API.g_false,
2458: p_count => x_msg_count,
2459: p_data => x_msg_data
2460: );
2461:
2458: p_count => x_msg_count,
2459: p_data => x_msg_data
2460: );
2461:
2462: WHEN FND_API.g_exc_unexpected_error THEN
2463: x_return_status := FND_API.g_ret_sts_unexp_error ;
2464: FND_MSG_PUB.count_and_get(
2465: p_encoded => FND_API.g_false,
2466: p_count => x_msg_count,
2459: p_data => x_msg_data
2460: );
2461:
2462: WHEN FND_API.g_exc_unexpected_error THEN
2463: x_return_status := FND_API.g_ret_sts_unexp_error ;
2464: FND_MSG_PUB.count_and_get(
2465: p_encoded => FND_API.g_false,
2466: p_count => x_msg_count,
2467: p_data => x_msg_data
2461:
2462: WHEN FND_API.g_exc_unexpected_error THEN
2463: x_return_status := FND_API.g_ret_sts_unexp_error ;
2464: FND_MSG_PUB.count_and_get(
2465: p_encoded => FND_API.g_false,
2466: p_count => x_msg_count,
2467: p_data => x_msg_data
2468: );
2469:
2467: p_data => x_msg_data
2468: );
2469:
2470: WHEN OTHERS THEN
2471: x_return_status := FND_API.g_ret_sts_unexp_error ;
2472:
2473: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
2474: THEN
2475: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2475: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2476: END IF;
2477:
2478: FND_MSG_PUB.count_and_get(
2479: p_encoded => FND_API.g_false,
2480: p_count => x_msg_count,
2481: p_data => x_msg_data
2482: );
2483: END get_segment_size;
2499: -- returned records to get count
2500: ---------------------------------------------------------------------
2501: PROCEDURE get_comp_segment_size(
2502: p_api_version IN NUMBER,
2503: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2504: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2505:
2506: x_return_status OUT NOCOPY VARCHAR2,
2507: x_msg_count OUT NOCOPY NUMBER,
2500: ---------------------------------------------------------------------
2501: PROCEDURE get_comp_segment_size(
2502: p_api_version IN NUMBER,
2503: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2504: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2505:
2506: x_return_status OUT NOCOPY VARCHAR2,
2507: x_msg_count OUT NOCOPY NUMBER,
2508: x_msg_data OUT NOCOPY VARCHAR2,
2533: --------------------- initialize -----------------------
2534:
2535: AMS_Utility_PVT.debug_message(l_full_name||': start');
2536:
2537: IF FND_API.to_boolean(p_init_msg_list) THEN
2538: FND_MSG_PUB.initialize;
2539: END IF;
2540:
2541: IF NOT FND_API.compatible_api_call(
2537: IF FND_API.to_boolean(p_init_msg_list) THEN
2538: FND_MSG_PUB.initialize;
2539: END IF;
2540:
2541: IF NOT FND_API.compatible_api_call(
2542: l_api_version,
2543: p_api_version,
2544: l_api_name,
2545: g_pkg_name
2543: p_api_version,
2544: l_api_name,
2545: g_pkg_name
2546: ) THEN
2547: RAISE FND_API.g_exc_unexpected_error;
2548: END IF;
2549:
2550: x_return_status := FND_API.g_ret_sts_success;
2551:
2546: ) THEN
2547: RAISE FND_API.g_exc_unexpected_error;
2548: END IF;
2549:
2550: x_return_status := FND_API.g_ret_sts_success;
2551:
2552: ------------------ Get comp sql string ----------------------
2553: AMS_Utility_PVT.debug_message(l_full_name||': get comp sql string');
2554: AMS_CELL_PVT.get_comp_sql(
2558: x_return_status => x_return_status,
2559: x_msg_count => x_msg_count,
2560: x_msg_data => x_msg_data,
2561: p_cell_id => l_cell_id,
2562: p_party_id_only => FND_API.g_true,
2563: x_sql_tbl => l_sql_tbl
2564: );
2565:
2566: IF x_return_status = FND_API.g_ret_sts_error THEN
2562: p_party_id_only => FND_API.g_true,
2563: x_sql_tbl => l_sql_tbl
2564: );
2565:
2566: IF x_return_status = FND_API.g_ret_sts_error THEN
2567: RAISE FND_API.g_exc_error;
2568: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
2569: RAISE FND_API.g_exc_unexpected_error;
2570: END IF;
2563: x_sql_tbl => l_sql_tbl
2564: );
2565:
2566: IF x_return_status = FND_API.g_ret_sts_error THEN
2567: RAISE FND_API.g_exc_error;
2568: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
2569: RAISE FND_API.g_exc_unexpected_error;
2570: END IF;
2571:
2564: );
2565:
2566: IF x_return_status = FND_API.g_ret_sts_error THEN
2567: RAISE FND_API.g_exc_error;
2568: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
2569: RAISE FND_API.g_exc_unexpected_error;
2570: END IF;
2571:
2572:
2565:
2566: IF x_return_status = FND_API.g_ret_sts_error THEN
2567: RAISE FND_API.g_exc_error;
2568: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
2569: RAISE FND_API.g_exc_unexpected_error;
2570: END IF;
2571:
2572:
2573: ------------------- get segment size ---------------------
2619:
2620: AMS_Utility_PVT.debug_message(l_full_name ||': x_segment_size:'||x_segment_size);
2621:
2622: FND_MSG_PUB.count_and_get(
2623: p_encoded => FND_API.g_false,
2624: p_count => x_msg_count,
2625: p_data => x_msg_data
2626: );
2627:
2628: AMS_Utility_PVT.debug_message(l_full_name ||': end');
2629:
2630: EXCEPTION
2631:
2632: WHEN FND_API.g_exc_error THEN
2633: IF (DBMS_SQL.Is_Open(l_party_cur) = TRUE) THEN
2634: DBMS_SQL.Close_Cursor(l_party_cur) ;
2635: END IF;
2636: x_return_status := FND_API.g_ret_sts_error;
2632: WHEN FND_API.g_exc_error THEN
2633: IF (DBMS_SQL.Is_Open(l_party_cur) = TRUE) THEN
2634: DBMS_SQL.Close_Cursor(l_party_cur) ;
2635: END IF;
2636: x_return_status := FND_API.g_ret_sts_error;
2637: FND_MSG_PUB.count_and_get(
2638: p_encoded => FND_API.g_false,
2639: p_count => x_msg_count,
2640: p_data => x_msg_data
2634: DBMS_SQL.Close_Cursor(l_party_cur) ;
2635: END IF;
2636: x_return_status := FND_API.g_ret_sts_error;
2637: FND_MSG_PUB.count_and_get(
2638: p_encoded => FND_API.g_false,
2639: p_count => x_msg_count,
2640: p_data => x_msg_data
2641: );
2642:
2639: p_count => x_msg_count,
2640: p_data => x_msg_data
2641: );
2642:
2643: WHEN FND_API.g_exc_unexpected_error THEN
2644: IF (DBMS_SQL.Is_Open(l_party_cur) = TRUE) THEN
2645: DBMS_SQL.Close_Cursor(l_party_cur) ;
2646: END IF;
2647: x_return_status := FND_API.g_ret_sts_unexp_error ;
2643: WHEN FND_API.g_exc_unexpected_error THEN
2644: IF (DBMS_SQL.Is_Open(l_party_cur) = TRUE) THEN
2645: DBMS_SQL.Close_Cursor(l_party_cur) ;
2646: END IF;
2647: x_return_status := FND_API.g_ret_sts_unexp_error ;
2648: FND_MSG_PUB.count_and_get(
2649: p_encoded => FND_API.g_false,
2650: p_count => x_msg_count,
2651: p_data => x_msg_data
2645: DBMS_SQL.Close_Cursor(l_party_cur) ;
2646: END IF;
2647: x_return_status := FND_API.g_ret_sts_unexp_error ;
2648: FND_MSG_PUB.count_and_get(
2649: p_encoded => FND_API.g_false,
2650: p_count => x_msg_count,
2651: p_data => x_msg_data
2652: );
2653:
2654: WHEN OTHERS THEN
2655: IF (DBMS_SQL.Is_Open(l_party_cur) = TRUE) THEN
2656: DBMS_SQL.Close_Cursor(l_party_cur) ;
2657: END IF;
2658: x_return_status := FND_API.g_ret_sts_unexp_error ;
2659:
2660: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
2661: THEN
2662: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2662: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2663: END IF;
2664:
2665: FND_MSG_PUB.count_and_get(
2666: p_encoded => FND_API.g_false,
2667: p_count => x_msg_count,
2668: p_data => x_msg_data
2669: );
2670: END get_comp_segment_size;
2678: -- corresponding mapping tables
2679: ---------------------------------------------------------------------
2680: PROCEDURE create_sql_cell(
2681: p_api_version IN NUMBER,
2682: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2683: p_commit IN VARCHAR2 := FND_API.g_false,
2684: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2685:
2686: x_return_status OUT NOCOPY VARCHAR2,
2679: ---------------------------------------------------------------------
2680: PROCEDURE create_sql_cell(
2681: p_api_version IN NUMBER,
2682: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2683: p_commit IN VARCHAR2 := FND_API.g_false,
2684: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2685:
2686: x_return_status OUT NOCOPY VARCHAR2,
2687: x_msg_count OUT NOCOPY NUMBER,
2680: PROCEDURE create_sql_cell(
2681: p_api_version IN NUMBER,
2682: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2683: p_commit IN VARCHAR2 := FND_API.g_false,
2684: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2685:
2686: x_return_status OUT NOCOPY VARCHAR2,
2687: x_msg_count OUT NOCOPY NUMBER,
2688: x_msg_data OUT NOCOPY VARCHAR2,
2706: SAVEPOINT create_sql_cell;
2707:
2708: AMS_Utility_PVT.debug_message(l_full_name||': start');
2709:
2710: IF FND_API.to_boolean(p_init_msg_list) THEN
2711: FND_MSG_PUB.initialize;
2712: END IF;
2713:
2714: IF NOT FND_API.compatible_api_call(
2710: IF FND_API.to_boolean(p_init_msg_list) THEN
2711: FND_MSG_PUB.initialize;
2712: END IF;
2713:
2714: IF NOT FND_API.compatible_api_call(
2715: l_api_version,
2716: p_api_version,
2717: l_api_name,
2718: g_pkg_name
2716: p_api_version,
2717: l_api_name,
2718: g_pkg_name
2719: ) THEN
2720: RAISE FND_API.g_exc_unexpected_error;
2721: END IF;
2722:
2723: x_return_status := FND_API.g_ret_sts_success;
2724:
2719: ) THEN
2720: RAISE FND_API.g_exc_unexpected_error;
2721: END IF;
2722:
2723: x_return_status := FND_API.g_ret_sts_success;
2724:
2725: ------------------ call create_cell -------------------
2726:
2727: --bmuthukr bug 5130570
2727: --bmuthukr bug 5130570
2728: if trim(l_sql_cell_rec.list_sql_string) is null AND l_sql_cell_rec.sel_type = 'SQL' then
2729: FND_MESSAGE.set_name('AMS', 'AMS_CELL_BLANK_SQL');
2730: FND_MSG_PUB.add;
2731: RAISE FND_API.g_exc_error;
2732: end if;
2733: --
2734:
2735: AMS_Utility_PVT.debug_message(l_full_name ||': create_cell');
2758: create_cell(
2759: p_api_version => l_api_version,
2760: p_init_msg_list => p_init_msg_list,
2761: p_validation_level => p_validation_level,
2762: p_commit => FND_API.g_false,
2763: x_return_status => l_return_status,
2764: x_msg_count => x_msg_count,
2765: x_msg_data => x_msg_data,
2766: p_cell_rec => l_cell_rec,
2766: p_cell_rec => l_cell_rec,
2767: x_cell_id => x_cell_id
2768: );
2769:
2770: IF l_return_status = FND_API.g_ret_sts_error THEN
2771: RAISE FND_API.g_exc_error;
2772: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2773: RAISE FND_API.g_exc_unexpected_error;
2774: END IF;
2767: x_cell_id => x_cell_id
2768: );
2769:
2770: IF l_return_status = FND_API.g_ret_sts_error THEN
2771: RAISE FND_API.g_exc_error;
2772: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2773: RAISE FND_API.g_exc_unexpected_error;
2774: END IF;
2775:
2768: );
2769:
2770: IF l_return_status = FND_API.g_ret_sts_error THEN
2771: RAISE FND_API.g_exc_error;
2772: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2773: RAISE FND_API.g_exc_unexpected_error;
2774: END IF;
2775:
2776: --------------------- add selection ----------------------------
2769:
2770: IF l_return_status = FND_API.g_ret_sts_error THEN
2771: RAISE FND_API.g_exc_error;
2772: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2773: RAISE FND_API.g_exc_unexpected_error;
2774: END IF;
2775:
2776: --------------------- add selection ----------------------------
2777: AMS_Utility_PVT.debug_message(l_full_name ||': add selection');
2779: AND l_sql_cell_rec.discoverer_sql_id IS NOT NULL THEN
2780: add_sel_workbook(
2781: p_api_version => l_api_version,
2782: p_init_msg_list => p_init_msg_list,
2783: p_commit => FND_API.g_false,
2784: p_validation_level => p_validation_level,
2785: x_return_status => l_return_status,
2786: x_msg_count => x_msg_count,
2787: x_msg_data => x_msg_data,
2787: x_msg_data => x_msg_data,
2788: p_cell_id => x_cell_id,
2789: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
2790: );
2791: IF l_return_status = FND_API.g_ret_sts_error THEN
2792: RAISE FND_API.g_exc_error;
2793: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2794: RAISE FND_API.g_exc_unexpected_error;
2795: END IF;
2788: p_cell_id => x_cell_id,
2789: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
2790: );
2791: IF l_return_status = FND_API.g_ret_sts_error THEN
2792: RAISE FND_API.g_exc_error;
2793: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2794: RAISE FND_API.g_exc_unexpected_error;
2795: END IF;
2796: ELSIF 'SQL' = upper(l_sql_cell_rec.sel_type) THEN
2789: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
2790: );
2791: IF l_return_status = FND_API.g_ret_sts_error THEN
2792: RAISE FND_API.g_exc_error;
2793: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2794: RAISE FND_API.g_exc_unexpected_error;
2795: END IF;
2796: ELSIF 'SQL' = upper(l_sql_cell_rec.sel_type) THEN
2797: add_sel_sql(
2790: );
2791: IF l_return_status = FND_API.g_ret_sts_error THEN
2792: RAISE FND_API.g_exc_error;
2793: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2794: RAISE FND_API.g_exc_unexpected_error;
2795: END IF;
2796: ELSIF 'SQL' = upper(l_sql_cell_rec.sel_type) THEN
2797: add_sel_sql(
2798: p_api_version => l_api_version,
2796: ELSIF 'SQL' = upper(l_sql_cell_rec.sel_type) THEN
2797: add_sel_sql(
2798: p_api_version => l_api_version,
2799: p_init_msg_list => p_init_msg_list,
2800: p_commit => FND_API.g_false,
2801: p_validation_level => p_validation_level,
2802: x_return_status => l_return_status,
2803: x_msg_count => x_msg_count,
2804: x_msg_data => x_msg_data,
2807: p_cell_code => l_sql_cell_rec.cell_code,
2808: p_sql_string => l_sql_cell_rec.list_sql_string,
2809: p_source_object_name => l_sql_cell_rec.source_object_name
2810: );
2811: IF l_return_status = FND_API.g_ret_sts_error THEN
2812: RAISE FND_API.g_exc_error;
2813: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2814: RAISE FND_API.g_exc_unexpected_error;
2815: END IF;
2808: p_sql_string => l_sql_cell_rec.list_sql_string,
2809: p_source_object_name => l_sql_cell_rec.source_object_name
2810: );
2811: IF l_return_status = FND_API.g_ret_sts_error THEN
2812: RAISE FND_API.g_exc_error;
2813: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2814: RAISE FND_API.g_exc_unexpected_error;
2815: END IF;
2816: END IF;
2809: p_source_object_name => l_sql_cell_rec.source_object_name
2810: );
2811: IF l_return_status = FND_API.g_ret_sts_error THEN
2812: RAISE FND_API.g_exc_error;
2813: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2814: RAISE FND_API.g_exc_unexpected_error;
2815: END IF;
2816: END IF;
2817:
2810: );
2811: IF l_return_status = FND_API.g_ret_sts_error THEN
2812: RAISE FND_API.g_exc_error;
2813: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2814: RAISE FND_API.g_exc_unexpected_error;
2815: END IF;
2816: END IF;
2817:
2818: ------------------------- finish -------------------------------
2816: END IF;
2817:
2818: ------------------------- finish -------------------------------
2819:
2820: IF FND_API.to_boolean(p_commit) THEN
2821: COMMIT;
2822: END IF;
2823:
2824: FND_MSG_PUB.count_and_get(
2821: COMMIT;
2822: END IF;
2823:
2824: FND_MSG_PUB.count_and_get(
2825: p_encoded => FND_API.g_false,
2826: p_count => x_msg_count,
2827: p_data => x_msg_data
2828: );
2829:
2830: AMS_Utility_PVT.debug_message(l_full_name ||': end');
2831:
2832: EXCEPTION
2833:
2834: WHEN FND_API.g_exc_error THEN
2835: ROLLBACK TO create_sql_cell;
2836: x_return_status := FND_API.g_ret_sts_error;
2837: FND_MSG_PUB.count_and_get(
2838: p_encoded => FND_API.g_false,
2832: EXCEPTION
2833:
2834: WHEN FND_API.g_exc_error THEN
2835: ROLLBACK TO create_sql_cell;
2836: x_return_status := FND_API.g_ret_sts_error;
2837: FND_MSG_PUB.count_and_get(
2838: p_encoded => FND_API.g_false,
2839: p_count => x_msg_count,
2840: p_data => x_msg_data
2834: WHEN FND_API.g_exc_error THEN
2835: ROLLBACK TO create_sql_cell;
2836: x_return_status := FND_API.g_ret_sts_error;
2837: FND_MSG_PUB.count_and_get(
2838: p_encoded => FND_API.g_false,
2839: p_count => x_msg_count,
2840: p_data => x_msg_data
2841: );
2842: WHEN FND_API.g_exc_unexpected_error THEN
2838: p_encoded => FND_API.g_false,
2839: p_count => x_msg_count,
2840: p_data => x_msg_data
2841: );
2842: WHEN FND_API.g_exc_unexpected_error THEN
2843: ROLLBACK TO create_sql_cell;
2844: x_return_status := FND_API.g_ret_sts_unexp_error ;
2845: FND_MSG_PUB.count_and_get(
2846: p_encoded => FND_API.g_false,
2840: p_data => x_msg_data
2841: );
2842: WHEN FND_API.g_exc_unexpected_error THEN
2843: ROLLBACK TO create_sql_cell;
2844: x_return_status := FND_API.g_ret_sts_unexp_error ;
2845: FND_MSG_PUB.count_and_get(
2846: p_encoded => FND_API.g_false,
2847: p_count => x_msg_count,
2848: p_data => x_msg_data
2842: WHEN FND_API.g_exc_unexpected_error THEN
2843: ROLLBACK TO create_sql_cell;
2844: x_return_status := FND_API.g_ret_sts_unexp_error ;
2845: FND_MSG_PUB.count_and_get(
2846: p_encoded => FND_API.g_false,
2847: p_count => x_msg_count,
2848: p_data => x_msg_data
2849: );
2850:
2849: );
2850:
2851: WHEN OTHERS THEN
2852: ROLLBACK TO create_sql_cell;
2853: x_return_status := FND_API.g_ret_sts_unexp_error ;
2854:
2855: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
2856: THEN
2857: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2857: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
2858: END IF;
2859:
2860: FND_MSG_PUB.count_and_get(
2861: p_encoded => FND_API.g_false,
2862: p_count => x_msg_count,
2863: p_data => x_msg_data
2864: );
2865: END create_sql_cell;
2879: -- 08/31/01 yxliu Add get proper FROM position for validate sql string
2880: ---------------------------------------------------------------------
2881: PROCEDURE update_sql_cell(
2882: p_api_version IN NUMBER,
2883: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2884: p_commit IN VARCHAR2 := FND_API.g_false,
2885: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2886:
2887: x_return_status OUT NOCOPY VARCHAR2,
2880: ---------------------------------------------------------------------
2881: PROCEDURE update_sql_cell(
2882: p_api_version IN NUMBER,
2883: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2884: p_commit IN VARCHAR2 := FND_API.g_false,
2885: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2886:
2887: x_return_status OUT NOCOPY VARCHAR2,
2888: x_msg_count OUT NOCOPY NUMBER,
2881: PROCEDURE update_sql_cell(
2882: p_api_version IN NUMBER,
2883: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
2884: p_commit IN VARCHAR2 := FND_API.g_false,
2885: p_validation_level IN NUMBER := FND_API.g_valid_level_full,
2886:
2887: x_return_status OUT NOCOPY VARCHAR2,
2888: x_msg_count OUT NOCOPY NUMBER,
2889: x_msg_data OUT NOCOPY VARCHAR2,
2925: SAVEPOINT update_sql_cell;
2926:
2927: AMS_Utility_PVT.debug_message(l_full_name||': start');
2928:
2929: IF FND_API.to_boolean(p_init_msg_list) THEN
2930: FND_MSG_PUB.initialize;
2931: END IF;
2932:
2933: IF NOT FND_API.compatible_api_call(
2929: IF FND_API.to_boolean(p_init_msg_list) THEN
2930: FND_MSG_PUB.initialize;
2931: END IF;
2932:
2933: IF NOT FND_API.compatible_api_call(
2934: l_api_version,
2935: p_api_version,
2936: l_api_name,
2937: g_pkg_name
2935: p_api_version,
2936: l_api_name,
2937: g_pkg_name
2938: ) THEN
2939: RAISE FND_API.g_exc_unexpected_error;
2940: END IF;
2941:
2942: x_return_status := FND_API.g_ret_sts_success;
2943:
2938: ) THEN
2939: RAISE FND_API.g_exc_unexpected_error;
2940: END IF;
2941:
2942: x_return_status := FND_API.g_ret_sts_success;
2943:
2944: ------------------ call update_cell -------------------
2945:
2946: --bmuthukr bug 5130570
2946: --bmuthukr bug 5130570
2947: if trim(l_sql_cell_rec.list_sql_string) is null then
2948: FND_MESSAGE.set_name('AMS', 'AMS_CELL_BLANK_SQL');
2949: FND_MSG_PUB.add;
2950: RAISE FND_API.g_exc_error;
2951: end if;
2952: --
2953:
2954: AMS_Utility_PVT.debug_message(l_full_name ||': update_cell');
2977: update_cell(
2978: p_api_version => l_api_version,
2979: p_init_msg_list => p_init_msg_list,
2980: p_validation_level => p_validation_level,
2981: p_commit => FND_API.g_false,
2982: x_return_status => l_return_status,
2983: x_msg_count => x_msg_count,
2984: x_msg_data => x_msg_data,
2985: p_cell_rec => l_cell_rec
2984: x_msg_data => x_msg_data,
2985: p_cell_rec => l_cell_rec
2986: );
2987:
2988: IF l_return_status = FND_API.g_ret_sts_error THEN
2989: RAISE FND_API.g_exc_error;
2990: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2991: RAISE FND_API.g_exc_unexpected_error;
2992: END IF;
2985: p_cell_rec => l_cell_rec
2986: );
2987:
2988: IF l_return_status = FND_API.g_ret_sts_error THEN
2989: RAISE FND_API.g_exc_error;
2990: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2991: RAISE FND_API.g_exc_unexpected_error;
2992: END IF;
2993:
2986: );
2987:
2988: IF l_return_status = FND_API.g_ret_sts_error THEN
2989: RAISE FND_API.g_exc_error;
2990: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2991: RAISE FND_API.g_exc_unexpected_error;
2992: END IF;
2993:
2994: --------------------- update selection ----------------------------
2987:
2988: IF l_return_status = FND_API.g_ret_sts_error THEN
2989: RAISE FND_API.g_exc_error;
2990: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
2991: RAISE FND_API.g_exc_unexpected_error;
2992: END IF;
2993:
2994: --------------------- update selection ----------------------------
2995: AMS_Utility_PVT.debug_message(l_full_name ||': update selection');
3001: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3002: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
3003: FND_MSG_PUB.add;
3004: END IF;
3005: RAISE FND_API.g_exc_error;
3006: END IF;
3007: CLOSE c_cell;
3008:
3009: IF 'DIWB' = upper(l_sql_cell_rec.sel_type) THEN
3019: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
3020: FND_MSG_PUB.add;
3021: END IF;
3022: AMS_Utility_PVT.debug_message(l_full_name ||': delete from ams_act_discoverer_all');
3023: RAISE FND_API.g_exc_error;
3024: END IF;
3025: ELSIF l_sql_cell_rec.discoverer_sql_id IS NOT NULL AND
3026: l_sql_cell_rec_old.discoverer_sql_id IS NULL THEN
3027:
3027:
3028: add_sel_workbook(
3029: p_api_version => l_api_version,
3030: p_init_msg_list => p_init_msg_list,
3031: p_commit => FND_API.g_false,
3032: p_validation_level => p_validation_level,
3033: x_return_status => l_return_status,
3034: x_msg_count => x_msg_count,
3035: x_msg_data => x_msg_data,
3035: x_msg_data => x_msg_data,
3036: p_cell_id => l_sql_cell_rec.cell_id,
3037: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
3038: );
3039: IF l_return_status = FND_API.g_ret_sts_error THEN
3040: RAISE FND_API.g_exc_error;
3041: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3042: RAISE FND_API.g_exc_unexpected_error;
3043: END IF;
3036: p_cell_id => l_sql_cell_rec.cell_id,
3037: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
3038: );
3039: IF l_return_status = FND_API.g_ret_sts_error THEN
3040: RAISE FND_API.g_exc_error;
3041: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3042: RAISE FND_API.g_exc_unexpected_error;
3043: END IF;
3044:
3037: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
3038: );
3039: IF l_return_status = FND_API.g_ret_sts_error THEN
3040: RAISE FND_API.g_exc_error;
3041: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3042: RAISE FND_API.g_exc_unexpected_error;
3043: END IF;
3044:
3045: ELSIF l_sql_cell_rec.discoverer_sql_id <> l_sql_cell_rec_old.discoverer_sql_id THEN
3038: );
3039: IF l_return_status = FND_API.g_ret_sts_error THEN
3040: RAISE FND_API.g_exc_error;
3041: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3042: RAISE FND_API.g_exc_unexpected_error;
3043: END IF;
3044:
3045: ELSIF l_sql_cell_rec.discoverer_sql_id <> l_sql_cell_rec_old.discoverer_sql_id THEN
3046: -- remove the old workbook relationship
3053: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
3054: FND_MSG_PUB.add;
3055: END IF;
3056: AMS_Utility_PVT.debug_message(l_full_name ||': delete from ams_act_discoverer_all');
3057: RAISE FND_API.g_exc_error;
3058: END IF;
3059: -- add new workbook relationship
3060: add_sel_workbook(
3061: p_api_version => l_api_version,
3059: -- add new workbook relationship
3060: add_sel_workbook(
3061: p_api_version => l_api_version,
3062: p_init_msg_list => p_init_msg_list,
3063: p_commit => FND_API.g_false,
3064: p_validation_level => p_validation_level,
3065: x_return_status => l_return_status,
3066: x_msg_count => x_msg_count,
3067: x_msg_data => x_msg_data,
3067: x_msg_data => x_msg_data,
3068: p_cell_id => l_sql_cell_rec.cell_id,
3069: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
3070: );
3071: IF l_return_status = FND_API.g_ret_sts_error THEN
3072: RAISE FND_API.g_exc_error;
3073: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3074: RAISE FND_API.g_exc_unexpected_error;
3075: END IF;
3068: p_cell_id => l_sql_cell_rec.cell_id,
3069: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
3070: );
3071: IF l_return_status = FND_API.g_ret_sts_error THEN
3072: RAISE FND_API.g_exc_error;
3073: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3074: RAISE FND_API.g_exc_unexpected_error;
3075: END IF;
3076: END IF;
3069: p_discoverer_sql_id => l_sql_cell_rec.discoverer_sql_id
3070: );
3071: IF l_return_status = FND_API.g_ret_sts_error THEN
3072: RAISE FND_API.g_exc_error;
3073: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3074: RAISE FND_API.g_exc_unexpected_error;
3075: END IF;
3076: END IF;
3077: -- end if discoverer_sql_id changed
3070: );
3071: IF l_return_status = FND_API.g_ret_sts_error THEN
3072: RAISE FND_API.g_exc_error;
3073: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3074: RAISE FND_API.g_exc_unexpected_error;
3075: END IF;
3076: END IF;
3077: -- end if discoverer_sql_id changed
3078: ELSIF 'SQL' = upper(l_sql_cell_rec.sel_type) THEN
3099: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3100: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_SQL');
3101: FND_MSG_PUB.add;
3102: END IF;
3103: RAISE FND_API.g_exc_error;
3104: RETURN;
3105: END IF;
3106:
3107: IF instr(l_sql_string, 'ORDER BY') > 0
3110: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3111: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_ORDERBY');
3112: FND_MSG_PUB.add;
3113: END IF;
3114: RAISE FND_API.g_exc_error;
3115: -- x_return_status := FND_API.g_ret_sts_error;
3116: RETURN;
3117: END IF;
3118:
3111: FND_MESSAGE.set_name('AMS', 'AMS_CELL_INVALID_ORDERBY');
3112: FND_MSG_PUB.add;
3113: END IF;
3114: RAISE FND_API.g_exc_error;
3115: -- x_return_status := FND_API.g_ret_sts_error;
3116: RETURN;
3117: END IF;
3118:
3119: l_list_query_rec.list_query_id := l_sql_cell_rec.list_query_id;
3128:
3129: AMS_List_Query_PVT.Update_List_Query(
3130: p_api_version_number => l_api_version,
3131: p_init_msg_list => p_init_msg_list,
3132: p_commit => FND_API.g_false,
3133: p_validation_level => p_validation_level,
3134: x_return_status => l_return_status,
3135: x_msg_count => x_msg_count,
3136: x_msg_data => x_msg_data,
3136: x_msg_data => x_msg_data,
3137: p_list_query_rec => l_list_query_rec,
3138: x_object_version_number => l_object_version_number
3139: );
3140: IF l_return_status = FND_API.g_ret_sts_error THEN
3141: RAISE FND_API.g_exc_error;
3142: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3143: RAISE FND_API.g_exc_unexpected_error;
3144: END IF;
3137: p_list_query_rec => l_list_query_rec,
3138: x_object_version_number => l_object_version_number
3139: );
3140: IF l_return_status = FND_API.g_ret_sts_error THEN
3141: RAISE FND_API.g_exc_error;
3142: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3143: RAISE FND_API.g_exc_unexpected_error;
3144: END IF;
3145: END IF;
3138: x_object_version_number => l_object_version_number
3139: );
3140: IF l_return_status = FND_API.g_ret_sts_error THEN
3141: RAISE FND_API.g_exc_error;
3142: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3143: RAISE FND_API.g_exc_unexpected_error;
3144: END IF;
3145: END IF;
3146: -- end selection type
3139: );
3140: IF l_return_status = FND_API.g_ret_sts_error THEN
3141: RAISE FND_API.g_exc_error;
3142: ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
3143: RAISE FND_API.g_exc_unexpected_error;
3144: END IF;
3145: END IF;
3146: -- end selection type
3147:
3146: -- end selection type
3147:
3148: ------------------------- finish -------------------------------
3149:
3150: IF FND_API.to_boolean(p_commit) THEN
3151: COMMIT;
3152: END IF;
3153:
3154: FND_MSG_PUB.count_and_get(
3151: COMMIT;
3152: END IF;
3153:
3154: FND_MSG_PUB.count_and_get(
3155: p_encoded => FND_API.g_false,
3156: p_count => x_msg_count,
3157: p_data => x_msg_data
3158: );
3159:
3160: AMS_Utility_PVT.debug_message(l_full_name ||': end');
3161:
3162: EXCEPTION
3163:
3164: WHEN FND_API.g_exc_error THEN
3165: ROLLBACK TO update_sql_cell;
3166: x_return_status := FND_API.g_ret_sts_error;
3167: FND_MSG_PUB.count_and_get(
3168: p_encoded => FND_API.g_false,
3162: EXCEPTION
3163:
3164: WHEN FND_API.g_exc_error THEN
3165: ROLLBACK TO update_sql_cell;
3166: x_return_status := FND_API.g_ret_sts_error;
3167: FND_MSG_PUB.count_and_get(
3168: p_encoded => FND_API.g_false,
3169: p_count => x_msg_count,
3170: p_data => x_msg_data
3164: WHEN FND_API.g_exc_error THEN
3165: ROLLBACK TO update_sql_cell;
3166: x_return_status := FND_API.g_ret_sts_error;
3167: FND_MSG_PUB.count_and_get(
3168: p_encoded => FND_API.g_false,
3169: p_count => x_msg_count,
3170: p_data => x_msg_data
3171: );
3172: WHEN FND_API.g_exc_unexpected_error THEN
3168: p_encoded => FND_API.g_false,
3169: p_count => x_msg_count,
3170: p_data => x_msg_data
3171: );
3172: WHEN FND_API.g_exc_unexpected_error THEN
3173: ROLLBACK TO update_sql_cell;
3174: x_return_status := FND_API.g_ret_sts_unexp_error ;
3175: FND_MSG_PUB.count_and_get(
3176: p_encoded => FND_API.g_false,
3170: p_data => x_msg_data
3171: );
3172: WHEN FND_API.g_exc_unexpected_error THEN
3173: ROLLBACK TO update_sql_cell;
3174: x_return_status := FND_API.g_ret_sts_unexp_error ;
3175: FND_MSG_PUB.count_and_get(
3176: p_encoded => FND_API.g_false,
3177: p_count => x_msg_count,
3178: p_data => x_msg_data
3172: WHEN FND_API.g_exc_unexpected_error THEN
3173: ROLLBACK TO update_sql_cell;
3174: x_return_status := FND_API.g_ret_sts_unexp_error ;
3175: FND_MSG_PUB.count_and_get(
3176: p_encoded => FND_API.g_false,
3177: p_count => x_msg_count,
3178: p_data => x_msg_data
3179: );
3180:
3179: );
3180:
3181: WHEN OTHERS THEN
3182: ROLLBACK TO update_sql_cell;
3183: x_return_status := FND_API.g_ret_sts_unexp_error ;
3184:
3185: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
3186: THEN
3187: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
3187: FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
3188: END IF;
3189:
3190: FND_MSG_PUB.count_and_get(
3191: p_encoded => FND_API.g_false,
3192: p_count => x_msg_count,
3193: p_data => x_msg_data
3194: );
3195: END update_sql_cell;
3242:
3243: BEGIN
3244: AMS_Utility_PVT.Debug_Message(l_api_name||' Start ');
3245:
3246: x_return_status := FND_API.G_RET_STS_SUCCESS;
3247:
3248: IF p_cell_id IS NOT NULL
3249: THEN
3250: -- Create the Savepoint
3255: -- Calculate segment size
3256: AMS_Utility_PVT.Debug_Message(l_api_name||' get segment size for cell ' || l_cell_id);
3257: AMS_CELL_PVT.get_comp_segment_size(
3258: p_api_version => 1,
3259: p_init_msg_list => FND_API.g_false,
3260: p_validation_level => FND_API.g_valid_level_full,
3261: x_return_status => x_return_status,
3262: x_msg_count => x_msg_count,
3263: x_msg_data => x_msg_data,
3256: AMS_Utility_PVT.Debug_Message(l_api_name||' get segment size for cell ' || l_cell_id);
3257: AMS_CELL_PVT.get_comp_segment_size(
3258: p_api_version => 1,
3259: p_init_msg_list => FND_API.g_false,
3260: p_validation_level => FND_API.g_valid_level_full,
3261: x_return_status => x_return_status,
3262: x_msg_count => x_msg_count,
3263: x_msg_data => x_msg_data,
3264: p_cell_id => l_cell_id,
3263: x_msg_data => x_msg_data,
3264: p_cell_id => l_cell_id,
3265: x_segment_size => l_segment_size
3266: );
3267: IF x_return_status = FND_API.g_ret_sts_error THEN
3268: RAISE FND_API.g_exc_error;
3269: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
3270: RAISE FND_API.g_exc_unexpected_error;
3271: END IF;
3264: p_cell_id => l_cell_id,
3265: x_segment_size => l_segment_size
3266: );
3267: IF x_return_status = FND_API.g_ret_sts_error THEN
3268: RAISE FND_API.g_exc_error;
3269: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
3270: RAISE FND_API.g_exc_unexpected_error;
3271: END IF;
3272:
3265: x_segment_size => l_segment_size
3266: );
3267: IF x_return_status = FND_API.g_ret_sts_error THEN
3268: RAISE FND_API.g_exc_error;
3269: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
3270: RAISE FND_API.g_exc_unexpected_error;
3271: END IF;
3272:
3273: -- Update cell record
3266: );
3267: IF x_return_status = FND_API.g_ret_sts_error THEN
3268: RAISE FND_API.g_exc_error;
3269: ELSIF x_return_status = FND_API.g_ret_sts_unexp_error THEN
3270: RAISE FND_API.g_exc_unexpected_error;
3271: END IF;
3272:
3273: -- Update cell record
3274: AMS_Utility_PVT.Debug_Message(l_api_name||' update_cell');
3306: x_msg_data => x_msg_data,
3307: p_cell_id => l_cell_id,
3308: x_segment_size => l_segment_size
3309: );
3310: IF x_return_status = FND_API.G_RET_STS_SUCCESS THEN
3311: t_segment_size(l_iterator) := l_segment_size;
3312: ELSE
3313: t_segment_size(l_iterator) := null;
3314: FND_MSG_PUB.count_and_get(
3311: t_segment_size(l_iterator) := l_segment_size;
3312: ELSE
3313: t_segment_size(l_iterator) := null;
3314: FND_MSG_PUB.count_and_get(
3315: p_encoded => FND_API.g_false,
3316: p_count => x_msg_count,
3317: p_data => x_msg_data
3318: );
3319: END IF;
3334: COMMIT WORK;
3335: END IF;
3336:
3337: EXCEPTION
3338: WHEN FND_API.g_exc_error THEN
3339: IF (c_all_cell_rec%ISOPEN) THEN
3340: close c_all_cell_rec ;
3341: END IF;
3342: ROLLBACK TO Update_Segment_Size;
3339: IF (c_all_cell_rec%ISOPEN) THEN
3340: close c_all_cell_rec ;
3341: END IF;
3342: ROLLBACK TO Update_Segment_Size;
3343: x_return_status := FND_API.g_ret_sts_error;
3344: FND_MSG_PUB.count_and_get(
3345: p_encoded => FND_API.g_false,
3346: p_count => x_msg_count,
3347: p_data => x_msg_data
3341: END IF;
3342: ROLLBACK TO Update_Segment_Size;
3343: x_return_status := FND_API.g_ret_sts_error;
3344: FND_MSG_PUB.count_and_get(
3345: p_encoded => FND_API.g_false,
3346: p_count => x_msg_count,
3347: p_data => x_msg_data
3348: );
3349: WHEN FND_API.g_exc_unexpected_error THEN
3345: p_encoded => FND_API.g_false,
3346: p_count => x_msg_count,
3347: p_data => x_msg_data
3348: );
3349: WHEN FND_API.g_exc_unexpected_error THEN
3350: IF (c_all_cell_rec%ISOPEN) THEN
3351: close c_all_cell_rec ;
3352: END IF;
3353: ROLLBACK TO Update_Segment_Size;
3350: IF (c_all_cell_rec%ISOPEN) THEN
3351: close c_all_cell_rec ;
3352: END IF;
3353: ROLLBACK TO Update_Segment_Size;
3354: x_return_status := FND_API.g_ret_sts_unexp_error ;
3355: FND_MSG_PUB.count_and_get (
3356: p_encoded => FND_API.g_false,
3357: p_count => x_msg_count,
3358: p_data => x_msg_data
3352: END IF;
3353: ROLLBACK TO Update_Segment_Size;
3354: x_return_status := FND_API.g_ret_sts_unexp_error ;
3355: FND_MSG_PUB.count_and_get (
3356: p_encoded => FND_API.g_false,
3357: p_count => x_msg_count,
3358: p_data => x_msg_data
3359: );
3360: WHEN OTHERS THEN
3361: IF (c_all_cell_rec%ISOPEN) THEN
3362: close c_all_cell_rec ;
3363: END IF;
3364: ROLLBACK TO Update_Segment_Size;
3365: x_return_status := FND_API.g_ret_sts_unexp_error ;
3366:
3367: IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error) THEN
3368: FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
3369: END IF;
3368: FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
3369: END IF;
3370:
3371: FND_MSG_PUB.count_and_get (
3372: p_encoded => FND_API.g_false,
3373: p_count => x_msg_count,
3374: p_data => x_msg_data
3375: );
3376: END Update_Segment_Size;
3410: -- x_msg_data => l_msg_data);
3411: --
3412: -- -- Write_log ;
3413: -- Ams_Utility_Pvt.Write_Conc_log ;
3414: -- IF(l_return_status = FND_API.G_RET_STS_SUCCESS)THEN
3415: -- retcode :=0;
3416: -- ELSE
3417: -- retcode :=1;
3418: -- errbuf := l_msg_data ;