[Home] [Help]
PACKAGE BODY: APPS.VEA_VERSIONS_SV
Source
1 PACKAGE BODY VEA_VERSIONS_SV as
2 /* $Header: VEAVAVRB.pls 115.3 2004/07/27 00:08:59 rvishnuv noship $ */
3 --{
4 /*====================== vea_versions_sv =========================*/
5 /*========================================================================
6 PURPOSE:
7
8 NOTES: To run the script:
9
10 sql> start VEAVALHB.pls
11
12 HISTORY
13 Created N PARIKH 09/09/99 10:00 AM
14
15 =========================================================================*/
16
17 G_PACKAGE_NAME CONSTANT VARCHAR2(30) := 'VEA_VERSIONS_SV';
18 --
19 --
20 /*========================================================================
21
22 PROCEDURE NAME:
23
24 PURPOSE:
25
26 ========================================================================*/
27 PROCEDURE
28 insert_row
29 (
30 p_layer_provider_code IN vea_versions.layer_provider_code%TYPE,
31 p_release_id IN vea_versions.release_id%TYPE,
32 p_version_id IN vea_versions.version_id%TYPE,
33 p_version_number IN vea_versions.version_number%TYPE,
34 p_description IN vea_versions.description%TYPE
35 )
36 IS
37 --{
38 l_api_name CONSTANT VARCHAR2(30) := 'insert_row';
39 l_location VARCHAR2(32767);
40 --
41 --
42 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
43 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
44 --}
45 BEGIN
46 --{
47 l_location := '0010';
48 --
49 INSERT INTO vea_versions
50 (
51 layer_provider_code, release_id,
52 version_id, version_number,
53 description,
54 created_by, creation_date,
55 last_updated_by, last_update_date,
56 last_update_login
57 )
58 VALUES
59 (
60 p_layer_provider_code, p_release_id,
61 p_version_id, p_version_number,
62 p_description,
63 l_user_id, SYSDATE,
64 l_user_id, SYSDATE,
65 l_login_id
66 );
67 --}
68 EXCEPTION
69 --{
70 WHEN OTHERS
71 THEN
72 --{
73 vea_tpa_util_pvt.add_exc_message_and_raise
74 (
75 p_package_name => G_PACKAGE_NAME,
76 p_api_name => l_api_name,
77 p_location => l_location
78 );
79 --}
80 --}
81 END insert_row;
82 --
83 --
84 /*========================================================================
85
86 PROCEDURE NAME:
87
88 PURPOSE:
89
90 ========================================================================*/
91 PROCEDURE
92 update_row
93 (
94 p_layer_provider_code IN vea_versions.layer_provider_code%TYPE,
95 p_release_id IN vea_versions.release_id%TYPE,
96 p_version_id IN vea_versions.version_id%TYPE,
97 p_version_number IN vea_versions.version_number%TYPE,
98 p_description IN vea_versions.description%TYPE
99 )
100 IS
101 --{
102 l_api_name CONSTANT VARCHAR2(30) := 'update_row';
103 l_location VARCHAR2(32767);
104 --
105 --
106 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
107 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
108 --}
109 BEGIN
110 --{
111 l_location := '0010';
112 --
113 UPDATE vea_versions
114 SET version_number = p_version_number,
115 description = p_description,
116 last_updated_by = l_user_id,
117 last_update_date = SYSDATE,
118 last_update_login = l_login_id
119 WHERE layer_provider_code = p_layer_provider_code
120 AND release_id = p_release_id
121 AND version_id = p_version_id;
122 --}
123 EXCEPTION
124 --{
125 WHEN OTHERS
126 THEN
127 --{
128 vea_tpa_util_pvt.add_exc_message_and_raise
129 (
130 p_package_name => G_PACKAGE_NAME,
131 p_api_name => l_api_name,
132 p_location => l_location
133 );
134 --}
135 --}
136 END update_row;
137 --
138 --
139 /*========================================================================
140
141 PROCEDURE NAME:
142
143 PURPOSE:
144
145 ========================================================================*/
146 PROCEDURE
147 process
148 (
149 p_api_version IN NUMBER,
150 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
151 p_commit IN VARCHAR2 := FND_API.G_FALSE,
152 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
153 x_return_status OUT NOCOPY VARCHAR2,
154 x_msg_count OUT NOCOPY NUMBER,
155 x_msg_data OUT NOCOPY VARCHAR2,
156 p_release_id IN vea_versions.release_id%TYPE,
157 p_version_id IN vea_versions.version_id%TYPE,
158 p_layer_provider_code IN vea_versions.layer_provider_code%TYPE,
159 p_version_number IN vea_versions.version_number%TYPE,
160 p_description IN vea_versions.description%TYPE
161 )
162 IS
163 --{
164 l_api_name CONSTANT VARCHAR2(30) := 'process';
165 l_api_version CONSTANT NUMBER := 1.0;
166 l_api_type CONSTANT VARCHAR2(3) := vea_tpa_util_pvt.G_PUBLIC_API;
167 --
168 --
169 l_location VARCHAR2(32767);
170 l_savepoint_name VARCHAR2(30);
171 l_layer_id vea_layers.layer_id%TYPE;
172 l_release_id vea_versions.release_id%TYPE;
173 l_version_id vea_versions.version_id%TYPE;
174 --
175 --
176 CURSOR layer_cur
177 (
178 p_release_id IN vea_versions.release_id%TYPE,
179 p_version_id IN vea_versions.version_id%TYPE,
180 p_version_number IN vea_versions.version_number%TYPE,
181 p_layer_provider_code IN vea_versions.layer_provider_code%TYPE
182 )
183 IS
184 SELECT 1 layer_id,
185 version_id
186 FROM vea_versions
187 WHERE layer_provider_code = p_layer_provider_code
188 AND release_id = p_release_id
189 AND version_id = p_version_id
190 AND version_number = p_version_number;
191 --
192 --
193 --}
194 BEGIN
195 --{
196 l_location := '0010';
197 --
198 IF NOT( vea_tpa_util_pvt.is_vea_installed() )
199 THEN
200 RETURN;
201 END IF;
202 --
203 --
204 -- Standard API Header
205 --
206 l_location := '0020';
207 --
208 vea_tpa_util_pvt.api_header
209 (
210 p_package_name => G_PACKAGE_NAME,
211 p_api_name => l_api_name,
212 p_api_type => l_api_type,
213 p_api_current_version => l_api_version,
214 p_api_caller_version => p_api_version,
215 p_init_msg_list => p_init_msg_list,
216 x_savepoint_name => l_savepoint_name,
217 x_api_return_status => x_return_status
218 );
219 --
220 --
221 --{ API Body
222 --
223 --
224 l_location := '0030';
225 --
226 l_layer_id := NULL;
227 l_version_id := p_version_id;
228 --
229 --
230 IF (VEA_TPA_UTIL_PVT.isLayerMergeOn) THEN
231 --{
232 l_release_id := nvl(vea_release_details_sv.g_release_id,p_release_id);
233 --}
234 ELSE
235 --{
236 l_release_id := p_release_id;
237 --}
238 END IF;
239 --
240 --
241 l_location := '0040';
242 --
243 FOR layer_rec IN layer_cur
244 (
245 p_release_id => l_release_id,
246 p_version_id => p_version_id,
247 p_version_number => p_version_number,
248 p_layer_provider_code => p_layer_provider_code
249 )
250 LOOP
251 --{
252 l_location := '0050';
253 --
254 l_layer_id := layer_rec.layer_id;
255 l_version_id := layer_rec.version_id;
256 --}
257 END LOOP;
258 --
259 --
260 l_location := '0060';
261 --
262 IF l_layer_id IS NULL
263 THEN
264 --{
265 l_location := '0070';
266 --
267 insert_row
268 (
269 p_layer_provider_code => p_layer_provider_code,
270 p_release_id => l_release_id,
271 p_version_id => l_version_id,
272 p_version_number => p_version_number,
273 p_description => p_description
274 );
275 --}
276 ELSE
277 --{
278 l_location := '0080';
279 --
280 update_row
281 (
282 p_layer_provider_code => p_layer_provider_code,
283 p_release_id => l_release_id,
284 p_version_id => l_version_id,
285 p_version_number => p_version_number,
286 p_description => p_description
287 );
288 --}
289 END IF;
290 --
291 --
292 --} API Body
293 --
294 --
295 -- Standard API Footer
296 --
297 l_location := '0090';
298 --
299 vea_tpa_util_pvt.api_footer
300 (
301 p_commit => p_commit,
302 x_msg_count => x_msg_count,
303 x_msg_data => x_msg_data
304 );
305 --}
306 EXCEPTION
307 --{
308 WHEN FND_API.G_EXC_ERROR
309 THEN
310 --{
311 --RAISE;
312 vea_tpa_util_pvt.handle_error
313 (
314 p_error_type => vea_tpa_util_pvt.G_ERROR,
315 p_savepoint_name => l_savepoint_name,
316 p_package_name => G_PACKAGE_NAME,
317 p_api_name => l_api_name,
318 p_location => l_location,
319 x_msg_count => x_msg_count,
320 x_msg_data => x_msg_data,
321 x_api_return_status => x_return_status
322 );
323 --}
324 WHEN FND_API.G_EXC_UNEXPECTED_ERROR
325 THEN
326 --{
327 --RAISE;
328 vea_tpa_util_pvt.handle_error
329 (
330 p_error_type => vea_tpa_util_pvt.G_UNEXPECTED_ERROR,
331 p_savepoint_name => l_savepoint_name,
332 p_package_name => G_PACKAGE_NAME,
333 p_api_name => l_api_name,
334 p_location => l_location,
335 x_msg_count => x_msg_count,
336 x_msg_data => x_msg_data,
337 x_api_return_status => x_return_status
338 );
339 --}
340 WHEN OTHERS
341 THEN
342 --{
343 --RAISE;
344 vea_tpa_util_pvt.handle_error
345 (
346 p_error_type => vea_tpa_util_pvt.G_OTHER_ERROR,
347 p_savepoint_name => l_savepoint_name,
348 p_package_name => G_PACKAGE_NAME,
349 p_api_name => l_api_name,
350 p_location => l_location,
351 x_msg_count => x_msg_count,
352 x_msg_data => x_msg_data,
353 x_api_return_status => x_return_status
354 );
355 --}
356 --}
357 END process;
358 --}
359 END VEA_VERSIONS_SV;