DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGC_CC_SEC_GROUP_PKG

Source


1 PACKAGE BODY IGC_CC_SEC_GROUP_PKG as
2 /* $Header: IGCCSCGB.pls 120.6.12000000.1 2007/08/20 12:14:38 mbremkum ship $ */
3 
4 G_PKG_NAME CONSTANT VARCHAR2(30):= 'IGC_CC_SEC_GROUP_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_SET_OF_BOOKS_ID          NUMBER,
17                 P_CC_GROUP_NAME            VARCHAR2,
18                 P_CC_GROUP_DESC            VARCHAR2,
19                 P_CONTEXT	           VARCHAR2,
20                 P_ATTRIBUTE1               VARCHAR2,
21                 P_ATTRIBUTE2               VARCHAR2,
22                 P_ATTRIBUTE3               VARCHAR2,
23                 P_ATTRIBUTE4               VARCHAR2,
24                 P_ATTRIBUTE5               VARCHAR2,
25                 P_ATTRIBUTE6               VARCHAR2,
26                 P_ATTRIBUTE7               VARCHAR2,
27                 P_ATTRIBUTE8               VARCHAR2,
28                 P_ATTRIBUTE9               VARCHAR2,
29                 P_ATTRIBUTE10              VARCHAR2,
30                 P_ATTRIBUTE11              VARCHAR2,
31                 P_ATTRIBUTE12              VARCHAR2,
32                 P_ATTRIBUTE13              VARCHAR2,
33                 P_ATTRIBUTE14              VARCHAR2,
34                 P_ATTRIBUTE15              VARCHAR2,
35                 P_LAST_UPDATE_DATE         DATE,
36                 P_LAST_UPDATED_BY          NUMBER,
37                 P_CREATION_DATE   	   DATE,
38                 P_CREATED_BY               NUMBER,
39                 P_LAST_UPDATE_LOGIN        NUMBER
40 	    ) IS
41   l_api_name            CONSTANT VARCHAR2(30)   := 'Insert_Row';
42   l_api_version         CONSTANT NUMBER         :=  1.0;
43 
44 	CURSOR C IS SELECT ROWID FROM IGC_CC_GROUPS
45 		    WHERE CC_GROUP_ID = P_CC_GROUP_ID
46 		    AND SET_OF_BOOKS_ID = P_SET_OF_BOOKS_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 
67 	INSERT INTO IGC_CC_GROUPS(
68 			CC_GROUP_ID,
69 			SET_OF_BOOKS_ID,
70 			CC_GROUP_NAME,
71 			CC_GROUP_DESC,
72 			CONTEXT,
73 			ATTRIBUTE1,
74 			ATTRIBUTE2,
75 			ATTRIBUTE3,
76 			ATTRIBUTE4,
77 			ATTRIBUTE5,
78 			ATTRIBUTE6,
79 			ATTRIBUTE7,
80 			ATTRIBUTE8,
81 			ATTRIBUTE9,
82 			ATTRIBUTE10,
83 			ATTRIBUTE11,
84 			ATTRIBUTE12,
85 			ATTRIBUTE13,
86 			ATTRIBUTE14,
87 			ATTRIBUTE15,
88 			LAST_UPDATE_DATE,
89 			LAST_UPDATED_BY,
90 			CREATION_DATE,
91 			CREATED_BY,
92 			LAST_UPDATE_LOGIN) VALUES(
93 			P_CC_GROUP_ID,
94 			P_SET_OF_BOOKS_ID,
95 			P_CC_GROUP_NAME,
96 			P_CC_GROUP_DESC,
97 			P_CONTEXT,
98 			P_ATTRIBUTE1,
99 			P_ATTRIBUTE2,
100 			P_ATTRIBUTE3,
101 			P_ATTRIBUTE4,
102 			P_ATTRIBUTE5,
103 			P_ATTRIBUTE6,
104 			P_ATTRIBUTE7,
105 			P_ATTRIBUTE8,
106 			P_ATTRIBUTE9,
107 			P_ATTRIBUTE10,
108 			P_ATTRIBUTE11,
109 			P_ATTRIBUTE12,
110 			P_ATTRIBUTE13,
111 			P_ATTRIBUTE14,
112 			P_ATTRIBUTE15,
113 			P_LAST_UPDATE_DATE,
114 			P_LAST_UPDATED_BY,
115 			P_CREATION_DATE,
116 			P_CREATED_BY,
117 			P_LAST_UPDATE_LOGIN
118 			);
119 	OPEN C;
120 	FETCH C INTO P_ROWID;
121 	IF (C%NOTFOUND) THEN
122 	  CLOSE C;
123 	  Raise NO_DATA_FOUND;
124 	END IF;
125 	CLOSE C;
126 
127   IF FND_API.To_Boolean ( p_commit ) THEN
128     COMMIT WORK;
129   END iF;
130 
131   FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
132                               p_data  => p_msg_data );
133 EXCEPTION
134 
135   WHEN FND_API.G_EXC_ERROR THEN
136 
137     ROLLBACK TO Insert_Row_Pvt ;
138     p_return_status := FND_API.G_RET_STS_ERROR;
139     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
140                                 p_data  => p_msg_data );
141 
142   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
143 
144     ROLLBACK TO Insert_Row_Pvt ;
145     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
146     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
147                                 p_data  => p_msg_data );
148 
149   WHEN OTHERS THEN
150 
151     ROLLBACK TO Insert_Row_Pvt ;
152     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
153 
154     IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
155       FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
156                                 l_api_name);
157     END if;
158 
159     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
160                                 p_data  => p_msg_data );
161 
162 
163 END Insert_Row;
164 
165 PROCEDURE Update_Row(  p_api_version        IN       NUMBER,
166   		p_init_msg_list             IN       VARCHAR2 := FND_API.G_FALSE,
167   		p_commit                    IN       VARCHAR2 := FND_API.G_FALSE,
168   		p_validation_level          IN       NUMBER   := FND_API.G_VALID_LEVEL_FULL,
169   		p_return_status             OUT NOCOPY      VARCHAR2,
170   		p_msg_count                 OUT NOCOPY      NUMBER,
171   		p_msg_data                  OUT NOCOPY      VARCHAR2,
172 
173 	        P_ROWID			   VARCHAR2,
174                 P_CC_GROUP_ID              NUMBER,
175                 P_SET_OF_BOOKS_ID          NUMBER,
176                 P_CC_GROUP_NAME            VARCHAR2,
177                 P_CC_GROUP_DESC            VARCHAR2,
178                 P_CONTEXT	           VARCHAR2,
179                 P_ATTRIBUTE1               VARCHAR2,
180                 P_ATTRIBUTE2               VARCHAR2,
181                 P_ATTRIBUTE3               VARCHAR2,
182                 P_ATTRIBUTE4               VARCHAR2,
183                 P_ATTRIBUTE5               VARCHAR2,
184                 P_ATTRIBUTE6               VARCHAR2,
185                 P_ATTRIBUTE7               VARCHAR2,
186                 P_ATTRIBUTE8               VARCHAR2,
187                 P_ATTRIBUTE9               VARCHAR2,
188                 P_ATTRIBUTE10              VARCHAR2,
189                 P_ATTRIBUTE11              VARCHAR2,
190                 P_ATTRIBUTE12              VARCHAR2,
191                 P_ATTRIBUTE13              VARCHAR2,
192                 P_ATTRIBUTE14              VARCHAR2,
193                 P_ATTRIBUTE15              VARCHAR2,
194                 P_LAST_UPDATE_DATE         DATE,
195                 P_LAST_UPDATED_BY          NUMBER,
196                 P_LAST_UPDATE_LOGIN        NUMBER
197 	        ) IS
198   l_api_name            CONSTANT VARCHAR2(30)   := 'Update_Row';
199   l_api_version         CONSTANT NUMBER         :=  1.0;
200 
201 BEGIN
202 
203   SAVEPOINT Update_Row_Pvt ;
204 
205   IF NOT FND_API.Compatible_API_Call ( l_api_version,
206                                        p_api_version,
207                                        l_api_name,
208                                        G_PKG_NAME )
209   THEN
210     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
211   END IF;
212 
213 
214   IF FND_API.to_Boolean ( p_init_msg_list ) THEN
215     FND_MSG_PUB.initialize ;
216   END IF;
217 
218   p_return_status := FND_API.G_RET_STS_SUCCESS ;
219 
220  UPDATE IGC_CC_GROUPS
221  SET
222 	CC_GROUP_ID		= P_CC_GROUP_ID,
223 	SET_OF_BOOKS_ID		= P_SET_OF_BOOKS_ID,
224 	CC_GROUP_NAME		= P_CC_GROUP_NAME,
225 	CC_GROUP_DESC		= P_CC_GROUP_DESC,
226 	CONTEXT	        	= P_CONTEXT,
227 	ATTRIBUTE1		= P_ATTRIBUTE1,
228 	ATTRIBUTE2		= P_ATTRIBUTE2,
229 	ATTRIBUTE3		= P_ATTRIBUTE3,
230 	ATTRIBUTE4		= P_ATTRIBUTE4,
231 	ATTRIBUTE5		= P_ATTRIBUTE5,
232 	ATTRIBUTE6		= P_ATTRIBUTE6,
233 	ATTRIBUTE7		= P_ATTRIBUTE7,
234 	ATTRIBUTE8		= P_ATTRIBUTE8,
235 	ATTRIBUTE9		= P_ATTRIBUTE9,
236 	ATTRIBUTE10		= P_ATTRIBUTE10,
237 	ATTRIBUTE11		= P_ATTRIBUTE11,
238 	ATTRIBUTE12		= P_ATTRIBUTE12,
239 	ATTRIBUTE13		= P_ATTRIBUTE13,
240 	ATTRIBUTE14		= P_ATTRIBUTE14,
241 	ATTRIBUTE15		= P_ATTRIBUTE15,
242 	LAST_UPDATE_DATE	= P_LAST_UPDATE_DATE,
243 	LAST_UPDATED_BY		= P_LAST_UPDATED_BY,
244 	LAST_UPDATE_LOGIN	= P_LAST_UPDATE_LOGIN
245  WHERE ROWID = P_ROWID;
246 
247  IF (SQL%NOTFOUND) THEN
248 	RAISE NO_DATA_FOUND;
249 	END IF;
250 
251   IF FND_API.To_Boolean ( p_commit ) THEN
252     COMMIT WORK;
253   END iF;
254 
255   FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
256                               p_data  => p_msg_data );
257 
258 EXCEPTION
259 
260   WHEN FND_API.G_EXC_ERROR THEN
261 
262     ROLLBACK TO Update_Row_Pvt ;
263     p_return_status := FND_API.G_RET_STS_ERROR;
264     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
265                                 p_data  => p_msg_data );
266 
267   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
268 
269     ROLLBACK TO Update_Row_Pvt ;
270     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
271     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
272                                 p_data  => p_msg_data );
273 
274   WHEN OTHERS THEN
275 
276     ROLLBACK TO Update_Row_Pvt ;
277     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
278 
279     IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
280       FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
281                                 l_api_name);
282     END if;
283 
284     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
285                                 p_data  => p_msg_data );
286 
287  END Update_Row;
288 
289 
290 PROCEDURE Lock_Row(  p_api_version          IN       NUMBER,
291   		p_init_msg_list             IN       VARCHAR2 := FND_API.G_FALSE,
292   		p_commit                    IN       VARCHAR2 := FND_API.G_FALSE,
293   		p_validation_level          IN       NUMBER   := FND_API.G_VALID_LEVEL_FULL,
294   		p_return_status             OUT NOCOPY      VARCHAR2,
295   		p_msg_count                 OUT NOCOPY      NUMBER,
296   		p_msg_data                  OUT NOCOPY      VARCHAR2,
297 
298 
299 		 P_ROWID		  VARCHAR2,
300                  P_CC_GROUP_ID            NUMBER,
301                  P_SET_OF_BOOKS_ID        NUMBER,
302                  P_CC_GROUP_NAME          VARCHAR2,
303                  P_CC_GROUP_DESC          VARCHAR2,
304                  P_CONTEXT	          VARCHAR2,
305                  P_ATTRIBUTE1             VARCHAR2,
306                  P_ATTRIBUTE2             VARCHAR2,
307                  P_ATTRIBUTE3             VARCHAR2,
308                  P_ATTRIBUTE4             VARCHAR2,
309                  P_ATTRIBUTE5             VARCHAR2,
310                  P_ATTRIBUTE6             VARCHAR2,
311                  P_ATTRIBUTE7             VARCHAR2,
312                  P_ATTRIBUTE8             VARCHAR2,
313                  P_ATTRIBUTE9             VARCHAR2,
314                  P_ATTRIBUTE10            VARCHAR2,
315                  P_ATTRIBUTE11            VARCHAR2,
316                  P_ATTRIBUTE12            VARCHAR2,
317                  P_ATTRIBUTE13            VARCHAR2,
318                  P_ATTRIBUTE14            VARCHAR2,
319                  P_ATTRIBUTE15            VARCHAR2,
320   		 p_row_locked    OUT NOCOPY      VARCHAR2
321 		 ) IS
322 
323   l_api_name            CONSTANT VARCHAR2(30)   := 'Lock_Row';
324   l_api_version         CONSTANT NUMBER         :=  1.0;
325 
326 	CURSOR C IS
327 		SELECT  cc_group_id,
328 			set_of_books_id,
329 			cc_group_name,
330 			cc_group_desc,
331 			context,
332 			attribute1,
333 			attribute2,
334 			attribute3,
335 			attribute4,
336 			attribute5,
337 			attribute6,
338 			attribute7,
339 			attribute8,
340 			attribute9,
341 			attribute10,
342 			attribute11,
343 			attribute12,
344 			attribute13,
345 			attribute14,
346 			attribute15
347 		FROM  IGC_CC_GROUPS
348 		WHERE ROWID = P_ROWID
349 		for UPDATE OF CC_GROUP_ID NOWAIT;
350 	Recinfo C%ROWTYPE;
351 
352  BEGIN
353 
354   SAVEPOINT Lock_Row_Pvt ;
355 
356   IF NOT FND_API.Compatible_API_Call ( l_api_version,
357                                        p_api_version,
358                                        l_api_name,
359                                        G_PKG_NAME )
360   THEN
361     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
362   END IF;
363 
364 
365   IF FND_API.to_Boolean ( p_init_msg_list ) THEN
366     FND_MSG_PUB.initialize ;
367   END IF;
368 
369   p_return_status := FND_API.G_RET_STS_SUCCESS ;
370   p_row_locked    := FND_API.G_TRUE ;
371 
372   OPEN C;
373   FETCH C INTO Recinfo;
374    IF (C%NOTFOUND) THEN
375    CLOSE C;
376    fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
377    APP_EXCEPTION.Raise_Exception;
381        	    (recinfo.CC_GROUP_ID = P_CC_GROUP_ID)
378    END IF;
379   CLOSE C;
380   IF (
382 	AND (recinfo.CC_GROUP_NAME = P_CC_GROUP_NAME)
383 	AND (recinfo.SET_OF_BOOKS_ID = P_SET_OF_BOOKS_ID)
384 
385 	AND ((recinfo.CC_GROUP_DESC = P_CC_GROUP_DESC)
386 	     OR ((recinfo.CC_GROUP_DESC IS NULL)
387 		AND (P_CC_GROUP_DESC IS NULL)))
388 	AND ((recinfo.CONTEXT = P_CONTEXT)
389 	     OR ((recinfo.CONTEXT IS NULL)
390 		AND (P_CONTEXT IS NULL)))
391         AND ((recinfo.ATTRIBUTE1 = P_ATTRIBUTE1)
392                 OR ((recinfo.ATTRIBUTE1 IS NULL)
393                      AND (P_ATTRIBUTE1 IS NULL)))
394         AND ((recinfo.ATTRIBUTE2 = P_ATTRIBUTE2)
395                 OR ((recinfo.ATTRIBUTE2 IS NULL)
396                      AND (P_ATTRIBUTE2 IS NULL)))
397         AND ((recinfo.ATTRIBUTE3 = P_ATTRIBUTE3)
398                 OR ((recinfo.ATTRIBUTE3 IS NULL)
399                      AND (P_ATTRIBUTE3 IS NULL)))
400         AND ((recinfo.ATTRIBUTE4 = P_ATTRIBUTE4)
401                 OR ((recinfo.ATTRIBUTE4 IS NULL)
402                      AND (P_ATTRIBUTE4 IS NULL)))
403         AND ((recinfo.ATTRIBUTE5 = P_ATTRIBUTE5)
404                 OR ((recinfo.ATTRIBUTE5 IS NULL)
405                      AND (P_ATTRIBUTE5 IS NULL)))
406         AND ((recinfo.ATTRIBUTE6 = P_ATTRIBUTE6)
407                 OR ((recinfo.ATTRIBUTE6 IS NULL)
408                      AND (P_ATTRIBUTE6 IS NULL)))
409         AND ((recinfo.ATTRIBUTE7 = P_ATTRIBUTE7)
410                 OR ((recinfo.ATTRIBUTE7 IS NULL)
411                      AND (P_ATTRIBUTE7 IS NULL)))
412         AND ((recinfo.ATTRIBUTE8 = P_ATTRIBUTE8)
413                 OR ((recinfo.ATTRIBUTE8 IS NULL)
414                      AND (P_ATTRIBUTE8 IS NULL)))
415         AND ((recinfo.ATTRIBUTE9 = P_ATTRIBUTE9)
416                 OR ((recinfo.ATTRIBUTE9 IS NULL)
417                      AND (P_ATTRIBUTE9 IS NULL)))
418         AND ((recinfo.ATTRIBUTE10 = P_ATTRIBUTE10)
419                 OR ((recinfo.ATTRIBUTE10 IS NULL)
420                      AND (P_ATTRIBUTE10 IS NULL)))
421         AND ((recinfo.ATTRIBUTE11 = P_ATTRIBUTE11)
422                 OR ((recinfo.ATTRIBUTE11 IS NULL)
423                      AND (P_ATTRIBUTE11 IS NULL)))
424         AND ((recinfo.ATTRIBUTE12 = P_ATTRIBUTE12)
425                 OR ((recinfo.ATTRIBUTE12 IS NULL)
426                      AND (P_ATTRIBUTE12 IS NULL)))
427         AND ((recinfo.ATTRIBUTE13 = P_ATTRIBUTE13)
428                 OR ((recinfo.ATTRIBUTE13 IS NULL)
429                      AND (P_ATTRIBUTE13 IS NULL)))
430         AND ((recinfo.ATTRIBUTE14 = P_ATTRIBUTE14)
431                 OR ((recinfo.ATTRIBUTE14 IS NULL)
432                      AND (P_ATTRIBUTE14 IS NULL)))
433         AND ((recinfo.ATTRIBUTE15 = P_ATTRIBUTE15)
434                 OR ((recinfo.ATTRIBUTE15 IS NULL)
435                      AND (P_ATTRIBUTE15 IS NULL)))
436 	) THEN
437 	RETURN;
438    ELSE
439 	fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
440     	FND_MSG_PUB.Add;
441     	RAISE FND_API.G_EXC_ERROR ;
442    -- APP_EXCEPTION.RAISE_EXCEPTION;
443    END IF;
444 
445   IF FND_API.To_Boolean ( p_commit ) THEN
446     COMMIT WORK;
447   END iF;
448 
449   FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
450                               p_data  => p_msg_data );
451 
452 EXCEPTION
453 
454   WHEN APP_EXCEPTION.RECORD_LOCK_EXCEPTION THEN
455 
456     ROLLBACK TO Lock_Row_Pvt ;
457     p_row_locked := FND_API.G_FALSE;
458     p_return_status := FND_API.G_RET_STS_ERROR;
459     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
460                                 p_data  => p_msg_data );
461 
462   WHEN FND_API.G_EXC_ERROR THEN
463 
464     ROLLBACK TO Lock_Row_Pvt ;
465     p_return_status := FND_API.G_RET_STS_ERROR;
466     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
467                                 p_data  => p_msg_data );
468 
469   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
470 
471     ROLLBACK TO Lock_Row_Pvt ;
472     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
473     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
474                                 p_data  => p_msg_data );
475 
476   WHEN OTHERS THEN
477 
478     ROLLBACK TO Lock_Row_Pvt ;
479     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
480 
481     IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
482       FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
483                                 l_api_name);
484     END if;
485 
486     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
487                                 p_data  => p_msg_data );
488 
489  END Lock_Row;
490 
491 
492 
493 PROCEDURE Delete_Row(  p_api_version IN       NUMBER,
494   	p_init_msg_list              IN       VARCHAR2 := FND_API.G_FALSE,
495   	p_commit                     IN       VARCHAR2 := FND_API.G_FALSE,
496   	p_validation_level           IN       NUMBER   := FND_API.G_VALID_LEVEL_FULL,
497   	p_return_status              OUT NOCOPY      VARCHAR2,
498   	p_msg_count                  OUT NOCOPY      NUMBER,
499   	p_msg_data                   OUT NOCOPY      VARCHAR2,
500 
501 	P_ROWID 			      VARCHAR2) IS
502 
503   l_api_name                CONSTANT VARCHAR2(30)   := 'Delete_Row';
504   l_api_version             CONSTANT NUMBER         :=  1.0;
508   l_msg_data                VARCHAR2(2000) ;
505 
506   l_return_status           VARCHAR2(1) ;
507   l_msg_count               NUMBER ;
509 
510  x_cc_group_id NUMBER;
511 
512 BEGIN
513 
514   SAVEPOINT Delete_Row_Pvt ;
515 
516   IF NOT FND_API.Compatible_API_Call ( l_api_version,
517                                        p_api_version,
518                                        l_api_name,
519                                        G_PKG_NAME )
520   THEN
521     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
522   END IF;
523 
524 
525   IF FND_API.to_Boolean ( p_init_msg_list ) THEN
526     FND_MSG_PUB.initialize ;
527   END IF ;
528 
529   p_return_status := FND_API.G_RET_STS_SUCCESS ;
530 
531   BEGIN
532 	SELECT cc_group_id
533 	INTO   x_cc_group_id
534 	FROM   IGC_CC_GROUPS
535 	WHERE  rowid = p_rowid;
536   EXCEPTION
537 	WHEN NO_DATA_FOUND THEN
538 		RAISE;
539   END;
540 
541 
542 /* Delete IGC_CC_GROUP_USERS - Master - Detail Record */
543   DELETE FROM IGC_CC_GROUP_USERS
544   WHERE cc_group_id = x_cc_group_id;
545 
546   IF (SQL%NOTFOUND) THEN
547   RAISE NO_DATA_FOUND;
548   END IF;
549 
550 /* Delete IGC_CC_GROUPS - Master Record */
551   DELETE FROM IGC_CC_GROUPS
552   WHERE cc_group_id = x_cc_group_id;
553 
554   IF (SQL%NOTFOUND) THEN
555   RAISE NO_DATA_FOUND;
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 Delete_Row_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 Delete_Row_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 Delete_Row_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 
596 END DELETE_ROW;
597 
598 PROCEDURE CHECK_UNIQUE(
599 --        p_api_version               IN       NUMBER,
600 --        p_init_msg_list             IN       VARCHAR2 := FND_API.G_FALSE,
601 --        p_commit                    IN       VARCHAR2 := FND_API.G_FALSE,
602 --        p_validation_level          IN       NUMBER   := FND_API.G_VALID_LEVEL_FULL,
603 --        p_return_status             OUT NOCOPY      VARCHAR2,
604 --        p_msg_count                 OUT NOCOPY      NUMBER,
605 --        p_msg_data                  OUT NOCOPY      VARCHAR2,
606 
607         P_ROWID  VARCHAR2,
608         P_GROUP_NAME VARCHAR2,
609         P_SOB_ID NUMBER)
610 IS
611 
612 --  l_api_name            CONSTANT VARCHAR2(30)   := 'Check_Unique';
613 --  l_api_version         CONSTANT NUMBER         :=  1.0;
614 
615 --  l_tmp                 VARCHAR2(1);
616 
617 
618  DUMMY NUMBER;
619 
620   BEGIN
621 
622 
623 --  SAVEPOINT Check_Unique_Pvt ;
624 --  IF NOT FND_API.Compatible_API_Call ( l_api_version,
625 --                                       p_api_version,
626 --                                       l_api_name,
627 --                                       G_PKG_NAME )
628 --  THEN
629 --    RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
630 --  END IF;
631 
632 
633 --  IF FND_API.to_Boolean ( p_init_msg_list ) THEN
634 --    FND_MSG_PUB.initialize ;
635 --  END IF;
636 
637 --  p_return_status := FND_API.G_RET_STS_SUCCESS ;
638 
639         SELECT COUNT(1)
640          INTO DUMMY
641          FROM IGC_CC_GROUPS
642          WHERE CC_GROUP_NAME = P_GROUP_NAME AND
643                SET_OF_BOOKS_ID = P_SOB_ID AND
644              ((P_ROWID IS NULL) OR (ROWID <> P_ROWID));
645 --      dbms_output.put_line('DUMMY '||dummy);
646 
647         IF (DUMMY >= 1) THEN
648 --      FND_MESSAGE.SET_NAME('FND', 'EXPORT-NONE');
649         FND_MESSAGE.SET_NAME('IGC', 'IGC_CC_UNIQUE_EVENT');
650 --      FND_MESSAGE.ERROR;
651         APP_EXCEPTION.RAISE_EXCEPTION;
652 
653         END IF;
654 
655 --  IF FND_API.To_Boolean ( p_commit ) THEN
656 --    COMMIT WORK;
657 
658 --  END IF;
659 
660 --  FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
661 --                              p_data  => p_msg_data );
662 --
663 
664 /* EXCEPTION
665 
666   WHEN FND_API.G_EXC_ERROR THEN
667 
668     ROLLBACK TO Check_Unique_Pvt ;
669     p_return_status := FND_API.G_RET_STS_ERROR;
670     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
671                                 p_data  => p_msg_data );
672 
673   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
674 
675     ROLLBACK TO Check_Unique_Pvt ;
676     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
677     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
678                                 p_data  => p_msg_data );
679 
680   WHEN OTHERS THEN
681 
682     ROLLBACK TO Check_Unique_Pvt ;
683     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
684 
685     IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
686       FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
687                                 l_api_name);
688     END if;
689 
690     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
691                                 p_data  => p_msg_data );
692 */
693 
694 END CHECK_UNIQUE;
695 
696 
697 END IGC_CC_SEC_GROUP_PKG ;