40: --*******************************************************************************
41:
42: PROCEDURE save_template_mapping(
43: p_api_version IN NUMBER,
44: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
45: p_commit IN VARCHAR2 := FND_API.g_false,
46: x_return_status OUT NOCOPY VARCHAR2,
47: x_msg_count OUT NOCOPY VARCHAR2,
48: x_msg_data OUT NOCOPY VARCHAR2,
41:
42: PROCEDURE save_template_mapping(
43: p_api_version IN NUMBER,
44: p_init_msg_list IN VARCHAR2 := FND_API.g_false,
45: p_commit IN VARCHAR2 := FND_API.g_false,
46: x_return_status OUT NOCOPY VARCHAR2,
47: x_msg_count OUT NOCOPY VARCHAR2,
48: x_msg_data OUT NOCOPY VARCHAR2,
49: x_error_num IN OUT NOCOPY NUMBER,
140: l_deliverable_rec IBE_DELIVERABLE_GRP.DELIVERABLE_REC_TYPE;
141: l_attachment_rec IBE_ATTACHMENT_GRP.ATTACHMENT_REC_TYPE;
142:
143: BEGIN
144: l_true:=FND_API.g_true;
145:
146: -- begin log message initialization
147:
148: FND_GLOBAL.APPS_INITIALIZE(5,20420,1);
156:
157: -- Standard Start of API savepoint
158: SAVEPOINT save_template_mapping_pvt;
159: -- Standard call to check for call compatibility.
160: IF NOT FND_API.Compatible_API_Call(l_api_version,
161: p_api_version,
162: l_api_name,
163: g_pkg_name) THEN
164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
160: IF NOT FND_API.Compatible_API_Call(l_api_version,
161: p_api_version,
162: l_api_name,
163: g_pkg_name) THEN
164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
165: END IF;
166: -- Initialize message list if p_init_msg_list is set to TRUE.
167: IF FND_API.To_Boolean(p_init_msg_list) THEN
168: FND_Msg_Pub.initialize;
163: g_pkg_name) THEN
164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
165: END IF;
166: -- Initialize message list if p_init_msg_list is set to TRUE.
167: IF FND_API.To_Boolean(p_init_msg_list) THEN
168: FND_Msg_Pub.initialize;
169: END IF;
170: -- Initialize API return status to success
171: x_return_status := FND_API.G_RET_STS_SUCCESS;
167: IF FND_API.To_Boolean(p_init_msg_list) THEN
168: FND_Msg_Pub.initialize;
169: END IF;
170: -- Initialize API return status to success
171: x_return_status := FND_API.G_RET_STS_SUCCESS;
172: -- API body
173: -- Check if the template exists or not
174: IF (p_enable_debug = 'Y') THEN
175: FND_FILE.PUT_LINE(FND_FILE.LOG, 'Opening cursor c_get_template_csr');
213: END IF;
214:
215: IBE_Deliverable_GRP.save_deliverable(
216: p_api_version => 1.0,
217: p_init_msg_list => FND_API.g_false,
218: p_commit => FND_API.g_false,
219: x_return_status => l_return_status,
220: x_msg_count => l_msg_count,
221: x_msg_data => l_msg_data,
214:
215: IBE_Deliverable_GRP.save_deliverable(
216: p_api_version => 1.0,
217: p_init_msg_list => FND_API.g_false,
218: p_commit => FND_API.g_false,
219: x_return_status => l_return_status,
220: x_msg_count => l_msg_count,
221: x_msg_data => l_msg_data,
222: p_deliverable_rec => l_deliverable_rec);
228: IF (p_enable_debug = 'Y') THEN
229: FND_FILE.PUT_LINE(FND_FILE.LOG, 'Step 2a :l_item_id='||l_item_id);
230: END IF;
231:
232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
233: RAISE FND_API.G_EXC_ERROR;
234: END IF;
235: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
236: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
229: FND_FILE.PUT_LINE(FND_FILE.LOG, 'Step 2a :l_item_id='||l_item_id);
230: END IF;
231:
232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
233: RAISE FND_API.G_EXC_ERROR;
234: END IF;
235: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
236: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
237: END IF;
231:
232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
233: RAISE FND_API.G_EXC_ERROR;
234: END IF;
235: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
236: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
237: END IF;
238:
239: END IF;
232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
233: RAISE FND_API.G_EXC_ERROR;
234: END IF;
235: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
236: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
237: END IF;
238:
239: END IF;
240:
344:
345:
346: IBE_Attachment_GRP.save_attachment(
347: p_api_version => 1.0,
348: p_init_msg_list => FND_API.g_false,
349: p_commit => FND_API.g_false,
350: x_return_status => l_return_status,
351: x_msg_count => l_msg_count,
352: x_msg_data => l_msg_data,
345:
346: IBE_Attachment_GRP.save_attachment(
347: p_api_version => 1.0,
348: p_init_msg_list => FND_API.g_false,
349: p_commit => FND_API.g_false,
350: x_return_status => l_return_status,
351: x_msg_count => l_msg_count,
352: x_msg_data => l_msg_data,
353: p_attachment_rec => l_attachment_rec);
356: IF (p_enable_debug = 'Y') THEN
357: FND_FILE.PUT_LINE(FND_FILE.LOG, 'Step 6 :after save atachment return status='||l_return_status);
358: END IF;
359:
360: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
361: RAISE FND_API.G_EXC_ERROR;
362: END IF;
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
357: FND_FILE.PUT_LINE(FND_FILE.LOG, 'Step 6 :after save atachment return status='||l_return_status);
358: END IF;
359:
360: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
361: RAISE FND_API.G_EXC_ERROR;
362: END IF;
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: END IF;
359:
360: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
361: RAISE FND_API.G_EXC_ERROR;
362: END IF;
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: END IF;
366:
367: l_attachment_id := l_attachment_rec.attachment_id;
360: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
361: RAISE FND_API.G_EXC_ERROR;
362: END IF;
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: END IF;
366:
367: l_attachment_id := l_attachment_rec.attachment_id;
368: IF (p_enable_debug = 'Y') THEN
406: IF (p_commit = l_true) THEN
407: COMMIT;
408: END IF;
409: EXCEPTION
410: WHEN FND_API.G_EXC_ERROR THEN
411: --x_error_num := x_error_num + 1;
412: IF (IBE_UTIL.G_DEBUGON = l_true) THEN
413: ibe_util.debug('Expected error in IBE_DELIVERABLE_GRP.save_template_mappping');
414: END IF;
412: IF (IBE_UTIL.G_DEBUGON = l_true) THEN
413: ibe_util.debug('Expected error in IBE_DELIVERABLE_GRP.save_template_mappping');
414: END IF;
415: ROLLBACK TO save_template_mapping_pvt;
416: x_return_status := FND_API.G_RET_STS_ERROR;
417: FND_Msg_Pub.Count_And_Get(p_encoded => FND_API.G_FALSE,
418: p_count => x_msg_count ,
419: p_data => x_msg_data);
420: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
413: ibe_util.debug('Expected error in IBE_DELIVERABLE_GRP.save_template_mappping');
414: END IF;
415: ROLLBACK TO save_template_mapping_pvt;
416: x_return_status := FND_API.G_RET_STS_ERROR;
417: FND_Msg_Pub.Count_And_Get(p_encoded => FND_API.G_FALSE,
418: p_count => x_msg_count ,
419: p_data => x_msg_data);
420: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
421: --x_error_num := x_error_num + 1;
416: x_return_status := FND_API.G_RET_STS_ERROR;
417: FND_Msg_Pub.Count_And_Get(p_encoded => FND_API.G_FALSE,
418: p_count => x_msg_count ,
419: p_data => x_msg_data);
420: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
421: --x_error_num := x_error_num + 1;
422: IF (IBE_UTIL.G_DEBUGON = l_true) THEN
423: ibe_util.debug('Unexpected error in IBE_DELIVERABLE_GRP.save_template_mappping');
424: END IF;
422: IF (IBE_UTIL.G_DEBUGON = l_true) THEN
423: ibe_util.debug('Unexpected error in IBE_DELIVERABLE_GRP.save_template_mappping');
424: END IF;
425: ROLLBACK TO save_template_mapping_pvt;
426: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
427: FND_Msg_Pub.Count_And_Get(p_encoded => FND_API.G_FALSE,
428: p_count => x_msg_count ,
429: p_data => x_msg_data);
430: WHEN OTHERS THEN
423: ibe_util.debug('Unexpected error in IBE_DELIVERABLE_GRP.save_template_mappping');
424: END IF;
425: ROLLBACK TO save_template_mapping_pvt;
426: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
427: FND_Msg_Pub.Count_And_Get(p_encoded => FND_API.G_FALSE,
428: p_count => x_msg_count ,
429: p_data => x_msg_data);
430: WHEN OTHERS THEN
431: ROLLBACK TO save_template_mapping_pvt;
429: p_data => x_msg_data);
430: WHEN OTHERS THEN
431: ROLLBACK TO save_template_mapping_pvt;
432: -- x_error_num := x_error_num + 1;
433: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
434: IF (IBE_UTIL.G_DEBUGON = l_true) THEN
435: ibe_util.debug('Unknown error in IBE_DELIVERABLE_GRP.save_template_mappping');
436: END IF;
437: IF FND_Msg_Pub.Check_Msg_Level( FND_Msg_Pub.G_MSG_LVL_UNEXP_ERROR ) THEN
437: IF FND_Msg_Pub.Check_Msg_Level( FND_Msg_Pub.G_MSG_LVL_UNEXP_ERROR ) THEN
438: FND_Msg_Pub.Add_Exc_Msg(G_PKG_NAME,
439: L_API_NAME);
440: END IF;
441: FND_Msg_Pub.Count_And_Get(p_encoded => FND_API.G_FALSE,
442: p_count => x_msg_count ,
443: p_data => x_msg_data);
444: END save_template_mapping;
445: