3:
4:
5: PROCEDURE Insert_Relationship(
6: p_api_version IN NUMBER ,
7: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
8: p_commit IN VARCHAR2 := FND_API.G_FALSE,
9: x_return_status OUT NOCOPY VARCHAR2 ,
10: x_msg_count OUT NOCOPY NUMBER ,
11: x_msg_data OUT NOCOPY VARCHAR2 ,
4:
5: PROCEDURE Insert_Relationship(
6: p_api_version IN NUMBER ,
7: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
8: p_commit IN VARCHAR2 := FND_API.G_FALSE,
9: x_return_status OUT NOCOPY VARCHAR2 ,
10: x_msg_count OUT NOCOPY NUMBER ,
11: x_msg_data OUT NOCOPY VARCHAR2 ,
12: p_rel_type_code IN VARCHAR2 ,
27: -- Standard Start of API savepoint
28: SAVEPOINT Insert_Relationship_PVT;
29:
30: -- Standard call to check for call compatibility.
31: IF NOT FND_API.Compatible_API_Call( L_API_VERSION,
32: p_api_version,
33: L_API_NAME,
34: G_PKG_NAME )
35: THEN
32: p_api_version,
33: L_API_NAME,
34: G_PKG_NAME )
35: THEN
36: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
37: END IF;
38:
39: -- Initialize message list if p_init_msg_list is set to TRUE.
40: IF FND_API.to_Boolean( p_init_msg_list ) THEN
36: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
37: END IF;
38:
39: -- Initialize message list if p_init_msg_list is set to TRUE.
40: IF FND_API.to_Boolean( p_init_msg_list ) THEN
41: FND_MSG_PUB.initialize;
42: END IF;
43:
44: -- Initialize API return status to success
41: FND_MSG_PUB.initialize;
42: END IF;
43:
44: -- Initialize API return status to success
45: x_return_status := FND_API.G_RET_STS_SUCCESS;
46:
47: IF (l_debug = 'Y') THEN
48: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Insert_Relationship(+)');
49: END IF;
92: IBE_UTIL.debug('Insert statement failed.');
93: END IF;
94: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_CREATED');
95: FND_MSG_PUB.Add;
96: RAISE FND_API.G_EXC_ERROR;
97: WHEN OTHERS THEN
98: IF (l_debug = 'Y') THEN
99: IBE_UTIL.debug('Insert statement failed.');
100: END IF;
105: FND_MSG_PUB.Add;
106:
107: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_CREATED');
108: FND_MSG_PUB.Add;
109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
110: END;
111:
112: -- End of API body.
113: IF (l_debug = 'Y') THEN
114: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Insert_Relationship(-)');
115: END IF;
116:
117: -- Standard check of p_commit.
118: IF FND_API.To_Boolean( p_commit ) THEN
119: COMMIT WORK;
120: END IF;
121:
122: -- Standard call to get message count and if count is 1, get message info.
119: COMMIT WORK;
120: END IF;
121:
122: -- Standard call to get message count and if count is 1, get message info.
123: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
124: p_count => x_msg_count ,
125: p_data => x_msg_data );
126:
127: EXCEPTION
124: p_count => x_msg_count ,
125: p_data => x_msg_data );
126:
127: EXCEPTION
128: WHEN FND_API.G_EXC_ERROR THEN
129: ROLLBACK TO Insert_Relationship_PVT;
130: x_return_status := FND_API.G_RET_STS_ERROR;
131: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
132: p_count => x_msg_count ,
126:
127: EXCEPTION
128: WHEN FND_API.G_EXC_ERROR THEN
129: ROLLBACK TO Insert_Relationship_PVT;
130: x_return_status := FND_API.G_RET_STS_ERROR;
131: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
132: p_count => x_msg_count ,
133: p_data => x_msg_data );
134:
127: EXCEPTION
128: WHEN FND_API.G_EXC_ERROR THEN
129: ROLLBACK TO Insert_Relationship_PVT;
130: x_return_status := FND_API.G_RET_STS_ERROR;
131: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
132: p_count => x_msg_count ,
133: p_data => x_msg_data );
134:
135: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
131: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
132: p_count => x_msg_count ,
133: p_data => x_msg_data );
134:
135: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
136: ROLLBACK TO Insert_Relationship_PVT;
137: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
138: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
139: p_count => x_msg_count ,
133: p_data => x_msg_data );
134:
135: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
136: ROLLBACK TO Insert_Relationship_PVT;
137: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
138: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
139: p_count => x_msg_count ,
140: p_data => x_msg_data );
141:
134:
135: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
136: ROLLBACK TO Insert_Relationship_PVT;
137: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
138: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
139: p_count => x_msg_count ,
140: p_data => x_msg_data );
141:
142: WHEN OTHERS THEN
140: p_data => x_msg_data );
141:
142: WHEN OTHERS THEN
143: ROLLBACK TO Insert_Relationship_PVT;
144: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
145:
146: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
147: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
148: L_API_NAME );
146: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
147: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
148: L_API_NAME );
149: END IF;
150: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
151: p_count => x_msg_count ,
152: p_data => x_msg_data );
153: END Insert_Relationship;
154:
154:
155:
156: PROCEDURE Update_Relationship(
157: p_api_version IN NUMBER ,
158: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
159: p_commit IN VARCHAR2 := FND_API.G_FALSE,
160: x_return_status OUT NOCOPY VARCHAR2 ,
161: x_msg_count OUT NOCOPY NUMBER ,
162: x_msg_data OUT NOCOPY VARCHAR2 ,
155:
156: PROCEDURE Update_Relationship(
157: p_api_version IN NUMBER ,
158: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
159: p_commit IN VARCHAR2 := FND_API.G_FALSE,
160: x_return_status OUT NOCOPY VARCHAR2 ,
161: x_msg_count OUT NOCOPY NUMBER ,
162: x_msg_data OUT NOCOPY VARCHAR2 ,
163: p_rel_type_code IN VARCHAR2 ,
178: -- Standard Start of API savepoint
179: SAVEPOINT Update_Relationship_PVT;
180:
181: -- Standard call to check for call compatibility.
182: IF NOT FND_API.Compatible_API_Call( L_API_VERSION,
183: p_api_version,
184: L_API_NAME,
185: G_PKG_NAME )
186: THEN
183: p_api_version,
184: L_API_NAME,
185: G_PKG_NAME )
186: THEN
187: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
188: END IF;
189:
190: -- Initialize message list if p_init_msg_list is set to TRUE.
191: IF FND_API.to_Boolean( p_init_msg_list ) THEN
187: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
188: END IF;
189:
190: -- Initialize message list if p_init_msg_list is set to TRUE.
191: IF FND_API.to_Boolean( p_init_msg_list ) THEN
192: FND_MSG_PUB.initialize;
193: END IF;
194:
195: -- Initialize API return status to success
192: FND_MSG_PUB.initialize;
193: END IF;
194:
195: -- Initialize API return status to success
196: x_return_status := FND_API.G_RET_STS_SUCCESS;
197:
198: IF (l_debug = 'Y') THEN
199: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Update_Relationship(+)');
200: END IF;
238: IBE_UTIL.debug('Update statement failed.');
239: END IF;
240: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_EXIST');
241: FND_MSG_PUB.Add;
242: RAISE FND_API.G_EXC_ERROR;
243: WHEN OTHERS THEN
244: IF (l_debug = 'Y') THEN
245: IBE_UTIL.debug('Update statement failed.');
246: END IF;
251: FND_MSG_PUB.Add;
252:
253: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_EXIST');
254: FND_MSG_PUB.Add;
255: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
256: END;
257:
258: -- End of API body.
259: IF (l_debug = 'Y') THEN
260: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Update_Relationship(-)');
261: END IF;
262:
263: -- Standard check of p_commit.
264: IF FND_API.To_Boolean( p_commit ) THEN
265: COMMIT WORK;
266: END IF;
267:
268: -- Standard call to get message count and if count is 1, get message info.
265: COMMIT WORK;
266: END IF;
267:
268: -- Standard call to get message count and if count is 1, get message info.
269: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
270: p_count => x_msg_count ,
271: p_data => x_msg_data );
272: EXCEPTION
273: WHEN FND_API.G_EXC_ERROR THEN
269: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
270: p_count => x_msg_count ,
271: p_data => x_msg_data );
272: EXCEPTION
273: WHEN FND_API.G_EXC_ERROR THEN
274: ROLLBACK TO Update_Relationship_PVT;
275: x_return_status := FND_API.G_RET_STS_ERROR;
276: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
277: p_count => x_msg_count ,
271: p_data => x_msg_data );
272: EXCEPTION
273: WHEN FND_API.G_EXC_ERROR THEN
274: ROLLBACK TO Update_Relationship_PVT;
275: x_return_status := FND_API.G_RET_STS_ERROR;
276: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
277: p_count => x_msg_count ,
278: p_data => x_msg_data );
279:
272: EXCEPTION
273: WHEN FND_API.G_EXC_ERROR THEN
274: ROLLBACK TO Update_Relationship_PVT;
275: x_return_status := FND_API.G_RET_STS_ERROR;
276: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
277: p_count => x_msg_count ,
278: p_data => x_msg_data );
279:
280: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
276: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
277: p_count => x_msg_count ,
278: p_data => x_msg_data );
279:
280: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
281: ROLLBACK TO Update_Relationship_PVT;
282: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
283: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
284: p_count => x_msg_count ,
278: p_data => x_msg_data );
279:
280: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
281: ROLLBACK TO Update_Relationship_PVT;
282: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
283: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
284: p_count => x_msg_count ,
285: p_data => x_msg_data );
286:
279:
280: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
281: ROLLBACK TO Update_Relationship_PVT;
282: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
283: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
284: p_count => x_msg_count ,
285: p_data => x_msg_data );
286:
287: WHEN OTHERS THEN
285: p_data => x_msg_data );
286:
287: WHEN OTHERS THEN
288: ROLLBACK TO Update_Relationship_PVT;
289: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
290:
291: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
292: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
293: L_API_NAME );
292: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
293: L_API_NAME );
294: END IF;
295:
296: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
297: p_count => x_msg_count ,
298: p_data => x_msg_data );
299: END Update_Relationship;
300:
300:
301:
302: PROCEDURE Update_Relationship_Detail(
303: p_api_version IN NUMBER ,
304: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
305: p_commit IN VARCHAR2 := FND_API.G_FALSE,
306: x_return_status OUT NOCOPY VARCHAR2 ,
307: x_msg_count OUT NOCOPY NUMBER ,
308: x_msg_data OUT NOCOPY VARCHAR2 ,
301:
302: PROCEDURE Update_Relationship_Detail(
303: p_api_version IN NUMBER ,
304: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
305: p_commit IN VARCHAR2 := FND_API.G_FALSE,
306: x_return_status OUT NOCOPY VARCHAR2 ,
307: x_msg_count OUT NOCOPY NUMBER ,
308: x_msg_data OUT NOCOPY VARCHAR2 ,
309: p_rel_type_code IN VARCHAR2 ,
325: -- Standard Start of API savepoint
326: SAVEPOINT Update_Relationship_Detail_PVT;
327:
328: -- Standard call to check for call compatibility.
329: IF NOT FND_API.Compatible_API_Call( L_API_VERSION,
330: p_api_version,
331: L_API_NAME,
332: G_PKG_NAME )
333: THEN
330: p_api_version,
331: L_API_NAME,
332: G_PKG_NAME )
333: THEN
334: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
335: END IF;
336:
337: -- Initialize message list if p_init_msg_list is set to TRUE.
338: IF FND_API.to_Boolean( p_init_msg_list ) THEN
334: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
335: END IF;
336:
337: -- Initialize message list if p_init_msg_list is set to TRUE.
338: IF FND_API.to_Boolean( p_init_msg_list ) THEN
339: FND_MSG_PUB.initialize;
340: END IF;
341:
342: -- Initialize API return status to success
339: FND_MSG_PUB.initialize;
340: END IF;
341:
342: -- Initialize API return status to success
343: x_return_status := FND_API.G_RET_STS_SUCCESS;
344:
345: IF (l_debug = 'Y') THEN
346: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Update_Relationship_Detail(+)');
347: END IF;
385: IBE_UTIL.debug('Update statement failed.');
386: END IF;
387: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_EXIST');
388: FND_MSG_PUB.Add;
389: RAISE FND_API.G_EXC_ERROR;
390: WHEN OTHERS THEN
391: IF (l_debug = 'Y') THEN
392: IBE_UTIL.debug('Update statement failed.');
393: END IF;
398: FND_MSG_PUB.Add;
399:
400: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_EXIST');
401: FND_MSG_PUB.Add;
402: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
403: END;
404:
405: -- End of API body.
406: IF (l_debug = 'Y') THEN
407: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Update_Relationship_Detail(-)');
408: END IF;
409:
410: -- Standard check of p_commit.
411: IF FND_API.To_Boolean( p_commit ) THEN
412: COMMIT WORK;
413: END IF;
414:
415: -- Standard call to get message count and if count is 1, get message info.
412: COMMIT WORK;
413: END IF;
414:
415: -- Standard call to get message count and if count is 1, get message info.
416: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
417: p_count => x_msg_count ,
418: p_data => x_msg_data );
419: EXCEPTION
420: WHEN FND_API.G_EXC_ERROR THEN
416: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
417: p_count => x_msg_count ,
418: p_data => x_msg_data );
419: EXCEPTION
420: WHEN FND_API.G_EXC_ERROR THEN
421: ROLLBACK TO Update_Relationship_Detail_PVT;
422: x_return_status := FND_API.G_RET_STS_ERROR;
423: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
424: p_count => x_msg_count ,
418: p_data => x_msg_data );
419: EXCEPTION
420: WHEN FND_API.G_EXC_ERROR THEN
421: ROLLBACK TO Update_Relationship_Detail_PVT;
422: x_return_status := FND_API.G_RET_STS_ERROR;
423: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
424: p_count => x_msg_count ,
425: p_data => x_msg_data );
426:
419: EXCEPTION
420: WHEN FND_API.G_EXC_ERROR THEN
421: ROLLBACK TO Update_Relationship_Detail_PVT;
422: x_return_status := FND_API.G_RET_STS_ERROR;
423: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
424: p_count => x_msg_count ,
425: p_data => x_msg_data );
426:
427: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
423: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
424: p_count => x_msg_count ,
425: p_data => x_msg_data );
426:
427: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
428: ROLLBACK TO Update_Relationship_Detail_PVT;
429: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
430: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
431: p_count => x_msg_count ,
425: p_data => x_msg_data );
426:
427: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
428: ROLLBACK TO Update_Relationship_Detail_PVT;
429: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
430: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
431: p_count => x_msg_count ,
432: p_data => x_msg_data );
433:
426:
427: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
428: ROLLBACK TO Update_Relationship_Detail_PVT;
429: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
430: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
431: p_count => x_msg_count ,
432: p_data => x_msg_data );
433:
434: WHEN OTHERS THEN
432: p_data => x_msg_data );
433:
434: WHEN OTHERS THEN
435: ROLLBACK TO Update_Relationship_Detail_PVT;
436: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
437:
438: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
439: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
440: L_API_NAME );
439: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
440: L_API_NAME );
441: END IF;
442:
443: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
444: p_count => x_msg_count ,
445: p_data => x_msg_data );
446: END Update_Relationship_Detail;
447:
447:
448:
449: PROCEDURE Delete_Relationships(
450: p_api_version IN NUMBER ,
451: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
452: p_commit IN VARCHAR2 := FND_API.G_FALSE,
453: x_return_status OUT NOCOPY VARCHAR2 ,
454: x_msg_count OUT NOCOPY NUMBER ,
455: x_msg_data OUT NOCOPY VARCHAR2 ,
448:
449: PROCEDURE Delete_Relationships(
450: p_api_version IN NUMBER ,
451: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
452: p_commit IN VARCHAR2 := FND_API.G_FALSE,
453: x_return_status OUT NOCOPY VARCHAR2 ,
454: x_msg_count OUT NOCOPY NUMBER ,
455: x_msg_data OUT NOCOPY VARCHAR2 ,
456: p_rel_type_code_tbl IN JTF_Varchar2_Table_100
467: -- Standard Start of API savepoint
468: SAVEPOINT Delete_Relationship_PVT;
469:
470: -- Standard call to check for call compatibility.
471: IF NOT FND_API.Compatible_API_Call( L_API_VERSION,
472: p_api_version,
473: L_API_NAME,
474: G_PKG_NAME )
475: THEN
472: p_api_version,
473: L_API_NAME,
474: G_PKG_NAME )
475: THEN
476: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
477: END IF;
478:
479: -- Initialize message list if p_init_msg_list is set to TRUE.
480: IF FND_API.to_Boolean( p_init_msg_list ) THEN
476: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
477: END IF;
478:
479: -- Initialize message list if p_init_msg_list is set to TRUE.
480: IF FND_API.to_Boolean( p_init_msg_list ) THEN
481: FND_MSG_PUB.initialize;
482: END IF;
483:
484: -- Initialize API return status to success
481: FND_MSG_PUB.initialize;
482: END IF;
483:
484: -- Initialize API return status to success
485: x_return_status := FND_API.G_RET_STS_SUCCESS;
486:
487: IF (p_rel_type_code_tbl IS NULL OR p_rel_type_code_tbl.COUNT <= 0) THEN
488: RETURN;
489: END IF;
508: IBE_UTIL.debug('Delete statement failed.');
509: END IF;
510: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_EXIST');
511: FND_MSG_PUB.Add;
512: RAISE FND_API.G_EXC_ERROR;
513: WHEN OTHERS THEN
514: IF (l_debug = 'Y') THEN
515: IBE_UTIL.debug('Delete statement failed.');
516: END IF;
521: FND_MSG_PUB.Add;
522:
523: FND_MESSAGE.Set_Name('IBE', 'IBE_CT_REL_NOT_EXIST');
524: FND_MSG_PUB.Add;
525: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
526: END;
527:
528: END LOOP;
529:
555: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Delete_Relationship(-)');
556: END IF;
557:
558: -- Standard check of p_commit.
559: IF FND_API.To_Boolean( p_commit ) THEN
560: COMMIT WORK;
561: END IF;
562:
563: -- Standard call to get message count and if count is 1, get message info.
560: COMMIT WORK;
561: END IF;
562:
563: -- Standard call to get message count and if count is 1, get message info.
564: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
565: p_count => x_msg_count ,
566: p_data => x_msg_data );
567: EXCEPTION
568: WHEN FND_API.G_EXC_ERROR THEN
564: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
565: p_count => x_msg_count ,
566: p_data => x_msg_data );
567: EXCEPTION
568: WHEN FND_API.G_EXC_ERROR THEN
569: ROLLBACK TO Delete_Relationship_PVT;
570: x_return_status := FND_API.G_RET_STS_ERROR;
571: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
572: p_count => x_msg_count ,
566: p_data => x_msg_data );
567: EXCEPTION
568: WHEN FND_API.G_EXC_ERROR THEN
569: ROLLBACK TO Delete_Relationship_PVT;
570: x_return_status := FND_API.G_RET_STS_ERROR;
571: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
572: p_count => x_msg_count ,
573: p_data => x_msg_data );
574:
567: EXCEPTION
568: WHEN FND_API.G_EXC_ERROR THEN
569: ROLLBACK TO Delete_Relationship_PVT;
570: x_return_status := FND_API.G_RET_STS_ERROR;
571: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
572: p_count => x_msg_count ,
573: p_data => x_msg_data );
574:
575: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
571: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
572: p_count => x_msg_count ,
573: p_data => x_msg_data );
574:
575: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
576: ROLLBACK TO Delete_Relationship_PVT;
577: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
578: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
579: p_count => x_msg_count ,
573: p_data => x_msg_data );
574:
575: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
576: ROLLBACK TO Delete_Relationship_PVT;
577: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
578: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
579: p_count => x_msg_count ,
580: p_data => x_msg_data );
581:
574:
575: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
576: ROLLBACK TO Delete_Relationship_PVT;
577: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
578: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
579: p_count => x_msg_count ,
580: p_data => x_msg_data );
581:
582: WHEN OTHERS THEN
580: p_data => x_msg_data );
581:
582: WHEN OTHERS THEN
583: ROLLBACK TO Delete_Relationship_PVT;
584: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
585:
586: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
587: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
588: L_API_NAME );
587: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
588: L_API_NAME );
589: END IF;
590:
591: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
592: p_count => x_msg_count ,
593: p_data => x_msg_data );
594: END Delete_Relationships;
595:
595:
596:
597: PROCEDURE Exclude_Related_Items(
598: p_api_version IN NUMBER ,
599: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
600: p_commit IN VARCHAR2 := FND_API.G_FALSE,
601: x_return_status OUT NOCOPY VARCHAR2 ,
602: x_msg_count OUT NOCOPY NUMBER ,
603: x_msg_data OUT NOCOPY VARCHAR2 ,
596:
597: PROCEDURE Exclude_Related_Items(
598: p_api_version IN NUMBER ,
599: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
600: p_commit IN VARCHAR2 := FND_API.G_FALSE,
601: x_return_status OUT NOCOPY VARCHAR2 ,
602: x_msg_count OUT NOCOPY NUMBER ,
603: x_msg_data OUT NOCOPY VARCHAR2 ,
604: p_rel_type_code IN VARCHAR2 ,
617: -- Standard Start of API savepoint
618: SAVEPOINT Exclude_Related_Items_PVT;
619:
620: -- Standard call to check for call compatibility.
621: IF NOT FND_API.Compatible_API_Call( L_API_VERSION,
622: p_api_version,
623: L_API_NAME,
624: G_PKG_NAME )
625: THEN
622: p_api_version,
623: L_API_NAME,
624: G_PKG_NAME )
625: THEN
626: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
627: END IF;
628:
629: -- Initialize message list if p_init_msg_list is set to TRUE.
630: IF FND_API.to_Boolean( p_init_msg_list ) THEN
626: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
627: END IF;
628:
629: -- Initialize message list if p_init_msg_list is set to TRUE.
630: IF FND_API.to_Boolean( p_init_msg_list ) THEN
631: FND_MSG_PUB.initialize;
632: END IF;
633:
634: -- Initialize API return status to success
631: FND_MSG_PUB.initialize;
632: END IF;
633:
634: -- Initialize API return status to success
635: x_return_status := FND_API.G_RET_STS_SUCCESS;
636:
637: IF (l_debug = 'Y') THEN
638: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Exclude_Related_Items(+)');
639: END IF;
654: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Exclude_Related_Items(-)');
655: END IF;
656:
657: -- Standard check of p_commit.
658: IF FND_API.To_Boolean( p_commit ) THEN
659: COMMIT WORK;
660: END IF;
661:
662: -- Standard call to get message count and if count is 1, get message info.
659: COMMIT WORK;
660: END IF;
661:
662: -- Standard call to get message count and if count is 1, get message info.
663: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
664: p_count => x_msg_count ,
665: p_data => x_msg_data );
666: EXCEPTION
667: WHEN FND_API.G_EXC_ERROR THEN
663: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
664: p_count => x_msg_count ,
665: p_data => x_msg_data );
666: EXCEPTION
667: WHEN FND_API.G_EXC_ERROR THEN
668: ROLLBACK TO Exclude_Related_Items_PVT;
669: x_return_status := FND_API.G_RET_STS_ERROR;
670: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
671: p_count => x_msg_count ,
665: p_data => x_msg_data );
666: EXCEPTION
667: WHEN FND_API.G_EXC_ERROR THEN
668: ROLLBACK TO Exclude_Related_Items_PVT;
669: x_return_status := FND_API.G_RET_STS_ERROR;
670: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
671: p_count => x_msg_count ,
672: p_data => x_msg_data );
673:
666: EXCEPTION
667: WHEN FND_API.G_EXC_ERROR THEN
668: ROLLBACK TO Exclude_Related_Items_PVT;
669: x_return_status := FND_API.G_RET_STS_ERROR;
670: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
671: p_count => x_msg_count ,
672: p_data => x_msg_data );
673:
674: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
670: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
671: p_count => x_msg_count ,
672: p_data => x_msg_data );
673:
674: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
675: ROLLBACK TO Exclude_Related_Items_PVT;
676: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
677: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
678: p_count => x_msg_count ,
672: p_data => x_msg_data );
673:
674: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
675: ROLLBACK TO Exclude_Related_Items_PVT;
676: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
677: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
678: p_count => x_msg_count ,
679: p_data => x_msg_data );
680:
673:
674: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
675: ROLLBACK TO Exclude_Related_Items_PVT;
676: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
677: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
678: p_count => x_msg_count ,
679: p_data => x_msg_data );
680:
681: WHEN OTHERS THEN
679: p_data => x_msg_data );
680:
681: WHEN OTHERS THEN
682: ROLLBACK TO Exclude_Related_Items_PVT;
683: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
684:
685: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
686: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
687: L_API_NAME );
686: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
687: L_API_NAME );
688: END IF;
689:
690: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
691: p_count => x_msg_count ,
692: p_data => x_msg_data );
693: END Exclude_Related_Items;
694:
694:
695:
696: PROCEDURE Include_Related_Items(
697: p_api_version IN NUMBER ,
698: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
699: p_commit IN VARCHAR2 := FND_API.G_FALSE,
700: x_return_status OUT NOCOPY VARCHAR2 ,
701: x_msg_count OUT NOCOPY NUMBER ,
702: x_msg_data OUT NOCOPY VARCHAR2 ,
695:
696: PROCEDURE Include_Related_Items(
697: p_api_version IN NUMBER ,
698: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
699: p_commit IN VARCHAR2 := FND_API.G_FALSE,
700: x_return_status OUT NOCOPY VARCHAR2 ,
701: x_msg_count OUT NOCOPY NUMBER ,
702: x_msg_data OUT NOCOPY VARCHAR2 ,
703: p_rel_type_code IN VARCHAR2 ,
716: -- Standard Start of API savepoint
717: SAVEPOINT Include_Related_Items_PVT;
718:
719: -- Standard call to check for call compatibility.
720: IF NOT FND_API.Compatible_API_Call(L_API_VERSION,
721: p_api_version,
722: L_API_NAME ,
723: G_PKG_NAME )
724: THEN
721: p_api_version,
722: L_API_NAME ,
723: G_PKG_NAME )
724: THEN
725: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
726: END IF;
727:
728: -- Initialize message list if p_init_msg_list is set to TRUE.
729: IF FND_API.to_Boolean( p_init_msg_list ) THEN
725: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
726: END IF;
727:
728: -- Initialize message list if p_init_msg_list is set to TRUE.
729: IF FND_API.to_Boolean( p_init_msg_list ) THEN
730: FND_MSG_PUB.initialize;
731: END IF;
732:
733: -- Initialize API return status to success
730: FND_MSG_PUB.initialize;
731: END IF;
732:
733: -- Initialize API return status to success
734: x_return_status := FND_API.G_RET_STS_SUCCESS;
735:
736: IF (l_debug = 'Y') THEN
737: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Include_Related_Items(+)');
738: END IF;
749: IBE_UTIL.debug('IBE_Prod_Relation_PVT.Include_Related_Items(-)');
750: END IF;
751:
752: -- Standard check of p_commit.
753: IF FND_API.To_Boolean( p_commit ) THEN
754: COMMIT WORK;
755: END IF;
756:
757: -- Standard call to get message count and if count is 1, get message info.
754: COMMIT WORK;
755: END IF;
756:
757: -- Standard call to get message count and if count is 1, get message info.
758: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
759: p_count => x_msg_count ,
760: p_data => x_msg_data );
761: EXCEPTION
762: WHEN FND_API.G_EXC_ERROR THEN
758: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
759: p_count => x_msg_count ,
760: p_data => x_msg_data );
761: EXCEPTION
762: WHEN FND_API.G_EXC_ERROR THEN
763: ROLLBACK TO Include_Related_Items_PVT;
764: x_return_status := FND_API.G_RET_STS_ERROR;
765: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
766: p_count => x_msg_count ,
760: p_data => x_msg_data );
761: EXCEPTION
762: WHEN FND_API.G_EXC_ERROR THEN
763: ROLLBACK TO Include_Related_Items_PVT;
764: x_return_status := FND_API.G_RET_STS_ERROR;
765: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
766: p_count => x_msg_count ,
767: p_data => x_msg_data );
768:
761: EXCEPTION
762: WHEN FND_API.G_EXC_ERROR THEN
763: ROLLBACK TO Include_Related_Items_PVT;
764: x_return_status := FND_API.G_RET_STS_ERROR;
765: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
766: p_count => x_msg_count ,
767: p_data => x_msg_data );
768:
769: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
765: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
766: p_count => x_msg_count ,
767: p_data => x_msg_data );
768:
769: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
770: ROLLBACK TO Include_Related_Items_PVT;
771: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
772: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
773: p_count => x_msg_count ,
767: p_data => x_msg_data );
768:
769: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
770: ROLLBACK TO Include_Related_Items_PVT;
771: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
772: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
773: p_count => x_msg_count ,
774: p_data => x_msg_data );
775:
768:
769: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
770: ROLLBACK TO Include_Related_Items_PVT;
771: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
772: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
773: p_count => x_msg_count ,
774: p_data => x_msg_data );
775:
776: WHEN OTHERS THEN
774: p_data => x_msg_data );
775:
776: WHEN OTHERS THEN
777: ROLLBACK TO Include_Related_Items_PVT;
778: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
779:
780: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
781: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
782: L_API_NAME );
781: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,
782: L_API_NAME );
783: END IF;
784:
785: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE,
786: p_count => x_msg_count ,
787: p_data => x_msg_data );
788: END Include_Related_Items;
789: