[Home] [Help]
PACKAGE BODY: APPS.PV_PG_ENRQ_INIT_SOURCES_PVT
Source
1 PACKAGE BODY Pv_Pg_Enrq_Init_Sources_Pvt AS
2 /* $Header: pvxvpeib.pls 120.1 2005/08/26 10:20:52 appldev ship $ */
3 -- ===============================================================
4 -- Start of Comments
5 -- Package name
6 -- PV_Pg_Enrq_Init_Sources_PVT
7 -- Purpose
8 --
9 -- History
10 --
11 -- NOTE
12 --
13 -- This Api is generated with Latest version of
14 -- Rosetta, where g_miss indicates NULL and
15 -- NULL indicates missing value. Rosetta Version 1.55
16 -- End of Comments
17 -- ===============================================================
18
19
20 G_PKG_NAME CONSTANT VARCHAR2(30):= 'PV_Pg_Enrq_Init_Sources_PVT';
21 G_FILE_NAME CONSTANT VARCHAR2(12) := 'pvxvpeib.pls';
22
23 -- G_USER_ID NUMBER := FND_GLOBAL.USER_ID;
24 -- G_LOGIN_ID NUMBER := FND_GLOBAL.CONC_LOGIN_ID;
25 --
26 -- Foreward Procedure Declarations
27 --
28
29 PROCEDURE Default_Enrq_Init_Src_Items (
30 p_enrq_init_sources_rec IN enrq_init_sources_rec_type ,
31 x_enrq_init_sources_rec OUT NOCOPY enrq_init_sources_rec_type
32 ) ;
33
34
35
36 -- Hint: Primary key needs to be returned.
37 -- ==============================================================================
38 -- Start of Comments
39 -- ==============================================================================
40 -- API Name
41 -- Create_Pg_Enrq_Init_Sources
42 -- Type
43 -- Private
44 -- Pre-Req
45 --
46 -- Parameters
47 --
48 -- IN
49 -- p_api_version_number IN NUMBER Required
50 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
51 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
52 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
53 -- p_enrq_init_sources_rec IN enrq_init_sources_rec_type Required
54 --
55 -- OUT
56 -- x_return_status OUT VARCHAR2
57 -- x_msg_count OUT NUMBER
58 -- x_msg_data OUT VARCHAR2
59 -- Version : Current version 1.0
60 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
61 -- and basic operation, developer must manually add parameters and business logic as necessary.
62 --
63 -- History
64 --
65 -- NOTE
66 --
67 -- End of Comments
68 -- ==============================================================================
69
70 PV_DEBUG_HIGH_ON CONSTANT boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
71 PV_DEBUG_LOW_ON CONSTANT boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
72 PV_DEBUG_MEDIUM_ON CONSTANT boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
73
74 PROCEDURE Create_Pg_Enrq_Init_Sources(
75 p_api_version_number IN NUMBER,
76 p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
77 p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
78 p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
79
80 x_return_status OUT NOCOPY VARCHAR2,
81 x_msg_count OUT NOCOPY NUMBER,
82 x_msg_data OUT NOCOPY VARCHAR2,
83
84 p_enrq_init_sources_rec IN enrq_init_sources_rec_type := g_miss_enrq_init_sources_rec,
85 x_initiation_source_id OUT NOCOPY NUMBER
86 )
87
88 IS
89 L_API_NAME CONSTANT VARCHAR2(30) := 'Create_Pg_Enrq_Init_Sources';
90 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
91 l_return_status_full VARCHAR2(1);
92 l_object_version_number NUMBER := 1;
93 l_org_id NUMBER := Fnd_Api.G_MISS_NUM;
94 l_initiation_source_id NUMBER;
95 l_dummy NUMBER;
96 CURSOR c_id IS
97 SELECT pv_pg_enrq_init_sources_s.NEXTVAL
98 FROM dual;
99
100 CURSOR c_id_exists (l_id IN NUMBER) IS
101 SELECT 1
102 FROM PV_PG_ENRQ_INIT_SOURCES
103 WHERE initiation_source_id = l_id;
104 BEGIN
105 -- Standard Start of API savepoint
106 SAVEPOINT create_pg_init_src_pvt;
107
108 -- Standard call to check for call compatibility.
109 IF NOT Fnd_Api.Compatible_API_Call ( l_api_version_number,
110 p_api_version_number,
111 l_api_name,
112 G_PKG_NAME)
113 THEN
114 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
115 END IF;
116
117
118 -- Initialize message list if p_init_msg_list is set to TRUE.
119 IF Fnd_Api.to_Boolean( p_init_msg_list )
120 THEN
121 Fnd_Msg_Pub.initialize;
122 END IF;
123
124
125
126 -- Debug Message
127 IF (PV_DEBUG_HIGH_ON) THEN
128
129 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'start');
130 END IF;
131
132
133
134 -- Initialize API return status to SUCCESS
135 x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
136
137 -- =========================================================================
138 -- Validate Environment
139 -- =========================================================================
140
141 IF Fnd_Global.USER_ID IS NULL
142 THEN
143 Pvx_Utility_Pvt.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
144 RAISE Fnd_Api.G_EXC_ERROR;
145 END IF;
146
147
148
149 IF ( P_validation_level >= Fnd_Api.G_VALID_LEVEL_FULL)
150 THEN
151 -- Debug message
152 IF (PV_DEBUG_HIGH_ON) THEN
153
154 Pvx_Utility_Pvt.debug_message('Private API: Validate_Pg_Init_Src');
155 END IF;
156
157 -- Invoke validation procedures
158 Validate_Pg_Init_Src(
159 p_api_version_number => 1.0,
160 p_init_msg_list => Fnd_Api.G_FALSE,
161 p_validation_level => p_validation_level,
162 p_validation_mode => Jtf_Plsql_Api.g_create,
163 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
164 x_return_status => x_return_status,
165 x_msg_count => x_msg_count,
166 x_msg_data => x_msg_data);
167 END IF;
168
169 IF x_return_status<>Fnd_Api.G_RET_STS_SUCCESS THEN
170 RAISE Fnd_Api.G_EXC_ERROR;
171 END IF;
172
173 -- Local variable initialization
174
175 IF p_enrq_init_sources_rec.initiation_source_id IS NULL OR p_enrq_init_sources_rec.initiation_source_id = Fnd_Api.g_miss_num THEN
176 LOOP
177 l_dummy := NULL;
178 OPEN c_id;
179 FETCH c_id INTO l_initiation_source_id;
180 CLOSE c_id;
181
182 OPEN c_id_exists(l_initiation_source_id);
183 FETCH c_id_exists INTO l_dummy;
184 CLOSE c_id_exists;
185 EXIT WHEN l_dummy IS NULL;
186 END LOOP;
187 ELSE
188 l_initiation_source_id := p_enrq_init_sources_rec.initiation_source_id;
189 END IF;
190
191 -- Debug Message
192 IF (PV_DEBUG_HIGH_ON) THEN
193
194 Pvx_Utility_Pvt.debug_message( 'Private API: Calling create table handler');
195 END IF;
196
197 -- Invoke table handler(Pv_Pg_Enrq_Init_Sources_Pkg.Insert_Row)
198 Pv_Pg_Enrq_Init_Sources_Pkg.Insert_Row(
199 px_initiation_source_id => l_initiation_source_id,
200 px_object_version_number => l_object_version_number,
201 p_enrl_request_id => p_enrq_init_sources_rec.enrl_request_id,
202 p_prev_membership_id => p_enrq_init_sources_rec.prev_membership_id,
203 p_enrl_change_rule_id => p_enrq_init_sources_rec.enrl_change_rule_id,
204 p_created_by => Fnd_Global.USER_ID,
205 p_creation_date => SYSDATE,
206 p_last_updated_by => Fnd_Global.USER_ID,
207 p_last_update_date => SYSDATE,
208 p_last_update_login => Fnd_Global.conc_login_id
209 );
210
211 x_initiation_source_id := l_initiation_source_id;
212 IF x_return_status <> Fnd_Api.G_RET_STS_SUCCESS THEN
213 RAISE Fnd_Api.G_EXC_ERROR;
214 END IF;
215 --
216 -- End of API body
217 --
218
219 -- Standard check for p_commit
220 IF Fnd_Api.to_Boolean( p_commit )
221 THEN
222 COMMIT WORK;
223 END IF;
224
225
226 -- Debug Message
227 IF (PV_DEBUG_HIGH_ON) THEN
228
229 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'end');
230 END IF;
231
232
233 -- Standard call to get message count and if count is 1, get message info.
234 Fnd_Msg_Pub.Count_And_Get
235 (p_count => x_msg_count,
236 p_data => x_msg_data
237 );
238 EXCEPTION
239
240 WHEN Pvx_Utility_Pvt.resource_locked THEN
241 x_return_status := Fnd_Api.g_ret_sts_error;
242 Pvx_Utility_Pvt.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
243
244 WHEN Fnd_Api.G_EXC_ERROR THEN
245 ROLLBACK TO CREATE_Pg_Init_Src_PVT;
246 x_return_status := Fnd_Api.G_RET_STS_ERROR;
247 -- Standard call to get message count and if count=1, get the message
248 Fnd_Msg_Pub.Count_And_Get (
249 p_encoded => Fnd_Api.G_FALSE,
250 p_count => x_msg_count,
251 p_data => x_msg_data
252 );
253
254 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
255 ROLLBACK TO CREATE_Pg_Init_Src_PVT;
256 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
257 -- Standard call to get message count and if count=1, get the message
258 Fnd_Msg_Pub.Count_And_Get (
259 p_encoded => Fnd_Api.G_FALSE,
260 p_count => x_msg_count,
261 p_data => x_msg_data
262 );
263
264 WHEN OTHERS THEN
265 ROLLBACK TO CREATE_Pg_Init_Src_PVT;
266 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
267 IF Fnd_Msg_Pub.Check_Msg_Level ( Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
268 THEN
269 Fnd_Msg_Pub.Add_Exc_Msg( G_PKG_NAME,l_api_name);
270 END IF;
271 -- Standard call to get message count and if count=1, get the message
272 Fnd_Msg_Pub.Count_And_Get (
273 p_encoded => Fnd_Api.G_FALSE,
274 p_count => x_msg_count,
275 p_data => x_msg_data
276 );
277 END Create_Pg_Enrq_Init_Sources;
278
279
280 -- ==============================================================================
281 -- Start of Comments
282 -- ==============================================================================
283 -- API Name
284 -- Update_Pg_Enrq_Init_Sources
285 -- Type
286 -- Private
287 -- Pre-Req
288 --
289 -- Parameters
290 --
291 -- IN
292 -- p_api_version_number IN NUMBER Required
293 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
294 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
295 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
296 -- p_enrq_init_sources_rec IN enrq_init_sources_rec_type Required
297 --
298 -- OUT
299 -- x_return_status OUT VARCHAR2
300 -- x_msg_count OUT NUMBER
301 -- x_msg_data OUT VARCHAR2
302 -- Version : Current version 1.0
303 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
304 -- and basic operation, developer must manually add parameters and business logic as necessary.
305 --
306 -- History
307 --
308 -- NOTE
309 --
310 -- End of Comments
311 -- ==============================================================================
312
313 PROCEDURE Update_Pg_Enrq_Init_Sources(
314 p_api_version_number IN NUMBER,
315 p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
316 p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
317 p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
318
319 x_return_status OUT NOCOPY VARCHAR2,
320 x_msg_count OUT NOCOPY NUMBER,
321 x_msg_data OUT NOCOPY VARCHAR2,
322
323 p_enrq_init_sources_rec IN enrq_init_sources_rec_type
324 )
325
326 IS
327
328
329 CURSOR c_get_pg_enrq_init_sources(initiation_source_id NUMBER) IS
330 SELECT *
331 FROM PV_PG_ENRQ_INIT_SOURCES
332 WHERE initiation_source_id = p_enrq_init_sources_rec.initiation_source_id;
333 -- Hint: Developer need to provide Where clause
334
335
336 L_API_NAME CONSTANT VARCHAR2(30) := 'Update_Pg_Enrq_Init_Sources';
337 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
338 -- Local Variables
339 l_object_version_number NUMBER;
340 l_initiation_source_id NUMBER;
341 l_ref_enrq_init_sources_rec c_get_Pg_Enrq_Init_Sources%ROWTYPE ;
342 l_tar_enrq_init_sources_rec enrq_init_sources_rec_type := P_enrq_init_sources_rec;
343 l_rowid ROWID;
344
345 BEGIN
346 -- Standard Start of API savepoint
347 SAVEPOINT update_pg_init_src_pvt;
348
349 -- Standard call to check for call compatibility.
350 IF NOT Fnd_Api.Compatible_API_Call ( l_api_version_number,
351 p_api_version_number,
352 l_api_name,
353 G_PKG_NAME)
354 THEN
355 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
356 END IF;
357
358
359 -- Initialize message list if p_init_msg_list is set to TRUE.
360 IF Fnd_Api.to_Boolean( p_init_msg_list )
361 THEN
362 Fnd_Msg_Pub.initialize;
363 END IF;
364
365
366
367 -- Debug Message
368 IF (PV_DEBUG_HIGH_ON) THEN
369
370 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'start');
371 END IF;
372
373
374
375 -- Initialize API return status to SUCCESS
376 x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
377
378 -- Debug Message
379 IF (PV_DEBUG_HIGH_ON) THEN
380
381 Pvx_Utility_Pvt.debug_message('Private API: - Open Cursor to Select');
382 END IF;
383
384 OPEN c_get_Pg_Enrq_Init_Sources( l_tar_enrq_init_sources_rec.initiation_source_id);
385
386 FETCH c_get_Pg_Enrq_Init_Sources INTO l_ref_enrq_init_sources_rec ;
387
388 IF ( c_get_Pg_Enrq_Init_Sources%NOTFOUND) THEN
389 Pvx_Utility_Pvt.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
390 p_token_name => 'INFO',
391 p_token_value => 'Pg_Enrq_Init_Sources') ;
392 RAISE Fnd_Api.G_EXC_ERROR;
393 END IF;
394 -- Debug Message
395 IF (PV_DEBUG_HIGH_ON) THEN
396
397 Pvx_Utility_Pvt.debug_message('Private API: - Close Cursor');
398 END IF;
399 CLOSE c_get_Pg_Enrq_Init_Sources;
400
401
402 IF (l_tar_enrq_init_sources_rec.object_version_number IS NULL OR
403 l_tar_enrq_init_sources_rec.object_version_number = Fnd_Api.G_MISS_NUM ) THEN
404 Pvx_Utility_Pvt.Error_Message(p_message_name => 'API_VERSION_MISSING',
405 p_token_name => 'COLUMN',
406 p_token_value => 'Last_Update_Date') ;
407 RAISE Fnd_Api.G_EXC_ERROR;
408 END IF;
409 -- Check Whether record has been changed by someone else
410 IF (l_tar_enrq_init_sources_rec.object_version_number <> l_ref_enrq_init_sources_rec.object_version_number) THEN
411 Pvx_Utility_Pvt.Error_Message(p_message_name => 'API_RECORD_CHANGED',
412 p_token_name => 'INFO',
413 p_token_value => 'Pg_Enrq_Init_Sources') ;
414 RAISE Fnd_Api.G_EXC_ERROR;
415 END IF;
416
417
418 IF ( P_validation_level >= Fnd_Api.G_VALID_LEVEL_FULL)
419 THEN
420 -- Debug message
421 IF (PV_DEBUG_HIGH_ON) THEN
422
423 Pvx_Utility_Pvt.debug_message('Private API: Validate_Pg_Init_Src');
424 END IF;
425
426 -- Invoke validation procedures
427 Validate_Pg_Init_Src(
428 p_api_version_number => 1.0,
429 p_init_msg_list => Fnd_Api.G_FALSE,
430 p_validation_level => p_validation_level,
431 p_validation_mode => Jtf_Plsql_Api.g_update,
432 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
433 x_return_status => x_return_status,
434 x_msg_count => x_msg_count,
435 x_msg_data => x_msg_data);
436 END IF;
437
438 IF x_return_status<>Fnd_Api.G_RET_STS_SUCCESS THEN
439 RAISE Fnd_Api.G_EXC_ERROR;
440 END IF;
441
442
443 -- Debug Message
444 IF (PV_DEBUG_HIGH_ON) THEN
445
446 Pvx_Utility_Pvt.debug_message('Private API: Calling update table handler');
447 END IF;
448
449 -- Invoke table handler(Pv_Pg_Enrq_Init_Sources_Pkg.Update_Row)
450 Pv_Pg_Enrq_Init_Sources_Pkg.Update_Row(
451 p_initiation_source_id => p_enrq_init_sources_rec.initiation_source_id,
452 p_object_version_number => p_enrq_init_sources_rec.object_version_number,
453 p_enrl_request_id => p_enrq_init_sources_rec.enrl_request_id,
454 p_prev_membership_id => p_enrq_init_sources_rec.prev_membership_id,
455 p_enrl_change_rule_id => p_enrq_init_sources_rec.enrl_change_rule_id,
456 p_last_updated_by => Fnd_Global.USER_ID,
457 p_last_update_date => SYSDATE,
458 p_last_update_login => Fnd_Global.conc_login_id
459 );
460 --
461 -- End of API body.
462 --
463
464 -- Standard check for p_commit
465 IF Fnd_Api.to_Boolean( p_commit )
466 THEN
467 COMMIT WORK;
468 END IF;
469
470
471 -- Debug Message
472 IF (PV_DEBUG_HIGH_ON) THEN
473
474 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'end');
475 END IF;
476
477
478 -- Standard call to get message count and if count is 1, get message info.
479 Fnd_Msg_Pub.Count_And_Get
480 (p_count => x_msg_count,
481 p_data => x_msg_data
482 );
483 EXCEPTION
484
485 WHEN Pvx_Utility_Pvt.resource_locked THEN
486 x_return_status := Fnd_Api.g_ret_sts_error;
487 Pvx_Utility_Pvt.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
488
489 WHEN Fnd_Api.G_EXC_ERROR THEN
490 ROLLBACK TO UPDATE_Pg_Init_Src_PVT;
491 x_return_status := Fnd_Api.G_RET_STS_ERROR;
492 -- Standard call to get message count and if count=1, get the message
493 Fnd_Msg_Pub.Count_And_Get (
494 p_encoded => Fnd_Api.G_FALSE,
495 p_count => x_msg_count,
496 p_data => x_msg_data
497 );
498
499 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
500 ROLLBACK TO UPDATE_Pg_Init_Src_PVT;
501 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
502 -- Standard call to get message count and if count=1, get the message
503 Fnd_Msg_Pub.Count_And_Get (
504 p_encoded => Fnd_Api.G_FALSE,
505 p_count => x_msg_count,
506 p_data => x_msg_data
507 );
508
509 WHEN OTHERS THEN
510 ROLLBACK TO UPDATE_Pg_Init_Src_PVT;
511 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
512 IF Fnd_Msg_Pub.Check_Msg_Level ( Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
513 THEN
514 Fnd_Msg_Pub.Add_Exc_Msg( G_PKG_NAME,l_api_name);
515 END IF;
516 -- Standard call to get message count and if count=1, get the message
517 Fnd_Msg_Pub.Count_And_Get (
518 p_encoded => Fnd_Api.G_FALSE,
519 p_count => x_msg_count,
520 p_data => x_msg_data
521 );
522 END Update_Pg_Enrq_Init_Sources;
523
524
525 -- ==============================================================================
526 -- Start of Comments
527 -- ==============================================================================
528 -- API Name
529 -- Delete_Pg_Enrq_Init_Sources
530 -- Type
531 -- Private
532 -- Pre-Req
533 --
534 -- Parameters
535 --
536 -- IN
537 -- p_api_version_number IN NUMBER Required
538 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
539 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
540 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
541 -- p_initiation_source_id IN NUMBER
542 -- p_object_version_number IN NUMBER Optional Default = NULL
543 --
544 -- OUT
545 -- x_return_status OUT VARCHAR2
546 -- x_msg_count OUT NUMBER
547 -- x_msg_data OUT VARCHAR2
548 -- Version : Current version 1.0
549 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
550 -- and basic operation, developer must manually add parameters and business logic as necessary.
551 --
552 -- History
553 --
554 -- NOTE
555 --
556 -- End of Comments
557 -- ==============================================================================
558
559 PROCEDURE Delete_Pg_Enrq_Init_Sources(
560 p_api_version_number IN NUMBER,
561 p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
562 p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
563 p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
564 x_return_status OUT NOCOPY VARCHAR2,
565 x_msg_count OUT NOCOPY NUMBER,
566 x_msg_data OUT NOCOPY VARCHAR2,
567 p_initiation_source_id IN NUMBER,
568 p_object_version_number IN NUMBER
569 )
570
571 IS
572 L_API_NAME CONSTANT VARCHAR2(30) := 'Delete_Pg_Enrq_Init_Sources';
573 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
574 l_object_version_number NUMBER;
575
576 BEGIN
577 -- Standard Start of API savepoint
578 SAVEPOINT delete_pg_init_src_pvt;
579
580 -- Standard call to check for call compatibility.
581 IF NOT Fnd_Api.Compatible_API_Call ( l_api_version_number,
582 p_api_version_number,
583 l_api_name,
584 G_PKG_NAME)
585 THEN
586 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
587 END IF;
588
589
590 -- Initialize message list if p_init_msg_list is set to TRUE.
591 IF Fnd_Api.to_Boolean( p_init_msg_list )
592 THEN
593 Fnd_Msg_Pub.initialize;
594 END IF;
595
596
597
598 -- Debug Message
599 IF (PV_DEBUG_HIGH_ON) THEN
600
601 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'start');
602 END IF;
603
604
605
606 -- Initialize API return status to SUCCESS
607 x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
608
609 --
610 -- Api body
611 --
612 -- Debug Message
613 IF (PV_DEBUG_HIGH_ON) THEN
614
615 Pvx_Utility_Pvt.debug_message( 'Private API: Calling delete table handler');
616 END IF;
617
618 -- Invoke table handler(Pv_Pg_Enrq_Init_Sources_Pkg.Delete_Row)
619 Pv_Pg_Enrq_Init_Sources_Pkg.Delete_Row(
620 p_initiation_source_id => p_initiation_source_id,
621 p_object_version_number => p_object_version_number );
622 --
623 -- End of API body
624 --
625
626 -- Standard check for p_commit
627 IF Fnd_Api.to_Boolean( p_commit )
628 THEN
629 COMMIT WORK;
630 END IF;
631
632
633 -- Debug Message
634 IF (PV_DEBUG_HIGH_ON) THEN
635
636 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'end');
637 END IF;
638
639
640 -- Standard call to get message count and if count is 1, get message info.
641 Fnd_Msg_Pub.Count_And_Get
642 (p_count => x_msg_count,
643 p_data => x_msg_data
644 );
645 EXCEPTION
646
647 WHEN Pvx_Utility_Pvt.resource_locked THEN
648 x_return_status := Fnd_Api.g_ret_sts_error;
649 Pvx_Utility_Pvt.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
650
651 WHEN Fnd_Api.G_EXC_ERROR THEN
652 ROLLBACK TO DELETE_Pg_Init_Src_PVT;
653 x_return_status := Fnd_Api.G_RET_STS_ERROR;
654 -- Standard call to get message count and if count=1, get the message
655 Fnd_Msg_Pub.Count_And_Get (
656 p_encoded => Fnd_Api.G_FALSE,
657 p_count => x_msg_count,
658 p_data => x_msg_data
659 );
660
661 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
662 ROLLBACK TO DELETE_Pg_Init_Src_PVT;
663 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
664 -- Standard call to get message count and if count=1, get the message
665 Fnd_Msg_Pub.Count_And_Get (
666 p_encoded => Fnd_Api.G_FALSE,
667 p_count => x_msg_count,
668 p_data => x_msg_data
669 );
670
671 WHEN OTHERS THEN
672 ROLLBACK TO DELETE_Pg_Init_Src_PVT;
673 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
674 IF Fnd_Msg_Pub.Check_Msg_Level ( Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
675 THEN
676 Fnd_Msg_Pub.Add_Exc_Msg( G_PKG_NAME,l_api_name);
677 END IF;
678 -- Standard call to get message count and if count=1, get the message
679 Fnd_Msg_Pub.Count_And_Get (
680 p_encoded => Fnd_Api.G_FALSE,
681 p_count => x_msg_count,
682 p_data => x_msg_data
683 );
684 END Delete_Pg_Enrq_Init_Sources;
685
686
687
688 -- Hint: Primary key needs to be returned.
689 -- ==============================================================================
690 -- Start of Comments
691 -- ==============================================================================
692 -- API Name
693 -- Lock_Pg_Enrq_Init_Sources
694 -- Type
695 -- Private
696 -- Pre-Req
697 --
698 -- Parameters
699 --
700 -- IN
701 -- p_api_version_number IN NUMBER Required
702 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
703 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
704 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
705 -- p_enrq_init_sources_rec IN enrq_init_sources_rec_type Required
706 --
707 -- OUT
708 -- x_return_status OUT VARCHAR2
709 -- x_msg_count OUT NUMBER
710 -- x_msg_data OUT VARCHAR2
711 -- Version : Current version 1.0
712 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
713 -- and basic operation, developer must manually add parameters and business logic as necessary.
714 --
715 -- History
716 --
717 -- NOTE
718 --
719 -- End of Comments
720 -- ==============================================================================
721
722 PROCEDURE Lock_Pg_Enrq_Init_Sources(
723 p_api_version_number IN NUMBER,
724 p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
725
726 x_return_status OUT NOCOPY VARCHAR2,
727 x_msg_count OUT NOCOPY NUMBER,
728 x_msg_data OUT NOCOPY VARCHAR2,
729
730 p_initiation_source_id IN NUMBER,
731 p_object_version IN NUMBER
732 )
733
734 IS
735 L_API_NAME CONSTANT VARCHAR2(30) := 'Lock_Pg_Enrq_Init_Sources';
736 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
737 L_FULL_NAME CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
738 l_initiation_source_id NUMBER;
739
740 BEGIN
741
742 -- Debug Message
743 IF (PV_DEBUG_HIGH_ON) THEN
744
745 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'start');
746 END IF;
747
748
749 -- Initialize message list if p_init_msg_list is set to TRUE.
750 IF Fnd_Api.to_Boolean( p_init_msg_list )
751 THEN
752 Fnd_Msg_Pub.initialize;
753 END IF;
754
755
756
757 -- Standard call to check for call compatibility.
758 IF NOT Fnd_Api.Compatible_API_Call ( l_api_version_number,
759 p_api_version_number,
760 l_api_name,
761 G_PKG_NAME)
762 THEN
763 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
764 END IF;
765
766
767
768 -- Initialize API return status to SUCCESS
769 x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
770
771
772 ------------------------ lock -------------------------
773 Pv_Pg_Enrq_Init_Sources_Pkg.Lock_Row(l_initiation_source_id,p_object_version);
774
775
776 -------------------- finish --------------------------
777 Fnd_Msg_Pub.count_and_get(
778 p_encoded => Fnd_Api.g_false,
779 p_count => x_msg_count,
780 p_data => x_msg_data);
781 IF (PV_DEBUG_HIGH_ON) THEN
782
783 Pvx_Utility_Pvt.debug_message(l_full_name ||': end');
784 END IF;
785 EXCEPTION
786
787 WHEN Pvx_Utility_Pvt.resource_locked THEN
788 x_return_status := Fnd_Api.g_ret_sts_error;
789 Pvx_Utility_Pvt.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
790
791 WHEN Fnd_Api.G_EXC_ERROR THEN
792 ROLLBACK TO LOCK_Pg_Enrq_Init_Sources_PVT;
793 x_return_status := Fnd_Api.G_RET_STS_ERROR;
794 -- Standard call to get message count and if count=1, get the message
795 Fnd_Msg_Pub.Count_And_Get (
796 p_encoded => Fnd_Api.G_FALSE,
797 p_count => x_msg_count,
798 p_data => x_msg_data
799 );
800
801 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
802 ROLLBACK TO LOCK_Pg_Enrq_Init_Sources_PVT;
803 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
804 -- Standard call to get message count and if count=1, get the message
805 Fnd_Msg_Pub.Count_And_Get (
806 p_encoded => Fnd_Api.G_FALSE,
807 p_count => x_msg_count,
808 p_data => x_msg_data
809 );
810
811 WHEN OTHERS THEN
812 ROLLBACK TO LOCK_Pg_Enrq_Init_Sources_PVT;
813 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
814 IF Fnd_Msg_Pub.Check_Msg_Level ( Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
815 THEN
816 Fnd_Msg_Pub.Add_Exc_Msg( G_PKG_NAME,l_api_name);
817 END IF;
818 -- Standard call to get message count and if count=1, get the message
819 Fnd_Msg_Pub.Count_And_Get (
820 p_encoded => Fnd_Api.G_FALSE,
821 p_count => x_msg_count,
822 p_data => x_msg_data
823 );
824 END Lock_Pg_Enrq_Init_Sources;
825
826
827
828
829 PROCEDURE check_Init_Src_Uk_Items(
830 p_enrq_init_sources_rec IN enrq_init_sources_rec_type,
831 p_validation_mode IN VARCHAR2 := Jtf_Plsql_Api.g_create,
832 x_return_status OUT NOCOPY VARCHAR2)
833 IS
834 l_valid_flag VARCHAR2(1);
835
836 BEGIN
837 x_return_status := Fnd_Api.g_ret_sts_success;
838 IF p_validation_mode = Jtf_Plsql_Api.g_create
839 AND p_enrq_init_sources_rec.initiation_source_id IS NOT NULL
840 THEN
841 l_valid_flag := Pvx_Utility_Pvt.check_uniqueness(
842 'pv_pg_enrq_init_sources',
843 'initiation_source_id = ''' || p_enrq_init_sources_rec.initiation_source_id ||''''
844 );
845 END IF;
846
847 IF l_valid_flag = Fnd_Api.g_false THEN
848 Pvx_Utility_Pvt.Error_Message(p_message_name => 'PV_initiation_source_id_DUPLICATE');
849 x_return_status := Fnd_Api.g_ret_sts_error;
850 END IF;
851
852 END check_Init_Src_Uk_Items;
853
854
855
856 PROCEDURE check_Init_Src_Req_Items(
857 p_enrq_init_sources_rec IN enrq_init_sources_rec_type,
858 p_validation_mode IN VARCHAR2 := Jtf_Plsql_Api.g_create,
859 x_return_status OUT NOCOPY VARCHAR2
860 )
861 IS
862 BEGIN
863 x_return_status := Fnd_Api.g_ret_sts_success;
864
865 IF p_validation_mode = Jtf_Plsql_Api.g_create THEN
866
867 /*
868 IF p_enrq_init_sources_rec.initiation_source_id = FND_API.G_MISS_NUM OR p_enrq_init_sources_rec.initiation_source_id IS NULL THEN
869 PVX_UTILITY_PVT.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'INITIATION_SOURCE_ID' );
870 x_return_status := FND_API.g_ret_sts_error;
871 END IF;
872
873
874 IF p_enrq_init_sources_rec.object_version_number = FND_API.G_MISS_NUM OR p_enrq_init_sources_rec.object_version_number IS NULL THEN
875 PVX_UTILITY_PVT.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'OBJECT_VERSION_NUMBER' );
876 x_return_status := FND_API.g_ret_sts_error;
877 END IF;
878 */
879
880 IF p_enrq_init_sources_rec.enrl_request_id = Fnd_Api.G_MISS_NUM OR p_enrq_init_sources_rec.enrl_request_id IS NULL THEN
881 Pvx_Utility_Pvt.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'ENRL_REQUEST_ID' );
882 x_return_status := Fnd_Api.g_ret_sts_error;
883 END IF;
884
885
886 IF p_enrq_init_sources_rec.prev_membership_id = Fnd_Api.G_MISS_NUM OR p_enrq_init_sources_rec.prev_membership_id IS NULL THEN
887 Pvx_Utility_Pvt.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'PREV_MEMBERSHIP_ID' );
888 x_return_status := Fnd_Api.g_ret_sts_error;
889 END IF;
890
891
892 ELSE
893
894
895 IF p_enrq_init_sources_rec.initiation_source_id = Fnd_Api.G_MISS_NUM THEN
896 Pvx_Utility_Pvt.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'INITIATION_SOURCE_ID' );
897 x_return_status := Fnd_Api.g_ret_sts_error;
898 END IF;
899
900
901 IF p_enrq_init_sources_rec.object_version_number = Fnd_Api.G_MISS_NUM THEN
902 Pvx_Utility_Pvt.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'OBJECT_VERSION_NUMBER' );
903 x_return_status := Fnd_Api.g_ret_sts_error;
904 END IF;
905
906
907 IF p_enrq_init_sources_rec.enrl_request_id = Fnd_Api.G_MISS_NUM THEN
908 Pvx_Utility_Pvt.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'ENRL_REQUEST_ID' );
909 x_return_status := Fnd_Api.g_ret_sts_error;
910 END IF;
911
912
913 IF p_enrq_init_sources_rec.prev_membership_id = Fnd_Api.G_MISS_NUM THEN
914 Pvx_Utility_Pvt.Error_Message('AMS_API_MISSING_FIELD', 'MISS_FIELD', 'PREV_MEMBERSHIP_ID' );
915 x_return_status := Fnd_Api.g_ret_sts_error;
916 END IF;
917 END IF;
918
919 END check_Init_Src_Req_Items;
920
921
922
923 PROCEDURE check_Init_Src_Fk_Items(
924 p_enrq_init_sources_rec IN enrq_init_sources_rec_type,
925 x_return_status OUT NOCOPY VARCHAR2
926 )
927 IS
928 BEGIN
929 x_return_status := Fnd_Api.g_ret_sts_success;
930
931 -- Enter custom code here
932
933 END check_Init_Src_Fk_Items;
934
935
936
937 PROCEDURE check_Init_Src_Lookup_Items(
938 p_enrq_init_sources_rec IN enrq_init_sources_rec_type,
939 x_return_status OUT NOCOPY VARCHAR2
940 )
941 IS
942 BEGIN
943 x_return_status := Fnd_Api.g_ret_sts_success;
944
945 -- Enter custom code here
946
947 END check_Init_Src_Lookup_Items;
948
949
950
951 PROCEDURE check_Init_Src_Items (
952 P_enrq_init_sources_rec IN enrq_init_sources_rec_type,
953 p_validation_mode IN VARCHAR2,
954 x_return_status OUT NOCOPY VARCHAR2
955 )
956 IS
957 l_return_status VARCHAR2(1);
958 BEGIN
959
960 l_return_status := Fnd_Api.g_ret_sts_success;
961 -- Check Items Uniqueness API calls
962
963 check_Init_Src_Uk_Items(
964 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
965 p_validation_mode => p_validation_mode,
966 x_return_status => x_return_status);
967 IF x_return_status <> Fnd_Api.g_ret_sts_success THEN
968 l_return_status := Fnd_Api.g_ret_sts_error;
969 END IF;
970
971 -- Check Items Required/NOT NULL API calls
972
973 check_Init_Src_req_items(
974 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
975 p_validation_mode => p_validation_mode,
976 x_return_status => x_return_status);
977 IF x_return_status <> Fnd_Api.g_ret_sts_success THEN
978 l_return_status := Fnd_Api.g_ret_sts_error;
979 END IF;
980 -- Check Items Foreign Keys API calls
981
982 check_Init_Src_FK_items(
983 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
984 x_return_status => x_return_status);
985 IF x_return_status <> Fnd_Api.g_ret_sts_success THEN
986 l_return_status := Fnd_Api.g_ret_sts_error;
987 END IF;
988 -- Check Items Lookups
989
990 check_Init_Src_Lookup_items(
991 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
992 x_return_status => x_return_status);
993 IF x_return_status <> Fnd_Api.g_ret_sts_success THEN
994 l_return_status := Fnd_Api.g_ret_sts_error;
995 END IF;
996
997 x_return_status := l_return_status;
998
999 END check_Init_Src_Items;
1000
1001
1002
1003
1004
1005 PROCEDURE Complete_Enrq_Init_Sources_Rec (
1006 p_enrq_init_sources_rec IN enrq_init_sources_rec_type,
1007 x_complete_rec OUT NOCOPY enrq_init_sources_rec_type)
1008 IS
1009 l_return_status VARCHAR2(1);
1010
1011 CURSOR c_complete IS
1012 SELECT *
1013 FROM pv_pg_enrq_init_sources
1014 WHERE initiation_source_id = p_enrq_init_sources_rec.initiation_source_id;
1015 l_enrq_init_sources_rec c_complete%ROWTYPE;
1016 BEGIN
1017 x_complete_rec := p_enrq_init_sources_rec;
1018
1019
1020 OPEN c_complete;
1021 FETCH c_complete INTO l_enrq_init_sources_rec;
1022 CLOSE c_complete;
1023
1024 -- initiation_source_id
1025 IF p_enrq_init_sources_rec.initiation_source_id IS NULL THEN
1026 x_complete_rec.initiation_source_id := l_enrq_init_sources_rec.initiation_source_id;
1027 END IF;
1028
1029 -- object_version_number
1030 IF p_enrq_init_sources_rec.object_version_number IS NULL THEN
1031 x_complete_rec.object_version_number := l_enrq_init_sources_rec.object_version_number;
1032 END IF;
1033
1034 -- enrl_request_id
1035 IF p_enrq_init_sources_rec.enrl_request_id IS NULL THEN
1036 x_complete_rec.enrl_request_id := l_enrq_init_sources_rec.enrl_request_id;
1037 END IF;
1038
1039 -- prev_membership_id
1040 IF p_enrq_init_sources_rec.prev_membership_id IS NULL THEN
1041 x_complete_rec.prev_membership_id := l_enrq_init_sources_rec.prev_membership_id;
1042 END IF;
1043
1044 -- enrl_change_rule_id
1045 IF p_enrq_init_sources_rec.enrl_change_rule_id IS NULL THEN
1046 x_complete_rec.enrl_change_rule_id := l_enrq_init_sources_rec.enrl_change_rule_id;
1047 END IF;
1048
1049 -- created_by
1050 IF p_enrq_init_sources_rec.created_by IS NULL THEN
1051 x_complete_rec.created_by := l_enrq_init_sources_rec.created_by;
1052 END IF;
1053
1054 -- creation_date
1055 IF p_enrq_init_sources_rec.creation_date IS NULL THEN
1056 x_complete_rec.creation_date := l_enrq_init_sources_rec.creation_date;
1057 END IF;
1058
1059 -- last_updated_by
1060 IF p_enrq_init_sources_rec.last_updated_by IS NULL THEN
1061 x_complete_rec.last_updated_by := l_enrq_init_sources_rec.last_updated_by;
1062 END IF;
1063
1064 -- last_update_date
1065 IF p_enrq_init_sources_rec.last_update_date IS NULL THEN
1066 x_complete_rec.last_update_date := l_enrq_init_sources_rec.last_update_date;
1067 END IF;
1068
1069 -- last_update_login
1070 IF p_enrq_init_sources_rec.last_update_login IS NULL THEN
1071 x_complete_rec.last_update_login := l_enrq_init_sources_rec.last_update_login;
1072 END IF;
1073 -- Note: Developers need to modify the procedure
1074 -- to handle any business specific requirements.
1075 END Complete_Enrq_Init_Sources_Rec;
1076
1077
1078
1079
1080 PROCEDURE Default_Enrq_Init_Src_Items ( p_enrq_init_sources_rec IN enrq_init_sources_rec_type ,
1081 x_enrq_init_sources_rec OUT NOCOPY enrq_init_sources_rec_type )
1082 IS
1083 l_enrq_init_sources_rec enrq_init_sources_rec_type := p_enrq_init_sources_rec;
1084 BEGIN
1085 -- Developers should put their code to default the record type
1086 -- e.g. IF p_campaign_rec.status_code IS NULL
1087 -- OR p_campaign_rec.status_code = FND_API.G_MISS_CHAR THEN
1088 -- l_campaign_rec.status_code := 'NEW' ;
1089 -- END IF ;
1090 --
1091 NULL ;
1092 END;
1093
1094
1095
1096
1097 PROCEDURE Validate_Pg_Init_Src(
1098 p_api_version_number IN NUMBER,
1099 p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1100 p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1101 p_enrq_init_sources_rec IN enrq_init_sources_rec_type,
1102 p_validation_mode IN VARCHAR2,
1103 x_return_status OUT NOCOPY VARCHAR2,
1104 x_msg_count OUT NOCOPY NUMBER,
1105 x_msg_data OUT NOCOPY VARCHAR2
1106 )
1107 IS
1108 L_API_NAME CONSTANT VARCHAR2(30) := 'Validate_Pg_Init_Src';
1109 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
1110 l_object_version_number NUMBER;
1111 l_enrq_init_sources_rec enrq_init_sources_rec_type;
1112 l_enrq_init_sources_rec_out enrq_init_sources_rec_type;
1113
1114 BEGIN
1115 -- Standard Start of API savepoint
1116 SAVEPOINT Validate_Pg_Init_Src_;
1117
1118 -- Standard call to check for call compatibility.
1119 IF NOT Fnd_Api.Compatible_API_Call ( l_api_version_number,
1120 p_api_version_number,
1121 l_api_name,
1122 G_PKG_NAME)
1123 THEN
1124 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
1125 END IF;
1126
1127
1128 -- Initialize message list if p_init_msg_list is set to TRUE.
1129 IF Fnd_Api.to_Boolean( p_init_msg_list )
1130 THEN
1131 Fnd_Msg_Pub.initialize;
1132 END IF;
1133
1134
1135 IF p_validation_level >= Jtf_Plsql_Api.g_valid_level_item THEN
1136 Check_init_src_Items(
1137 p_enrq_init_sources_rec => p_enrq_init_sources_rec,
1138 p_validation_mode => p_validation_mode,
1139 x_return_status => x_return_status
1140 );
1141
1142 IF x_return_status = Fnd_Api.G_RET_STS_ERROR THEN
1143 RAISE Fnd_Api.G_EXC_ERROR;
1144 ELSIF x_return_status = Fnd_Api.G_RET_STS_UNEXP_ERROR THEN
1145 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
1146 END IF;
1147 END IF;
1148
1149 IF p_validation_mode = Jtf_Plsql_Api.g_create THEN
1150 Default_Enrq_Init_Src_Items (p_enrq_init_sources_rec => p_enrq_init_sources_rec ,
1151 x_enrq_init_sources_rec => l_enrq_init_sources_rec) ;
1152 END IF ;
1153
1154
1155 Complete_enrq_init_sources_Rec(
1156 p_enrq_init_sources_rec => l_enrq_init_sources_rec,
1157 x_complete_rec => l_enrq_init_sources_rec_out
1158 );
1159
1160 l_enrq_init_sources_rec := l_enrq_init_sources_rec_out;
1161
1162 IF p_validation_level >= Jtf_Plsql_Api.g_valid_level_item THEN
1163 Validate_Init_Src_Rec(
1164 p_api_version_number => 1.0,
1165 p_init_msg_list => Fnd_Api.G_FALSE,
1166 x_return_status => x_return_status,
1167 x_msg_count => x_msg_count,
1168 x_msg_data => x_msg_data,
1169 p_enrq_init_sources_rec => l_enrq_init_sources_rec);
1170
1171 IF x_return_status = Fnd_Api.G_RET_STS_ERROR THEN
1172 RAISE Fnd_Api.G_EXC_ERROR;
1173 ELSIF x_return_status = Fnd_Api.G_RET_STS_UNEXP_ERROR THEN
1174 RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
1175 END IF;
1176 END IF;
1177
1178
1179 -- Debug Message
1180 IF (PV_DEBUG_HIGH_ON) THEN
1181
1182 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'start');
1183 END IF;
1184
1185
1186
1187 -- Initialize API return status to SUCCESS
1188 x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
1189
1190
1191 -- Debug Message
1192 IF (PV_DEBUG_HIGH_ON) THEN
1193
1194 Pvx_Utility_Pvt.debug_message('Private API: ' || l_api_name || 'end');
1195 END IF;
1196
1197
1198 -- Standard call to get message count and if count is 1, get message info.
1199 Fnd_Msg_Pub.Count_And_Get
1200 (p_count => x_msg_count,
1201 p_data => x_msg_data
1202 );
1203 EXCEPTION
1204
1205 WHEN Pvx_Utility_Pvt.resource_locked THEN
1206 x_return_status := Fnd_Api.g_ret_sts_error;
1207 Pvx_Utility_Pvt.Error_Message(p_message_name => 'PV_API_RESOURCE_LOCKED');
1208
1209 WHEN Fnd_Api.G_EXC_ERROR THEN
1210 ROLLBACK TO Validate_Pg_Init_Src_;
1211 x_return_status := Fnd_Api.G_RET_STS_ERROR;
1212 -- Standard call to get message count and if count=1, get the message
1213 Fnd_Msg_Pub.Count_And_Get (
1214 p_encoded => Fnd_Api.G_FALSE,
1215 p_count => x_msg_count,
1216 p_data => x_msg_data
1217 );
1218
1219 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
1220 ROLLBACK TO Validate_Pg_Init_Src_;
1221 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1222 -- Standard call to get message count and if count=1, get the message
1223 Fnd_Msg_Pub.Count_And_Get (
1224 p_encoded => Fnd_Api.G_FALSE,
1225 p_count => x_msg_count,
1226 p_data => x_msg_data
1227 );
1228
1229 WHEN OTHERS THEN
1230 ROLLBACK TO Validate_Pg_Init_Src_;
1231 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1232 IF Fnd_Msg_Pub.Check_Msg_Level ( Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
1233 THEN
1234 Fnd_Msg_Pub.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1235 END IF;
1236 -- Standard call to get message count and if count=1, get the message
1237 Fnd_Msg_Pub.Count_And_Get (
1238 p_encoded => Fnd_Api.G_FALSE,
1239 p_count => x_msg_count,
1240 p_data => x_msg_data
1241 );
1242 END Validate_Pg_Init_Src;
1243
1244
1245 PROCEDURE Validate_Init_Src_Rec (
1246 p_api_version_number IN NUMBER,
1247 p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1248 x_return_status OUT NOCOPY VARCHAR2,
1249 x_msg_count OUT NOCOPY NUMBER,
1250 x_msg_data OUT NOCOPY VARCHAR2,
1251 p_enrq_init_sources_rec IN enrq_init_sources_rec_type
1252 )
1253 IS
1254 BEGIN
1255 -- Initialize message list if p_init_msg_list is set to TRUE.
1256 IF Fnd_Api.to_Boolean( p_init_msg_list )
1257 THEN
1258 Fnd_Msg_Pub.initialize;
1259 END IF;
1260
1261
1262
1263 -- Initialize API return status to SUCCESS
1264 x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
1265
1266 -- Hint: Validate data
1267 -- If data not valid
1268 -- THEN
1269 -- x_return_status := FND_API.G_RET_STS_ERROR;
1270
1271 -- Debug Message
1272 IF (PV_DEBUG_HIGH_ON) THEN
1273
1274 Pvx_Utility_Pvt.debug_message('Private API: Validate_dm_model_rec');
1275 END IF;
1276 -- Standard call to get message count and if count is 1, get message info.
1277 Fnd_Msg_Pub.Count_And_Get
1278 (p_count => x_msg_count,
1279 p_data => x_msg_data
1280 );
1281 END Validate_Init_Src_Rec;
1282
1283 END Pv_Pg_Enrq_Init_Sources_Pvt;