22:
23: -- Hint: Primary key needs to be returned.
24: PROCEDURE Create_Attr_Principal(
25: p_api_version_number IN NUMBER
26: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
28: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
29:
30: ,x_return_status OUT NOCOPY VARCHAR2
23: -- Hint: Primary key needs to be returned.
24: PROCEDURE Create_Attr_Principal(
25: p_api_version_number IN NUMBER
26: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
28: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
29:
30: ,x_return_status OUT NOCOPY VARCHAR2
31: ,x_msg_count OUT NOCOPY NUMBER
24: PROCEDURE Create_Attr_Principal(
25: p_api_version_number IN NUMBER
26: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
28: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
29:
30: ,x_return_status OUT NOCOPY VARCHAR2
31: ,x_msg_count OUT NOCOPY NUMBER
32: ,x_msg_data OUT NOCOPY VARCHAR2
41: l_full_name CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
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_Attr_Principal_id NUMBER;
47: l_dummy NUMBER;
48: l_Attr_Principal_rec Attr_Principal_rec_type := p_Attr_Principal_rec;
49:
60: -- Standard Start of API savepoint
61: SAVEPOINT CREATE_Attr_Principal_PVT;
62:
63: -- Standard call to check for call compatibility.
64: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
65: p_api_version_number,
66: l_api_name,
67: G_PKG_NAME)
68: THEN
65: p_api_version_number,
66: l_api_name,
67: G_PKG_NAME)
68: THEN
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:
80: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - start');
81: END IF;
82:
83: -- Initialize API return status to SUCCESS
84: x_return_status := FND_API.G_RET_STS_SUCCESS;
85:
86: -- Local variable initialization
87:
88: IF p_Attr_Principal_rec.Attr_Principal_ID IS NULL
85:
86: -- Local variable initialization
87:
88: IF p_Attr_Principal_rec.Attr_Principal_ID IS NULL
89: OR p_Attr_Principal_rec.Attr_Principal_ID = FND_API.g_miss_num THEN
90: LOOP
91: l_dummy := NULL;
92: OPEN c_id;
93: FETCH c_id INTO l_Attr_Principal_ID;
108: IF FND_GLOBAL.User_Id IS NULL
109: THEN
110: FND_MESSAGE.set_name('PV', 'PV_API_USER_PROFILE_MISSING');
111: FND_MSG_PUB.add;
112: RAISE FND_API.G_EXC_ERROR;
113: END IF;
114:
115: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
116: THEN
111: FND_MSG_PUB.add;
112: RAISE FND_API.G_EXC_ERROR;
113: END IF;
114:
115: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
116: THEN
117: -- Debug message
118: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
119: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - Validate_Attr_Principal');
132:
133: -- Invoke validation procedures
134: Validate_Attr_Principal(
135: p_api_version_number => 1.0
136: ,p_init_msg_list => FND_API.G_FALSE
137: ,p_validation_level => p_validation_level
138: ,p_validation_mode => JTF_PLSQL_API.g_create
139: ,p_Attr_Principal_rec => l_Attr_Principal_rec
140: ,x_return_status => x_return_status
144:
145: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : After Validate_Attr_Principal' );
146: END IF;
147:
148: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
149: RAISE FND_API.G_EXC_ERROR;
150: END IF;
151:
152: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : After Validate' );
145: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : After Validate_Attr_Principal' );
146: END IF;
147:
148: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
149: RAISE FND_API.G_EXC_ERROR;
150: END IF;
151:
152: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : After Validate' );
153: -- Debug Message
172: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : After' );
173:
174: x_Attr_Principal_id := l_Attr_Principal_id;
175:
176: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
177: RAISE FND_API.G_EXC_ERROR;
178: END IF;
179: --
180: -- End of API body
173:
174: x_Attr_Principal_id := l_Attr_Principal_id;
175:
176: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
177: RAISE FND_API.G_EXC_ERROR;
178: END IF;
179: --
180: -- End of API body
181: --
180: -- End of API body
181: --
182:
183: -- Standard check for p_commit
184: IF FND_API.to_Boolean( p_commit )
185: THEN
186: COMMIT WORK;
187: END IF;
188:
199: );
200: EXCEPTION
201: /*
202: WHEN PVX_Utility_PVT.resource_locked THEN
203: x_return_status := FND_API.g_ret_sts_error;
204: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
205: */
206: WHEN FND_API.G_EXC_ERROR THEN
207: ROLLBACK TO CREATE_Attr_Principal_PVT;
202: WHEN PVX_Utility_PVT.resource_locked THEN
203: x_return_status := FND_API.g_ret_sts_error;
204: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
205: */
206: WHEN FND_API.G_EXC_ERROR THEN
207: ROLLBACK TO CREATE_Attr_Principal_PVT;
208: x_return_status := FND_API.G_RET_STS_ERROR;
209: -- Standard call to get message count and if count=1, get the message
210: FND_MSG_PUB.Count_And_Get (
204: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
205: */
206: WHEN FND_API.G_EXC_ERROR THEN
207: ROLLBACK TO CREATE_Attr_Principal_PVT;
208: x_return_status := FND_API.G_RET_STS_ERROR;
209: -- Standard call to get message count and if count=1, get the message
210: FND_MSG_PUB.Count_And_Get (
211: p_encoded => FND_API.G_FALSE,
212: p_count => x_msg_count,
207: ROLLBACK TO CREATE_Attr_Principal_PVT;
208: x_return_status := FND_API.G_RET_STS_ERROR;
209: -- Standard call to get message count and if count=1, get the message
210: FND_MSG_PUB.Count_And_Get (
211: p_encoded => FND_API.G_FALSE,
212: p_count => x_msg_count,
213: p_data => x_msg_data
214: );
215:
212: p_count => x_msg_count,
213: p_data => x_msg_data
214: );
215:
216: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
217: ROLLBACK TO CREATE_Attr_Principal_PVT;
218: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
219: -- Standard call to get message count and if count=1, get the message
220: FND_MSG_PUB.Count_And_Get (
214: );
215:
216: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
217: ROLLBACK TO CREATE_Attr_Principal_PVT;
218: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
219: -- Standard call to get message count and if count=1, get the message
220: FND_MSG_PUB.Count_And_Get (
221: p_encoded => FND_API.G_FALSE,
222: p_count => x_msg_count,
217: ROLLBACK TO CREATE_Attr_Principal_PVT;
218: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
219: -- Standard call to get message count and if count=1, get the message
220: FND_MSG_PUB.Count_And_Get (
221: p_encoded => FND_API.G_FALSE,
222: p_count => x_msg_count,
223: p_data => x_msg_data
224: );
225:
224: );
225:
226: WHEN OTHERS THEN
227: ROLLBACK TO CREATE_Attr_Principal_PVT;
228: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
229: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
230: THEN
231: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
232: END IF;
231: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
232: END IF;
233: -- Standard call to get message count and if count=1, get the message
234: FND_MSG_PUB.Count_And_Get (
235: p_encoded => FND_API.G_FALSE,
236: p_count => x_msg_count,
237: p_data => x_msg_data
238: );
239: End Create_Attr_Principal;
240:
241:
242: PROCEDURE Update_Attr_Principal(
243: p_api_version_number IN NUMBER
244: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
245: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
246: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
247:
248: ,x_return_status OUT NOCOPY VARCHAR2
241:
242: PROCEDURE Update_Attr_Principal(
243: p_api_version_number IN NUMBER
244: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
245: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
246: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
247:
248: ,x_return_status OUT NOCOPY VARCHAR2
249: ,x_msg_count OUT NOCOPY NUMBER
242: PROCEDURE Update_Attr_Principal(
243: p_api_version_number IN NUMBER
244: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
245: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
246: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
247:
248: ,x_return_status OUT NOCOPY VARCHAR2
249: ,x_msg_count OUT NOCOPY NUMBER
250: ,x_msg_data OUT NOCOPY VARCHAR2
273: -- Standard Start of API savepoint
274: SAVEPOINT UPDATE_Attr_Principal_PVT;
275:
276: -- Standard call to check for call compatibility.
277: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
278: p_api_version_number,
279: l_api_name,
280: G_PKG_NAME)
281: THEN
278: p_api_version_number,
279: l_api_name,
280: G_PKG_NAME)
281: THEN
282: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
283: END IF;
284:
285: -- Initialize message list if p_init_msg_list is set to TRUE.
286: IF FND_API.to_Boolean( p_init_msg_list )
282: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
283: END IF;
284:
285: -- Initialize message list if p_init_msg_list is set to TRUE.
286: IF FND_API.to_Boolean( p_init_msg_list )
287: THEN
288: FND_MSG_PUB.initialize;
289: END IF;
290:
294: END IF;
295:
296:
297: -- Initialize API return status to SUCCESS
298: x_return_status := FND_API.G_RET_STS_SUCCESS;
299:
300: -- Debug Message
301: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
302: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - Open Cursor to Select');
313: FND_MESSAGE.set_token('ENTITY','Attr_Principal');
314: FND_MESSAGE.set_token('ID',TO_CHAR(l_tar_Attr_Principal_rec.Attr_Principal_id));
315: FND_MSG_PUB.add;
316: END IF;
317: RAISE FND_API.G_EXC_ERROR;
318: END IF;
319: -- Debug Message
320: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
321: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - Close Cursor');
325:
326:
327:
328: IF (l_tar_Attr_Principal_rec.object_version_number is NULL or
329: l_tar_Attr_Principal_rec.object_version_number = FND_API.G_MISS_NUM ) Then
330:
331: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
332: FND_MESSAGE.set_name('PV', 'PV_API_VERSION_MISSING');
333: FND_MESSAGE.set_token('COLUMN',TO_CHAR(l_tar_Attr_Principal_rec.last_update_date));
332: FND_MESSAGE.set_name('PV', 'PV_API_VERSION_MISSING');
333: FND_MESSAGE.set_token('COLUMN',TO_CHAR(l_tar_Attr_Principal_rec.last_update_date));
334: FND_MSG_PUB.add;
335: END IF;
336: RAISE FND_API.G_EXC_ERROR;
337: End if;
338:
339: -- Check Whether record has been changed by someone else
340: If (l_tar_Attr_Principal_rec.object_version_number <> l_ref_Attr_Principal_rec.object_version_number) Then
342: FND_MESSAGE.set_name('PV', 'PV_API_RECORD_CHANGED');
343: FND_MESSAGE.set_token('VALUE','Attr_Principal');
344: FND_MSG_PUB.add;
345: END IF;
346: RAISE FND_API.G_EXC_ERROR;
347: End if;
348: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
349: THEN
350: -- Debug message
344: FND_MSG_PUB.add;
345: END IF;
346: RAISE FND_API.G_EXC_ERROR;
347: End if;
348: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
349: THEN
350: -- Debug message
351: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
352: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - Validate_Attr_Principal');
354:
355: -- Invoke validation procedures
356: Validate_Attr_Principal(
357: p_api_version_number => 1.0
358: ,p_init_msg_list => FND_API.G_FALSE
359: ,p_validation_level => p_validation_level
360: ,p_validation_mode => JTF_PLSQL_API.g_update
361: ,p_Attr_Principal_rec => p_Attr_Principal_rec
362: ,x_return_status => x_return_status
365: );
366:
367: END IF;
368:
369: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
370: RAISE FND_API.G_EXC_ERROR;
371: END IF;
372:
373:
366:
367: END IF;
368:
369: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
370: RAISE FND_API.G_EXC_ERROR;
371: END IF;
372:
373:
374: -- Debug Message
396: -- End of API body.
397: --
398:
399: -- Standard check for p_commit
400: IF FND_API.to_Boolean( p_commit )
401: THEN
402: COMMIT WORK;
403: END IF;
404:
415: );
416: EXCEPTION
417: /*
418: WHEN PVX_Utility_PVT.resource_locked THEN
419: x_return_status := FND_API.g_ret_sts_error;
420: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
421: */
422: WHEN FND_API.G_EXC_ERROR THEN
423: ROLLBACK TO UPDATE_Attr_Principal_PVT;
418: WHEN PVX_Utility_PVT.resource_locked THEN
419: x_return_status := FND_API.g_ret_sts_error;
420: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
421: */
422: WHEN FND_API.G_EXC_ERROR THEN
423: ROLLBACK TO UPDATE_Attr_Principal_PVT;
424: x_return_status := FND_API.G_RET_STS_ERROR;
425: -- Standard call to get message count and if count=1, get the message
426: FND_MSG_PUB.Count_And_Get (
420: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
421: */
422: WHEN FND_API.G_EXC_ERROR THEN
423: ROLLBACK TO UPDATE_Attr_Principal_PVT;
424: x_return_status := FND_API.G_RET_STS_ERROR;
425: -- Standard call to get message count and if count=1, get the message
426: FND_MSG_PUB.Count_And_Get (
427: p_encoded => FND_API.G_FALSE,
428: p_count => x_msg_count,
423: ROLLBACK TO UPDATE_Attr_Principal_PVT;
424: x_return_status := FND_API.G_RET_STS_ERROR;
425: -- Standard call to get message count and if count=1, get the message
426: FND_MSG_PUB.Count_And_Get (
427: p_encoded => FND_API.G_FALSE,
428: p_count => x_msg_count,
429: p_data => x_msg_data
430: );
431:
428: p_count => x_msg_count,
429: p_data => x_msg_data
430: );
431:
432: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
433: ROLLBACK TO UPDATE_Attr_Principal_PVT;
434: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
435: -- Standard call to get message count and if count=1, get the message
436: FND_MSG_PUB.Count_And_Get (
430: );
431:
432: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
433: ROLLBACK TO UPDATE_Attr_Principal_PVT;
434: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
435: -- Standard call to get message count and if count=1, get the message
436: FND_MSG_PUB.Count_And_Get (
437: p_encoded => FND_API.G_FALSE,
438: p_count => x_msg_count,
433: ROLLBACK TO UPDATE_Attr_Principal_PVT;
434: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
435: -- Standard call to get message count and if count=1, get the message
436: FND_MSG_PUB.Count_And_Get (
437: p_encoded => FND_API.G_FALSE,
438: p_count => x_msg_count,
439: p_data => x_msg_data
440: );
441:
440: );
441:
442: WHEN OTHERS THEN
443: ROLLBACK TO UPDATE_Attr_Principal_PVT;
444: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
445: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
446: THEN
447: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
448: END IF;
447: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
448: END IF;
449: -- Standard call to get message count and if count=1, get the message
450: FND_MSG_PUB.Count_And_Get (
451: p_encoded => FND_API.G_FALSE,
452: p_count => x_msg_count,
453: p_data => x_msg_data
454: );
455: End Update_Attr_Principal;
456:
457:
458: PROCEDURE Delete_Attr_Principal(
459: p_api_version_number IN NUMBER
460: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
461: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
462: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
463:
464: ,x_return_status OUT NOCOPY VARCHAR2
457:
458: PROCEDURE Delete_Attr_Principal(
459: p_api_version_number IN NUMBER
460: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
461: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
462: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
463:
464: ,x_return_status OUT NOCOPY VARCHAR2
465: ,x_msg_count OUT NOCOPY NUMBER
458: PROCEDURE Delete_Attr_Principal(
459: p_api_version_number IN NUMBER
460: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
461: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
462: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
463:
464: ,x_return_status OUT NOCOPY VARCHAR2
465: ,x_msg_count OUT NOCOPY NUMBER
466: ,x_msg_data OUT NOCOPY VARCHAR2
479: -- Standard Start of API savepoint
480: SAVEPOINT DELETE_Attr_Principal_PVT;
481:
482: -- Standard call to check for call compatibility.
483: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
484: p_api_version_number,
485: l_api_name,
486: G_PKG_NAME)
487: THEN
484: p_api_version_number,
485: l_api_name,
486: G_PKG_NAME)
487: THEN
488: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
489: END IF;
490:
491: -- Initialize message list if p_init_msg_list is set to TRUE.
492: IF FND_API.to_Boolean( p_init_msg_list )
488: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
489: END IF;
490:
491: -- Initialize message list if p_init_msg_list is set to TRUE.
492: IF FND_API.to_Boolean( p_init_msg_list )
493: THEN
494: FND_MSG_PUB.initialize;
495: END IF;
496:
500: END IF;
501:
502:
503: -- Initialize API return status to SUCCESS
504: x_return_status := FND_API.G_RET_STS_SUCCESS;
505:
506: --
507: -- Api body
508: --
519: -- End of API body
520: --
521:
522: -- Standard check for p_commit
523: IF FND_API.to_Boolean( p_commit )
524: THEN
525: COMMIT WORK;
526: END IF;
527:
538: );
539: EXCEPTION
540: /*
541: WHEN PVX_Utility_PVT.resource_locked THEN
542: x_return_status := FND_API.g_ret_sts_error;
543: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
544: */
545: WHEN FND_API.G_EXC_ERROR THEN
546: ROLLBACK TO DELETE_Attr_Principal_PVT;
541: WHEN PVX_Utility_PVT.resource_locked THEN
542: x_return_status := FND_API.g_ret_sts_error;
543: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
544: */
545: WHEN FND_API.G_EXC_ERROR THEN
546: ROLLBACK TO DELETE_Attr_Principal_PVT;
547: x_return_status := FND_API.G_RET_STS_ERROR;
548: -- Standard call to get message count and if count=1, get the message
549: FND_MSG_PUB.Count_And_Get (
543: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
544: */
545: WHEN FND_API.G_EXC_ERROR THEN
546: ROLLBACK TO DELETE_Attr_Principal_PVT;
547: x_return_status := FND_API.G_RET_STS_ERROR;
548: -- Standard call to get message count and if count=1, get the message
549: FND_MSG_PUB.Count_And_Get (
550: p_encoded => FND_API.G_FALSE,
551: p_count => x_msg_count,
546: ROLLBACK TO DELETE_Attr_Principal_PVT;
547: x_return_status := FND_API.G_RET_STS_ERROR;
548: -- Standard call to get message count and if count=1, get the message
549: FND_MSG_PUB.Count_And_Get (
550: p_encoded => FND_API.G_FALSE,
551: p_count => x_msg_count,
552: p_data => x_msg_data
553: );
554:
551: p_count => x_msg_count,
552: p_data => x_msg_data
553: );
554:
555: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
556: ROLLBACK TO DELETE_Attr_Principal_PVT;
557: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
558: -- Standard call to get message count and if count=1, get the message
559: FND_MSG_PUB.Count_And_Get (
553: );
554:
555: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
556: ROLLBACK TO DELETE_Attr_Principal_PVT;
557: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
558: -- Standard call to get message count and if count=1, get the message
559: FND_MSG_PUB.Count_And_Get (
560: p_encoded => FND_API.G_FALSE,
561: p_count => x_msg_count,
556: ROLLBACK TO DELETE_Attr_Principal_PVT;
557: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
558: -- Standard call to get message count and if count=1, get the message
559: FND_MSG_PUB.Count_And_Get (
560: p_encoded => FND_API.G_FALSE,
561: p_count => x_msg_count,
562: p_data => x_msg_data
563: );
564:
563: );
564:
565: WHEN OTHERS THEN
566: ROLLBACK TO DELETE_Attr_Principal_PVT;
567: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
568: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
569: THEN
570: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
571: END IF;
570: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
571: END IF;
572: -- Standard call to get message count and if count=1, get the message
573: FND_MSG_PUB.Count_And_Get (
574: p_encoded => FND_API.G_FALSE,
575: p_count => x_msg_count,
576: p_data => x_msg_data
577: );
578: End Delete_Attr_Principal;
581:
582: -- Hint: Primary key needs to be returned.
583: PROCEDURE Lock_Attr_Principal(
584: p_api_version_number IN NUMBER
585: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
586:
587: ,x_return_status OUT NOCOPY VARCHAR2
588: ,x_msg_count OUT NOCOPY NUMBER
589: ,x_msg_data OUT NOCOPY VARCHAR2
612: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - start');
613: END IF;
614:
615: -- Initialize message list if p_init_msg_list is set to TRUE.
616: IF FND_API.to_Boolean( p_init_msg_list )
617: THEN
618: FND_MSG_PUB.initialize;
619: END IF;
620:
618: FND_MSG_PUB.initialize;
619: END IF;
620:
621: -- Standard call to check for call compatibility.
622: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
623: p_api_version_number,
624: l_api_name,
625: G_PKG_NAME)
626: THEN
623: p_api_version_number,
624: l_api_name,
625: G_PKG_NAME)
626: THEN
627: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
628: END IF;
629:
630:
631: -- Initialize API return status to SUCCESS
628: END IF;
629:
630:
631: -- Initialize API return status to SUCCESS
632: x_return_status := FND_API.G_RET_STS_SUCCESS;
633:
634:
635: ------------------------ lock -------------------------
636: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
647: FND_MESSAGE.set_name('PV', 'PV_API_RECORD_NOT_FOUND');
648: FND_MSG_PUB.add;
649: END IF;
650: END IF;
651: RAISE FND_API.g_exc_error;
652: END IF;
653:
654: CLOSE c_Attr_Principal;
655:
654: CLOSE c_Attr_Principal;
655:
656: -------------------- finish --------------------------
657: FND_MSG_PUB.count_and_get(
658: p_encoded => FND_API.g_false,
659: p_count => x_msg_count,
660: p_data => x_msg_data);
661: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
662: PVX_Utility_PVT.debug_message(l_full_name ||': end');
663: END IF;
664: EXCEPTION
665: /*
666: WHEN PVX_Utility_PVT.resource_locked THEN
667: x_return_status := FND_API.g_ret_sts_error;
668: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
669: */
670: WHEN FND_API.G_EXC_ERROR THEN
671: ROLLBACK TO LOCK_Attr_Principal_PVT;
666: WHEN PVX_Utility_PVT.resource_locked THEN
667: x_return_status := FND_API.g_ret_sts_error;
668: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
669: */
670: WHEN FND_API.G_EXC_ERROR THEN
671: ROLLBACK TO LOCK_Attr_Principal_PVT;
672: x_return_status := FND_API.G_RET_STS_ERROR;
673: -- Standard call to get message count and if count=1, get the message
674: FND_MSG_PUB.Count_And_Get (
668: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
669: */
670: WHEN FND_API.G_EXC_ERROR THEN
671: ROLLBACK TO LOCK_Attr_Principal_PVT;
672: x_return_status := FND_API.G_RET_STS_ERROR;
673: -- Standard call to get message count and if count=1, get the message
674: FND_MSG_PUB.Count_And_Get (
675: p_encoded => FND_API.G_FALSE,
676: p_count => x_msg_count,
671: ROLLBACK TO LOCK_Attr_Principal_PVT;
672: x_return_status := FND_API.G_RET_STS_ERROR;
673: -- Standard call to get message count and if count=1, get the message
674: FND_MSG_PUB.Count_And_Get (
675: p_encoded => FND_API.G_FALSE,
676: p_count => x_msg_count,
677: p_data => x_msg_data
678: );
679:
676: p_count => x_msg_count,
677: p_data => x_msg_data
678: );
679:
680: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
681: ROLLBACK TO LOCK_Attr_Principal_PVT;
682: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
683: -- Standard call to get message count and if count=1, get the message
684: FND_MSG_PUB.Count_And_Get (
678: );
679:
680: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
681: ROLLBACK TO LOCK_Attr_Principal_PVT;
682: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
683: -- Standard call to get message count and if count=1, get the message
684: FND_MSG_PUB.Count_And_Get (
685: p_encoded => FND_API.G_FALSE,
686: p_count => x_msg_count,
681: ROLLBACK TO LOCK_Attr_Principal_PVT;
682: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
683: -- Standard call to get message count and if count=1, get the message
684: FND_MSG_PUB.Count_And_Get (
685: p_encoded => FND_API.G_FALSE,
686: p_count => x_msg_count,
687: p_data => x_msg_data
688: );
689:
688: );
689:
690: WHEN OTHERS THEN
691: ROLLBACK TO LOCK_Attr_Principal_PVT;
692: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
693: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
694: THEN
695: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
696: END IF;
695: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
696: END IF;
697: -- Standard call to get message count and if count=1, get the message
698: FND_MSG_PUB.Count_And_Get (
699: p_encoded => FND_API.G_FALSE,
700: p_count => x_msg_count,
701: p_data => x_msg_data
702: );
703: End Lock_Attr_Principal;
710: IS
711: l_valid_flag VARCHAR2(1);
712:
713: BEGIN
714: x_return_status := FND_API.g_ret_sts_success;
715: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
716: l_valid_flag := PVX_Utility_PVT.check_uniqueness(
717: 'PV_Attr_PrincipalS',
718: 'Attr_Principal_ID = ''' || p_Attr_Principal_rec.Attr_Principal_ID ||''''
724: ''' AND Attr_Principal_ID <> ' || p_Attr_Principal_rec.Attr_Principal_ID
725: );
726: END IF;
727:
728: IF l_valid_flag = FND_API.g_false THEN
729: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
730: FND_MESSAGE.set_name('PV', 'PV_API_DUPLICATE_ENTITY');
731: FND_MESSAGE.set_token('ID',to_char(p_Attr_Principal_rec.Attr_Principal_ID) );
732: FND_MESSAGE.set_token('ENTITY','Attr_Principal');
731: FND_MESSAGE.set_token('ID',to_char(p_Attr_Principal_rec.Attr_Principal_ID) );
732: FND_MESSAGE.set_token('ENTITY','Attr_Principal');
733: FND_MSG_PUB.add;
734: END IF;
735: x_return_status := FND_API.g_ret_sts_error;
736: RETURN;
737: END IF;
738:
739: END check_uk_items;
744: ,x_return_status OUT NOCOPY VARCHAR2
745: )
746: IS
747: BEGIN
748: x_return_status := FND_API.g_ret_sts_success;
749: --DBMS_OUTPUT.PUT_LINE('p_validation_mode = '||p_validation_mode);
750: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
751:
752: --DBMS_OUTPUT.PUT_LINE('BEfore calling Attr_Principal_id');
751:
752: --DBMS_OUTPUT.PUT_LINE('BEfore calling Attr_Principal_id');
753: --DBMS_OUTPUT.PUT_LINE('p_Attr_Principal_rec.Attr_Principal_id = '||
754: -- TO_CHAR(p_Attr_Principal_rec.Attr_Principal_id));
755: IF p_Attr_Principal_rec.Attr_Principal_id = FND_API.g_miss_num
756: OR p_Attr_Principal_rec.Attr_Principal_id IS NULL THEN
757: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
758: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
759: FND_MESSAGE.set_token('COLUMN','Attr_Principal_id');
758: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
759: FND_MESSAGE.set_token('COLUMN','Attr_Principal_id');
760: FND_MSG_PUB.add;
761: END IF;
762: x_return_status := FND_API.g_ret_sts_error;
763: RETURN;
764: END IF;
765:
766: IF p_Attr_Principal_rec.last_update_date = FND_API.g_miss_date
762: x_return_status := FND_API.g_ret_sts_error;
763: RETURN;
764: END IF;
765:
766: IF p_Attr_Principal_rec.last_update_date = FND_API.g_miss_date
767: OR p_Attr_Principal_rec.last_update_date IS NULL THEN
768: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
769: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
770: FND_MESSAGE.set_token('COLUMN','last_update_date');
769: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
770: FND_MESSAGE.set_token('COLUMN','last_update_date');
771: FND_MSG_PUB.add;
772: END IF;
773: x_return_status := FND_API.g_ret_sts_error;
774: RETURN;
775: END IF;
776:
777: IF p_Attr_Principal_rec.last_updated_by = FND_API.g_miss_num
773: x_return_status := FND_API.g_ret_sts_error;
774: RETURN;
775: END IF;
776:
777: IF p_Attr_Principal_rec.last_updated_by = FND_API.g_miss_num
778: OR p_Attr_Principal_rec.last_updated_by IS NULL THEN
779: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
780: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
781: FND_MESSAGE.set_token('COLUMN','last_updated_by');
780: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
781: FND_MESSAGE.set_token('COLUMN','last_updated_by');
782: FND_MSG_PUB.add;
783: END IF;
784: x_return_status := FND_API.g_ret_sts_error;
785: RETURN;
786: END IF;
787:
788: IF p_Attr_Principal_rec.creation_date = FND_API.g_miss_date
784: x_return_status := FND_API.g_ret_sts_error;
785: RETURN;
786: END IF;
787:
788: IF p_Attr_Principal_rec.creation_date = FND_API.g_miss_date
789: OR p_Attr_Principal_rec.creation_date IS NULL THEN
790: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
791: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
792: FND_MESSAGE.set_token('COLUMN','creation_date');
791: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
792: FND_MESSAGE.set_token('COLUMN','creation_date');
793: FND_MSG_PUB.add;
794: END IF;
795: x_return_status := FND_API.g_ret_sts_error;
796: RETURN;
797: END IF;
798:
799: IF p_Attr_Principal_rec.created_by = FND_API.g_miss_num
795: x_return_status := FND_API.g_ret_sts_error;
796: RETURN;
797: END IF;
798:
799: IF p_Attr_Principal_rec.created_by = FND_API.g_miss_num
800: OR p_Attr_Principal_rec.created_by IS NULL THEN
801: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
802: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
803: FND_MESSAGE.set_token('COLUMN','created_by');
802: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
803: FND_MESSAGE.set_token('COLUMN','created_by');
804: FND_MSG_PUB.add;
805: END IF;
806: x_return_status := FND_API.g_ret_sts_error;
807: RETURN;
808: END IF;
809:
810: IF p_Attr_Principal_rec.object_version_number = FND_API.g_miss_num
806: x_return_status := FND_API.g_ret_sts_error;
807: RETURN;
808: END IF;
809:
810: IF p_Attr_Principal_rec.object_version_number = FND_API.g_miss_num
811: OR p_Attr_Principal_rec.object_version_number IS NULL THEN
812: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
813: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
814: FND_MESSAGE.set_token('COLUMN','object_version_number');
813: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
814: FND_MESSAGE.set_token('COLUMN','object_version_number');
815: FND_MSG_PUB.add;
816: END IF;
817: x_return_status := FND_API.g_ret_sts_error;
818: RETURN;
819: END IF;
820:
821:
819: END IF;
820:
821:
822:
823: IF p_Attr_Principal_rec.attribute_id = FND_API.g_miss_num
824: OR p_Attr_Principal_rec.attribute_id IS NULL THEN
825: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
826: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
827: FND_MESSAGE.set_token('COLUMN','attribute_id');
826: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
827: FND_MESSAGE.set_token('COLUMN','attribute_id');
828: FND_MSG_PUB.add;
829: END IF;
830: x_return_status := FND_API.g_ret_sts_error;
831: RETURN;
832: END IF;
833:
834: IF p_Attr_Principal_rec.jtf_auth_principal_id = FND_API.g_miss_num
830: x_return_status := FND_API.g_ret_sts_error;
831: RETURN;
832: END IF;
833:
834: IF p_Attr_Principal_rec.jtf_auth_principal_id = FND_API.g_miss_num
835: OR p_Attr_Principal_rec.jtf_auth_principal_id IS NULL THEN
836: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
837: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
838: FND_MESSAGE.set_token('COLUMN','jtf_auth_principal_id');
837: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
838: FND_MESSAGE.set_token('COLUMN','jtf_auth_principal_id');
839: FND_MSG_PUB.add;
840: END IF;
841: x_return_status := FND_API.g_ret_sts_error;
842: RETURN;
843: END IF;
844: ELSE
845:
848: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
849: FND_MESSAGE.set_token('COLUMN','Attr_Principal_id');
850: FND_MSG_PUB.add;
851: END IF;
852: x_return_status := FND_API.g_ret_sts_error;
853: RETURN;
854: END IF;
855:
856: IF p_Attr_Principal_rec.last_update_date IS NULL THEN
858: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
859: FND_MESSAGE.set_token('COLUMN','last_update_date');
860: FND_MSG_PUB.add;
861: END IF;
862: x_return_status := FND_API.g_ret_sts_error;
863: RETURN;
864: END IF;
865:
866: IF p_Attr_Principal_rec.last_updated_by IS NULL THEN
868: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
869: FND_MESSAGE.set_token('COLUMN','last_updated_by');
870: FND_MSG_PUB.add;
871: END IF;
872: x_return_status := FND_API.g_ret_sts_error;
873: RETURN;
874: END IF;
875:
876: IF p_Attr_Principal_rec.creation_date IS NULL THEN
878: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
879: FND_MESSAGE.set_token('COLUMN','creation_date');
880: FND_MSG_PUB.add;
881: END IF;
882: x_return_status := FND_API.g_ret_sts_error;
883: RETURN;
884: END IF;
885:
886: IF p_Attr_Principal_rec.created_by IS NULL THEN
888: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
889: FND_MESSAGE.set_token('COLUMN','created_by');
890: FND_MSG_PUB.add;
891: END IF;
892: x_return_status := FND_API.g_ret_sts_error;
893: RETURN;
894: END IF;
895:
896: IF p_Attr_Principal_rec.object_version_number IS NULL THEN
898: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
899: FND_MESSAGE.set_token('COLUMN','object_version_number');
900: FND_MSG_PUB.add;
901: END IF;
902: x_return_status := FND_API.g_ret_sts_error;
903: RETURN;
904: END IF;
905:
906: IF p_Attr_Principal_rec.attribute_id IS NULL THEN
908: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
909: FND_MESSAGE.set_token('COLUMN','attribute_id');
910: FND_MSG_PUB.add;
911: END IF;
912: x_return_status := FND_API.g_ret_sts_error;
913: RETURN;
914: END IF;
915:
916: IF p_Attr_Principal_rec.jtf_auth_principal_id IS NULL THEN
918: FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
919: FND_MESSAGE.set_token('COLUMN','enabled_flag');
920: FND_MSG_PUB.add;
921: END IF;
922: x_return_status := FND_API.g_ret_sts_error;
923: RETURN;
924: END IF;
925: END IF;
926:
931: x_return_status OUT NOCOPY VARCHAR2
932: )
933: IS
934: BEGIN
935: x_return_status := FND_API.g_ret_sts_success;
936:
937: -- Enter custom code here
938:
939: END check_FK_items;
943: x_return_status OUT NOCOPY VARCHAR2
944: )
945: IS
946: BEGIN
947: x_return_status := FND_API.g_ret_sts_success;
948:
949: -- Enter custom code here
950:
951: END check_Lookup_items;
968: ,p_validation_mode => p_validation_mode
969: ,x_return_status => x_return_status
970: );
971:
972: IF x_return_status <> FND_API.g_ret_sts_success THEN
973: RETURN;
974: END IF;
975:
976: -- Check Items Required/NOT NULL API calls
979: p_Attr_Principal_rec => p_Attr_Principal_rec
980: ,p_validation_mode => p_validation_mode
981: ,x_return_status => x_return_status
982: );
983: IF x_return_status <> FND_API.g_ret_sts_success THEN
984: RETURN;
985: END IF;
986: -- Check Items Foreign Keys API calls
987: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : Before check_FK_items' );
988: check_FK_items(
989: p_Attr_Principal_rec => p_Attr_Principal_rec
990: ,x_return_status => x_return_status
991: );
992: IF x_return_status <> FND_API.g_ret_sts_success THEN
993: RETURN;
994: END IF;
995: -- Check Items Lookups
996: --DBMS_OUTPUT.PUT_LINE(l_full_name||' : Before check_Lookup_items' );
997: check_Lookup_items(
998: p_Attr_Principal_rec => p_Attr_Principal_rec
999: ,x_return_status => x_return_status
1000: );
1001: IF x_return_status <> FND_API.g_ret_sts_success THEN
1002: RETURN;
1003: END IF;
1004:
1005: END Check_Attr_Principal_Items;
1025: FETCH c_complete INTO l_Attr_Principal_rec;
1026: CLOSE c_complete;
1027:
1028: -- Attr_Principal_id
1029: IF p_Attr_Principal_rec.Attr_Principal_id = FND_API.g_miss_num THEN
1030: x_complete_rec.Attr_Principal_id := l_Attr_Principal_rec.Attr_Principal_id;
1031: END IF;
1032:
1033: -- last_update_date
1030: x_complete_rec.Attr_Principal_id := l_Attr_Principal_rec.Attr_Principal_id;
1031: END IF;
1032:
1033: -- last_update_date
1034: IF p_Attr_Principal_rec.last_update_date = FND_API.g_miss_date THEN
1035: x_complete_rec.last_update_date := l_Attr_Principal_rec.last_update_date;
1036: END IF;
1037:
1038: -- last_updated_by
1035: x_complete_rec.last_update_date := l_Attr_Principal_rec.last_update_date;
1036: END IF;
1037:
1038: -- last_updated_by
1039: IF p_Attr_Principal_rec.last_updated_by = FND_API.g_miss_num THEN
1040: x_complete_rec.last_updated_by := l_Attr_Principal_rec.last_updated_by;
1041: END IF;
1042:
1043: -- creation_date
1040: x_complete_rec.last_updated_by := l_Attr_Principal_rec.last_updated_by;
1041: END IF;
1042:
1043: -- creation_date
1044: IF p_Attr_Principal_rec.creation_date = FND_API.g_miss_date THEN
1045: x_complete_rec.creation_date := l_Attr_Principal_rec.creation_date;
1046: END IF;
1047:
1048: -- created_by
1045: x_complete_rec.creation_date := l_Attr_Principal_rec.creation_date;
1046: END IF;
1047:
1048: -- created_by
1049: IF p_Attr_Principal_rec.created_by = FND_API.g_miss_num THEN
1050: x_complete_rec.created_by := l_Attr_Principal_rec.created_by;
1051: END IF;
1052:
1053: -- last_update_login
1050: x_complete_rec.created_by := l_Attr_Principal_rec.created_by;
1051: END IF;
1052:
1053: -- last_update_login
1054: IF p_Attr_Principal_rec.last_update_login = FND_API.g_miss_num THEN
1055: x_complete_rec.last_update_login := l_Attr_Principal_rec.last_update_login;
1056: END IF;
1057:
1058:
1056: END IF;
1057:
1058:
1059: -- object_version_number
1060: IF p_Attr_Principal_rec.object_version_number = FND_API.g_miss_num THEN
1061: x_complete_rec.object_version_number := l_Attr_Principal_rec.object_version_number;
1062: END IF;
1063:
1064: -- attribute_id
1061: x_complete_rec.object_version_number := l_Attr_Principal_rec.object_version_number;
1062: END IF;
1063:
1064: -- attribute_id
1065: IF p_Attr_Principal_rec.attribute_id = FND_API.g_miss_num THEN
1066: x_complete_rec.attribute_id := l_Attr_Principal_rec.attribute_id;
1067: END IF;
1068:
1069: -- jtf_auth_principal_id
1066: x_complete_rec.attribute_id := l_Attr_Principal_rec.attribute_id;
1067: END IF;
1068:
1069: -- jtf_auth_principal_id
1070: IF p_Attr_Principal_rec.jtf_auth_principal_id = FND_API.g_miss_num THEN
1071: x_complete_rec.jtf_auth_principal_id := l_Attr_Principal_rec.jtf_auth_principal_id;
1072: END IF;
1073:
1074: -- security_group_id
1071: x_complete_rec.jtf_auth_principal_id := l_Attr_Principal_rec.jtf_auth_principal_id;
1072: END IF;
1073:
1074: -- security_group_id
1075: --IF p_Attr_Principal_rec.security_group_id = FND_API.g_miss_num THEN
1076: -- x_complete_rec.security_group_id := l_Attr_Principal_rec.security_group_id;
1077: --END IF;
1078: -- Note: Developers need to modify the procedure
1079: -- to handle any business specific requirements.
1080: END Complete_Attr_Principal_Rec;
1081:
1082: PROCEDURE Validate_Attr_Principal(
1083: p_api_version_number IN NUMBER
1084: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1085: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1086: ,p_validation_mode IN VARCHAR2 := JTF_PLSQL_API.G_UPDATE
1087: ,p_Attr_Principal_rec IN Attr_Principal_rec_type
1088: ,x_return_status OUT NOCOPY VARCHAR2
1081:
1082: PROCEDURE Validate_Attr_Principal(
1083: p_api_version_number IN NUMBER
1084: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1085: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1086: ,p_validation_mode IN VARCHAR2 := JTF_PLSQL_API.G_UPDATE
1087: ,p_Attr_Principal_rec IN Attr_Principal_rec_type
1088: ,x_return_status OUT NOCOPY VARCHAR2
1089: ,x_msg_count OUT NOCOPY NUMBER
1100: -- Standard Start of API savepoint
1101: SAVEPOINT VALIDATE_Attr_Principal;
1102:
1103: -- Standard call to check for call compatibility.
1104: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1105: p_api_version_number,
1106: l_api_name,
1107: G_PKG_NAME)
1108: THEN
1105: p_api_version_number,
1106: l_api_name,
1107: G_PKG_NAME)
1108: THEN
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111:
1112: -- Initialize message list if p_init_msg_list is set to TRUE.
1113: IF FND_API.to_Boolean( p_init_msg_list )
1109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1110: END IF;
1111:
1112: -- Initialize message list if p_init_msg_list is set to TRUE.
1113: IF FND_API.to_Boolean( p_init_msg_list )
1114: THEN
1115: FND_MSG_PUB.initialize;
1116: END IF;
1117: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1119: p_Attr_Principal_rec => p_Attr_Principal_rec
1120: ,p_validation_mode => p_validation_mode
1121: ,x_return_status => x_return_status
1122: );
1123: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1124: RAISE FND_API.G_EXC_ERROR;
1125: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1126: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1127: END IF;
1120: ,p_validation_mode => p_validation_mode
1121: ,x_return_status => x_return_status
1122: );
1123: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1124: RAISE FND_API.G_EXC_ERROR;
1125: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1126: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1127: END IF;
1128: END IF;
1121: ,x_return_status => x_return_status
1122: );
1123: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1124: RAISE FND_API.G_EXC_ERROR;
1125: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1126: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1127: END IF;
1128: END IF;
1129: Complete_Attr_Principal_Rec(
1122: );
1123: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1124: RAISE FND_API.G_EXC_ERROR;
1125: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1126: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1127: END IF;
1128: END IF;
1129: Complete_Attr_Principal_Rec(
1130: p_Attr_Principal_rec => p_Attr_Principal_rec
1132: );
1133: IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1134: Validate_Attr_Principal_Rec(
1135: p_api_version_number => 1.0
1136: ,p_init_msg_list => FND_API.G_FALSE
1137: ,x_return_status => x_return_status
1138: ,x_msg_count => x_msg_count
1139: ,x_msg_data => x_msg_data
1140: ,p_Attr_Principal_rec => l_Attr_Principal_rec
1140: ,p_Attr_Principal_rec => l_Attr_Principal_rec
1141: ,p_validation_mode => p_validation_mode
1142: );
1143:
1144: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1145: RAISE FND_API.G_EXC_ERROR;
1146: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1148: END IF;
1141: ,p_validation_mode => p_validation_mode
1142: );
1143:
1144: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1145: RAISE FND_API.G_EXC_ERROR;
1146: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1148: END IF;
1149: END IF;
1142: );
1143:
1144: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1145: RAISE FND_API.G_EXC_ERROR;
1146: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1148: END IF;
1149: END IF;
1150:
1143:
1144: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1145: RAISE FND_API.G_EXC_ERROR;
1146: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1148: END IF;
1149: END IF;
1150:
1151:
1154: PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - start');
1155: END IF;
1156:
1157: -- Initialize API return status to SUCCESS
1158: x_return_status := FND_API.G_RET_STS_SUCCESS;
1159:
1160:
1161: -- Debug Message
1162: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
1170: );
1171: EXCEPTION
1172: /*
1173: WHEN PVX_Utility_PVT.resource_locked THEN
1174: x_return_status := FND_API.g_ret_sts_error;
1175: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
1176: */
1177: WHEN FND_API.G_EXC_ERROR THEN
1178: ROLLBACK TO VALIDATE_Attr_Principal;
1173: WHEN PVX_Utility_PVT.resource_locked THEN
1174: x_return_status := FND_API.g_ret_sts_error;
1175: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
1176: */
1177: WHEN FND_API.G_EXC_ERROR THEN
1178: ROLLBACK TO VALIDATE_Attr_Principal;
1179: x_return_status := FND_API.G_RET_STS_ERROR;
1180: -- Standard call to get message count and if count=1, get the message
1181: FND_MSG_PUB.Count_And_Get (
1175: PVX_Utility_PVT.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
1176: */
1177: WHEN FND_API.G_EXC_ERROR THEN
1178: ROLLBACK TO VALIDATE_Attr_Principal;
1179: x_return_status := FND_API.G_RET_STS_ERROR;
1180: -- Standard call to get message count and if count=1, get the message
1181: FND_MSG_PUB.Count_And_Get (
1182: p_encoded => FND_API.G_FALSE,
1183: p_count => x_msg_count,
1178: ROLLBACK TO VALIDATE_Attr_Principal;
1179: x_return_status := FND_API.G_RET_STS_ERROR;
1180: -- Standard call to get message count and if count=1, get the message
1181: FND_MSG_PUB.Count_And_Get (
1182: p_encoded => FND_API.G_FALSE,
1183: p_count => x_msg_count,
1184: p_data => x_msg_data
1185: );
1186:
1183: p_count => x_msg_count,
1184: p_data => x_msg_data
1185: );
1186:
1187: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1188: ROLLBACK TO VALIDATE_Attr_Principal;
1189: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1190: -- Standard call to get message count and if count=1, get the message
1191: FND_MSG_PUB.Count_And_Get (
1185: );
1186:
1187: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1188: ROLLBACK TO VALIDATE_Attr_Principal;
1189: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1190: -- Standard call to get message count and if count=1, get the message
1191: FND_MSG_PUB.Count_And_Get (
1192: p_encoded => FND_API.G_FALSE,
1193: p_count => x_msg_count,
1188: ROLLBACK TO VALIDATE_Attr_Principal;
1189: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1190: -- Standard call to get message count and if count=1, get the message
1191: FND_MSG_PUB.Count_And_Get (
1192: p_encoded => FND_API.G_FALSE,
1193: p_count => x_msg_count,
1194: p_data => x_msg_data
1195: );
1196:
1195: );
1196:
1197: WHEN OTHERS THEN
1198: ROLLBACK TO VALIDATE_Attr_Principal;
1199: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1200: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1201: THEN
1202: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1203: END IF;
1202: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1203: END IF;
1204: -- Standard call to get message count and if count=1, get the message
1205: FND_MSG_PUB.Count_And_Get (
1206: p_encoded => FND_API.G_FALSE,
1207: p_count => x_msg_count,
1208: p_data => x_msg_data
1209: );
1210: End Validate_Attr_Principal;
1211:
1212:
1213: PROCEDURE Validate_Attr_Principal_Rec(
1214: p_api_version_number IN NUMBER
1215: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1216: ,x_return_status OUT NOCOPY VARCHAR2
1217: ,x_msg_count OUT NOCOPY NUMBER
1218: ,x_msg_data OUT NOCOPY VARCHAR2
1219: ,p_Attr_Principal_rec IN Attr_Principal_rec_type
1221: )
1222: IS
1223: BEGIN
1224: -- Initialize message list if p_init_msg_list is set to TRUE.
1225: IF FND_API.to_Boolean( p_init_msg_list )
1226: THEN
1227: FND_MSG_PUB.initialize;
1228: END IF;
1229:
1227: FND_MSG_PUB.initialize;
1228: END IF;
1229:
1230: -- Initialize API return status to SUCCESS
1231: x_return_status := FND_API.G_RET_STS_SUCCESS;
1232:
1233: -- Hint: Validate data
1234: -- If data not valid
1235: -- THEN
1232:
1233: -- Hint: Validate data
1234: -- If data not valid
1235: -- THEN
1236: -- x_return_status := FND_API.G_RET_STS_ERROR;
1237:
1238: -- Debug Message
1239: IF (FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)) THEN
1240: PVX_Utility_PVT.debug_message('Private API: Validate_dm_model_rec');