DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSC_PROF_MODULE_GROUPS_PUB

Source


1 PACKAGE BODY CSC_PROF_MODULE_GROUPS_PUB as
2 /* $Header: cscppmgb.pls 115.15 2002/12/09 08:45:14 agaddam ship $ */
3 -- Start of Comments
4 -- Package name     : CSC_PROF_MODULE_GROUPS_PUB
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSC_PROF_MODULE_GROUPS_PUB';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'cscppmgb.pls';
13 
14 PROCEDURE Convert_pub_to_pvt_Rec (
15          P_PROF_MODULE_GRP_rec        IN   CSC_PROF_MODULE_GROUPS_PUB.PROF_MODULE_GRP_Rec_Type,
16          x_pvt_PROF_MODULE_GRP_rec    OUT NOCOPY  CSC_PROF_MODULE_GROUPS_PVT.PROF_MODULE_GRP_Rec_Type
17 )
18 IS
19 l_any_errors       BOOLEAN   := FALSE;
20 BEGIN
21 
22     x_pvt_PROF_MODULE_GRP_rec.MODULE_GROUP_ID := P_PROF_MODULE_GRP_Rec.MODULE_GROUP_ID;
23     x_pvt_PROF_MODULE_GRP_rec.FORM_FUNCTION_ID := P_PROF_MODULE_GRP_Rec.FORM_FUNCTION_ID;
24     x_pvt_PROF_MODULE_GRP_rec.FORM_FUNCTION_NAME := P_PROF_MODULE_GRP_Rec.FORM_FUNCTION_NAME;
25     x_pvt_PROF_MODULE_GRP_rec.RESPONSIBILITY_ID := P_PROF_MODULE_GRP_Rec.RESPONSIBILITY_ID;
26     x_pvt_PROF_MODULE_GRP_rec.RESP_APPL_ID := P_PROF_MODULE_GRP_Rec.RESP_APPL_ID;
27     x_pvt_PROF_MODULE_GRP_rec.PARTY_TYPE := P_PROF_MODULE_GRP_Rec.PARTY_TYPE;
28     x_pvt_PROF_MODULE_GRP_rec.GROUP_ID := P_PROF_MODULE_GRP_Rec.GROUP_ID;
29     x_pvt_PROF_MODULE_GRP_rec.DASHBOARD_GROUP_FLAG := P_PROF_MODULE_GRP_Rec.DASHBOARD_GROUP_FLAG;
30     x_pvt_PROF_MODULE_GRP_rec.CURRENCY_CODE := P_PROF_MODULE_GRP_Rec.CURRENCY_CODE;
31     x_pvt_PROF_MODULE_GRP_rec.LAST_UPDATE_DATE := P_PROF_MODULE_GRP_Rec.LAST_UPDATE_DATE;
32     x_pvt_PROF_MODULE_GRP_rec.LAST_UPDATED_BY := P_PROF_MODULE_GRP_Rec.LAST_UPDATED_BY;
33     x_pvt_PROF_MODULE_GRP_rec.CREATION_DATE := P_PROF_MODULE_GRP_Rec.CREATION_DATE;
34     x_pvt_PROF_MODULE_GRP_rec.CREATED_BY := P_PROF_MODULE_GRP_Rec.CREATED_BY;
35     x_pvt_PROF_MODULE_GRP_rec.LAST_UPDATE_LOGIN := P_PROF_MODULE_GRP_Rec.LAST_UPDATE_LOGIN;
36     x_pvt_PROF_MODULE_GRP_rec.SEEDED_FLAG:= P_PROF_MODULE_GRP_Rec.SEEDED_FLAG;
37     x_pvt_PROF_MODULE_GRP_rec.APPLICATION_ID:= P_PROF_MODULE_GRP_Rec.APPLICATION_ID;
38     x_pvt_PROF_MODULE_GRP_rec.DASHBOARD_GROUP_ID := P_PROF_MODULE_GRP_Rec.DASHBOARD_GROUP_ID;
39 
40   -- If there is an error in conversion precessing, raise an error.
41     IF l_any_errors
42     THEN
43         raise FND_API.G_EXC_ERROR;
44     END IF;
45 
46 END Convert_pub_to_pvt_Rec;
47 
48 PROCEDURE Convert_Columns_to_Rec (
49      p_MODULE_GROUP_ID                 NUMBER DEFAULT NULL,
50      p_FORM_FUNCTION_ID                NUMBER,
51      p_FORM_FUNCTION_NAME              VARCHAR2,
52      p_RESPONSIBILITY_ID               NUMBER,
53      p_RESP_APPL_ID                    NUMBER,
54      p_PARTY_TYPE                      VARCHAR2,
55      p_GROUP_ID                        NUMBER,
56      p_DASHBOARD_GROUP_FLAG            VARCHAR2,
57      p_CURRENCY_CODE                   VARCHAR2,
58      p_LAST_UPDATE_DATE                DATE,
59      p_LAST_UPDATED_BY                 NUMBER,
60      p_CREATION_DATE                   DATE,
61      p_CREATED_BY                      NUMBER,
62      p_LAST_UPDATE_LOGIN               NUMBER,
63      p_SEEDED_FLAG                     VARCHAR2,
64      p_APPLICATION_ID                  NUMBER,
65      p_DASHBOARD_GROUP_ID              NUMBER,
66      x_PROF_MODULE_GRP_Rec     OUT NOCOPY     PROF_MODULE_GRP_Rec_Type    )
67   IS
68 BEGIN
69 
70     x_PROF_MODULE_GRP_rec.MODULE_GROUP_ID := P_MODULE_GROUP_ID;
71     x_PROF_MODULE_GRP_rec.FORM_FUNCTION_ID := P_FORM_FUNCTION_ID;
72     x_PROF_MODULE_GRP_rec.FORM_FUNCTION_NAME := P_FORM_FUNCTION_NAME;
73     x_PROF_MODULE_GRP_rec.RESPONSIBILITY_ID := P_RESPONSIBILITY_ID;
74     x_PROF_MODULE_GRP_rec.RESP_APPL_ID := P_RESP_APPL_ID;
75     x_PROF_MODULE_GRP_rec.PARTY_TYPE := P_PARTY_TYPE;
76     x_PROF_MODULE_GRP_rec.GROUP_ID := P_GROUP_ID;
77     x_PROF_MODULE_GRP_rec.DASHBOARD_GROUP_FLAG := P_DASHBOARD_GROUP_FLAG;
78     x_PROF_MODULE_GRP_rec.CURRENCY_CODE := P_CURRENCY_CODE;
79     x_PROF_MODULE_GRP_rec.LAST_UPDATE_DATE := P_LAST_UPDATE_DATE;
80     x_PROF_MODULE_GRP_rec.LAST_UPDATED_BY := P_LAST_UPDATED_BY;
81     x_PROF_MODULE_GRP_rec.CREATION_DATE := P_CREATION_DATE;
82     x_PROF_MODULE_GRP_rec.CREATED_BY := P_CREATED_BY;
83     x_PROF_MODULE_GRP_rec.LAST_UPDATE_LOGIN := P_LAST_UPDATE_LOGIN;
84     x_PROF_MODULE_GRP_rec.SEEDED_FLAG := P_SEEDED_FLAG;
85     x_PROF_MODULE_GRP_rec.APPLICATION_ID := P_APPLICATION_ID;
86     x_PROF_MODULE_GRP_rec.DASHBOARD_GROUP_ID := P_DASHBOARD_GROUP_ID;
87 
88 END Convert_Columns_to_Rec;
89 
90 
91 PROCEDURE Create_prof_module_groups(
92     P_Api_Version_Number         IN   NUMBER,
93     P_Init_Msg_List              IN   VARCHAR2,
94     P_Commit                     IN   VARCHAR2,
95     PX_MODULE_GROUP_ID           IN OUT NOCOPY  NUMBER,
96     p_FORM_FUNCTION_ID                NUMBER,
97     p_FORM_FUNCTION_NAME              VARCHAR2,
98     p_RESPONSIBILITY_ID                NUMBER,
99     p_RESP_APPL_ID                NUMBER,
100     p_PARTY_TYPE                      VARCHAR2,
101     p_GROUP_ID                        NUMBER,
102     p_DASHBOARD_GROUP_FLAG            VARCHAR2,
103     p_CURRENCY_CODE                   VARCHAR2,
104     p_LAST_UPDATE_DATE                DATE,
105     p_LAST_UPDATED_BY                 NUMBER,
106     p_CREATION_DATE                   DATE,
107     p_CREATED_BY                      NUMBER,
108     p_LAST_UPDATE_LOGIN               NUMBER,
109     p_SEEDED_FLAG                     VARCHAR2,
110     p_APPLICATION_ID                  NUMBER,
111     p_DASHBOARD_GROUP_ID              NUMBER,
112     X_Return_Status              OUT NOCOPY  VARCHAR2,
113     X_Msg_Count                  OUT NOCOPY  NUMBER,
114     X_Msg_Data                   OUT NOCOPY  VARCHAR2
115     )
116 IS
117  l_PROF_MODULE_GRP_REC PROF_MODULE_GRP_REC_TYPE;
118 BEGIN
119 
120  Convert_Columns_to_Rec (
121      p_FORM_FUNCTION_ID     => p_FORM_FUNCTION_ID,
122      p_FORM_FUNCTION_NAME   => p_FORM_FUNCTION_NAME,
123      p_RESPONSIBILITY_ID     => p_RESPONSIBILITY_ID,
124      p_RESP_APPL_ID         => p_RESP_APPL_ID,
125      p_PARTY_TYPE           => p_PARTY_TYPE,
126      p_GROUP_ID             => p_GROUP_ID,
127      p_DASHBOARD_GROUP_FLAG => p_DASHBOARD_GROUP_FLAG,
128      p_CURRENCY_CODE        => p_CURRENCY_CODE,
129      p_LAST_UPDATE_DATE     => p_LAST_UPDATE_DATE,
130      p_LAST_UPDATED_BY      => p_LAST_UPDATED_BY,
131      p_CREATION_DATE        => p_CREATION_DATE,
132      p_CREATED_BY           => p_CREATED_BY,
133      p_LAST_UPDATE_LOGIN    => p_LAST_UPDATE_LOGIN,
134      p_SEEDED_FLAG          => p_SEEDED_FLAG,
135      p_APPLICATION_ID       => p_APPLICATION_ID,
136      p_DASHBOARD_GROUP_ID   => p_DASHBOARD_GROUP_ID,
137      x_PROF_MODULE_GRP_Rec  => l_PROF_MODULE_GRP_Rec    );
138 
139 
140 Create_prof_module_groups(
141     P_Api_Version_Number     => P_Api_Version_Number,
142     P_Init_Msg_List          => P_Init_Msg_List,
143     P_Commit                 => P_Commit,
144     P_PROF_MODULE_GRP_Rec    => l_PROF_MODULE_GRP_Rec,
145     PX_MODULE_GROUP_ID       => PX_MODULE_GROUP_ID,
146     X_Return_Status          => X_Return_Status,
147     X_Msg_Count              => X_Msg_Count,
148     X_Msg_Data               => X_Msg_Data
149     );
150 
151 END Create_prof_module_groups;
152 
153 
154 PROCEDURE Create_prof_module_groups(
155     P_Api_Version_Number         IN   NUMBER,
156     P_Init_Msg_List              IN   VARCHAR2,
157     P_Commit                     IN   VARCHAR2,
158     P_PROF_MODULE_GRP_Rec        IN    PROF_MODULE_GRP_Rec_Type,
159     PX_MODULE_GROUP_ID           IN OUT NOCOPY  NUMBER,
160     X_Return_Status              OUT NOCOPY  VARCHAR2,
161     X_Msg_Count                  OUT NOCOPY  NUMBER,
162     X_Msg_Data                   OUT NOCOPY  VARCHAR2
163     )
164 
165  IS
166 l_api_name                   CONSTANT VARCHAR2(30) := 'Create_prof_module_groups';
167 l_api_version_number         CONSTANT NUMBER   := 2.0;
168 l_pvt_PROF_MODULE_GRP_rec    CSC_PROF_MODULE_GROUPS_PVT.PROF_MODULE_GRP_Rec_Type;
169  BEGIN
170       -- Standard Start of API savepoint
171       SAVEPOINT CREATE_PROF_MODULE_GROUPS_PUB;
172 
173       -- Standard call to check for call compatibility.
174       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
175                          	             p_api_version_number,
176                                            l_api_name,
177                                            G_PKG_NAME)
178       THEN
179           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
180       END IF;
181 
182 
183       -- Initialize message list if p_init_msg_list is set to TRUE.
184       IF FND_API.to_Boolean( p_init_msg_list )
185       THEN
186           FND_MSG_PUB.initialize;
187       END IF;
188 
189 
190 
191       -- Initialize API return status to SUCCESS
192       x_return_status := FND_API.G_RET_STS_SUCCESS;
193 
194       --
195       -- API body
196       --
197 
198       --
199       Convert_pub_to_pvt_Rec (
200             P_PROF_MODULE_GRP_rec      =>  p_PROF_MODULE_GRP_rec,
201             x_pvt_PROF_MODULE_GRP_rec  =>  l_pvt_PROF_MODULE_GRP_rec
202       );
203 
204 
205     -- Calling Private package: Create_PROF_MODULE_GROUPS
206     -- Hint: Primary key needs to be returned
207       CSC_prof_module_groups_PVT.Create_prof_module_groups(
208       P_Api_Version_Number         => 2.0,
209       P_Init_Msg_List              => FND_API.G_FALSE,
210       P_Commit                     => FND_API.G_FALSE,
211       P_Validation_Level           => FND_API.G_VALID_LEVEL_FULL,
212       P_PROF_MODULE_GRP_Rec        =>  l_pvt_PROF_MODULE_GRP_Rec ,
213       PX_MODULE_GROUP_ID           => px_MODULE_GROUP_ID,
214       X_Return_Status              => x_return_status,
215       X_Msg_Count                  => x_msg_count,
216       X_Msg_Data                   => x_msg_data);
217 
218 
219 
220       -- Check return status from the above procedure call
221       IF x_return_status = FND_API.G_RET_STS_ERROR then
222           raise FND_API.G_EXC_ERROR;
223       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
224           raise FND_API.G_EXC_UNEXPECTED_ERROR;
225       END IF;
226 
227       --
228       -- End of API body.
229       --
230 
231       -- Standard check for p_commit
232       IF FND_API.to_Boolean( p_commit )
233       THEN
234           COMMIT WORK;
235       END IF;
236 
237 
238 
239       -- Standard call to get message count and if count is 1, get message info.
240       FND_MSG_PUB.Count_And_Get
241       (  p_count          =>   x_msg_count,
242          p_data           =>   x_msg_data
243       );
244 
245       EXCEPTION
246           WHEN FND_API.G_EXC_ERROR THEN
247 			ROLLBACK TO  CREATE_PROF_MODULE_GROUPS_PUB;
248 			 x_return_status :=  FND_API.G_RET_STS_ERROR ;
249 			 FND_MSG_PUB.Count_And_Get(p_count =>x_msg_count,
250 								  p_data => x_msg_data) ;
251 
252           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
253 			ROLLBACK TO  CREATE_PROF_MODULE_GROUPS_PUB;
254 			 x_return_status :=  FND_API.G_RET_STS_UNEXP_ERROR ;
255 			 FND_MSG_PUB.Count_And_Get(p_count =>x_msg_count,
256 								  p_data => x_msg_data) ;
257 
258           WHEN OTHERS THEN
259 			ROLLBACK TO  CREATE_PROF_MODULE_GROUPS_PUB;
260 			 x_return_status :=  FND_API.G_RET_STS_UNEXP_ERROR ;
261 			 IF FND_MSG_PUB.Check_Msg_Level
262 						 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
263 			 THEN
264 			 FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME,l_api_name);
265 			 END IF ;
266 			 FND_MSG_PUB.Count_And_Get(p_count =>x_msg_count,
267 								  p_data => x_msg_data) ;
268 
269 End Create_prof_module_groups;
270 
271 
272 PROCEDURE Update_prof_module_groups(
273     P_Api_Version_Number         IN   NUMBER,
274     P_Init_Msg_List              IN   VARCHAR2,
275     P_Commit                     IN   VARCHAR2,
276     P_MODULE_GROUP_ID          	      NUMBER,
277     p_FORM_FUNCTION_ID                NUMBER,
278     p_FORM_FUNCTION_NAME              VARCHAR2,
279     p_RESPONSIBILITY_ID                NUMBER,
280     p_RESP_APPL_ID                NUMBER,
281     p_PARTY_TYPE                      VARCHAR2,
282     p_GROUP_ID                        NUMBER,
283     p_DASHBOARD_GROUP_FLAG            VARCHAR2,
284     p_CURRENCY_CODE                   VARCHAR2,
285     p_LAST_UPDATE_DATE                DATE,
286     p_LAST_UPDATED_BY                 NUMBER,
287     p_CREATION_DATE                   DATE,
288     p_CREATED_BY                      NUMBER,
289     p_LAST_UPDATE_LOGIN               NUMBER,
290     p_SEEDED_FLAG                     VARCHAR2,
291     p_APPLICATION_ID                  NUMBER,
292     p_DASHBOARD_GROUP_ID              NUMBER,
293     X_Return_Status              OUT NOCOPY  VARCHAR2,
294     X_Msg_Count                  OUT NOCOPY  NUMBER,
295     X_Msg_Data                   OUT NOCOPY  VARCHAR2
296     )
297 IS
298  l_PROF_MODULE_GRP_REC PROF_MODULE_GRP_REC_TYPE;
299 BEGIN
300 
301  Convert_Columns_to_Rec (
302      p_FORM_FUNCTION_ID     => p_FORM_FUNCTION_ID,
303      p_FORM_FUNCTION_NAME   => p_FORM_FUNCTION_NAME,
304      p_RESPONSIBILITY_ID     => p_RESPONSIBILITY_ID,
305      p_RESP_APPL_ID     => p_RESP_APPL_ID,
306      p_PARTY_TYPE           => p_PARTY_TYPE,
307      p_GROUP_ID             => p_GROUP_ID,
308      p_DASHBOARD_GROUP_FLAG => p_DASHBOARD_GROUP_FLAG,
309      p_CURRENCY_CODE        => p_CURRENCY_CODE,
310      p_LAST_UPDATE_DATE     => p_LAST_UPDATE_DATE,
311      p_LAST_UPDATED_BY      => p_LAST_UPDATED_BY,
312      p_CREATION_DATE        => p_CREATION_DATE,
313      p_CREATED_BY           => p_CREATED_BY,
314      p_LAST_UPDATE_LOGIN    => p_LAST_UPDATE_LOGIN,
315      p_SEEDED_FLAG          => p_SEEDED_FLAG,
316      p_APPLICATION_ID       => p_APPLICATION_ID ,
317      p_DASHBOARD_GROUP_ID   => p_DASHBOARD_GROUP_ID,
318      x_PROF_MODULE_GRP_Rec  => l_PROF_MODULE_GRP_Rec    );
319 
320 
321  Update_prof_module_groups(
322     P_Api_Version_Number     => P_Api_Version_Number,
323     P_Init_Msg_List          => P_Init_Msg_List,
324     P_Commit                 => P_Commit,
325     P_PROF_MODULE_GRP_Rec    => l_PROF_MODULE_GRP_Rec,
326     X_Return_Status          => X_Return_Status,
327     X_Msg_Count              => X_Msg_Count,
328     X_Msg_Data               => X_Msg_Data
329     );
330 
331 END Update_prof_module_groups;
332 
333 PROCEDURE Update_prof_module_groups(
334     P_Api_Version_Number         IN   NUMBER,
335     P_Init_Msg_List              IN   VARCHAR2,
336     P_Commit                     IN   VARCHAR2,
337     P_PROF_MODULE_GRP_Rec        IN    PROF_MODULE_GRP_Rec_Type,
338     X_Return_Status              OUT NOCOPY  VARCHAR2,
339     X_Msg_Count                  OUT NOCOPY  NUMBER,
340     X_Msg_Data                   OUT NOCOPY  VARCHAR2
341     )
342 
343  IS
344 l_api_name                  CONSTANT VARCHAR2(30) := 'Update_prof_module_groups';
345 l_api_version_number        CONSTANT NUMBER   := 1.0;
346 l_pvt_PROF_MODULE_GRP_rec   CSC_PROF_MODULE_GROUPS_PVT.PROF_MODULE_GRP_Rec_Type;
347  BEGIN
348       -- Standard Start of API savepoint
349       SAVEPOINT UPDATE_PROF_MODULE_GROUPS_PUB;
350 
354                                            l_api_name,
351       -- Standard call to check for call compatibility.
352       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
353                          	             p_api_version_number,
355                                            G_PKG_NAME)
356       THEN
357           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
358       END IF;
359 
360 
361       -- Initialize message list if p_init_msg_list is set to TRUE.
362       IF FND_API.to_Boolean( p_init_msg_list )
363       THEN
364           FND_MSG_PUB.initialize;
365       END IF;
366 
367 
368 
369       -- Initialize API return status to SUCCESS
370       x_return_status := FND_API.G_RET_STS_SUCCESS;
371 
372       --
373       -- API body
374       --
375 
376       -- Convert the values to ids
377       --
378       Convert_pub_to_pvt_Rec (
379             P_PROF_MODULE_GRP_rec      =>  p_PROF_MODULE_GRP_rec,
380             x_pvt_PROF_MODULE_GRP_rec  =>  l_pvt_PROF_MODULE_GRP_rec
381       );
382 
383     CSC_prof_module_groups_PVT.Update_prof_module_groups(
384     P_Api_Version_Number         => 1.0,
385     P_Init_Msg_List              => FND_API.G_FALSE,
386     P_Commit                     => p_commit,
387     P_Validation_Level           => FND_API.G_VALID_LEVEL_FULL,
388     P_PROF_MODULE_GRP_Rec  =>  l_pvt_PROF_MODULE_GRP_Rec ,
389     X_Return_Status              => x_return_status,
390     X_Msg_Count                  => x_msg_count,
391     X_Msg_Data                   => x_msg_data);
392 
393 
394 
395       -- Check return status from the above procedure call
396       IF x_return_status = FND_API.G_RET_STS_ERROR then
397           raise FND_API.G_EXC_ERROR;
398       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
399           raise FND_API.G_EXC_UNEXPECTED_ERROR;
400       END IF;
401 
402       --
403       -- End of API body
404       --
405 
406       -- Standard check for p_commit
407       IF FND_API.to_Boolean( p_commit )
408       THEN
409           COMMIT WORK;
410       END IF;
411 
412 
413 
414       -- Standard call to get message count and if count is 1, get message info.
415       FND_MSG_PUB.Count_And_Get
416       (  p_count          =>   x_msg_count,
417          p_data           =>   x_msg_data
418       );
419 
420       EXCEPTION
421           WHEN FND_API.G_EXC_ERROR THEN
422 		 ROLLBACK TO UPDATE_PROF_MODULE_GROUPS_PUB;
423            x_return_status :=  FND_API.G_RET_STS_ERROR ;
424            FND_MSG_PUB.Count_And_Get(p_count =>x_msg_count,
425                                      p_data => x_msg_data) ;
426 
427 
428           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
429 		 ROLLBACK TO UPDATE_PROF_MODULE_GROUPS_PUB;
430            x_return_status :=  FND_API.G_RET_STS_UNEXP_ERROR ;
431            FND_MSG_PUB.Count_And_Get(p_count =>x_msg_count,
432                                      p_data => x_msg_data) ;
433 
434           WHEN OTHERS THEN
435 		 ROLLBACK TO UPDATE_PROF_MODULE_GROUPS_PUB;
436            x_return_status :=  FND_API.G_RET_STS_UNEXP_ERROR ;
437            IF FND_MSG_PUB.Check_Msg_Level
438                           (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
439            THEN
440            FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME,l_api_name);
441            END IF ;
442            FND_MSG_PUB.Count_And_Get(p_count =>x_msg_count,
443                                      p_data => x_msg_data) ;
444 
445 End Update_prof_module_groups;
446 
447 
448 PROCEDURE Delete_prof_module_groups(
449     P_Api_Version_Number         IN   NUMBER,
450     P_Init_Msg_List              IN   VARCHAR2,
451     P_Commit                     IN   VARCHAR2,
452     P_PROF_MODULE_GRP_Rec     IN PROF_MODULE_GRP_Rec_Type,
453     X_Return_Status              OUT NOCOPY  VARCHAR2,
454     X_Msg_Count                  OUT NOCOPY  NUMBER,
455     X_Msg_Data                   OUT NOCOPY  VARCHAR2
456     )
457 
458  IS
459 l_api_name                CONSTANT VARCHAR2(30) := 'Delete_prof_module_groups';
460 l_api_version_number      CONSTANT NUMBER   := 1.0;
461 l_pvt_PROF_MODULE_GRP_rec  CSC_PROF_MODULE_GROUPS_PVT.PROF_MODULE_GRP_Rec_Type;
462  BEGIN
463       -- Standard Start of API savepoint
464       SAVEPOINT DELETE_PROF_MODULE_GROUPS_PUB;
465 
466       -- Standard call to check for call compatibility.
467       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
468                          	             p_api_version_number,
469                                            l_api_name,
470                                            G_PKG_NAME)
471       THEN
472           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
473       END IF;
474 
475 
476       -- Initialize message list if p_init_msg_list is set to TRUE.
477       IF FND_API.to_Boolean( p_init_msg_list )
478       THEN
479           FND_MSG_PUB.initialize;
480       END IF;
481 
482 
483 
484       -- Initialize API return status to SUCCESS
485       x_return_status := FND_API.G_RET_STS_SUCCESS;
486 
487       --
488       -- API body
489       --
490 
491       -- Convert the values to ids
492       --
493       Convert_pub_to_pvt_Rec (
494             P_PROF_MODULE_GRP_rec      =>  p_PROF_MODULE_GRP_rec,
495             x_pvt_PROF_MODULE_GRP_rec  =>  l_pvt_PROF_MODULE_GRP_rec
496       );
497       -- Convert the values to ids
498       --
499     CSC_prof_module_groups_PVT.Delete_prof_module_groups(
500     P_Api_Version_Number         => 1.0,
501     P_Init_Msg_List              => FND_API.G_FALSE,
502     P_Commit                     => p_commit,
503     P_Validation_Level           => FND_API.G_VALID_LEVEL_FULL,
504     P_PROF_MODULE_GRP_Id  => l_pvt_PROF_MODULE_GRP_Rec.module_group_id,
505     X_Return_Status              => x_return_status,
506     X_Msg_Count                  => x_msg_count,
507     X_Msg_Data                   => x_msg_data);
508 
509 
510 
511       -- Check return status from the above procedure call
512       IF x_return_status = FND_API.G_RET_STS_ERROR then
513           raise FND_API.G_EXC_ERROR;
514       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
515           raise FND_API.G_EXC_UNEXPECTED_ERROR;
516       END IF;
517 
518       --
519       -- End of API body
520       --
521 
522       -- Standard check for p_commit
523       IF FND_API.to_Boolean( p_commit )
524       THEN
525           COMMIT WORK;
526       END IF;
527 
528 
529 
530       -- Standard call to get message count and if count is 1, get message info.
531       FND_MSG_PUB.Count_And_Get
532       (  p_count          =>   x_msg_count,
533          p_data           =>   x_msg_data
534       );
535 
536       EXCEPTION
537           WHEN FND_API.G_EXC_ERROR THEN
538 		 ROLLBACK TO DELETE_PROF_MODULE_GROUPS_PUB;
539     		 x_return_status := FND_API.G_RET_STS_ERROR;
540     		 FND_MSG_PUB.Count_And_Get
541       			( p_count => x_msg_count,
542         		  	  p_data  => x_msg_data
543       			);
544 
545           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
546 		 ROLLBACK TO DELETE_PROF_MODULE_GROUPS_PUB;
547     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
548     		 FND_MSG_PUB.Count_And_Get
549       			( p_count => x_msg_count,
550         		  	  p_data  => x_msg_data
551       			);
552 
553           WHEN OTHERS THEN
554 		 ROLLBACK TO DELETE_PROF_MODULE_GROUPS_PUB;
555     		 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
556     		 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
557       			FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
558     		 END IF;
559     		 FND_MSG_PUB.Count_And_Get
560       			( p_count => x_msg_count,
561         		  	  p_data  => x_msg_data
562       			);
563 
564 End Delete_prof_module_groups;
565 
566 
567 End CSC_PROF_MODULE_GROUPS_PUB;