DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKC_RULE_DEF_PVT

Source


1 Package Body OKC_RULE_DEF_PVT AS
2 /* $Header: OKCCRGDB.pls 120.0 2005/05/25 22:48:18 appldev noship $ */
3 
4 	l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5 
6   G_EXCEPTION_CANNOT_DELETE    EXCEPTION;
7   G_CANNOT_DELETE_MASTER       CONSTANT VARCHAR2(200) := 'OKC_CANNOT_DELETE_MASTER';
8   G_CANNOT_DELETE_RULE_DEF     CONSTANT VARCHAR2(200) := 'OKC_CANNOT_DELETE_RULE_DEF';
9 
10   --------------------------------------
11   --PROCEDURE create_rg_def_rule
12   --------------------------------------
13   PROCEDURE create_rg_def_rule(
14      p_api_version                  IN NUMBER,
15      p_init_msg_list                IN VARCHAR2 ,
16      x_return_status                OUT NOCOPY VARCHAR2,
17      x_msg_count                    OUT NOCOPY NUMBER,
18      x_msg_data                     OUT NOCOPY VARCHAR2,
19      p_rgrv_rec                     IN rgrv_rec_type,
20      x_rgrv_rec                     OUT NOCOPY rgrv_rec_type) IS
21   BEGIN
22      OKC_RGR_PVT.insert_row(
23                          p_api_version,
24                          p_init_msg_list,
25                          x_return_status,
26                          x_msg_count,
27                          x_msg_data,
28                          p_rgrv_rec,
29                          x_rgrv_rec);
30   END create_rg_def_rule;
31 
32   --------------------------------------
33   --PROCEDURE update_rg_def_rule
34   --------------------------------------
35   PROCEDURE update_rg_def_rule(
36      p_api_version                  IN NUMBER,
37      p_init_msg_list                IN VARCHAR2 ,
38      x_return_status                OUT NOCOPY VARCHAR2,
39      x_msg_count                    OUT NOCOPY NUMBER,
40      x_msg_data                     OUT NOCOPY VARCHAR2,
41      p_rgrv_rec                     IN rgrv_rec_type,
42      x_rgrv_rec                     OUT NOCOPY rgrv_rec_type) IS
43   BEGIN
44      OKC_RGR_PVT.update_row(
45                          p_api_version,
46                          p_init_msg_list,
47                          x_return_status,
48                          x_msg_count,
49                          x_msg_data,
50                          p_rgrv_rec,
51                          x_rgrv_rec);
52   END update_rg_def_rule;
53 
54   --------------------------------------
55   --PROCEDURE delete_rg_def_rule
56   --------------------------------------
57   PROCEDURE delete_rg_def_rule(
58      p_api_version                  IN NUMBER,
59      p_init_msg_list                IN VARCHAR2 ,
60      x_return_status                OUT NOCOPY VARCHAR2,
61      x_msg_count                    OUT NOCOPY NUMBER,
62      x_msg_data                     OUT NOCOPY VARCHAR2,
63      p_rgrv_rec                     IN rgrv_rec_type) IS
64 
65     l_dummy_var VARCHAR(1) := NULL;
66 -- The following cursor was modified  by MSENGUPT on 12/09/2001 to include rownum and FIRST_ROWS hint for perf.
67     CURSOR l_rul_csr IS
68       SELECT /*+ FIRST_ROWS */
69          'x'
70         FROM OKC_RULES_B rul,
71              OKC_RULE_GROUPS_B rgp
72        WHERE rul.rule_information_category = p_rgrv_rec.rdf_code
73          AND rul.rgp_id                    = rgp.id
74          AND rgp.rgd_code                  = p_rgrv_rec.rgd_code
75          AND rownum < 2;
76 
77   BEGIN
78     -- check whether rule records exists
79      OPEN l_rul_csr;
80     FETCH l_rul_csr into l_dummy_var;
81     CLOSE l_rul_csr;
82     IF l_dummy_var = 'x' THEN
83       RAISE G_EXCEPTION_CANNOT_DELETE;
84     END IF;
85 
86     OKC_RGR_PVT.delete_row(
87                          p_api_version,
88                          p_init_msg_list,
89                          x_return_status,
90                          x_msg_count,
91                          x_msg_data,
92                          p_rgrv_rec);
93   EXCEPTION
94   WHEN G_EXCEPTION_CANNOT_DELETE THEN
95     -- store SQL error message on message stack
96     OKC_API.SET_MESSAGE(
97       p_app_name        => G_APP_NAME,
98       p_msg_name        => G_CANNOT_DELETE_RULE_DEF);
99     -- notify caller of an error
100     x_return_status := OKC_API.G_RET_STS_ERROR;
101   WHEN OTHERS THEN
102     -- store SQL error message on message stack
103     OKC_API.SET_MESSAGE(
104       p_app_name        => G_APP_NAME,
105       p_msg_name        => G_UNEXPECTED_ERROR,
106       p_token1	        => G_SQLCODE_TOKEN,
107       p_token1_value    => SQLCODE,
108       p_token2          => G_SQLERRM_TOKEN,
109       p_token2_value    => SQLERRM);
110     -- notify caller of an error as UNEXPETED error
111     x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
112     -- verify that cursor was closed
113     IF l_rul_csr%ISOPEN THEN
114       CLOSE l_rul_csr;
115     END IF;
116   END delete_rg_def_rule;
117 
118   --------------------------------------
119   --PROCEDURE validate_rg_def_rule
120   --------------------------------------
121   PROCEDURE validate_rg_def_rule(
122      p_api_version                  IN NUMBER,
123      p_init_msg_list                IN VARCHAR2 ,
124      x_return_status                OUT NOCOPY VARCHAR2,
125      x_msg_count                    OUT NOCOPY NUMBER,
126      x_msg_data                     OUT NOCOPY VARCHAR2,
127      p_rgrv_rec                     IN rgrv_rec_type) IS
128   BEGIN
129      OKC_RGR_PVT.validate_row(
130                          p_api_version,
131                          p_init_msg_list,
132                          x_return_status,
133                          x_msg_count,
134                          x_msg_data,
135                          p_rgrv_rec);
136   END validate_rg_def_rule;
137 
138   --------------------------------------
139   --PROCEDURE lock_rg_def_rule
140   --------------------------------------
141   PROCEDURE lock_rg_def_rule(
142      p_api_version                  IN NUMBER,
143      p_init_msg_list                IN VARCHAR2 ,
144      x_return_status                OUT NOCOPY VARCHAR2,
145      x_msg_count                    OUT NOCOPY NUMBER,
146      x_msg_data                     OUT NOCOPY VARCHAR2,
147      p_rgrv_rec                     IN rgrv_rec_type) IS
148   BEGIN
149      OKC_RGR_PVT.lock_row(
150                          p_api_version,
151                          p_init_msg_list,
152                          x_return_status,
153                          x_msg_count,
154                          x_msg_data,
155                          p_rgrv_rec);
156   END lock_rg_def_rule;
157 
158   --------------------------------------
159   --PROCEDURE create_rd_source
160   --------------------------------------
161   PROCEDURE create_rd_source(
162      p_api_version                  IN NUMBER,
163      p_init_msg_list                IN VARCHAR2 ,
164      x_return_status                OUT NOCOPY VARCHAR2,
165      x_msg_count                    OUT NOCOPY NUMBER,
166      x_msg_data                     OUT NOCOPY VARCHAR2,
167      p_rdsv_rec                     IN rdsv_rec_type,
168      x_rdsv_rec                     OUT NOCOPY rdsv_rec_type) IS
169   BEGIN
170      OKC_RDS_PVT.insert_row(
171                          p_api_version,
172                          p_init_msg_list,
173                          x_return_status,
174                          x_msg_count,
175                          x_msg_data,
176                          p_rdsv_rec,
177                          x_rdsv_rec);
178   END create_rd_source;
179 
180   --------------------------------------
181   --PROCEDURE update_rd_source
182   --------------------------------------
183   PROCEDURE update_rd_source(
184      p_api_version                  IN NUMBER,
185      p_init_msg_list                IN VARCHAR2 ,
186      x_return_status                OUT NOCOPY VARCHAR2,
187      x_msg_count                    OUT NOCOPY NUMBER,
188      x_msg_data                     OUT NOCOPY VARCHAR2,
189      p_rdsv_rec                     IN rdsv_rec_type,
190      x_rdsv_rec                     OUT NOCOPY rdsv_rec_type) IS
191   BEGIN
192      OKC_RDS_PVT.update_row(
193                          p_api_version,
194                          p_init_msg_list,
195                          x_return_status,
196                          x_msg_count,
197                          x_msg_data,
198                          p_rdsv_rec,
199                          x_rdsv_rec);
200   END update_rd_source;
201 
202   --------------------------------------
203   --PROCEDURE delete_rd_source
204   --------------------------------------
205   PROCEDURE delete_rd_source(
206      p_api_version                  IN NUMBER,
207      p_init_msg_list                IN VARCHAR2 ,
208      x_return_status                OUT NOCOPY VARCHAR2,
209      x_msg_count                    OUT NOCOPY NUMBER,
210      x_msg_data                     OUT NOCOPY VARCHAR2,
211      p_rdsv_rec                     IN rdsv_rec_type) IS
212   BEGIN
213      OKC_RDS_PVT.delete_row(
214                          p_api_version,
215                          p_init_msg_list,
216                          x_return_status,
217                          x_msg_count,
218                          x_msg_data,
219                          p_rdsv_rec);
220   END delete_rd_source;
221 
222   --------------------------------------
223   --PROCEDURE validate_rd_source
224   --------------------------------------
225   PROCEDURE validate_rd_source(
226      p_api_version                  IN NUMBER,
227      p_init_msg_list                IN VARCHAR2 ,
228      x_return_status                OUT NOCOPY VARCHAR2,
229      x_msg_count                    OUT NOCOPY NUMBER,
230      x_msg_data                     OUT NOCOPY VARCHAR2,
231      p_rdsv_rec                     IN rdsv_rec_type) IS
232   BEGIN
233      OKC_RDS_PVT.validate_row(
234                          p_api_version,
235                          p_init_msg_list,
236                          x_return_status,
237                          x_msg_count,
238                          x_msg_data,
239                          p_rdsv_rec);
240   END validate_rd_source;
241 
242   --------------------------------------
243   --PROCEDURE lock_rd_source
244   --------------------------------------
245   PROCEDURE lock_rd_source(
246      p_api_version                  IN NUMBER,
247      p_init_msg_list                IN VARCHAR2 ,
248      x_return_status                OUT NOCOPY VARCHAR2,
249      x_msg_count                    OUT NOCOPY NUMBER,
250      x_msg_data                     OUT NOCOPY VARCHAR2,
251      p_rdsv_rec                     IN rdsv_rec_type) IS
252   BEGIN
253      OKC_RDS_PVT.lock_row(
254                          p_api_version,
255                          p_init_msg_list,
256                          x_return_status,
257                          x_msg_count,
258                          x_msg_data,
259                          p_rdsv_rec);
260   END lock_rd_source;
261 
262 END okc_rule_def_pvt;