DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSC_PROFILE_CHECK_RULES_PUB

Source


1 PACKAGE BODY CSC_PROFILE_CHECK_RULES_PUB as
2 /* $Header: cscppcrb.pls 115.11 2002/11/29 03:43:20 bhroy ship $ */
3 -- Start of Comments
4 -- Package name     : CSC_PROFILE_CHECK_RULES_PUB
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSC_PROFILE_CHECK_RULES_PUB';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'cscpucrb.pls';
13 ----------------------------------------------------------------------------
14 -- Convert_pub_to_pvt_rec Procedure
15 ----------------------------------------------------------------------------
16 
17 PROCEDURE Convert_pub_to_pvt_Rec (
18          P_chk_rules_Rec        IN   CSC_profile_check_rules_PUB.Chk_Rules_Rec_Type,
19          x_pvt_chk_rules_rec    OUT NOCOPY   CSC_profile_check_rules_PVT.Chk_Rules_Rec_Type
20 )
21 IS
22 l_any_errors       BOOLEAN   := FALSE;
23 BEGIN
24     x_pvt_chk_rules_rec.CHECK_ID := P_chk_rules_rec.CHECK_ID;
25     x_pvt_chk_rules_rec.BLOCK_ID := P_chk_rules_rec.BLOCK_ID;
26     x_pvt_chk_rules_rec.SEQUENCE := P_chk_rules_rec.SEQUENCE;
27     x_pvt_chk_rules_rec.LOGICAL_OPERATOR := P_chk_rules_rec.LOGICAL_OPERATOR;
28     x_pvt_chk_rules_rec.LEFT_PAREN := P_chk_rules_rec.LEFT_PAREN;
29     x_pvt_chk_rules_rec.COMPARISON_OPERATOR := P_chk_rules_rec.COMPARISON_OPERATOR;
30     x_pvt_chk_rules_rec.EXPRESSION := P_chk_rules_rec.EXPRESSION;
31     x_pvt_chk_rules_rec.EXPR_TO_BLOCK_ID := P_chk_rules_rec.EXPR_TO_BLOCK_ID;
32     x_pvt_chk_rules_rec.RIGHT_PAREN := P_chk_rules_rec.RIGHT_PAREN;
33     x_pvt_chk_rules_rec.SEEDED_FLAG := P_chk_rules_rec.SEEDED_FLAG;
34     x_pvt_chk_rules_rec.CREATED_BY := P_chk_rules_rec.CREATED_BY;
35     x_pvt_chk_rules_rec.CREATION_DATE := P_chk_rules_rec.CREATION_DATE;
36     x_pvt_chk_rules_rec.LAST_UPDATED_BY := P_chk_rules_rec.LAST_UPDATED_BY;
37     x_pvt_chk_rules_rec.LAST_UPDATE_DATE := P_chk_rules_rec.LAST_UPDATE_DATE;
38     x_pvt_chk_rules_rec.LAST_UPDATE_LOGIN := P_chk_rules_rec.LAST_UPDATE_LOGIN;
39     x_pvt_chk_rules_rec.SEEDED_FLAG := P_chk_rules_rec.SEEDED_FLAG;
40 
41     -- If there is an error in conversion precessing, raise an error.
42     IF l_any_errors
43     THEN
44         raise FND_API.G_EXC_ERROR;
45     END IF;
46 END Convert_pub_to_pvt_Rec;
47 
48 
49 PROCEDURE Convert_Columns_to_Rec(
50     P_CHECK_ID     		   IN  NUMBER,
51     P_BLOCK_ID     		   IN  NUMBER,
52     P_SEQUENCE                   IN  NUMBER,
53     P_CREATED_BY                 IN  NUMBER,
54     P_CREATION_DATE              IN  DATE,
55     P_LAST_UPDATED_BY            IN  NUMBER,
56     P_LAST_UPDATE_DATE           IN  DATE,
57     P_LAST_UPDATE_LOGIN          IN  NUMBER,
58     P_LOGICAL_OPERATOR           IN  VARCHAR2,
59     P_LEFT_PAREN                 IN  VARCHAR2,
60     P_COMPARISON_OPERATOR        IN  VARCHAR2,
61     P_EXPRESSION                 IN  VARCHAR2,
62     P_EXPR_TO_BLOCK_ID           IN  NUMBER,
63     P_RIGHT_PAREN                IN  VARCHAR2,
64     P_SEEDED_FLAG                IN  VARCHAR2,
65     X_CHK_RULES_Rec		   OUT NOCOPY CHK_RULES_Rec_Type
66     )
67 IS
68 BEGIN
69    X_CHK_RULES_rec.CHECK_ID := P_CHECK_ID;
70    X_CHK_RULES_rec.BLOCK_ID := P_BLOCK_ID;
71    X_CHK_RULES_rec.SEQUENCE := P_SEQUENCE;
72    X_CHK_RULES_rec.LOGICAL_OPERATOR := P_LOGICAL_OPERATOR;
73    X_CHK_RULES_rec.LEFT_PAREN := P_LEFT_PAREN;
74    X_CHK_RULES_rec.COMPARISON_OPERATOR := P_COMPARISON_OPERATOR;
75    X_CHK_RULES_rec.EXPRESSION := P_EXPRESSION;
76    X_CHK_RULES_rec.EXPR_TO_BLOCK_ID := P_EXPR_TO_BLOCK_ID;
77    X_CHK_RULES_rec.RIGHT_PAREN := P_RIGHT_PAREN;
78    X_CHK_RULES_rec.CREATED_BY := P_CREATED_BY;
79    X_CHK_RULES_rec.CREATION_DATE := P_CREATION_DATE;
80    X_CHK_RULES_rec.LAST_UPDATED_BY := P_LAST_UPDATED_BY;
81    X_CHK_RULES_rec.LAST_UPDATE_DATE := P_LAST_UPDATE_DATE;
82    X_CHK_RULES_rec.LAST_UPDATE_LOGIN := P_LAST_UPDATE_LOGIN;
83    X_CHK_RULES_rec.SEEDED_FLAG := P_SEEDED_FLAG;
84 END;
85 
86 PROCEDURE Create_profile_check_rules(
87     P_Api_Version_Number         IN   NUMBER,
88     P_Init_Msg_List              IN   VARCHAR2,
89     P_Commit                     IN   VARCHAR2,
90     P_CHECK_ID     		   IN  NUMBER,
91     P_BLOCK_ID     		   IN  NUMBER,
92     P_SEQUENCE                   IN  NUMBER,
93     P_CREATED_BY                 IN  NUMBER,
94     P_CREATION_DATE              IN  DATE,
95     P_LAST_UPDATED_BY            IN  NUMBER,
96     P_LAST_UPDATE_DATE           IN  DATE,
97     P_LAST_UPDATE_LOGIN          IN  NUMBER,
98     P_LOGICAL_OPERATOR           IN  VARCHAR2,
99     P_LEFT_PAREN                 IN  VARCHAR2,
100     P_COMPARISON_OPERATOR        IN  VARCHAR2,
101     P_EXPRESSION                 IN  VARCHAR2,
102     P_EXPR_TO_BLOCK_ID           IN  NUMBER,
103     P_RIGHT_PAREN                IN  VARCHAR2,
104     P_SEEDED_FLAG                IN  VARCHAR2,
105     X_OBJECT_VERSION_NUMBER      OUT NOCOPY NUMBER,
106     X_Return_Status              OUT NOCOPY VARCHAR2,
107     X_Msg_Count                  OUT NOCOPY NUMBER,
108     X_Msg_Data                   OUT NOCOPY VARCHAR2
109     )
110 IS
111 l_CHK_RULES_Rec CHK_RULES_Rec_Type;
112 BEGIN
113 
114  Convert_Columns_to_Rec(
115     P_CHECK_ID     	   => P_CHECK_ID,
116     P_BLOCK_ID     	   => P_BLOCK_ID,
117     P_SEQUENCE     	   => P_SEQUENCE,
118     P_CREATED_BY   	   => P_CREATED_BY,
119     P_CREATION_DATE    	   => P_CREATION_DATE,
120     P_LAST_UPDATED_BY      => P_LAST_UPDATED_BY,
121     P_LAST_UPDATE_DATE     => P_LAST_UPDATE_DATE,
122     P_LAST_UPDATE_LOGIN    => P_LAST_UPDATE_LOGIN,
123     P_LOGICAL_OPERATOR     => P_LOGICAL_OPERATOR,
124     P_LEFT_PAREN           => P_LEFT_PAREN,
125     P_COMPARISON_OPERATOR  => P_COMPARISON_OPERATOR,
126     P_EXPRESSION           => P_EXPRESSION,
127     P_EXPR_TO_BLOCK_ID     => P_EXPR_TO_BLOCK_ID,
128     P_RIGHT_PAREN          => P_RIGHT_PAREN,
129     P_SEEDED_FLAG          => P_SEEDED_FLAG,
130     X_CHK_RULES_Rec	   => l_CHK_RULES_Rec
131     );
132 
133  Create_profile_check_rules(
134     P_Api_Version_Number    => P_Api_Version_Number ,
135     P_Init_Msg_List         => P_Init_Msg_List,
136     P_Commit                => P_Commit,
137     P_CHK_RULES_Rec         => l_CHK_RULES_Rec,
138     X_OBJECT_VERSION_NUMBER  => X_OBJECT_VERSION_NUMBER,
139     X_Return_Status           => X_Return_Status,
140     X_Msg_Count               => X_Msg_Count,
141     X_Msg_Data                => X_Msg_Data
142     );
143 
144 
145 END Create_profile_check_rules;
146 
147 PROCEDURE Create_profile_check_rules(
148     P_Api_Version_Number         IN   NUMBER,
149     P_Init_Msg_List              IN   VARCHAR2,
150     P_Commit                     IN   VARCHAR2,
151     P_CHK_RULES_Rec              IN   CHK_RULES_Rec_Type,
152     X_Object_Version_Number      OUT NOCOPY  NUMBER,
153     X_Return_Status              OUT NOCOPY  VARCHAR2,
154     X_Msg_Count                  OUT NOCOPY  NUMBER,
155     X_Msg_Data                   OUT NOCOPY  VARCHAR2
156     )
157 
158  IS
159 l_api_name                CONSTANT VARCHAR2(30) := 'Create_profile_check_rules';
160 l_api_version_number      CONSTANT NUMBER   := 1.0;
161 l_pvt_CHK_RULES_rec    CSC_PROFILE_CHECK_RULES_PVT.CHK_RULES_Rec_Type;
162  BEGIN
163       -- Standard Start of API savepoint
164       SAVEPOINT CREATE_PROFILE_CHECK_RULES_PUB;
165 
166       -- Standard call to check for call compatibility.
167       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
168                          	             p_api_version_number,
169                                            l_api_name,
170                                            G_PKG_NAME)
171       THEN
172           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
173       END IF;
174 
175 
176       -- Initialize message list if p_init_msg_list is set to TRUE.
177       IF FND_API.to_Boolean( p_init_msg_list )
178       THEN
179           FND_MSG_PUB.initialize;
180       END IF;
181 
182 
183       -- Initialize API return status to SUCCESS
184       x_return_status := FND_API.G_RET_STS_SUCCESS;
185 
186       --
187       -- API body
188       --
189 
190       Convert_pub_to_pvt_Rec (
191          P_chk_rules_Rec        => P_CHK_RULES_Rec,
192          x_pvt_chk_rules_rec    => l_pvt_CHK_RULES_rec
193       );
194 
195       CSC_profile_check_rules_PVT.Create_profile_check_rules(
196       P_Api_Version_Number         => 1.0,
197       P_Init_Msg_List              => p_Init_Msg_list,
198       P_Commit                     => p_Commit,
199       P_Validation_Level           => CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
200       P_Chk_rules_Rec       	     => l_pvt_chk_rules_Rec,
201       X_Object_Version_Number      => X_Object_Version_Number,
202       X_Return_Status              => x_return_status,
203       X_Msg_Count                  => x_msg_count,
204       X_Msg_Data                   => x_msg_data);
205 
206 
207 
208       -- Check return status from the above procedure call
209       IF x_return_status = FND_API.G_RET_STS_ERROR then
210           raise FND_API.G_EXC_ERROR;
211       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
212           raise FND_API.G_EXC_UNEXPECTED_ERROR;
213       END IF;
214 
215       --
216       -- End of API body.
217       --
218 
219       -- Standard check for p_commit
220       IF FND_API.to_Boolean( p_commit )
221       THEN
222           COMMIT WORK;
223       END IF;
224 
225 
226       -- Standard call to get message count and if count is 1, get message info.
227       FND_MSG_PUB.Count_And_Get
228       (  p_count          =>   x_msg_count,
229          p_data           =>   x_msg_data
230       );
231 
232       EXCEPTION
233           WHEN FND_API.G_EXC_ERROR THEN
234     		  ROLLBACK TO Create_profile_check_rules_PUB;
235     		  x_return_status := FND_API.G_RET_STS_ERROR;
236     		  FND_MSG_PUB.Count_And_Get(
237       		 p_count => x_msg_count,
238         		 p_data  => x_msg_data );
239           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
240     		  ROLLBACK TO Create_profile_check_rules_PUB;
241     		  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
242     		  FND_MSG_PUB.Count_And_Get(
243       		 p_count => x_msg_count,
244         		 p_data  => x_msg_data );
245           WHEN OTHERS THEN
246     		  ROLLBACK TO Create_profile_check_rules_PUB;
247     		  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
248     		  FND_MSG_PUB.Count_And_Get(
249       		 p_count => x_msg_count,
250         		 p_data  => x_msg_data );
251 
252 End Create_profile_check_rules;
253 
254 PROCEDURE Update_profile_check_rules(
255     P_Api_Version_Number         IN   NUMBER,
256     P_Init_Msg_List              IN   VARCHAR2,
257     P_Commit                     IN   VARCHAR2,
258     P_CHECK_ID     		   IN  NUMBER,
259     P_BLOCK_ID     		   IN  NUMBER,
260     P_SEQUENCE                   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_LOGICAL_OPERATOR           IN  VARCHAR2,
267     P_LEFT_PAREN                 IN  VARCHAR2,
268     P_COMPARISON_OPERATOR        IN  VARCHAR2,
269     P_EXPRESSION                 IN  VARCHAR2,
270     P_EXPR_TO_BLOCK_ID           IN  NUMBER,
271     P_RIGHT_PAREN                IN  VARCHAR2,
272     P_SEEDED_FLAG                IN  VARCHAR2,
273     PX_OBJECT_VERSION_NUMBER     IN OUT NOCOPY NUMBER,
274     X_Return_Status              OUT NOCOPY VARCHAR2,
275     X_Msg_Count                  OUT NOCOPY NUMBER,
276     X_Msg_Data                   OUT NOCOPY VARCHAR2
277     )
278 IS
279 l_CHK_RULES_Rec CHK_RULES_Rec_Type;
280 BEGIN
281 
282  Convert_Columns_to_Rec(
283     P_CHECK_ID     	   => P_CHECK_ID,
284     P_BLOCK_ID     	   => P_BLOCK_ID,
285     P_SEQUENCE     	   => P_SEQUENCE,
286     P_CREATED_BY       	   => P_CREATED_BY,
287     P_CREATION_DATE    	   => P_CREATION_DATE,
288     P_LAST_UPDATED_BY      => P_LAST_UPDATED_BY,
289     P_LAST_UPDATE_DATE     => P_LAST_UPDATE_DATE,
290     P_LAST_UPDATE_LOGIN    => P_LAST_UPDATE_LOGIN,
291     P_LOGICAL_OPERATOR     => P_LOGICAL_OPERATOR,
292     P_LEFT_PAREN           => P_LEFT_PAREN,
293     P_COMPARISON_OPERATOR  => P_COMPARISON_OPERATOR,
294     P_EXPRESSION           => P_EXPRESSION,
295     P_EXPR_TO_BLOCK_ID     => P_EXPR_TO_BLOCK_ID,
296     P_RIGHT_PAREN          => P_RIGHT_PAREN,
297     P_SEEDED_FLAG          => P_SEEDED_FLAG,
298     X_CHK_RULES_Rec	   => l_CHK_RULES_Rec
299     );
300 
301  Update_profile_check_rules(
302     P_Api_Version_Number    => P_Api_Version_Number ,
303     P_Init_Msg_List         => P_Init_Msg_List,
304     P_Commit                => P_Commit,
305     P_CHK_RULES_Rec         => l_CHK_RULES_Rec,
306     PX_Object_Version_Number  => PX_OBJECT_VERSION_NUMBER,
307     X_Return_Status           => X_Return_Status,
308     X_Msg_Count               => X_Msg_Count,
309     X_Msg_Data                => X_Msg_Data
310     );
311 
312 END Update_profile_check_rules;
313 
314 PROCEDURE Update_profile_check_rules(
315     P_Api_Version_Number         IN    NUMBER,
316     P_Init_Msg_List              IN    VARCHAR2,
317     P_Commit                     IN    VARCHAR2,
318     P_CHK_RULES_Rec       	   IN    CHK_RULES_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_check_rules';
327 l_api_version_number      CONSTANT NUMBER   := 1.0;
328 l_pvt_CHK_RULES_rec  CSC_PROFILE_CHECK_RULES_PVT.CHK_RULES_Rec_Type;
329  BEGIN
330       -- Standard Start of API savepoint
331       SAVEPOINT UPDATE_PROFILE_CHECK_RULES_PUB;
332 
333       -- Standard call to check for call compatibility.
334       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
335                          	             p_api_version_number,
336                                            l_api_name,
337                                            G_PKG_NAME)
338       THEN
339           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
340       END IF;
341 
342 
343       -- Initialize message list if p_init_msg_list is set to TRUE.
344       IF FND_API.to_Boolean( p_init_msg_list )
345       THEN
346           FND_MSG_PUB.initialize;
347       END IF;
348 
349 
350       -- Initialize API return status to SUCCESS
351       x_return_status := FND_API.G_RET_STS_SUCCESS;
352 
353       --
354       -- API body
355       --
356       Convert_pub_to_pvt_Rec (
357          P_chk_rules_Rec        => P_CHK_RULES_Rec,
358          x_pvt_chk_rules_rec    => l_pvt_CHK_RULES_rec
359          );
360 
361 
362     CSC_profile_check_rules_PVT.Update_profile_check_rules(
363     P_Api_Version_Number      => P_Api_Version_Number ,
364     P_Init_Msg_List           => P_Init_Msg_List,
365     P_Commit                  => P_Commit,
366     p_validation_level        => CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
367     P_CHK_RULES_Rec           => l_PVT_CHK_RULES_Rec,
368     PX_Object_Version_Number  => PX_OBJECT_VERSION_NUMBER,
369     X_Return_Status           => X_Return_Status,
370     X_Msg_Count               => X_Msg_Count,
371     X_Msg_Data                => X_Msg_Data
372     );
373 
374       -- Check return status from the above procedure call
375       IF x_return_status = FND_API.G_RET_STS_ERROR then
376           raise FND_API.G_EXC_ERROR;
377       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
378           raise FND_API.G_EXC_UNEXPECTED_ERROR;
379       END IF;
380 
381       --
382       -- End of API body
383       --
384 
385       -- Standard check for p_commit
386       IF FND_API.to_Boolean( p_commit )
387       THEN
388           COMMIT WORK;
389       END IF;
390 
391 
392       -- Standard call to get message count and if count is 1, get message info.
393       FND_MSG_PUB.Count_And_Get
394       (  p_count          =>   x_msg_count,
395          p_data           =>   x_msg_data
396       );
397 
398       EXCEPTION
399           WHEN FND_API.G_EXC_ERROR THEN
400     		  ROLLBACK TO Update_profile_check_rules_PUB;
401     		  x_return_status := FND_API.G_RET_STS_ERROR;
402     		  FND_MSG_PUB.Count_And_Get(
403       		 p_count => x_msg_count,
404         		 p_data  => x_msg_data );
405           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
406     		  ROLLBACK TO Update_profile_check_rules_PUB;
407     		  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
408     		  FND_MSG_PUB.Count_And_Get(
409       		 p_count => x_msg_count,
410         		 p_data  => x_msg_data );
411           WHEN OTHERS THEN
412     		  ROLLBACK TO Update_profile_check_rules_PUB;
413     		  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
414     		  FND_MSG_PUB.Count_And_Get(
415       		 p_count => x_msg_count,
416         		 p_data  => x_msg_data );
417 
418 End Update_profile_check_rules;
419 
420 
421 PROCEDURE Delete_profile_check_rules(
422     P_Api_Version_Number         IN   NUMBER,
423     P_Init_Msg_List              IN   VARCHAR2,
424     P_Commit                     IN   VARCHAR2,
425     P_CHECK_ID			 IN   NUMBER,
426     p_SEQUENCE                   IN   NUMBER,
427     p_OBJECT_VERSION_NUMBER      IN   NUMBER,
428     X_Return_Status              OUT NOCOPY  VARCHAR2,
429     X_Msg_Count                  OUT NOCOPY  NUMBER,
430     X_Msg_Data                   OUT NOCOPY  VARCHAR2
431     )
432 
433  IS
434 l_api_name                CONSTANT VARCHAR2(30) := 'Delete_profile_check_rules';
435 l_api_version_number      CONSTANT NUMBER   := 1.0;
436 l_pvt_CHK_RULES_rec  CSC_PROFILE_CHECK_RULES_PVT.CHK_RULES_Rec_Type;
437  BEGIN
438       -- Standard Start of API savepoint
439       SAVEPOINT DELETE_PROFILE_CHECK_RULES_PUB;
440 
441       -- Standard call to check for call compatibility.
442       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
443                          	             p_api_version_number,
444                                            l_api_name,
445                                            G_PKG_NAME)
446       THEN
447           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
448       END IF;
449 
450 
451       -- Initialize message list if p_init_msg_list is set to TRUE.
452       IF FND_API.to_Boolean( p_init_msg_list )
453       THEN
454           FND_MSG_PUB.initialize;
455       END IF;
456 
457 
458       -- Initialize API return status to SUCCESS
459       x_return_status := FND_API.G_RET_STS_SUCCESS;
460 
461       --
462       -- API body
463       --
464 
465 
466     CSC_profile_check_rules_PVT.Delete_profile_check_rules(
467     P_Api_Version_Number         => 1.0,
468     P_Init_Msg_List              => CSC_CORE_UTILS_PVT.G_FALSE,
469     P_Commit                     => p_commit,
470     P_Validation_Level           => CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
471     P_CHECK_ID			 => P_CHECK_ID,
472     p_SEQUENCE                 => P_SEQUENCE,
473     p_OBJECT_VERSION_NUMBER    => p_OBJECT_VERSION_NUMBER,
474     X_Return_Status              => x_return_status,
475     X_Msg_Count                  => x_msg_count,
476     X_Msg_Data                   => x_msg_data);
477 
478 
479       -- Check return status from the above procedure call
480       IF x_return_status = FND_API.G_RET_STS_ERROR then
481           raise FND_API.G_EXC_ERROR;
482       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
483           raise FND_API.G_EXC_UNEXPECTED_ERROR;
484       END IF;
485 
486       --
487       -- End of API body
488       --
489 
490       -- Standard check for p_commit
491       IF FND_API.to_Boolean( p_commit )
492       THEN
493           COMMIT WORK;
494       END IF;
495 
496       -- Standard call to get message count and if count is 1, get message info.
497       FND_MSG_PUB.Count_And_Get
498       (  p_count          =>   x_msg_count,
499          p_data           =>   x_msg_data
500       );
501 
502       EXCEPTION
503           WHEN FND_API.G_EXC_ERROR THEN
504     		  ROLLBACK TO Delete_profile_check_rules_PUB;
505     		  x_return_status := FND_API.G_RET_STS_ERROR;
506     		  FND_MSG_PUB.Count_And_Get(
507       		 p_count => x_msg_count,
508         		 p_data  => x_msg_data );
509           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
510     		  ROLLBACK TO Delete_profile_check_rules_PUB;
511     		  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
512     		  FND_MSG_PUB.Count_And_Get(
513       		 p_count => x_msg_count,
514         		 p_data  => x_msg_data );
515           WHEN OTHERS THEN
516     		  ROLLBACK TO Delete_profile_check_rules_PUB;
517     		  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
518     		  FND_MSG_PUB.Count_And_Get(
519       		 p_count => x_msg_count,
520         		 p_data  => x_msg_data );
521 
522 End Delete_profile_check_rules;
523 
524 
525 
526 End CSC_PROFILE_CHECK_RULES_PUB;