24: AMS_DEBUG_MEDIUM_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
25:
26: PROCEDURE Create_List_Assoc(
27: p_api_version_number IN NUMBER,
28: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
29: p_commit IN VARCHAR2 := FND_API.G_FALSE,
30: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
31:
32: x_return_status OUT NOCOPY VARCHAR2,
25:
26: PROCEDURE Create_List_Assoc(
27: p_api_version_number IN NUMBER,
28: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
29: p_commit IN VARCHAR2 := FND_API.G_FALSE,
30: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
31:
32: x_return_status OUT NOCOPY VARCHAR2,
33: x_msg_count OUT NOCOPY NUMBER,
26: PROCEDURE Create_List_Assoc(
27: p_api_version_number IN NUMBER,
28: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
29: p_commit IN VARCHAR2 := FND_API.G_FALSE,
30: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
31:
32: x_return_status OUT NOCOPY VARCHAR2,
33: x_msg_count OUT NOCOPY NUMBER,
34: x_msg_data OUT NOCOPY VARCHAR2,
41: L_API_NAME CONSTANT VARCHAR2(30) := 'Create_List_Assoc';
42: L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
43: l_return_status_full VARCHAR2(1);
44: l_object_version_number NUMBER := 1;
45: l_org_id NUMBER := FND_API.G_MISS_NUM;
46: l_LIST_CONT_RESTRICTIONs_ID NUMBER;
47: l_dummy NUMBER;
48:
49: CURSOR c_id IS
59: -- Standard Start of API savepoint
60: SAVEPOINT CREATE_List_Assoc_PVT;
61:
62: -- Standard call to check for call compatibility.
63: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
64: p_api_version_number,
65: l_api_name,
66: G_PKG_NAME)
67: THEN
65: l_api_name,
66: G_PKG_NAME)
67: THEN
68:
69: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
70: END IF;
71:
72: -- Initialize message list if p_init_msg_list is set to TRUE.
73: IF FND_API.to_Boolean( p_init_msg_list )
69: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
70: END IF;
71:
72: -- Initialize message list if p_init_msg_list is set to TRUE.
73: IF FND_API.to_Boolean( p_init_msg_list )
74: THEN
75: FND_MSG_PUB.initialize;
76: END IF;
77:
82: END IF;
83:
84:
85: -- Initialize API return status to SUCCESS
86: x_return_status := FND_API.G_RET_STS_SUCCESS;
87:
88: -- Local variable initialization
89:
90: IF p_list_assoc_rec.LIST_CONT_RESTRICTIONs_ID IS NULL OR p_list_assoc_rec.LIST_CONT_RESTRICTIONs_ID = FND_API.g_miss_num THEN
86: x_return_status := FND_API.G_RET_STS_SUCCESS;
87:
88: -- Local variable initialization
89:
90: IF p_list_assoc_rec.LIST_CONT_RESTRICTIONs_ID IS NULL OR p_list_assoc_rec.LIST_CONT_RESTRICTIONs_ID = FND_API.g_miss_num THEN
91: LOOP
92: l_dummy := NULL;
93: OPEN c_id;
94: FETCH c_id INTO l_LIST_CONT_RESTRICTIONs_ID;
107:
108: IF FND_GLOBAL.User_Id IS NULL
109: THEN
110: AMS_Utility_PVT.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
111: RAISE FND_API.G_EXC_ERROR;
112: END IF;
113: /*
114: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
115: THEN
110: AMS_Utility_PVT.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
111: RAISE FND_API.G_EXC_ERROR;
112: END IF;
113: /*
114: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
115: THEN
116: -- Debug message
117:
118: IF (AMS_DEBUG_HIGH_ON) THEN
125:
126: Invoke validation procedures
127: Validate_list_assoc(
128: p_api_version_number => 1.0,
129: p_init_msg_list => FND_API.G_FALSE,
130: p_validation_level => p_validation_level,
131: p_list_assoc_rec => p_list_assoc_rec,
132: x_return_status => x_return_status,
133: x_msg_count => x_msg_count,
133: x_msg_count => x_msg_count,
134: x_msg_data => x_msg_data);
135: END IF;
136:
137: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
138:
139: RAISE FND_API.G_EXC_ERROR;
140: END IF;
141: */
135: END IF;
136:
137: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
138:
139: RAISE FND_API.G_EXC_ERROR;
140: END IF;
141: */
142: -- Debug Message
143: IF (AMS_DEBUG_HIGH_ON) THEN
158: p_do_not_contact_flag => p_list_assoc_rec.do_not_contact_flag,
159: p_media_id => p_list_assoc_rec.media_id,
160: p_list_used_by => p_list_assoc_rec.list_used_by,
161: p_list_used_by_id => p_list_assoc_rec.list_used_by_id);
162: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
163:
164: RAISE FND_API.G_EXC_ERROR;
165: END IF;
166: --
160: p_list_used_by => p_list_assoc_rec.list_used_by,
161: p_list_used_by_id => p_list_assoc_rec.list_used_by_id);
162: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
163:
164: RAISE FND_API.G_EXC_ERROR;
165: END IF;
166: --
167: -- End of API body
168: --
167: -- End of API body
168: --
169:
170: -- Standard check for p_commit
171: IF FND_API.to_Boolean( p_commit )
172: THEN
173: COMMIT WORK;
174: END IF;
175:
187: );
188: EXCEPTION
189:
190: WHEN AMS_Utility_PVT.resource_locked THEN
191: x_return_status := FND_API.g_ret_sts_error;
192: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
193:
194: WHEN FND_API.G_EXC_ERROR THEN
195: ROLLBACK TO CREATE_List_Assoc_PVT;
190: WHEN AMS_Utility_PVT.resource_locked THEN
191: x_return_status := FND_API.g_ret_sts_error;
192: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
193:
194: WHEN FND_API.G_EXC_ERROR THEN
195: ROLLBACK TO CREATE_List_Assoc_PVT;
196: x_return_status := FND_API.G_RET_STS_ERROR;
197: -- Standard call to get message count and if count=1, get the message
198: FND_MSG_PUB.Count_And_Get (
192: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
193:
194: WHEN FND_API.G_EXC_ERROR THEN
195: ROLLBACK TO CREATE_List_Assoc_PVT;
196: x_return_status := FND_API.G_RET_STS_ERROR;
197: -- Standard call to get message count and if count=1, get the message
198: FND_MSG_PUB.Count_And_Get (
199: p_encoded => FND_API.G_FALSE,
200: p_count => x_msg_count,
195: ROLLBACK TO CREATE_List_Assoc_PVT;
196: x_return_status := FND_API.G_RET_STS_ERROR;
197: -- Standard call to get message count and if count=1, get the message
198: FND_MSG_PUB.Count_And_Get (
199: p_encoded => FND_API.G_FALSE,
200: p_count => x_msg_count,
201: p_data => x_msg_data
202: );
203:
200: p_count => x_msg_count,
201: p_data => x_msg_data
202: );
203:
204: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
205: ROLLBACK TO CREATE_List_Assoc_PVT;
206: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
207: -- Standard call to get message count and if count=1, get the message
208: FND_MSG_PUB.Count_And_Get (
202: );
203:
204: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
205: ROLLBACK TO CREATE_List_Assoc_PVT;
206: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
207: -- Standard call to get message count and if count=1, get the message
208: FND_MSG_PUB.Count_And_Get (
209: p_encoded => FND_API.G_FALSE,
210: p_count => x_msg_count,
205: ROLLBACK TO CREATE_List_Assoc_PVT;
206: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
207: -- Standard call to get message count and if count=1, get the message
208: FND_MSG_PUB.Count_And_Get (
209: p_encoded => FND_API.G_FALSE,
210: p_count => x_msg_count,
211: p_data => x_msg_data
212: );
213:
212: );
213:
214: WHEN OTHERS THEN
215: ROLLBACK TO CREATE_List_Assoc_PVT;
216: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
217: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
218: THEN
219: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
220: END IF;
219: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
220: END IF;
221: -- Standard call to get message count and if count=1, get the message
222: FND_MSG_PUB.Count_And_Get (
223: p_encoded => FND_API.G_FALSE,
224: p_count => x_msg_count,
225: p_data => x_msg_data
226: );
227: End Create_List_Assoc;
228:
229:
230: PROCEDURE Update_List_Assoc(
231: p_api_version_number IN NUMBER,
232: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
233: p_commit IN VARCHAR2 := FND_API.G_FALSE,
234: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
235:
236: x_return_status OUT NOCOPY VARCHAR2,
229:
230: PROCEDURE Update_List_Assoc(
231: p_api_version_number IN NUMBER,
232: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
233: p_commit IN VARCHAR2 := FND_API.G_FALSE,
234: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
235:
236: x_return_status OUT NOCOPY VARCHAR2,
237: x_msg_count OUT NOCOPY NUMBER,
230: PROCEDURE Update_List_Assoc(
231: p_api_version_number IN NUMBER,
232: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
233: p_commit IN VARCHAR2 := FND_API.G_FALSE,
234: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
235:
236: x_return_status OUT NOCOPY VARCHAR2,
237: x_msg_count OUT NOCOPY NUMBER,
238: x_msg_data OUT NOCOPY VARCHAR2,
261: -- Standard Start of API savepoint
262: SAVEPOINT UPDATE_List_Assoc_PVT;
263:
264: -- Standard call to check for call compatibility.
265: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
266: p_api_version_number,
267: l_api_name,
268: G_PKG_NAME)
269: THEN
267: l_api_name,
268: G_PKG_NAME)
269: THEN
270:
271: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
272: END IF;
273:
274: -- Initialize message list if p_init_msg_list is set to TRUE.
275: IF FND_API.to_Boolean( p_init_msg_list )
271: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
272: END IF;
273:
274: -- Initialize message list if p_init_msg_list is set to TRUE.
275: IF FND_API.to_Boolean( p_init_msg_list )
276: THEN
277: FND_MSG_PUB.initialize;
278: END IF;
279:
284: END IF;
285:
286:
287: -- Initialize API return status to SUCCESS
288: x_return_status := FND_API.G_RET_STS_SUCCESS;
289:
290: -- Debug Message
291: IF (AMS_DEBUG_HIGH_ON) THEN
292:
301: If ( c_get_List_Assoc%NOTFOUND) THEN
302: AMS_Utility_PVT.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
303: p_token_name => 'INFO',
304: p_token_value => 'List_Assoc') ;
305: RAISE FND_API.G_EXC_ERROR;
306: END IF;
307: -- Debug Message
308: IF (AMS_DEBUG_HIGH_ON) THEN
309:
313: */
314:
315:
316: If (l_tar_list_assoc_rec.object_version_number is NULL or
317: l_tar_list_assoc_rec.object_version_number = FND_API.G_MISS_NUM ) Then
318: AMS_Utility_PVT.Error_Message(p_message_name => 'API_VERSION_MISSING',
319: p_token_name => 'COLUMN',
320: p_token_value => 'Last_Update_Date') ;
321: raise FND_API.G_EXC_ERROR;
317: l_tar_list_assoc_rec.object_version_number = FND_API.G_MISS_NUM ) Then
318: AMS_Utility_PVT.Error_Message(p_message_name => 'API_VERSION_MISSING',
319: p_token_name => 'COLUMN',
320: p_token_value => 'Last_Update_Date') ;
321: raise FND_API.G_EXC_ERROR;
322: End if;
323: -- Check Whether record has been changed by someone else
324: If (l_tar_list_assoc_rec.object_version_number <> l_ref_list_assoc_rec.object_version_number) Then
325: AMS_Utility_PVT.Error_Message(p_message_name => 'API_RECORD_CHANGED',
324: If (l_tar_list_assoc_rec.object_version_number <> l_ref_list_assoc_rec.object_version_number) Then
325: AMS_Utility_PVT.Error_Message(p_message_name => 'API_RECORD_CHANGED',
326: p_token_name => 'INFO',
327: p_token_value => 'List_Assoc') ;
328: raise FND_API.G_EXC_ERROR;
329: End if;
330: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
331: THEN
332: -- Debug message
326: p_token_name => 'INFO',
327: p_token_value => 'List_Assoc') ;
328: raise FND_API.G_EXC_ERROR;
329: End if;
330: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
331: THEN
332: -- Debug message
333: IF (AMS_DEBUG_HIGH_ON) THEN
334:
337:
338: -- Invoke validation procedures
339: Validate_list_assoc(
340: p_api_version_number => 1.0,
341: p_init_msg_list => FND_API.G_FALSE,
342: p_validation_level => p_validation_level,
343: p_list_assoc_rec => p_list_assoc_rec,
344: x_return_status => x_return_status,
345: x_msg_count => x_msg_count,
345: x_msg_count => x_msg_count,
346: x_msg_data => x_msg_data);
347: END IF;
348:
349: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
350:
351: RAISE FND_API.G_EXC_ERROR;
352: END IF;
353:
347: END IF;
348:
349: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
350:
351: RAISE FND_API.G_EXC_ERROR;
352: END IF;
353:
354:
355: -- Debug Message
376: -- End of API body.
377: --
378:
379: -- Standard check for p_commit
380: IF FND_API.to_Boolean( p_commit )
381: THEN
382: COMMIT WORK;
383: END IF;
384:
396: );
397: EXCEPTION
398:
399: WHEN AMS_Utility_PVT.resource_locked THEN
400: x_return_status := FND_API.g_ret_sts_error;
401: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
402:
403: WHEN FND_API.G_EXC_ERROR THEN
404: ROLLBACK TO UPDATE_List_Assoc_PVT;
399: WHEN AMS_Utility_PVT.resource_locked THEN
400: x_return_status := FND_API.g_ret_sts_error;
401: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
402:
403: WHEN FND_API.G_EXC_ERROR THEN
404: ROLLBACK TO UPDATE_List_Assoc_PVT;
405: x_return_status := FND_API.G_RET_STS_ERROR;
406: -- Standard call to get message count and if count=1, get the message
407: FND_MSG_PUB.Count_And_Get (
401: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
402:
403: WHEN FND_API.G_EXC_ERROR THEN
404: ROLLBACK TO UPDATE_List_Assoc_PVT;
405: x_return_status := FND_API.G_RET_STS_ERROR;
406: -- Standard call to get message count and if count=1, get the message
407: FND_MSG_PUB.Count_And_Get (
408: p_encoded => FND_API.G_FALSE,
409: p_count => x_msg_count,
404: ROLLBACK TO UPDATE_List_Assoc_PVT;
405: x_return_status := FND_API.G_RET_STS_ERROR;
406: -- Standard call to get message count and if count=1, get the message
407: FND_MSG_PUB.Count_And_Get (
408: p_encoded => FND_API.G_FALSE,
409: p_count => x_msg_count,
410: p_data => x_msg_data
411: );
412:
409: p_count => x_msg_count,
410: p_data => x_msg_data
411: );
412:
413: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
414: ROLLBACK TO UPDATE_List_Assoc_PVT;
415: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
416: -- Standard call to get message count and if count=1, get the message
417: FND_MSG_PUB.Count_And_Get (
411: );
412:
413: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
414: ROLLBACK TO UPDATE_List_Assoc_PVT;
415: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
416: -- Standard call to get message count and if count=1, get the message
417: FND_MSG_PUB.Count_And_Get (
418: p_encoded => FND_API.G_FALSE,
419: p_count => x_msg_count,
414: ROLLBACK TO UPDATE_List_Assoc_PVT;
415: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
416: -- Standard call to get message count and if count=1, get the message
417: FND_MSG_PUB.Count_And_Get (
418: p_encoded => FND_API.G_FALSE,
419: p_count => x_msg_count,
420: p_data => x_msg_data
421: );
422:
421: );
422:
423: WHEN OTHERS THEN
424: ROLLBACK TO UPDATE_List_Assoc_PVT;
425: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
426: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
427: THEN
428: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
429: END IF;
428: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
429: END IF;
430: -- Standard call to get message count and if count=1, get the message
431: FND_MSG_PUB.Count_And_Get (
432: p_encoded => FND_API.G_FALSE,
433: p_count => x_msg_count,
434: p_data => x_msg_data
435: );
436: End Update_List_Assoc;
437:
438:
439: PROCEDURE Delete_List_Assoc(
440: p_api_version_number IN NUMBER,
441: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
442: p_commit IN VARCHAR2 := FND_API.G_FALSE,
443: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
444: x_return_status OUT NOCOPY VARCHAR2,
445: x_msg_count OUT NOCOPY NUMBER,
438:
439: PROCEDURE Delete_List_Assoc(
440: p_api_version_number IN NUMBER,
441: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
442: p_commit IN VARCHAR2 := FND_API.G_FALSE,
443: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
444: x_return_status OUT NOCOPY VARCHAR2,
445: x_msg_count OUT NOCOPY NUMBER,
446: x_msg_data OUT NOCOPY VARCHAR2,
439: PROCEDURE Delete_List_Assoc(
440: p_api_version_number IN NUMBER,
441: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
442: p_commit IN VARCHAR2 := FND_API.G_FALSE,
443: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
444: x_return_status OUT NOCOPY VARCHAR2,
445: x_msg_count OUT NOCOPY NUMBER,
446: x_msg_data OUT NOCOPY VARCHAR2,
447: p_list_cont_restrictions_id IN NUMBER,
457: -- Standard Start of API savepoint
458: SAVEPOINT DELETE_List_Assoc_PVT;
459:
460: -- Standard call to check for call compatibility.
461: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
462: p_api_version_number,
463: l_api_name,
464: G_PKG_NAME)
465: THEN
463: l_api_name,
464: G_PKG_NAME)
465: THEN
466:
467: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
468: END IF;
469:
470: -- Initialize message list if p_init_msg_list is set to TRUE.
471: IF FND_API.to_Boolean( p_init_msg_list )
467: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
468: END IF;
469:
470: -- Initialize message list if p_init_msg_list is set to TRUE.
471: IF FND_API.to_Boolean( p_init_msg_list )
472: THEN
473: FND_MSG_PUB.initialize;
474: END IF;
475:
480: END IF;
481:
482:
483: -- Initialize API return status to SUCCESS
484: x_return_status := FND_API.G_RET_STS_SUCCESS;
485:
486: --
487: -- Api body
488: --
499: -- End of API body
500: --
501:
502: -- Standard check for p_commit
503: IF FND_API.to_Boolean( p_commit )
504: THEN
505: COMMIT WORK;
506: END IF;
507:
519: );
520: EXCEPTION
521:
522: WHEN AMS_Utility_PVT.resource_locked THEN
523: x_return_status := FND_API.g_ret_sts_error;
524: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
525:
526: WHEN FND_API.G_EXC_ERROR THEN
527: ROLLBACK TO DELETE_List_Assoc_PVT;
522: WHEN AMS_Utility_PVT.resource_locked THEN
523: x_return_status := FND_API.g_ret_sts_error;
524: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
525:
526: WHEN FND_API.G_EXC_ERROR THEN
527: ROLLBACK TO DELETE_List_Assoc_PVT;
528: x_return_status := FND_API.G_RET_STS_ERROR;
529: -- Standard call to get message count and if count=1, get the message
530: FND_MSG_PUB.Count_And_Get (
524: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
525:
526: WHEN FND_API.G_EXC_ERROR THEN
527: ROLLBACK TO DELETE_List_Assoc_PVT;
528: x_return_status := FND_API.G_RET_STS_ERROR;
529: -- Standard call to get message count and if count=1, get the message
530: FND_MSG_PUB.Count_And_Get (
531: p_encoded => FND_API.G_FALSE,
532: p_count => x_msg_count,
527: ROLLBACK TO DELETE_List_Assoc_PVT;
528: x_return_status := FND_API.G_RET_STS_ERROR;
529: -- Standard call to get message count and if count=1, get the message
530: FND_MSG_PUB.Count_And_Get (
531: p_encoded => FND_API.G_FALSE,
532: p_count => x_msg_count,
533: p_data => x_msg_data
534: );
535:
532: p_count => x_msg_count,
533: p_data => x_msg_data
534: );
535:
536: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
537: ROLLBACK TO DELETE_List_Assoc_PVT;
538: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
539: -- Standard call to get message count and if count=1, get the message
540: FND_MSG_PUB.Count_And_Get (
534: );
535:
536: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
537: ROLLBACK TO DELETE_List_Assoc_PVT;
538: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
539: -- Standard call to get message count and if count=1, get the message
540: FND_MSG_PUB.Count_And_Get (
541: p_encoded => FND_API.G_FALSE,
542: p_count => x_msg_count,
537: ROLLBACK TO DELETE_List_Assoc_PVT;
538: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
539: -- Standard call to get message count and if count=1, get the message
540: FND_MSG_PUB.Count_And_Get (
541: p_encoded => FND_API.G_FALSE,
542: p_count => x_msg_count,
543: p_data => x_msg_data
544: );
545:
544: );
545:
546: WHEN OTHERS THEN
547: ROLLBACK TO DELETE_List_Assoc_PVT;
548: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
549: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
550: THEN
551: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
552: END IF;
551: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
552: END IF;
553: -- Standard call to get message count and if count=1, get the message
554: FND_MSG_PUB.Count_And_Get (
555: p_encoded => FND_API.G_FALSE,
556: p_count => x_msg_count,
557: p_data => x_msg_data
558: );
559: End Delete_List_Assoc;
562:
563: -- Hint: Primary key needs to be returned.
564: PROCEDURE Lock_List_Assoc(
565: p_api_version_number IN NUMBER,
566: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
567:
568: x_return_status OUT NOCOPY VARCHAR2,
569: x_msg_count OUT NOCOPY NUMBER,
570: x_msg_data OUT NOCOPY VARCHAR2,
594: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
595: END IF;
596:
597: -- Initialize message list if p_init_msg_list is set to TRUE.
598: IF FND_API.to_Boolean( p_init_msg_list )
599: THEN
600: FND_MSG_PUB.initialize;
601: END IF;
602:
600: FND_MSG_PUB.initialize;
601: END IF;
602:
603: -- Standard call to check for call compatibility.
604: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
605: p_api_version_number,
606: l_api_name,
607: G_PKG_NAME)
608: THEN
606: l_api_name,
607: G_PKG_NAME)
608: THEN
609:
610: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
611: END IF;
612:
613:
614: -- Initialize API return status to SUCCESS
611: END IF;
612:
613:
614: -- Initialize API return status to SUCCESS
615: x_return_status := FND_API.G_RET_STS_SUCCESS;
616:
617:
618: ------------------------ lock -------------------------
619:
633: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
634: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
635: FND_MSG_PUB.add;
636: END IF;
637: RAISE FND_API.g_exc_error;
638: END IF;
639:
640: CLOSE c_List_Assoc;
641:
640: CLOSE c_List_Assoc;
641:
642: -------------------- finish --------------------------
643: FND_MSG_PUB.count_and_get(
644: p_encoded => FND_API.g_false,
645: p_count => x_msg_count,
646: p_data => x_msg_data);
647: IF (AMS_DEBUG_HIGH_ON) THEN
648:
650: END IF;
651: EXCEPTION
652:
653: WHEN AMS_Utility_PVT.resource_locked THEN
654: x_return_status := FND_API.g_ret_sts_error;
655: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
656:
657: WHEN FND_API.G_EXC_ERROR THEN
658: ROLLBACK TO LOCK_List_Assoc_PVT;
653: WHEN AMS_Utility_PVT.resource_locked THEN
654: x_return_status := FND_API.g_ret_sts_error;
655: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
656:
657: WHEN FND_API.G_EXC_ERROR THEN
658: ROLLBACK TO LOCK_List_Assoc_PVT;
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: -- Standard call to get message count and if count=1, get the message
661: FND_MSG_PUB.Count_And_Get (
655: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
656:
657: WHEN FND_API.G_EXC_ERROR THEN
658: ROLLBACK TO LOCK_List_Assoc_PVT;
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: -- Standard call to get message count and if count=1, get the message
661: FND_MSG_PUB.Count_And_Get (
662: p_encoded => FND_API.G_FALSE,
663: p_count => x_msg_count,
658: ROLLBACK TO LOCK_List_Assoc_PVT;
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: -- Standard call to get message count and if count=1, get the message
661: FND_MSG_PUB.Count_And_Get (
662: p_encoded => FND_API.G_FALSE,
663: p_count => x_msg_count,
664: p_data => x_msg_data
665: );
666:
663: p_count => x_msg_count,
664: p_data => x_msg_data
665: );
666:
667: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
668: ROLLBACK TO LOCK_List_Assoc_PVT;
669: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
670: -- Standard call to get message count and if count=1, get the message
671: FND_MSG_PUB.Count_And_Get (
665: );
666:
667: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
668: ROLLBACK TO LOCK_List_Assoc_PVT;
669: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
670: -- Standard call to get message count and if count=1, get the message
671: FND_MSG_PUB.Count_And_Get (
672: p_encoded => FND_API.G_FALSE,
673: p_count => x_msg_count,
668: ROLLBACK TO LOCK_List_Assoc_PVT;
669: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
670: -- Standard call to get message count and if count=1, get the message
671: FND_MSG_PUB.Count_And_Get (
672: p_encoded => FND_API.G_FALSE,
673: p_count => x_msg_count,
674: p_data => x_msg_data
675: );
676:
675: );
676:
677: WHEN OTHERS THEN
678: ROLLBACK TO LOCK_List_Assoc_PVT;
679: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
680: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
681: THEN
682: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
683: END IF;
682: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
683: END IF;
684: -- Standard call to get message count and if count=1, get the message
685: FND_MSG_PUB.Count_And_Get (
686: p_encoded => FND_API.G_FALSE,
687: p_count => x_msg_count,
688: p_data => x_msg_data
689: );
690: End Lock_List_Assoc;
697: IS
698: l_valid_flag VARCHAR2(1);
699:
700: BEGIN
701: x_return_status := FND_API.g_ret_sts_success;
702: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
703: l_valid_flag := AMS_Utility_PVT.check_uniqueness(
704: 'AMS_LIST_CONT_RESTRICTIONS',
705: 'LIST_CONTACT_RESTRICTIONs_ID = ''' || p_list_assoc_rec.LIST_CONT_RESTRICTIONs_ID ||''''
711: ''' AND LIST_CONTACT_RESTRICTIONs_ID <> ' || p_list_assoc_rec.LIST_CONT_RESTRICTIONs_ID
712: );
713: END IF;
714:
715: IF l_valid_flag = FND_API.g_false THEN
716: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_LIST_CONTACT_RESTRICTIONS_ID_DUPLICATE');
717: x_return_status := FND_API.g_ret_sts_error;
718: RETURN;
719: END IF;
713: END IF;
714:
715: IF l_valid_flag = FND_API.g_false THEN
716: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_LIST_CONTACT_RESTRICTIONS_ID_DUPLICATE');
717: x_return_status := FND_API.g_ret_sts_error;
718: RETURN;
719: END IF;
720:
721: END check_list_assoc_uk_items;
743:
744: BEGIN
745:
746:
747: x_return_status := FND_API.g_ret_sts_success;
748:
749: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
750:
751:
748:
749: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
750:
751:
752: IF p_list_assoc_rec.list_cont_restrictions_id = FND_API.g_miss_num OR p_list_assoc_rec.list_cont_restrictions_id IS NULL THEN
753: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_list_contact_restrictions_id');
754: x_return_status := FND_API.g_ret_sts_error;
755: RETURN;
756: END IF;
750:
751:
752: IF p_list_assoc_rec.list_cont_restrictions_id = FND_API.g_miss_num OR p_list_assoc_rec.list_cont_restrictions_id IS NULL THEN
753: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_list_contact_restrictions_id');
754: x_return_status := FND_API.g_ret_sts_error;
755: RETURN;
756: END IF;
757:
758:
755: RETURN;
756: END IF;
757:
758:
759: IF p_list_assoc_rec.list_header_id = FND_API.g_miss_num OR p_list_assoc_rec.list_header_id IS NULL THEN
760: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_list_header_id');
761: x_return_status := FND_API.g_ret_sts_error;
762: RETURN;
763: END IF;
757:
758:
759: IF p_list_assoc_rec.list_header_id = FND_API.g_miss_num OR p_list_assoc_rec.list_header_id IS NULL THEN
760: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_list_header_id');
761: x_return_status := FND_API.g_ret_sts_error;
762: RETURN;
763: END IF;
764:
765:
762: RETURN;
763: END IF;
764:
765:
766: IF p_list_assoc_rec.last_update_date = FND_API.g_miss_date OR p_list_assoc_rec.last_update_date IS NULL THEN
767: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_last_update_date');
768: x_return_status := FND_API.g_ret_sts_error;
769: RETURN;
770: END IF;
764:
765:
766: IF p_list_assoc_rec.last_update_date = FND_API.g_miss_date OR p_list_assoc_rec.last_update_date IS NULL THEN
767: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_last_update_date');
768: x_return_status := FND_API.g_ret_sts_error;
769: RETURN;
770: END IF;
771:
772:
769: RETURN;
770: END IF;
771:
772:
773: IF p_list_assoc_rec.last_updated_by = FND_API.g_miss_num OR p_list_assoc_rec.last_updated_by IS NULL THEN
774: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_last_updated_by');
775: x_return_status := FND_API.g_ret_sts_error;
776: RETURN;
777: END IF;
771:
772:
773: IF p_list_assoc_rec.last_updated_by = FND_API.g_miss_num OR p_list_assoc_rec.last_updated_by IS NULL THEN
774: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_last_updated_by');
775: x_return_status := FND_API.g_ret_sts_error;
776: RETURN;
777: END IF;
778:
779:
776: RETURN;
777: END IF;
778:
779:
780: IF p_list_assoc_rec.creation_date = FND_API.g_miss_date OR p_list_assoc_rec.creation_date IS NULL THEN
781: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_creation_date');
782: x_return_status := FND_API.g_ret_sts_error;
783: RETURN;
784: END IF;
778:
779:
780: IF p_list_assoc_rec.creation_date = FND_API.g_miss_date OR p_list_assoc_rec.creation_date IS NULL THEN
781: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_creation_date');
782: x_return_status := FND_API.g_ret_sts_error;
783: RETURN;
784: END IF;
785:
786:
783: RETURN;
784: END IF;
785:
786:
787: IF p_list_assoc_rec.created_by = FND_API.g_miss_num OR p_list_assoc_rec.created_by IS NULL THEN
788: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_created_by');
789: x_return_status := FND_API.g_ret_sts_error;
790: RETURN;
791: END IF;
785:
786:
787: IF p_list_assoc_rec.created_by = FND_API.g_miss_num OR p_list_assoc_rec.created_by IS NULL THEN
788: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_created_by');
789: x_return_status := FND_API.g_ret_sts_error;
790: RETURN;
791: END IF;
792: ELSE
793:
793:
794:
795: IF p_list_assoc_rec.list_cont_restrictions_id IS NULL THEN
796: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_list_contact_restrictions_id');
797: x_return_status := FND_API.g_ret_sts_error;
798: RETURN;
799: END IF;
800:
801:
800:
801:
802: IF p_list_assoc_rec.list_header_id IS NULL THEN
803: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_list_header_id');
804: x_return_status := FND_API.g_ret_sts_error;
805: RETURN;
806: END IF;
807:
808:
807:
808:
809: IF p_list_assoc_rec.last_update_date IS NULL THEN
810: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_last_update_date');
811: x_return_status := FND_API.g_ret_sts_error;
812: RETURN;
813: END IF;
814:
815:
814:
815:
816: IF p_list_assoc_rec.last_updated_by IS NULL THEN
817: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_last_updated_by');
818: x_return_status := FND_API.g_ret_sts_error;
819: RETURN;
820: END IF;
821:
822:
821:
822:
823: IF p_list_assoc_rec.creation_date IS NULL THEN
824: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_creation_date');
825: x_return_status := FND_API.g_ret_sts_error;
826: RETURN;
827: END IF;
828:
829:
828:
829:
830: IF p_list_assoc_rec.created_by IS NULL THEN
831: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_list_assoc_NO_created_by');
832: x_return_status := FND_API.g_ret_sts_error;
833: RETURN;
834: END IF;
835: END IF;
836:
838: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
839: FND_MESSAGE.set_name('AMS', 'do_not_contact_flag is neither Y nor N');
840: FND_MSG_PUB.add;
841: END IF;
842: RAISE FND_API.g_exc_error;
843: RETURN;
844: END IF;
845:
846: IF p_list_assoc_rec.list_used_by<>'CAMP' AND p_list_assoc_rec.list_used_by <> 'MEDI' THEN
848: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
849: FND_MESSAGE.set_name('AMS', 'list_used_by is neither CAMP nor MEDI');
850: FND_MSG_PUB.add;
851: END IF;
852: RAISE FND_API.g_exc_error;
853: RETURN;
854: END IF;
855: END IF;
856:
865: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
866: FND_MESSAGE.set_name('AMS', 'MEDIA_ID_NOT_VALID');
867: FND_MSG_PUB.add;
868: END IF;
869: RAISE FND_API.g_exc_error;
870: END IF;
871: END IF;
872: CLOSE c_media_id;
873:
882: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
883: FND_MESSAGE.set_name('AMS', 'CAMPAIGN_ID_NOT_VALID');
884: FND_MSG_PUB.add;
885: END IF;
886: RAISE FND_API.g_exc_error;
887: END IF;
888: END IF;
889: CLOSE c_camp_id;
890:
895: x_return_status OUT NOCOPY VARCHAR2
896: )
897: IS
898: BEGIN
899: x_return_status := FND_API.g_ret_sts_success;
900:
901: -- Enter custom code here
902:
903: END check_list_assoc_FK_items;
907: x_return_status OUT NOCOPY VARCHAR2
908: )
909: IS
910: BEGIN
911: x_return_status := FND_API.g_ret_sts_success;
912:
913: -- Enter custom code here
914:
915: END check_list_assoc_Lookup_items;
927: check_list_assoc_uk_items(
928: p_list_assoc_rec => p_list_assoc_rec,
929: p_validation_mode => p_validation_mode,
930: x_return_status => x_return_status);
931: IF x_return_status <> FND_API.g_ret_sts_success THEN
932: RETURN;
933: END IF;
934:
935: -- Check Items Required/NOT NULL API calls
937: check_list_assoc_req_items(
938: p_list_assoc_rec => p_list_assoc_rec,
939: p_validation_mode => p_validation_mode,
940: x_return_status => x_return_status);
941: IF x_return_status <> FND_API.g_ret_sts_success THEN
942: RETURN;
943: END IF;
944:
945: -- Check Items Foreign Keys API calls
946:
947: check_list_assoc_FK_items(
948: p_list_assoc_rec => p_list_assoc_rec,
949: x_return_status => x_return_status);
950: IF x_return_status <> FND_API.g_ret_sts_success THEN
951: RETURN;
952: END IF;
953: -- Check Items Lookups
954:
954:
955: check_list_assoc_Lookup_items(
956: p_list_assoc_rec => p_list_assoc_rec,
957: x_return_status => x_return_status);
958: IF x_return_status <> FND_API.g_ret_sts_success THEN
959: RETURN;
960: END IF;
961:
962: END Check_list_assoc_Items;
982: FETCH c_complete INTO l_list_assoc_rec;
983: CLOSE c_complete;
984:
985: -- list_contact_restrictions_id
986: IF p_list_assoc_rec.list_cont_restrictions_id = FND_API.g_miss_num THEN
987: x_complete_rec.list_cont_restrictions_id := l_list_assoc_rec.list_contact_restrictions_id;
988: END IF;
989:
990: -- list_header_id
987: x_complete_rec.list_cont_restrictions_id := l_list_assoc_rec.list_contact_restrictions_id;
988: END IF;
989:
990: -- list_header_id
991: IF p_list_assoc_rec.list_header_id = FND_API.g_miss_num THEN
992: x_complete_rec.list_header_id := l_list_assoc_rec.list_header_id;
993: END IF;
994:
995: -- last_update_date
992: x_complete_rec.list_header_id := l_list_assoc_rec.list_header_id;
993: END IF;
994:
995: -- last_update_date
996: IF p_list_assoc_rec.last_update_date = FND_API.g_miss_date THEN
997: x_complete_rec.last_update_date := l_list_assoc_rec.last_update_date;
998: END IF;
999:
1000: -- last_updated_by
997: x_complete_rec.last_update_date := l_list_assoc_rec.last_update_date;
998: END IF;
999:
1000: -- last_updated_by
1001: IF p_list_assoc_rec.last_updated_by = FND_API.g_miss_num THEN
1002: x_complete_rec.last_updated_by := l_list_assoc_rec.last_updated_by;
1003: END IF;
1004:
1005: -- creation_date
1002: x_complete_rec.last_updated_by := l_list_assoc_rec.last_updated_by;
1003: END IF;
1004:
1005: -- creation_date
1006: IF p_list_assoc_rec.creation_date = FND_API.g_miss_date THEN
1007: x_complete_rec.creation_date := l_list_assoc_rec.creation_date;
1008: END IF;
1009:
1010: -- created_by
1007: x_complete_rec.creation_date := l_list_assoc_rec.creation_date;
1008: END IF;
1009:
1010: -- created_by
1011: IF p_list_assoc_rec.created_by = FND_API.g_miss_num THEN
1012: x_complete_rec.created_by := l_list_assoc_rec.created_by;
1013: END IF;
1014:
1015: -- last_update_login
1012: x_complete_rec.created_by := l_list_assoc_rec.created_by;
1013: END IF;
1014:
1015: -- last_update_login
1016: IF p_list_assoc_rec.last_update_login = FND_API.g_miss_num THEN
1017: x_complete_rec.last_update_login := l_list_assoc_rec.last_update_login;
1018: END IF;
1019:
1020: -- object_version_number
1017: x_complete_rec.last_update_login := l_list_assoc_rec.last_update_login;
1018: END IF;
1019:
1020: -- object_version_number
1021: IF p_list_assoc_rec.object_version_number = FND_API.g_miss_num THEN
1022: x_complete_rec.object_version_number := l_list_assoc_rec.object_version_number;
1023: END IF;
1024:
1025: -- Comment out since do_not_contact_flag, media_id, camp_id are
1025: -- Comment out since do_not_contact_flag, media_id, camp_id are
1026: -- exclusively. Old data cannot keep along.
1027:
1028: -- do_not_contact_flag
1029: --IF p_list_assoc_rec.do_not_contact_flag = FND_API.g_miss_char THEN
1030: -- x_complete_rec.do_not_contact_flag := l_list_assoc_rec.do_not_contact_flag;
1031: --END IF;
1032:
1033: -- media_id
1030: -- x_complete_rec.do_not_contact_flag := l_list_assoc_rec.do_not_contact_flag;
1031: --END IF;
1032:
1033: -- media_id
1034: --IF p_list_assoc_rec.media_id = FND_API.g_miss_num THEN
1035: -- x_complete_rec.media_id := l_list_assoc_rec.media_id;
1036: --END IF;
1037:
1038: -- list_used_by
1035: -- x_complete_rec.media_id := l_list_assoc_rec.media_id;
1036: --END IF;
1037:
1038: -- list_used_by
1039: --IF p_list_assoc_rec.list_used_by = FND_API.g_miss_char THEN
1040: -- x_complete_rec.list_used_by := l_list_assoc_rec.list_used_by;
1041: --END IF;
1042:
1043: -- list_used_by_id
1040: -- x_complete_rec.list_used_by := l_list_assoc_rec.list_used_by;
1041: --END IF;
1042:
1043: -- list_used_by_id
1044: --IF p_list_assoc_rec.list_used_by_id = FND_API.g_miss_num THEN
1045: -- x_complete_rec.list_used_by_id := l_list_assoc_rec.list_used_by_id;
1046: --END IF;
1047:
1048: -- Note: Developers need to modify the procedure
1049: -- to handle any business specific requirements.
1050: END Complete_list_assoc_Rec;
1051: PROCEDURE Validate_list_assoc(
1052: p_api_version_number IN NUMBER,
1053: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1054: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1055: p_list_assoc_rec IN list_assoc_rec_type,
1056: x_return_status OUT NOCOPY VARCHAR2,
1057: x_msg_count OUT NOCOPY NUMBER,
1050: END Complete_list_assoc_Rec;
1051: PROCEDURE Validate_list_assoc(
1052: p_api_version_number IN NUMBER,
1053: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1054: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1055: p_list_assoc_rec IN list_assoc_rec_type,
1056: x_return_status OUT NOCOPY VARCHAR2,
1057: x_msg_count OUT NOCOPY NUMBER,
1058: x_msg_data OUT NOCOPY VARCHAR2
1067: -- Standard Start of API savepoint
1068: SAVEPOINT VALIDATE_List_Assoc_;
1069:
1070: -- Standard call to check for call compatibility.
1071: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1072: p_api_version_number,
1073: l_api_name,
1074: G_PKG_NAME)
1075: THEN
1073: l_api_name,
1074: G_PKG_NAME)
1075: THEN
1076:
1077: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1078: END IF;
1079:
1080: -- Initialize message list if p_init_msg_list is set to TRUE.
1081: IF FND_API.to_Boolean( p_init_msg_list )
1077: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1078: END IF;
1079:
1080: -- Initialize message list if p_init_msg_list is set to TRUE.
1081: IF FND_API.to_Boolean( p_init_msg_list )
1082: THEN
1083: FND_MSG_PUB.initialize;
1084: END IF;
1085: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1088: p_validation_mode => JTF_PLSQL_API.g_update,
1089: x_return_status => x_return_status
1090: );
1091:
1092: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1093:
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096:
1090: );
1091:
1092: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1093:
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096:
1097: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1098: END IF;
1091:
1092: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1093:
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096:
1097: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1098: END IF;
1099: END IF;
1093:
1094: RAISE FND_API.G_EXC_ERROR;
1095: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1096:
1097: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1098: END IF;
1099: END IF;
1100: Complete_list_assoc_Rec(
1101: p_list_assoc_rec => p_list_assoc_rec,
1104:
1105: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1106: Validate_list_assoc_Rec(
1107: p_api_version_number => 1.0,
1108: p_init_msg_list => FND_API.G_FALSE,
1109: x_return_status => x_return_status,
1110: x_msg_count => x_msg_count,
1111: x_msg_data => x_msg_data,
1112: p_list_assoc_rec => l_list_assoc_rec);
1110: x_msg_count => x_msg_count,
1111: x_msg_data => x_msg_data,
1112: p_list_assoc_rec => l_list_assoc_rec);
1113:
1114: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1115:
1116: RAISE FND_API.G_EXC_ERROR;
1117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1118:
1112: p_list_assoc_rec => l_list_assoc_rec);
1113:
1114: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1115:
1116: RAISE FND_API.G_EXC_ERROR;
1117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1118:
1119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1120: END IF;
1113:
1114: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1115:
1116: RAISE FND_API.G_EXC_ERROR;
1117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1118:
1119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1120: END IF;
1121: END IF;
1115:
1116: RAISE FND_API.G_EXC_ERROR;
1117: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1118:
1119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1120: END IF;
1121: END IF;
1122:
1123:
1128: END IF;
1129:
1130:
1131: -- Initialize API return status to SUCCESS
1132: x_return_status := FND_API.G_RET_STS_SUCCESS;
1133:
1134:
1135: -- Debug Message
1136: IF (AMS_DEBUG_HIGH_ON) THEN
1145: );
1146: EXCEPTION
1147:
1148: WHEN AMS_Utility_PVT.resource_locked THEN
1149: x_return_status := FND_API.g_ret_sts_error;
1150: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1151:
1152: WHEN FND_API.G_EXC_ERROR THEN
1153: ROLLBACK TO VALIDATE_List_Assoc_;
1148: WHEN AMS_Utility_PVT.resource_locked THEN
1149: x_return_status := FND_API.g_ret_sts_error;
1150: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1151:
1152: WHEN FND_API.G_EXC_ERROR THEN
1153: ROLLBACK TO VALIDATE_List_Assoc_;
1154: x_return_status := FND_API.G_RET_STS_ERROR;
1155: -- Standard call to get message count and if count=1, get the message
1156: FND_MSG_PUB.Count_And_Get (
1150: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1151:
1152: WHEN FND_API.G_EXC_ERROR THEN
1153: ROLLBACK TO VALIDATE_List_Assoc_;
1154: x_return_status := FND_API.G_RET_STS_ERROR;
1155: -- Standard call to get message count and if count=1, get the message
1156: FND_MSG_PUB.Count_And_Get (
1157: p_encoded => FND_API.G_FALSE,
1158: p_count => x_msg_count,
1153: ROLLBACK TO VALIDATE_List_Assoc_;
1154: x_return_status := FND_API.G_RET_STS_ERROR;
1155: -- Standard call to get message count and if count=1, get the message
1156: FND_MSG_PUB.Count_And_Get (
1157: p_encoded => FND_API.G_FALSE,
1158: p_count => x_msg_count,
1159: p_data => x_msg_data
1160: );
1161:
1158: p_count => x_msg_count,
1159: p_data => x_msg_data
1160: );
1161:
1162: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1163: ROLLBACK TO VALIDATE_List_Assoc_;
1164: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1165: -- Standard call to get message count and if count=1, get the message
1166: FND_MSG_PUB.Count_And_Get (
1160: );
1161:
1162: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1163: ROLLBACK TO VALIDATE_List_Assoc_;
1164: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1165: -- Standard call to get message count and if count=1, get the message
1166: FND_MSG_PUB.Count_And_Get (
1167: p_encoded => FND_API.G_FALSE,
1168: p_count => x_msg_count,
1163: ROLLBACK TO VALIDATE_List_Assoc_;
1164: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1165: -- Standard call to get message count and if count=1, get the message
1166: FND_MSG_PUB.Count_And_Get (
1167: p_encoded => FND_API.G_FALSE,
1168: p_count => x_msg_count,
1169: p_data => x_msg_data
1170: );
1171:
1170: );
1171:
1172: WHEN OTHERS THEN
1173: ROLLBACK TO VALIDATE_List_Assoc_;
1174: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1175: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1176: THEN
1177: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1178: END IF;
1177: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1178: END IF;
1179: -- Standard call to get message count and if count=1, get the message
1180: FND_MSG_PUB.Count_And_Get (
1181: p_encoded => FND_API.G_FALSE,
1182: p_count => x_msg_count,
1183: p_data => x_msg_data
1184: );
1185: End Validate_List_Assoc;
1186:
1187:
1188: PROCEDURE Validate_list_assoc_rec(
1189: p_api_version_number IN NUMBER,
1190: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1191: x_return_status OUT NOCOPY VARCHAR2,
1192: x_msg_count OUT NOCOPY NUMBER,
1193: x_msg_data OUT NOCOPY VARCHAR2,
1194: p_list_assoc_rec IN list_assoc_rec_type
1195: )
1196: IS
1197: BEGIN
1198: -- Initialize message list if p_init_msg_list is set to TRUE.
1199: IF FND_API.to_Boolean( p_init_msg_list )
1200: THEN
1201: FND_MSG_PUB.initialize;
1202: END IF;
1203:
1201: FND_MSG_PUB.initialize;
1202: END IF;
1203:
1204: -- Initialize API return status to SUCCESS
1205: x_return_status := FND_API.G_RET_STS_SUCCESS;
1206:
1207: -- Hint: Validate data
1208: -- If data not valid
1209: -- THEN
1206:
1207: -- Hint: Validate data
1208: -- If data not valid
1209: -- THEN
1210: -- x_return_status := FND_API.G_RET_STS_ERROR;
1211:
1212: -- Debug Message
1213: IF (AMS_DEBUG_HIGH_ON) THEN
1214: