DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_AM_RV_WRITEDOWN_PUB

Source


1 Package Body OKL_AM_RV_WRITEDOWN_PUB AS
2 /* $Header: OKLPRVWB.pls 115.7 2004/04/13 11:04:07 rnaik noship $ */
3 
4    PROCEDURE create_residual_value_trx( p_api_version           IN   NUMBER,
5                                   p_init_msg_list          IN     VARCHAR2 DEFAULT OKC_API.G_FALSE,
6                                   x_return_status          OUT    NOCOPY VARCHAR2,
7                                   x_msg_count              OUT    NOCOPY NUMBER,
8                                   x_msg_data               OUT    NOCOPY VARCHAR2,
9                                   p_assets_tbl             IN     assets_tbl_type,
10                                   x_residual_value_status  OUT    NOCOPY  VARCHAR2) IS -- this flag is redundant,
11                                                                                   -- we are keeping it for the time
12                                                                                   -- being to avoid
13                                                                                   -- rosetta regeneration
14 
15     l_api_version NUMBER ;
16     l_init_msg_list VARCHAR2(1) ;
17     l_return_status VARCHAR2(1);
18     l_msg_count NUMBER ;
19     l_msg_data VARCHAR2(2000);
20 
21     lp_assets_tbl  assets_tbl_type;
22 
23 
24 
25 BEGIN
26 SAVEPOINT trx_create_residual_value_trx;
27 
28 l_api_version := p_api_version ;
29 l_init_msg_list := p_init_msg_list ;
30 l_return_status := x_return_status ;
31 
32 lp_assets_tbl := p_assets_tbl;
33 
34 l_msg_count := x_msg_count ;
35 l_msg_data := x_msg_data ;
36 
37 
38 
39 
40 
41 -- call the insert of pvt
42 
43 	OKL_AM_RV_WRITEDOWN_PVT.create_residual_value_trx(   p_api_version          => l_api_version,
44                                                         p_init_msg_list         => l_init_msg_list,
45                                                         x_return_status         => l_return_status ,
46                                                         x_msg_count             => l_msg_count,
47                                                         x_msg_data              => l_msg_data,
48                                                         p_assets_tbl            => lp_assets_tbl,
49                                                         x_residual_value_status  => x_residual_value_status);
50 
51 
52 
53 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
54   	 RAISE FND_API.G_EXC_ERROR;
55 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
56 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
57 END IF;
58 
59 
60 
61 
62 
63 --Assign value to OUT variables
64 
65 x_return_status := l_return_status ;
66 x_msg_count := l_msg_count ;
67 x_msg_data := l_msg_data ;
68 
69 EXCEPTION
70 
71     WHEN FND_API.G_EXC_ERROR THEN
72       ROLLBACK TO trx_create_residual_value_trx;
73       x_return_status := FND_API.G_RET_STS_ERROR;
74       x_msg_count := l_msg_count ;
75       x_msg_data := l_msg_data ;
76       FND_MSG_PUB.count_and_get(
77              p_count   => x_msg_count
78             ,p_data    => x_msg_data);
79     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
80       ROLLBACK TO trx_create_residual_value_trx;
81       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
82       x_msg_count := l_msg_count ;
83       x_msg_data := l_msg_data ;
84       FND_MSG_PUB.count_and_get(
85              p_count   => x_msg_count
86             ,p_data    => x_msg_data);
87     WHEN OTHERS THEN
88       ROLLBACK TO trx_create_residual_value_trx;
89       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
90       x_msg_count := l_msg_count ;
91       x_msg_data := l_msg_data ;
92       FND_MSG_PUB.ADD_EXC_MSG('OKL_AM_RV_WRITEDOWN_PUB','create_residual_value_trx');
93       FND_MSG_PUB.count_and_get(
94              p_count   => x_msg_count
95             ,p_data    => x_msg_data);
96 END create_residual_value_trx;
97 
98 
99 
100 
101 END OKL_AM_RV_WRITEDOWN_PUB;