[Home] [Help]
PACKAGE BODY: APPS.OKL_GENERATE_STREAMS_PVT
Source
1 PACKAGE BODY Okl_Generate_Streams_Pvt AS
2 /* $Header: OKLRGSMB.pls 120.5 2005/10/30 04:34:16 appldev noship $ */
3
4 --| : 10-08-04 GKADARKA -- Fixes for bug 3909261 -Start |
5 G_WF_EVT_KHR_GEN_STRMS CONSTANT VARCHAR2(61) := 'oracle.apps.okl.la.lease_contract.stream_generation_requested';
6 G_WF_ITM_CONTRACT_ID CONSTANT VARCHAR2(15) := 'CONTRACT_ID';
7 G_WF_ITM_CONTRACT_PROCESS CONSTANT VARCHAR2(20) := 'CONTRACT_PROCESS';
8 --| : 10-08-04 GKADARKA -- Fixes for bug 3909261 -End |
9
10 ------------------------------------------------------------------------------
11 -- Procedure GENERATE_STREAMS
12 ------------------------------------------------------------------------------
13 PROCEDURE GENERATE_STREAMS(p_api_version IN NUMBER
14 ,p_init_msg_list IN VARCHAR2
15 ,p_khr_id IN NUMBER
16 ,p_generation_ctx_code IN VARCHAR2
17 ,x_trx_number OUT NOCOPY NUMBER
18 ,x_trx_status OUT NOCOPY VARCHAR2
19 ,x_return_status OUT NOCOPY VARCHAR2
20 ,x_msg_count OUT NOCOPY NUMBER
21 ,x_msg_data OUT NOCOPY VARCHAR2)
22 IS
23
24 l_api_name VARCHAR2(31) := 'GENERATE_STREAMS';
25 l_return_status VARCHAR2(1) := G_RET_STS_SUCCESS;
26 l_trx_status VARCHAR2(30);
27 l_skip_engine VARCHAR2(1) := G_FALSE;
28
29 --| : 10-08-04 GKADARKA -- Fixes for bug 3909261 -Start |
30
31 PROCEDURE raise_business_event(x_return_status OUT NOCOPY VARCHAR2) IS
32 l_process VARCHAR2(20);
33 l_parameter_list wf_parameter_list_t;
34
35 BEGIN
36
37 l_process := Okl_Lla_Util_Pvt.get_contract_process(p_khr_id);
38
39 wf_event.AddParameterToList(G_WF_ITM_CONTRACT_ID,p_khr_id,l_parameter_list);
40 wf_event.AddParameterToList(G_WF_ITM_CONTRACT_PROCESS,l_process,l_parameter_list);
41
42 OKL_WF_PVT.raise_event (p_api_version => p_api_version,
43 p_init_msg_list => p_init_msg_list,
44 x_return_status => x_return_status,
45 x_msg_count => x_msg_count,
46 x_msg_data => x_msg_data,
47 p_event_name => G_WF_EVT_KHR_GEN_STRMS,
48 p_parameters => l_parameter_list);
49
50
51
52 EXCEPTION
53 WHEN OTHERS THEN
54 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
55 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
56 END raise_business_event;
57
58 --| : 10-08-04 GKADARKA -- Fixes for bug 3909261 -End |
59
60 BEGIN
61
62 /*------------------------------------------------------------------------------------
63 NOTE: p_generation_ctx_code holds the LookUp Code for LookUp Type OKL_CONTRACT_PROCESS
64 -------------------------------------------------------------------------------------*/
65
66 IF(p_generation_ctx_code = G_ORP_CODE_AUTH) THEN
67 okl_la_stream_pub.generate_streams(p_api_version => p_api_version
68 ,p_init_msg_list => p_init_msg_list
69 ,p_chr_id => p_khr_id
70 ,p_generation_context => p_generation_ctx_code
71 ,p_skip_prc_engine => l_skip_engine
72 ,x_request_id => x_trx_number
73 ,x_trans_status => l_trx_status
74 ,x_return_status => l_return_status
75 ,x_msg_count => x_msg_count
76 ,x_msg_data => x_msg_data);
77 ELSIF(p_generation_ctx_code = G_ORP_CODE_QUOT) THEN
78 NULL;
79 ELSIF(p_generation_ctx_code = G_ORP_CODE_RBOK) THEN
80 NULL;
81 ELSIF(p_generation_ctx_code = G_ORP_CODE_TERM) THEN
82 NULL;
83 END IF;
84
85
86
87 /* For Testing Purposes only
88 OKL_CREATE_STREAMS_TEST.INVOKE_TEST_SCRIPT(
89 p_khr_id => p_khr_id,
90 x_return_status => l_return_status,
91 x_trans_id => x_trx_number,
92 x_trans_status => x_trx_status,
93 x_msg_count => x_msg_count,
94 x_msg_data => x_msg_data);
95 */
96
97 IF (l_return_status = G_RET_STS_ERROR) THEN
98 RAISE G_EXCEPTION_ERROR;
99 ELSIF (l_return_status = G_RET_STS_UNEXP_ERROR) THEN
100 RAISE G_EXCEPTION_UNEXPECTED_ERROR;
101 END IF;
102
103 x_return_status := l_return_status;
104 x_trx_status := OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING('OKL_SIF_STATUS', l_trx_status);
105
106 --| : 10-08-04 GKADARKA -- Fixes for bug 3909261 -Start |
107
108 raise_business_event(x_return_status => x_return_status);
109 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
110 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
111 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
112 RAISE OKL_API.G_EXCEPTION_ERROR;
113 END IF;
114
115 --| : 10-08-04 GKADARKA -- Fixes for bug 3909261 -End |
116 EXCEPTION
117
118 WHEN G_EXCEPTION_ERROR THEN
119 x_return_status := G_RET_STS_ERROR;
120 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
121 p_msg_name => G_UNEXPECTED_ERROR,
122 p_token1 => G_SQLCODE_TOKEN,
123 p_token1_value => SQLCODE,
124 p_token2 => G_SQLERRM_TOKEN,
125 p_token2_value => SQLERRM );
126 WHEN G_EXCEPTION_UNEXPECTED_ERROR THEN
127 x_return_status := G_RET_STS_UNEXP_ERROR;
128 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
129 p_msg_name => G_UNEXPECTED_ERROR,
130 p_token1 => G_SQLCODE_TOKEN,
131 p_token1_value => SQLCODE,
132 p_token2 => G_SQLERRM_TOKEN,
133 p_token2_value => SQLERRM );
134 WHEN OTHERS THEN
135 x_return_status := G_RET_STS_UNEXP_ERROR;
136 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
137 p_msg_name => G_UNEXPECTED_ERROR,
138 p_token1 => G_SQLCODE_TOKEN,
139 p_token1_value => SQLCODE,
140 p_token2 => G_SQLERRM_TOKEN,
141 p_token2_value => SQLERRM );
142
143 END GENERATE_STREAMS;
144
145
146 ------------------------------------------------------------------------------
147 -- Procedure POPULATE_HEADER_DATA
148 ------------------------------------------------------------------------------
149 PROCEDURE POPULATE_HEADER_DATA(p_api_version IN NUMBER
150 ,p_init_msg_list IN VARCHAR2
151 ,p_khr_id IN NUMBER
152 ,p_generation_ctx_code IN VARCHAR2
153 ,x_trx_number OUT NOCOPY NUMBER
154 ,x_return_status OUT NOCOPY VARCHAR2
155 ,x_msg_count OUT NOCOPY NUMBER
156 ,x_msg_data OUT NOCOPY VARCHAR2)
157 IS
158
159 l_api_name VARCHAR2(31) := 'POPULATE_HEADER_DATA';
160 l_return_status VARCHAR2(1) := G_RET_STS_SUCCESS;
161 l_skip_engine VARCHAR2(1) := G_TRUE;
162 l_trx_status VARCHAR2(30);
163
164 BEGIN
165
166 /*------------------------------------------------------------------------------------
167 NOTE: p_generation_ctx_code holds the LookUp Code for LookUp Type OKL_CONTRACT_PROCESS
168 -------------------------------------------------------------------------------------*/
169 --dbms_output.put_line('inside gen stream pvt' || l_return_status);
170 IF(p_generation_ctx_code = G_ORP_CODE_AUTH) THEN
171 --dbms_output.put_line('calling la strm pub' || l_return_status);
172 okl_la_stream_pub.generate_streams(p_api_version => p_api_version
173 ,p_init_msg_list => p_init_msg_list
174 ,p_chr_id => p_khr_id
175 ,p_generation_context => p_generation_ctx_code
176 ,p_skip_prc_engine => l_skip_engine
177 ,x_request_id => x_trx_number
178 ,x_trans_status => l_trx_status
179 ,x_return_status => l_return_status
180 ,x_msg_count => x_msg_count
181 ,x_msg_data => x_msg_data);
182 --dbms_output.put_line('back from la strm pub' || l_return_status);
183 NULL;
184 ELSIF(p_generation_ctx_code = G_ORP_CODE_QUOT) THEN
185 NULL;
186 ELSIF(p_generation_ctx_code = G_ORP_CODE_RBOK) THEN
187 NULL;
188 ELSIF(p_generation_ctx_code = G_ORP_CODE_TERM) THEN
189 NULL;
190 END IF;
191
192 IF (l_return_status = G_RET_STS_ERROR) THEN
193 RAISE G_EXCEPTION_ERROR;
194 ELSIF (l_return_status = G_RET_STS_UNEXP_ERROR) THEN
195 RAISE G_EXCEPTION_UNEXPECTED_ERROR;
196 END IF;
197
198 x_return_status := l_return_status;
199
200 EXCEPTION
201
202 WHEN G_EXCEPTION_ERROR THEN
203 --dbms_output.put_line('gen stream pvt error' || sqlcode || sqlerrm);
204 x_return_status := G_RET_STS_ERROR;
205 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
206 p_msg_name => G_UNEXPECTED_ERROR,
207 p_token1 => G_SQLCODE_TOKEN,
208 p_token1_value => SQLCODE,
209 p_token2 => G_SQLERRM_TOKEN,
210 p_token2_value => SQLERRM );
211 WHEN G_EXCEPTION_UNEXPECTED_ERROR THEN
212 --dbms_output.put_line('gen stream pvt UU' || sqlcode || sqlerrm);
213 x_return_status := G_RET_STS_UNEXP_ERROR;
214 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
215 p_msg_name => G_UNEXPECTED_ERROR,
216 p_token1 => G_SQLCODE_TOKEN,
217 p_token1_value => SQLCODE,
218 p_token2 => G_SQLERRM_TOKEN,
219 p_token2_value => SQLERRM );
220 WHEN OTHERS THEN
221 --dbms_output.put_line('gen stream pvt OO' || sqlcode || sqlerrm);
222 x_return_status := G_RET_STS_UNEXP_ERROR;
223 -- store SQL error message on message stack for caller
224 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
225 p_msg_name => G_UNEXPECTED_ERROR,
226 p_token1 => G_SQLCODE_TOKEN,
227 p_token1_value => SQLCODE,
228 p_token2 => G_SQLERRM_TOKEN,
229 p_token2_value => SQLERRM );
230 END POPULATE_HEADER_DATA;
231
232
233 ------------------------------------------------------------------------------
234 -- Procedure INVOKE_PRICING_ENGINE
235 ------------------------------------------------------------------------------
236 PROCEDURE INVOKE_PRICING_ENGINE(p_api_version IN NUMBER
237 ,p_init_msg_list IN VARCHAR2
238 ,p_trx_number IN NUMBER
239 ,x_trx_number OUT NOCOPY NUMBER
240 ,x_trx_status OUT NOCOPY VARCHAR2
241 ,x_return_status OUT NOCOPY VARCHAR2
242 ,x_msg_count OUT NOCOPY NUMBER
243 ,x_msg_data OUT NOCOPY VARCHAR2)
244 IS
245
246 -- mvasudev, 04/24/2002
247 CURSOR sif_csr(l_transaction_number NUMBER) IS
248 SELECT id, orp_code, deal_type, stream_interface_attribute04
249 FROM OKL_STREAM_INTERFACES
250 WHERE OKL_STREAM_INTERFACES.transaction_number = l_transaction_number;
251
252 --l_transaction_status_csr transaction_status_csr;
253 l_api_name VARCHAR2(31) := 'GENERATE_STREAMS';
254 l_return_status VARCHAR2(1) := G_RET_STS_SUCCESS;
255 lx_sif_vrec sifv_rec_type;
256 l_sif_vrec sifv_rec_type;
257
258 BEGIN
259
260 /*------------------------------------------------------------------------------------
261 NOTE: p_generation_ctx_code holds the LookUp Code for LookUp Type OKL_CONTRACT_PROCESS
262 -------------------------------------------------------------------------------------*/
263 FOR l_sif_csr IN sif_csr(p_trx_number)
264 LOOP
265 l_sif_vrec.id := l_sif_csr.id;
266 l_sif_vrec.orp_code := l_sif_csr.orp_code;
267 l_sif_vrec.deal_type := l_sif_csr.deal_type;
268
269 -- mvasudev, 04/24/2002
270 l_sif_vrec.stream_interface_attribute04 := l_sif_csr.stream_interface_attribute04;
271
272 END LOOP;
273 OKL_CREATE_STREAMS_PUB.INVOKE_PRICING_ENGINE(p_api_version => p_api_version
274 ,p_init_msg_list => p_init_msg_list
275 ,p_sifv_rec => l_sif_vrec
276 ,x_sifv_rec => lx_sif_vrec
277 ,x_return_status => l_return_status
278 ,x_msg_count => x_msg_count
279 ,x_msg_data => x_msg_data);
280
281 IF (l_return_status = G_RET_STS_ERROR) THEN
282 RAISE G_EXCEPTION_ERROR;
283 ELSIF (l_return_status = G_RET_STS_UNEXP_ERROR) THEN
284 RAISE G_EXCEPTION_UNEXPECTED_ERROR;
285 END IF;
286 x_trx_number := lx_sif_vrec.transaction_number;
287 x_trx_status := lx_sif_vrec.sis_code;
288 x_return_status := l_return_status;
289 EXCEPTION
290
291 WHEN G_EXCEPTION_ERROR THEN
292 x_return_status := G_RET_STS_ERROR;
293 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
294 p_msg_name => G_UNEXPECTED_ERROR,
295 p_token1 => G_SQLCODE_TOKEN,
296 p_token1_value => SQLCODE,
297 p_token2 => G_SQLERRM_TOKEN,
298 p_token2_value => SQLERRM );
299 WHEN G_EXCEPTION_UNEXPECTED_ERROR THEN
300 x_return_status := G_RET_STS_UNEXP_ERROR;
301 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
302 p_msg_name => G_UNEXPECTED_ERROR,
303 p_token1 => G_SQLCODE_TOKEN,
304 p_token1_value => SQLCODE,
305 p_token2 => G_SQLERRM_TOKEN,
306 p_token2_value => SQLERRM );
307 WHEN OTHERS THEN
308 x_return_status := G_RET_STS_UNEXP_ERROR;
309 -- store SQL error message on message stack for caller
310 OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
311 p_msg_name => G_UNEXPECTED_ERROR,
312 p_token1 => G_SQLCODE_TOKEN,
313 p_token1_value => SQLCODE,
314 p_token2 => G_SQLERRM_TOKEN,
315 p_token2_value => SQLERRM );
316
317 END INVOKE_PRICING_ENGINE;
318
319 END Okl_Generate_Streams_Pvt;