[Home] [Help]
PACKAGE BODY: APPS.PSB_ELEMENT_POS_SET_GROUPS_PVT
Source
1 PACKAGE BODY PSB_ELEMENT_POS_SET_GROUPS_PVT AS
2 /* $Header: PSBVPSGB.pls 120.2 2005/07/13 11:29:13 shtripat ship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30):= 'PSB_ELEMENT_POS_SET_GROUPS_PVT';
5
6 /* ----------------------------------------------------------------------- */
7
8 PROCEDURE INSERT_ROW
9 ( p_api_version IN NUMBER,
10 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
11 p_commit IN VARCHAR2 := FND_API.G_FALSE,
12 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
13 p_return_status OUT NOCOPY VARCHAR2,
14 p_msg_count OUT NOCOPY NUMBER,
15 p_msg_data OUT NOCOPY VARCHAR2,
16 --
17 P_POSITION_SET_GROUP_ID in NUMBER,
18 P_PAY_ELEMENT_ID in NUMBER,
19 P_NAME in VARCHAR2,
20 P_LAST_UPDATE_DATE in DATE,
21 P_LAST_UPDATED_BY in NUMBER,
22 P_LAST_UPDATE_LOGIN in NUMBER,
23 P_CREATED_BY in NUMBER,
24 P_CREATION_DATE in DATE
25 ) IS
26
27 l_api_name CONSTANT VARCHAR2(30) := 'INSERT_ROW';
28 l_api_version CONSTANT NUMBER := 1.0;
29 l_row_id varchar2(40);
30 --
31 cursor c1 is
32 select ROWID from psb_element_pos_set_groups
33 where position_set_group_id = p_position_set_group_id
34 and pay_element_id = p_pay_element_id;
35
36 BEGIN
37
38 -- Standard Start of API savepoint
39
40 SAVEPOINT INSERT_ROW_PVT;
41
42 -- Standard call to check for call compatibility.
43
44 if not FND_API.Compatible_API_Call (l_api_version,
45 p_api_version,
46 l_api_name,
47 G_PKG_NAME)
48 then
49 raise FND_API.G_EXC_UNEXPECTED_ERROR;
50 end if;
51
52 -- Initialize message list if p_init_msg_list is set to TRUE.
53
54 if FND_API.to_Boolean (p_init_msg_list) then
55 FND_MSG_PUB.initialize;
56 end if;
57
58 -- Initialize API return status to success
59
60 p_return_status := FND_API.G_RET_STS_SUCCESS;
61
62
63 -- API body
64 INSERT INTO psb_element_pos_set_groups
65 (
66 POSITION_SET_GROUP_ID ,
67 PAY_ELEMENT_ID ,
68 NAME ,
69 LAST_UPDATE_DATE ,
70 LAST_UPDATED_BY ,
71 LAST_UPDATE_LOGIN ,
72 CREATED_BY ,
73 CREATION_DATE
74 )
75 VALUES
76 (
77 P_POSITION_SET_GROUP_ID ,
78 P_PAY_ELEMENT_ID ,
79 P_NAME ,
80 P_LAST_UPDATE_DATE ,
81 P_LAST_UPDATED_BY ,
82 P_LAST_UPDATE_LOGIN ,
83 P_CREATED_BY ,
84 P_CREATION_DATE
85 );
86
87 open c1;
88 fetch c1 into l_row_id;
89 if (c1%notfound) then
90 close c1;
91 raise no_data_found;
92 end if;
93 -- End of API body.
94
95 -- Standard check of p_commit.
96
97 if FND_API.to_Boolean (p_commit) then
98 commit work;
99 end if;
100
101 -- Standard call to get message count and if count is 1, get message info.
102
103 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
104 p_data => p_msg_data);
105
106 EXCEPTION
107
108 when FND_API.G_EXC_ERROR then
109
110 rollback to INSERT_ROW_PVT;
111
112 p_return_status := FND_API.G_RET_STS_ERROR;
113
114 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
115 p_data => p_msg_data);
116
117
118 when FND_API.G_EXC_UNEXPECTED_ERROR then
119
120 rollback to INSERT_ROW_PVT;
121
122 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
123
124 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
125 p_data => p_msg_data);
126
127
128 when OTHERS then
129
130 rollback to INSERT_ROW_PVT;
131
132 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
133
134 if FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
135
136 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME,
137 l_api_name);
138 end if;
139
140 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
141 p_data => p_msg_data);
142
143 END INSERT_ROW;
144
145 PROCEDURE UPDATE_ROW
146 ( p_api_version IN NUMBER,
147 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
148 p_commit IN VARCHAR2 := FND_API.G_FALSE,
149 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
150 p_return_status OUT NOCOPY VARCHAR2,
151 p_msg_count OUT NOCOPY NUMBER,
152 p_msg_data OUT NOCOPY VARCHAR2,
153 --
154 P_POSITION_SET_GROUP_ID in NUMBER,
155 P_PAY_ELEMENT_ID in NUMBER,
156 P_NAME in VARCHAR2,
157 P_LAST_UPDATE_DATE in DATE,
158 P_LAST_UPDATED_BY in NUMBER,
159 P_LAST_UPDATE_LOGIN in NUMBER
160 ) IS
161
162 l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_ROW';
163 l_api_version CONSTANT NUMBER := 1.0;
164
165 BEGIN
166
167 -- Standard Start of API savepoint
168
169 SAVEPOINT UPDATE_ROW_PVT;
170
171 -- Standard call to check for call compatibility.
172
173 if not FND_API.Compatible_API_Call (l_api_version,
174 p_api_version,
175 l_api_name,
176 G_PKG_NAME)
177 then
178 raise FND_API.G_EXC_UNEXPECTED_ERROR;
179 end if;
180
181 -- Initialize message list if p_init_msg_list is set to TRUE.
182
183 if FND_API.to_Boolean (p_init_msg_list) then
184 FND_MSG_PUB.initialize;
185 end if;
186
187 -- Initialize API return status to success
188
189 p_return_status := FND_API.G_RET_STS_SUCCESS;
190
191 -- API body
192 UPDATE psb_element_pos_set_groups SET
193 NAME = P_NAME ,
194 LAST_UPDATE_DATE = P_LAST_UPDATE_DATE ,
195 LAST_UPDATED_BY = P_LAST_UPDATED_BY ,
196 LAST_UPDATE_LOGIN = P_LAST_UPDATE_LOGIN
197 WHERE position_set_group_id = p_position_set_group_id
198 AND pay_element_id = p_pay_element_id;
199
200 if (SQL%NOTFOUND) then
201 RAISE NO_DATA_FOUND;
202 end if;
203
204 -- End of API body.
205
206 -- Standard check of p_commit.
207
208 if FND_API.to_Boolean (p_commit) then
209 commit work;
210 end if;
211
212 -- Standard call to get message count and if count is 1, get message info.
213
214 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
215 p_data => p_msg_data);
216
217 EXCEPTION
218
219 when FND_API.G_EXC_ERROR then
220
221 rollback to UPDATE_ROW_PVT;
222
223 p_return_status := FND_API.G_RET_STS_ERROR;
224
225 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
226 p_data => p_msg_data);
227
228
229 when FND_API.G_EXC_UNEXPECTED_ERROR then
230
231 rollback to UPDATE_ROW_PVT;
232
233 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
234
235 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
236 p_data => p_msg_data);
237
238
239 when OTHERS then
240
241 rollback to UPDATE_ROW_PVT;
242
243 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
244
245 if FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
246
247 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME,
248 l_api_name);
249 end if;
250
251 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
252 p_data => p_msg_data);
253
254 END UPDATE_ROW;
255
256
257 PROCEDURE DELETE_ROW
258 ( p_api_version IN NUMBER,
259 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
260 p_commit IN VARCHAR2 := FND_API.G_FALSE,
261 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
262 p_return_status OUT NOCOPY VARCHAR2,
263 p_msg_count OUT NOCOPY NUMBER,
264 p_msg_data OUT NOCOPY VARCHAR2,
265 --
266 P_POSITION_SET_GROUP_ID IN NUMBER,
267 P_PAY_ELEMENT_ID IN NUMBER
268 ) IS
269
270 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_ROW';
271 l_api_version CONSTANT NUMBER := 1.0;
272
273 BEGIN
274
275 -- Standard Start of API savepoint
276
277 SAVEPOINT DELETE_ROW_PVT;
278
279 -- Standard call to check for call compatibility.
280
281 if not FND_API.Compatible_API_Call (l_api_version,
282 p_api_version,
283 l_api_name,
284 G_PKG_NAME)
285 then
286 raise FND_API.G_EXC_UNEXPECTED_ERROR;
287 end if;
288
289 -- Initialize message list if p_init_msg_list is set to TRUE.
290
291 if FND_API.to_Boolean (p_init_msg_list) then
292 FND_MSG_PUB.initialize;
293 end if;
294
295 --Deleting detail record from psb_pay_element_distributions and
296 --to maintain the isolated delete
297 --relation between the master and detail
298
299 DELETE FROM psb_pay_element_distributions
300 WHERE position_set_group_id = p_position_set_group_id;
301
302 --Delete the record in the master table
303 DELETE FROM psb_element_pos_set_groups
304 WHERE position_set_group_id = p_position_set_group_id
305 AND pay_element_id = p_pay_element_id;
306
307
308 if (SQL%NOTFOUND) then
309 RAISE NO_DATA_FOUND;
310 end if;
311
312 -- Standard call to get message count and if count is 1, get message info.
313
314 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
315 p_data => p_msg_data);
316
317 -- Standard check of p_commit.
318
319 if FND_API.to_Boolean (p_commit) then
320 commit work;
321 end if;
322
323
324 EXCEPTION
325
326 when FND_API.G_EXC_ERROR then
327
328 rollback to DELETE_ROW_PVT;
329
330 p_return_status := FND_API.G_RET_STS_ERROR;
331
332 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
333 p_data => p_msg_data);
334
335
336 when FND_API.G_EXC_UNEXPECTED_ERROR then
337
338 rollback to DELETE_ROW_PVT;
339
340 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
341
342 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
343 p_data => p_msg_data);
344
345
346 when OTHERS then
347
348 rollback to DELETE_ROW_PVT;
349
350 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
351
352 if FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
353
354 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME,
355 l_api_name);
356 end if;
357
358 FND_MSG_PUB.Count_And_Get (p_count => p_msg_count,
359 p_data => p_msg_data);
360 END DELETE_ROW;
361
362 PROCEDURE LOCK_ROW(
363 p_api_version IN NUMBER,
364 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
365 p_commit IN VARCHAR2 := FND_API.G_FALSE,
366 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
367 p_return_status OUT NOCOPY VARCHAR2,
368 p_msg_count OUT NOCOPY NUMBER,
369 p_msg_data OUT NOCOPY VARCHAR2,
370 --
371 p_row_locked OUT NOCOPY VARCHAR2,
372 --
373 P_POSITION_SET_GROUP_ID in NUMBER,
374 P_PAY_ELEMENT_ID in NUMBER,
375 P_NAME in VARCHAR2
376
377 ) IS
378
379 l_api_name CONSTANT VARCHAR2(30) := 'LOCK_ROW';
380 l_api_version CONSTANT NUMBER := 1.0;
381 --
382 counter number;
383
384 CURSOR C IS SELECT * FROM PSB_ELEMENT_POS_SET_GROUPS
385 WHERE position_set_group_id = p_position_set_group_id
386 AND pay_element_id = p_pay_element_id
387 FOR UPDATE of POSITION_SET_GROUP_Id NOWAIT;
388 Recinfo C%ROWTYPE;
389
390 BEGIN
391 --
392 SAVEPOINT Lock_Row_Pvt ;
393 --
394 IF NOT FND_API.Compatible_API_Call ( l_api_version,
395 p_api_version,
396 l_api_name,
397 G_PKG_NAME )
398 THEN
399 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
400 END IF;
401 --
402
403 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
404 FND_MSG_PUB.initialize ;
405 END IF;
406 --
407 p_return_status := FND_API.G_RET_STS_SUCCESS ;
408 p_row_locked := FND_API.G_TRUE ;
409 --
410 OPEN C;
411 --
412 FETCH C INTO Recinfo;
413 IF (C%NOTFOUND) then
414 CLOSE C;
415 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
416 FND_MSG_PUB.Add;
417 RAISE FND_API.G_EXC_ERROR ;
418 END IF;
419
420 IF
421 (
422 (Recinfo.position_set_group_id = p_position_set_group_id)
423 AND (Recinfo.pay_element_id = p_pay_element_id)
424 AND (Recinfo.name = p_name)
425
426 )
427
428 THEN
429 Null;
430 ELSE
431 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
432 FND_MSG_PUB.Add;
433 RAISE FND_API.G_EXC_ERROR ;
434 END IF;
435
436 --
437 IF FND_API.To_Boolean ( p_commit ) THEN
438 COMMIT WORK;
439 END iF;
440 --
441 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
442 p_data => p_msg_data );
443 --
444 EXCEPTION
445 --
446 WHEN APP_EXCEPTION.RECORD_LOCK_EXCEPTION THEN
447 --
448 ROLLBACK TO Lock_Row_Pvt ;
449 p_row_locked := FND_API.G_FALSE;
450 p_return_status := FND_API.G_RET_STS_ERROR;
451 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
452 p_data => p_msg_data );
453 --
454 WHEN FND_API.G_EXC_ERROR THEN
455 --
456 ROLLBACK TO Lock_Row_Pvt ;
457 p_return_status := FND_API.G_RET_STS_ERROR;
458 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
459 p_data => p_msg_data );
460 --
461 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
462 --
463 ROLLBACK TO Lock_Row_Pvt ;
464 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
465 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
466 p_data => p_msg_data );
467 --
468 WHEN OTHERS THEN
469 --
470 ROLLBACK TO Lock_Row_Pvt ;
471 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
472 --
473 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
474 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
475 l_api_name);
476 END if;
477 --
478 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
479 p_data => p_msg_data );
480 END LOCK_ROW;
481
482
486 +==========================================================================*/
483
484 /*==========================================================================+
485 | PROCEDURE Check_Unique |
487 --
488 -- The position set group name must be unique within an element.
489 --
490 PROCEDURE Check_Unique
491 (
492 p_api_version IN NUMBER,
493 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
494 p_commit IN VARCHAR2 := FND_API.G_FALSE,
495 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
496 p_return_status OUT NOCOPY VARCHAR2,
497 p_msg_count OUT NOCOPY NUMBER,
498 p_msg_data OUT NOCOPY VARCHAR2,
499 --
500 p_position_set_group_id IN NUMBER,
501 P_pay_element_id IN NUMBER,
502 p_name IN VARCHAR2,
503 p_return_value IN OUT NOCOPY VARCHAR2
504 )
505 IS
506 --
507 l_api_name CONSTANT VARCHAR2(30) := 'Check_Unique';
508 l_api_version CONSTANT NUMBER := 1.0;
509 --
510 l_tmp VARCHAR2(1);
511
512 CURSOR c IS
513 SELECT '1'
514 FROM psb_element_pos_set_groups
515 WHERE p_pay_element_id IS NOT NULL
516 AND name = p_name
517 AND pay_element_id = p_pay_element_id
518 AND (
519 p_position_set_group_id IS NULL
520 OR
521 position_set_group_id <> p_position_set_group_id
522 );
523 BEGIN
524 --
525 SAVEPOINT Check_Unique_Pvt ;
526 --
527 IF NOT FND_API.Compatible_API_Call ( l_api_version,
528 p_api_version,
529 l_api_name,
530 G_PKG_NAME )
531 THEN
532 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
533 END IF;
534 --
535
536 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
537 FND_MSG_PUB.initialize ;
538 END IF;
539 --
540 p_return_status := FND_API.G_RET_STS_SUCCESS ;
541 --
542
543 -- Open the cursor.
544 OPEN c;
545 FETCH c INTO l_tmp;
546 CLOSE c;
547
548 --
549 -- p_return_value specifies whether duplicate name exists or not.
550 -- ( 'TRUE' means exists, 'FALSE' means does not exist.)
551 --
552 IF l_tmp IS NULL THEN
553 p_return_value := 'FALSE';
554 ELSE
555 p_return_value := 'TRUE';
556 END IF;
557
558 --
559 IF FND_API.To_Boolean ( p_commit ) THEN
560 COMMIT WORK;
561 END iF;
562 --
563 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
564 p_data => p_msg_data );
565 --
566 EXCEPTION
567 --
568 WHEN FND_API.G_EXC_ERROR THEN
569 --
570 ROLLBACK TO Check_Unique_Pvt ;
571 p_return_status := FND_API.G_RET_STS_ERROR;
572 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
573 p_data => p_msg_data );
574 --
575 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
576 --
577 ROLLBACK TO Check_Unique_Pvt ;
578 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
579 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
580 p_data => p_msg_data );
581 --
582 WHEN OTHERS THEN
583 --
584 ROLLBACK TO Check_Unique_Pvt ;
585 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
586 --
587 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
588 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
589 l_api_name);
590 END if;
591 --
592 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
593 p_data => p_msg_data );
594 --
595 END Check_Unique;
596 /*---------------------------------------------------------------------------*/
597
598
599
600 PROCEDURE Check_References
601 (
602 p_api_version IN NUMBER,
603 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
604 p_commit IN VARCHAR2 := FND_API.G_FALSE,
605 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
606 p_return_status OUT NOCOPY VARCHAR2,
607 p_msg_count OUT NOCOPY NUMBER,
608 p_msg_data OUT NOCOPY VARCHAR2,
609 --
610 P_POSITION_SET_GROUP_ID IN NUMBER,
611 p_Return_Value IN OUT NOCOPY VARCHAR2
612 )
613 IS
614 --
615 l_api_name CONSTANT VARCHAR2(30) := 'Check_References';
616 l_api_version CONSTANT NUMBER := 1.0;
617 --
618 l_tmp VARCHAR2(1);
619
620 CURSOR c IS
621 SELECT '1'
622 FROM psb_set_relations
623 WHERE position_set_group_id = p_position_set_group_id;
624
625 BEGIN
626 --
627 SAVEPOINT Check_References_Pvt ;
628 --
629 IF NOT FND_API.Compatible_API_Call ( l_api_version,
630 p_api_version,
631 l_api_name,
632 G_PKG_NAME )
633 THEN
634 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
635 END IF;
636 --
637
638 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
639 FND_MSG_PUB.initialize ;
640 END IF;
641 --
642 p_return_status := FND_API.G_RET_STS_SUCCESS ;
643 --
644
645 -- Checking the Psb_set_relations table for references.
646 OPEN c;
647 FETCH c INTO l_tmp;
648
649 --
650 -- p_Return_Value tells whether references exist or not.
651 IF (l_tmp IS NULL) THEN
652 p_Return_Value := 'FALSE';
653 ELSE
654 p_Return_Value := 'TRUE';
655 END IF;
656
657 CLOSE c;
658 --
659 IF FND_API.To_Boolean ( p_commit ) THEN
660 COMMIT WORK;
661 END iF;
662 --
663 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
664 p_data => p_msg_data );
665
666 EXCEPTION
667 --
668 WHEN FND_API.G_EXC_ERROR THEN
669 --
670 ROLLBACK TO Check_References_Pvt ;
671 p_return_status := FND_API.G_RET_STS_ERROR;
672 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
673 p_data => p_msg_data );
674 --
675 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
676 --
677 ROLLBACK TO Check_References_Pvt ;
678 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
679 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
680 p_data => p_msg_data );
681 --
682 WHEN OTHERS THEN
683 --
684 ROLLBACK TO Check_References_Pvt ;
685 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
686 --
687 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
688 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
689 l_api_name);
690 END if;
691 --
692 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
693 p_data => p_msg_data );
694 --
695 END Check_References;
696
697
698 END PSB_ELEMENT_POS_SET_GROUPS_PVT;