23: AMS_DEBUG_MEDIUM_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
24:
25: PROCEDURE Create_Iba_Plcmnt(
26: p_api_version_number IN NUMBER,
27: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
28: p_commit IN VARCHAR2 := FND_API.G_FALSE,
29: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
30:
31: x_return_status OUT NOCOPY VARCHAR2,
24:
25: PROCEDURE Create_Iba_Plcmnt(
26: p_api_version_number IN NUMBER,
27: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
28: p_commit IN VARCHAR2 := FND_API.G_FALSE,
29: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
30:
31: x_return_status OUT NOCOPY VARCHAR2,
32: x_msg_count OUT NOCOPY NUMBER,
25: PROCEDURE Create_Iba_Plcmnt(
26: p_api_version_number IN NUMBER,
27: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
28: p_commit IN VARCHAR2 := FND_API.G_FALSE,
29: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
30:
31: x_return_status OUT NOCOPY VARCHAR2,
32: x_msg_count OUT NOCOPY NUMBER,
33: x_msg_data OUT NOCOPY VARCHAR2,
40: L_API_NAME CONSTANT VARCHAR2(30) := 'Create_Iba_Plcmnt';
41: L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
42: l_return_status_full VARCHAR2(1);
43: l_object_version_number NUMBER := 1;
44: l_org_id NUMBER := FND_API.G_MISS_NUM;
45: l_PLACEMENT_ID NUMBER;
46: l_dummy NUMBER;
47: l_site_ref_code VARCHAR2(30);
48: l_site_id NUMBER;
74: -- Standard Start of API savepoint
75: SAVEPOINT CREATE_Iba_Plcmnt_PVT;
76:
77: -- Standard call to check for call compatibility.
78: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
79: p_api_version_number,
80: l_api_name,
81: G_PKG_NAME)
82: THEN
79: p_api_version_number,
80: l_api_name,
81: G_PKG_NAME)
82: THEN
83: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
84: END IF;
85:
86: -- Initialize message list if p_init_msg_list is set to TRUE.
87: IF FND_API.to_Boolean( p_init_msg_list )
83: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
84: END IF;
85:
86: -- Initialize message list if p_init_msg_list is set to TRUE.
87: IF FND_API.to_Boolean( p_init_msg_list )
88: THEN
89: FND_MSG_PUB.initialize;
90: END IF;
91:
96: END IF;
97:
98:
99: -- Initialize API return status to SUCCESS
100: x_return_status := FND_API.G_RET_STS_SUCCESS;
101:
102: -- Local variable initialization
103:
104: IF p_iba_plcmnt_rec.PLACEMENT_ID IS NULL OR p_iba_plcmnt_rec.PLACEMENT_ID = FND_API.g_miss_num THEN
100: x_return_status := FND_API.G_RET_STS_SUCCESS;
101:
102: -- Local variable initialization
103:
104: IF p_iba_plcmnt_rec.PLACEMENT_ID IS NULL OR p_iba_plcmnt_rec.PLACEMENT_ID = FND_API.g_miss_num THEN
105: LOOP
106: l_dummy := NULL;
107: OPEN c_id;
108: FETCH c_id INTO l_PLACEMENT_ID;
115: END LOOP;
116: x_PLACEMENT_ID := l_PLACEMENT_ID;
117: END IF;
118:
119: IF p_iba_plcmnt_rec.site_id IS NULL OR p_iba_plcmnt_rec.page_id = FND_API.g_miss_num THEN
120: OPEN c_site_id(p_iba_plcmnt_rec.site_ref_code);
121: FETCH c_site_id INTO l_site_id;
122: CLOSE c_site_id;
123: else
123: else
124: l_site_id := p_iba_plcmnt_rec.site_id;
125: END IF;
126:
127: IF p_iba_plcmnt_rec.page_id IS NULL OR p_iba_plcmnt_rec.page_id = FND_API.g_miss_num THEN
128: OPEN c_page_id(p_iba_plcmnt_rec.page_ref_code,p_iba_plcmnt_rec.site_ref_code);
129: FETCH c_page_id INTO l_page_id;
130: CLOSE c_page_id;
131: else
138:
139: IF FND_GLOBAL.User_Id IS NULL
140: THEN
141: AMS_Utility_PVT.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
142: RAISE FND_API.G_EXC_ERROR;
143: END IF;
144:
145: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
146: THEN
141: AMS_Utility_PVT.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
142: RAISE FND_API.G_EXC_ERROR;
143: END IF;
144:
145: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
146: THEN
147: -- Debug message
148: IF (AMS_DEBUG_HIGH_ON) THEN
149:
156: AMS_UTILITY_PVT.debug_message('In Create_Iba_Plcmnt: before Validate_iba_plcmnt call ' );
157: END IF;
158: Validate_iba_plcmnt(
159: p_api_version_number => 1.0
160: , p_init_msg_list => FND_API.G_FALSE
161: , p_validation_level => p_validation_level
162: , p_iba_plcmnt_rec => p_iba_plcmnt_rec
163: , x_return_status => x_return_status
164: , x_msg_count => x_msg_count
166: , p_validation_mode => JTF_PLSQL_API.g_create
167: );
168: END IF;
169:
170: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
171: RAISE FND_API.G_EXC_ERROR;
172: END IF;
173:
174:
167: );
168: END IF;
169:
170: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
171: RAISE FND_API.G_EXC_ERROR;
172: END IF;
173:
174:
175: -- Debug Message
203: px_object_version_number => l_object_version_number,
204: p_name => p_iba_plcmnt_rec.name,
205: p_description => p_iba_plcmnt_rec.description);
206:
207: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
208: RAISE FND_API.G_EXC_ERROR;
209: END IF;
210: --
211: -- End of API body
204: p_name => p_iba_plcmnt_rec.name,
205: p_description => p_iba_plcmnt_rec.description);
206:
207: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
208: RAISE FND_API.G_EXC_ERROR;
209: END IF;
210: --
211: -- End of API body
212: --
211: -- End of API body
212: --
213:
214: -- Standard check for p_commit
215: IF FND_API.to_Boolean( p_commit )
216: THEN
217: COMMIT WORK;
218: END IF;
219:
231: );
232: EXCEPTION
233:
234: WHEN AMS_Utility_PVT.resource_locked THEN
235: x_return_status := FND_API.g_ret_sts_error;
236: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
237:
238: WHEN FND_API.G_EXC_ERROR THEN
239: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
234: WHEN AMS_Utility_PVT.resource_locked THEN
235: x_return_status := FND_API.g_ret_sts_error;
236: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
237:
238: WHEN FND_API.G_EXC_ERROR THEN
239: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
240: x_return_status := FND_API.G_RET_STS_ERROR;
241: -- Standard call to get message count and if count=1, get the message
242: FND_MSG_PUB.Count_And_Get (
236: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
237:
238: WHEN FND_API.G_EXC_ERROR THEN
239: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
240: x_return_status := FND_API.G_RET_STS_ERROR;
241: -- Standard call to get message count and if count=1, get the message
242: FND_MSG_PUB.Count_And_Get (
243: p_encoded => FND_API.G_FALSE,
244: p_count => x_msg_count,
239: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
240: x_return_status := FND_API.G_RET_STS_ERROR;
241: -- Standard call to get message count and if count=1, get the message
242: FND_MSG_PUB.Count_And_Get (
243: p_encoded => FND_API.G_FALSE,
244: p_count => x_msg_count,
245: p_data => x_msg_data
246: );
247:
244: p_count => x_msg_count,
245: p_data => x_msg_data
246: );
247:
248: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
249: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
251: -- Standard call to get message count and if count=1, get the message
252: FND_MSG_PUB.Count_And_Get (
246: );
247:
248: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
249: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
251: -- Standard call to get message count and if count=1, get the message
252: FND_MSG_PUB.Count_And_Get (
253: p_encoded => FND_API.G_FALSE,
254: p_count => x_msg_count,
249: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
251: -- Standard call to get message count and if count=1, get the message
252: FND_MSG_PUB.Count_And_Get (
253: p_encoded => FND_API.G_FALSE,
254: p_count => x_msg_count,
255: p_data => x_msg_data
256: );
257:
256: );
257:
258: WHEN OTHERS THEN
259: ROLLBACK TO CREATE_Iba_Plcmnt_PVT;
260: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
261: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
262: THEN
263: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
264: END IF;
263: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
264: END IF;
265: -- Standard call to get message count and if count=1, get the message
266: FND_MSG_PUB.Count_And_Get (
267: p_encoded => FND_API.G_FALSE,
268: p_count => x_msg_count,
269: p_data => x_msg_data
270: );
271: End Create_Iba_Plcmnt;
272:
273:
274: PROCEDURE Update_Iba_Plcmnt(
275: p_api_version_number IN NUMBER,
276: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
277: p_commit IN VARCHAR2 := FND_API.G_FALSE,
278: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
279:
280: x_return_status OUT NOCOPY VARCHAR2,
273:
274: PROCEDURE Update_Iba_Plcmnt(
275: p_api_version_number IN NUMBER,
276: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
277: p_commit IN VARCHAR2 := FND_API.G_FALSE,
278: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
279:
280: x_return_status OUT NOCOPY VARCHAR2,
281: x_msg_count OUT NOCOPY NUMBER,
274: PROCEDURE Update_Iba_Plcmnt(
275: p_api_version_number IN NUMBER,
276: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
277: p_commit IN VARCHAR2 := FND_API.G_FALSE,
278: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
279:
280: x_return_status OUT NOCOPY VARCHAR2,
281: x_msg_count OUT NOCOPY NUMBER,
282: x_msg_data OUT NOCOPY VARCHAR2,
305: -- Standard Start of API savepoint
306: SAVEPOINT UPDATE_Iba_Plcmnt_PVT;
307:
308: -- Standard call to check for call compatibility.
309: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
310: p_api_version_number,
311: l_api_name,
312: G_PKG_NAME)
313: THEN
310: p_api_version_number,
311: l_api_name,
312: G_PKG_NAME)
313: THEN
314: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
315: END IF;
316:
317: -- Initialize message list if p_init_msg_list is set to TRUE.
318: IF FND_API.to_Boolean( p_init_msg_list )
314: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
315: END IF;
316:
317: -- Initialize message list if p_init_msg_list is set to TRUE.
318: IF FND_API.to_Boolean( p_init_msg_list )
319: THEN
320: FND_MSG_PUB.initialize;
321: END IF;
322:
327: END IF;
328:
329:
330: -- Initialize API return status to SUCCESS
331: x_return_status := FND_API.G_RET_STS_SUCCESS;
332:
333: -- Debug Message
334: IF (AMS_DEBUG_HIGH_ON) THEN
335:
344: If ( c_get_Iba_Plcmnt%NOTFOUND) THEN
345: AMS_Utility_PVT.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
346: p_token_name => 'INFO',
347: p_token_value => 'Iba_Plcmnt') ;
348: RAISE FND_API.G_EXC_ERROR;
349: END IF;
350: -- Debug Message
351: IF (AMS_DEBUG_HIGH_ON) THEN
352:
356: --*/
357:
358:
359: If (l_tar_iba_plcmnt_rec.object_version_number is NULL or
360: l_tar_iba_plcmnt_rec.object_version_number = FND_API.G_MISS_NUM ) Then
361: AMS_Utility_PVT.Error_Message(p_message_name => 'API_VERSION_MISSING',
362: p_token_name => 'COLUMN',
363: p_token_value => 'Last_Update_Date') ;
364: raise FND_API.G_EXC_ERROR;
360: l_tar_iba_plcmnt_rec.object_version_number = FND_API.G_MISS_NUM ) Then
361: AMS_Utility_PVT.Error_Message(p_message_name => 'API_VERSION_MISSING',
362: p_token_name => 'COLUMN',
363: p_token_value => 'Last_Update_Date') ;
364: raise FND_API.G_EXC_ERROR;
365: End if;
366: -- Check Whether record has been changed by someone else
367: If (l_tar_iba_plcmnt_rec.object_version_number <> l_ref_iba_plcmnt_rec.object_version_number) Then
368: AMS_Utility_PVT.Error_Message(p_message_name => 'API_RECORD_CHANGED',
367: If (l_tar_iba_plcmnt_rec.object_version_number <> l_ref_iba_plcmnt_rec.object_version_number) Then
368: AMS_Utility_PVT.Error_Message(p_message_name => 'API_RECORD_CHANGED',
369: p_token_name => 'INFO',
370: p_token_value => 'Iba_Plcmnt') ;
371: raise FND_API.G_EXC_ERROR;
372: End if;
373: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
374: THEN
375: -- Debug message
369: p_token_name => 'INFO',
370: p_token_value => 'Iba_Plcmnt') ;
371: raise FND_API.G_EXC_ERROR;
372: End if;
373: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
374: THEN
375: -- Debug message
376: IF (AMS_DEBUG_HIGH_ON) THEN
377:
380:
381: -- Invoke validation procedures
382: Validate_iba_plcmnt(
383: p_api_version_number => 1.0
384: , p_init_msg_list => FND_API.G_FALSE
385: , p_validation_level => p_validation_level
386: , p_iba_plcmnt_rec => p_iba_plcmnt_rec
387: , x_return_status => x_return_status
388: , x_msg_count => x_msg_count
390: , p_validation_mode => JTF_PLSQL_API.g_update
391: );
392: END IF;
393:
394: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
395: RAISE FND_API.G_EXC_ERROR;
396: END IF;
397:
398:
391: );
392: END IF;
393:
394: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
395: RAISE FND_API.G_EXC_ERROR;
396: END IF;
397:
398:
399: -- Debug Message
429: -- End of API body.
430: --
431:
432: -- Standard check for p_commit
433: IF FND_API.to_Boolean( p_commit )
434: THEN
435: COMMIT WORK;
436: END IF;
437:
449: );
450: EXCEPTION
451:
452: WHEN AMS_Utility_PVT.resource_locked THEN
453: x_return_status := FND_API.g_ret_sts_error;
454: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
455:
456: WHEN FND_API.G_EXC_ERROR THEN
457: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
452: WHEN AMS_Utility_PVT.resource_locked THEN
453: x_return_status := FND_API.g_ret_sts_error;
454: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
455:
456: WHEN FND_API.G_EXC_ERROR THEN
457: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
458: x_return_status := FND_API.G_RET_STS_ERROR;
459: -- Standard call to get message count and if count=1, get the message
460: FND_MSG_PUB.Count_And_Get (
454: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
455:
456: WHEN FND_API.G_EXC_ERROR THEN
457: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
458: x_return_status := FND_API.G_RET_STS_ERROR;
459: -- Standard call to get message count and if count=1, get the message
460: FND_MSG_PUB.Count_And_Get (
461: p_encoded => FND_API.G_FALSE,
462: p_count => x_msg_count,
457: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
458: x_return_status := FND_API.G_RET_STS_ERROR;
459: -- Standard call to get message count and if count=1, get the message
460: FND_MSG_PUB.Count_And_Get (
461: p_encoded => FND_API.G_FALSE,
462: p_count => x_msg_count,
463: p_data => x_msg_data
464: );
465:
462: p_count => x_msg_count,
463: p_data => x_msg_data
464: );
465:
466: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
467: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
468: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
469: -- Standard call to get message count and if count=1, get the message
470: FND_MSG_PUB.Count_And_Get (
464: );
465:
466: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
467: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
468: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
469: -- Standard call to get message count and if count=1, get the message
470: FND_MSG_PUB.Count_And_Get (
471: p_encoded => FND_API.G_FALSE,
472: p_count => x_msg_count,
467: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
468: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
469: -- Standard call to get message count and if count=1, get the message
470: FND_MSG_PUB.Count_And_Get (
471: p_encoded => FND_API.G_FALSE,
472: p_count => x_msg_count,
473: p_data => x_msg_data
474: );
475:
474: );
475:
476: WHEN OTHERS THEN
477: ROLLBACK TO UPDATE_Iba_Plcmnt_PVT;
478: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
479: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
480: THEN
481: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
482: END IF;
481: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
482: END IF;
483: -- Standard call to get message count and if count=1, get the message
484: FND_MSG_PUB.Count_And_Get (
485: p_encoded => FND_API.G_FALSE,
486: p_count => x_msg_count,
487: p_data => x_msg_data
488: );
489: End Update_Iba_Plcmnt;
490:
491:
492: PROCEDURE Delete_Iba_Plcmnt(
493: p_api_version_number IN NUMBER,
494: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
495: p_commit IN VARCHAR2 := FND_API.G_FALSE,
496: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
497: x_return_status OUT NOCOPY VARCHAR2,
498: x_msg_count OUT NOCOPY NUMBER,
491:
492: PROCEDURE Delete_Iba_Plcmnt(
493: p_api_version_number IN NUMBER,
494: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
495: p_commit IN VARCHAR2 := FND_API.G_FALSE,
496: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
497: x_return_status OUT NOCOPY VARCHAR2,
498: x_msg_count OUT NOCOPY NUMBER,
499: x_msg_data OUT NOCOPY VARCHAR2,
492: PROCEDURE Delete_Iba_Plcmnt(
493: p_api_version_number IN NUMBER,
494: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
495: p_commit IN VARCHAR2 := FND_API.G_FALSE,
496: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
497: x_return_status OUT NOCOPY VARCHAR2,
498: x_msg_count OUT NOCOPY NUMBER,
499: x_msg_data OUT NOCOPY VARCHAR2,
500: p_placement_id IN NUMBER,
510: -- Standard Start of API savepoint
511: SAVEPOINT DELETE_Iba_Plcmnt_PVT;
512:
513: -- Standard call to check for call compatibility.
514: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
515: p_api_version_number,
516: l_api_name,
517: G_PKG_NAME)
518: THEN
515: p_api_version_number,
516: l_api_name,
517: G_PKG_NAME)
518: THEN
519: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
520: END IF;
521:
522: -- Initialize message list if p_init_msg_list is set to TRUE.
523: IF FND_API.to_Boolean( p_init_msg_list )
519: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
520: END IF;
521:
522: -- Initialize message list if p_init_msg_list is set to TRUE.
523: IF FND_API.to_Boolean( p_init_msg_list )
524: THEN
525: FND_MSG_PUB.initialize;
526: END IF;
527:
532: END IF;
533:
534:
535: -- Initialize API return status to SUCCESS
536: x_return_status := FND_API.G_RET_STS_SUCCESS;
537:
538: --
539: -- Api body
540: --
551: -- End of API body
552: --
553:
554: -- Standard check for p_commit
555: IF FND_API.to_Boolean( p_commit )
556: THEN
557: COMMIT WORK;
558: END IF;
559:
571: );
572: EXCEPTION
573:
574: WHEN AMS_Utility_PVT.resource_locked THEN
575: x_return_status := FND_API.g_ret_sts_error;
576: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
577:
578: WHEN FND_API.G_EXC_ERROR THEN
579: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
574: WHEN AMS_Utility_PVT.resource_locked THEN
575: x_return_status := FND_API.g_ret_sts_error;
576: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
577:
578: WHEN FND_API.G_EXC_ERROR THEN
579: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
580: x_return_status := FND_API.G_RET_STS_ERROR;
581: -- Standard call to get message count and if count=1, get the message
582: FND_MSG_PUB.Count_And_Get (
576: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
577:
578: WHEN FND_API.G_EXC_ERROR THEN
579: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
580: x_return_status := FND_API.G_RET_STS_ERROR;
581: -- Standard call to get message count and if count=1, get the message
582: FND_MSG_PUB.Count_And_Get (
583: p_encoded => FND_API.G_FALSE,
584: p_count => x_msg_count,
579: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
580: x_return_status := FND_API.G_RET_STS_ERROR;
581: -- Standard call to get message count and if count=1, get the message
582: FND_MSG_PUB.Count_And_Get (
583: p_encoded => FND_API.G_FALSE,
584: p_count => x_msg_count,
585: p_data => x_msg_data
586: );
587:
584: p_count => x_msg_count,
585: p_data => x_msg_data
586: );
587:
588: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
589: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
590: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
591: -- Standard call to get message count and if count=1, get the message
592: FND_MSG_PUB.Count_And_Get (
586: );
587:
588: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
589: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
590: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
591: -- Standard call to get message count and if count=1, get the message
592: FND_MSG_PUB.Count_And_Get (
593: p_encoded => FND_API.G_FALSE,
594: p_count => x_msg_count,
589: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
590: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
591: -- Standard call to get message count and if count=1, get the message
592: FND_MSG_PUB.Count_And_Get (
593: p_encoded => FND_API.G_FALSE,
594: p_count => x_msg_count,
595: p_data => x_msg_data
596: );
597:
596: );
597:
598: WHEN OTHERS THEN
599: ROLLBACK TO DELETE_Iba_Plcmnt_PVT;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
602: THEN
603: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
604: END IF;
603: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
604: END IF;
605: -- Standard call to get message count and if count=1, get the message
606: FND_MSG_PUB.Count_And_Get (
607: p_encoded => FND_API.G_FALSE,
608: p_count => x_msg_count,
609: p_data => x_msg_data
610: );
611: End Delete_Iba_Plcmnt;
614:
615: -- Hint: Primary key needs to be returned.
616: PROCEDURE Lock_Iba_Plcmnt(
617: p_api_version_number IN NUMBER,
618: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
619:
620: x_return_status OUT NOCOPY VARCHAR2,
621: x_msg_count OUT NOCOPY NUMBER,
622: x_msg_data OUT NOCOPY VARCHAR2,
646: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
647: END IF;
648:
649: -- Initialize message list if p_init_msg_list is set to TRUE.
650: IF FND_API.to_Boolean( p_init_msg_list )
651: THEN
652: FND_MSG_PUB.initialize;
653: END IF;
654:
652: FND_MSG_PUB.initialize;
653: END IF;
654:
655: -- Standard call to check for call compatibility.
656: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
657: p_api_version_number,
658: l_api_name,
659: G_PKG_NAME)
660: THEN
657: p_api_version_number,
658: l_api_name,
659: G_PKG_NAME)
660: THEN
661: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
662: END IF;
663:
664:
665: -- Initialize API return status to SUCCESS
662: END IF;
663:
664:
665: -- Initialize API return status to SUCCESS
666: x_return_status := FND_API.G_RET_STS_SUCCESS;
667:
668:
669: ------------------------ lock -------------------------
670:
684: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
685: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
686: FND_MSG_PUB.add;
687: END IF;
688: RAISE FND_API.g_exc_error;
689: END IF;
690:
691: CLOSE c_Iba_Plcmnt;
692:
691: CLOSE c_Iba_Plcmnt;
692:
693: -------------------- finish --------------------------
694: FND_MSG_PUB.count_and_get(
695: p_encoded => FND_API.g_false,
696: p_count => x_msg_count,
697: p_data => x_msg_data);
698: IF (AMS_DEBUG_HIGH_ON) THEN
699:
701: END IF;
702: EXCEPTION
703:
704: WHEN AMS_Utility_PVT.resource_locked THEN
705: x_return_status := FND_API.g_ret_sts_error;
706: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
707:
708: WHEN FND_API.G_EXC_ERROR THEN
709: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
704: WHEN AMS_Utility_PVT.resource_locked THEN
705: x_return_status := FND_API.g_ret_sts_error;
706: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
707:
708: WHEN FND_API.G_EXC_ERROR THEN
709: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
710: x_return_status := FND_API.G_RET_STS_ERROR;
711: -- Standard call to get message count and if count=1, get the message
712: FND_MSG_PUB.Count_And_Get (
706: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
707:
708: WHEN FND_API.G_EXC_ERROR THEN
709: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
710: x_return_status := FND_API.G_RET_STS_ERROR;
711: -- Standard call to get message count and if count=1, get the message
712: FND_MSG_PUB.Count_And_Get (
713: p_encoded => FND_API.G_FALSE,
714: p_count => x_msg_count,
709: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
710: x_return_status := FND_API.G_RET_STS_ERROR;
711: -- Standard call to get message count and if count=1, get the message
712: FND_MSG_PUB.Count_And_Get (
713: p_encoded => FND_API.G_FALSE,
714: p_count => x_msg_count,
715: p_data => x_msg_data
716: );
717:
714: p_count => x_msg_count,
715: p_data => x_msg_data
716: );
717:
718: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
719: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
720: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
721: -- Standard call to get message count and if count=1, get the message
722: FND_MSG_PUB.Count_And_Get (
716: );
717:
718: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
719: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
720: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
721: -- Standard call to get message count and if count=1, get the message
722: FND_MSG_PUB.Count_And_Get (
723: p_encoded => FND_API.G_FALSE,
724: p_count => x_msg_count,
719: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
720: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
721: -- Standard call to get message count and if count=1, get the message
722: FND_MSG_PUB.Count_And_Get (
723: p_encoded => FND_API.G_FALSE,
724: p_count => x_msg_count,
725: p_data => x_msg_data
726: );
727:
726: );
727:
728: WHEN OTHERS THEN
729: ROLLBACK TO LOCK_Iba_Plcmnt_PVT;
730: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
731: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
732: THEN
733: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
734: END IF;
733: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
734: END IF;
735: -- Standard call to get message count and if count=1, get the message
736: FND_MSG_PUB.Count_And_Get (
737: p_encoded => FND_API.G_FALSE,
738: p_count => x_msg_count,
739: p_data => x_msg_data
740: );
741: End Lock_Iba_Plcmnt;
826: end if;
827: end if;
828:
829: if l_plcmnt_count = 0 then
830: return FND_API.g_true;
831: else
832: return FND_API.g_false;
833: end if;
834: END check_unique_placement;
828:
829: if l_plcmnt_count = 0 then
830: return FND_API.g_true;
831: else
832: return FND_API.g_false;
833: end if;
834: END check_unique_placement;
835:
836: PROCEDURE check_iba_plcmnt_uk_items(
837: p_iba_plcmnt_rec IN iba_plcmnt_rec_type,
838: p_validation_mode IN VARCHAR2,
839: x_return_status OUT NOCOPY VARCHAR2)
840: IS
841: l_valid_flag VARCHAR2(1) := FND_API.g_true;
842: l_is_unique VARCHAR2(1);
843: l_situation NUMBER;
844:
845: BEGIN
842: l_is_unique VARCHAR2(1);
843: l_situation NUMBER;
844:
845: BEGIN
846: x_return_status := FND_API.g_ret_sts_success;
847:
848: --check if the combination of site, page, location and parameters are unique
849: l_is_unique := check_unique_placement(p_iba_plcmnt_rec,p_validation_mode,l_situation);
850: IF l_is_unique = FND_API.g_false THEN
846: x_return_status := FND_API.g_ret_sts_success;
847:
848: --check if the combination of site, page, location and parameters are unique
849: l_is_unique := check_unique_placement(p_iba_plcmnt_rec,p_validation_mode,l_situation);
850: IF l_is_unique = FND_API.g_false THEN
851: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
852: THEN
853: if l_situation = 1 then -- placement is for istore and shopping_cart page
854: FND_MESSAGE.set_name('AMS','AMS_PLCE_PLCMNT_SHCRT_DUP');
858: FND_MESSAGE.set_name('AMS','AMS_PLCE_PLCMNT_DUP');
859: end if;
860: FND_MSG_PUB.add;
861: END IF;
862: x_return_status := FND_API.g_ret_sts_error;
863: RAISE FND_API.g_exc_error;
864: -- AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_PLACEMENT_NAME_DUPLICATE');
865: END IF;
866:
859: end if;
860: FND_MSG_PUB.add;
861: END IF;
862: x_return_status := FND_API.g_ret_sts_error;
863: RAISE FND_API.g_exc_error;
864: -- AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_PLACEMENT_NAME_DUPLICATE');
865: END IF;
866:
867:
880: 'NAME = ''' || p_iba_plcmnt_rec.name ||''' AND PLACEMENT_ID <> ' || p_iba_plcmnt_rec.PLACEMENT_ID
881: );
882: END IF;
883:
884: IF l_valid_flag = FND_API.g_false THEN
885: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
886: THEN
887: FND_MESSAGE.set_name('AMS','AMS_PLCE_PLCMNT_NAME_DUP');
888: FND_MSG_PUB.add;
886: THEN
887: FND_MESSAGE.set_name('AMS','AMS_PLCE_PLCMNT_NAME_DUP');
888: FND_MSG_PUB.add;
889: END IF;
890: x_return_status := FND_API.g_ret_sts_error;
891: RAISE FND_API.g_exc_error;
892: -- AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_PLACEMENT_NAME_DUPLICATE');
893: END IF;
894:
887: FND_MESSAGE.set_name('AMS','AMS_PLCE_PLCMNT_NAME_DUP');
888: FND_MSG_PUB.add;
889: END IF;
890: x_return_status := FND_API.g_ret_sts_error;
891: RAISE FND_API.g_exc_error;
892: -- AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_PLACEMENT_NAME_DUPLICATE');
893: END IF;
894:
895: END check_iba_plcmnt_uk_items;
900: x_return_status OUT NOCOPY VARCHAR2
901: )
902: IS
903: BEGIN
904: x_return_status := FND_API.g_ret_sts_success;
905:
906: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
907:
908:
905:
906: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
907:
908:
909: IF p_iba_plcmnt_rec.placement_id = FND_API.g_miss_num OR p_iba_plcmnt_rec.placement_id IS NULL THEN
910: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_placement_id');
911: x_return_status := FND_API.g_ret_sts_error;
912: RETURN;
913: END IF;
907:
908:
909: IF p_iba_plcmnt_rec.placement_id = FND_API.g_miss_num OR p_iba_plcmnt_rec.placement_id IS NULL THEN
910: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_placement_id');
911: x_return_status := FND_API.g_ret_sts_error;
912: RETURN;
913: END IF;
914:
915:
912: RETURN;
913: END IF;
914:
915:
916: IF p_iba_plcmnt_rec.site_id = FND_API.g_miss_num OR p_iba_plcmnt_rec.site_id IS NULL THEN
917: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_site_id');
918: x_return_status := FND_API.g_ret_sts_error;
919: RETURN;
920: END IF;
914:
915:
916: IF p_iba_plcmnt_rec.site_id = FND_API.g_miss_num OR p_iba_plcmnt_rec.site_id IS NULL THEN
917: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_site_id');
918: x_return_status := FND_API.g_ret_sts_error;
919: RETURN;
920: END IF;
921:
922:
919: RETURN;
920: END IF;
921:
922:
923: IF p_iba_plcmnt_rec.site_ref_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.site_ref_code IS NULL THEN
924: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_site_ref_code');
925: x_return_status := FND_API.g_ret_sts_error;
926: RETURN;
927: END IF;
921:
922:
923: IF p_iba_plcmnt_rec.site_ref_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.site_ref_code IS NULL THEN
924: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_site_ref_code');
925: x_return_status := FND_API.g_ret_sts_error;
926: RETURN;
927: END IF;
928:
929:
926: RETURN;
927: END IF;
928:
929:
930: IF p_iba_plcmnt_rec.page_id = FND_API.g_miss_num OR p_iba_plcmnt_rec.page_id IS NULL THEN
931: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_page_id');
932: x_return_status := FND_API.g_ret_sts_error;
933: RETURN;
934: END IF;
928:
929:
930: IF p_iba_plcmnt_rec.page_id = FND_API.g_miss_num OR p_iba_plcmnt_rec.page_id IS NULL THEN
931: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_page_id');
932: x_return_status := FND_API.g_ret_sts_error;
933: RETURN;
934: END IF;
935:
936:
933: RETURN;
934: END IF;
935:
936:
937: IF p_iba_plcmnt_rec.page_ref_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.page_ref_code IS NULL THEN
938: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_page_ref_code');
939: x_return_status := FND_API.g_ret_sts_error;
940: RETURN;
941: END IF;
935:
936:
937: IF p_iba_plcmnt_rec.page_ref_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.page_ref_code IS NULL THEN
938: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_page_ref_code');
939: x_return_status := FND_API.g_ret_sts_error;
940: RETURN;
941: END IF;
942:
943:
940: RETURN;
941: END IF;
942:
943:
944: IF p_iba_plcmnt_rec.location_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.location_code IS NULL THEN
945: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_location_code');
946: x_return_status := FND_API.g_ret_sts_error;
947: RETURN;
948: END IF;
942:
943:
944: IF p_iba_plcmnt_rec.location_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.location_code IS NULL THEN
945: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_location_code');
946: x_return_status := FND_API.g_ret_sts_error;
947: RETURN;
948: END IF;
949:
950:
947: RETURN;
948: END IF;
949:
950:
951: IF p_iba_plcmnt_rec.status_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.status_code IS NULL THEN
952: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_status_code');
953: x_return_status := FND_API.g_ret_sts_error;
954: RETURN;
955: END IF;
949:
950:
951: IF p_iba_plcmnt_rec.status_code = FND_API.g_miss_char OR p_iba_plcmnt_rec.status_code IS NULL THEN
952: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_status_code');
953: x_return_status := FND_API.g_ret_sts_error;
954: RETURN;
955: END IF;
956:
957:
954: RETURN;
955: END IF;
956:
957:
958: IF p_iba_plcmnt_rec.created_by = FND_API.g_miss_num OR p_iba_plcmnt_rec.created_by IS NULL THEN
959: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_created_by');
960: x_return_status := FND_API.g_ret_sts_error;
961: RETURN;
962: END IF;
956:
957:
958: IF p_iba_plcmnt_rec.created_by = FND_API.g_miss_num OR p_iba_plcmnt_rec.created_by IS NULL THEN
959: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_created_by');
960: x_return_status := FND_API.g_ret_sts_error;
961: RETURN;
962: END IF;
963:
964:
961: RETURN;
962: END IF;
963:
964:
965: IF p_iba_plcmnt_rec.creation_date = FND_API.g_miss_date OR p_iba_plcmnt_rec.creation_date IS NULL THEN
966: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_creation_date');
967: x_return_status := FND_API.g_ret_sts_error;
968: RETURN;
969: END IF;
963:
964:
965: IF p_iba_plcmnt_rec.creation_date = FND_API.g_miss_date OR p_iba_plcmnt_rec.creation_date IS NULL THEN
966: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_creation_date');
967: x_return_status := FND_API.g_ret_sts_error;
968: RETURN;
969: END IF;
970:
971:
968: RETURN;
969: END IF;
970:
971:
972: IF p_iba_plcmnt_rec.last_updated_by = FND_API.g_miss_num OR p_iba_plcmnt_rec.last_updated_by IS NULL THEN
973: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_last_updated_by');
974: x_return_status := FND_API.g_ret_sts_error;
975: RETURN;
976: END IF;
970:
971:
972: IF p_iba_plcmnt_rec.last_updated_by = FND_API.g_miss_num OR p_iba_plcmnt_rec.last_updated_by IS NULL THEN
973: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_last_updated_by');
974: x_return_status := FND_API.g_ret_sts_error;
975: RETURN;
976: END IF;
977:
978:
975: RETURN;
976: END IF;
977:
978:
979: IF p_iba_plcmnt_rec.last_update_date = FND_API.g_miss_date OR p_iba_plcmnt_rec.last_update_date IS NULL THEN
980: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_last_update_date');
981: x_return_status := FND_API.g_ret_sts_error;
982: RETURN;
983: END IF;
977:
978:
979: IF p_iba_plcmnt_rec.last_update_date = FND_API.g_miss_date OR p_iba_plcmnt_rec.last_update_date IS NULL THEN
980: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_last_update_date');
981: x_return_status := FND_API.g_ret_sts_error;
982: RETURN;
983: END IF;
984: ELSE
985:
985:
986:
987: IF p_iba_plcmnt_rec.placement_id IS NULL THEN
988: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_placement_id');
989: x_return_status := FND_API.g_ret_sts_error;
990: RETURN;
991: END IF;
992:
993:
992:
993:
994: IF p_iba_plcmnt_rec.site_id IS NULL THEN
995: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_site_id');
996: x_return_status := FND_API.g_ret_sts_error;
997: RETURN;
998: END IF;
999:
1000:
999:
1000:
1001: IF p_iba_plcmnt_rec.site_ref_code IS NULL THEN
1002: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_site_ref_code');
1003: x_return_status := FND_API.g_ret_sts_error;
1004: RETURN;
1005: END IF;
1006:
1007:
1006:
1007:
1008: IF p_iba_plcmnt_rec.page_id IS NULL THEN
1009: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_page_id');
1010: x_return_status := FND_API.g_ret_sts_error;
1011: RETURN;
1012: END IF;
1013:
1014:
1013:
1014:
1015: IF p_iba_plcmnt_rec.page_ref_code IS NULL THEN
1016: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_page_ref_code');
1017: x_return_status := FND_API.g_ret_sts_error;
1018: RETURN;
1019: END IF;
1020:
1021:
1020:
1021:
1022: IF p_iba_plcmnt_rec.location_code IS NULL THEN
1023: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_location_code');
1024: x_return_status := FND_API.g_ret_sts_error;
1025: RETURN;
1026: END IF;
1027:
1028:
1027:
1028:
1029: IF p_iba_plcmnt_rec.status_code IS NULL THEN
1030: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_status_code');
1031: x_return_status := FND_API.g_ret_sts_error;
1032: RETURN;
1033: END IF;
1034:
1035:
1034:
1035:
1036: IF p_iba_plcmnt_rec.created_by IS NULL THEN
1037: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_created_by');
1038: x_return_status := FND_API.g_ret_sts_error;
1039: RETURN;
1040: END IF;
1041:
1042:
1041:
1042:
1043: IF p_iba_plcmnt_rec.creation_date IS NULL THEN
1044: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_creation_date');
1045: x_return_status := FND_API.g_ret_sts_error;
1046: RETURN;
1047: END IF;
1048:
1049:
1048:
1049:
1050: IF p_iba_plcmnt_rec.last_updated_by IS NULL THEN
1051: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_last_updated_by');
1052: x_return_status := FND_API.g_ret_sts_error;
1053: RETURN;
1054: END IF;
1055:
1056:
1055:
1056:
1057: IF p_iba_plcmnt_rec.last_update_date IS NULL THEN
1058: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_iba_plcmnt_NO_last_update_date');
1059: x_return_status := FND_API.g_ret_sts_error;
1060: RETURN;
1061: END IF;
1062: END IF;
1063:
1068: x_return_status OUT NOCOPY VARCHAR2
1069: )
1070: IS
1071: BEGIN
1072: x_return_status := FND_API.g_ret_sts_success;
1073:
1074: -- Enter custom code here
1075:
1076: END check_iba_plcmnt_FK_items;
1080: x_return_status OUT NOCOPY VARCHAR2
1081: )
1082: IS
1083: BEGIN
1084: x_return_status := FND_API.g_ret_sts_success;
1085:
1086: -- Enter custom code here
1087:
1088: END check_iba_plcmnt_Lookup_items;
1107: check_iba_plcmnt_uk_items(
1108: p_iba_plcmnt_rec => p_iba_plcmnt_rec,
1109: p_validation_mode => p_validation_mode,
1110: x_return_status => x_return_status);
1111: IF x_return_status <> FND_API.g_ret_sts_success THEN
1112: RETURN;
1113: END IF;
1114:
1115: -- Check Items Required/NOT NULL API calls
1118: -- check_iba_plcmnt_req_items(
1119: -- p_iba_plcmnt_rec => p_iba_plcmnt_rec,
1120: -- p_validation_mode => p_validation_mode,
1121: -- x_return_status => x_return_status);
1122: -- IF x_return_status <> FND_API.g_ret_sts_success THEN
1123: -- RETURN;
1124: -- END IF;
1125: -- Check Items Foreign Keys API calls
1126:
1126:
1127: -- check_iba_plcmnt_FK_items(
1128: -- p_iba_plcmnt_rec => p_iba_plcmnt_rec,
1129: -- x_return_status => x_return_status);
1130: -- IF x_return_status <> FND_API.g_ret_sts_success THEN
1131: -- RETURN;
1132: -- END IF;
1133: -- Check Items Lookups
1134:
1134:
1135: -- check_iba_plcmnt_Lookup_items(
1136: -- p_iba_plcmnt_rec => p_iba_plcmnt_rec,
1137: -- x_return_status => x_return_status);
1138: -- IF x_return_status <> FND_API.g_ret_sts_success THEN
1139: -- RETURN;
1140: -- END IF;
1141:
1142: END Check_iba_plcmnt_Items;
1161: FETCH c_complete INTO l_iba_plcmnt_rec;
1162: CLOSE c_complete;
1163:
1164: -- placement_id
1165: IF p_iba_plcmnt_rec.placement_id = FND_API.g_miss_num THEN
1166: x_complete_rec.placement_id := l_iba_plcmnt_rec.placement_id;
1167: END IF;
1168:
1169: -- site_id
1166: x_complete_rec.placement_id := l_iba_plcmnt_rec.placement_id;
1167: END IF;
1168:
1169: -- site_id
1170: IF p_iba_plcmnt_rec.site_id = FND_API.g_miss_num THEN
1171: x_complete_rec.site_id := l_iba_plcmnt_rec.site_id;
1172: END IF;
1173:
1174: -- site_ref_code
1171: x_complete_rec.site_id := l_iba_plcmnt_rec.site_id;
1172: END IF;
1173:
1174: -- site_ref_code
1175: IF p_iba_plcmnt_rec.site_ref_code = FND_API.g_miss_char THEN
1176: x_complete_rec.site_ref_code := l_iba_plcmnt_rec.site_ref_code;
1177: END IF;
1178:
1179: -- page_id
1176: x_complete_rec.site_ref_code := l_iba_plcmnt_rec.site_ref_code;
1177: END IF;
1178:
1179: -- page_id
1180: IF p_iba_plcmnt_rec.page_id = FND_API.g_miss_num THEN
1181: x_complete_rec.page_id := l_iba_plcmnt_rec.page_id;
1182: END IF;
1183:
1184: -- page_ref_code
1181: x_complete_rec.page_id := l_iba_plcmnt_rec.page_id;
1182: END IF;
1183:
1184: -- page_ref_code
1185: IF p_iba_plcmnt_rec.page_ref_code = FND_API.g_miss_char THEN
1186: x_complete_rec.page_ref_code := l_iba_plcmnt_rec.page_ref_code;
1187: END IF;
1188:
1189: -- location_code
1186: x_complete_rec.page_ref_code := l_iba_plcmnt_rec.page_ref_code;
1187: END IF;
1188:
1189: -- location_code
1190: IF p_iba_plcmnt_rec.location_code = FND_API.g_miss_char THEN
1191: x_complete_rec.location_code := l_iba_plcmnt_rec.location_code;
1192: END IF;
1193:
1194: -- param1
1191: x_complete_rec.location_code := l_iba_plcmnt_rec.location_code;
1192: END IF;
1193:
1194: -- param1
1195: IF p_iba_plcmnt_rec.param1 = FND_API.g_miss_char THEN
1196: x_complete_rec.param1 := l_iba_plcmnt_rec.param1;
1197: END IF;
1198:
1199: -- param2
1196: x_complete_rec.param1 := l_iba_plcmnt_rec.param1;
1197: END IF;
1198:
1199: -- param2
1200: IF p_iba_plcmnt_rec.param2 = FND_API.g_miss_char THEN
1201: x_complete_rec.param2 := l_iba_plcmnt_rec.param2;
1202: END IF;
1203:
1204: -- param3
1201: x_complete_rec.param2 := l_iba_plcmnt_rec.param2;
1202: END IF;
1203:
1204: -- param3
1205: IF p_iba_plcmnt_rec.param3 = FND_API.g_miss_char THEN
1206: x_complete_rec.param3 := l_iba_plcmnt_rec.param3;
1207: END IF;
1208:
1209: -- param4
1206: x_complete_rec.param3 := l_iba_plcmnt_rec.param3;
1207: END IF;
1208:
1209: -- param4
1210: IF p_iba_plcmnt_rec.param4 = FND_API.g_miss_char THEN
1211: x_complete_rec.param4 := l_iba_plcmnt_rec.param4;
1212: END IF;
1213:
1214: -- param5
1211: x_complete_rec.param4 := l_iba_plcmnt_rec.param4;
1212: END IF;
1213:
1214: -- param5
1215: IF p_iba_plcmnt_rec.param5 = FND_API.g_miss_char THEN
1216: x_complete_rec.param5 := l_iba_plcmnt_rec.param5;
1217: END IF;
1218:
1219: -- stylesheet_id
1216: x_complete_rec.param5 := l_iba_plcmnt_rec.param5;
1217: END IF;
1218:
1219: -- stylesheet_id
1220: IF p_iba_plcmnt_rec.stylesheet_id = FND_API.g_miss_num THEN
1221: x_complete_rec.stylesheet_id := l_iba_plcmnt_rec.stylesheet_id;
1222: END IF;
1223:
1224: -- posting_id
1221: x_complete_rec.stylesheet_id := l_iba_plcmnt_rec.stylesheet_id;
1222: END IF;
1223:
1224: -- posting_id
1225: IF p_iba_plcmnt_rec.posting_id = FND_API.g_miss_num THEN
1226: x_complete_rec.posting_id := l_iba_plcmnt_rec.posting_id;
1227: END IF;
1228:
1229: -- status_code
1226: x_complete_rec.posting_id := l_iba_plcmnt_rec.posting_id;
1227: END IF;
1228:
1229: -- status_code
1230: IF p_iba_plcmnt_rec.status_code = FND_API.g_miss_char THEN
1231: x_complete_rec.status_code := l_iba_plcmnt_rec.status_code;
1232: END IF;
1233:
1234: -- track_events_flag
1231: x_complete_rec.status_code := l_iba_plcmnt_rec.status_code;
1232: END IF;
1233:
1234: -- track_events_flag
1235: IF p_iba_plcmnt_rec.track_events_flag = FND_API.g_miss_char THEN
1236: x_complete_rec.track_events_flag := l_iba_plcmnt_rec.track_events_flag;
1237: END IF;
1238:
1239: -- created_by
1236: x_complete_rec.track_events_flag := l_iba_plcmnt_rec.track_events_flag;
1237: END IF;
1238:
1239: -- created_by
1240: IF p_iba_plcmnt_rec.created_by = FND_API.g_miss_num THEN
1241: x_complete_rec.created_by := l_iba_plcmnt_rec.created_by;
1242: END IF;
1243:
1244: -- creation_date
1241: x_complete_rec.created_by := l_iba_plcmnt_rec.created_by;
1242: END IF;
1243:
1244: -- creation_date
1245: IF p_iba_plcmnt_rec.creation_date = FND_API.g_miss_date THEN
1246: x_complete_rec.creation_date := l_iba_plcmnt_rec.creation_date;
1247: END IF;
1248:
1249: -- last_updated_by
1246: x_complete_rec.creation_date := l_iba_plcmnt_rec.creation_date;
1247: END IF;
1248:
1249: -- last_updated_by
1250: IF p_iba_plcmnt_rec.last_updated_by = FND_API.g_miss_num THEN
1251: x_complete_rec.last_updated_by := l_iba_plcmnt_rec.last_updated_by;
1252: END IF;
1253:
1254: -- last_update_date
1251: x_complete_rec.last_updated_by := l_iba_plcmnt_rec.last_updated_by;
1252: END IF;
1253:
1254: -- last_update_date
1255: IF p_iba_plcmnt_rec.last_update_date = FND_API.g_miss_date THEN
1256: x_complete_rec.last_update_date := l_iba_plcmnt_rec.last_update_date;
1257: END IF;
1258:
1259: -- last_update_login
1256: x_complete_rec.last_update_date := l_iba_plcmnt_rec.last_update_date;
1257: END IF;
1258:
1259: -- last_update_login
1260: IF p_iba_plcmnt_rec.last_update_login = FND_API.g_miss_num THEN
1261: x_complete_rec.last_update_login := l_iba_plcmnt_rec.last_update_login;
1262: END IF;
1263:
1264: -- object_version_number
1261: x_complete_rec.last_update_login := l_iba_plcmnt_rec.last_update_login;
1262: END IF;
1263:
1264: -- object_version_number
1265: IF p_iba_plcmnt_rec.object_version_number = FND_API.g_miss_num THEN
1266: x_complete_rec.object_version_number := l_iba_plcmnt_rec.object_version_number;
1267: END IF;
1268: -- Note: Developers need to modify the procedure
1269: -- to handle any business specific requirements.
1269: -- to handle any business specific requirements.
1270: END Complete_iba_plcmnt_Rec;
1271: PROCEDURE Validate_iba_plcmnt(
1272: p_api_version_number IN NUMBER
1273: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1274: , p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1275: , p_iba_plcmnt_rec IN iba_plcmnt_rec_type
1276: , x_return_status OUT NOCOPY VARCHAR2
1277: , x_msg_count OUT NOCOPY NUMBER
1270: END Complete_iba_plcmnt_Rec;
1271: PROCEDURE Validate_iba_plcmnt(
1272: p_api_version_number IN NUMBER
1273: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1274: , p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1275: , p_iba_plcmnt_rec IN iba_plcmnt_rec_type
1276: , x_return_status OUT NOCOPY VARCHAR2
1277: , x_msg_count OUT NOCOPY NUMBER
1278: , x_msg_data OUT NOCOPY VARCHAR2
1288: -- Standard Start of API savepoint
1289: SAVEPOINT VALIDATE_Iba_Plcmnt_;
1290:
1291: -- Standard call to check for call compatibility.
1292: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1293: p_api_version_number,
1294: l_api_name,
1295: G_PKG_NAME)
1296: THEN
1293: p_api_version_number,
1294: l_api_name,
1295: G_PKG_NAME)
1296: THEN
1297: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1298: END IF;
1299:
1300: -- Initialize message list if p_init_msg_list is set to TRUE.
1301: IF FND_API.to_Boolean( p_init_msg_list )
1297: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1298: END IF;
1299:
1300: -- Initialize message list if p_init_msg_list is set to TRUE.
1301: IF FND_API.to_Boolean( p_init_msg_list )
1302: THEN
1303: FND_MSG_PUB.initialize;
1304: END IF;
1305: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1312: p_validation_mode => p_validation_mode,
1313: x_return_status => x_return_status
1314: );
1315:
1316: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1317: RAISE FND_API.G_EXC_ERROR;
1318: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1319: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1320: END IF;
1313: x_return_status => x_return_status
1314: );
1315:
1316: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1317: RAISE FND_API.G_EXC_ERROR;
1318: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1319: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1320: END IF;
1321: END IF;
1314: );
1315:
1316: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1317: RAISE FND_API.G_EXC_ERROR;
1318: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1319: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1320: END IF;
1321: END IF;
1322:
1315:
1316: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1317: RAISE FND_API.G_EXC_ERROR;
1318: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1319: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1320: END IF;
1321: END IF;
1322:
1323: Complete_iba_plcmnt_Rec(
1331: AMS_UTILITY_PVT.debug_message('In Validate: before Validate_iba_plcmnt_Rec call ' );
1332: END IF;
1333: Validate_iba_plcmnt_Rec(
1334: p_api_version_number => 1.0,
1335: p_init_msg_list => FND_API.G_FALSE,
1336: x_return_status => x_return_status,
1337: x_msg_count => x_msg_count,
1338: x_msg_data => x_msg_data,
1339: p_iba_plcmnt_rec => l_iba_plcmnt_rec);
1337: x_msg_count => x_msg_count,
1338: x_msg_data => x_msg_data,
1339: p_iba_plcmnt_rec => l_iba_plcmnt_rec);
1340:
1341: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1342: RAISE FND_API.G_EXC_ERROR;
1343: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1345: END IF;
1338: x_msg_data => x_msg_data,
1339: p_iba_plcmnt_rec => l_iba_plcmnt_rec);
1340:
1341: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1342: RAISE FND_API.G_EXC_ERROR;
1343: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1345: END IF;
1346: END IF;
1339: p_iba_plcmnt_rec => l_iba_plcmnt_rec);
1340:
1341: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1342: RAISE FND_API.G_EXC_ERROR;
1343: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1345: END IF;
1346: END IF;
1347:
1340:
1341: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1342: RAISE FND_API.G_EXC_ERROR;
1343: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1345: END IF;
1346: END IF;
1347:
1348:
1353: END IF;
1354:
1355:
1356: -- Initialize API return status to SUCCESS
1357: x_return_status := FND_API.G_RET_STS_SUCCESS;
1358:
1359:
1360: -- Debug Message
1361: IF (AMS_DEBUG_HIGH_ON) THEN
1370: );
1371: EXCEPTION
1372:
1373: WHEN AMS_Utility_PVT.resource_locked THEN
1374: x_return_status := FND_API.g_ret_sts_error;
1375: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1376:
1377: WHEN FND_API.G_EXC_ERROR THEN
1378: ROLLBACK TO VALIDATE_Iba_Plcmnt_;
1373: WHEN AMS_Utility_PVT.resource_locked THEN
1374: x_return_status := FND_API.g_ret_sts_error;
1375: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1376:
1377: WHEN FND_API.G_EXC_ERROR THEN
1378: ROLLBACK TO VALIDATE_Iba_Plcmnt_;
1379: x_return_status := FND_API.G_RET_STS_ERROR;
1380: -- Standard call to get message count and if count=1, get the message
1381: FND_MSG_PUB.Count_And_Get (
1375: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1376:
1377: WHEN FND_API.G_EXC_ERROR THEN
1378: ROLLBACK TO VALIDATE_Iba_Plcmnt_;
1379: x_return_status := FND_API.G_RET_STS_ERROR;
1380: -- Standard call to get message count and if count=1, get the message
1381: FND_MSG_PUB.Count_And_Get (
1382: p_encoded => FND_API.G_FALSE,
1383: p_count => x_msg_count,
1378: ROLLBACK TO VALIDATE_Iba_Plcmnt_;
1379: x_return_status := FND_API.G_RET_STS_ERROR;
1380: -- Standard call to get message count and if count=1, get the message
1381: FND_MSG_PUB.Count_And_Get (
1382: p_encoded => FND_API.G_FALSE,
1383: p_count => x_msg_count,
1384: p_data => x_msg_data
1385: );
1386:
1383: p_count => x_msg_count,
1384: p_data => x_msg_data
1385: );
1386:
1387: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1388: ROLLBACK TO VALIDATE_Iba_Plcmnt_;
1389: IF (AMS_DEBUG_HIGH_ON) THEN
1390:
1391: AMS_UTILITY_PVT.debug_message('In Validate - unexpected err: validation_mode= ' || p_validation_mode);
1389: IF (AMS_DEBUG_HIGH_ON) THEN
1390:
1391: AMS_UTILITY_PVT.debug_message('In Validate - unexpected err: validation_mode= ' || p_validation_mode);
1392: END IF;
1393: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1394: -- Standard call to get message count and if count=1, get the message
1395: FND_MSG_PUB.Count_And_Get (
1396: p_encoded => FND_API.G_FALSE,
1397: p_count => x_msg_count,
1392: END IF;
1393: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1394: -- Standard call to get message count and if count=1, get the message
1395: FND_MSG_PUB.Count_And_Get (
1396: p_encoded => FND_API.G_FALSE,
1397: p_count => x_msg_count,
1398: p_data => x_msg_data
1399: );
1400:
1403: IF (AMS_DEBUG_HIGH_ON) THEN
1404:
1405: AMS_UTILITY_PVT.debug_message('In Validate - others err: validation_mode= ' || p_validation_mode);
1406: END IF;
1407: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1408: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1409: THEN
1410: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1411: END IF;
1410: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1411: END IF;
1412: -- Standard call to get message count and if count=1, get the message
1413: FND_MSG_PUB.Count_And_Get (
1414: p_encoded => FND_API.G_FALSE,
1415: p_count => x_msg_count,
1416: p_data => x_msg_data
1417: );
1418: End Validate_Iba_Plcmnt;
1419:
1420:
1421: PROCEDURE Validate_iba_plcmnt_rec(
1422: p_api_version_number IN NUMBER,
1423: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1424: x_return_status OUT NOCOPY VARCHAR2,
1425: x_msg_count OUT NOCOPY NUMBER,
1426: x_msg_data OUT NOCOPY VARCHAR2,
1427: p_iba_plcmnt_rec IN iba_plcmnt_rec_type
1428: )
1429: IS
1430: BEGIN
1431: -- Initialize message list if p_init_msg_list is set to TRUE.
1432: IF FND_API.to_Boolean( p_init_msg_list )
1433: THEN
1434: FND_MSG_PUB.initialize;
1435: END IF;
1436:
1434: FND_MSG_PUB.initialize;
1435: END IF;
1436:
1437: -- Initialize API return status to SUCCESS
1438: x_return_status := FND_API.G_RET_STS_SUCCESS;
1439:
1440: -- Hint: Validate data
1441: -- If data not valid
1442: -- THEN
1439:
1440: -- Hint: Validate data
1441: -- If data not valid
1442: -- THEN
1443: -- x_return_status := FND_API.G_RET_STS_ERROR;
1444:
1445: -- Debug Message
1446: IF (AMS_DEBUG_HIGH_ON) THEN
1447: