DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_SERVICE_INTEGRATION_PUB

Source


1 PACKAGE BODY OKL_SERVICE_INTEGRATION_PUB AS
2 /* $Header: OKLPSRIB.pls 115.1 2002/12/30 23:13:24 dedey noship $*/
3 
4 -- Global Variables
5    G_DEBUG       NUMBER := 1;
6    G_INIT_NUMBER NUMBER := -9999;
7    G_PKG_NAME    CONSTANT VARCHAR2(200) := 'OKL_SERVICE_INTEGRATION_PUB';
8    G_APP_NAME    CONSTANT VARCHAR2(3)   :=  OKL_API.G_APP_NAME;
9    G_API_TYPE    CONSTANT VARCHAR2(4)   := '_PUB';
10 
11 ------------------------------------------------------------------------------
12 -- PROCEDURE create_link_service_line
13 --
14 --  This procedure creates and links service line under a given contract in OKL. The
15 --  service line information comes from OKS service contract number provided as
16 --  an input parameter.
17 --
18 -- Calls:
19 -- Called By:
20 ------------------------------------------------------------------------------
21   PROCEDURE create_link_service_line(
22                                          p_api_version         IN  NUMBER,
23                                          p_init_msg_list       IN  VARCHAR2,
24                                          x_return_status       OUT NOCOPY VARCHAR2,
25                                          x_msg_count           OUT NOCOPY NUMBER,
26                                          x_msg_data            OUT NOCOPY VARCHAR2,
27                                          p_okl_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Lease Contract Header ID
28                                          p_oks_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Service Contract Header ID
29                                          p_oks_service_line_id IN  OKC_K_LINES_V.ID%TYPE,   -- Service Contract Service Top Line ID
30                                          p_supplier_id         IN  NUMBER,
31                                          x_okl_service_line_id OUT NOCOPY OKC_K_LINES_V.ID%TYPE    -- Returns Lease Contract Service TOP Line ID
32                                )IS
33 
34    l_api_name    VARCHAR2(35)    := 'create_link_service_line';
35    l_proc_name   VARCHAR2(35)    := 'CREATE_LINK_SERVICE_LINE';
36    l_api_version CONSTANT NUMBER := 1;
37 
38    l_okl_service_line_id OKC_K_HEADERS_V.ID%TYPE;
39    BEGIN
40 
41 
42       -- call START_ACTIVITY to create savepoint, check compatibility
43       -- and initialize message list
44       x_return_status := OKC_API.START_ACTIVITY(
45 			p_api_name      => l_api_name,
46 			p_pkg_name      => G_PKG_NAME,
47 			p_init_msg_list => p_init_msg_list,
48 			l_api_version   => l_api_version,
49 			p_api_version   => p_api_version,
50 			p_api_type      => G_API_TYPE,
51 			x_return_status => x_return_status);
52 
53       -- check if activity started successfully
54       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
55          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
56       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
57          raise OKC_API.G_EXCEPTION_ERROR;
58       END IF;
59 
60       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
61       okl_service_integration_pvt.create_link_service_line(
62                           p_api_version         => 1.0,
63                           p_init_msg_list       => OKL_API.G_FALSE,
64                           x_return_status       => x_return_status,
65                           x_msg_count           => x_msg_count,
66                           x_msg_data            => x_msg_data,
67                           p_okl_chr_id          => p_okl_chr_id,
68                           p_oks_chr_id          => p_oks_chr_id,
69                           p_oks_service_line_id => p_oks_service_line_id,
70                           p_supplier_id         => p_supplier_id,
71                           x_okl_service_line_id => x_okl_service_line_id
72                          );
73 
74       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
75          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
76       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
77          raise OKC_API.G_EXCEPTION_ERROR;
78       END IF;
79 
80       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
81 
82       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
83                            x_msg_data    => x_msg_data);
84 
85   EXCEPTION
86 
87       when OKC_API.G_EXCEPTION_ERROR then
88          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
89 			p_api_name  => l_api_name,
90 			p_pkg_name  => G_PKG_NAME,
91 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
92 			x_msg_count => x_msg_count,
93 			x_msg_data  => x_msg_data,
94 			p_api_type  => G_API_TYPE);
95 
96       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
97          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
98 			p_api_name  => l_api_name,
99 			p_pkg_name  => G_PKG_NAME,
100 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
101 			x_msg_count => x_msg_count,
102 			x_msg_data  => x_msg_data,
103 			p_api_type  => G_API_TYPE);
104 
105       when OTHERS then
106          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
107 			p_api_name  => l_api_name,
108 			p_pkg_name  => G_PKG_NAME,
109 			p_exc_name  => 'OTHERS',
110 			x_msg_count => x_msg_count,
111 			x_msg_data  => x_msg_data,
112 			p_api_type  => G_API_TYPE);
113 
114    END create_link_service_line;
115 ------------------------------------------------------------------------------
116 -- PROCEDURE create_service_line
117 --
118 --  This procedure creates a service line under a given contract in OKL. The
119 --  service line information comes from OKS service contract number provided as
120 --  an input parameter.
121 --
122 -- Calls:
123 -- Called By:
124 ------------------------------------------------------------------------------
125   PROCEDURE create_service_line(
126                                 p_api_version         IN  NUMBER,
127                                 p_init_msg_list       IN  VARCHAR2,
128                                 x_return_status       OUT NOCOPY VARCHAR2,
129                                 x_msg_count           OUT NOCOPY NUMBER,
130                                 x_msg_data            OUT NOCOPY VARCHAR2,
131                                 p_okl_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Lease Contract Header ID
132                                 p_oks_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Service Contract Header ID
133                                 p_oks_service_line_id IN  OKC_K_LINES_V.ID%TYPE,   -- Service Contract Service Top Line ID
134                                 p_supplier_id         IN  NUMBER,
135                                 x_okl_service_line_id OUT NOCOPY  OKC_K_LINES_V.ID%TYPE    -- Returns Lease Contract Service TOP Line ID
136                                )IS
137    l_api_name    VARCHAR2(35)    := 'create_service_line';
138    l_proc_name   VARCHAR2(35)    := 'CREATE_SERVICE_LINE';
139    l_api_version CONSTANT NUMBER := 1;
140 
141    BEGIN -- main process begins here
142 
143       -- call START_ACTIVITY to create savepoint, check compatibility
144       -- and initialize message list
145       x_return_status := OKC_API.START_ACTIVITY(
146 			p_api_name      => l_api_name,
147 			p_pkg_name      => G_PKG_NAME,
148 			p_init_msg_list => p_init_msg_list,
149 			l_api_version   => l_api_version,
150 			p_api_version   => p_api_version,
151 			p_api_type      => G_API_TYPE,
152 			x_return_status => x_return_status);
153 
154       -- check if activity started successfully
155       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
156          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
157       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
158          raise OKC_API.G_EXCEPTION_ERROR;
159       END IF;
160 
161       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
162 
163       okl_service_integration_pvt.create_service_line(
164                                                       p_api_version         => p_api_version,
165                                                       p_init_msg_list       => p_init_msg_list,
166                                                       x_return_status       => x_return_status,
167                                                       x_msg_count           => x_msg_count,
168                                                       x_msg_data            => x_msg_data,
169                                                       p_okl_chr_id          => p_okl_chr_id,
170                                                       p_oks_chr_id          => p_oks_chr_id,
171                                                       p_oks_service_line_id => p_oks_service_line_id,
172                                                       p_supplier_id         => p_supplier_id,
173                                                       x_okl_service_line_id => x_okl_service_line_id
174                                                      );
175 
176       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
177          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
178       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
179          raise OKC_API.G_EXCEPTION_ERROR;
180       END IF;
181 
182       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
183 
184       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
185                            x_msg_data    => x_msg_data);
186 
187   EXCEPTION
188 
189       when OKC_API.G_EXCEPTION_ERROR then
190          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
191 			p_api_name  => l_api_name,
192 			p_pkg_name  => G_PKG_NAME,
193 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
194 			x_msg_count => x_msg_count,
195 			x_msg_data  => x_msg_data,
196 			p_api_type  => G_API_TYPE);
197 
198       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
199          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
200 			p_api_name  => l_api_name,
201 			p_pkg_name  => G_PKG_NAME,
202 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
203 			x_msg_count => x_msg_count,
204 			x_msg_data  => x_msg_data,
205 			p_api_type  => G_API_TYPE);
206 
207       when OTHERS then
208          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
209 			p_api_name  => l_api_name,
210 			p_pkg_name  => G_PKG_NAME,
211 			p_exc_name  => 'OTHERS',
212 			x_msg_count => x_msg_count,
213 			x_msg_data  => x_msg_data,
214 			p_api_type  => G_API_TYPE);
215 
216    END create_service_line;
217 
218 ------------------------------------------------------------------------------
219 -- PROCEDURE link_service_line
220 --
221 --  This procedure links
222 --     1. Lease and Service Contract Header
223 --     2. Lease Contract Service Line and Service Contract service line
224 --
225 -- Calls:
226 -- Called By:
227 ------------------------------------------------------------------------------
228    PROCEDURE link_service_line(
229                                 p_api_version         IN  NUMBER,
230                                 p_init_msg_list       IN  VARCHAR2,
231                                 x_return_status       OUT NOCOPY VARCHAR2,
232                                 x_msg_count           OUT NOCOPY NUMBER,
233                                 x_msg_data            OUT NOCOPY VARCHAR2,
234                                 p_okl_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Lease Contract Header ID
235                                 p_oks_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Service Contract Header ID
236                                 p_okl_service_line_id IN  OKC_K_LINES_V.ID%TYPE,   -- Lease Service Top Line ID
237                                 p_oks_service_line_id IN  OKC_K_LINES_V.ID%TYPE    -- Service Contract - Service TOP Line ID
238                                ) IS
239 
240    l_api_name    VARCHAR2(35)    := 'link_service_line';
241    l_proc_name   VARCHAR2(35)    := 'LINK_SERVICE_LINE';
242    l_api_version CONSTANT NUMBER := 1;
243 
244    BEGIN
245 
246       -- call START_ACTIVITY to create savepoint, check compatibility
247       -- and initialize message list
248       x_return_status := OKC_API.START_ACTIVITY(
249 			p_api_name      => l_api_name,
250 			p_pkg_name      => G_PKG_NAME,
251 			p_init_msg_list => p_init_msg_list,
252 			l_api_version   => l_api_version,
253 			p_api_version   => p_api_version,
254 			p_api_type      => G_API_TYPE,
255 			x_return_status => x_return_status);
256 
257       -- check if activity started successfully
258       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
259          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
260       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
261          raise OKC_API.G_EXCEPTION_ERROR;
262       END IF;
263 
264       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
265 
266       okl_service_integration_pvt.link_service_line(
267                                                     p_api_version        => p_api_version,
268                                                     p_init_msg_list      => p_init_msg_list,
269                                                     x_return_status      => x_return_status,
270                                                     x_msg_count          => x_msg_count,
271                                                     x_msg_data           => x_msg_data,
272                                                     p_okl_chr_id         => p_okl_chr_id,
273                                                     p_oks_chr_id         => p_oks_chr_id,
274                                                     p_okl_service_line_id => p_okl_service_line_id,
275                                                     p_oks_service_line_id => p_oks_service_line_id
276                                                    );
277 
278       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
279          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
280       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
281          raise OKC_API.G_EXCEPTION_ERROR;
282       END IF;
283 
284       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
285 
286       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
287                            x_msg_data    => x_msg_data);
288 
289   EXCEPTION
290       when OKC_API.G_EXCEPTION_ERROR then
291          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
292 			p_api_name  => l_api_name,
293 			p_pkg_name  => G_PKG_NAME,
294 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
295 			x_msg_count => x_msg_count,
296 			x_msg_data  => x_msg_data,
297 			p_api_type  => G_API_TYPE);
298 
299       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
300          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
301 			p_api_name  => l_api_name,
302 			p_pkg_name  => G_PKG_NAME,
303 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
304 			x_msg_count => x_msg_count,
305 			x_msg_data  => x_msg_data,
306 			p_api_type  => G_API_TYPE);
307 
308       when OTHERS then
309          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
310 			p_api_name  => l_api_name,
311 			p_pkg_name  => G_PKG_NAME,
312 			p_exc_name  => 'OTHERS',
313 			x_msg_count => x_msg_count,
314 			x_msg_data  => x_msg_data,
315 			p_api_type  => G_API_TYPE);
316 
317   END link_service_line;
318 
319 ------------------------------------------------------------------------------
320 -- PROCEDURE delete_service_line
321 --
322 --  This procedure deletes service line. It also checks for any existing links
323 --  with OKS Service contract, if so, it deltes the link too.
324 --
325 -- Calls:
326 -- Called By:
327 ------------------------------------------------------------------------------
328   PROCEDURE delete_service_line(
329                                 p_api_version         IN  NUMBER,
330                                 p_init_msg_list       IN  VARCHAR2,
331                                 x_return_status       OUT NOCOPY VARCHAR2,
332                                 x_msg_count           OUT NOCOPY NUMBER,
333                                 x_msg_data            OUT NOCOPY VARCHAR2,
334                                 p_clev_rec            IN  clev_rec_type,
335                                 p_klev_rec            IN  klev_rec_type
336                                ) IS
337   l_api_name    VARCHAR2(35)    := 'delete_service_link';
338   l_proc_name   VARCHAR2(35)    := 'DELETE_SERVICE_LINK';
339   l_api_version CONSTANT NUMBER := 1;
340 
341   BEGIN -- main process begins here
342 
343       x_return_status := OKC_API.G_RET_STS_SUCCESS;
344       -- call START_ACTIVITY to create savepoint, check compatibility
345       -- and initialize message list
346       x_return_status := OKC_API.START_ACTIVITY(
347 			p_api_name      => l_api_name,
348 			p_pkg_name      => G_PKG_NAME,
349 			p_init_msg_list => p_init_msg_list,
350 			l_api_version   => l_api_version,
351 			p_api_version   => p_api_version,
352 			p_api_type      => G_API_TYPE,
353 			x_return_status => x_return_status);
354 
355       -- check if activity started successfully
356       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
357          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
358       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
359          raise OKC_API.G_EXCEPTION_ERROR;
360       END IF;
361 
362       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
363 
364       okl_service_integration_pvt.delete_service_line(
365                                             p_api_version       => p_api_version,
366                                             p_init_msg_list     => OKL_API.G_FALSE,
367                                             x_return_status     => x_return_status,
368                                             x_msg_count         => x_msg_count,
369                                             x_msg_data          => x_msg_data,
370                                             p_clev_rec          => p_clev_rec,
371                                             p_klev_rec          => p_klev_rec
372                                            );
373 
374       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
375          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
376       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
377          raise OKC_API.G_EXCEPTION_ERROR;
378       END IF;
379 
380       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
381 
382       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
383                            x_msg_data    => x_msg_data);
384 
385   EXCEPTION
386       when OKC_API.G_EXCEPTION_ERROR then
387          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
388 			p_api_name  => l_api_name,
389 			p_pkg_name  => G_PKG_NAME,
390 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
391 			x_msg_count => x_msg_count,
392 			x_msg_data  => x_msg_data,
393 			p_api_type  => G_API_TYPE);
394 
395       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
396          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
397 			p_api_name  => l_api_name,
398 			p_pkg_name  => G_PKG_NAME,
399 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
400 			x_msg_count => x_msg_count,
401 			x_msg_data  => x_msg_data,
402 			p_api_type  => G_API_TYPE);
403 
404       when OTHERS then
405          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
406 			p_api_name  => l_api_name,
407 			p_pkg_name  => G_PKG_NAME,
408 			p_exc_name  => 'OTHERS',
409 			x_msg_count => x_msg_count,
410 			x_msg_data  => x_msg_data,
411 			p_api_type  => G_API_TYPE);
412 
413   END delete_service_line;
414 
415 ------------------------------------------------------------------------------
416 -- PROCEDURE update_service_line
417 --
418 --  This procedure updates existing service line link. It deletes existing
419 --  OKL Service line and recreate the same from OKS service line. It re-establish
420 --  the link at the end.
421 --
422 -- Calls:
423 -- Called By:
424 ------------------------------------------------------------------------------
425  PROCEDURE update_service_line(
426                                 p_api_version         IN  NUMBER,
427                                 p_init_msg_list       IN  VARCHAR2,
428                                 x_return_status       OUT NOCOPY VARCHAR2,
429                                 x_msg_count           OUT NOCOPY NUMBER,
430                                 x_msg_data            OUT NOCOPY VARCHAR2,
431                                 p_okl_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Lease Contract Header ID
432                                 p_oks_chr_id          IN  OKC_K_HEADERS_V.ID%TYPE, -- Service Contract Header ID
433                                 p_oks_service_line_id IN  OKC_K_LINES_V.ID%TYPE,   -- Service Contract Service Top Line ID
434                                 p_supplier_id         IN  NUMBER,
435                                 p_clev_rec            IN  clev_rec_type,
436                                 p_klev_rec            IN  klev_rec_type,
437                                 x_okl_service_line_id OUT NOCOPY OKC_K_LINES_V.ID%TYPE
438                               ) IS
439   l_api_name    VARCHAR2(35)    := 'update_service_link';
440   l_proc_name   VARCHAR2(35)    := 'UPDATE_SERVICE_LINK';
441   l_api_version CONSTANT NUMBER := 1;
442 
443   BEGIN -- main process begins here
444 
445       x_return_status := OKC_API.G_RET_STS_SUCCESS;
446       -- call START_ACTIVITY to create savepoint, check compatibility
447       -- and initialize message list
448       x_return_status := OKC_API.START_ACTIVITY(
449 			p_api_name      => l_api_name,
450 			p_pkg_name      => G_PKG_NAME,
451 			p_init_msg_list => p_init_msg_list,
452 			l_api_version   => l_api_version,
453 			p_api_version   => p_api_version,
454 			p_api_type      => G_API_TYPE,
455 			x_return_status => x_return_status);
456 
457       -- check if activity started successfully
458       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
459          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
460       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
461          raise OKC_API.G_EXCEPTION_ERROR;
462       END IF;
463 
464       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
465 
466       okl_service_integration_pvt.update_service_line(
467                              p_api_version         => p_api_version,
468                              p_init_msg_list       => OKL_API.G_TRUE,
469                              x_return_status       => x_return_status,
470                              x_msg_count           => x_msg_count,
471                              x_msg_data            => x_msg_data,
472                              p_okl_chr_id          => p_okl_chr_id,
473                              p_oks_chr_id          => p_oks_chr_id,
474                              p_oks_service_line_id => p_oks_service_line_id,
475                              p_supplier_id         => p_supplier_id,
476                              p_clev_rec            => p_clev_rec,
477                              p_klev_rec            => p_klev_rec,
478                              x_okl_service_line_id => x_okl_service_line_id
479                             );
480 
481       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
482          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
483       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
484          raise OKC_API.G_EXCEPTION_ERROR;
485       END IF;
486 
487       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
488 
489       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
490                            x_msg_data    => x_msg_data);
491 
492   EXCEPTION
493       when OKC_API.G_EXCEPTION_ERROR then
494          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
495 			p_api_name  => l_api_name,
496 			p_pkg_name  => G_PKG_NAME,
497 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
498 			x_msg_count => x_msg_count,
499 			x_msg_data  => x_msg_data,
500 			p_api_type  => G_API_TYPE);
501 
502       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
503          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
504 			p_api_name  => l_api_name,
505 			p_pkg_name  => G_PKG_NAME,
506 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
507 			x_msg_count => x_msg_count,
508 			x_msg_data  => x_msg_data,
509 			p_api_type  => G_API_TYPE);
510 
511       when OTHERS then
512          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
513 			p_api_name  => l_api_name,
514 			p_pkg_name  => G_PKG_NAME,
515 			p_exc_name  => 'OTHERS',
516 			x_msg_count => x_msg_count,
517 			x_msg_data  => x_msg_data,
518 			p_api_type  => G_API_TYPE);
519 
520   END update_service_line;
521 
522 
523 ------------------------------------------------------------------------------
524 -- PROCEDURE check_service_link
525 --
526 --  This procedure checks whether a service contract is linked to the lease
527 --  contract.
528 --  If a link exists, the service contract information is returned back.
529 --  If no link exists, it returns NULL to service contract out variables.
530 --
531 -- Calls:
532 -- Called By:
533 ------------------------------------------------------------------------------
534   PROCEDURE check_service_link (
535                                 p_api_version             IN  NUMBER,
536                                 p_init_msg_list           IN  VARCHAR2,
537                                 x_return_status           OUT NOCOPY VARCHAR2,
538                                 x_msg_count               OUT NOCOPY NUMBER,
539                                 x_msg_data                OUT NOCOPY VARCHAR2,
540                                 p_lease_contract_id       IN  OKC_K_HEADERS_V.ID%TYPE,
541                                 x_service_contract_id     OUT NOCOPY OKC_K_HEADERS_V.ID%TYPE
542                                ) IS
543   l_api_name    VARCHAR2(35)    := 'check_service_link';
544   l_proc_name   VARCHAR2(35)    := 'CHECK_SERVICE_LINK';
545   l_api_version CONSTANT NUMBER := 1;
546 
547 
548   BEGIN
549 
550       -- call START_ACTIVITY to create savepoint, check compatibility
551       -- and initialize message list
552       x_return_status := OKC_API.START_ACTIVITY(
553 			p_api_name      => l_api_name,
554 			p_pkg_name      => G_PKG_NAME,
555 			p_init_msg_list => p_init_msg_list,
556 			l_api_version   => l_api_version,
557 			p_api_version   => p_api_version,
558 			p_api_type      => G_API_TYPE,
559 			x_return_status => x_return_status);
560 
561       -- check if activity started successfully
562       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
563          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
564       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
565          raise OKC_API.G_EXCEPTION_ERROR;
566       END IF;
567 
568       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
569       okl_service_integration_pvt.check_service_link(
570                                                      p_api_version          => p_api_version,
571                                                      p_init_msg_list        => p_init_msg_list,
572                                                      x_return_status        => x_return_status,
573                                                      x_msg_count            => x_msg_count,
574                                                      x_msg_data             => x_msg_data,
575                                                      p_lease_contract_id    => p_lease_contract_id,
576                                                      x_service_contract_id  => x_service_contract_id
577                                                     );
578 
579       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
580          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
581       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
582          raise OKC_API.G_EXCEPTION_ERROR;
583       END IF;
584 
585       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
586 
587       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
588                            x_msg_data    => x_msg_data);
589 
590   EXCEPTION
591       when OKC_API.G_EXCEPTION_ERROR then
592          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
593 			p_api_name  => l_api_name,
594 			p_pkg_name  => G_PKG_NAME,
595 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
596 			x_msg_count => x_msg_count,
597 			x_msg_data  => x_msg_data,
598 			p_api_type  => G_API_TYPE);
599 
600       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
601          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
602 			p_api_name  => l_api_name,
603 			p_pkg_name  => G_PKG_NAME,
604 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
605 			x_msg_count => x_msg_count,
606 			x_msg_data  => x_msg_data,
607 			p_api_type  => G_API_TYPE);
608 
609       when OTHERS then
610          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
611 			p_api_name  => l_api_name,
612 			p_pkg_name  => G_PKG_NAME,
613 			p_exc_name  => 'OTHERS',
614 			x_msg_count => x_msg_count,
615 			x_msg_data  => x_msg_data,
616 			p_api_type  => G_API_TYPE);
617 
618   END check_service_link;
619 
620 ------------------------------------------------------------------------------
621 -- PROCEDURE get_service_link_line
622 --
623 --  This procedure returns linked lease and service contract top lines ID.
624 --  It also returns linked OKS service contract header id
625 --  Note: Service contract id will be NULL in case lease contract is not
626 --        linked to a service contract.
627 -- Calls:
628 -- Called By:
629 ------------------------------------------------------------------------------
630   PROCEDURE get_service_link_line (
631                                    p_api_version             IN  NUMBER,
632                                    p_init_msg_list           IN  VARCHAR2,
633                                    x_return_status           OUT NOCOPY VARCHAR2,
634                                    x_msg_count               OUT NOCOPY NUMBER,
635                                    x_msg_data                OUT NOCOPY VARCHAR2,
636                                    p_lease_contract_id       IN  OKC_K_HEADERS_V.ID%TYPE,
637                                    x_link_line_tbl           OUT NOCOPY LINK_LINE_TBL_TYPE,
638                                    x_service_contract_id     OUT NOCOPY OKC_K_HEADERS_V.ID%TYPE
639                                ) IS
640   l_api_name    VARCHAR2(35)    := 'get_service_link_line';
641   l_proc_name   VARCHAR2(35)    := 'GET_SREVICE_LINK_LINE';
642   l_api_version CONSTANT NUMBER := 1;
643 
644   BEGIN
645 
646       -- call START_ACTIVITY to create savepoint, check compatibility
647       -- and initialize message list
648       x_return_status := OKC_API.START_ACTIVITY(
649 			p_api_name      => l_api_name,
650 			p_pkg_name      => G_PKG_NAME,
651 			p_init_msg_list => p_init_msg_list,
652 			l_api_version   => l_api_version,
653 			p_api_version   => p_api_version,
654 			p_api_type      => G_API_TYPE,
655 			x_return_status => x_return_status);
656 
657       -- check if activity started successfully
658       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
659          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
660       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
661          raise OKC_API.G_EXCEPTION_ERROR;
662       END IF;
663 
664       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
665       okl_service_integration_pvt.get_service_link_line(
666                              p_api_version         => p_api_version,
667                              p_init_msg_list       => p_init_msg_list,
668                              x_return_status       => x_return_status,
669                              x_msg_count           => x_msg_count,
670                              x_msg_data            => x_msg_data,
671                              p_lease_contract_id   => p_lease_contract_id,
672                              x_link_line_tbl       => x_link_line_tbl,
673                              x_service_contract_id => x_service_contract_id
674                             );
675 
676       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
677          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
678       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
679          raise OKC_API.G_EXCEPTION_ERROR;
680       END IF;
681 
682       --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
683 
684       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
685                            x_msg_data    => x_msg_data);
686 
687   EXCEPTION
688       when OKC_API.G_EXCEPTION_ERROR then
689          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
690 			p_api_name  => l_api_name,
691 			p_pkg_name  => G_PKG_NAME,
692 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
693 			x_msg_count => x_msg_count,
694 			x_msg_data  => x_msg_data,
695 			p_api_type  => G_API_TYPE);
696 
697       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
698          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
699 			p_api_name  => l_api_name,
700 			p_pkg_name  => G_PKG_NAME,
701 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
702 			x_msg_count => x_msg_count,
703 			x_msg_data  => x_msg_data,
704 			p_api_type  => G_API_TYPE);
705 
706       when OTHERS then
707          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
708 			p_api_name  => l_api_name,
709 			p_pkg_name  => G_PKG_NAME,
710 			p_exc_name  => 'OTHERS',
711 			x_msg_count => x_msg_count,
712 			x_msg_data  => x_msg_data,
713 			p_api_type  => G_API_TYPE);
714 
715   END get_service_link_line;
716 
717 
718 ------------------------------------------------------------------------------
719 -- PROCEDURE create_cov_asset_line
720 --
721 --  This procedure validates covered asset and creates covered asset line
722 --  under OKL service top line.
723 --
724 -- Calls:
725 -- Called By:
726 ------------------------------------------------------------------------------
727  PROCEDURE create_cov_asset_line(
728                                  p_api_version    IN  NUMBER,
729                                  p_init_msg_list  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
730                                  x_return_status  OUT NOCOPY VARCHAR2,
731                                  x_msg_count      OUT NOCOPY NUMBER,
732                                  x_msg_data       OUT NOCOPY VARCHAR2,
733                                  p_clev_tbl       IN  clev_tbl_type,
734                                  p_klev_tbl       IN  klev_tbl_type,
735                                  p_cimv_tbl       IN  cimv_tbl_type,
736                                  p_cov_tbl        IN  srv_cov_tbl_type,
737                                  x_clev_tbl       OUT NOCOPY clev_tbl_type,
738                                  x_klev_tbl       OUT NOCOPY klev_tbl_type,
739                                  x_cimv_tbl       OUT NOCOPY cimv_tbl_type
740                                 ) IS
741   l_api_name    VARCHAR2(35)    := 'create_cov_asset_line';
742   l_proc_name   VARCHAR2(35)    := 'CREATE_COV_ASSET_LINE';
743   l_api_version CONSTANT NUMBER := 1;
744 
745 
746   BEGIN -- main process begins here
747 
748       x_return_status := OKC_API.G_RET_STS_SUCCESS;
749       -- call START_ACTIVITY to create savepoint, check compatibility
750       -- and initialize message list
751       x_return_status := OKC_API.START_ACTIVITY(
752 			p_api_name      => l_api_name,
753 			p_pkg_name      => G_PKG_NAME,
754 			p_init_msg_list => p_init_msg_list,
755 			l_api_version   => l_api_version,
756 			p_api_version   => p_api_version,
757 			p_api_type      => G_API_TYPE,
758 			x_return_status => x_return_status);
759 
760       -- check if activity started successfully
761       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
762          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
763       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
764          raise OKC_API.G_EXCEPTION_ERROR;
765       END IF;
766 
767       OKL_SERVICE_INTEGRATION_PVT.CREATE_COV_ASSET_LINE (
768                               p_api_version    => p_api_version,
769                               p_init_msg_list  => OKL_API.G_FALSE,
770                               x_return_status  => x_return_status,
771                               x_msg_count      => x_msg_count,
772                               x_msg_data       => x_msg_data,
773                               p_clev_tbl       => p_clev_tbl,
774                               p_klev_tbl       => p_klev_tbl,
775                               p_cimv_tbl       => p_cimv_tbl,
776                               p_cov_tbl        => p_cov_tbl,
777                               x_clev_tbl       => x_clev_tbl,
778                               x_klev_tbl       => x_klev_tbl,
779                               x_cimv_tbl       => x_cimv_tbl
780                              );
781 
782       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
783          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
784       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
785          raise OKC_API.G_EXCEPTION_ERROR;
786       END IF;
787 
788       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
789                            x_msg_data    => x_msg_data);
790 
791   EXCEPTION
792       when OKC_API.G_EXCEPTION_ERROR then
793          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
794 			p_api_name  => l_api_name,
795 			p_pkg_name  => G_PKG_NAME,
796 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
797 			x_msg_count => x_msg_count,
798 			x_msg_data  => x_msg_data,
799 			p_api_type  => G_API_TYPE);
800 
801       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
802          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
803 			p_api_name  => l_api_name,
804 			p_pkg_name  => G_PKG_NAME,
805 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
806 			x_msg_count => x_msg_count,
807 			x_msg_data  => x_msg_data,
808 			p_api_type  => G_API_TYPE);
809 
810       when OTHERS then
811          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
812 			p_api_name  => l_api_name,
813 			p_pkg_name  => G_PKG_NAME,
814 			p_exc_name  => 'OTHERS',
815 			x_msg_count => x_msg_count,
816 			x_msg_data  => x_msg_data,
817 			p_api_type  => G_API_TYPE);
818 
819   END create_cov_asset_line;
820 
821 ------------------------------------------------------------------------------
822 -- PROCEDURE update_cov_asset_line
823 --
824 --  This procedure validates covered asset and updates covered asset line
825 --  under OKL service top line.
826 --
827 -- Calls:
828 -- Called By:
829 ------------------------------------------------------------------------------
830  PROCEDURE update_cov_asset_line(
831                                  p_api_version    IN  NUMBER,
832                                  p_init_msg_list  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
833                                  x_return_status  OUT NOCOPY VARCHAR2,
834                                  x_msg_count      OUT NOCOPY NUMBER,
835                                  x_msg_data       OUT NOCOPY VARCHAR2,
836                                  p_clev_tbl       IN  clev_tbl_type,
837                                  p_klev_tbl       IN  klev_tbl_type,
838                                  p_cimv_tbl       IN  cimv_tbl_type,
839                                  p_cov_tbl        IN  srv_cov_tbl_type,
840                                  x_clev_tbl       OUT NOCOPY clev_tbl_type,
841                                  x_klev_tbl       OUT NOCOPY klev_tbl_type,
842                                  x_cimv_tbl       OUT NOCOPY cimv_tbl_type
843                                 ) IS
844   l_api_name    VARCHAR2(35)    := 'update_cov_asset_line';
845   l_proc_name   VARCHAR2(35)    := 'UPDATE_COV_ASSET_LINE';
846   l_api_version CONSTANT NUMBER := 1;
847 
848 
849   BEGIN -- main process begins here
850 
851       x_return_status := OKC_API.G_RET_STS_SUCCESS;
852       -- call START_ACTIVITY to create savepoint, check compatibility
853       -- and initialize message list
854       x_return_status := OKC_API.START_ACTIVITY(
855 			p_api_name      => l_api_name,
856 			p_pkg_name      => G_PKG_NAME,
857 			p_init_msg_list => p_init_msg_list,
858 			l_api_version   => l_api_version,
859 			p_api_version   => p_api_version,
860 			p_api_type      => G_API_TYPE,
861 			x_return_status => x_return_status);
862 
863       -- check if activity started successfully
864       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
865          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
866       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
867          raise OKC_API.G_EXCEPTION_ERROR;
868       END IF;
869 
870       OKL_SERVICE_INTEGRATION_PVT.UPDATE_COV_ASSET_LINE (
871                               p_api_version    => p_api_version,
872                               p_init_msg_list  => OKL_API.G_FALSE,
873                               x_return_status  => x_return_status,
874                               x_msg_count      => x_msg_count,
875                               x_msg_data       => x_msg_data,
876                               p_clev_tbl       => p_clev_tbl,
877                               p_klev_tbl       => p_klev_tbl,
878                               p_cimv_tbl       => p_cimv_tbl,
879                               p_cov_tbl        => p_cov_tbl,
880                               x_clev_tbl       => x_clev_tbl,
881                               x_klev_tbl       => x_klev_tbl,
882                               x_cimv_tbl       => x_cimv_tbl
883                              );
884 
885       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
886          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
887       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
888          raise OKC_API.G_EXCEPTION_ERROR;
889       END IF;
890 
891       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
892                            x_msg_data    => x_msg_data);
893 
894   EXCEPTION
895       when OKC_API.G_EXCEPTION_ERROR then
896          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
897 			p_api_name  => l_api_name,
898 			p_pkg_name  => G_PKG_NAME,
899 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
900 			x_msg_count => x_msg_count,
901 			x_msg_data  => x_msg_data,
902 			p_api_type  => G_API_TYPE);
903 
904       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
905          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
906 			p_api_name  => l_api_name,
907 			p_pkg_name  => G_PKG_NAME,
908 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
909 			x_msg_count => x_msg_count,
910 			x_msg_data  => x_msg_data,
911 			p_api_type  => G_API_TYPE);
912 
913       when OTHERS then
914          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
915 			p_api_name  => l_api_name,
916 			p_pkg_name  => G_PKG_NAME,
917 			p_exc_name  => 'OTHERS',
918 			x_msg_count => x_msg_count,
919 			x_msg_data  => x_msg_data,
920 			p_api_type  => G_API_TYPE);
921 
922   END update_cov_asset_line;
923 
924 ------------------------------------------------------------------------------
925 -- PROCEDURE initiate_service_booking
926 --
927 --  This procedure is being called from activate API. It checks for service
928 --  link and associates IB instances from OKS service line with
929 --  corresponding IB line instances at lease contract.
930 --
931 -- Calls:
932 -- Called By:
933 ------------------------------------------------------------------------------
934   PROCEDURE initiate_service_booking(
935                                     p_api_version    IN  NUMBER,
936                                     p_init_msg_list  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
937                                     x_return_status  OUT NOCOPY VARCHAR2,
938                                     x_msg_count      OUT NOCOPY NUMBER,
939                                     x_msg_data       OUT NOCOPY VARCHAR2,
940                                     p_okl_chr_id     IN  OKC_K_HEADERS_B.ID%TYPE
941                                 ) IS
942   l_api_name    VARCHAR2(35)    := 'initiate_service_booking';
943   l_proc_name   VARCHAR2(35)    := 'INITIATE_SERVICE_BOOKING';
944   l_api_version CONSTANT NUMBER := 1;
945 
946   BEGIN
947 
948       x_return_status := OKC_API.G_RET_STS_SUCCESS;
949 
950       -- call START_ACTIVITY to create savepoint, check compatibility
951       -- and initialize message list
952       x_return_status := OKC_API.START_ACTIVITY(
953 			p_api_name      => l_api_name,
954 			p_pkg_name      => G_PKG_NAME,
955 			p_init_msg_list => p_init_msg_list,
956 			l_api_version   => l_api_version,
957 			p_api_version   => p_api_version,
958 			p_api_type      => G_API_TYPE,
959 			x_return_status => x_return_status);
960 
961       -- check if activity started successfully
962       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
963          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
964       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
965          raise OKC_API.G_EXCEPTION_ERROR;
966       END IF;
967       --************************************************
968 
969       okl_service_integration_pvt.initiate_service_booking(
970                                     p_api_version    => p_api_version,
971                                     p_init_msg_list  => p_init_msg_list,
972                                     x_return_status  => x_return_status,
973                                     x_msg_count      => x_msg_count,
974                                     x_msg_data       => x_msg_data,
975                                     p_okl_chr_id     => p_okl_chr_id
976                                 );
977 
978       IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) then
979          raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
980       ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) then
981          raise OKC_API.G_EXCEPTION_ERROR;
982       END IF;
983 
984       --************************************************
985 
986       OKL_API.END_ACTIVITY(x_msg_count   => x_msg_count,
987                            x_msg_data    => x_msg_data);
988 
989   EXCEPTION
990       when OKC_API.G_EXCEPTION_ERROR then
991          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
992 			p_api_name  => l_api_name,
993 			p_pkg_name  => G_PKG_NAME,
994 			p_exc_name  => 'OKC_API.G_RET_STS_ERROR',
995 			x_msg_count => x_msg_count,
996 			x_msg_data  => x_msg_data,
997 			p_api_type  => G_API_TYPE);
998 
999       when OKC_API.G_EXCEPTION_UNEXPECTED_ERROR then
1000          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
1001 			p_api_name  => l_api_name,
1002 			p_pkg_name  => G_PKG_NAME,
1003 			p_exc_name  => 'OKC_API.G_RET_STS_UNEXP_ERROR',
1004 			x_msg_count => x_msg_count,
1005 			x_msg_data  => x_msg_data,
1006 			p_api_type  => G_API_TYPE);
1007 
1008       when OTHERS then
1009          x_return_status := OKC_API.HANDLE_EXCEPTIONS(
1010 			p_api_name  => l_api_name,
1011 			p_pkg_name  => G_PKG_NAME,
1012 			p_exc_name  => 'OTHERS',
1013 			x_msg_count => x_msg_count,
1014 			x_msg_data  => x_msg_data,
1015 			p_api_type  => G_API_TYPE);
1016 
1017   END initiate_service_booking;
1018 END OKL_SERVICE_INTEGRATION_PUB;