[Home] [Help]
PACKAGE BODY: APPS.OKL_REV_LOSS_PROV_PUB
Source
1 PACKAGE BODY OKL_REV_LOSS_PROV_PUB AS
2 /* $Header: OKLPRPVB.pls 120.2 2005/10/30 03:34:26 appldev noship $ */
3
4 -- this procedure reverses loss provision transactions
5 PROCEDURE REVERSE_LOSS_PROVISIONS(
6 p_api_version IN NUMBER
7 ,p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE
8 ,x_msg_count OUT NOCOPY NUMBER
9 ,x_msg_data OUT NOCOPY VARCHAR2
10 ,x_return_status OUT NOCOPY VARCHAR2
11 ,p_lprv_rec IN lprv_rec_type)
12 IS
13
14 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
15 l_api_name CONSTANT VARCHAR2(30) := 'REVERSE_LOSS_PROVISIONS';
16 l_lpvv_rec lprv_rec_type := p_lprv_rec;
17 BEGIN
18 SAVEPOINT rev_loss_prov;
19
20 -- customer pre-processing
21
22
23
24 -- CALL THE MAIN PROCEDURE
25 okl_rev_loss_prov_pvt.REVERSE_LOSS_PROVISIONS(
26 p_api_version => p_api_version
27 ,p_init_msg_list => p_init_msg_list
28 ,x_msg_count => x_msg_count
29 ,x_msg_data => x_msg_data
30 ,x_return_status => x_return_status
31 ,p_lprv_rec => l_lpvv_rec);
32
33 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
34 RAISE FND_API.G_EXC_ERROR;
35 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
36 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
37 END IF;
38
39 -- customer post-processing
40
41
42 EXCEPTION
43 WHEN OKL_API.G_EXCEPTION_ERROR THEN
44 ROLLBACK TO rev_loss_prov;
45 x_return_status := FND_API.G_RET_STS_ERROR;
46
47 FND_MSG_PUB.Count_and_get(p_encoded => OKL_API.G_FALSE
48 ,p_count => x_msg_count
49 ,p_data => x_msg_data);
50
51 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
52 ROLLBACK TO rev_loss_prov;
53 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
54 FND_MSG_PUB.Count_and_get(p_encoded => OKL_API.G_FALSE
55 ,p_count => x_msg_count
56 ,p_data => x_msg_data);
57
58 WHEN OTHERS THEN
59 ROLLBACK TO rev_loss_prov;
60 FND_MSG_PUB.ADD_EXC_MSG('OKL_REV_LOSS_PROV_PUB','REVERSE_LOSS_PROVISIONS');
61 FND_MSG_PUB.Count_and_get(p_encoded => OKL_API.G_FALSE
62 ,p_count => x_msg_count
63 ,p_data => x_msg_data);
64 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
65 END REVERSE_LOSS_PROVISIONS;
66
67 PROCEDURE REVERSE_LOSS_PROVISIONS(
68 p_api_version IN NUMBER
69 ,p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE
70 ,x_msg_count OUT NOCOPY NUMBER
71 ,x_msg_data OUT NOCOPY VARCHAR2
72 ,x_return_status OUT NOCOPY VARCHAR2
73 ,p_lprv_tbl IN lprv_tbl_type)
74 IS
75
76 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
77 l_api_name CONSTANT VARCHAR2(30) := 'REVERSE_LOSS_PROVISIONS';
78 l_lprv_tbl lprv_tbl_type := p_lprv_tbl;
79 BEGIN
80 SAVEPOINT rev_loss_prov;
81
82 -- customer pre-processing
83
84
85
86 -- CALL THE MAIN PROCEDURE
87 okl_rev_loss_prov_pvt.REVERSE_LOSS_PROVISIONS(
88 p_api_version => p_api_version
89 ,p_init_msg_list => p_init_msg_list
90 ,x_msg_count => x_msg_count
91 ,x_msg_data => x_msg_data
92 ,x_return_status => x_return_status
93 ,p_lprv_tbl => l_lprv_tbl);
94
95 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
96 RAISE FND_API.G_EXC_ERROR;
97 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
98 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
99 END IF;
100
101 -- customer post-processing
102
103
104 EXCEPTION
105 WHEN OKL_API.G_EXCEPTION_ERROR THEN
106 ROLLBACK TO rev_loss_prov;
107 x_return_status := FND_API.G_RET_STS_ERROR;
108
109 FND_MSG_PUB.Count_and_get(p_encoded => OKL_API.G_FALSE
110 ,p_count => x_msg_count
111 ,p_data => x_msg_data);
112
113 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
114 ROLLBACK TO rev_loss_prov;
115 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
116 FND_MSG_PUB.Count_and_get(p_encoded => OKL_API.G_FALSE
117 ,p_count => x_msg_count
118 ,p_data => x_msg_data);
119
120 WHEN OTHERS THEN
121 ROLLBACK TO rev_loss_prov;
122 FND_MSG_PUB.ADD_EXC_MSG('OKL_REV_LOSS_PROV_PUB','REVERSE_LOSS_PROVISIONS');
123 FND_MSG_PUB.Count_and_get(p_encoded => OKL_API.G_FALSE
124 ,p_count => x_msg_count
125 ,p_data => x_msg_data);
126 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
127 END REVERSE_LOSS_PROVISIONS;
128
129 End OKL_REV_LOSS_PROV_PUB;