[Home] [Help]
PACKAGE BODY: APPS.IGC_CC_SEC_GROUP_USERS_PKG
Source
1 PACKAGE BODY IGC_CC_SEC_GROUP_USERS_PKG as
2 /* $Header: IGCCSCUB.pls 120.6.12000000.1 2007/08/20 12:14:45 mbremkum ship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30):= 'IGC_CC_SEC_GROUP_USERS_PKG';
5
6 PROCEDURE Insert_Row( p_api_version IN NUMBER,
7 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
8 p_commit IN VARCHAR2 := FND_API.G_FALSE,
9 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
10 p_return_status OUT NOCOPY VARCHAR2,
11 p_msg_count OUT NOCOPY NUMBER,
12 p_msg_data OUT NOCOPY VARCHAR2,
13
14 P_ROWID IN OUT NOCOPY VARCHAR2,
15 P_CC_GROUP_ID NUMBER,
16 P_USER_ID NUMBER,
17 P_CONTEXT VARCHAR2,
18 P_ATTRIBUTE1 VARCHAR2,
19 P_ATTRIBUTE2 VARCHAR2,
20 P_ATTRIBUTE3 VARCHAR2,
21 P_ATTRIBUTE4 VARCHAR2,
22 P_ATTRIBUTE5 VARCHAR2,
23 P_ATTRIBUTE6 VARCHAR2,
24 P_ATTRIBUTE7 VARCHAR2,
25 P_ATTRIBUTE8 VARCHAR2,
26 P_ATTRIBUTE9 VARCHAR2,
27 P_ATTRIBUTE10 VARCHAR2,
28 P_ATTRIBUTE11 VARCHAR2,
29 P_ATTRIBUTE12 VARCHAR2,
30 P_ATTRIBUTE13 VARCHAR2,
31 P_ATTRIBUTE14 VARCHAR2,
32 P_ATTRIBUTE15 VARCHAR2,
33 P_LAST_UPDATE_DATE DATE,
34 P_LAST_UPDATED_BY NUMBER,
35 P_CREATION_DATE DATE,
36 P_CREATED_BY NUMBER,
37 P_LAST_UPDATE_LOGIN NUMBER
38 ) IS
39
40 l_api_name CONSTANT VARCHAR2(30) := 'Insert_Row';
41 l_api_version CONSTANT NUMBER := 1.0;
42
43
44 CURSOR C IS SELECT ROWID FROM IGC_CC_GROUP_USERS
45 WHERE CC_GROUP_ID = P_CC_GROUP_ID
46 and USER_ID = P_USER_ID ;
47 BEGIN
48
49 SAVEPOINT Insert_Row_Pvt ;
50
51 IF NOT FND_API.Compatible_API_Call ( l_api_version,
52 p_api_version,
53 l_api_name,
54 G_PKG_NAME )
55 THEN
56 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
57 END IF;
58
59
60 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
61 FND_MSG_PUB.initialize ;
62 END IF;
63
64 p_return_status := FND_API.G_RET_STS_SUCCESS ;
65
66 INSERT INTO IGC_CC_GROUP_USERS(
67 CC_GROUP_ID,
68 USER_ID,
69 CONTEXT,
70 ATTRIBUTE1,
71 ATTRIBUTE2,
72 ATTRIBUTE3,
73 ATTRIBUTE4,
74 ATTRIBUTE5,
75 ATTRIBUTE6,
76 ATTRIBUTE7,
77 ATTRIBUTE8,
78 ATTRIBUTE9,
79 ATTRIBUTE10,
80 ATTRIBUTE11,
81 ATTRIBUTE12,
82 ATTRIBUTE13,
83 ATTRIBUTE14,
84 ATTRIBUTE15,
85 LAST_UPDATE_DATE,
86 LAST_UPDATED_BY,
87 CREATION_DATE,
88 CREATED_BY,
89 LAST_UPDATE_LOGIN) VALUES(
90 P_CC_GROUP_ID,
91 P_USER_ID,
92 P_CONTEXT,
93 P_ATTRIBUTE1,
94 P_ATTRIBUTE2,
95 P_ATTRIBUTE3,
96 P_ATTRIBUTE4,
97 P_ATTRIBUTE5,
98 P_ATTRIBUTE6,
99 P_ATTRIBUTE7,
100 P_ATTRIBUTE8,
101 P_ATTRIBUTE9,
102 P_ATTRIBUTE10,
103 P_ATTRIBUTE11,
104 P_ATTRIBUTE12,
105 P_ATTRIBUTE13,
106 P_ATTRIBUTE14,
107 P_ATTRIBUTE15,
108 P_LAST_UPDATE_DATE,
109 P_LAST_UPDATED_BY,
110 P_CREATION_DATE,
111 P_CREATED_BY,
112 P_LAST_UPDATE_LOGIN
113 );
114 OPEN C;
115 FETCH C INTO P_ROWID;
116 IF (C%NOTFOUND) THEN
117 CLOSE C;
118 Raise NO_DATA_FOUND;
119 END IF;
120 CLOSE C;
121
122
123 IF FND_API.To_Boolean ( p_commit ) THEN
124 COMMIT WORK;
125 END iF;
126
127 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
128 p_data => p_msg_data );
129
130 EXCEPTION
131
132 WHEN FND_API.G_EXC_ERROR THEN
133
134 ROLLBACK TO Insert_Row_Pvt ;
135 p_return_status := FND_API.G_RET_STS_ERROR;
136 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
137 p_data => p_msg_data );
138
139 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
140
141 ROLLBACK TO Insert_Row_Pvt ;
142 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
143 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
144 p_data => p_msg_data );
145
146 WHEN OTHERS THEN
147
148 ROLLBACK TO Insert_Row_Pvt ;
149 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
150
151 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
152 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
153 l_api_name);
154 END if;
155
156 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
157 p_data => p_msg_data );
158
159 END Insert_Row;
160
161 PROCEDURE Update_Row(
162 p_api_version IN NUMBER,
163 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
164 p_commit IN VARCHAR2 := FND_API.G_FALSE,
165 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
166 p_return_status OUT NOCOPY VARCHAR2,
167 p_msg_count OUT NOCOPY NUMBER,
168 p_msg_data OUT NOCOPY VARCHAR2,
169
170
171 P_ROWID VARCHAR2,
172 P_CC_GROUP_ID NUMBER,
173 P_USER_ID NUMBER,
174 P_CONTEXT VARCHAR2,
175 P_ATTRIBUTE1 VARCHAR2,
176 P_ATTRIBUTE2 VARCHAR2,
177 P_ATTRIBUTE3 VARCHAR2,
178 P_ATTRIBUTE4 VARCHAR2,
179 P_ATTRIBUTE5 VARCHAR2,
180 P_ATTRIBUTE6 VARCHAR2,
181 P_ATTRIBUTE7 VARCHAR2,
182 P_ATTRIBUTE8 VARCHAR2,
183 P_ATTRIBUTE9 VARCHAR2,
184 P_ATTRIBUTE10 VARCHAR2,
185 P_ATTRIBUTE11 VARCHAR2,
186 P_ATTRIBUTE12 VARCHAR2,
187 P_ATTRIBUTE13 VARCHAR2,
188 P_ATTRIBUTE14 VARCHAR2,
189 P_ATTRIBUTE15 VARCHAR2,
190 P_LAST_UPDATE_DATE DATE,
191 P_LAST_UPDATED_BY NUMBER,
192 P_LAST_UPDATE_LOGIN NUMBER
193 ) IS
194
195 l_api_name CONSTANT VARCHAR2(30) := 'Update_Row';
196 l_api_version CONSTANT NUMBER := 1.0;
197
198 BEGIN
199
200 SAVEPOINT Update_Row_Pvt ;
201
202 IF NOT FND_API.Compatible_API_Call ( l_api_version,
203 p_api_version,
204 l_api_name,
205 G_PKG_NAME )
206 THEN
207 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
208 END IF;
209
210
211 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
212 FND_MSG_PUB.initialize ;
213 END IF;
214
215 p_return_status := FND_API.G_RET_STS_SUCCESS ;
216
217 UPDATE IGC_CC_GROUP_USERS
218 SET
219 CC_GROUP_ID = P_CC_GROUP_ID,
220 USER_ID = P_USER_ID,
221 CONTEXT = P_CONTEXT,
222 ATTRIBUTE1 = P_ATTRIBUTE1,
223 ATTRIBUTE2 = P_ATTRIBUTE2,
224 ATTRIBUTE3 = P_ATTRIBUTE3,
225 ATTRIBUTE4 = P_ATTRIBUTE4,
226 ATTRIBUTE5 = P_ATTRIBUTE5,
227 ATTRIBUTE6 = P_ATTRIBUTE6,
228 ATTRIBUTE7 = P_ATTRIBUTE7,
229 ATTRIBUTE8 = P_ATTRIBUTE8,
230 ATTRIBUTE9 = P_ATTRIBUTE9,
231 ATTRIBUTE10 = P_ATTRIBUTE10,
232 ATTRIBUTE11 = P_ATTRIBUTE11,
233 ATTRIBUTE12 = P_ATTRIBUTE12,
234 ATTRIBUTE13 = P_ATTRIBUTE13,
235 ATTRIBUTE14 = P_ATTRIBUTE14,
236 ATTRIBUTE15 = P_ATTRIBUTE15,
237 LAST_UPDATE_DATE = P_LAST_UPDATE_DATE,
238 LAST_UPDATED_BY = P_LAST_UPDATED_BY,
239 LAST_UPDATE_LOGIN = P_LAST_UPDATE_LOGIN
240
241 WHERE ROWID = P_ROWID;
242
243 IF (SQL%NOTFOUND) THEN
244 RAISE NO_DATA_FOUND;
245 END IF;
246
247 IF FND_API.To_Boolean ( p_commit ) THEN
248 COMMIT WORK;
249 END iF;
250
251 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
252 p_data => p_msg_data );
253
254 EXCEPTION
255
256 WHEN FND_API.G_EXC_ERROR THEN
257
258 ROLLBACK TO Update_Row_Pvt ;
259 p_return_status := FND_API.G_RET_STS_ERROR;
260 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
261 p_data => p_msg_data );
262
263 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
264
265 ROLLBACK TO Update_Row_Pvt ;
266 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
267 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
268 p_data => p_msg_data );
269
270 WHEN OTHERS THEN
271
272 ROLLBACK TO Update_Row_Pvt ;
273 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
274
275 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
276 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
277 l_api_name);
278 END if;
279
280 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
281 p_data => p_msg_data );
282
283 END Update_Row;
284
285
286 PROCEDURE Lock_Row(
287 p_api_version IN NUMBER,
288 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
289 p_commit IN VARCHAR2 := FND_API.G_FALSE,
290 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
291 p_return_status OUT NOCOPY VARCHAR2,
292 p_msg_count OUT NOCOPY NUMBER,
293 p_msg_data OUT NOCOPY VARCHAR2,
294
295 P_ROWID VARCHAR2,
296 P_CC_GROUP_ID NUMBER,
297 P_USER_ID NUMBER,
298 P_CONTEXT VARCHAR2,
299 P_ATTRIBUTE1 VARCHAR2,
300 P_ATTRIBUTE2 VARCHAR2,
301 P_ATTRIBUTE3 VARCHAR2,
302 P_ATTRIBUTE4 VARCHAR2,
303 P_ATTRIBUTE5 VARCHAR2,
304 P_ATTRIBUTE6 VARCHAR2,
305 P_ATTRIBUTE7 VARCHAR2,
306 P_ATTRIBUTE8 VARCHAR2,
307 P_ATTRIBUTE9 VARCHAR2,
308 P_ATTRIBUTE10 VARCHAR2,
309 P_ATTRIBUTE11 VARCHAR2,
310 P_ATTRIBUTE12 VARCHAR2,
311 P_ATTRIBUTE13 VARCHAR2,
312 P_ATTRIBUTE14 VARCHAR2,
313 P_ATTRIBUTE15 VARCHAR2,
314 p_row_locked OUT NOCOPY VARCHAR2
315 ) IS
316
317 l_api_name CONSTANT VARCHAR2(30) := 'Lock_Row';
318 l_api_version CONSTANT NUMBER := 1.0;
319
320 CURSOR C IS
321 SELECT cc_group_id,
322 user_id,
323 context,
324 attribute1,
325 attribute2,
326 attribute3,
327 attribute4,
328 attribute5,
329 attribute6,
330 attribute7,
331 attribute8,
332 attribute9,
333 attribute10,
334 attribute11,
335 attribute12,
336 attribute13,
337 attribute14,
338 attribute15
339 from IGC_CC_GROUP_USERS
340 where rowid = P_ROWID
341 for UPDATE OF CC_GROUP_ID NOWAIT;
342 Recinfo C%ROWTYPE;
343
344 BEGIN
345
346 SAVEPOINT Lock_Row_Pvt ;
347
348 IF NOT FND_API.Compatible_API_Call ( l_api_version,
349 p_api_version,
350 l_api_name,
351 G_PKG_NAME )
352 THEN
353 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
354 END IF;
355
356
357 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
358 FND_MSG_PUB.initialize ;
359 END IF;
360
361 p_return_status := FND_API.G_RET_STS_SUCCESS ;
362 p_row_locked := FND_API.G_TRUE ;
363
364 OPEN C;
365 FETCH C INTO Recinfo;
366 IF (C%NOTFOUND) THEN
367 CLOSE C;
368 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
369 APP_EXCEPTION.Raise_Exception;
370 END IF;
371 CLOSE C;
372 IF (
373 (recinfo.CC_GROUP_ID = P_CC_GROUP_ID)
374 AND (recinfo.USER_ID = P_USER_ID)
375
376 AND ((recinfo.CONTEXT = P_CONTEXT)
377 OR ((recinfo.CONTEXT IS NULL)
378 AND (P_CONTEXT IS NULL)))
379 AND ((recinfo.ATTRIBUTE1 = P_ATTRIBUTE1)
380 OR ((recinfo.ATTRIBUTE1 IS NULL)
381 AND (P_ATTRIBUTE1 IS NULL)))
382 AND ((recinfo.ATTRIBUTE2 = P_ATTRIBUTE2)
383 OR ((recinfo.ATTRIBUTE2 IS NULL)
384 AND (P_ATTRIBUTE2 IS NULL)))
385 AND ((recinfo.ATTRIBUTE3 = P_ATTRIBUTE3)
386 OR ((recinfo.ATTRIBUTE3 IS NULL)
387 AND (P_ATTRIBUTE3 IS NULL)))
388 AND ((recinfo.ATTRIBUTE4 = P_ATTRIBUTE4)
389 OR ((recinfo.ATTRIBUTE4 IS NULL)
390 AND (P_ATTRIBUTE4 IS NULL)))
391 AND ((recinfo.ATTRIBUTE5 = P_ATTRIBUTE5)
392 OR ((recinfo.ATTRIBUTE5 IS NULL)
393 AND (P_ATTRIBUTE5 IS NULL)))
394 AND ((recinfo.ATTRIBUTE6 = P_ATTRIBUTE6)
395 OR ((recinfo.ATTRIBUTE6 IS NULL)
396 AND (P_ATTRIBUTE6 IS NULL)))
397 AND ((recinfo.ATTRIBUTE7 = P_ATTRIBUTE7)
398 OR ((recinfo.ATTRIBUTE7 IS NULL)
399 AND (P_ATTRIBUTE7 IS NULL)))
400 AND ((recinfo.ATTRIBUTE8 = P_ATTRIBUTE8)
401 OR ((recinfo.ATTRIBUTE8 IS NULL)
402 AND (P_ATTRIBUTE8 IS NULL)))
403 AND ((recinfo.ATTRIBUTE9 = P_ATTRIBUTE9)
404 OR ((recinfo.ATTRIBUTE9 IS NULL)
405 AND (P_ATTRIBUTE9 IS NULL)))
406 AND ((recinfo.ATTRIBUTE10 = P_ATTRIBUTE10)
407 OR ((recinfo.ATTRIBUTE10 IS NULL)
408 AND (P_ATTRIBUTE10 IS NULL)))
409 AND ((recinfo.ATTRIBUTE11 = P_ATTRIBUTE11)
410 OR ((recinfo.ATTRIBUTE11 IS NULL)
411 AND (P_ATTRIBUTE11 IS NULL)))
412 AND ((recinfo.ATTRIBUTE12 = P_ATTRIBUTE12)
413 OR ((recinfo.ATTRIBUTE12 IS NULL)
414 AND (P_ATTRIBUTE12 IS NULL)))
415 AND ((recinfo.ATTRIBUTE13 = P_ATTRIBUTE13)
416 OR ((recinfo.ATTRIBUTE13 IS NULL)
417 AND (P_ATTRIBUTE13 IS NULL)))
418 AND ((recinfo.ATTRIBUTE14 = P_ATTRIBUTE14)
419 OR ((recinfo.ATTRIBUTE14 IS NULL)
420 AND (P_ATTRIBUTE14 IS NULL)))
421 AND ((recinfo.ATTRIBUTE15 = P_ATTRIBUTE15)
422 OR ((recinfo.ATTRIBUTE15 IS NULL)
423 AND (P_ATTRIBUTE15 IS NULL)))
424 ) THEN
425 RETURN;
426 ELSE
427 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
428 FND_MSG_PUB.Add;
429 RAISE FND_API.G_EXC_ERROR ;
430
431 -- APP_EXCEPTION.RAISE_EXCEPTION;
432 END IF;
433
434 IF FND_API.To_Boolean ( p_commit ) THEN
435 COMMIT WORK;
436 END iF;
437
438 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
439 p_data => p_msg_data );
440
441 EXCEPTION
442
443 WHEN APP_EXCEPTION.RECORD_LOCK_EXCEPTION THEN
444
445 ROLLBACK TO Lock_Row_Pvt ;
446 p_row_locked := FND_API.G_FALSE;
447 p_return_status := FND_API.G_RET_STS_ERROR;
448 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
449 p_data => p_msg_data );
450
451 WHEN FND_API.G_EXC_ERROR THEN
452
453 ROLLBACK TO Lock_Row_Pvt ;
454 p_return_status := FND_API.G_RET_STS_ERROR;
455 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
456 p_data => p_msg_data );
457
458 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
459
460 ROLLBACK TO Lock_Row_Pvt ;
461 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
462 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
463 p_data => p_msg_data );
464
465 WHEN OTHERS THEN
466
467 ROLLBACK TO Lock_Row_Pvt ;
468 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
469
470 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
471 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
472 l_api_name);
473 END if;
474
475 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
476 p_data => p_msg_data );
477
478 END Lock_Row;
479
480
481
482 PROCEDURE Delete_Row(
483 p_api_version IN NUMBER,
484 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
485 p_commit IN VARCHAR2 := FND_API.G_FALSE,
486 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
487 p_return_status OUT NOCOPY VARCHAR2,
488 p_msg_count OUT NOCOPY NUMBER,
489 p_msg_data OUT NOCOPY VARCHAR2,
490
491 P_ROWID VARCHAR2 ) IS
492 l_api_name CONSTANT VARCHAR2(30) := 'Delete_Row';
493 l_api_version CONSTANT NUMBER := 1.0;
494
495 l_return_status VARCHAR2(1) ;
496 l_msg_count NUMBER ;
497 l_msg_data VARCHAR2(2000) ;
498
499 x_cc_group_id NUMBER;
500 x_user_id NUMBER;
501 BEGIN
502
503 SAVEPOINT Delete_Row_Pvt ;
504
505 IF NOT FND_API.Compatible_API_Call ( l_api_version,
506 p_api_version,
507 l_api_name,
508 G_PKG_NAME )
509 THEN
510 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
511 END IF;
512
513
514 IF FND_API.to_Boolean ( p_init_msg_list ) THEN
515 FND_MSG_PUB.initialize ;
516 END IF ;
517
518 p_return_status := FND_API.G_RET_STS_SUCCESS ;
519
520 BEGIN
521 SELECT cc_group_id, user_id
522 INTO x_cc_group_id, x_user_id
523 FROM IGC_CC_GROUP_USERS
524 WHERE rowid = P_rowid;
525
526 EXCEPTION
527 WHEN NO_DATA_FOUND THEN
528 RAISE;
529 END;
530
531
532 /* Delete IGC_CC_GROUP_USERS - Detail Record */
533 DELETE FROM IGC_CC_GROUP_USERS
534 WHERE cc_group_id = x_cc_group_id
535 and user_id = x_user_id;
536
537 IF (SQL%NOTFOUND) THEN
538 RAISE NO_DATA_FOUND;
539 END IF;
540
541 IF FND_API.To_Boolean ( p_commit ) THEN
542 COMMIT WORK;
543 END iF;
544
545 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
546 p_data => p_msg_data );
547
548 EXCEPTION
549
550 WHEN FND_API.G_EXC_ERROR THEN
551
552 ROLLBACK TO Delete_Row_Pvt ;
553 p_return_status := FND_API.G_RET_STS_ERROR;
554 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
555 p_data => p_msg_data );
556
557 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
558
559 ROLLBACK TO Delete_Row_Pvt ;
560 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
561 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
562 p_data => p_msg_data );
563
564 WHEN OTHERS THEN
565
566 ROLLBACK TO Delete_Row_Pvt ;
567 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
568
569 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
570 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
571 l_api_name);
572 END if;
573
574 FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
575 p_data => p_msg_data );
576
577 END DELETE_ROW;
578
579 END IGC_CC_SEC_GROUP_USERS_PKG;