DBA Data[Home] [Help]

PACKAGE BODY: APPS.VEA_RELEASE_DETAILS_SV

Source


1 PACKAGE BODY VEA_RELEASE_DETAILS_SV as
2 /* $Header: VEAVARDB.pls 115.9 2004/07/27 00:08:16 rvishnuv ship $      */
3 --{
4     /*======================  vea_release_details_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_RELEASE_DETAILS_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_release_details.layer_provider_code%TYPE,
31           p_release_id              IN     vea_release_details.release_id%TYPE,
32           p_file_name               IN     vea_release_details.file_name%TYPE,
33           p_version_number          IN     vea_release_details.version_number%TYPE,
34           p_application_short_name  IN     vea_release_details.application_short_name%TYPE,
35           p_description             IN     vea_release_details.description%TYPE,
36           p_aru_number              IN     vea_release_details.aru_number%TYPE,
37           p_bug_number              IN     vea_release_details.bug_number%TYPE,
38           p_tp_layer_id             IN     vea_release_details.tp_layer_id%TYPE,
39           p_file_path               IN     vea_release_details.file_path%TYPE
40         )
41     IS
42     --{
43         l_api_name            CONSTANT VARCHAR2(30) := 'insert_row';
44         l_location            VARCHAR2(32767);
45 	--
46 	--
47         l_user_id       NUMBER := vea_tpa_util_pvt.get_user_id;
48         l_login_id      NUMBER := vea_tpa_util_pvt.get_login_id;
49     --}
50     BEGIN
51     --{
52 	l_location := '0010';
53 	--
54         INSERT INTO vea_release_details
55           (
56             layer_provider_code, release_id,
57             file_name, version_number,
58             application_short_name,
59             description,
60 	    aru_number, bug_number,
61 	    tp_layer_id, file_path,
62             created_by, creation_date,
63             last_updated_by, last_update_date,
64             last_update_login
65           )
66         VALUES
67           (
68             p_layer_provider_code, p_release_id,
69             p_file_name, p_version_number,
70             p_application_short_name,
71             p_description,
72 	    p_aru_number, p_bug_number,
73 	    p_tp_layer_id, p_file_path,
74             l_user_id, SYSDATE,
75             l_user_id, SYSDATE,
76             l_login_id
77           );
78     --}
79     EXCEPTION
80     --{
81 	WHEN OTHERS
82 	THEN
83 	--{
84 	    vea_tpa_util_pvt.add_exc_message_and_raise
85 	      (
86 		p_package_name => G_PACKAGE_NAME,
87 		p_api_name     => l_api_name,
88 		p_location     => l_location
89 	      );
90 	--}
91     --}
92     END insert_row;
93     --
94     --
95     /*========================================================================
96 
97        PROCEDURE NAME:
98 
99        PURPOSE:
100 
101     ========================================================================*/
102     PROCEDURE
103       update_row
104         (
105           p_layer_provider_code     IN     vea_release_details.layer_provider_code%TYPE,
106           p_release_id              IN     vea_release_details.release_id%TYPE,
107           p_file_name               IN     vea_release_details.file_name%TYPE,
108           p_version_number          IN     vea_release_details.version_number%TYPE,
109           p_application_short_name  IN     vea_release_details.application_short_name%TYPE,
110           p_description             IN     vea_release_details.description%TYPE,
111           p_aru_number              IN     vea_release_details.aru_number%TYPE,
112           p_bug_number              IN     vea_release_details.bug_number%TYPE,
113           p_tp_layer_id             IN     vea_release_details.tp_layer_id%TYPE,
114           p_file_path               IN     vea_release_details.file_path%TYPE
115         )
116     IS
117     --{
118         l_api_name            CONSTANT VARCHAR2(30) := 'update_row';
119         l_location            VARCHAR2(32767);
120 	--
121 	--
122         l_user_id       NUMBER := vea_tpa_util_pvt.get_user_id;
123         l_login_id      NUMBER := vea_tpa_util_pvt.get_login_id;
124     --}
125     BEGIN
126     --{
127 	l_location := '0010';
128 	--
129         UPDATE vea_release_details
130         SET    version_number               = p_version_number,
131                description                  = p_description,
132                aru_number                   = p_aru_number,
133                bug_number                   = p_bug_number,
134                tp_layer_id                  = p_tp_layer_id,
135                file_path                    = p_file_path,
136                last_updated_by              = l_user_id,
137                last_update_date             = SYSDATE,
138                last_update_login            = l_login_id
139         WHERE  layer_provider_code          = p_layer_provider_code
140         AND    release_id                   = p_release_id
141         AND    file_name                    = p_file_name
142         AND    application_short_name       = p_application_short_name;
143     --}
144     EXCEPTION
145     --{
146 	WHEN OTHERS
147 	THEN
148 	--{
149 	    vea_tpa_util_pvt.add_exc_message_and_raise
150 	      (
151 		p_package_name => G_PACKAGE_NAME,
152 		p_api_name     => l_api_name,
153 		p_location     => l_location
154 	      );
155 	--}
156     --}
157     END update_row;
158     --
159     --
160     /*========================================================================
161 
162        PROCEDURE NAME:
163 
164        PURPOSE:
165 
166     ========================================================================*/
167     PROCEDURE
168       process
169         (
170           p_api_version                IN     NUMBER,
171           p_init_msg_list              IN     VARCHAR2 := FND_API.G_FALSE,
172           p_commit                     IN     VARCHAR2 := FND_API.G_FALSE,
173           p_validation_level           IN     NUMBER   := FND_API.G_VALID_LEVEL_FULL,
174           x_return_status              OUT NOCOPY     VARCHAR2,
175           x_msg_count                  OUT NOCOPY     NUMBER,
176           x_msg_data                   OUT NOCOPY     VARCHAR2,
177           p_layer_provider_code        IN     vea_release_details.layer_provider_code%TYPE,
178           p_release_id                 IN     vea_release_details.release_id%TYPE,
179           p_file_name                  IN     vea_release_details.file_name%TYPE,
180           p_version_number             IN     vea_release_details.version_number%TYPE,
181           p_application_short_name     IN     vea_release_details.application_short_name%TYPE,
182           p_description                IN     vea_release_details.description%TYPE,
183           p_aru_number                 IN     vea_release_details.aru_number%TYPE,
184           p_bug_number                 IN     vea_release_details.bug_number%TYPE,
185           p_tp_layer_id                IN     vea_release_details.tp_layer_id%TYPE,
186           p_file_path                  IN     vea_release_details.file_path%TYPE
187         )
188     IS
189     --{
190         l_api_name            CONSTANT VARCHAR2(30) := 'process';
191         l_api_version         CONSTANT NUMBER       := 1.0;
192         l_api_type            CONSTANT VARCHAR2(3)  := vea_tpa_util_pvt.G_PUBLIC_API;
193         --
194         --
195         l_location            VARCHAR2(32767);
196         l_savepoint_name      VARCHAR2(30);
197         l_layer_id     vea_layers.layer_id%TYPE;
198         l_tp_layer_id     vea_tp_layers.tp_layer_id%TYPE;
199         l_release_id      vea_release_details.release_id%TYPE;
200         --
201         --
202         CURSOR layer_cur
203                  (
204                    p_layer_provider_code     IN  vea_release_details.layer_provider_code%TYPE,
205                    p_release_id              IN  vea_release_details.release_id%TYPE,
206                    p_file_name               IN  vea_release_details.file_name%TYPE,
207                    p_application_short_name  IN  vea_release_details.application_short_name%TYPE,
208                    p_tp_layer_id             IN  vea_tp_layers.tp_layer_id%TYPE
209                  )
210         IS
211           SELECT 1 layer_id,
212                  release_id
213           FROM   vea_release_details
214           WHERE  layer_provider_code     = p_layer_provider_code
215           AND    release_id              = p_release_id
216           --AND    tp_layer_id              = p_tp_layer_id
217           AND    file_name               = p_file_name
218           AND    application_short_name  = p_application_short_name;
219         --
220         --
221     --}
222     BEGIN
223     --{
224 	l_location := '0010';
225 	--
226 	IF NOT( vea_tpa_util_pvt.is_vea_installed() )
227 	THEN
228 	   RETURN;
229 	END IF;
230 	--
231 	--
232         -- Standard API Header
233         --
234 	l_location := '0020';
235 	--
236         vea_tpa_util_pvt.api_header
237           (
238             p_package_name                => G_PACKAGE_NAME,
239             p_api_name                    => l_api_name,
240             p_api_type                    => l_api_type,
241             p_api_current_version         => l_api_version,
242             p_api_caller_version          => p_api_version,
243             p_init_msg_list               => p_init_msg_list,
244             x_savepoint_name              => l_savepoint_name,
245             x_api_return_status           => x_return_status
246           );
247         --
248         --
249         --{ API Body
250         --
251         --
252 	l_location := '0030';
253 	--
254         l_layer_id := NULL;
255         l_release_id := p_release_id;
256         g_release_id := p_release_id;
257 	--
258         IF (VEA_TPA_UTIL_PVT.isLayerMergeOn) THEN
259         --{
260           l_tp_layer_id := nvl(vea_tp_layers_sv.g_tp_layer_id,p_tp_layer_id);
261         --}
262         ELSE
263         --{
264           l_tp_layer_id := p_tp_layer_id;
265          --}
266         END IF;
267 	--
268         --
269         --
270 	l_location := '0040';
271 	--
272         FOR layer_rec IN layer_cur
273                                   (
274                                     p_layer_provider_code     => p_layer_provider_code,
275                                     p_release_id              => p_release_id,
276                                     p_file_name               => p_file_name,
277                                     p_application_short_name  => p_application_short_name,
278                                     p_tp_layer_id             => l_tp_layer_id
279                                   )
280         LOOP
281         --{
282 	    l_location := '0050';
283 	    --
284             l_layer_id := layer_rec.layer_id;
285             l_release_id := layer_rec.release_id;
286             g_release_id := layer_rec.release_id;
287         --}
288         END LOOP;
289         --
290         --
291 	l_location := '0060';
292 	--
293         IF l_layer_id IS NULL
294         THEN
295         --{
296 	    l_location := '0070';
297 	    --
298             insert_row
299               (
300                 p_layer_provider_code     => p_layer_provider_code,
301                 p_release_id              => l_release_id,
302                 p_file_name               => p_file_name,
303                 p_version_number          => p_version_number,
304                 p_application_short_name  => p_application_short_name,
305                 p_description             => p_description,
306                 p_aru_number              => p_aru_number,
307                 p_bug_number              => p_bug_number,
308                 p_tp_layer_id             => l_tp_layer_id,
309                 p_file_path               => p_file_path
310               );
311         --}
312         ELSE
313         --{
314 	    l_location := '0080';
315 	    --
316             update_row
317               (
318                 p_layer_provider_code     => p_layer_provider_code,
319                 p_release_id              => l_release_id,
320                 p_file_name               => p_file_name,
321                 p_version_number          => p_version_number,
322                 p_application_short_name  => p_application_short_name,
323                 p_description             => p_description,
324                 p_aru_number              => p_aru_number,
325                 p_bug_number              => p_bug_number,
326                 p_tp_layer_id             => l_tp_layer_id,
327                 p_file_path               => p_file_path
328               );
329         --}
330         END IF;
331         --
332         --
333         --} API Body
334         --
335         --
336         -- Standard  API Footer
337         --
338 	l_location := '0090';
339 	--
340         vea_tpa_util_pvt.api_footer
341           (
342             p_commit                      => p_commit,
343             x_msg_count                   => x_msg_count,
344             x_msg_data                    => x_msg_data
345           );
346     --}
347     EXCEPTION
348     --{
349         WHEN FND_API.G_EXC_ERROR
350         THEN
351         --{
352             --RAISE;
353             vea_tpa_util_pvt.handle_error
354               (
355                 p_error_type                  => vea_tpa_util_pvt.G_ERROR,
356                 p_savepoint_name              => l_savepoint_name,
357                 p_package_name                => G_PACKAGE_NAME,
358                 p_api_name                    => l_api_name,
359 	        p_location                    => l_location,
360                 x_msg_count                   => x_msg_count,
361                 x_msg_data                    => x_msg_data,
362                 x_api_return_status           => x_return_status
363               );
364         --}
365         WHEN FND_API.G_EXC_UNEXPECTED_ERROR
366         THEN
367         --{
368             --RAISE;
369             vea_tpa_util_pvt.handle_error
370               (
371                 p_error_type                  => vea_tpa_util_pvt.G_UNEXPECTED_ERROR,
372                 p_savepoint_name              => l_savepoint_name,
373                 p_package_name                => G_PACKAGE_NAME,
374                 p_api_name                    => l_api_name,
375 	        p_location                    => l_location,
376                 x_msg_count                   => x_msg_count,
377                 x_msg_data                    => x_msg_data,
378                 x_api_return_status           => x_return_status
379               );
380         --}
381         WHEN OTHERS
382         THEN
383         --{
384             --RAISE;
385             vea_tpa_util_pvt.handle_error
386               (
387                 p_error_type                  => vea_tpa_util_pvt.G_OTHER_ERROR,
388                 p_savepoint_name              => l_savepoint_name,
389                 p_package_name                => G_PACKAGE_NAME,
390                 p_api_name                    => l_api_name,
391 	        p_location                    => l_location,
392                 x_msg_count                   => x_msg_count,
393                 x_msg_data                    => x_msg_data,
394                 x_api_return_status           => x_return_status
395               );
396         --}
397     --}
398     END process;
399 --}
400 END VEA_RELEASE_DETAILS_SV;