DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSC_PROFILE_GROUPS_PUB

Source


1 PACKAGE BODY CSC_PROFILE_GROUPS_PUB as
2 /* $Header: cscppgrb.pls 115.11 2002/11/29 05:18:41 bhroy ship $ */
3 -- Start of Comments
4 -- Package name     : CSC_PROFILE_GROUPS_PUB
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSC_PROFILE_GROUPS_PUB';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'cscpugrb.pls';
13 
14 PROCEDURE Convert_Pub_to_pvt_rec
15   ( p_groups_rec     IN    PROF_GROUP_Rec_Type,
16     x_pvt_groups_rec OUT NOCOPY   CSC_PROFILE_GROUPS_PVT.PROF_GROUP_Rec_Type
17   )
18 IS
19 BEGIN
20 
21     x_pvt_Groups_rec.GROUP_ID := P_Groups_Rec.GROUP_ID;
22     x_pvt_Groups_rec.GROUP_NAME := P_Groups_Rec.GROUP_NAME;
23     x_pvt_Groups_rec.DESCRIPTION := P_Groups_Rec.DESCRIPTION;
24     x_pvt_Groups_rec.GROUP_NAME_CODE := P_Groups_Rec.GROUP_NAME_CODE;
25     x_pvt_Groups_rec.START_DATE_ACTIVE := P_Groups_Rec.START_DATE_ACTIVE;
26     x_pvt_Groups_rec.END_DATE_ACTIVE := P_Groups_Rec.END_DATE_ACTIVE;
27     x_pvt_Groups_rec.USE_IN_CUSTOMER_DASHBOARD := P_Groups_Rec.USE_IN_CUSTOMER_DASHBOARD;
28     x_pvt_Groups_rec.PARTY_TYPE := P_Groups_Rec.PARTY_TYPE;
29     x_pvt_Groups_rec.CREATED_BY := P_Groups_Rec.CREATED_BY;
30     x_pvt_Groups_rec.CREATION_DATE := P_Groups_Rec.CREATION_DATE;
31     x_pvt_Groups_rec.LAST_UPDATED_BY := P_Groups_Rec.LAST_UPDATED_BY;
32     x_pvt_Groups_rec.LAST_UPDATE_DATE := P_Groups_Rec.LAST_UPDATE_DATE;
33     x_pvt_Groups_rec.LAST_UPDATE_LOGIN := P_Groups_Rec.LAST_UPDATE_LOGIN;
34     x_pvt_Groups_rec.OBJECT_VERSION_NUMBER := P_Groups_Rec.OBJECT_VERSION_NUMBER;
35     x_pvt_Groups_rec.APPLICATION_ID := P_Groups_Rec.APPLICATION_ID;
36 
37 END Convert_Pub_to_pvt_rec;
38 PROCEDURE Convert_Columns_to_Rec(
39     P_GROUP_ID                   IN   NUMBER,
40     P_CREATED_BY                 IN   NUMBER,
41     P_CREATION_DATE              IN   DATE,
42     P_LAST_UPDATED_BY            IN   NUMBER,
43     P_LAST_UPDATE_DATE           IN   DATE,
44     P_LAST_UPDATE_LOGIN          IN   NUMBER,
45     P_GROUP_NAME                 IN   VARCHAR2,
46     P_GROUP_NAME_CODE            IN   VARCHAR2,
47     P_DESCRIPTION                IN   VARCHAR2,
48     P_PARTY_TYPE		 IN   VARCHAR2,
49     P_START_DATE_ACTIVE          IN   DATE,
50     P_END_DATE_ACTIVE            IN   DATE,
51     P_USE_IN_CUSTOMER_DASHBOARD  IN   VARCHAR2,
52     P_SEEDED_FLAG         IN   VARCHAR2,
53     P_OBJECT_VERSION_NUMBER 	 IN   NUMBER DEFAULT NULL,
54     P_APPLICATION_ID             IN   NUMBER,
55     X_PROF_GROUP_Rec     OUT NOCOPY    PROF_GROUP_Rec_Type
56     )
57    IS
58  BEGIN
59 
60     X_Prof_group_rec.GROUP_ID := P_GROUP_ID;
61     X_Prof_group_rec.CREATED_BY := P_CREATED_BY;
62     X_Prof_group_rec.CREATION_DATE :=  P_CREATION_DATE;
63     X_Prof_group_rec.LAST_UPDATED_BY := P_LAST_UPDATED_BY;
64     X_Prof_group_rec.LAST_UPDATE_DATE := P_LAST_UPDATE_DATE;
65     X_Prof_group_rec.LAST_UPDATE_LOGIN := P_LAST_UPDATE_LOGIN;
66     X_Prof_group_rec.GROUP_NAME    := P_GROUP_NAME;
67     X_Prof_group_rec.GROUP_NAME_CODE  := P_GROUP_NAME_CODE;
68     X_Prof_group_rec.DESCRIPTION   := P_DESCRIPTION;
69     X_Prof_group_rec.PARTY_TYPE := P_PARTY_TYPE;
70     X_Prof_group_rec.START_DATE_ACTIVE := P_START_DATE_ACTIVE;
71     X_Prof_group_rec.END_DATE_ACTIVE   := P_END_DATE_ACTIVE;
72     X_Prof_group_rec.USE_IN_CUSTOMER_DASHBOARD := P_USE_IN_CUSTOMER_DASHBOARD;
73     X_Prof_group_rec.SEEDED_FLAG := P_SEEDED_FLAG;
74     X_Prof_group_rec.OBJECT_VERSION_NUMBER := P_OBJECT_VERSION_NUMBER;
75     X_Prof_group_rec.APPLICATION_ID := P_APPLICATION_ID;
76 
77 END;
78 
79 PROCEDURE Create_profile_groups(
80     PX_Group_Id			   IN OUT NOCOPY NUMBER,
81     P_Api_Version_Number         IN   NUMBER,
82     P_Init_Msg_List              IN   VARCHAR2,
83     P_Commit                     IN   VARCHAR2,
84     P_GROUP_ID                   IN   NUMBER,
85     P_CREATED_BY                 IN   NUMBER,
86     P_CREATION_DATE              IN   DATE,
87     P_LAST_UPDATED_BY            IN   NUMBER,
88     P_LAST_UPDATE_DATE           IN   DATE,
89     P_LAST_UPDATE_LOGIN          IN   NUMBER,
90     P_GROUP_NAME                 IN   VARCHAR2,
91     P_GROUP_NAME_CODE            IN   VARCHAR2,
92     P_DESCRIPTION                IN   VARCHAR2,
93     P_PARTY_TYPE		         IN   VARCHAR2,
94     P_START_DATE_ACTIVE          IN   DATE,
95     P_END_DATE_ACTIVE            IN   DATE,
96     P_USE_IN_CUSTOMER_DASHBOARD  IN   VARCHAR2,
97     P_SEEDED_FLAG         IN   VARCHAR2,
98     X_Object_Version_Number OUT NOCOPY  NUMBER,
99     P_APPLICATION_ID             IN   NUMBER,
100     X_Return_Status              OUT NOCOPY  VARCHAR2,
101     X_Msg_Count                  OUT NOCOPY  NUMBER,
102     X_Msg_Data                   OUT NOCOPY  VARCHAR2
103     )
104 IS
105 l_prof_group_rec PROF_GROUP_REC_TYPE := G_MISS_PROF_GROUP_REC;
106 BEGIN
107 
108       Convert_Columns_to_Rec(
109       P_GROUP_ID  	=>   P_GROUP_ID,
110       P_CREATED_BY   	=>   P_CREATED_BY,
111       P_CREATION_DATE  	=>   P_CREATION_DATE,
112       P_LAST_UPDATED_BY 	=>    P_LAST_UPDATED_BY,
113       P_LAST_UPDATE_DATE 	=>    P_LAST_UPDATE_DATE,
114       P_LAST_UPDATE_LOGIN 	=>    P_LAST_UPDATE_LOGIN,
115       P_GROUP_NAME       	=>    P_GROUP_NAME,
116       P_GROUP_NAME_CODE   	=>    P_GROUP_NAME_CODE,
117       P_DESCRIPTION    	=>          P_DESCRIPTION,
118       P_PARTY_TYPE 	=>		P_PARTY_TYPE,
119       P_START_DATE_ACTIVE 	=>    P_START_DATE_ACTIVE,
120       P_END_DATE_ACTIVE 	=>    P_END_DATE_ACTIVE,
121       P_USE_IN_CUSTOMER_DASHBOARD 	=>  P_USE_IN_CUSTOMER_DASHBOARD,
122       P_SEEDED_FLAG 	=>        P_SEEDED_FLAG,
123       P_APPLICATION_ID          => P_APPLICATION_ID,
124       X_PROF_GROUP_Rec     => l_prof_group_rec
125 	);
126 
127       Create_profile_groups(
128       P_Api_Version_Number         => 1.0,
129       P_Init_Msg_List              => p_Init_Msg_List,
130       P_Commit                     => p_Commit,
131       PX_GROUP_ID                  => px_GROUP_ID,
132       P_PROF_GROUP_Rec  	   =>  l_prof_group_rec,
133       X_Object_Version_Number      => x_Object_Version_Number,
134       X_Return_Status              => x_return_status,
135       X_Msg_Count                  => x_msg_count,
136       X_Msg_Data                   => x_msg_data);
137 
138 END;
139 
140 PROCEDURE Create_profile_groups(
141     P_Api_Version_Number         IN   NUMBER,
142     P_Init_Msg_List              IN   VARCHAR2,
143     P_Commit                     IN   VARCHAR2,
144     P_PROF_GROUP_Rec     IN    PROF_GROUP_Rec_Type,
145     PX_GROUP_ID     IN OUT NOCOPY  NUMBER,
146     X_Object_Version_Number OUT NOCOPY  NUMBER,
147     X_Return_Status              OUT NOCOPY  VARCHAR2,
148     X_Msg_Count                  OUT NOCOPY  NUMBER,
149     X_Msg_Data                   OUT NOCOPY  VARCHAR2
150     )
151 IS
152 l_api_name                CONSTANT VARCHAR2(30) := 'Create_profile_groups';
153 l_api_version_number      CONSTANT NUMBER   := 1.0;
154 
155 l_pvt_PROF_GROUP_rec    CSC_PROFILE_GROUPS_PVT.PROF_GROUP_Rec_Type;
156  BEGIN
157       -- Standard Start of API savepoint
158       SAVEPOINT CREATE_PROFILE_GROUPS_PUB;
159 
160       -- Standard call to check for call compatibility.
161       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
162                          	             p_api_version_number,
163                                            l_api_name,
164                                            G_PKG_NAME)
165       THEN
166           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
167       END IF;
168 
169 
170       -- Initialize message list if p_init_msg_list is set to TRUE.
171       IF FND_API.to_Boolean( p_init_msg_list )
172       THEN
173           FND_MSG_PUB.initialize;
174       END IF;
175 
176 
177       -- Initialize API return status to SUCCESS
178       x_return_status := FND_API.G_RET_STS_SUCCESS;
179 
180       --
181       -- API body
182       --
183 
184       Convert_Pub_to_pvt_rec(
185   	p_groups_rec => P_PROF_GROUP_REC,
186       x_pvt_groups_rec => l_pvt_prof_group_Rec
187       );
188 
189 
190       CSC_profile_groups_PVT.Create_profile_groups(
191       P_Api_Version_Number         => 1.0,
192       P_Init_Msg_List              => CSC_CORE_UTILS_PVT.G_FALSE,
193       P_Commit                     => CSC_CORE_UTILS_PVT.G_FALSE,
194       P_Validation_Level           => CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
195       P_PROF_GROUP_Rec  	 =>  l_pvt_prof_group_Rec,
196       PX_GROUP_ID     		 => Px_GROUP_ID,
197       X_Object_Version_Number  => x_Object_Version_Number,
198       X_Return_Status              => x_return_status,
199       X_Msg_Count                  => x_msg_count,
200       X_Msg_Data                   => x_msg_data);
201 
202 
203 
204       -- Check return status from the above procedure call
205       IF x_return_status = FND_API.G_RET_STS_ERROR then
206           raise FND_API.G_EXC_ERROR;
207       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
208           raise FND_API.G_EXC_UNEXPECTED_ERROR;
209       END IF;
210 
211       --
212       -- End of API body.
213       --
214 
215       -- Standard check for p_commit
216       IF FND_API.to_Boolean( p_commit )
217       THEN
218           COMMIT WORK;
219       END IF;
220 
221 
222 
223       -- Standard call to get message count and if count is 1, get message info.
224       FND_MSG_PUB.Count_And_Get
225       (  p_count          =>   x_msg_count,
226          p_data           =>   x_msg_data
227       );
228 
229       EXCEPTION
230   	    WHEN FND_API.G_EXC_ERROR THEN
231     		 ROLLBACK TO Create_profile_groups_PUB;
232     		 x_return_status := FND_API.G_RET_STS_ERROR;
233     		 FND_MSG_PUB.Count_And_Get
234       			( p_count => x_msg_count,
235         		  	  p_data  => x_msg_data
236       			);
237   	    WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
238     		 ROLLBACK TO Create_profile_groups_PUB;
239     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
240     		 FND_MSG_PUB.Count_And_Get
241       			( p_count => x_msg_count,
242         		  	  p_data  => x_msg_data
243       			);
244   	    WHEN OTHERS THEN
245     		 ROLLBACK TO Create_profile_groups_PUB;
246     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
247     		 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
248       			FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
249     		 END IF;
250     		 FND_MSG_PUB.Count_And_Get
251       			( p_count => x_msg_count,
252         		  	  p_data  => x_msg_data
253       			);
254 End Create_profile_groups;
255 
256 PROCEDURE Update_profile_groups(
257     P_Api_Version_Number         IN   NUMBER,
258     P_Init_Msg_List              IN   VARCHAR2,
259     P_Commit                     IN   VARCHAR2,
260     P_GROUP_ID                   IN   NUMBER,
261     P_CREATED_BY                 IN   NUMBER,
262     P_CREATION_DATE              IN   DATE,
263     P_LAST_UPDATED_BY            IN   NUMBER,
264     P_LAST_UPDATE_DATE           IN   DATE,
265     P_LAST_UPDATE_LOGIN          IN   NUMBER,
266     P_GROUP_NAME                 IN   VARCHAR2,
267     P_GROUP_NAME_CODE            IN   VARCHAR2,
268     P_DESCRIPTION                IN   VARCHAR2,
269     P_PARTY_TYPE		         IN   VARCHAR2,
270     P_START_DATE_ACTIVE          IN   DATE,
271     P_END_DATE_ACTIVE            IN   DATE,
272     P_USE_IN_CUSTOMER_DASHBOARD  IN   VARCHAR2,
273     P_SEEDED_FLAG         IN   VARCHAR2,
274     PX_OBJECT_VERSION_NUMBER 	   IN OUT NOCOPY   NUMBER,
275     P_APPLICATION_ID             IN   NUMBER,
276     X_Return_Status              OUT NOCOPY  VARCHAR2,
277     X_Msg_Count                  OUT NOCOPY  NUMBER,
278     X_Msg_Data                   OUT NOCOPY  VARCHAR2
279     )
280    IS
281 l_prof_group_Rec  PROF_GROUP_REC_TYPE;
282 BEGIN
283       Convert_Columns_to_Rec(
284       P_GROUP_ID  	=>   P_GROUP_ID,
285       P_CREATED_BY   	=>   P_CREATED_BY,
286       P_CREATION_DATE  	=>   P_CREATION_DATE,
287       P_LAST_UPDATED_BY 	=>    P_LAST_UPDATED_BY,
288       P_LAST_UPDATE_DATE 	=>    P_LAST_UPDATE_DATE,
289       P_LAST_UPDATE_LOGIN 	=>    P_LAST_UPDATE_LOGIN,
290       P_GROUP_NAME       	=>    P_GROUP_NAME,
291       P_GROUP_NAME_CODE   	=>    P_GROUP_NAME_CODE,
292       P_DESCRIPTION    	=>          P_DESCRIPTION,
293       P_PARTY_TYPE 	=>		P_PARTY_TYPE,
294       P_START_DATE_ACTIVE 	=>    P_START_DATE_ACTIVE,
295       P_END_DATE_ACTIVE 	=>    P_END_DATE_ACTIVE,
296       P_USE_IN_CUSTOMER_DASHBOARD 	=>  P_USE_IN_CUSTOMER_DASHBOARD,
297       P_SEEDED_FLAG 	=>        P_SEEDED_FLAG,
298       P_OBJECT_VERSION_NUMBER 	=> PX_OBJECT_VERSION_NUMBER,
299       P_APPLICATION_ID          => P_APPLICATION_ID,
300       X_PROF_GROUP_Rec     => l_prof_group_rec
301 	);
302 
303       Update_profile_groups(
304       P_Api_Version_Number         => P_Api_Version_Number,
305       P_Init_Msg_List              => P_Init_Msg_List,
306       P_Commit                     => P_Commit,
307       P_PROF_GROUP_Rec  	=>  l_prof_group_rec,
308       PX_Object_Version_Number => px_Object_Version_Number,
309       X_Return_Status              => x_return_status,
310       X_Msg_Count                  => x_msg_count,
311       X_Msg_Data                   => x_msg_data);
312 END;
313 
314 PROCEDURE Update_profile_groups(
315     P_Api_Version_Number         IN   NUMBER,
316     P_Init_Msg_List              IN   VARCHAR2,
317     P_Commit                     IN   VARCHAR2,
318     P_PROF_GROUP_Rec      IN     PROF_GROUP_Rec_Type,
319     PX_Object_Version_Number IN OUT NOCOPY  NUMBER,
320     X_Return_Status              OUT NOCOPY  VARCHAR2,
321     X_Msg_Count                  OUT NOCOPY  NUMBER,
322     X_Msg_Data                   OUT NOCOPY  VARCHAR2
323     )
324 
325  IS
326 l_api_name                CONSTANT VARCHAR2(30) := 'Update_profile_groups';
327 l_api_version_number      CONSTANT NUMBER   := 1.0;
328 
329 l_pvt_PROF_GROUP_rec  CSC_PROFILE_GROUPS_PVT.PROF_GROUP_Rec_Type;
330  BEGIN
331       -- Standard Start of API savepoint
332       SAVEPOINT UPDATE_PROFILE_GROUPS_PUB;
333 
334       -- Standard call to check for call compatibility.
335       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
336                          	             p_api_version_number,
337                                            l_api_name,
338                                            G_PKG_NAME)
339       THEN
340           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
341       END IF;
342 
343 
344       -- Initialize message list if p_init_msg_list is set to TRUE.
345       IF FND_API.to_Boolean( p_init_msg_list )
346       THEN
347           FND_MSG_PUB.initialize;
348       END IF;
349 
350 
351 
352       -- Initialize API return status to SUCCESS
353       x_return_status := FND_API.G_RET_STS_SUCCESS;
354 
355       --
356       -- API body
357       --
358 
359       Convert_Pub_to_pvt_rec(
360   	p_groups_rec => P_PROF_GROUP_REC,
361       x_pvt_groups_rec => l_pvt_prof_group_Rec );
362 
363       CSC_profile_groups_PVT.Update_profile_groups(
364       P_Api_Version_Number         => 1.0,
365       P_Init_Msg_List              => CSC_CORE_UTILS_PVT.G_FALSE,
366       P_Commit                     => p_commit,
367       P_Validation_Level           => CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
368       P_PROF_GROUP_Rec  =>  l_pvt_prof_group_Rec ,
369       PX_Object_Version_Number => px_Object_Version_Number,
370       X_Return_Status              => x_return_status,
371       X_Msg_Count                  => x_msg_count,
372       X_Msg_Data                   => x_msg_data);
373 
374 
375 
376       -- Check return status from the above procedure call
377       IF x_return_status = FND_API.G_RET_STS_ERROR then
378           raise FND_API.G_EXC_ERROR;
379       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
383       --
380           raise FND_API.G_EXC_UNEXPECTED_ERROR;
381       END IF;
382 
384       -- End of API body
385       --
386 
387       -- Standard check for p_commit
388       IF FND_API.to_Boolean( p_commit )
389       THEN
390           COMMIT WORK;
391       END IF;
392 
393 
394 
395       -- Standard call to get message count and if count is 1, get message info.
396       FND_MSG_PUB.Count_And_Get
397       (  p_count          =>   x_msg_count,
398          p_data           =>   x_msg_data
399       );
400 
401       EXCEPTION
402   	    WHEN FND_API.G_EXC_ERROR THEN
403     		 ROLLBACK TO Update_profile_groups_PUB;
404     		 x_return_status := FND_API.G_RET_STS_ERROR;
405     		 FND_MSG_PUB.Count_And_Get
406       			( p_count => x_msg_count,
407         		  	  p_data  => x_msg_data
408       			);
409   	    WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
410     		 ROLLBACK TO Update_profile_groups_PUB;
411     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
412     		 FND_MSG_PUB.Count_And_Get
413       			( p_count => x_msg_count,
414         		  	  p_data  => x_msg_data
415       			);
416   	    WHEN OTHERS THEN
417     		 ROLLBACK TO Update_profile_groups_PUB;
418     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
419     		 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
420       			FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
421     		 END IF;
422     		 FND_MSG_PUB.Count_And_Get
423       			( p_count => x_msg_count,
424         		  	  p_data  => x_msg_data
425       			);
426 End Update_profile_groups;
427 
428 
429 PROCEDURE Delete_profile_groups(
430     P_Api_Version_Number         IN   NUMBER,
431     P_Init_Msg_List              IN   VARCHAR2,
432     P_Commit                     IN   VARCHAR2,
433     P_GROUP_Id     		 IN NUMBER,
434     P_Object_Version_Number      IN  NUMBER,
435     X_Return_Status              OUT NOCOPY  VARCHAR2,
436     X_Msg_Count                  OUT NOCOPY  NUMBER,
437     X_Msg_Data                   OUT NOCOPY  VARCHAR2
438     )
439 
440  IS
441 l_api_name                CONSTANT VARCHAR2(30) := 'Delete_profile_groups';
442 l_api_version_number      CONSTANT NUMBER   := 1.0;
443 l_pvt_PROF_GROUP_rec  CSC_PROFILE_GROUPS_PVT.PROF_GROUP_Rec_Type;
444  BEGIN
445       -- Standard Start of API savepoint
446       SAVEPOINT DELETE_PROFILE_GROUPS_PUB;
447 
448       -- Standard call to check for call compatibility.
449       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
450                          	             p_api_version_number,
451                                            l_api_name,
452                                            G_PKG_NAME)
453       THEN
454           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
455       END IF;
456 
457 
458       -- Initialize message list if p_init_msg_list is set to TRUE.
459       IF FND_API.to_Boolean( p_init_msg_list )
460       THEN
461           FND_MSG_PUB.initialize;
462       END IF;
463 
464 
465 
466       -- Initialize API return status to SUCCESS
467       x_return_status := FND_API.G_RET_STS_SUCCESS;
468 
469       --
470       -- API body
471       --
472 
473 
474     CSC_profile_groups_PVT.Delete_profile_groups(
475     P_Api_Version_Number         => 1.0,
476     P_Init_Msg_List              => CSC_CORE_UTILS_PVT.G_FALSE,
477     P_Commit                     => p_commit,
478     P_Validation_Level           => CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
479     P_GROUP_Id  => P_GROUP_Id,
480     P_OBJECT_VERSION_NUMBER => p_OBJECT_VERSION_NUMBER,
481     X_Return_Status              => x_return_status,
482     X_Msg_Count                  => x_msg_count,
483     X_Msg_Data                   => x_msg_data);
484 
485 
486 
487       -- Check return status from the above procedure call
488       IF x_return_status = FND_API.G_RET_STS_ERROR then
489           raise FND_API.G_EXC_ERROR;
490       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
491           raise FND_API.G_EXC_UNEXPECTED_ERROR;
492       END IF;
493 
494       --
495       -- End of API body
496       --
497 
498       -- Standard check for p_commit
499       IF FND_API.to_Boolean( p_commit )
500       THEN
501           COMMIT WORK;
502       END IF;
503 
504 
505       -- Standard call to get message count and if count is 1, get message info.
506       FND_MSG_PUB.Count_And_Get
507       (  p_count          =>   x_msg_count,
508          p_data           =>   x_msg_data
509       );
510 
511       EXCEPTION
512   	    WHEN FND_API.G_EXC_ERROR THEN
513     		 ROLLBACK TO Delete_profile_groups_PUB;
514     		 x_return_status := FND_API.G_RET_STS_ERROR;
515     		 FND_MSG_PUB.Count_And_Get
516       			( p_count => x_msg_count,
517         		  	  p_data  => x_msg_data
518       			);
519   	    WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
520     		 ROLLBACK TO Delete_profile_groups_PUB;
521     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
522     		 FND_MSG_PUB.Count_And_Get
523       			( p_count => x_msg_count,
524         		  	  p_data  => x_msg_data
525       			);
526   	    WHEN OTHERS THEN
527     		 ROLLBACK TO Delete_profile_groups_PUB;
528     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
529     		 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
530       			FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
531     		 END IF;
532     		 FND_MSG_PUB.Count_And_Get
533       			( p_count => x_msg_count,
534         		  	  p_data  => x_msg_data
535       			);
536 End Delete_profile_groups;
537 
538 
539 
540 End CSC_PROFILE_GROUPS_PUB;