[Home] [Help]
PACKAGE BODY: APPS.OKL_STREAM_GENERATOR_PUB
Source
1 PACKAGE BODY okl_stream_generator_pub AS
2 /* $Header: OKLPSGPB.pls 115.9 2003/10/15 21:36:44 ssiruvol noship $ */
3
4 PROCEDURE generate_streams( p_api_version IN NUMBER,
5 p_init_msg_list IN VARCHAR2,
6 p_khr_id IN NUMBER,
7 p_compute_rates IN VARCHAR2 DEFAULT OKL_API.G_TRUE,
8 p_generation_type IN VARCHAR2 DEFAULT 'FULL',
9 p_reporting_book_class IN VARCHAR2 DEFAULT NULL,
10 x_contract_rates OUT NOCOPY OKL_STREAM_GENERATOR_PVT.rate_rec_type,
11 x_return_status OUT NOCOPY VARCHAR2,
12 x_msg_count OUT NOCOPY NUMBER,
13 x_msg_data OUT NOCOPY VARCHAR2) IS
14
15 l_api_name CONSTANT VARCHAR2(30) := 'generate_streams';
16 lx_return_status VARCHAR2(1);
17
18 BEGIN
19
20 lx_return_status := okl_api.start_activity(p_api_name => l_api_name,
21 p_pkg_name => G_PKG_NAME,
22 p_init_msg_list => p_init_msg_list,
23 l_api_version => G_API_VERSION,
24 p_api_version => p_api_version,
25 p_api_type => G_API_TYPE,
26 x_return_status => lx_return_status);
27
28 IF lx_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
29 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
30 ELSIF lx_return_status = OKL_API.G_RET_STS_ERROR THEN
31 RAISE OKL_API.G_EXCEPTION_ERROR;
32 END IF;
33
34
35 -- call to PVT API
36 okl_stream_generator_pvt.generate_streams( p_api_version => G_API_VERSION,
37 p_init_msg_list => G_FALSE,
38 p_khr_id => p_khr_id,
39 p_compute_rates => p_compute_rates,
40 p_generation_type => p_generation_type,
41 p_reporting_book_class => p_reporting_book_class,
42 x_contract_rates => x_contract_rates,
43 x_return_status => lx_return_status,
44 x_msg_count => x_msg_count,
45 x_msg_data => x_msg_data);
46
47 IF lx_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
48 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
49 ELSIF lx_return_status = OKL_API.G_RET_STS_ERROR THEN
50 RAISE OKL_API.G_EXCEPTION_ERROR;
51 END IF;
52
53 okl_api.end_activity(x_msg_count => x_msg_count,
54 x_msg_data => x_msg_data);
55
56 x_return_status := lx_return_status;
57
58
59 EXCEPTION
60
61 WHEN OKL_API.G_EXCEPTION_ERROR THEN
62 x_return_status := okl_api.handle_exceptions(p_api_name => l_api_name,
63 p_pkg_name => G_PKG_NAME,
64 p_exc_name => G_EXC_NAME_ERROR,
65 x_msg_count => x_msg_count,
66 x_msg_data => x_msg_data,
67 p_api_type => G_API_TYPE);
68
69 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
70 x_return_status := okl_api.handle_exceptions(p_api_name => l_api_name,
71 p_pkg_name => G_PKG_NAME,
72 p_exc_name => G_EXC_NAME_UNEXP_ERROR,
73 x_msg_count => x_msg_count,
74 x_msg_data => x_msg_data,
75 p_api_type => G_API_TYPE);
76
77 WHEN OTHERS THEN
78 x_return_status := okl_api.handle_exceptions(p_api_name => l_api_name,
79 p_pkg_name => G_PKG_NAME,
80 p_exc_name => 'OTHERS',
81 x_msg_count => x_msg_count,
82 x_msg_data => x_msg_data,
83 p_api_type => G_API_TYPE);
84 END generate_streams;
85
86
87 PROCEDURE generate_streams( p_api_version IN NUMBER,
88 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
89 p_khr_id IN NUMBER,
90 p_compute_irr IN VARCHAR2 DEFAULT OKL_API.G_TRUE,
91 p_generation_type IN VARCHAR2 DEFAULT 'FULL',
92 p_reporting_book_class IN VARCHAR2 DEFAULT NULL,
93 x_pre_tax_irr OUT NOCOPY NUMBER,
94 x_return_status OUT NOCOPY VARCHAR2,
95 x_msg_count OUT NOCOPY NUMBER,
96 x_msg_data OUT NOCOPY VARCHAR2) IS
97
98 l_api_name CONSTANT VARCHAR2(30) := 'generate_streams';
99 lx_return_status VARCHAR2(1);
100
101 BEGIN
102
103 lx_return_status := okl_api.start_activity(p_api_name => l_api_name,
104 p_pkg_name => G_PKG_NAME,
105 p_init_msg_list => p_init_msg_list,
106 l_api_version => G_API_VERSION,
107 p_api_version => p_api_version,
108 p_api_type => G_API_TYPE,
109 x_return_status => lx_return_status);
110
111 IF lx_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
112 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
113 ELSIF lx_return_status = OKL_API.G_RET_STS_ERROR THEN
114 RAISE OKL_API.G_EXCEPTION_ERROR;
115 END IF;
116
117 -- call to PVT API
118 okl_stream_generator_pvt.generate_streams( p_api_version => G_API_VERSION,
119 p_init_msg_list => G_FALSE,
120 p_khr_id => p_khr_id,
121 p_compute_irr => p_compute_irr,
122 p_generation_type => p_generation_type,
123 p_reporting_book_class => p_reporting_book_class,
124 x_pre_tax_irr => x_pre_tax_irr,
125 x_return_status => lx_return_status,
126 x_msg_count => x_msg_count,
127 x_msg_data => x_msg_data);
128
129 IF lx_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
130 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
131 ELSIF lx_return_status = OKL_API.G_RET_STS_ERROR THEN
132 RAISE OKL_API.G_EXCEPTION_ERROR;
133 END IF;
134
135 okl_api.end_activity(x_msg_count => x_msg_count,
136 x_msg_data => x_msg_data);
137
138 x_return_status := lx_return_status;
139
140
141 EXCEPTION
142
143 WHEN OKL_API.G_EXCEPTION_ERROR THEN
144 x_return_status := okl_api.handle_exceptions(p_api_name => l_api_name,
145 p_pkg_name => G_PKG_NAME,
146 p_exc_name => G_EXC_NAME_ERROR,
147 x_msg_count => x_msg_count,
148 x_msg_data => x_msg_data,
149 p_api_type => G_API_TYPE);
150
151 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
152 x_return_status := okl_api.handle_exceptions(p_api_name => l_api_name,
153 p_pkg_name => G_PKG_NAME,
154 p_exc_name => G_EXC_NAME_UNEXP_ERROR,
155 x_msg_count => x_msg_count,
156 x_msg_data => x_msg_data,
157 p_api_type => G_API_TYPE);
158
159 WHEN OTHERS THEN
160 x_return_status := okl_api.handle_exceptions(p_api_name => l_api_name,
161 p_pkg_name => G_PKG_NAME,
162 p_exc_name => 'OTHERS',
163 x_msg_count => x_msg_count,
164 x_msg_data => x_msg_data,
165 p_api_type => G_API_TYPE);
166 END generate_streams;
167
168 PROCEDURE GEN_VAR_INT_SCHEDULE( p_api_version IN NUMBER,
169 p_init_msg_list IN VARCHAR2,
170 p_khr_id IN NUMBER,
171 p_purpose_code IN VARCHAR2,
172 x_return_status OUT NOCOPY VARCHAR2,
173 x_msg_count OUT NOCOPY NUMBER,
174 x_msg_data OUT NOCOPY VARCHAR2) IS
175
176 BEGIN
177
178 OKL_STREAM_GENERATOR_PVT.GEN_VAR_INT_SCHEDULE(
179 p_api_version => p_api_version,
180 p_init_msg_list => p_init_msg_list,
181 p_khr_id => p_khr_id,
182 p_purpose_code => p_purpose_code,
183 x_return_status => x_return_status,
184 x_msg_count => x_msg_count,
185 x_msg_data => x_msg_data);
186
187 END GEN_VAR_INT_SCHEDULE;
188
189 END okl_stream_generator_pub;