30:
31: -- Hint: Primary key needs to be returned.
32: PROCEDURE Create_Met_Tpl_Assoc(
33: p_api_version_number IN NUMBER,
34: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
35: p_commit IN VARCHAR2 := FND_API.G_FALSE,
36: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
37:
38: x_return_status OUT NOCOPY VARCHAR2,
31: -- Hint: Primary key needs to be returned.
32: PROCEDURE Create_Met_Tpl_Assoc(
33: p_api_version_number IN NUMBER,
34: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
35: p_commit IN VARCHAR2 := FND_API.G_FALSE,
36: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
37:
38: x_return_status OUT NOCOPY VARCHAR2,
39: x_msg_count OUT NOCOPY NUMBER,
32: PROCEDURE Create_Met_Tpl_Assoc(
33: p_api_version_number IN NUMBER,
34: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
35: p_commit IN VARCHAR2 := FND_API.G_FALSE,
36: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
37:
38: x_return_status OUT NOCOPY VARCHAR2,
39: x_msg_count OUT NOCOPY NUMBER,
40: x_msg_data OUT NOCOPY VARCHAR2,
47: L_API_NAME CONSTANT VARCHAR2(30) := 'Create_Met_Tpl_Assoc';
48: L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
49: l_return_status_full VARCHAR2(1);
50: l_object_version_number NUMBER := 1;
51: l_org_id NUMBER := FND_API.G_MISS_NUM;
52: l_METRIC_TPL_ASSOC_ID NUMBER;
53: l_dummy NUMBER;
54:
55: CURSOR c_id IS
65: -- Standard Start of API savepoint
66: SAVEPOINT CREATE_Met_Tpl_Assoc_PVT;
67:
68: -- Standard call to check for call compatibility.
69: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
70: p_api_version_number,
71: l_api_name,
72: G_PKG_NAME)
73: THEN
70: p_api_version_number,
71: l_api_name,
72: G_PKG_NAME)
73: THEN
74: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
75: END IF;
76:
77: -- Initialize message list if p_init_msg_list is set to TRUE.
78: IF FND_API.to_Boolean( p_init_msg_list )
74: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
75: END IF;
76:
77: -- Initialize message list if p_init_msg_list is set to TRUE.
78: IF FND_API.to_Boolean( p_init_msg_list )
79: THEN
80: FND_MSG_PUB.initialize;
81: END IF;
82:
94: THEN
95: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_METR_TPL_SEEDED');
96: END IF;
97:
98: RAISE FND_API.G_EXC_ERROR;
99: END IF; */
100:
101: -- Initialize API return status to SUCCESS
102: x_return_status := FND_API.G_RET_STS_SUCCESS;
98: RAISE FND_API.G_EXC_ERROR;
99: END IF; */
100:
101: -- Initialize API return status to SUCCESS
102: x_return_status := FND_API.G_RET_STS_SUCCESS;
103:
104: -- Local variable initialization
105:
106: IF p_met_tpl_assoc_rec.METRIC_TPL_ASSOC_ID IS NULL OR
103:
104: -- Local variable initialization
105:
106: IF p_met_tpl_assoc_rec.METRIC_TPL_ASSOC_ID IS NULL OR
107: p_met_tpl_assoc_rec.METRIC_TPL_ASSOC_ID = FND_API.g_miss_num THEN
108: LOOP
109: l_dummy := NULL;
110: OPEN c_id;
111: FETCH c_id INTO l_METRIC_TPL_ASSOC_ID;
126:
127: IF FND_GLOBAL.User_Id IS NULL
128: THEN
129: Ams_Utility_Pvt.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
130: RAISE FND_API.G_EXC_ERROR;
131: END IF;
132:
133: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
134: THEN
129: Ams_Utility_Pvt.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
130: RAISE FND_API.G_EXC_ERROR;
131: END IF;
132:
133: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
134: THEN
135: -- Debug message
136: IF (AMS_DEBUG_HIGH_ON) THEN
137:
140:
141: -- Invoke validation procedures
142: Validate_met_tpl_assoc(
143: p_api_version_number => 1.0,
144: p_init_msg_list => FND_API.G_FALSE,
145: p_validation_level => p_validation_level,
146: p_validation_mode => JTF_PLSQL_API.g_create,
147: p_met_tpl_assoc_rec => p_met_tpl_assoc_rec,
148: x_return_status => x_return_status,
149: x_msg_count => x_msg_count,
150: x_msg_data => x_msg_data);
151: END IF;
152:
153: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
154: RAISE FND_API.G_EXC_ERROR;
155: END IF;
156:
157:
150: x_msg_data => x_msg_data);
151: END IF;
152:
153: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
154: RAISE FND_API.G_EXC_ERROR;
155: END IF;
156:
157:
158: -- Debug Message
175: p_used_by_id => p_met_tpl_assoc_rec.used_by_id,
176: p_used_by_code => p_met_tpl_assoc_rec.used_by_code,
177: p_enabled_flag => p_met_tpl_assoc_rec.enabled_flag);
178:
179: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
180: RAISE FND_API.G_EXC_ERROR;
181: END IF;
182:
183: x_METRIC_TPL_ASSOC_ID := l_METRIC_TPL_ASSOC_ID;
176: p_used_by_code => p_met_tpl_assoc_rec.used_by_code,
177: p_enabled_flag => p_met_tpl_assoc_rec.enabled_flag);
178:
179: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
180: RAISE FND_API.G_EXC_ERROR;
181: END IF;
182:
183: x_METRIC_TPL_ASSOC_ID := l_METRIC_TPL_ASSOC_ID;
184: --
185: -- End of API body
186: --
187:
188: -- Standard check for p_commit
189: IF FND_API.to_Boolean( p_commit )
190: THEN
191: COMMIT WORK;
192: END IF;
193:
205: );
206: EXCEPTION
207:
208: WHEN Ams_Utility_Pvt.resource_locked THEN
209: x_return_status := FND_API.g_ret_sts_error;
210: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
211:
212: WHEN FND_API.G_EXC_ERROR THEN
213: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
208: WHEN Ams_Utility_Pvt.resource_locked THEN
209: x_return_status := FND_API.g_ret_sts_error;
210: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
211:
212: WHEN FND_API.G_EXC_ERROR THEN
213: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
214: x_return_status := FND_API.G_RET_STS_ERROR;
215: -- Standard call to get message count and if count=1, get the message
216: FND_MSG_PUB.Count_And_Get (
210: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
211:
212: WHEN FND_API.G_EXC_ERROR THEN
213: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
214: x_return_status := FND_API.G_RET_STS_ERROR;
215: -- Standard call to get message count and if count=1, get the message
216: FND_MSG_PUB.Count_And_Get (
217: p_encoded => FND_API.G_FALSE,
218: p_count => x_msg_count,
213: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
214: x_return_status := FND_API.G_RET_STS_ERROR;
215: -- Standard call to get message count and if count=1, get the message
216: FND_MSG_PUB.Count_And_Get (
217: p_encoded => FND_API.G_FALSE,
218: p_count => x_msg_count,
219: p_data => x_msg_data
220: );
221:
218: p_count => x_msg_count,
219: p_data => x_msg_data
220: );
221:
222: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
223: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
224: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
225: -- Standard call to get message count and if count=1, get the message
226: FND_MSG_PUB.Count_And_Get (
220: );
221:
222: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
223: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
224: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
225: -- Standard call to get message count and if count=1, get the message
226: FND_MSG_PUB.Count_And_Get (
227: p_encoded => FND_API.G_FALSE,
228: p_count => x_msg_count,
223: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
224: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
225: -- Standard call to get message count and if count=1, get the message
226: FND_MSG_PUB.Count_And_Get (
227: p_encoded => FND_API.G_FALSE,
228: p_count => x_msg_count,
229: p_data => x_msg_data
230: );
231:
230: );
231:
232: WHEN OTHERS THEN
233: ROLLBACK TO CREATE_Met_Tpl_Assoc_PVT;
234: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
235: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
236: THEN
237: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
238: END IF;
237: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
238: END IF;
239: -- Standard call to get message count and if count=1, get the message
240: FND_MSG_PUB.Count_And_Get (
241: p_encoded => FND_API.G_FALSE,
242: p_count => x_msg_count,
243: p_data => x_msg_data
244: );
245: END Create_Met_Tpl_Assoc;
246:
247:
248: PROCEDURE Update_Met_Tpl_Assoc(
249: p_api_version_number IN NUMBER,
250: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
251: p_commit IN VARCHAR2 := FND_API.G_FALSE,
252: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
253:
254: x_return_status OUT NOCOPY VARCHAR2,
247:
248: PROCEDURE Update_Met_Tpl_Assoc(
249: p_api_version_number IN NUMBER,
250: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
251: p_commit IN VARCHAR2 := FND_API.G_FALSE,
252: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
253:
254: x_return_status OUT NOCOPY VARCHAR2,
255: x_msg_count OUT NOCOPY NUMBER,
248: PROCEDURE Update_Met_Tpl_Assoc(
249: p_api_version_number IN NUMBER,
250: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
251: p_commit IN VARCHAR2 := FND_API.G_FALSE,
252: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
253:
254: x_return_status OUT NOCOPY VARCHAR2,
255: x_msg_count OUT NOCOPY NUMBER,
256: x_msg_data OUT NOCOPY VARCHAR2,
291: -- Standard Start of API savepoint
292: SAVEPOINT UPDATE_Met_Tpl_Assoc_PVT;
293:
294: -- Standard call to check for call compatibility.
295: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
296: p_api_version_number,
297: l_api_name,
298: G_PKG_NAME)
299: THEN
296: p_api_version_number,
297: l_api_name,
298: G_PKG_NAME)
299: THEN
300: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
301: END IF;
302:
303: -- Initialize message list if p_init_msg_list is set to TRUE.
304: IF FND_API.to_Boolean( p_init_msg_list )
300: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
301: END IF;
302:
303: -- Initialize message list if p_init_msg_list is set to TRUE.
304: IF FND_API.to_Boolean( p_init_msg_list )
305: THEN
306: FND_MSG_PUB.initialize;
307: END IF;
308:
314:
315:
316:
317: -- Initialize API return status to SUCCESS
318: x_return_status := FND_API.G_RET_STS_SUCCESS;
319:
320: -- Debug Message
321: IF (AMS_DEBUG_HIGH_ON) THEN
322:
330: IF ( c_get_Met_Tpl_Assoc%NOTFOUND) THEN
331: Ams_Utility_Pvt.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
332: p_token_name => 'INFO',
333: p_token_value => 'Met_Tpl_Assoc') ;
334: RAISE FND_API.G_EXC_ERROR;
335: END IF;
336: -- Debug Message
337: IF (AMS_DEBUG_HIGH_ON) THEN
338:
340: END IF;
341: CLOSE c_get_Met_Tpl_Assoc;
342:
343: IF (l_tar_met_tpl_assoc_rec.object_version_number IS NULL OR
344: l_tar_met_tpl_assoc_rec.object_version_number = FND_API.G_MISS_NUM ) THEN
345: Ams_Utility_Pvt.Error_Message(p_message_name => 'API_VERSION_MISSING',
346: p_token_name => 'COLUMN',
347: p_token_value => 'Last_Update_Date') ;
348: RAISE FND_API.G_EXC_ERROR;
344: l_tar_met_tpl_assoc_rec.object_version_number = FND_API.G_MISS_NUM ) THEN
345: Ams_Utility_Pvt.Error_Message(p_message_name => 'API_VERSION_MISSING',
346: p_token_name => 'COLUMN',
347: p_token_value => 'Last_Update_Date') ;
348: RAISE FND_API.G_EXC_ERROR;
349: END IF;
350:
351: -- Check Whether record has been changed by someone else
352: IF (l_tar_met_tpl_assoc_rec.object_version_number <>
353: l_ref_met_tpl_assoc_rec.object_version_number) THEN
354: Ams_Utility_Pvt.Error_Message(p_message_name => 'API_RECORD_CHANGED',
355: p_token_name => 'INFO',
356: p_token_value => 'Met_Tpl_Assoc') ;
357: RAISE FND_API.G_EXC_ERROR;
358: END IF;
359:
360: Complete_met_tpl_assoc_Rec(l_ref_met_tpl_assoc_rec, l_tar_met_tpl_assoc_rec);
361:
372: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_METR_TPL_SEEDED_MOD');
373: END IF;
374:
375:
376: RAISE FND_API.G_EXC_ERROR;
377: END IF;
378: END IF;
379:
380:
377: END IF;
378: END IF;
379:
380:
381: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
382: THEN
383: -- Debug message
384: IF (AMS_DEBUG_HIGH_ON) THEN
385:
388:
389: -- Invoke validation procedures
390: Validate_met_tpl_assoc(
391: p_api_version_number => 1.0,
392: p_init_msg_list => FND_API.G_FALSE,
393: p_validation_level => p_validation_level,
394: p_validation_mode => JTF_PLSQL_API.g_update,
395: p_met_tpl_assoc_rec => p_met_tpl_assoc_rec,
396: x_return_status => x_return_status,
397: x_msg_count => x_msg_count,
398: x_msg_data => x_msg_data);
399: END IF;
400:
401: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
402: RAISE FND_API.G_EXC_ERROR;
403: END IF;
404:
405: x_object_version_number :=
398: x_msg_data => x_msg_data);
399: END IF;
400:
401: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
402: RAISE FND_API.G_EXC_ERROR;
403: END IF;
404:
405: x_object_version_number :=
406: l_ref_met_tpl_assoc_rec.object_version_number + 1;
428: -- End of API body.
429: --
430:
431: -- Standard check for p_commit
432: IF FND_API.to_Boolean( p_commit )
433: THEN
434: COMMIT WORK;
435: END IF;
436:
447: );
448: EXCEPTION
449:
450: WHEN Ams_Utility_Pvt.resource_locked THEN
451: x_return_status := FND_API.g_ret_sts_error;
452: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
453:
454: WHEN FND_API.G_EXC_ERROR THEN
455: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
450: WHEN Ams_Utility_Pvt.resource_locked THEN
451: x_return_status := FND_API.g_ret_sts_error;
452: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
453:
454: WHEN FND_API.G_EXC_ERROR THEN
455: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
456: x_return_status := FND_API.G_RET_STS_ERROR;
457: -- Standard call to get message count and if count=1, get the message
458: FND_MSG_PUB.Count_And_Get (
452: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
453:
454: WHEN FND_API.G_EXC_ERROR THEN
455: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
456: x_return_status := FND_API.G_RET_STS_ERROR;
457: -- Standard call to get message count and if count=1, get the message
458: FND_MSG_PUB.Count_And_Get (
459: p_encoded => FND_API.G_FALSE,
460: p_count => x_msg_count,
455: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
456: x_return_status := FND_API.G_RET_STS_ERROR;
457: -- Standard call to get message count and if count=1, get the message
458: FND_MSG_PUB.Count_And_Get (
459: p_encoded => FND_API.G_FALSE,
460: p_count => x_msg_count,
461: p_data => x_msg_data
462: );
463:
460: p_count => x_msg_count,
461: p_data => x_msg_data
462: );
463:
464: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
465: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
466: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
467: -- Standard call to get message count and if count=1, get the message
468: FND_MSG_PUB.Count_And_Get (
462: );
463:
464: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
465: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
466: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
467: -- Standard call to get message count and if count=1, get the message
468: FND_MSG_PUB.Count_And_Get (
469: p_encoded => FND_API.G_FALSE,
470: p_count => x_msg_count,
465: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
466: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
467: -- Standard call to get message count and if count=1, get the message
468: FND_MSG_PUB.Count_And_Get (
469: p_encoded => FND_API.G_FALSE,
470: p_count => x_msg_count,
471: p_data => x_msg_data
472: );
473:
472: );
473:
474: WHEN OTHERS THEN
475: ROLLBACK TO UPDATE_Met_Tpl_Assoc_PVT;
476: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
477: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
478: THEN
479: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
480: END IF;
479: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
480: END IF;
481: -- Standard call to get message count and if count=1, get the message
482: FND_MSG_PUB.Count_And_Get (
483: p_encoded => FND_API.G_FALSE,
484: p_count => x_msg_count,
485: p_data => x_msg_data
486: );
487: END Update_Met_Tpl_Assoc;
488:
489:
490: PROCEDURE Delete_Met_Tpl_Assoc(
491: p_api_version_number IN NUMBER,
492: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
493: p_commit IN VARCHAR2 := FND_API.G_FALSE,
494: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
495: x_return_status OUT NOCOPY VARCHAR2,
496: x_msg_count OUT NOCOPY NUMBER,
489:
490: PROCEDURE Delete_Met_Tpl_Assoc(
491: p_api_version_number IN NUMBER,
492: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
493: p_commit IN VARCHAR2 := FND_API.G_FALSE,
494: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
495: x_return_status OUT NOCOPY VARCHAR2,
496: x_msg_count OUT NOCOPY NUMBER,
497: x_msg_data OUT NOCOPY VARCHAR2,
490: PROCEDURE Delete_Met_Tpl_Assoc(
491: p_api_version_number IN NUMBER,
492: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
493: p_commit IN VARCHAR2 := FND_API.G_FALSE,
494: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
495: x_return_status OUT NOCOPY VARCHAR2,
496: x_msg_count OUT NOCOPY NUMBER,
497: x_msg_data OUT NOCOPY VARCHAR2,
498: p_METRIC_TPL_ASSOC_ID IN NUMBER,
508: -- Standard Start of API savepoint
509: SAVEPOINT DELETE_Met_Tpl_Assoc_PVT;
510:
511: -- Standard call to check for call compatibility.
512: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
513: p_api_version_number,
514: l_api_name,
515: G_PKG_NAME)
516: THEN
513: p_api_version_number,
514: l_api_name,
515: G_PKG_NAME)
516: THEN
517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
518: END IF;
519:
520: -- Initialize message list if p_init_msg_list is set to TRUE.
521: IF FND_API.to_Boolean( p_init_msg_list )
517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
518: END IF;
519:
520: -- Initialize message list if p_init_msg_list is set to TRUE.
521: IF FND_API.to_Boolean( p_init_msg_list )
522: THEN
523: FND_MSG_PUB.initialize;
524: END IF;
525:
536: THEN
537: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_METR_TPL_SEEDED');
538: END IF;
539:
540: RAISE FND_API.G_EXC_ERROR;
541: END IF;
542:
543:
544:
542:
543:
544:
545: -- Initialize API return status to SUCCESS
546: x_return_status := FND_API.G_RET_STS_SUCCESS;
547:
548: --
549: -- Api body
550: --
561: -- End of API body
562: --
563:
564: -- Standard check for p_commit
565: IF FND_API.to_Boolean( p_commit )
566: THEN
567: COMMIT WORK;
568: END IF;
569:
581: );
582: EXCEPTION
583:
584: WHEN Ams_Utility_Pvt.resource_locked THEN
585: x_return_status := FND_API.g_ret_sts_error;
586: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
587:
588: WHEN FND_API.G_EXC_ERROR THEN
589: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
584: WHEN Ams_Utility_Pvt.resource_locked THEN
585: x_return_status := FND_API.g_ret_sts_error;
586: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
587:
588: WHEN FND_API.G_EXC_ERROR THEN
589: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
590: x_return_status := FND_API.G_RET_STS_ERROR;
591: -- Standard call to get message count and if count=1, get the message
592: FND_MSG_PUB.Count_And_Get (
586: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
587:
588: WHEN FND_API.G_EXC_ERROR THEN
589: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
590: x_return_status := FND_API.G_RET_STS_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_Met_Tpl_Assoc_PVT;
590: x_return_status := FND_API.G_RET_STS_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:
594: p_count => x_msg_count,
595: p_data => x_msg_data
596: );
597:
598: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
599: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: -- Standard call to get message count and if count=1, get the message
602: FND_MSG_PUB.Count_And_Get (
596: );
597:
598: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
599: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: -- Standard call to get message count and if count=1, get the message
602: FND_MSG_PUB.Count_And_Get (
603: p_encoded => FND_API.G_FALSE,
604: p_count => x_msg_count,
599: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: -- Standard call to get message count and if count=1, get the message
602: FND_MSG_PUB.Count_And_Get (
603: p_encoded => FND_API.G_FALSE,
604: p_count => x_msg_count,
605: p_data => x_msg_data
606: );
607:
606: );
607:
608: WHEN OTHERS THEN
609: ROLLBACK TO DELETE_Met_Tpl_Assoc_PVT;
610: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
611: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
612: THEN
613: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
614: END IF;
613: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
614: END IF;
615: -- Standard call to get message count and if count=1, get the message
616: FND_MSG_PUB.Count_And_Get (
617: p_encoded => FND_API.G_FALSE,
618: p_count => x_msg_count,
619: p_data => x_msg_data
620: );
621: END Delete_Met_Tpl_Assoc;
623:
624: -- Hint: Primary key needs to be returned.
625: PROCEDURE Lock_Met_Tpl_Assoc(
626: p_api_version_number IN NUMBER,
627: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
628:
629: x_return_status OUT NOCOPY VARCHAR2,
630: x_msg_count OUT NOCOPY NUMBER,
631: x_msg_data OUT NOCOPY VARCHAR2,
655: Ams_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'start');
656: END IF;
657:
658: -- Initialize message list if p_init_msg_list is set to TRUE.
659: IF FND_API.to_Boolean( p_init_msg_list )
660: THEN
661: FND_MSG_PUB.initialize;
662: END IF;
663:
661: FND_MSG_PUB.initialize;
662: END IF;
663:
664: -- Standard call to check for call compatibility.
665: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
666: p_api_version_number,
667: l_api_name,
668: G_PKG_NAME)
669: THEN
666: p_api_version_number,
667: l_api_name,
668: G_PKG_NAME)
669: THEN
670: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
671: END IF;
672:
673:
674: -- Initialize API return status to SUCCESS
671: END IF;
672:
673:
674: -- Initialize API return status to SUCCESS
675: x_return_status := FND_API.G_RET_STS_SUCCESS;
676:
677:
678: ------------------------ lock -------------------------
679:
693: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
694: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
695: FND_MSG_PUB.ADD;
696: END IF;
697: RAISE FND_API.g_exc_error;
698: END IF;
699:
700: CLOSE c_Met_Tpl_Assoc;
701:
700: CLOSE c_Met_Tpl_Assoc;
701:
702: -------------------- finish --------------------------
703: FND_MSG_PUB.count_and_get(
704: p_encoded => FND_API.g_false,
705: p_count => x_msg_count,
706: p_data => x_msg_data);
707: IF (AMS_DEBUG_HIGH_ON) THEN
708:
710: END IF;
711: EXCEPTION
712:
713: WHEN Ams_Utility_Pvt.resource_locked THEN
714: x_return_status := FND_API.g_ret_sts_error;
715: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
716:
717: WHEN FND_API.G_EXC_ERROR THEN
718: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
713: WHEN Ams_Utility_Pvt.resource_locked THEN
714: x_return_status := FND_API.g_ret_sts_error;
715: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
716:
717: WHEN FND_API.G_EXC_ERROR THEN
718: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
719: x_return_status := FND_API.G_RET_STS_ERROR;
720: -- Standard call to get message count and if count=1, get the message
721: FND_MSG_PUB.Count_And_Get (
715: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
716:
717: WHEN FND_API.G_EXC_ERROR THEN
718: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
719: x_return_status := FND_API.G_RET_STS_ERROR;
720: -- Standard call to get message count and if count=1, get the message
721: FND_MSG_PUB.Count_And_Get (
722: p_encoded => FND_API.G_FALSE,
723: p_count => x_msg_count,
718: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
719: x_return_status := FND_API.G_RET_STS_ERROR;
720: -- Standard call to get message count and if count=1, get the message
721: FND_MSG_PUB.Count_And_Get (
722: p_encoded => FND_API.G_FALSE,
723: p_count => x_msg_count,
724: p_data => x_msg_data
725: );
726:
723: p_count => x_msg_count,
724: p_data => x_msg_data
725: );
726:
727: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
728: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
729: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
730: -- Standard call to get message count and if count=1, get the message
731: FND_MSG_PUB.Count_And_Get (
725: );
726:
727: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
728: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
729: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
730: -- Standard call to get message count and if count=1, get the message
731: FND_MSG_PUB.Count_And_Get (
732: p_encoded => FND_API.G_FALSE,
733: p_count => x_msg_count,
728: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
729: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
730: -- Standard call to get message count and if count=1, get the message
731: FND_MSG_PUB.Count_And_Get (
732: p_encoded => FND_API.G_FALSE,
733: p_count => x_msg_count,
734: p_data => x_msg_data
735: );
736:
735: );
736:
737: WHEN OTHERS THEN
738: ROLLBACK TO LOCK_Met_Tpl_Assoc_PVT;
739: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
740: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
741: THEN
742: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
743: END IF;
742: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
743: END IF;
744: -- Standard call to get message count and if count=1, get the message
745: FND_MSG_PUB.Count_And_Get (
746: p_encoded => FND_API.G_FALSE,
747: p_count => x_msg_count,
748: p_data => x_msg_data
749: );
750: END Lock_Met_Tpl_Assoc;
757: IS
758: l_valid_flag VARCHAR2(1);
759: CURSOR c_dup_assoc (p_met_tpl_hdr_id NUMBER, p_assoc_type VARCHAR2,
760: p_used_by_id NUMBER, p_used_by_code VARCHAR2) IS
761: SELECT FND_API.G_FALSE
762: FROM AMS_MET_TPL_ASSOCS
763: WHERE METRIC_TPL_HEADER_ID = p_met_tpl_hdr_id
764: AND ASSOCIATION_TYPE = p_assoc_type
765: AND NVL(p_used_by_id,-1) = NVL(used_by_id,-1)
765: AND NVL(p_used_by_id,-1) = NVL(used_by_id,-1)
766: AND NVL(p_used_by_code, '0') = NVL(used_by_code, '0');
767:
768: BEGIN
769: x_return_status := FND_API.g_ret_sts_success;
770: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
771: l_valid_flag := Ams_Utility_Pvt.check_uniqueness(
772: 'AMS_MET_TPL_ASSOCS',
773: 'METRIC_TPL_ASSOC_ID = ' || p_met_tpl_assoc_rec.METRIC_TPL_ASSOC_ID
779: -- ' AND METRIC_TPL_ASSOC_ID <> ' || p_met_tpl_assoc_rec.METRIC_TPL_ASSOC_ID
780: -- );
781: END IF;
782:
783: IF l_valid_flag = FND_API.g_false THEN
784: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_METRIC_TPL_ASSOC_ID_DUPLICATE');
785: x_return_status := FND_API.g_ret_sts_error;
786: RETURN;
787: END IF;
781: END IF;
782:
783: IF l_valid_flag = FND_API.g_false THEN
784: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_METRIC_TPL_ASSOC_ID_DUPLICATE');
785: x_return_status := FND_API.g_ret_sts_error;
786: RETURN;
787: END IF;
788:
789: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
792: p_met_tpl_assoc_rec.used_by_id,
793: p_met_tpl_assoc_rec.used_by_code);
794: FETCH c_dup_assoc INTO l_valid_flag;
795: CLOSE c_dup_assoc;
796: IF l_valid_flag = FND_API.g_false THEN
797: Ams_Utility_Pvt.Error_Message(p_message_name =>
798: 'AMS_METRIC_TPL_ASSOC_VALUE_DUP');
799: x_return_status := FND_API.g_ret_sts_error;
800: RETURN;
795: CLOSE c_dup_assoc;
796: IF l_valid_flag = FND_API.g_false THEN
797: Ams_Utility_Pvt.Error_Message(p_message_name =>
798: 'AMS_METRIC_TPL_ASSOC_VALUE_DUP');
799: x_return_status := FND_API.g_ret_sts_error;
800: RETURN;
801: END IF;
802: END IF;
803:
809: x_return_status OUT NOCOPY VARCHAR2
810: )
811: IS
812: BEGIN
813: x_return_status := FND_API.g_ret_sts_success;
814:
815: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
816:
817: -- IF p_met_tpl_assoc_rec.metric_tpl_assoc_id = FND_API.g_miss_num OR
813: x_return_status := FND_API.g_ret_sts_success;
814:
815: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
816:
817: -- IF p_met_tpl_assoc_rec.metric_tpl_assoc_id = FND_API.g_miss_num OR
818: -- p_met_tpl_assoc_rec.metric_tpl_assoc_id IS NULL THEN
819: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
820: -- FND_MESSAGE.set_token('MISS_FIELD','METRIC_TPL_ASSOC_ID');
821: -- x_return_status := FND_API.g_ret_sts_error;
817: -- IF p_met_tpl_assoc_rec.metric_tpl_assoc_id = FND_API.g_miss_num OR
818: -- p_met_tpl_assoc_rec.metric_tpl_assoc_id IS NULL THEN
819: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
820: -- FND_MESSAGE.set_token('MISS_FIELD','METRIC_TPL_ASSOC_ID');
821: -- x_return_status := FND_API.g_ret_sts_error;
822: -- RETURN;
823: -- END IF;
824: --
825: -- IF p_met_tpl_assoc_rec.last_update_date = FND_API.g_miss_date OR p_met_tpl_assoc_rec.last_update_date IS NULL THEN
821: -- x_return_status := FND_API.g_ret_sts_error;
822: -- RETURN;
823: -- END IF;
824: --
825: -- IF p_met_tpl_assoc_rec.last_update_date = FND_API.g_miss_date OR p_met_tpl_assoc_rec.last_update_date IS NULL THEN
826: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
827: -- FND_MESSAGE.set_token('MISS_FIELD','LAST_UPDATE_DATE');
828: -- x_return_status := FND_API.g_ret_sts_error;
829: -- RETURN;
824: --
825: -- IF p_met_tpl_assoc_rec.last_update_date = FND_API.g_miss_date OR p_met_tpl_assoc_rec.last_update_date IS NULL THEN
826: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
827: -- FND_MESSAGE.set_token('MISS_FIELD','LAST_UPDATE_DATE');
828: -- x_return_status := FND_API.g_ret_sts_error;
829: -- RETURN;
830: -- END IF;
831: --
832: -- IF p_met_tpl_assoc_rec.last_updated_by = FND_API.g_miss_num OR p_met_tpl_assoc_rec.last_updated_by IS NULL THEN
828: -- x_return_status := FND_API.g_ret_sts_error;
829: -- RETURN;
830: -- END IF;
831: --
832: -- IF p_met_tpl_assoc_rec.last_updated_by = FND_API.g_miss_num OR p_met_tpl_assoc_rec.last_updated_by IS NULL THEN
833: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
834: -- FND_MESSAGE.set_token('MISS_FIELD','LAST_UPDATED_BY');
835: -- x_return_status := FND_API.g_ret_sts_error;
836: -- RETURN;
831: --
832: -- IF p_met_tpl_assoc_rec.last_updated_by = FND_API.g_miss_num OR p_met_tpl_assoc_rec.last_updated_by IS NULL THEN
833: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
834: -- FND_MESSAGE.set_token('MISS_FIELD','LAST_UPDATED_BY');
835: -- x_return_status := FND_API.g_ret_sts_error;
836: -- RETURN;
837: -- END IF;
838: --
839: -- IF p_met_tpl_assoc_rec.creation_date = FND_API.g_miss_date OR p_met_tpl_assoc_rec.creation_date IS NULL THEN
835: -- x_return_status := FND_API.g_ret_sts_error;
836: -- RETURN;
837: -- END IF;
838: --
839: -- IF p_met_tpl_assoc_rec.creation_date = FND_API.g_miss_date OR p_met_tpl_assoc_rec.creation_date IS NULL THEN
840: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
841: -- FND_MESSAGE.set_token('MISS_FIELD','CREATION_DATE');
842: -- x_return_status := FND_API.g_ret_sts_error;
843: -- RETURN;
838: --
839: -- IF p_met_tpl_assoc_rec.creation_date = FND_API.g_miss_date OR p_met_tpl_assoc_rec.creation_date IS NULL THEN
840: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
841: -- FND_MESSAGE.set_token('MISS_FIELD','CREATION_DATE');
842: -- x_return_status := FND_API.g_ret_sts_error;
843: -- RETURN;
844: -- END IF;
845: --
846: -- IF p_met_tpl_assoc_rec.created_by = FND_API.g_miss_num OR p_met_tpl_assoc_rec.created_by IS NULL THEN
842: -- x_return_status := FND_API.g_ret_sts_error;
843: -- RETURN;
844: -- END IF;
845: --
846: -- IF p_met_tpl_assoc_rec.created_by = FND_API.g_miss_num OR p_met_tpl_assoc_rec.created_by IS NULL THEN
847: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
848: -- FND_MESSAGE.set_token('MISS_FIELD','CREATED_BY');
849: -- x_return_status := FND_API.g_ret_sts_error;
850: -- RETURN;
845: --
846: -- IF p_met_tpl_assoc_rec.created_by = FND_API.g_miss_num OR p_met_tpl_assoc_rec.created_by IS NULL THEN
847: -- FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
848: -- FND_MESSAGE.set_token('MISS_FIELD','CREATED_BY');
849: -- x_return_status := FND_API.g_ret_sts_error;
850: -- RETURN;
851: -- END IF;
852: --
853: IF p_met_tpl_assoc_rec.metric_tpl_header_id = FND_API.g_miss_num OR p_met_tpl_assoc_rec.metric_tpl_header_id IS NULL THEN
849: -- x_return_status := FND_API.g_ret_sts_error;
850: -- RETURN;
851: -- END IF;
852: --
853: IF p_met_tpl_assoc_rec.metric_tpl_header_id = FND_API.g_miss_num OR p_met_tpl_assoc_rec.metric_tpl_header_id IS NULL THEN
854: FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
855: FND_MESSAGE.set_token('MISS_FIELD','METRIC_TPL_HEADER_ID');
856: x_return_status := FND_API.g_ret_sts_error;
857: RETURN;
852: --
853: IF p_met_tpl_assoc_rec.metric_tpl_header_id = FND_API.g_miss_num OR p_met_tpl_assoc_rec.metric_tpl_header_id IS NULL THEN
854: FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
855: FND_MESSAGE.set_token('MISS_FIELD','METRIC_TPL_HEADER_ID');
856: x_return_status := FND_API.g_ret_sts_error;
857: RETURN;
858: END IF;
859:
860: IF p_met_tpl_assoc_rec.association_type = FND_API.g_miss_char OR p_met_tpl_assoc_rec.association_type IS NULL THEN
856: x_return_status := FND_API.g_ret_sts_error;
857: RETURN;
858: END IF;
859:
860: IF p_met_tpl_assoc_rec.association_type = FND_API.g_miss_char OR p_met_tpl_assoc_rec.association_type IS NULL THEN
861: FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
862: FND_MESSAGE.set_token('MISS_FIELD','ASSOCIATION_TYPE');
863: x_return_status := FND_API.g_ret_sts_error;
864: RETURN;
859:
860: IF p_met_tpl_assoc_rec.association_type = FND_API.g_miss_char OR p_met_tpl_assoc_rec.association_type IS NULL THEN
861: FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
862: FND_MESSAGE.set_token('MISS_FIELD','ASSOCIATION_TYPE');
863: x_return_status := FND_API.g_ret_sts_error;
864: RETURN;
865: END IF;
866:
867: IF p_met_tpl_assoc_rec.enabled_flag = FND_API.g_miss_char OR p_met_tpl_assoc_rec.enabled_flag IS NULL THEN
863: x_return_status := FND_API.g_ret_sts_error;
864: RETURN;
865: END IF;
866:
867: IF p_met_tpl_assoc_rec.enabled_flag = FND_API.g_miss_char OR p_met_tpl_assoc_rec.enabled_flag IS NULL THEN
868: FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
869: FND_MESSAGE.set_token('MISS_FIELD','ENABLED_FLAG');
870: x_return_status := FND_API.g_ret_sts_error;
871: RETURN;
866:
867: IF p_met_tpl_assoc_rec.enabled_flag = FND_API.g_miss_char OR p_met_tpl_assoc_rec.enabled_flag IS NULL THEN
868: FND_MESSAGE.set_name('AMS', 'AMS_API_MISSING_FIELD');
869: FND_MESSAGE.set_token('MISS_FIELD','ENABLED_FLAG');
870: x_return_status := FND_API.g_ret_sts_error;
871: RETURN;
872: END IF;
873: ELSE
874:
873: ELSE
874:
875: IF p_met_tpl_assoc_rec.metric_tpl_assoc_id IS NULL THEN
876: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_MTA_NO_MTA_ID');
877: x_return_status := FND_API.g_ret_sts_error;
878: RETURN;
879: END IF;
880:
881: -- IF p_met_tpl_assoc_rec.last_update_date IS NULL THEN
879: END IF;
880:
881: -- IF p_met_tpl_assoc_rec.last_update_date IS NULL THEN
882: -- Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_met_tpl_assoc_NO_last_update_date');
883: -- x_return_status := FND_API.g_ret_sts_error;
884: -- RETURN;
885: -- END IF;
886: --
887: -- IF p_met_tpl_assoc_rec.last_updated_by IS NULL THEN
885: -- END IF;
886: --
887: -- IF p_met_tpl_assoc_rec.last_updated_by IS NULL THEN
888: -- Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_met_tpl_assoc_NO_last_updated_by');
889: -- x_return_status := FND_API.g_ret_sts_error;
890: -- RETURN;
891: -- END IF;
892: --
893: -- IF p_met_tpl_assoc_rec.creation_date IS NULL THEN
891: -- END IF;
892: --
893: -- IF p_met_tpl_assoc_rec.creation_date IS NULL THEN
894: -- Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_met_tpl_assoc_NO_creation_date');
895: -- x_return_status := FND_API.g_ret_sts_error;
896: -- RETURN;
897: -- END IF;
898: --
899: -- IF p_met_tpl_assoc_rec.created_by IS NULL THEN
897: -- END IF;
898: --
899: -- IF p_met_tpl_assoc_rec.created_by IS NULL THEN
900: -- Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_met_tpl_assoc_NO_created_by');
901: -- x_return_status := FND_API.g_ret_sts_error;
902: -- RETURN;
903: -- END IF;
904:
905: IF p_met_tpl_assoc_rec.metric_tpl_header_id IS NULL THEN
903: -- END IF;
904:
905: IF p_met_tpl_assoc_rec.metric_tpl_header_id IS NULL THEN
906: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_MTA_NO_MTH_ID');
907: x_return_status := FND_API.g_ret_sts_error;
908: RETURN;
909: END IF;
910:
911: IF p_met_tpl_assoc_rec.association_type IS NULL THEN
909: END IF;
910:
911: IF p_met_tpl_assoc_rec.association_type IS NULL THEN
912: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_MTA_NO_ASSOCIATION_TYPE');
913: x_return_status := FND_API.g_ret_sts_error;
914: RETURN;
915: END IF;
916:
917: IF p_met_tpl_assoc_rec.enabled_flag IS NULL THEN
915: END IF;
916:
917: IF p_met_tpl_assoc_rec.enabled_flag IS NULL THEN
918: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_MTA_NO_ENABLED_FLAG');
919: x_return_status := FND_API.g_ret_sts_error;
920: RETURN;
921: END IF;
922: END IF;
923:
942: AND lookup_type = 'AMS_SYS_ARC_QUALIFIER';
943:
944: l_dummy NUMBER;
945: BEGIN
946: x_return_status := FND_API.g_ret_sts_success;
947:
948: -- Enter custom code here
949:
950: -- Validate metric_tpl_header_id exists.
951: OPEN c_check_header_id(p_met_tpl_assoc_rec.metric_tpl_header_id);
952: FETCH c_check_header_id INTO l_dummy;
953: IF c_check_header_id%NOTFOUND THEN
954: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_HEADER_ID');
955: x_return_status := FND_API.g_ret_sts_error;
956: END IF;
957: CLOSE c_check_header_id;
958:
959: IF p_met_tpl_assoc_rec.association_type = 'CUSTOM_SETUP' THEN
960: OPEN c_check_custom_setup(p_met_tpl_assoc_rec.used_by_id);
961: FETCH c_check_custom_setup INTO l_dummy;
962: IF c_check_custom_setup%NOTFOUND THEN
963: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_CUSTOM_SETUP');
964: x_return_status := FND_API.g_ret_sts_error;
965: END IF;
966: CLOSE c_check_custom_setup;
967: IF p_met_tpl_assoc_rec.used_by_code IS NOT NULL THEN
968: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_USED_BY');
965: END IF;
966: CLOSE c_check_custom_setup;
967: IF p_met_tpl_assoc_rec.used_by_code IS NOT NULL THEN
968: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_USED_BY');
969: x_return_status := FND_API.g_ret_sts_error;
970: END IF;
971: ELSIF p_met_tpl_assoc_rec.association_type = 'OBJECT_TYPE' THEN
972: OPEN c_check_object_type(p_met_tpl_assoc_rec.used_by_code);
973: FETCH c_check_object_type INTO l_dummy;
972: OPEN c_check_object_type(p_met_tpl_assoc_rec.used_by_code);
973: FETCH c_check_object_type INTO l_dummy;
974: IF c_check_object_type%NOTFOUND THEN
975: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_OBJECT_TYPE');
976: x_return_status := FND_API.g_ret_sts_error;
977: END IF;
978: CLOSE c_check_object_type;
979: IF p_met_tpl_assoc_rec.used_by_id IS NOT NULL THEN
980: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_USED_BY');
977: END IF;
978: CLOSE c_check_object_type;
979: IF p_met_tpl_assoc_rec.used_by_id IS NOT NULL THEN
980: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_USED_BY');
981: x_return_status := FND_API.g_ret_sts_error;
982: END IF;
983: END IF;
984:
985: END check_met_tpl_assoc_FK_items;
989: x_return_status OUT NOCOPY VARCHAR2
990: )
991: IS
992: BEGIN
993: x_return_status := FND_API.g_ret_sts_success;
994:
995: -- Enter custom code here
996:
997: -- Validate association types.
995: -- Enter custom code here
996:
997: -- Validate association types.
998: IF Ams_Utility_Pvt.check_lookup_exists(p_lookup_type => 'AMS_METRIC_TPL_ASSOC_TYPES',
999: p_lookup_code => p_met_tpl_assoc_rec.association_type) = FND_API.G_FALSE THEN
1000: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_ASSOC_TYPE');
1001: x_return_status := FND_API.g_ret_sts_error;
1002: END IF;
1003:
997: -- Validate association types.
998: IF Ams_Utility_Pvt.check_lookup_exists(p_lookup_type => 'AMS_METRIC_TPL_ASSOC_TYPES',
999: p_lookup_code => p_met_tpl_assoc_rec.association_type) = FND_API.G_FALSE THEN
1000: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_ASSOC_TYPE');
1001: x_return_status := FND_API.g_ret_sts_error;
1002: END IF;
1003:
1004: IF Ams_Utility_Pvt.is_y_or_n(p_met_tpl_assoc_rec.enabled_flag) = FND_API.G_FALSE THEN
1005: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_ENABLED_FLAG');
1000: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_ASSOC_TYPE');
1001: x_return_status := FND_API.g_ret_sts_error;
1002: END IF;
1003:
1004: IF Ams_Utility_Pvt.is_y_or_n(p_met_tpl_assoc_rec.enabled_flag) = FND_API.G_FALSE THEN
1005: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_ENABLED_FLAG');
1006: x_return_status := FND_API.g_ret_sts_error;
1007: END IF;
1008:
1002: END IF;
1003:
1004: IF Ams_Utility_Pvt.is_y_or_n(p_met_tpl_assoc_rec.enabled_flag) = FND_API.G_FALSE THEN
1005: Ams_Utility_Pvt.error_message(p_message_name => 'AMS_MTA_BAD_ENABLED_FLAG');
1006: x_return_status := FND_API.g_ret_sts_error;
1007: END IF;
1008:
1009: END check_met_tpl_assoc_lkp_items;
1010:
1021: check_met_tpl_assoc_uk_items(
1022: p_met_tpl_assoc_rec => p_met_tpl_assoc_rec,
1023: p_validation_mode => p_validation_mode,
1024: x_return_status => x_return_status);
1025: IF x_return_status <> FND_API.g_ret_sts_success THEN
1026: RETURN;
1027: END IF;
1028:
1029: -- Check Items Required/NOT NULL API calls
1031: check_met_tpl_assoc_req_items(
1032: p_met_tpl_assoc_rec => p_met_tpl_assoc_rec,
1033: p_validation_mode => p_validation_mode,
1034: x_return_status => x_return_status);
1035: IF x_return_status <> FND_API.g_ret_sts_success THEN
1036: RETURN;
1037: END IF;
1038: -- Check Items Foreign Keys API calls
1039:
1039:
1040: check_met_tpl_assoc_FK_items(
1041: p_met_tpl_assoc_rec => p_met_tpl_assoc_rec,
1042: x_return_status => x_return_status);
1043: IF x_return_status <> FND_API.g_ret_sts_success THEN
1044: RETURN;
1045: END IF;
1046: -- Check Items Lookups
1047:
1047:
1048: check_met_tpl_assoc_lkp_items(
1049: p_met_tpl_assoc_rec => p_met_tpl_assoc_rec,
1050: x_return_status => x_return_status);
1051: IF x_return_status <> FND_API.g_ret_sts_success THEN
1052: RETURN;
1053: END IF;
1054:
1055: END Check_met_tpl_assoc_Items;
1076: --FETCH c_complete INTO l_met_tpl_assoc_rec;
1077: --CLOSE c_complete;
1078:
1079: -- -- metric_tpl_assoc_id
1080: -- IF p_met_tpl_assoc_rec.metric_tpl_assoc_id = FND_API.g_miss_num THEN
1081: -- x_complete_rec.metric_tpl_assoc_id := l_met_tpl_assoc_rec.metric_tpl_assoc_id;
1082: -- END IF;
1083: --
1084: -- -- last_update_date
1081: -- x_complete_rec.metric_tpl_assoc_id := l_met_tpl_assoc_rec.metric_tpl_assoc_id;
1082: -- END IF;
1083: --
1084: -- -- last_update_date
1085: -- IF p_met_tpl_assoc_rec.last_update_date = FND_API.g_miss_date THEN
1086: -- x_complete_rec.last_update_date := l_met_tpl_assoc_rec.last_update_date;
1087: -- END IF;
1088: --
1089: -- -- last_updated_by
1086: -- x_complete_rec.last_update_date := l_met_tpl_assoc_rec.last_update_date;
1087: -- END IF;
1088: --
1089: -- -- last_updated_by
1090: -- IF p_met_tpl_assoc_rec.last_updated_by = FND_API.g_miss_num THEN
1091: -- x_complete_rec.last_updated_by := l_met_tpl_assoc_rec.last_updated_by;
1092: -- END IF;
1093: --
1094: -- -- creation_date
1091: -- x_complete_rec.last_updated_by := l_met_tpl_assoc_rec.last_updated_by;
1092: -- END IF;
1093: --
1094: -- -- creation_date
1095: -- IF p_met_tpl_assoc_rec.creation_date = FND_API.g_miss_date THEN
1096: -- x_complete_rec.creation_date := l_met_tpl_assoc_rec.creation_date;
1097: -- END IF;
1098: --
1099: -- -- created_by
1096: -- x_complete_rec.creation_date := l_met_tpl_assoc_rec.creation_date;
1097: -- END IF;
1098: --
1099: -- -- created_by
1100: -- IF p_met_tpl_assoc_rec.created_by = FND_API.g_miss_num THEN
1101: -- x_complete_rec.created_by := l_met_tpl_assoc_rec.created_by;
1102: -- END IF;
1103: --
1104: -- -- last_update_login
1101: -- x_complete_rec.created_by := l_met_tpl_assoc_rec.created_by;
1102: -- END IF;
1103: --
1104: -- -- last_update_login
1105: -- IF p_met_tpl_assoc_rec.last_update_login = FND_API.g_miss_num THEN
1106: -- x_complete_rec.last_update_login := l_met_tpl_assoc_rec.last_update_login;
1107: -- END IF;
1108: --
1109: -- -- object_version_number
1106: -- x_complete_rec.last_update_login := l_met_tpl_assoc_rec.last_update_login;
1107: -- END IF;
1108: --
1109: -- -- object_version_number
1110: -- IF p_met_tpl_assoc_rec.object_version_number = FND_API.g_miss_num THEN
1111: -- x_complete_rec.object_version_number := l_met_tpl_assoc_rec.object_version_number;
1112: -- END IF;
1113:
1114: -- metric_tpl_header_id
1111: -- x_complete_rec.object_version_number := l_met_tpl_assoc_rec.object_version_number;
1112: -- END IF;
1113:
1114: -- metric_tpl_header_id
1115: IF x_tar_met_tpl_assoc_rec.metric_tpl_header_id = FND_API.g_miss_num THEN
1116: x_tar_met_tpl_assoc_rec.metric_tpl_header_id := p_ref_met_tpl_assoc_rec.metric_tpl_header_id;
1117: END IF;
1118:
1119: -- association_type
1116: x_tar_met_tpl_assoc_rec.metric_tpl_header_id := p_ref_met_tpl_assoc_rec.metric_tpl_header_id;
1117: END IF;
1118:
1119: -- association_type
1120: IF x_tar_met_tpl_assoc_rec.association_type = FND_API.g_miss_char THEN
1121: x_tar_met_tpl_assoc_rec.association_type := p_ref_met_tpl_assoc_rec.association_type;
1122: END IF;
1123:
1124: -- used_by_id
1121: x_tar_met_tpl_assoc_rec.association_type := p_ref_met_tpl_assoc_rec.association_type;
1122: END IF;
1123:
1124: -- used_by_id
1125: IF x_tar_met_tpl_assoc_rec.used_by_id = FND_API.g_miss_num THEN
1126: x_tar_met_tpl_assoc_rec.used_by_id := p_ref_met_tpl_assoc_rec.used_by_id;
1127: END IF;
1128:
1129: -- used_by_code
1126: x_tar_met_tpl_assoc_rec.used_by_id := p_ref_met_tpl_assoc_rec.used_by_id;
1127: END IF;
1128:
1129: -- used_by_code
1130: IF x_tar_met_tpl_assoc_rec.used_by_code = FND_API.g_miss_char THEN
1131: x_tar_met_tpl_assoc_rec.used_by_code := p_ref_met_tpl_assoc_rec.used_by_code;
1132: END IF;
1133:
1134: -- enabled_flag
1131: x_tar_met_tpl_assoc_rec.used_by_code := p_ref_met_tpl_assoc_rec.used_by_code;
1132: END IF;
1133:
1134: -- enabled_flag
1135: IF x_tar_met_tpl_assoc_rec.enabled_flag = FND_API.g_miss_char THEN
1136: x_tar_met_tpl_assoc_rec.enabled_flag := p_ref_met_tpl_assoc_rec.enabled_flag;
1137: END IF;
1138:
1139: -- Note: Developers need to modify the procedure
1141: END Complete_met_tpl_assoc_Rec;
1142:
1143: PROCEDURE Validate_met_tpl_assoc(
1144: p_api_version_number IN NUMBER,
1145: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1146: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1147: p_met_tpl_assoc_rec IN met_tpl_assoc_rec_type,
1148: p_validation_mode IN VARCHAR2,
1149: x_return_status OUT NOCOPY VARCHAR2,
1142:
1143: PROCEDURE Validate_met_tpl_assoc(
1144: p_api_version_number IN NUMBER,
1145: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1146: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1147: p_met_tpl_assoc_rec IN met_tpl_assoc_rec_type,
1148: p_validation_mode IN VARCHAR2,
1149: x_return_status OUT NOCOPY VARCHAR2,
1150: x_msg_count OUT NOCOPY NUMBER,
1160: -- Standard Start of API savepoint
1161: SAVEPOINT VALIDATE_Met_Tpl_Assoc_;
1162:
1163: -- Standard call to check for call compatibility.
1164: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1165: p_api_version_number,
1166: l_api_name,
1167: G_PKG_NAME)
1168: THEN
1165: p_api_version_number,
1166: l_api_name,
1167: G_PKG_NAME)
1168: THEN
1169: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1170: END IF;
1171:
1172: -- Initialize message list if p_init_msg_list is set to TRUE.
1173: IF FND_API.to_Boolean( p_init_msg_list )
1169: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1170: END IF;
1171:
1172: -- Initialize message list if p_init_msg_list is set to TRUE.
1173: IF FND_API.to_Boolean( p_init_msg_list )
1174: THEN
1175: FND_MSG_PUB.initialize;
1176: END IF;
1177: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1180: p_validation_mode => p_validation_mode,
1181: x_return_status => x_return_status
1182: );
1183:
1184: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1185: RAISE FND_API.G_EXC_ERROR;
1186: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1187: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1188: END IF;
1181: x_return_status => x_return_status
1182: );
1183:
1184: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1185: RAISE FND_API.G_EXC_ERROR;
1186: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1187: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1188: END IF;
1189: END IF;
1182: );
1183:
1184: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1185: RAISE FND_API.G_EXC_ERROR;
1186: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1187: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1188: END IF;
1189: END IF;
1190:
1183:
1184: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1185: RAISE FND_API.G_EXC_ERROR;
1186: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1187: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1188: END IF;
1189: END IF;
1190:
1191: -- Complete_met_tpl_assoc_Rec(
1195:
1196: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1197: Validate_met_tpl_assoc_Rec(
1198: p_api_version_number => 1.0,
1199: p_init_msg_list => FND_API.G_FALSE,
1200: x_return_status => x_return_status,
1201: x_msg_count => x_msg_count,
1202: x_msg_data => x_msg_data,
1203: p_met_tpl_assoc_rec => l_met_tpl_assoc_rec);
1201: x_msg_count => x_msg_count,
1202: x_msg_data => x_msg_data,
1203: p_met_tpl_assoc_rec => l_met_tpl_assoc_rec);
1204:
1205: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1206: RAISE FND_API.G_EXC_ERROR;
1207: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1208: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1209: END IF;
1202: x_msg_data => x_msg_data,
1203: p_met_tpl_assoc_rec => l_met_tpl_assoc_rec);
1204:
1205: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1206: RAISE FND_API.G_EXC_ERROR;
1207: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1208: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1209: END IF;
1210: END IF;
1203: p_met_tpl_assoc_rec => l_met_tpl_assoc_rec);
1204:
1205: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1206: RAISE FND_API.G_EXC_ERROR;
1207: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1208: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1209: END IF;
1210: END IF;
1211:
1204:
1205: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1206: RAISE FND_API.G_EXC_ERROR;
1207: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1208: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1209: END IF;
1210: END IF;
1211:
1212: -- Debug Message
1215: Ams_Utility_Pvt.debug_message('PRIVATE API: ' || l_api_name || 'START');
1216: END IF;
1217:
1218: -- Initialize API return status to SUCCESS
1219: x_return_status := FND_API.G_RET_STS_SUCCESS;
1220:
1221: -- Debug Message
1222: IF (AMS_DEBUG_HIGH_ON) THEN
1223:
1231: );
1232: EXCEPTION
1233:
1234: WHEN Ams_Utility_Pvt.resource_locked THEN
1235: x_return_status := FND_API.g_ret_sts_error;
1236: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1237:
1238: WHEN FND_API.G_EXC_ERROR THEN
1239: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1234: WHEN Ams_Utility_Pvt.resource_locked THEN
1235: x_return_status := FND_API.g_ret_sts_error;
1236: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1237:
1238: WHEN FND_API.G_EXC_ERROR THEN
1239: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1240: x_return_status := FND_API.G_RET_STS_ERROR;
1241: -- Standard call to get message count and if count=1, get the message
1242: FND_MSG_PUB.Count_And_Get (
1236: Ams_Utility_Pvt.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
1237:
1238: WHEN FND_API.G_EXC_ERROR THEN
1239: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1240: x_return_status := FND_API.G_RET_STS_ERROR;
1241: -- Standard call to get message count and if count=1, get the message
1242: FND_MSG_PUB.Count_And_Get (
1243: p_encoded => FND_API.G_FALSE,
1244: p_count => x_msg_count,
1239: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1240: x_return_status := FND_API.G_RET_STS_ERROR;
1241: -- Standard call to get message count and if count=1, get the message
1242: FND_MSG_PUB.Count_And_Get (
1243: p_encoded => FND_API.G_FALSE,
1244: p_count => x_msg_count,
1245: p_data => x_msg_data
1246: );
1247:
1244: p_count => x_msg_count,
1245: p_data => x_msg_data
1246: );
1247:
1248: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1249: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1251: -- Standard call to get message count and if count=1, get the message
1252: FND_MSG_PUB.Count_And_Get (
1246: );
1247:
1248: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1249: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1251: -- Standard call to get message count and if count=1, get the message
1252: FND_MSG_PUB.Count_And_Get (
1253: p_encoded => FND_API.G_FALSE,
1254: p_count => x_msg_count,
1249: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1251: -- Standard call to get message count and if count=1, get the message
1252: FND_MSG_PUB.Count_And_Get (
1253: p_encoded => FND_API.G_FALSE,
1254: p_count => x_msg_count,
1255: p_data => x_msg_data
1256: );
1257:
1256: );
1257:
1258: WHEN OTHERS THEN
1259: ROLLBACK TO VALIDATE_Met_Tpl_Assoc_;
1260: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1261: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1262: THEN
1263: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1264: END IF;
1263: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1264: END IF;
1265: -- Standard call to get message count and if count=1, get the message
1266: FND_MSG_PUB.Count_And_Get (
1267: p_encoded => FND_API.G_FALSE,
1268: p_count => x_msg_count,
1269: p_data => x_msg_data
1270: );
1271: END Validate_Met_Tpl_Assoc;
1272:
1273:
1274: PROCEDURE Validate_met_tpl_assoc_rec(
1275: p_api_version_number IN NUMBER,
1276: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1277: x_return_status OUT NOCOPY VARCHAR2,
1278: x_msg_count OUT NOCOPY NUMBER,
1279: x_msg_data OUT NOCOPY VARCHAR2,
1280: p_met_tpl_assoc_rec IN met_tpl_assoc_rec_type
1281: )
1282: IS
1283: BEGIN
1284: -- Initialize message list if p_init_msg_list is set to TRUE.
1285: IF FND_API.to_Boolean( p_init_msg_list )
1286: THEN
1287: FND_MSG_PUB.initialize;
1288: END IF;
1289:
1287: FND_MSG_PUB.initialize;
1288: END IF;
1289:
1290: -- Initialize API return status to SUCCESS
1291: x_return_status := FND_API.G_RET_STS_SUCCESS;
1292:
1293: -- Hint: Validate data
1294: -- If data not valid
1295: -- THEN
1292:
1293: -- Hint: Validate data
1294: -- If data not valid
1295: -- THEN
1296: -- x_return_status := FND_API.G_RET_STS_ERROR;
1297:
1298: -- Debug Message
1299: IF (AMS_DEBUG_HIGH_ON) THEN
1300: