DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKS_COPY_CONTRACT_PVT

Source


1 Package body OKS_COPY_CONTRACT_PVT AS
2 /*$Header: OKSCOPYB.pls 120.113.12010000.2 2008/10/22 12:49:17 ssreekum ship $*/
3 
4   l_debug VARCHAR2(1) := 'Y'; -- NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5   g_count NUMBER;
6 
7   SUBTYPE oatv_rec_type  IS OKC_OUTCOME_PUB.oatv_rec_type;
8   SUBTYPE ocev_rec_type  IS OKC_OUTCOME_PUB.ocev_rec_type;
9   SUBTYPE scnv_rec_type  IS OKC_SECTIONS_PUB.scnv_rec_type;
10   SUBTYPE gvev_rec_type  IS OKC_CONTRACT_PUB.gvev_rec_type;
11   SUBTYPE pavv_rec_type         IS OKC_PRICE_ADJUSTMENT_PUB.pavv_rec_type;
12   SUBTYPE patv_rec_type         IS OKC_PRICE_ADJUSTMENT_PUB.patv_rec_type;
13 
14   g_chrv_rec chrv_rec_type;
15 
16   g_pricelist              varchar2(100) := NULL; /* For Euro Conversion - Bug 2155930 */
17   g_conversion_type        varchar2(40) := NULL; /* For Euro Conversion - Bug 2155930 */
18   g_conversion_rate        number := NULL; /* For Euro Conversion - Bug 2155930 */
19   g_conversion_date        date := NULL; /* For Euro Conversion - Bug 2155930 */
20 
21   /*The following Target header related package variables are used in the routines "create_bsch_using_PPSetup" and
22     update_line_inv_and_acct_rule
23    */
24   G_TrgHdrStartDate   OKC_K_HEADERS_B.START_DATE%TYPE;
25   G_TrgHdrEndDate     OKC_K_HEADERS_B.END_DATE%TYPE;
26   G_TrgHdrInvRuleID   OKC_K_HEADERS_B.INV_RULE_ID%TYPE;
27   G_TrgHdrAcctRuleID  OKS_K_HEADERS_B.ACCT_RULE_ID%TYPE;
28   G_TrgHdrPeriodStart OKS_K_HEADERS_B.PERIOD_START%TYPE;
29   G_TrgHdrPeriodType  OKS_K_HEADERS_B.PERIOD_TYPE%TYPE;
30   G_TrgHdrPriceUOM    OKS_K_HEADERS_B.PRICE_UOM%TYPE;
31   G_TrgHdrBillingScheduleType OKS_K_HEADERS_B.BILLING_SCHEDULE_TYPE%TYPE;
32 
33   ----------------------------------------------------------------------------
34   --PL/SQL Table to check the party has already copied.
35   --If Yes give the new cpl_id ----Begins
36   ----------------------------------------------------------------------------
37   TYPE party_rec_type IS RECORD (
38     old_cpl_id          NUMBER := OKC_API.G_MISS_NUM,
39     new_cpl_id          NUMBER := OKC_API.G_MISS_NUM);
40   TYPE  party_tbl_type IS TABLE OF party_rec_type
41   INDEX BY BINARY_INTEGER;
42   g_party       party_tbl_type;
43 
44 
45 /******************************
46   ----------------------------------------------------------------------------
47   --Logic to check the event has already copied.
48   --If Yes give the new cnh_id ----Begins
49   ----------------------------------------------------------------------------
50   TYPE events_rec_type IS RECORD (
51     old_cnh_id		NUMBER := OKC_API.G_MISS_NUM,
52     new_cnh_id		NUMBER := OKC_API.G_MISS_NUM);
53   TYPE	events_tbl_type IS TABLE OF events_rec_type
54   INDEX	BY BINARY_INTEGER;
55   g_events	events_tbl_type;
56 *********************************/
57 
58 
59   ----------------------------------------------------------------------------
60   -- PL/SQL table to keep line/header id and corresponding ole_id
61   -- This table will store the following combinations
62   --                 Header Id  - OLE_ID for Header
63   --                 Line ID    - OLE_ID for the Line
64   -- To get PARENT_OLE_ID for top line, search for ID = header_id
65   --                      for sub line, search for ID = Parent Line Id
66   ----------------------------------------------------------------------------
67   TYPE line_op_rec_type IS RECORD (
68     id                           NUMBER := OKC_API.G_MISS_NUM,
69     ole_id                       NUMBER := OKC_API.G_MISS_NUM);
70 
71   TYPE line_op_tbl_type IS TABLE OF line_op_rec_type
72     INDEX BY BINARY_INTEGER;
73 
74   g_op_lines line_op_tbl_type;
75 
76  -------------------------------------------------------
77    TYPE price_adjustments_rec_type IS RECORD (
78     old_pat_id          NUMBER := OKC_API.G_MISS_NUM,
79     new_pat_id          NUMBER := OKC_API.G_MISS_NUM);
80   TYPE price_adjustments_tbl_type IS TABLE OF price_adjustments_rec_type
81   INDEX BY BINARY_INTEGER;
82   g_price_adjustments    price_adjustments_tbl_type;
83   ----------------------------------------------------------------------------
84 
85 -------------------------------------------------------------------------------
86 -- Procedure:           chk_line_effectivity
87 -- Purpose:             This procedure checks the effectivity dates of source
88 --                      contract line and target contract line
89 -- In Parameters:       p_new_cle_id        Target contract line id
90 -- Out Parameters:      x_return_status     standard return status
91 --                      x_flag              yes no flag
92 -----------------------------------------------------------------------------
93 
94  PROCEDURE chk_line_effectivity
95 (
96 p_new_cle_id 	      IN NUMBER,
97 x_flag                OUT NOCOPY VARCHAR2,
98 x_return_status       OUT NOCOPY VARCHAR2
99 )
100 IS
101 
102 CURSOR l_target_line_csr (l_target_line_id NUMBER) IS
103        SELECT start_date,end_date,orig_system_id1
104        FROM   okc_k_lines_b
105        WHERE  id = l_target_line_id;
106 
107 l_target_line_rec    l_target_line_csr%ROWTYPE;
108 
109 CURSOR l_source_line_csr (l_source_line_id NUMBER) IS
110        SELECT start_date,end_date
111        FROM   okc_k_lines_b
112        WHERE  id = l_source_line_id;
113 
114 
115 l_source_line_rec    l_source_line_csr%ROWTYPE;
116 l_source_line_id               NUMBER;
117 l_source_line_duration		   NUMBER := 0;
118 l_source_line_time  	 	   VARCHAR2(450) ;
119 l_target_line_duration	   NUMBER := 0;
120 l_target_line_time  	 	   VARCHAR2(450) ;
121 l_return_status 	   VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
122 
123  BEGIN
124                     x_flag   := 'T';
125                     OPEN l_target_line_csr (p_new_cle_id);
126                     FETCH l_target_line_csr INTO l_target_line_rec;
127                     CLOSE l_target_line_csr;
128 
129                     l_source_line_id := l_target_line_rec.orig_system_id1;
130 
131                     If l_source_line_id is null Then
132                         x_return_status := l_return_status;
133                         oks_renew_pvt.Debug_Log(p_program_name => 'OKS_COPY_CONTRACT_PVT',
134                         p_perf_msg   => 'Exiting chk_line_effectivity because orig_system_id1 was null');
135                         return;
136                     End If;
137 
138                     OPEN l_source_line_csr(l_source_line_id);
139                     FETCH l_source_line_csr INTO l_source_line_rec;
140                     CLOSE l_source_line_csr;
141 
142                     OKC_TIME_UTIL_PUB.get_duration(
143                                   l_source_line_rec.start_date
144                                   ,l_source_line_rec.end_date
145                                   ,l_source_line_duration
146                                   ,l_source_line_time
147                                   ,l_return_status
148 			        );
149 
150                     IF l_return_status = 'S' Then
151 
152                          OKC_TIME_UTIL_PUB.get_duration(
153                                   l_target_line_rec.start_date
154                                   ,l_target_line_rec.end_date
155                                   ,l_target_line_duration
156                                   ,l_target_line_time
157                                   ,l_return_status
158 			              );
159 
160                           IF l_return_status = 'S'
161                           THEN
162                                IF ((l_source_line_duration <> l_target_line_duration) OR
163                                    (l_source_line_time <> l_target_line_time))
164                                THEN
165                                     x_flag := 'F';
166                                 ELSE
167                                     x_flag := 'T';
168                                END IF; -- IF ((l_source_line_time <> l_target_line_time) OR
169                           END IF;
170                     END IF;
171                     x_return_status := l_return_status;
172     Exception
173         WHEN  Others  THEN
174                   x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
175                   OKC_API.set_message(
176                                     G_APP_NAME,
177                                     G_UNEXPECTED_ERROR,
178                                     G_SQLCODE_TOKEN,
179                                     SQLCODE,
180 			            G_SQLERRM_TOKEN,
181                                     SQLERRM
182                                     );
183 
184  END chk_line_effectivity;
185 
186  Procedure printTemptable IS
187  cursor gettemptablelines is
188  select id,cle_id,lse_id,orig_system_id1
189  from okc_k_lines_b_temp;
190  l_id NUMBER;
191  l_cle_id NUMBER;
192  l_lse_id NUMBER;
193  l_orig_system_id1 NUMBER;
194  Begin
195   OPEN gettemptablelines;
196   LOOP
197   FETCH gettemptablelines into
198    l_id
199   ,l_cle_id
200   ,l_lse_id
201   ,l_orig_system_id1;
202     EXIT WHEN gettemptablelines%NOTFOUND;
203       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
204 	   FND_LOG.string(FND_LOG.level_statement
205 	                ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.printtemptable'
206 				 ,'ID:'||l_id||' : CLE_ID:'||l_cle_id||' : LSE_ID:'||l_lse_id||' : ORIG ID:'||l_orig_system_id1
207 				 );
208 	 END IF;
209   END LOOP;
210 
211  End printTemptable;
212 
213  -----------------------------------------------------------------------------
214   FUNCTION Is_Number(p_string VARCHAR2) Return BOOLEAN IS
215     n NUMBER;
216   BEGIN
217     n := to_number(p_string);
218     return TRUE;
219   EXCEPTION
220     WHEN OTHERS THEN
221          return FALSE;
222   END;
223 
224 /**************************
225   PROCEDURE add_events(	p_old_cnh_id IN NUMBER,
226 			p_new_cnh_id IN NUMBER) IS
227     i 		NUMBER := 0;
228   BEGIN
229     IF g_events.COUNT > 0 THEN
230       i := g_events.LAST;
231     END IF;
232     g_events(i+1).old_cnh_id	:= p_old_cnh_id;
233     g_events(i+1).new_cnh_id	:= p_new_cnh_id;
234   END add_events;
235 
236   FUNCTION get_new_cnh_id(	p_old_cnh_id IN NUMBER,
237 				p_new_cnh_id OUT NOCOPY NUMBER) RETURN BOOLEAN IS
238     i 		NUMBER := 0;
239   BEGIN
240     IF g_events.COUNT > 0 THEN
241       i := g_events.FIRST;
242       LOOP
243         IF g_events(i).old_cnh_id = p_old_cnh_id THEN
244           p_new_cnh_id := g_events(i).new_cnh_id;
245           RETURN TRUE;
246         END IF;
247         EXIT WHEN (i = g_events.LAST);
248         i := g_events.NEXT(i);
249       END LOOP;
250       RETURN FALSE;
251     END IF;
252     RETURN FALSE;
253   END get_new_cnh_id;
254 
255 **************************/
256 
257 /***************************************
258   PROCEDURE add_price_adjustments(       p_old_pat_id IN NUMBER,
259                         p_new_pat_id IN NUMBER) IS
260     i           NUMBER := 0;
261   BEGIN
262     IF g_price_adjustments.COUNT > 0 THEN
263       i := g_price_adjustments.LAST;
264     END IF;
265     g_price_adjustments(i+1).old_pat_id  := p_old_pat_id;
266     g_price_adjustments(i+1).new_pat_id  := p_new_pat_id;
267   END add_price_adjustments;
268 
269   FUNCTION get_new_pat_id(      p_old_pat_id IN NUMBER,
270                                 p_new_pat_id OUT NOCOPY NUMBER) RETURN BOOLEAN IS
271     i           NUMBER := 0;
272   BEGIN
273     IF g_price_adjustments.COUNT > 0 THEN
274       i := g_price_adjustments.FIRST;
275       LOOP
276         IF g_price_adjustments(i).old_pat_id = p_old_pat_id THEN
277           p_new_pat_id := g_price_adjustments(i).new_pat_id;
278           RETURN TRUE;
279         END IF;
280         EXIT WHEN (i = g_price_adjustments.LAST);
281         i := g_price_adjustments.NEXT(i);
282       END LOOP;
283       RETURN FALSE;
284     END IF;
285     RETURN FALSE;
286   END get_new_pat_id;
287 **************************************/
288 
289    ----------------------------------------------------------------------------
290   --Logic to check the party has already copied.
291   --If Yes give the new cpl_id ----Begins
292   ----------------------------------------------------------------------------
293 
294   PROCEDURE add_party(  p_old_cpl_id IN NUMBER,
295                         p_new_cpl_id IN NUMBER) IS
296     i           NUMBER := 0;
297   BEGIN
298     IF g_party.COUNT > 0 THEN
299       i := g_party.LAST;
300     END IF;
301     g_party(i+1).old_cpl_id     := p_old_cpl_id;
302     g_party(i+1).new_cpl_id     := p_new_cpl_id;
303   END add_party;
304 
305   FUNCTION get_new_cpl_id(      p_old_cpl_id IN NUMBER,
306                                 p_new_cpl_id OUT NOCOPY NUMBER) RETURN BOOLEAN IS
307     i           NUMBER := 0;
308   BEGIN
309     IF g_party.COUNT > 0 THEN
310       i := g_party.FIRST;
311       LOOP
312         IF g_party(i).old_cpl_id = p_old_cpl_id THEN
313           p_new_cpl_id := g_party(i).new_cpl_id;
314           RETURN TRUE;
315         END IF;
316         EXIT WHEN (i = g_party.LAST);
317         i := g_party.NEXT(i);
318       END LOOP;
319       RETURN FALSE;
320     END IF;
321     RETURN FALSE;
322   END get_new_cpl_id;
323 
324   ----------------------------------------------------------------------------
325   --Logic to check the event has already copied.
326   --If Yes give the new cnh_id ----Ends.
327   ----------------------------------------------------------------------------
328   ----------------------------------------------------------------------------
329   --Function specs  to populate pl/sql record with database values begins
330   ----------------------------------------------------------------------------
331     FUNCTION    get_cimv_rec(p_cim_id IN NUMBER,
332 				x_cimv_rec OUT NOCOPY cimv_rec_type) RETURN  VARCHAR2;
333     FUNCTION    get_cacv_rec(p_cac_id IN NUMBER,
334 				x_cacv_rec OUT NOCOPY cacv_rec_type) RETURN  VARCHAR2;
335     FUNCTION    get_cplv_rec(p_cpl_id IN NUMBER,
336                                 x_cplv_rec OUT NOCOPY cplv_rec_type) RETURN  VARCHAR2;
337     FUNCTION    get_cpsv_rec(p_cps_id IN NUMBER,
338 				x_cpsv_rec OUT NOCOPY cpsv_rec_type) RETURN  VARCHAR2;
339     FUNCTION    get_cgcv_rec(p_cgc_id IN NUMBER,
340 				x_cgcv_rec OUT NOCOPY cgcv_rec_type) RETURN  VARCHAR2;
341     FUNCTION    get_cnhv_rec(p_cnh_id IN NUMBER,
342 				x_cnhv_rec OUT NOCOPY cnhv_rec_type) RETURN  VARCHAR2;
343     FUNCTION    get_cnlv_rec(p_cnl_id IN NUMBER,
344 				x_cnlv_rec OUT NOCOPY cnlv_rec_type) RETURN  VARCHAR2;
345     FUNCTION    get_chrv_rec(p_chr_id IN NUMBER,
346 				x_chrv_rec OUT NOCOPY chrv_rec_type) RETURN  VARCHAR2;
347     FUNCTION    get_ocev_rec(p_oce_id IN NUMBER,
348 				x_ocev_rec OUT NOCOPY ocev_rec_type) RETURN  VARCHAR2;
349     FUNCTION    get_oatv_rec(p_oat_id IN NUMBER,
350 				x_oatv_rec OUT NOCOPY oatv_rec_type) RETURN  VARCHAR2;
351     FUNCTION    get_pavv_rec(p_pav_id IN NUMBER,
352                                 x_pavv_rec OUT NOCOPY pavv_rec_type) RETURN  VARCHAR2;
353     FUNCTION    get_patv_rec(p_pat_id IN NUMBER,
354                                 x_patv_rec OUT NOCOPY patv_rec_type) RETURN  VARCHAR2;
355     FUNCTION    get_ctcv_rec(p_ctc_id IN NUMBER,
356                                 x_ctcv_rec OUT NOCOPY ctcv_rec_type) RETURN  VARCHAR2;
357 
358   ----------------------------------------------------------------------------
359   --Function specs  to populate pl/sql record with database values ends
360   ----------------------------------------------------------------------------
361   ----------------------------------------------------------------------------
362   --Procedure  desides whether target contract is updateable or not
363   ----------------------------------------------------------------------------
364 
365   FUNCTION is_copy_allowed(p_chr_id IN NUMBER,p_sts_code IN VARCHAR2 ) RETURN BOOLEAN IS
366     l_count             NUMBER;
367     l_dummy         VARCHAR2(1) := '?';
368     l_template_yn       VARCHAR2(3);
369 
370     CURSOR c_template IS
371     SELECT template_yn
372     FROM okc_k_headers_b
373     WHERE id = p_chr_id;
374 
375     CURSOR invalid_template IS
376     SELECT '1'
377     FROM okc_k_headers_b
378     WHERE template_yn = 'Y'
379         AND nvl(end_date, sysdate+1) >= trunc(sysdate)
380         AND id = p_chr_id;
381   BEGIN
382 
383     OPEN c_template;
384     FETCH c_template INTO l_template_yn;
385     CLOSE c_template;
386 
387     If l_template_yn = 'Y' Then
388       OPEN invalid_template;
389       FETCH invalid_template INTO l_dummy;
390       CLOSE invalid_template;
391 
392       If l_dummy = '1' Then
393            IF (l_debug = 'Y') THEN
394            OKC_DEBUG.ReSet_Indentation;
395            END IF;
396            RETURN(TRUE);
397       Else
398            OKC_API.SET_MESSAGE('OKC', 'OKC_INVALID_TEMPLATE');
399            IF (l_debug = 'Y') THEN
400            OKC_DEBUG.ReSet_Indentation;
401            END IF;
402         RETURN(FALSE);
403       End If;
404     Else
405          IF (l_debug = 'Y') THEN
406          OKC_DEBUG.ReSet_Indentation;
407          END IF;
408          RETURN(TRUE);
409     End If;
410 
411 
412   END is_copy_allowed;
413 ----------------------------------
414 
415 
416   --------------------------------------------------------------------------
417   --Proceudre copy_accesses - Makes a copy of the okc_k_accesses.
418   --------------------------------------------------------------------------
419   PROCEDURE copy_accesses(
420     p_api_version                  IN NUMBER,
421     p_init_msg_list                IN VARCHAR2 ,
422     x_return_status                OUT NOCOPY VARCHAR2,
423     x_msg_count                    OUT NOCOPY NUMBER,
424     x_msg_data                     OUT NOCOPY VARCHAR2,
425     p_from_chr_id                  IN NUMBER,
426     p_to_chr_id                    IN NUMBER) IS
427 
428     l_cacv_rec  cacv_rec_type;
429     x_cacv_rec  cacv_rec_type;
430     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
431 
432     CURSOR      c_access IS
433     SELECT      id
434     FROM        okc_k_accesses_v
435     WHERE       chr_id = p_from_chr_id;
436 
437   BEGIN
438     x_return_status := l_return_status;
439     FOR l_c_access IN c_access LOOP
440       l_return_status := get_cacv_rec(  p_cac_id        => l_c_access.id,
441                                         x_cacv_rec      => l_cacv_rec);
442       l_cacv_rec.chr_id := p_to_chr_id;
443 
444       OKC_CONTRACT_PUB.create_contract_access(
445            p_api_version        => p_api_version,
446            p_init_msg_list      => p_init_msg_list,
447            x_return_status      => l_return_status,
448            x_msg_count          => x_msg_count,
449            x_msg_data           => x_msg_data,
450            p_cacv_rec           => l_cacv_rec,
451            x_cacv_rec           => x_cacv_rec);
452 
453       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
454         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
455           x_return_status := l_return_status;
456           RAISE G_EXCEPTION_HALT_VALIDATION;
457         ELSE
458              x_return_status := l_return_status;
459         END IF;
460       END IF;
461     END LOOP;
462 
463   EXCEPTION
464     WHEN G_EXCEPTION_HALT_VALIDATION THEN
465       NULL;
466     WHEN OTHERS THEN
467       -- store SQL error message on message stack for caller
468       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
469       -- notify caller of an UNEXPECTED error
470       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
471 
472   END copy_accesses;
473 
474   ----------------------------------------------------------------------------
475   --Proceudre copy_processes - Makes a copy of the okc_k_processes.
476   ----------------------------------------------------------------------------
477   PROCEDURE copy_processes(
478     p_api_version                  IN NUMBER,
479     p_init_msg_list                IN VARCHAR2 ,
480     x_return_status                OUT NOCOPY VARCHAR2,
481     x_msg_count                    OUT NOCOPY NUMBER,
482     x_msg_data                     OUT NOCOPY VARCHAR2,
483     p_from_chr_id                  IN NUMBER,
484     p_to_chr_id                    IN NUMBER) IS
485 
486     l_cpsv_rec  cpsv_rec_type;
487     x_cpsv_rec  cpsv_rec_type;
488     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
489 
490     CURSOR      c_process IS
491     SELECT      id
492     FROM        okc_k_processes_v
493     WHERE       chr_id = p_from_chr_id;
494 
495   BEGIN
496     x_return_status := l_return_status;
497     FOR l_c_process IN c_process LOOP
498       l_return_status := get_cpsv_rec(  p_cps_id        => l_c_process.id,
499                                         x_cpsv_rec      => l_cpsv_rec);
500       l_cpsv_rec.chr_id := p_to_chr_id;
501       l_cpsv_rec.process_id := NULL;
502 
503       OKC_CONTRACT_PUB.create_contract_process(
504            p_api_version        => p_api_version,
505            p_init_msg_list      => p_init_msg_list,
506            x_return_status      => l_return_status,
507            x_msg_count          => x_msg_count,
508            x_msg_data           => x_msg_data,
509            p_cpsv_rec           => l_cpsv_rec,
510            x_cpsv_rec           => x_cpsv_rec);
511 
512       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
513         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
514           x_return_status := l_return_status;
515           RAISE G_EXCEPTION_HALT_VALIDATION;
516         ELSE
517              x_return_status := l_return_status;
518         END IF;
519       END IF;
520     END LOOP;
521 
522   EXCEPTION
523     WHEN G_EXCEPTION_HALT_VALIDATION THEN
524       NULL;
525     WHEN OTHERS THEN
526       -- store SQL error message on message stack for caller
527       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
528       -- notify caller of an UNEXPECTED error
529       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
530 
531   END copy_processes;
532 
533  ----------------------------------------------------------------------------
534   --Proceudre copy_grpings - Makes a copy of the okc_k_grpings.
535   ----------------------------------------------------------------------------
536   PROCEDURE copy_grpings(
537     p_api_version                  IN NUMBER,
538     p_init_msg_list                IN VARCHAR2 ,
539     x_return_status                OUT NOCOPY VARCHAR2,
540     x_msg_count                    OUT NOCOPY NUMBER,
541     x_msg_data                     OUT NOCOPY VARCHAR2,
542     p_from_chr_id                  IN NUMBER,
543     p_to_chr_id                    IN NUMBER) IS
544 
545     l_cgcv_rec  cgcv_rec_type;
546     x_cgcv_rec  cgcv_rec_type;
547     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
548 
549     CURSOR      c_grpings IS
550     SELECT      cgcv.id
551     FROM             okc_k_grpings_v cgcv,
552                okc_k_groups_b cgpv
553     WHERE       cgcv.included_chr_id = p_from_chr_id
554     AND        cgcv.cgp_parent_id = cgpv.id
555     AND        (cgpv.public_yn = 'Y' OR cgpv.user_id = fnd_global.user_id);
556 
557   BEGIN
558     x_return_status := l_return_status;
559     FOR l_c_grpings IN c_grpings LOOP
560       l_return_status := get_cgcv_rec(  p_cgc_id        => l_c_grpings.id,
561                                         x_cgcv_rec      => l_cgcv_rec);
562       l_cgcv_rec.included_chr_id := p_to_chr_id;
563 
564       OKC_CONTRACT_GROUP_PUB.create_contract_grpngs(
565            p_api_version        => p_api_version,
566            p_init_msg_list      => p_init_msg_list,
567            x_return_status      => l_return_status,
568            x_msg_count          => x_msg_count,
569            x_msg_data           => x_msg_data,
570            p_cgcv_rec           => l_cgcv_rec,
571            x_cgcv_rec           => x_cgcv_rec);
572 
573       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
574         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
575           x_return_status := l_return_status;
576           RAISE G_EXCEPTION_HALT_VALIDATION;
577         ELSE
578              x_return_status := l_return_status;
579         END IF;
580       END IF;
581     END LOOP;
582 
583   EXCEPTION
584     WHEN G_EXCEPTION_HALT_VALIDATION THEN
585       NULL;
586     WHEN OTHERS THEN
587       -- store SQL error message on message stack for caller
588       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
589       -- notify caller of an UNEXPECTED error
590       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
591 
592   END copy_grpings;
593 
594 /******
595   ----------------------------------------------------------------------------
596   --Proceudre copy_price_att_values - Makes a copy of the price attribute values.
597   ----------------------------------------------------------------------------
598   PROCEDURE copy_price_att_values(
599     p_api_version                  IN NUMBER,
600     p_init_msg_list                IN VARCHAR2 ,
601     x_return_status                OUT NOCOPY VARCHAR2,
602     x_msg_count                    OUT NOCOPY NUMBER,
603     x_msg_data                     OUT NOCOPY VARCHAR2,
604     p_pav_id                       IN NUMBER,
605     p_cle_id                       IN NUMBER ,
606     p_chr_id                       IN NUMBER ,
607     x_pav_id                       OUT NOCOPY NUMBER) IS
608 
609     l_pavv_rec  pavv_rec_type;
610     x_pavv_rec  pavv_rec_type;
611 
612     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
613     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
614 
615   BEGIN
616     x_return_status := l_return_status;
617     l_return_status := get_pavv_rec(    p_pav_id        => p_pav_id,
618                                         x_pavv_rec      => l_pavv_rec);
619 
620     l_pavv_rec.chr_id := p_chr_id;
621     l_pavv_rec.cle_id := p_cle_id;
622 
623     OKC_PRICE_ADJUSTMENT_PUB.create_price_att_value(
624            p_api_version        => p_api_version,
625            p_init_msg_list      => p_init_msg_list,
626            x_return_status      => l_return_status,
627            x_msg_count          => x_msg_count,
628            x_msg_data           => x_msg_data,
629            p_pavv_rec           => l_pavv_rec,
630            x_pavv_rec           => x_pavv_rec);
631 
632       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
633         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
634           x_return_status := l_return_status;
635           RAISE G_EXCEPTION_HALT_VALIDATION;
636         ELSE
637              x_return_status := l_return_status;
638         END IF;
639       END IF;
640 
641     x_pav_id := x_pavv_rec.id; -- passes the new generated id to the caller.
642 
643   EXCEPTION
644     WHEN G_EXCEPTION_HALT_VALIDATION THEN
645       NULL;
646     WHEN OTHERS THEN
647       -- store SQL error message on message stack for caller
648       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
649       -- notify caller of an UNEXPECTED error
650       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
651 
652   END copy_price_att_values;
653 
654 *****************************/
655 
656 /*******************
657   -------------------------------------------
658 --------copy price adjustments
659 ------------------------------------
660    PROCEDURE copy_price_adjustments(
661     p_api_version                  IN NUMBER,
662     p_init_msg_list                IN VARCHAR2 ,
663     x_return_status                OUT NOCOPY VARCHAR2,
664     x_msg_count                    OUT NOCOPY NUMBER,
665     x_msg_data                     OUT NOCOPY VARCHAR2,
666     p_pat_id                       IN NUMBER,
667     p_cle_id                       IN NUMBER ,
668     p_chr_id                       IN NUMBER ,
669     x_pat_id                       OUT NOCOPY NUMBER) IS
670 
671     l_patv_rec  patv_rec_type;
672     x_patv_rec  patv_rec_type;
673 
674     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
675     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
676 
677     l_new_pat_id  NUMBER;
678   BEGIN
679     x_return_status := l_return_status;
680     l_return_status := get_patv_rec(    p_pat_id        => p_pat_id,
681                                         x_patv_rec      => l_patv_rec);
682 
683     l_patv_rec.chr_id := p_chr_id;
684     l_patv_rec.cle_id := p_cle_id;
685     l_patv_rec.id := NULL;
686 
687    IF get_new_pat_id(l_patv_rec.pat_id,l_new_pat_id) THEN
688         l_patv_rec.pat_id := l_new_pat_id;
689    END IF;
690     OKC_PRICE_ADJUSTMENT_PUB.create_price_adjustment(
691            p_api_version        => p_api_version,
692            p_init_msg_list      => p_init_msg_list,
693            x_return_status      => l_return_status,
694            x_msg_count          => x_msg_count,
695            x_msg_data           => x_msg_data,
696            p_patv_rec           => l_patv_rec,
697            x_patv_rec           => x_patv_rec);
698 
699 
700            IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
701         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
702           x_return_status := l_return_status;
703           RAISE G_EXCEPTION_HALT_VALIDATION;
704         ELSE
705              x_return_status := l_return_status;
706         END IF;
707       END IF;
708 
709     x_pat_id := x_patv_rec.id; -- passes the new generated id to the caller.
710    add_price_adjustments(p_pat_id,x_patv_rec.id);
711 
712   EXCEPTION
713     WHEN G_EXCEPTION_HALT_VALIDATION THEN
714       NULL;
715     WHEN OTHERS THEN
716       -- store SQL error message on message stack for caller
717       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
718       -- notify caller of an UNEXPECTED error
719       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
720 
721   END copy_price_adjustments;
722 ************************************/
723 ---------------------------------------------------------------------------------------------------
724 
725   ----------------------------------------------------------------------------
726   --Function to populate the contract governance record to be copied.
727   ----------------------------------------------------------------------------
728     FUNCTION get_gvev_rec(p_gve_id IN NUMBER,
729 				      x_gvev_rec OUT NOCOPY gvev_rec_type)
730     RETURN  VARCHAR2 IS
731       l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
732       l_no_data_found BOOLEAN := TRUE;
733 
734       CURSOR c_gvev_rec IS
735       SELECT
736 	    DNZ_CHR_ID,
737 	    ISA_AGREEMENT_ID,
738 	    CHR_ID,
739 	    CLE_ID,
740 	    CHR_ID_REFERRED,
741 	    CLE_ID_REFERRED,
742 	    COPIED_ONLY_YN
743 	 FROM    OKC_GOVERNANCES
744 	 WHERE 	ID = p_gve_id;
745     BEGIN
746       OPEN c_gvev_rec;
747       FETCH c_gvev_rec
748       INTO x_gvev_rec.DNZ_CHR_ID,
749 		x_gvev_rec.ISA_AGREEMENT_ID,
750 		x_gvev_rec.CHR_ID,
751 		x_gvev_rec.CLE_ID,
752 		x_gvev_rec.CHR_ID_REFERRED,
753 		x_gvev_rec.CLE_ID_REFERRED,
754 		x_gvev_rec.COPIED_ONLY_YN;
755 
756       l_no_data_found := c_gvev_rec%NOTFOUND;
757       CLOSE c_gvev_rec;
758       IF l_no_data_found THEN
759         l_return_status := FND_API.G_RET_STS_ERROR;
760         return(l_return_status);
761       ELSE
762         return(l_return_status);
763       END IF;
764     EXCEPTION
765       WHEN OTHERS THEN
766         -- store SQL error message on message stack for caller
767         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
768         -- notify caller of an UNEXPECTED error
769         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
770         return(l_return_status);
771 
772     END get_gvev_rec;
773 
774   --------------------------------------------------------------------------
775   --Procedure copy_governances - Makes a copy of the okc_governances
776   --------------------------------------------------------------------------
777   PROCEDURE copy_governances(
778     p_api_version                  IN NUMBER,
779     p_init_msg_list                IN VARCHAR2 ,
780     x_return_status                OUT NOCOPY VARCHAR2,
781     x_msg_count                    OUT NOCOPY NUMBER,
782     x_msg_data                     OUT NOCOPY VARCHAR2,
783     p_gvev_id                      IN NUMBER,
784     p_cle_id                       IN NUMBER ,
785     p_chr_id                       IN NUMBER ,
786     x_gvev_id                      OUT NOCOPY NUMBER) IS
787 
788 
789     l_gvev_rec  gvev_rec_type;
790     x_gvev_rec  gvev_rec_type;
791 
792     l_return_status     VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
793 
794   BEGIN
795 
796     x_return_status := l_return_status;
797 
798     l_return_status := get_gvev_rec(p_gve_id   => p_gvev_id,
799                                     x_gvev_rec => l_gvev_rec);
800 
801     IF p_cle_id IS NOT NULL AND p_cle_id <> OKC_API.G_MISS_NUM THEN
802        --we are copying at line level so chr_id should be null
803        l_gvev_rec.chr_id        :=   NULL;
804     ELSE
805        --we are copying at header level
806        l_gvev_rec.chr_id        :=   p_chr_id;
807     END IF;
808 
809     l_gvev_rec.dnz_chr_id    :=   p_chr_id;
810     l_gvev_rec.cle_id        :=   p_cle_id;   --p_cle_id will be passed here as null if we are copying at header level
811 
812 
813     OKC_CONTRACT_PUB.create_governance(
814            p_api_version        => p_api_version,
815            p_init_msg_list      => p_init_msg_list,
816            x_return_status      => l_return_status,
817            x_msg_count          => x_msg_count,
818            x_msg_data           => x_msg_data,
819            p_gvev_rec           => l_gvev_rec,
820            x_gvev_rec           => x_gvev_rec);
821 
822     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
823         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
824             x_return_status := l_return_status;
825             RAISE G_EXCEPTION_HALT_VALIDATION;
826         ELSE
827             x_return_status := l_return_status;
828         END IF;
829     END IF;
830 
831     x_gvev_id := x_gvev_rec.id; -- passes the new generated id to the caller.
832 
833   EXCEPTION
834     WHEN G_EXCEPTION_HALT_VALIDATION THEN
835       NULL;
836     WHEN OTHERS THEN
837       -- store SQL error message on message stack for caller
838       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
839       -- notify caller of an UNEXPECTED error
840       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
841 
842   END copy_governances;
843 
844  ----------------------------------------------------------------------------
845   --Proceudre copy_party_roles - Makes a copy of the party_roles.
846   ----------------------------------------------------------------------------
847   PROCEDURE copy_party_roles(
848     p_api_version                  IN NUMBER,
849     p_init_msg_list                IN VARCHAR2 ,
850     x_return_status                OUT NOCOPY VARCHAR2,
851     x_msg_count                    OUT NOCOPY NUMBER,
852     x_msg_data                     OUT NOCOPY VARCHAR2,
853     p_cpl_id                       IN NUMBER,
854     p_cle_id                       IN NUMBER ,
855     p_chr_id                       IN NUMBER ,
856     P_rle_code                     IN VARCHAR2,
857     x_cpl_id                       OUT NOCOPY NUMBER) IS
858 
859     l_cplv_rec  cplv_rec_type;
860     x_cplv_rec  cplv_rec_type;
861     l_ctcv_rec  ctcv_rec_type;
862     x_ctcv_rec  ctcv_rec_type;
863 
864     l_party_name                VARCHAR2(200);
865     l_party_desc                VARCHAR2(2000);
866     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
867     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
868 
869     CURSOR c_dnz_chr_id(p_id IN NUMBER) IS
870     SELECT dnz_chr_id
871     FROM okc_k_lines_b
872     WHERE id = p_id;
873 
874     CURSOR c_ctcv IS
875     SELECT id
876     FROM okc_contacts_v
877     WHERE cpl_id = p_cpl_id;
878 
879   BEGIN
880     x_return_status := l_return_status;
881     l_return_status := get_cplv_rec(    p_cpl_id        => p_cpl_id,
882                                         x_cplv_rec      => l_cplv_rec);
883 
884     IF p_chr_id IS NULL OR p_chr_id = OKC_API.G_MISS_NUM THEN
885       OPEN c_dnz_chr_id(p_cle_id);
886       FETCH c_dnz_chr_id INTO l_cplv_rec.dnz_chr_id;
887       CLOSE c_dnz_chr_id;
888     ELSE
889       l_cplv_rec.dnz_chr_id := p_chr_id;
890     END IF;
891 
892     l_cplv_rec.chr_id := p_chr_id;
893     l_cplv_rec.cle_id := p_cle_id;
894     IF p_rle_code IS NOT NULL THEN
895       l_cplv_rec.rle_code := p_rle_code;
896     END IF;
897 
898     OKC_CONTRACT_PARTY_PUB.create_k_party_role(
899            p_api_version        => p_api_version,
900            p_init_msg_list      => p_init_msg_list,
901            x_return_status      => l_return_status,
902            x_msg_count          => x_msg_count,
903            x_msg_data           => x_msg_data,
904            p_cplv_rec           => l_cplv_rec,
905            x_cplv_rec           => x_cplv_rec);
906 
907       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
908           x_return_status := l_return_status;
909           RAISE G_EXCEPTION_HALT_VALIDATION;
910       END IF;
911 
912     x_cpl_id := x_cplv_rec.id; -- passes the new generated id to the caller.
913 
914      --stores the new rul_id in a global pl/sql table.
915      add_party(l_cplv_rec.id,x_cplv_rec.id);
916 
917 
918     FOR l_c_ctcv IN c_ctcv LOOP
919       l_return_status := get_ctcv_rec(  p_ctc_id        => l_c_ctcv.id,
920                                         x_ctcv_rec      => l_ctcv_rec);
921 
922       l_ctcv_rec.dnz_chr_id := l_cplv_rec.dnz_chr_id;
923       l_ctcv_rec.cpl_id := x_cplv_rec.id;
924 
925       OKC_CONTRACT_PARTY_PUB.create_contact(
926            p_api_version        => p_api_version,
927            p_init_msg_list      => p_init_msg_list,
928            x_return_status      => l_return_status,
929            x_msg_count          => x_msg_count,
930            x_msg_data           => x_msg_data,
931            p_ctcv_rec           => l_ctcv_rec,
932            x_ctcv_rec           => x_ctcv_rec);
933 
934      IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
935         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
936           x_return_status := l_return_status;
937           RAISE G_EXCEPTION_HALT_VALIDATION;
938         ELSE
939           x_return_status := OKC_API.G_RET_STS_WARNING;
940           okc_util.get_name_desc_from_jtfv( p_object_code  => x_cplv_rec.jtot_object1_code,
941                                         p_id1          => x_cplv_rec.object1_id1,
942                                         p_id2          => x_cplv_rec.object1_id2,
943                                         x_name         => l_party_name,
944                                         x_description  => l_party_desc);
945 
946           OKC_API.set_message(G_APP_NAME,'OKC_CONTACT_NOT_COPIED','PARTY_NAME',l_party_name);
947         END IF;
948       END IF;
949     END LOOP;
950 
951   EXCEPTION
952     WHEN G_EXCEPTION_HALT_VALIDATION THEN
953       NULL;
954     WHEN OTHERS THEN
955       -- store SQL error message on message stack for caller
956       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
957       -- notify caller of an UNEXPECTED error
958       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
959 
960   END copy_party_roles;
961 
962 /****************************
963 ----------------------------------------------------------------------------
964   --Proceudre copy_events - Makes a copy of the condition header and all condition lines under the header.
965   ----------------------------------------------------------------------------
966   PROCEDURE copy_events(
967     p_api_version                  IN NUMBER,
968     p_init_msg_list                IN VARCHAR2 ,
969     x_return_status                OUT NOCOPY VARCHAR2,
970     x_msg_count                    OUT NOCOPY NUMBER,
971     x_msg_data                     OUT NOCOPY VARCHAR2,
972     p_cnh_id                       IN NUMBER,
973     p_chr_id                       IN NUMBER ,
974     p_to_template_yn               IN VARCHAR2,
975     x_cnh_id                       OUT NOCOPY NUMBER) IS
976 
977     l_cnhv_rec  cnhv_rec_type;
978     x_cnhv_rec  cnhv_rec_type;
979     l_cnlv_rec  cnlv_rec_type;
980     x_cnlv_rec  cnlv_rec_type;
981     l_ocev_rec  ocev_rec_type;
982     x_ocev_rec  ocev_rec_type;
983     l_oatv_rec  oatv_rec_type;
984     x_oatv_rec  oatv_rec_type;
985 
986     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
987     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
988     l_new_cnh_id                NUMBER;
989 
990     CURSOR      c_cnlv IS
991     SELECT      id
992     FROM        okc_condition_lines_b
993     WHERE       cnh_id = p_cnh_id;
994 
995     CURSOR      c_ocev IS
996     SELECT      id
997     FROM        okc_outcomes_b
998     WHERE       cnh_id = p_cnh_id;
999 
1000     CURSOR      c_oatv(p_oce_id IN NUMBER) IS
1001     SELECT      id
1002     FROM        okc_outcome_arguments_v
1003     WHERE       oce_id = p_oce_id;
1004 
1005   BEGIN
1006     x_return_status := l_return_status;
1007     IF get_new_cnh_id(p_cnh_id,l_new_cnh_id) THEN --If the events is already copied then return.
1008       x_cnh_id := l_new_cnh_id;
1009       RAISE G_EXCEPTION_HALT_VALIDATION;
1010     END IF;
1011     l_return_status := get_cnhv_rec(    p_cnh_id        => p_cnh_id,
1012                                         x_cnhv_rec      => l_cnhv_rec);
1013 
1014     l_cnhv_rec.dnz_chr_id := p_chr_id;
1015     l_cnhv_rec.object_id  := p_chr_id;
1016     l_cnhv_rec.jtot_object_code  := 'OKC_K_HEADER';
1017     IF p_to_template_yn = 'Y' THEN
1018       l_cnhv_rec.template_yn := 'Y';
1019     ELSIF p_to_template_yn = 'N' THEN
1020       l_cnhv_rec.template_yn := 'N';
1021     END IF;
1022     If (l_cnhv_rec.date_active < g_chrv_rec.start_date OR
1023            l_cnhv_rec.date_active > g_chrv_rec.end_date)
1024     Then
1025         l_cnhv_rec.date_active := g_chrv_rec.start_date;
1026     End If;
1027     If (l_cnhv_rec.date_inactive > g_chrv_rec.end_date OR
1028            l_cnhv_rec.date_inactive < g_chrv_rec.start_date)
1029     Then
1030         l_cnhv_rec.date_inactive := g_chrv_rec.end_date;
1031     End If;
1032 
1033     OKC_CONDITIONS_PUB.create_cond_hdrs(
1034            p_api_version        => p_api_version,
1035            p_init_msg_list      => p_init_msg_list,
1036            x_return_status      => l_return_status,
1037            x_msg_count          => x_msg_count,
1038            x_msg_data           => x_msg_data,
1039            p_cnhv_rec           => l_cnhv_rec,
1040            x_cnhv_rec           => x_cnhv_rec);
1041 
1042 
1043       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1044         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1045           x_return_status := l_return_status;
1046           RAISE G_EXCEPTION_HALT_VALIDATION;
1047         ELSE
1048              x_return_status := OKC_API.G_RET_STS_WARNING;
1049              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1050                FND_LOG.string(FND_LOG.level_statement
1051                         ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.copy_events'
1052                         ,'After call to OKC_CONDITIONS_PUB.create_cond_hdrs'
1053                          ||' x_return_status:'||l_return_status
1054                          ||' x_err_msg='||fnd_msg_pub.get(p_encoded=>'F')
1055                          );
1056              END IF;
1057 
1058 
1059 
1060           OKC_API.set_message(G_APP_NAME,'OKC_CONDITION_NOT_COPIED','CONDITION',l_cnhv_rec.name);
1061           RAISE G_EXCEPTION_HALT_VALIDATION;
1062         END IF;
1063       END IF;
1064 
1065     x_cnh_id := x_cnhv_rec.id; -- passes the new generated id to the caller.
1066 
1067     FOR l_c_cnlv IN c_cnlv LOOP
1068       l_return_status := get_cnlv_rec(  p_cnl_id        => l_c_cnlv.id,
1069                                         x_cnlv_rec      => l_cnlv_rec);
1070 
1071       l_cnlv_rec.dnz_chr_id := l_cnhv_rec.dnz_chr_id;
1072       l_cnlv_rec.cnh_id := x_cnhv_rec.id;
1073 
1074       OKC_CONDITIONS_PUB.create_cond_lines(
1075            p_api_version        => p_api_version,
1076            p_init_msg_list      => p_init_msg_list,
1077            x_return_status      => l_return_status,
1078            x_msg_count          => x_msg_count,
1079            x_msg_data           => x_msg_data,
1080            p_cnlv_rec           => l_cnlv_rec,
1081            x_cnlv_rec           => x_cnlv_rec);
1082 
1083       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1084         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1085           x_return_status := l_return_status;
1086           RAISE G_EXCEPTION_HALT_VALIDATION;
1087         ELSE
1088              x_return_status := l_return_status;
1089         END IF;
1090       END IF;
1091     END LOOP;
1092 
1093    FOR l_c_ocev IN c_ocev LOOP
1094       l_return_status := get_ocev_rec(  p_oce_id        => l_c_ocev.id,
1095                                         x_ocev_rec      => l_ocev_rec);
1096 
1097       l_ocev_rec.dnz_chr_id := l_cnhv_rec.dnz_chr_id;
1098       l_ocev_rec.cnh_id := x_cnhv_rec.id;
1099 
1100       OKC_OUTCOME_PUB.create_outcome(
1101            p_api_version        => p_api_version,
1102            p_init_msg_list      => p_init_msg_list,
1103            x_return_status      => l_return_status,
1104            x_msg_count          => x_msg_count,
1105            x_msg_data           => x_msg_data,
1106            p_ocev_rec           => l_ocev_rec,
1107            x_ocev_rec           => x_ocev_rec);
1108 
1109       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1110         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1111           x_return_status := l_return_status;
1112           RAISE G_EXCEPTION_HALT_VALIDATION;
1113         ELSE
1114              x_return_status := l_return_status;
1115         END IF;
1116       END IF;
1117 
1118       FOR l_c_oatv IN c_oatv(l_ocev_rec.id) LOOP
1119         l_return_status := get_oatv_rec(        p_oat_id        => l_c_oatv.id,
1120                                         x_oatv_rec      => l_oatv_rec);
1121 
1122         l_oatv_rec.dnz_chr_id := l_cnhv_rec.dnz_chr_id;
1123         l_oatv_rec.oce_id := x_ocev_rec.id;
1124 
1125         OKC_OUTCOME_PUB.create_out_arg(
1126            p_api_version        => p_api_version,
1127            p_init_msg_list      => p_init_msg_list,
1128            x_return_status      => l_return_status,
1129            x_msg_count          => x_msg_count,
1130            x_msg_data           => x_msg_data,
1131            p_oatv_rec           => l_oatv_rec,
1132            x_oatv_rec           => x_oatv_rec);
1133 
1134         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1135           IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1136             x_return_status := l_return_status;
1137             RAISE G_EXCEPTION_HALT_VALIDATION;
1138           ELSE
1139              x_return_status := l_return_status;
1140           END IF;
1141         END IF;
1142       END LOOP;
1143 
1144     END LOOP;
1145 
1146     add_events(p_cnh_id,x_cnhv_rec.id); --adds the new event id in the global PL/SQL table.
1147 
1148   EXCEPTION
1149     WHEN G_EXCEPTION_HALT_VALIDATION THEN
1150       NULL;
1151     WHEN OTHERS THEN
1152       -- store SQL error message on message stack for caller
1153       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1154       -- notify caller of an UNEXPECTED error
1155       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1156 
1157   END copy_events;
1158 ***************************/
1159   ----------------------------------------------------------------------------
1160   --
1161   -- Procedure to set attachement session variables if they are null
1162   -- Currently set only set for OKCAUDET and OKSAUDET
1163   --
1164   -- If want to get rid of this hard coding, COPY should add
1165   -- parameters and user should pass attachement_funtion_name
1166   -- and attachment_funtion_type
1167   --
1168   PROCEDURE Set_Attach_Session_Vars(p_chr_id NUMBER) IS
1169     l_app_id NUMBER;
1170     Cursor l_chr_csr Is
1171 	      SELECT application_id
1172 	      FROM okc_k_headers_b
1173 	      WHERE id = p_chr_id;
1174   BEGIN
1175     If (p_chr_id IS NOT NULL AND
1176 	   FND_ATTACHMENT_UTIL_PKG.function_name IS NULL
1177 	  )
1178     Then
1179       open l_chr_csr;
1180       fetch l_chr_csr into l_app_id;
1181       close l_chr_csr;
1182 
1183        -- Added for Bug 2384423
1184       If (l_app_id = 515) Then
1185 	    FND_ATTACHMENT_UTIL_PKG.function_name := 'OKSAUDET';
1186 	    FND_ATTACHMENT_UTIL_PKG.function_type := 'O';
1187       Else
1188 	    FND_ATTACHMENT_UTIL_PKG.function_name := 'OKCAUDET';
1189 	    FND_ATTACHMENT_UTIL_PKG.function_type := 'O';
1190       End If;
1191 
1192     End If;
1193   END;
1194 
1195   ----------------------------------------------------------------------------
1196   -- Function to return the major version of the contract
1197   -- Major version is required to while copying attachments for
1198   -- header and line
1199   ----------------------------------------------------------------------------
1200   FUNCTION Get_Major_Version(p_chr_id NUMBER) RETURN VARCHAR2 IS
1201 
1202     CURSOR l_cvm_csr IS
1203     SELECT to_char(major_version)
1204     FROM okc_k_vers_numbers
1205     WHERE chr_id = p_chr_id;
1206 
1207     x_from_version  FND_ATTACHED_DOCUMENTS.PK2_VALUE%TYPE := NULL;
1208 
1209   BEGIN
1210     open l_cvm_csr;
1211     fetch l_cvm_csr into x_from_version;
1212     close l_cvm_csr;
1213 
1214     return x_from_version;
1215   EXCEPTION
1216     WHEN OTHERS THEN
1217          OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1218 	    return FND_API.G_RET_STS_UNEXP_ERROR;
1219 
1220   END Get_Major_Version;
1221 
1222   PROCEDURE get_priced_line_rec(p_api_version    IN NUMBER
1223   						,p_init_msg_list   IN VARCHAR2
1224 						,x_msg_count       OUT NOCOPY NUMBER
1225 						,x_msg_data        OUT NOCOPY VARCHAR2
1226   						,p_clev_rec  IN clev_rec_type
1227                               ,x_clev_rec  OUT NOCOPY clev_rec_type) IS
1228       l_priced_yn VARCHAR2(3);
1229       l_cim_id    NUMBER;
1230       l_lty_code  VARCHAR2(90);
1231       l_clev_rec  clev_rec_type := p_clev_rec;
1232       l_cimv_rec 	cimv_rec_type;
1233 
1234       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1235 
1236       CURSOR c_lse(p_id IN NUMBER) IS
1237       SELECT lty_code,
1238              priced_yn
1239       FROM   okc_line_styles_b
1240       WHERE  id = p_id;
1241 
1242       CURSOR c_cim(p_cle_id IN NUMBER) IS
1243       SELECT id
1244       FROM   okc_k_items_v
1245       WHERE  cle_id = p_cle_id
1246       AND    priced_item_yn = 'Y';
1247 
1248     BEGIN
1249       OPEN c_lse(l_clev_rec.lse_id);
1250       FETCH c_lse INTO l_lty_code,l_priced_yn;
1251       CLOSE c_lse;
1252 
1253       IF l_clev_rec.price_level_ind = 'N' THEN
1254         IF l_priced_yn = 'N' THEN
1255           l_clev_rec.price_negotiated := NULL;
1256         ELSE
1257           l_clev_rec.price_negotiated := NULL;
1258           IF l_lty_code <> 'FREE_FORM' THEN
1259             l_clev_rec.name := NULL;
1260           END IF;
1261         END IF;
1262       ELSE
1263         IF l_priced_yn = 'N' THEN
1264           l_clev_rec.price_negotiated := NULL;
1265           l_clev_rec.PRICE_UNIT := NULL;
1266           IF l_lty_code <> 'FREE_FORM' THEN
1267             l_clev_rec.name := NULL;
1268           END IF;
1269         ELSE
1270           OPEN c_cim(l_clev_rec.id);
1271           FETCH c_cim INTO l_cim_id;
1272           CLOSE c_cim;
1273 
1274           IF l_cim_id IS NOT NULL THEN
1275             l_return_status := get_cimv_rec(	p_cim_id 	=> l_cim_id,
1276     					x_cimv_rec 	=> l_cimv_rec);
1277             OKC_CONTRACT_ITEM_PUB.validate_contract_item(
1278       	          p_api_version	=> p_api_version,
1279                  p_init_msg_list	=> p_init_msg_list,
1280                  x_return_status 	=> l_return_status,
1281                  x_msg_count     	=> x_msg_count,
1282                  x_msg_data      	=> x_msg_data,
1283                  p_cimv_rec		=> l_cimv_rec);
1284 
1285              IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1286                l_clev_rec.price_negotiated := NULL;
1287                l_clev_rec.PRICE_UNIT := NULL;
1288                l_clev_rec.name := NULL;
1289              END IF;
1290            END IF;
1291          END IF;
1292       END IF;
1293       x_clev_rec := l_clev_rec;
1294     exception when others then
1295       x_clev_rec := l_clev_rec;
1296     END get_priced_line_rec;
1297 
1298     PROCEDURE instantiate_counters_events (
1299          p_api_version    IN NUMBER,
1300          p_init_msg_list  IN VARCHAR2 ,
1301          x_return_status  OUT NOCOPY VARCHAR2,
1302          x_msg_count      OUT NOCOPY NUMBER,
1303          x_msg_data       OUT NOCOPY VARCHAR2,
1304          p_old_cle_id     IN  NUMBER,
1305          p_old_lse_id     IN  NUMBER,
1306          p_start_date     IN  DATE,
1307          p_end_date       IN  DATE,
1308          p_new_cle_id     IN  NUMBER,
1309          --npalepu added on 20-mar-2006 for bug # 5102052
1310          p_new_chr_id     IN  NUMBER
1311          ---end npalepu
1312          ) IS
1313 
1314       l_item_id             VARCHAR2(40);
1315       l_counter_grp_id	   NUMBER;
1316       l_found               BOOLEAN;
1317       l_return_status	   VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1318       l_ctr_grp_id_template NUMBER;
1319       l_ctr_grp_id_instance NUMBER;
1320       l_instcnd_inp_rec     OKC_INST_CND_PUB.instcnd_inp_rec;
1321       l_ac_rec OKS_COVERAGES_PUB.ac_rec_type;
1322       l_actual_coverage_id NUMBER;
1323 
1324       CURSOR c_item IS
1325       SELECT object1_id1
1326       FROM   okc_k_items
1327       WHERE  cle_id = p_old_cle_id;
1328 
1329       Cursor l_ctr_csr (p_id Number) Is
1330 	 Select Counter_Group_id
1331 	 From   CS_CTR_ASSOCIATIONS --OKX_CTR_ASSOCIATIONS_V
1332 	 Where  Source_Object_Id = p_id;
1333 
1334     BEGIN
1335       x_return_status := l_return_status;
1336 
1337       OPEN c_item;
1338       FETCH c_item INTO l_item_id;
1339       CLOSE c_item;
1340 
1341       IF l_item_id IS NOT NULL AND Is_Number(l_item_id) THEN
1342 
1343 	    -- Check whether counters are attached to the item
1344 	    OPEN l_ctr_csr(l_item_id);
1345 	    FETCH l_ctr_csr INTO l_counter_grp_id;
1346          l_found := l_ctr_csr%FOUND;
1347 	    CLOSE l_ctr_csr;
1348 
1349         If (l_found) Then
1350 		   CS_COUNTERS_PUB.AUTOINSTANTIATE_COUNTERS(
1351 			 p_api_version               => p_api_version,
1352 			 p_init_msg_list             => p_init_msg_list,
1353 			 x_return_status             => l_return_status,
1354 			 x_msg_count                 => x_msg_count,
1355 			 x_msg_data             	    => x_msg_data,
1356 			 p_commit                    => 'F',
1357 			 p_source_object_id_template => l_item_id, --474 from c_item for old line
1358 			 p_source_object_id_instance => p_new_cle_id,--new line id
1359 			 x_ctr_grp_id_template       => l_ctr_grp_id_template,
1360 			 x_ctr_grp_id_instance       => l_ctr_grp_id_instance);
1361 
1362     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1363       FND_LOG.string(FND_LOG.level_statement
1364                         ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.instantiate_counters'
1365                         ,'After call to CS_COUNTERS_PUB.AUTOINSTANTIATE_COUNTERS'
1366 		       ||'p_new_cle_id='||p_new_cle_id
1367                        ||'x_ctr_grp_id_template='||l_ctr_grp_id_template
1368                        ||'x_ctr_grp_id_instance='||l_ctr_grp_id_instance
1369                          );
1370     END IF;
1371 
1372 
1373 		   IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1374 			x_return_status := l_return_status;
1375 			RAISE G_EXCEPTION_HALT_VALIDATION;
1376 		   END IF;
1377 
1378 		   l_instcnd_inp_rec.ins_ctr_grp_id   := l_ctr_grp_id_instance;
1379 		   l_instcnd_inp_rec.tmp_ctr_grp_id   := l_ctr_grp_id_template;
1380 		   l_instcnd_inp_rec.jtot_object_code := 'OKC_K_LINE';
1381 		   l_instcnd_inp_rec.cle_id           := p_new_cle_id;
1382 		   l_instcnd_inp_rec.inv_item_id      := l_item_id;
1383                    --npalepu added on 20-mar-2006 for bug # 5102052
1384                    l_instcnd_inp_rec.chr_id           := p_new_chr_id;
1385                    --end npalepu
1386 
1387 		   OKC_INST_CND_PUB.INST_CONDITION(
1388 			 p_api_version               => p_api_version,
1389 			 p_init_msg_list             => p_init_msg_list,
1390 			 x_return_status             => l_return_status,
1391 			 x_msg_count                 => x_msg_count,
1392 			 x_msg_data             	    => x_msg_data,
1393 			 p_instcnd_inp_rec           => l_instcnd_inp_rec);
1394 
1395 		   IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1396 			x_return_status := l_return_status;
1397 			RAISE G_EXCEPTION_HALT_VALIDATION;
1398 		   END IF;
1399           End If;
1400       END IF;
1401 
1402     EXCEPTION
1403       WHEN G_EXCEPTION_HALT_VALIDATION THEN
1404         NULL;
1405       WHEN OTHERS THEN
1406         -- store SQL error message on message stack for caller
1407         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1408         -- notify caller of an UNEXPECTED error
1409         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1410     END instantiate_counters_events;
1411 
1412     FUNCTION get_parent_date(p_from_start_date IN DATE,
1413                              p_from_end_date   IN DATE,
1414                              p_to_cle_id       IN NUMBER,
1415                              p_to_chr_id       IN NUMBER,
1416                              x_start_date      OUT NOCOPY DATE,
1417                              x_end_date        OUT NOCOPY DATE) RETURN BOOLEAN IS
1418 
1419       l_parent_start_date      DATE;
1420       l_parent_end_date        DATE;
1421 
1422 	 CURSOR  c_cle IS
1423       SELECT  start_date,end_date
1424       FROM    okc_k_lines_b
1425       WHERE   id = p_to_cle_id;
1426 
1427 	 CURSOR  c_chr IS
1428       SELECT  start_date,end_date
1429       FROM    okc_k_headers_b
1430       WHERE   id = p_to_chr_id;
1431 
1432     BEGIN
1433       IF (p_to_chr_id IS NULL OR p_to_chr_id = OKC_API.G_MISS_NUM) THEN
1434         OPEN c_cle;
1435         FETCH c_cle INTO l_parent_start_date,l_parent_end_date;
1436         CLOSE c_cle;
1437         IF (NVL(p_from_start_date,sysdate)
1438            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) AND
1439            (NVL(p_from_end_date,sysdate)
1440            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) THEN
1441            RETURN(TRUE);
1442         ELSE
1443            x_start_date := l_parent_start_date;
1444            x_end_date := l_parent_end_date;
1445            RETURN(FALSE);
1446         END IF;
1447       ELSE
1448         OPEN c_chr;
1449         FETCH c_chr INTO l_parent_start_date,l_parent_end_date;
1450         CLOSE c_chr;
1451         IF (NVL(p_from_start_date,sysdate)
1452            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) AND
1453            (NVL(p_from_end_date,sysdate)
1454            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) THEN
1455            RETURN(TRUE);
1456         ELSE
1457            x_start_date := l_parent_start_date;
1458            x_end_date := l_parent_end_date;
1459            RETURN(FALSE);
1460        END IF;
1461      END IF;
1462      RETURN(TRUE);
1463     END get_parent_date;
1464 
1465   ----------------------------------------------------------------------------
1466 ----------------------------------------------------------------------------
1467   -- Proceduere to create operation instance and operation lines for
1468   -- contract header in case of RENEW
1469   -- Parameters: p_chrv_rec    - in header record for object_chr_id and scs_code
1470   --             p_to_chr_id   - subject_chr_id
1471 ----------------------------------------------------------------------------
1472   PROCEDURE Create_Renewal_Header_Link (
1473     p_api_version                  IN NUMBER,
1474     p_init_msg_list                IN VARCHAR2 ,
1475     x_return_status                OUT NOCOPY VARCHAR2,
1476     x_msg_count                    OUT NOCOPY NUMBER,
1477     x_msg_data                     OUT NOCOPY VARCHAR2,
1478     p_chrv_rec                     IN OKC_CONTRACT_PUB.chrv_rec_type,
1479     p_to_chr_id                    IN NUMBER)
1480   IS
1481     -- Cursor to get class operation id
1482     Cursor cop_csr Is
1483 		 SELECT id
1484 		 FROM okc_class_operations
1485 		 WHERE cls_code = ( SELECT cls_code
1486 						FROM okc_subclasses_b
1487 						WHERE code = p_chrv_rec.scs_code )
1488            AND opn_code = 'RENEWAL';
1489 
1490     l_cop_id        NUMBER;
1491     l_oiev_rec      OKC_OPER_INST_PUB.oiev_rec_type;
1492     lx_oiev_rec     OKC_OPER_INST_PUB.oiev_rec_type;
1493     l_olev_rec      OKC_OPER_INST_PUB.olev_rec_type;
1494     lx_olev_rec     OKC_OPER_INST_PUB.olev_rec_type;
1495     l_count         NUMBER := 0;
1496   BEGIN
1497     -- get class operation id
1498     open cop_csr;
1499     fetch cop_csr into l_cop_id;
1500     close cop_csr;
1501 
1502     l_oiev_rec.cop_id := l_cop_id;
1503     l_oiev_rec.target_chr_id := p_to_chr_id;
1504     --l_oiev_rec.status_code := 'ENTERED';
1505     l_oiev_rec.status_code := 'PROCESSED';
1506 
1507     OKC_OPER_INST_PUB.Create_Operation_Instance (
1508 	 p_api_version		=> p_api_version,
1509 	 p_init_msg_list	=> p_init_msg_list,
1510       x_return_status 	=> x_return_status,
1511       x_msg_count     	=> x_msg_count,
1512       x_msg_data      	=> x_msg_data,
1513       p_oiev_rec		=> l_oiev_rec,
1514       x_oiev_rec		=> lx_oiev_rec);
1515 
1516    If (x_return_status = FND_API.G_RET_STS_SUCCESS) Then
1517        l_olev_rec.SELECT_YN      := NULL;
1518        l_olev_rec.ACTIVE_YN      := 'Y';
1519        l_olev_rec.PROCESS_FLAG   := 'P';
1520 	  l_olev_rec.OIE_ID         := lx_oiev_rec.id;
1521 	  l_olev_rec.SUBJECT_CHR_ID := p_to_chr_id;
1522 	  l_olev_rec.OBJECT_CHR_ID  := p_chrv_rec.id;
1523 
1524        OKC_OPER_INST_PUB.Create_Operation_Line (
1525 	       p_api_version	=> p_api_version,
1526 	       p_init_msg_list	=> p_init_msg_list,
1527             x_return_status 	=> x_return_status,
1528             x_msg_count     	=> x_msg_count,
1529             x_msg_data      	=> x_msg_data,
1530             p_olev_rec		=> l_olev_rec,
1531             x_olev_rec		=> lx_olev_rec);
1532 	  If (x_return_status = FND_API.G_RET_STS_SUCCESS) Then
1533            -- set g_op_lines table
1534            l_count := g_op_lines.COUNT + 1;
1535            g_op_lines(l_count).id     := p_chrv_rec.ID;
1536            g_op_lines(l_count).ole_id := lx_olev_rec.ID;
1537        End if;
1538    End If;
1539 
1540   EXCEPTION
1541     when NO_DATA_FOUND then
1542 	  -- store SQL error message on message stack
1543 	  x_return_status := FND_API.G_RET_STS_ERROR;
1544   	  OKC_API.SET_MESSAGE(p_app_name		=> g_app_name,
1545 					  p_msg_name		=> 'OKC_NOT_FOUND',
1546 					  p_token1		=> 'VALUE1',
1547 					  p_token1_value	=> 'Status Code',
1548 					  p_token2		=> 'VALUE2',
1549 					  p_token2_value	=> 'OKC_CLASS_OPERATIONS_V');
1550     when OTHERS then
1551 	  -- store SQL error message on message stack
1552   	  OKC_API.SET_MESSAGE(p_app_name		=> g_app_name,
1553 					  p_msg_name		=> g_unexpected_error,
1554 					  p_token1		=> g_sqlcode_token,
1555 					  p_token1_value	=> sqlcode,
1556 					  p_token2		=> g_sqlerrm_token,
1557 					  p_token2_value	=> sqlerrm);
1558 	   -- notify caller of an error as UNEXPECTED error
1559         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1560   END Create_Renewal_Header_Link;
1561 
1562   ----------------------------------------------------------------------------
1563   --Proceudre copy_contract_header
1564   ----------------------------------------------------------------------------
1565   PROCEDURE copy_contract_header(
1566     p_api_version                  IN NUMBER,
1567     p_init_msg_list                IN VARCHAR2 ,
1568     x_return_status                OUT NOCOPY VARCHAR2,
1569     x_msg_count                    OUT NOCOPY NUMBER,
1570     x_msg_data                     OUT NOCOPY VARCHAR2,
1571     p_from_chr_id                  IN NUMBER,
1572     p_contract_number		   IN VARCHAR2,
1573     p_contract_number_modifier     IN VARCHAR2,
1574     p_to_template_yn     	   IN VARCHAR2,
1575     p_renew_ref_yn                 IN VARCHAR2,
1576     x_to_chr_id		           OUT NOCOPY NUMBER) IS
1577 
1578     l_api_name        CONSTANT VARCHAR2(30) := 'COPY_CONTRACT_HEADER';
1579     l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
1580 
1581 
1582     l_chrv_rec 	chrv_rec_type;
1583     x_chrv_rec 	chrv_rec_type;
1584 
1585     l_pat_id        NUMBER;
1586     l_pav_id        NUMBER;
1587     l_pac_id        NUMBER;
1588     l_paa_id        NUMBER;
1589     l_sts_code      VARCHAR2(30);
1590     l_status_type   VARCHAR2(30) := 'ENTERED';
1591     l_orig_system_source_code   VARCHAR2(30) := 'OKC_HDR';
1592     l_return_status	VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1593     l_from_version  FND_ATTACHED_DOCUMENTS.PK2_VALUE%TYPE;
1594 
1595     l_euro_currency          varchar2(15) := NULL; /* For Euro Conversion - Bug 2155930 */
1596     l_converted_amount       number := NULL; /* For Euro Conversion - Bug 2155930 */
1597 
1598     l_scrv_id       NUMBER;
1599     l_history_id    NUMBER;
1600 
1601     l_gvev_id       NUMBER;
1602     l_entity_name     VARCHAR2(30);
1603     l_from_entity_name VARCHAR2(30);
1604     l_to_entity_name   VARCHAR2(30);
1605 
1606     CURSOR c_pavv IS
1607     SELECT id
1608     FROM okc_price_att_values_V
1609     WHERE chr_id = p_from_chr_id;
1610 
1611     CURSOR c_patv IS
1612     SELECT id
1613     FROM okc_price_adjustments_V
1614     WHERE chr_id = p_from_chr_id
1615     AND  cle_id IS NULL; -- Added for Bug 2027165
1616 
1617     -- cursor for goverances
1618     CURSOR  c_governances IS
1619     SELECT  id
1620     FROM    okc_governances_v
1621     WHERE   dnz_chr_id = p_from_chr_id
1622     AND	    cle_id is null;
1623 ------------------------------------------
1624 -- Cursor for status change history
1625    CURSOR history_csr(p_chr_id NUMBER) IS
1626    SELECT id
1627    FROM okc_k_history_b
1628    WHERE TO_CHAR(CREATION_DATE, 'DD-MON-YYYY HH:MI:SS') =
1629        (SELECT MAX(TO_CHAR(CREATION_DATE, 'DD-MON-YYYY HH:MI:SS'))
1630         FROM OKC_K_HISTORY_B
1631         WHERE CHR_ID = p_chr_id)
1632    AND CHR_ID = p_chr_id;
1633 
1634 
1635   BEGIN
1636 
1637     x_return_status := l_return_status;
1638     l_return_status := get_chrv_rec(	p_chr_id 	=> p_from_chr_id,
1639 					x_chrv_rec 	=> l_chrv_rec);
1640 
1641      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1642          FND_LOG.string(FND_LOG.level_statement
1643                         ,l_module_name||'.get_chrv_rec'
1644                         ,'Contract ID='||l_chrv_rec.ID||', Contract Number='||l_chrv_rec.contract_number
1645                          );
1646      END IF;
1647 
1648     /* The following logic of setting the context has been moved here from below becasue of the requirement of Euro Conversion - Bug 2155930 */
1649     -- Sets the context.
1650       okc_context.set_okc_org_context(l_chrv_rec.authoring_org_id,l_chrv_rec.inv_organization_id);
1651     --END IF;
1652 
1653     IF l_chrv_rec.authoring_org_id <> okc_context.get_okc_org_id OR
1654        l_chrv_rec.inv_organization_id <> okc_context.get_okc_organization_id THEN
1655       OKC_API.SET_MESSAGE('OKC','OKC_INCOMPATIBLE_ORG');
1656       x_return_status := OKC_API.G_RET_STS_ERROR;
1657       RAISE G_EXCEPTION_HALT_VALIDATION;
1658     END IF;
1659 
1660    --moving the initialization of g_application_id up for Bug 3693912
1661    --  g_application_id := l_chrv_rec.application_id;
1662 
1663 
1664     /* Fixing Renewal for Euro Conversion - at Header Level - Bug 2155930 */
1665     if (p_renew_ref_yn = 'Y') then
1666 
1667        l_euro_currency := OKC_CURRENCY_API.GET_EURO_CURRENCY_CODE(l_chrv_rec.currency_code);
1668 
1669        if (l_euro_currency <> l_chrv_rec.currency_code) then
1670              If l_chrv_rec.application_id in (510,871) Then
1671                select CONVERSION_TYPE, CONVERSION_RATE, CONVERSION_DATE
1672                into   g_conversion_type, g_conversion_rate, g_conversion_date
1673                from   okc_conversion_attribs_v
1674                where  DNZ_CHR_ID = l_chrv_rec.id
1675                and    chr_id = l_chrv_rec.id;
1676              Else
1677             -- /Rules migration/
1678             --FOr other contracts classes, conversion data is now stored at the header level
1679              select CONVERSION_TYPE, CONVERSION_RATE, CONVERSION_rate_DATE
1680              into   g_conversion_type, g_conversion_rate, g_conversion_date
1681              from okc_k_headers_b
1682              where id = l_chrv_rec.id;
1683              End If;
1684 
1685            fnd_profile.get('OKC_EURO_DEFAULT_PRICELIST', g_pricelist);
1686 
1687            if (g_pricelist is NULL) then
1688               fnd_message.set_name('OKC','OKC_PROFILE_CHECK');
1689               fnd_message.set_token('PROFILE','OKC_EURO_DEFAULT_PRICELIST');
1690               FND_MSG_PUB.add;
1691               x_return_status := FND_API.G_RET_STS_ERROR;
1692               RAISE G_EXCEPTION_HALT_VALIDATION;
1693            end if;
1694 
1695    --/Rule Migration/
1696    --Update price list on the header instead of price rule
1697            If l_chrv_rec.application_id not in (510,871) Then
1698               l_chrv_rec.price_list_id := g_pricelist;
1699            End If;
1700 
1701 
1702            OKC_CURRENCY_API.CONVERT_AMOUNT
1703                          (p_FROM_CURRENCY => l_chrv_rec.currency_code,
1704                           p_TO_CURRENCY => l_euro_currency,
1705                           p_CONVERSION_DATE => g_conversion_date,
1706                           p_CONVERSION_TYPE => g_conversion_type,
1707                           p_AMOUNT => l_chrv_rec.estimated_amount,
1708                           x_CONVERSION_RATE => g_conversion_rate,
1709                           x_CONVERTED_AMOUNT => l_converted_amount
1710                          );
1711            l_chrv_rec.estimated_amount := l_converted_amount;
1712            l_chrv_rec.currency_code := l_euro_currency;
1713 
1714        end if;
1715     end if;
1716 
1717     l_chrv_rec.chr_id_response    		:= NULL;
1718     l_chrv_rec.chr_id_award       		:= NULL;
1719     l_chrv_rec.archived_yn        		:= 'N';
1720     l_chrv_rec.deleted_yn         		:= 'N';
1721 
1722     okc_assent_pub.get_default_status( x_return_status => l_return_status,
1723 							    p_status_type  => l_status_type,
1724 							    x_status_code  => l_sts_code);
1725     l_chrv_rec.sts_code                         := l_sts_code;
1726     l_chrv_rec.date_approved    		:= NULL;
1727     l_chrv_rec.datetime_cancelled    		:= NULL;
1728     l_chrv_rec.date_issued	    		:= NULL;
1729     l_chrv_rec.datetime_responded    		:= NULL;
1730     l_chrv_rec.non_response_reason    		:= NULL;
1731     l_chrv_rec.non_response_explain    		:= NULL;
1732     l_chrv_rec.rfp_type		    		:= NULL;
1733     l_chrv_rec.set_aside_reason    		:= NULL;
1734     l_chrv_rec.set_aside_percent    		:= NULL;
1735     l_chrv_rec.response_copies_req    		:= NULL;
1736     l_chrv_rec.date_close_projected    		:= NULL;
1737     l_chrv_rec.datetime_proposed    		:= NULL;
1738     l_chrv_rec.date_signed	    		:= NULL;
1739     l_chrv_rec.date_terminated    		:= NULL;
1740     -- Bug 1975070 - Date Approved should be Null after Copy
1741     l_chrv_rec.date_approved    		:= NULL;
1742     -- Bug 1975070
1743     l_chrv_rec.date_renewed	    		:= NULL;
1744     l_chrv_rec.trn_code    			:= NULL;
1745     l_chrv_rec.orig_system_source_code          := l_orig_system_source_code;
1746     l_chrv_rec.orig_system_id1 			:= p_from_chr_id;
1747     l_chrv_rec.orig_system_reference1           := NULL;
1748     l_chrv_rec.term_cancel_source 		:= NULL; -- Bug 4641561
1749 
1750     IF p_to_template_yn = 'Y' THEN
1751       IF l_chrv_rec.template_yn = 'N' THEN
1752         l_chrv_rec.template_yn := 'Y';
1753         l_chrv_rec.template_used := NULL;
1754       END IF;
1755     ELSIF p_to_template_yn = 'N' THEN
1756       IF l_chrv_rec.template_yn = 'Y' THEN
1757         l_chrv_rec.template_yn := 'N';
1758         l_chrv_rec.template_used := l_chrv_rec.contract_number;
1759       END IF;
1760     END IF;
1761 
1762     -- this needs to be assigned after the template used is assigned from the old contract number
1763     l_chrv_rec.contract_number			:= p_contract_number;
1764     l_chrv_rec.contract_number_modifier		:= p_contract_number_modifier;
1765 
1766     IF p_renew_ref_yn = 'Y' THEN
1767 	  l_chrv_rec.ESTIMATED_AMOUNT_RENEWED := l_chrv_rec.ESTIMATED_AMOUNT;
1768 	  l_chrv_rec.CURRENCY_CODE_RENEWED    := l_chrv_rec.CURRENCY_CODE;
1769     END IF;
1770     --l_chrv_rec.estimated_amount		:= NULL;
1771     -- Bug 2069569 When Copy called from renew donot nullify estimated amount
1772     --             Otherwise nullify estimated amount
1773 -- Bug 2836000 start  commented out as copy api should copy header amoutn as well in all the cases
1774 /*
1775     IF p_renew_ref_yn <> 'Y'  THEN
1776        l_chrv_rec.estimated_amount		:= NULL;
1777     END IF;
1778 */
1779 -- Bug 2836000 end  commented out as copy api should copy header amoutn as well in all the cases
1780     -- Bug 2027165 - Added user_estimated amount as this is new column
1781     l_chrv_rec.user_estimated_amount	:= NULL;
1782 
1783      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1784       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1785          FND_LOG.string(FND_LOG.level_statement
1786                         ,l_module_name||'.okc_contract_pub.create_contract_header'
1787                         ,'Before call to okc_contract_pub.create_contract_header:'
1788                          ||'l_Chrv_rec.ID='||l_chrv_rec.id
1789                          );
1790       END IF;
1791      END IF;
1792 
1793     OKC_CONTRACT_PUB.create_contract_header(
1794 	   p_api_version	     => p_api_version,
1795            p_init_msg_list	=> p_init_msg_list,
1796            x_return_status 	=> l_return_status,
1797            x_msg_count     	=> x_msg_count,
1798            x_msg_data      	=> x_msg_data,
1799            p_chrv_rec		=> l_chrv_rec,
1800            x_chrv_rec		=> x_chrv_rec);
1801 
1802 
1803      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1804       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1805          FND_LOG.string(FND_LOG.level_statement
1806                         ,l_module_name||'.okc_contract_pub.create_contract_header'
1807                         ,'After call to okc_contract_pub.create_contract_header: x_return_status:'||l_return_status
1808                          ||' '||SQLERRM
1809                          );
1810       END IF;
1811      END IF;
1812 
1813     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1814         x_return_status := l_return_status;
1815         RAISE G_EXCEPTION_HALT_VALIDATION;
1816     END IF;
1817 
1818     g_chrv_rec := x_chrv_rec;
1819     x_to_chr_id := x_chrv_rec.id; -- passes the new generated id to the caller.
1820 
1821     IF p_renew_ref_yn = 'Y' THEN
1822        --if the copy is for RENEW, create operation instance and operation lines
1823        Create_Renewal_Header_Link(
1824 	      p_api_version	     => p_api_version,
1825            p_init_msg_list	=> p_init_msg_list,
1826            x_return_status 	=> l_return_status,
1827            x_msg_count     	=> x_msg_count,
1828            x_msg_data      	=> x_msg_data,
1829            p_chrv_rec		=> l_chrv_rec,
1830            p_to_chr_id		=> x_to_chr_id);
1831        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1832         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1833          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1834           FND_LOG.string(FND_LOG.level_statement
1835                         ,l_module_name||'.create_renewal_header_link'
1836                         ,'After call to Create_Renewal_Header_Link: x_return_status:'||l_return_status
1837                          ||' '||SQLERRM
1838                          );
1839          END IF;
1840         END IF;
1841            x_return_status := l_return_status;
1842            RAISE G_EXCEPTION_HALT_VALIDATION;
1843        END IF;
1844 
1845     END IF;
1846 /* 27-Apr-2006 hkamdar Commented code for copy attachment for bug #5173429.
1847     -- copy associated attachments
1848     l_from_version := Get_Major_Version(p_from_chr_id);
1849 
1850     IF (l_from_version = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1851         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1852         RAISE G_EXCEPTION_HALT_VALIDATION;
1853     END IF;
1854 
1855     -- set attachement session variables
1856     -- before calling fnd_attachment_util_pkg.get_atchmt_exists
1857     Set_Attach_Session_Vars(p_from_chr_id);
1858 
1859      l_entity_name := 'OKC_K_HEADERS_V';
1860      l_from_entity_name := 'OKC_K_HEADERS_V';
1861      l_to_entity_name := 'OKC_K_HEADERS_V';
1862 
1863        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1864         FND_LOG.string(FND_LOG.level_statement
1865          ,l_module_name||'.fnd_attachment_util_pkg.get_atchmt_exists'
1866          ,'Before call to fnd_attachment_util_pkg.get_atchmt_exists'
1867         	||' l_entity_name='||l_entity_name
1868         	||',l_pkey1='||p_from_chr_id
1869         	||',l_peky2='||l_from_version
1870 		||',x_to_chr_id='||x_to_chr_id
1871 		||',12_function_type='||FND_ATTACHMENT_UTIL_PKG.function_type
1872 		||',12_function_name='||FND_ATTACHMENT_UTIL_PKG.function_name
1873           );
1874        END IF;
1875     If (fnd_attachment_util_pkg.get_atchmt_exists (
1876 			  l_entity_name => l_entity_name,
1877 			  l_pkey1 => p_from_chr_id
1878 			  --l_pkey2 => l_from_version
1879 			  ) = 'Y') then
1880 
1881 			  -- The following line to be added to the code once
1882 			  -- bug 1553916 completes
1883 			  -- ,l_pkey2 => l_from_version) = 'Y')
1884 			  -- also below remove the comments
1885 			  -- in fnd_attached_documents2_pkg.copy_attachments call
1886        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1887         FND_LOG.string(FND_LOG.level_statement
1888          ,l_module_name
1889          ,'After call to fnd_attachment_util_pkg.get_atchmt_exists'
1890           );
1891        END IF;
1892 
1893       Begin
1894         fnd_attached_documents2_pkg.copy_attachments(
1895                           x_from_entity_name => l_from_entity_name,
1896                           x_from_pk1_value   => p_from_chr_id,
1897                           --x_from_pk2_value   => l_from_version,
1898                           x_to_entity_name => l_to_entity_name,
1899                           x_to_pk1_value   => x_to_chr_id
1900                           --x_to_pk2_value   => '0'
1901 					 );
1902 		IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1903 		    FND_LOG.string(FND_LOG.level_statement
1904 		   	            ,l_module_name
1905 					  ,'After call to fnd_attached_documents2_pkg.copy_attachments'
1906 					   );
1907 		END IF;
1908 
1909             EXCEPTION
1910                WHEN OTHERS THEN
1911                  IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
1912                   IF (FND_LOG.test(FND_LOG.level_unexpected, l_module_name)) THEN
1913                     FND_LOG.string(FND_LOG.level_unexpected
1914                         ,l_module_name||'.fnd_attached_documents2_pkg.copy_attachments'
1915                         ,'After call to fnd_attached_documents2_pkg.copy_attachments'
1916                          ||' '||SQLERRM
1917                          );
1918                   END IF;
1919                  END IF;
1920 			  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1921       End;
1922     End if;
1923 End 27-Apr-2006 hkamdar Commented code for copy attachment for bug #5173429.*/
1924     copy_accesses(
1925 	   p_api_version	=> p_api_version,
1926            p_init_msg_list	=> p_init_msg_list,
1927            x_return_status 	=> l_return_status,
1928            x_msg_count     	=> x_msg_count,
1929            x_msg_data      	=> x_msg_data,
1930            p_from_chr_id	=> p_from_chr_id,
1931 	   p_to_chr_id 		=> x_chrv_rec.id);
1932 
1933     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1934      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1935       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1936          FND_LOG.string(FND_LOG.level_statement
1937                         ,l_module_name||'.copy_accesses'
1938                         ,'After call to copy_acceses: x_return_status:'||l_return_status
1939                          ||' '||SQLERRM
1940                          );
1941       END IF;
1942      END IF;
1943       IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1944         x_return_status := l_return_status;
1945         RAISE G_EXCEPTION_HALT_VALIDATION;
1946       ELSE
1947         x_return_status := l_return_status;
1948       END IF;
1949     END IF;
1950 
1951     copy_processes(
1952 	   p_api_version	=> p_api_version,
1953            p_init_msg_list	=> p_init_msg_list,
1954            x_return_status 	=> l_return_status,
1955            x_msg_count     	=> x_msg_count,
1956            x_msg_data      	=> x_msg_data,
1957            p_from_chr_id	=> p_from_chr_id,
1958 	   p_to_chr_id 		=> x_chrv_rec.id);
1959 
1960     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1961      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1962       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1963          FND_LOG.string(FND_LOG.level_statement
1964                         ,l_module_name||'.copy_processes'
1965                         ,'After call to copy_processes : x_return_status:'||l_return_status
1966                          ||' '||SQLERRM
1967                          );
1968       END IF;
1969      END IF;
1970       IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1971         x_return_status := l_return_status;
1972         RAISE G_EXCEPTION_HALT_VALIDATION;
1973       ELSE
1974         x_return_status := l_return_status;
1975       END IF;
1976     END IF;
1977 
1978     copy_grpings(
1979 	   p_api_version	=> p_api_version,
1980            p_init_msg_list	=> p_init_msg_list,
1981            x_return_status 	=> l_return_status,
1982            x_msg_count     	=> x_msg_count,
1983            x_msg_data      	=> x_msg_data,
1984            p_from_chr_id	=> p_from_chr_id,
1985 	   p_to_chr_id 		=> x_chrv_rec.id);
1986 
1987     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1988      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1989       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1990          FND_LOG.string(FND_LOG.level_statement
1991                         ,l_module_name||'.copy_grpings'
1992                         ,'After call to copy_grpings: x_return_status:'||l_return_status
1993                          ||' '||SQLERRM
1994                          );
1995       END IF;
1996      END IF;
1997       IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1998         x_return_status := l_return_status;
1999         RAISE G_EXCEPTION_HALT_VALIDATION;
2000       ELSE
2001         x_return_status := l_return_status;
2002       END IF;
2003     END IF;
2004 
2005 /****** For Bug#3052910 ***********************************************************
2006 --Following condn is added .IF (p_renew_ref_yn = 'Y') THEN before the loop.
2007 --The condition " IF (p_renew_ref_yn = 'Y') THEN " is removed for price hold change
2008 --Price hold changes are obsoleted hence reverting the changes.
2009 ******* For Bug#3052910 ***********************************************************/
2010 
2011    IF (p_renew_ref_yn = 'Y') THEN --Added for Bug#3052910
2012 
2013     FOR l_c_governances IN c_governances LOOP
2014 
2015       copy_governances (
2016 	   p_api_version	=> p_api_version,
2017            p_init_msg_list	=> p_init_msg_list,
2018            x_return_status 	=> l_return_status,
2019            x_msg_count     	=> x_msg_count,
2020            x_msg_data      	=> x_msg_data,
2021            p_gvev_id            => l_c_governances.id,
2022            p_cle_id		=> NULL,
2023            p_chr_id		=> x_chrv_rec.id,
2024            x_gvev_id		=> l_gvev_id);
2025 
2026 
2027       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2028          IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2029              x_return_status := l_return_status;
2030              RAISE G_EXCEPTION_HALT_VALIDATION;
2031          ELSE
2032 	     x_return_status := l_return_status;
2033          END IF;
2034       END IF;
2035     END LOOP;
2036 
2037   END IF; -- IF (p_renew_ref_yn = 'Y') THEN
2038 
2039 /*
2040   FOR l_c_pavv IN c_pavv LOOP
2041       copy_price_att_values (
2042            p_api_version        => p_api_version,
2043            p_init_msg_list      => p_init_msg_list,
2044            x_return_status      => l_return_status,
2045            x_msg_count          => x_msg_count,
2046            x_msg_data           => x_msg_data,
2047            p_pav_id             => l_c_pavv.id,
2048            p_cle_id             => NULL,
2049            p_chr_id             => x_chrv_rec.id,
2050            x_pav_id             => l_pav_id);
2051 
2052       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2053         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2054           x_return_status := l_return_status;
2055           RAISE G_EXCEPTION_HALT_VALIDATION;
2056         ELSE
2057              x_return_status := l_return_status;
2058         END IF;
2059       END IF;
2060   END LOOP;
2061 
2062   FOR l_c_patv IN c_patv LOOP
2063       copy_price_adjustments (
2064            p_api_version        => p_api_version,
2065            p_init_msg_list      => p_init_msg_list,
2066            x_return_status      => l_return_status,
2067            x_msg_count          => x_msg_count,
2068            x_msg_data           => x_msg_data,
2069            p_pat_id             => l_c_patv.id,
2070            p_cle_id             => NULL,
2071            p_chr_id             => x_chrv_rec.id,
2072            x_pat_id             => l_pat_id);
2073 
2074       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2075         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2076           x_return_status := l_return_status;
2077           RAISE G_EXCEPTION_HALT_VALIDATION;
2078         ELSE
2079              x_return_status := l_return_status;
2080         END IF;
2081       END IF;
2082 
2083  END LOOP;
2084  */
2085 
2086 
2087 
2088   EXCEPTION
2089     WHEN G_EXCEPTION_HALT_VALIDATION THEN
2090       NULL;
2091     WHEN OTHERS THEN
2092       -- store SQL error message on message stack for caller
2093       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2094       -- notify caller of an UNEXPECTED error
2095       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2096 
2097   END copy_contract_header;
2098 
2099 
2100   ----------------------------------------------------------------------------
2101   --Function to populate the contract items record to be copied.
2102   ----------------------------------------------------------------------------
2103     FUNCTION    get_cimv_rec(p_cim_id IN NUMBER,
2104 				x_cimv_rec OUT NOCOPY cimv_rec_type) RETURN  VARCHAR2 IS
2105       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2106       l_no_data_found BOOLEAN := TRUE;
2107 
2108       CURSOR c_cimv_rec IS
2109       SELECT	ID,
2110 		CLE_ID,
2111 		CHR_ID,
2112 		CLE_ID_FOR,
2113 		DNZ_CHR_ID,
2114 		OBJECT1_ID1,
2115 		OBJECT1_ID2,
2116 		JTOT_OBJECT1_CODE,
2117 		UOM_CODE,
2118 		EXCEPTION_YN,
2119 		NUMBER_OF_ITEMS,
2120                 PRICED_ITEM_YN
2121 	FROM    OKC_K_ITEMS_V
2122 	WHERE 	ID = p_cim_id;
2123     BEGIN
2124       OPEN c_cimv_rec;
2125       FETCH c_cimv_rec
2126       INTO	x_cimv_rec.ID,
2127 		x_cimv_rec.CLE_ID,
2128 		x_cimv_rec.CHR_ID,
2129 		x_cimv_rec.CLE_ID_FOR,
2130 		x_cimv_rec.DNZ_CHR_ID,
2131 		x_cimv_rec.OBJECT1_ID1,
2132 		x_cimv_rec.OBJECT1_ID2,
2133 		x_cimv_rec.JTOT_OBJECT1_CODE,
2134 		x_cimv_rec.UOM_CODE,
2135 		x_cimv_rec.EXCEPTION_YN,
2136 		x_cimv_rec.NUMBER_OF_ITEMS,
2137 		x_cimv_rec.PRICED_ITEM_YN;
2138 
2139 
2140       l_no_data_found := c_cimv_rec%NOTFOUND;
2141       CLOSE c_cimv_rec;
2142       IF l_no_data_found THEN
2143         l_return_status := FND_API.G_RET_STS_ERROR;
2144         return(l_return_status);
2145       ELSE
2146         return(l_return_status);
2147       END IF;
2148     EXCEPTION
2149       WHEN OTHERS THEN
2150         -- store SQL error message on message stack for caller
2151         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2152         -- notify caller of an UNEXPECTED error
2153         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2154         return(l_return_status);
2155 
2156     END get_cimv_rec;
2157   ----------------------------------------------------------------------------
2158   --Function to populate the contract access record to be copied.
2159   ----------------------------------------------------------------------------
2160     FUNCTION    get_cacv_rec(p_cac_id IN NUMBER,
2161 				x_cacv_rec OUT NOCOPY cacv_rec_type) RETURN  VARCHAR2 IS
2162       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2163       l_no_data_found BOOLEAN := TRUE;
2164 
2165       CURSOR c_cacv_rec IS
2166       SELECT	ID,
2167 		GROUP_ID,
2168 		CHR_ID,
2169 		RESOURCE_ID,
2170 		ACCESS_LEVEL
2171 	FROM    OKC_K_ACCESSES_V
2172 	WHERE 	ID = p_cac_id;
2173 
2174     BEGIN
2175       OPEN c_cacv_rec;
2176       FETCH c_cacv_rec
2177       INTO	x_cacv_rec.ID,
2178 		x_cacv_rec.GROUP_ID,
2179 		x_cacv_rec.CHR_ID,
2180 		x_cacv_rec.RESOURCE_ID,
2181 		x_cacv_rec.ACCESS_LEVEL;
2182 
2183       l_no_data_found := c_cacv_rec%NOTFOUND;
2184       CLOSE c_cacv_rec;
2185       IF l_no_data_found THEN
2186         l_return_status := FND_API.G_RET_STS_ERROR;
2187         return(l_return_status);
2188       ELSE
2189         return(l_return_status);
2190       END IF;
2191     EXCEPTION
2192       WHEN OTHERS THEN
2193         -- store SQL error message on message stack for caller
2194         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2195         -- notify caller of an UNEXPECTED error
2196         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2197         return(l_return_status);
2198 
2199     END get_cacv_rec;
2200 
2201   ----------------------------------------------------------------------------
2202   --Function to populate the contract party roles record to be copied.
2203   ----------------------------------------------------------------------------
2204     FUNCTION    get_cplv_rec(p_cpl_id IN NUMBER,
2205                                 x_cplv_rec OUT NOCOPY cplv_rec_type) RETURN  VARCHAR2 IS
2206       l_return_status           VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2207       l_no_data_found BOOLEAN := TRUE;
2208 
2209       CURSOR c_cplv_rec IS
2210       SELECT    ID,
2211                 SFWT_FLAG,
2212                 CHR_ID,
2213                 CLE_ID,
2214                 RLE_CODE,
2215                 DNZ_CHR_ID,
2216                 OBJECT1_ID1,
2217                 OBJECT1_ID2,
2218                 JTOT_OBJECT1_CODE,
2219                 COGNOMEN,
2220                 CODE,
2221                 FACILITY,
2222                 MINORITY_GROUP_LOOKUP_CODE,
2223                 SMALL_BUSINESS_FLAG,
2224                 WOMEN_OWNED_FLAG,
2225                 ALIAS,
2226                 ATTRIBUTE_CATEGORY,
2227                 ATTRIBUTE1,
2228                 ATTRIBUTE2,
2229                 ATTRIBUTE3,
2230                 ATTRIBUTE4,
2231                 ATTRIBUTE5,
2232                 ATTRIBUTE6,
2233                 ATTRIBUTE7,
2234                 ATTRIBUTE8,
2235                 ATTRIBUTE9,
2236                 ATTRIBUTE10,
2237                 ATTRIBUTE11,
2238                 ATTRIBUTE12,
2239                 ATTRIBUTE13,
2240                 ATTRIBUTE14,
2241                 ATTRIBUTE15,
2242           PRIMARY_YN,    -- Bug 2374325
2243            --- new columns to replace rules
2244           CUST_ACCT_ID,
2245           BILL_TO_SITE_USE_ID
2246 
2247         FROM    OKC_K_PARTY_ROLES_V
2248         WHERE   ID = p_cpl_id;
2249 /*          AND   G_COPY_HISTORY_YN = 'N'
2250   UNION ALL
2251      SELECT    ID,
2252                 SFWT_FLAG,
2253                 CHR_ID,
2254                 CLE_ID,
2255                 RLE_CODE,
2256                 DNZ_CHR_ID,
2257                 OBJECT1_ID1,
2258                 OBJECT1_ID2,
2259                 JTOT_OBJECT1_CODE,
2260                 COGNOMEN,
2261                 CODE,
2262                 FACILITY,
2263                 MINORITY_GROUP_LOOKUP_CODE,
2264                 SMALL_BUSINESS_FLAG,
2265                 WOMEN_OWNED_FLAG,
2266                 ALIAS,
2267                 ATTRIBUTE_CATEGORY,
2268                 ATTRIBUTE1,
2269                 ATTRIBUTE2,
2270                 ATTRIBUTE3,
2271                 ATTRIBUTE4,
2272                 ATTRIBUTE5,
2273                 ATTRIBUTE6,
2274                 ATTRIBUTE7,
2275                 ATTRIBUTE8,
2276                 ATTRIBUTE9,
2277                 ATTRIBUTE10,
2278                 ATTRIBUTE11,
2279                 ATTRIBUTE12,
2280                 ATTRIBUTE13,
2281                 ATTRIBUTE14,
2282                 ATTRIBUTE15,
2283           PRIMARY_YN,    -- Bug 2374325
2284            --- new columns to replace rules
2285           CUST_ACCT_ID,
2286           BILL_TO_SITE_USE_ID
2287 
2288         FROM    OKC_K_PARTY_ROLES_HV
2289         WHERE   ID = p_cpl_id
2290           AND   major_version = G_FROM_VERSION_NUMBER
2291           AND   G_COPY_HISTORY_YN = 'Y';
2292 */
2293    BEGIN
2294       OPEN c_cplv_rec;
2295       FETCH c_cplv_rec
2296       INTO      x_cplv_rec.ID,
2297                 x_cplv_rec.SFWT_FLAG,
2298                 x_cplv_rec.CHR_ID,
2299                 x_cplv_rec.CLE_ID,
2300                 x_cplv_rec.RLE_CODE,
2301                 x_cplv_rec.DNZ_CHR_ID,
2302                 x_cplv_rec.OBJECT1_ID1,
2303                 x_cplv_rec.OBJECT1_ID2,
2304                 x_cplv_rec.JTOT_OBJECT1_CODE,
2305                 x_cplv_rec.COGNOMEN,
2306                 x_cplv_rec.CODE,
2307                 x_cplv_rec.FACILITY,
2308                 x_cplv_rec.MINORITY_GROUP_LOOKUP_CODE,
2309                 x_cplv_rec.SMALL_BUSINESS_FLAG,
2310                 x_cplv_rec.WOMEN_OWNED_FLAG,
2311                 x_cplv_rec.ALIAS,
2312                 x_cplv_rec.ATTRIBUTE_CATEGORY,
2313                 x_cplv_rec.ATTRIBUTE1,
2314                 x_cplv_rec.ATTRIBUTE2,
2315                 x_cplv_rec.ATTRIBUTE3,
2316                 x_cplv_rec.ATTRIBUTE4,
2317                 x_cplv_rec.ATTRIBUTE5,
2318                 x_cplv_rec.ATTRIBUTE6,
2319                 x_cplv_rec.ATTRIBUTE7,
2320                 x_cplv_rec.ATTRIBUTE8,
2321                 x_cplv_rec.ATTRIBUTE9,
2322                 x_cplv_rec.ATTRIBUTE10,
2323                 x_cplv_rec.ATTRIBUTE11,
2324                 x_cplv_rec.ATTRIBUTE12,
2325                 x_cplv_rec.ATTRIBUTE13,
2326                 x_cplv_rec.ATTRIBUTE14,
2327                 x_cplv_rec.ATTRIBUTE15,
2328           x_cplv_rec.PRIMARY_YN,
2329           --new columns to replace rules
2330           x_cplv_rec.CUST_ACCT_ID,
2331           x_cplv_rec.BILL_TO_SITE_USE_ID;
2332 
2333       l_no_data_found := c_cplv_rec%NOTFOUND;
2334       CLOSE c_cplv_rec;
2335       IF l_no_data_found THEN
2336         l_return_status := OKC_API.G_RET_STS_ERROR;
2337         return(l_return_status);
2338       ELSE
2339         return(l_return_status);
2340       END IF;
2341     EXCEPTION
2342       WHEN OTHERS THEN
2343         -- store SQL error message on message stack for caller
2344         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2345         -- notify caller of an UNEXPECTED error
2346         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2347         return(l_return_status);
2348 
2349     END get_cplv_rec;
2350 
2351 
2352   ----------------------------------------------------------------------------
2353   --Function to populate the contract process record to be copied.
2354   ----------------------------------------------------------------------------
2355     FUNCTION    get_cpsv_rec(p_cps_id IN NUMBER,
2356 				x_cpsv_rec OUT NOCOPY cpsv_rec_type) RETURN  VARCHAR2 IS
2357       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2358       l_no_data_found BOOLEAN := TRUE;
2359 
2360       CURSOR c_cpsv_rec IS
2361       SELECT	ID,
2362 		PDF_ID,
2363 		CHR_ID,
2364 		USER_ID,
2365 		CRT_ID,
2366 		PROCESS_ID,
2367 		IN_PROCESS_YN,
2368 		ATTRIBUTE_CATEGORY,
2369 		ATTRIBUTE1,
2370 		ATTRIBUTE2,
2371 		ATTRIBUTE3,
2372 		ATTRIBUTE4,
2373 		ATTRIBUTE5,
2374 		ATTRIBUTE6,
2375 		ATTRIBUTE7,
2376 		ATTRIBUTE8,
2377 		ATTRIBUTE9,
2378 		ATTRIBUTE10,
2379 		ATTRIBUTE11,
2380 		ATTRIBUTE12,
2381 		ATTRIBUTE13,
2382 		ATTRIBUTE14,
2383 		ATTRIBUTE15
2384 	FROM    OKC_K_PROCESSES_V
2385 	WHERE 	ID = p_cps_id;
2386     BEGIN
2387       OPEN c_cpsv_rec;
2388       FETCH c_cpsv_rec
2389       INTO	x_cpsv_rec.ID,
2390 		x_cpsv_rec.PDF_ID,
2391 		x_cpsv_rec.CHR_ID,
2392 		x_cpsv_rec.USER_ID,
2393 		x_cpsv_rec.CRT_ID,
2394 		x_cpsv_rec.PROCESS_ID,
2395 		x_cpsv_rec.IN_PROCESS_YN,
2396 		x_cpsv_rec.ATTRIBUTE_CATEGORY,
2397 		x_cpsv_rec.ATTRIBUTE1,
2398 		x_cpsv_rec.ATTRIBUTE2,
2399 		x_cpsv_rec.ATTRIBUTE3,
2400 		x_cpsv_rec.ATTRIBUTE4,
2401 		x_cpsv_rec.ATTRIBUTE5,
2402 		x_cpsv_rec.ATTRIBUTE6,
2403 		x_cpsv_rec.ATTRIBUTE7,
2404 		x_cpsv_rec.ATTRIBUTE8,
2405 		x_cpsv_rec.ATTRIBUTE9,
2406 		x_cpsv_rec.ATTRIBUTE10,
2407 		x_cpsv_rec.ATTRIBUTE11,
2408 		x_cpsv_rec.ATTRIBUTE12,
2409 		x_cpsv_rec.ATTRIBUTE13,
2410 		x_cpsv_rec.ATTRIBUTE14,
2411 		x_cpsv_rec.ATTRIBUTE15;
2412 
2413       l_no_data_found := c_cpsv_rec%NOTFOUND;
2414       CLOSE c_cpsv_rec;
2415       IF l_no_data_found THEN
2416         l_return_status := FND_API.G_RET_STS_ERROR;
2417         return(l_return_status);
2418       ELSE
2419         return(l_return_status);
2420       END IF;
2421     EXCEPTION
2422       WHEN OTHERS THEN
2423         -- store SQL error message on message stack for caller
2424         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2425         -- notify caller of an UNEXPECTED error
2426         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2427         return(l_return_status);
2428 
2429     END get_cpsv_rec;
2430   ----------------------------------------------------------------------------
2431   --Function to populate the contract group record to be copied.
2432   ----------------------------------------------------------------------------
2433     FUNCTION    get_cgcv_rec(p_cgc_id IN NUMBER,
2434 				x_cgcv_rec OUT NOCOPY cgcv_rec_type) RETURN  VARCHAR2 IS
2435       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2436       l_no_data_found BOOLEAN := TRUE;
2437 
2438       CURSOR c_cgcv_rec IS
2439       SELECT	ID,
2440 		CGP_PARENT_ID,
2441 		INCLUDED_CHR_ID,
2442 		INCLUDED_CGP_ID
2443 	FROM    OKC_K_GRPINGS_V
2444 	WHERE 	ID = p_cgc_id;
2445 
2446     BEGIN
2447       OPEN c_cgcv_rec;
2448       FETCH c_cgcv_rec
2449       INTO	x_cgcv_rec.ID,
2450 		x_cgcv_rec.CGP_PARENT_ID,
2451 		x_cgcv_rec.INCLUDED_CHR_ID,
2452 		x_cgcv_rec.INCLUDED_CGP_ID;
2453       l_no_data_found := c_cgcv_rec%NOTFOUND;
2454       CLOSE c_cgcv_rec;
2455       IF l_no_data_found THEN
2456         l_return_status := FND_API.G_RET_STS_ERROR;
2457         return(l_return_status);
2458       ELSE
2459         return(l_return_status);
2460       END IF;
2461     EXCEPTION
2462       WHEN OTHERS THEN
2463         -- store SQL error message on message stack for caller
2464         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2465         -- notify caller of an UNEXPECTED error
2466         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2467         return(l_return_status);
2468 
2469     END get_cgcv_rec;
2470   ----------------------------------------------------------------------------
2471   --Function to populate the condition headers record to be copied.
2472   ----------------------------------------------------------------------------
2473     FUNCTION    get_cnhv_rec(p_cnh_id IN NUMBER,
2474 				x_cnhv_rec OUT NOCOPY cnhv_rec_type) RETURN  VARCHAR2 IS
2475       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2476       l_no_data_found BOOLEAN := TRUE;
2477 
2478       CURSOR c_cnhv_rec IS
2479       SELECT	ID,
2480 		SFWT_FLAG,
2481 		ACN_ID,
2482 		COUNTER_GROUP_ID,
2483 		DESCRIPTION,
2484 		SHORT_DESCRIPTION,
2485 		COMMENTS,
2486 		ONE_TIME_YN,
2487 		NAME,
2488 		CONDITION_VALID_YN,
2489 		BEFORE_AFTER,
2490 		TRACKED_YN,
2491 		CNH_VARIANCE,
2492 		DNZ_CHR_ID,
2493 		TEMPLATE_YN,
2494 		DATE_ACTIVE,
2495 		OBJECT_ID,
2496 		DATE_INACTIVE,
2497 		JTOT_OBJECT_CODE,
2498 		TASK_OWNER_ID,
2499 		CNH_TYPE,
2500 	        ATTRIBUTE_CATEGORY,
2501 		ATTRIBUTE1,
2502 		ATTRIBUTE2,
2503 		ATTRIBUTE3,
2504 		ATTRIBUTE4,
2505 		ATTRIBUTE5,
2506 		ATTRIBUTE6,
2507 		ATTRIBUTE7,
2508 		ATTRIBUTE8,
2509 		ATTRIBUTE9,
2510 		ATTRIBUTE10,
2511 		ATTRIBUTE11,
2512 		ATTRIBUTE12,
2513 		ATTRIBUTE13,
2514 		ATTRIBUTE14,
2515 		ATTRIBUTE15
2516 	FROM    OKC_CONDITION_HEADERS_V
2517 	WHERE 	ID = p_cnh_id;
2518 
2519     BEGIN
2520       OPEN c_cnhv_rec;
2521       FETCH c_cnhv_rec
2522       INTO	x_cnhv_rec.ID,
2523 		x_cnhv_rec.SFWT_FLAG,
2524 		x_cnhv_rec.ACN_ID,
2525 		x_cnhv_rec.COUNTER_GROUP_ID,
2526 		x_cnhv_rec.DESCRIPTION,
2527 		x_cnhv_rec.SHORT_DESCRIPTION,
2528 		x_cnhv_rec.COMMENTS,
2529 		x_cnhv_rec.ONE_TIME_YN,
2530 		x_cnhv_rec.NAME,
2531 		x_cnhv_rec.CONDITION_VALID_YN,
2532 		x_cnhv_rec.BEFORE_AFTER,
2533 		x_cnhv_rec.TRACKED_YN,
2534 		x_cnhv_rec.CNH_VARIANCE,
2535 		x_cnhv_rec.DNZ_CHR_ID,
2536 		x_cnhv_rec.TEMPLATE_YN,
2537 		x_cnhv_rec.DATE_ACTIVE,
2538 		x_cnhv_rec.OBJECT_ID,
2539 		x_cnhv_rec.DATE_INACTIVE,
2540 		x_cnhv_rec.JTOT_OBJECT_CODE,
2541 		x_cnhv_rec.TASK_OWNER_ID,
2542 		x_cnhv_rec.CNH_TYPE,
2543 		x_cnhv_rec.ATTRIBUTE_CATEGORY,
2544 		x_cnhv_rec.ATTRIBUTE1,
2545 		x_cnhv_rec.ATTRIBUTE2,
2546 		x_cnhv_rec.ATTRIBUTE3,
2547 		x_cnhv_rec.ATTRIBUTE4,
2548 		x_cnhv_rec.ATTRIBUTE5,
2549 		x_cnhv_rec.ATTRIBUTE6,
2550 		x_cnhv_rec.ATTRIBUTE7,
2551 		x_cnhv_rec.ATTRIBUTE8,
2552 		x_cnhv_rec.ATTRIBUTE9,
2553 		x_cnhv_rec.ATTRIBUTE10,
2554 		x_cnhv_rec.ATTRIBUTE11,
2555 		x_cnhv_rec.ATTRIBUTE12,
2556 		x_cnhv_rec.ATTRIBUTE13,
2557 		x_cnhv_rec.ATTRIBUTE14,
2558 		x_cnhv_rec.ATTRIBUTE15;
2559 
2560       l_no_data_found := c_cnhv_rec%NOTFOUND;
2561       CLOSE c_cnhv_rec;
2562       IF l_no_data_found THEN
2563         l_return_status := FND_API.G_RET_STS_ERROR;
2564         return(l_return_status);
2565       ELSE
2566         return(l_return_status);
2567       END IF;
2568     EXCEPTION
2569       WHEN OTHERS THEN
2570         -- store SQL error message on message stack for caller
2571         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2572         -- notify caller of an UNEXPECTED error
2573         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2574         return(l_return_status);
2575 
2576     END get_cnhv_rec;
2577   ----------------------------------------------------------------------------
2578   --Function to populate the condition lines record to be copied.
2579   ----------------------------------------------------------------------------
2580     FUNCTION    get_cnlv_rec(p_cnl_id IN NUMBER,
2581 				x_cnlv_rec OUT NOCOPY cnlv_rec_type) RETURN  VARCHAR2 IS
2582       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2583       l_no_data_found BOOLEAN := TRUE;
2584 
2585       CURSOR c_cnlv_rec IS
2586       SELECT	ID,
2587 		SFWT_FLAG,
2588 		START_AT,
2589 		CNH_ID,
2590 		PDF_ID,
2591 		AAE_ID,
2592 		LEFT_CTR_MASTER_ID,
2593 		RIGHT_CTR_MASTER_ID,
2594 		LEFT_COUNTER_ID,
2595 		RIGHT_COUNTER_ID,
2596 		DNZ_CHR_ID,
2597 		SORTSEQ,
2598 		CNL_TYPE,
2599 		DESCRIPTION,
2600 		LEFT_PARENTHESIS,
2601 		RELATIONAL_OPERATOR,
2602 		RIGHT_PARENTHESIS,
2603 		LOGICAL_OPERATOR,
2604 		TOLERANCE,
2605 		RIGHT_OPERAND,
2606 		ATTRIBUTE_CATEGORY,
2607 		ATTRIBUTE1,
2608 		ATTRIBUTE2,
2609 		ATTRIBUTE3,
2610 		ATTRIBUTE4,
2611 		ATTRIBUTE5,
2612 		ATTRIBUTE6,
2613 		ATTRIBUTE7,
2614 		ATTRIBUTE8,
2615 		ATTRIBUTE9,
2616 		ATTRIBUTE10,
2617 		ATTRIBUTE11,
2618 		ATTRIBUTE12,
2619 		ATTRIBUTE13,
2620 		ATTRIBUTE14,
2621 		ATTRIBUTE15
2622 	FROM    OKC_CONDITION_LINES_V
2623 	WHERE 	ID = p_cnl_id;
2624     BEGIN
2625       OPEN c_cnlv_rec;
2626       FETCH c_cnlv_rec
2627       INTO	x_cnlv_rec.ID,
2628 		x_cnlv_rec.SFWT_FLAG,
2629 		x_cnlv_rec.START_AT,
2630 		x_cnlv_rec.CNH_ID,
2631 		x_cnlv_rec.PDF_ID,
2632 		x_cnlv_rec.AAE_ID,
2633 		x_cnlv_rec.LEFT_CTR_MASTER_ID,
2634 		x_cnlv_rec.RIGHT_CTR_MASTER_ID,
2635 		x_cnlv_rec.LEFT_COUNTER_ID,
2636 		x_cnlv_rec.RIGHT_COUNTER_ID,
2637 		x_cnlv_rec.DNZ_CHR_ID,
2638 		x_cnlv_rec.SORTSEQ,
2639 		x_cnlv_rec.CNL_TYPE,
2640 		x_cnlv_rec.DESCRIPTION,
2641 		x_cnlv_rec.LEFT_PARENTHESIS,
2642 		x_cnlv_rec.RELATIONAL_OPERATOR,
2643 		x_cnlv_rec.RIGHT_PARENTHESIS,
2644 		x_cnlv_rec.LOGICAL_OPERATOR,
2645 		x_cnlv_rec.TOLERANCE,
2646 		x_cnlv_rec.RIGHT_OPERAND,
2647 		x_cnlv_rec.ATTRIBUTE_CATEGORY,
2648 		x_cnlv_rec.ATTRIBUTE1,
2649 		x_cnlv_rec.ATTRIBUTE2,
2650 		x_cnlv_rec.ATTRIBUTE3,
2651 		x_cnlv_rec.ATTRIBUTE4,
2652 		x_cnlv_rec.ATTRIBUTE5,
2653 		x_cnlv_rec.ATTRIBUTE6,
2654 		x_cnlv_rec.ATTRIBUTE7,
2655 		x_cnlv_rec.ATTRIBUTE8,
2656 		x_cnlv_rec.ATTRIBUTE9,
2657 		x_cnlv_rec.ATTRIBUTE10,
2658 		x_cnlv_rec.ATTRIBUTE11,
2659 		x_cnlv_rec.ATTRIBUTE12,
2660 		x_cnlv_rec.ATTRIBUTE13,
2661 		x_cnlv_rec.ATTRIBUTE14,
2662 		x_cnlv_rec.ATTRIBUTE15;
2663 
2664       l_no_data_found := c_cnlv_rec%NOTFOUND;
2665       CLOSE c_cnlv_rec;
2666       IF l_no_data_found THEN
2667         l_return_status := FND_API.G_RET_STS_ERROR;
2668         return(l_return_status);
2669       ELSE
2670         return(l_return_status);
2671       END IF;
2672     EXCEPTION
2673       WHEN OTHERS THEN
2674         -- store SQL error message on message stack for caller
2675         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2676         -- notify caller of an UNEXPECTED error
2677         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2678         return(l_return_status);
2679 
2680     END get_cnlv_rec;
2681   ----------------------------------------------------------------------------
2682   --Function to populate the contacts record to be copied.
2683   ----------------------------------------------------------------------------
2684 
2685     FUNCTION    get_ctcv_rec(p_ctc_id IN NUMBER,
2686 				x_ctcv_rec OUT NOCOPY ctcv_rec_type) RETURN  VARCHAR2 IS
2687 
2688       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2689       l_no_data_found BOOLEAN := TRUE;
2690 
2691       CURSOR c_ctcv_rec IS
2692       SELECT	ID,
2693                 CPL_ID,
2694                 CRO_CODE,
2695                 DNZ_CHR_ID,
2696                 CONTACT_SEQUENCE,
2697                 OBJECT1_ID1,
2698                 OBJECT1_ID2,
2699                 JTOT_OBJECT1_CODE,
2700 			 RESOURCE_CLASS,--Bug#3038104
2701 			 SALES_GROUP_ID, --Bug#2882737
2702                 ATTRIBUTE_CATEGORY,
2703                 ATTRIBUTE1,
2704                 ATTRIBUTE2,
2705                 ATTRIBUTE3,
2706                 ATTRIBUTE4,
2707                 ATTRIBUTE5,
2708                 ATTRIBUTE6,
2709                 ATTRIBUTE7,
2710                 ATTRIBUTE8,
2711                 ATTRIBUTE9,
2712                 ATTRIBUTE10,
2713                 ATTRIBUTE11,
2714                 ATTRIBUTE12,
2715                 ATTRIBUTE13,
2716                 ATTRIBUTE14,
2717                 ATTRIBUTE15,
2718                 START_DATE,
2719                 END_DATE,
2720                 PRIMARY_YN  -- Bug 2374325
2721 
2722 	FROM    OKC_CONTACTS_V
2723 	WHERE 	ID = p_ctc_id;
2724 
2725     BEGIN
2726       OPEN c_ctcv_rec;
2727       FETCH c_ctcv_rec
2728       INTO	x_ctcv_rec.ID,
2729                 x_ctcv_rec.CPL_ID,
2730                 x_ctcv_rec.CRO_CODE,
2731                 x_ctcv_rec.DNZ_CHR_ID,
2732                 x_ctcv_rec.CONTACT_SEQUENCE,
2733                 x_ctcv_rec.OBJECT1_ID1,
2734                 x_ctcv_rec.OBJECT1_ID2,
2735                 x_ctcv_rec.JTOT_OBJECT1_CODE,
2736 			 x_ctcv_rec.resource_class,--Bug#3038104
2737 			 x_ctcv_rec.SALES_GROUP_ID, --Bug#2882737
2738                 x_ctcv_rec.ATTRIBUTE_CATEGORY,
2739                 x_ctcv_rec.ATTRIBUTE1,
2740                 x_ctcv_rec.ATTRIBUTE2,
2741                 x_ctcv_rec.ATTRIBUTE3,
2742                 x_ctcv_rec.ATTRIBUTE4,
2743                 x_ctcv_rec.ATTRIBUTE5,
2744                 x_ctcv_rec.ATTRIBUTE6,
2745                 x_ctcv_rec.ATTRIBUTE7,
2746                 x_ctcv_rec.ATTRIBUTE8,
2747                 x_ctcv_rec.ATTRIBUTE9,
2748                 x_ctcv_rec.ATTRIBUTE10,
2749                 x_ctcv_rec.ATTRIBUTE11,
2750                 x_ctcv_rec.ATTRIBUTE12,
2751                 x_ctcv_rec.ATTRIBUTE13,
2752                 x_ctcv_rec.ATTRIBUTE14,
2753                 x_ctcv_rec.ATTRIBUTE15,
2754                 x_ctcv_rec.START_DATE,
2755                 x_ctcv_rec.END_DATE,
2756                 x_ctcv_rec.PRIMARY_YN;
2757       l_no_data_found := c_ctcv_rec%NOTFOUND;
2758       CLOSE c_ctcv_rec;
2759       IF l_no_data_found THEN
2760         l_return_status := FND_API.G_RET_STS_ERROR;
2761         return(l_return_status);
2762       ELSE
2763         return(l_return_status);
2764       END IF;
2765     EXCEPTION
2766       WHEN OTHERS THEN
2767         -- store SQL error message on message stack for caller
2768         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2769         -- notify caller of an UNEXPECTED error
2770         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2771         return(l_return_status);
2772 
2773     END get_ctcv_rec;
2774 
2775   ----------------------------------------------------------------------------
2776   --Function to populate the Header record to be copied.
2777   ----------------------------------------------------------------------------
2778     FUNCTION    get_chrv_rec(p_chr_id IN NUMBER,
2779 				x_chrv_rec OUT NOCOPY chrv_rec_type)
2780     				RETURN  VARCHAR2 IS
2781       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2782       l_no_data_found BOOLEAN := TRUE;
2783 
2784 -- Bug 1922121: Compilation errors on ktst115. Problem occurred
2785 -- because application_id is defined as varchar2(240) in
2786 -- okc_k_headers_bh/hv and as NUMBER in okc_k_headers_b/v. This gives
2787 -- problems in the UNION ALL because it tries to combine datatypes
2788 -- Fix: Put a to_char() around application_id in the first cursor
2789 
2790       CURSOR c_chrv_rec IS
2791       SELECT 	ID,
2792 		SFWT_FLAG,
2793 		CHR_ID_RESPONSE,
2794 		CHR_ID_AWARD,
2795 		INV_ORGANIZATION_ID,
2796 		to_char(APPLICATION_ID),
2797 		STS_CODE,
2798 		QCL_ID,
2799 		SCS_CODE,
2800 		CONTRACT_NUMBER,
2801 		CURRENCY_CODE,
2802 		CONTRACT_NUMBER_MODIFIER,
2803 		ARCHIVED_YN,
2804 		DELETED_YN,
2805 		CUST_PO_NUMBER_REQ_YN,
2806 		PRE_PAY_REQ_YN,
2807 		CUST_PO_NUMBER,
2808 		SHORT_DESCRIPTION,
2809 		COMMENTS,
2810 		DESCRIPTION,
2811 		DPAS_RATING,
2812 		COGNOMEN,
2813 		TEMPLATE_YN,
2814 		TEMPLATE_USED,
2815 		DATE_APPROVED,
2816 		DATETIME_CANCELLED,
2817 		AUTO_RENEW_DAYS,
2818 		DATE_ISSUED,
2819 		DATETIME_RESPONDED,
2820 		NON_RESPONSE_REASON,
2821 		NON_RESPONSE_EXPLAIN,
2822 		RFP_TYPE,
2823 		CHR_TYPE,
2824 		KEEP_ON_MAIL_LIST,
2825 		SET_ASIDE_REASON,
2826 		SET_ASIDE_PERCENT,
2827 		RESPONSE_COPIES_REQ,
2828 		DATE_CLOSE_PROJECTED,
2829 		DATETIME_PROPOSED,
2830 		DATE_SIGNED,
2831 		DATE_TERMINATED,
2832 		DATE_RENEWED,
2833 		TRN_CODE,
2834 		START_DATE,
2835 		END_DATE,
2836 		AUTHORING_ORG_ID,
2837 		BUY_OR_SELL,
2838 		ISSUE_OR_RECEIVE,
2839 		ESTIMATED_AMOUNT,
2840 		PROGRAM_ID,
2841                 REQUEST_ID,
2842                 PRICE_LIST_ID,
2843                 PRICING_DATE,
2844                 SIGN_BY_DATE,
2845                 PROGRAM_UPDATE_DATE,
2846                 TOTAL_LINE_LIST_PRICE,
2847                 PROGRAM_APPLICATION_ID,
2848 		ATTRIBUTE_CATEGORY,
2849 		ATTRIBUTE1,
2850 		ATTRIBUTE2,
2851 		ATTRIBUTE3,
2852 		ATTRIBUTE4,
2853 		ATTRIBUTE5,
2854 		ATTRIBUTE6,
2855 		ATTRIBUTE7,
2856 		ATTRIBUTE8,
2857 		ATTRIBUTE9,
2858 		ATTRIBUTE10,
2859 		ATTRIBUTE11,
2860 		ATTRIBUTE12,
2861 		ATTRIBUTE13,
2862 		ATTRIBUTE14,
2863 		ATTRIBUTE15,
2864           GOVERNING_CONTRACT_YN,
2865        -- new colums to replace rules
2866           CONVERSION_TYPE,
2867           CONVERSION_RATE,
2868           CONVERSION_RATE_DATE,
2869           CONVERSION_EURO_RATE,
2870           CUST_ACCT_ID,
2871           BILL_TO_SITE_USE_ID,
2872           INV_RULE_ID,
2873           RENEWAL_TYPE_CODE,
2874           RENEWAL_NOTIFY_TO,
2875           RENEWAL_END_DATE,
2876           SHIP_TO_SITE_USE_ID,
2877           PAYMENT_TERM_ID,
2878           APPROVAL_TYPE,
2879           TERM_CANCEL_SOURCE,
2880           PAYMENT_INSTRUCTION_TYPE,
2881           ORG_ID
2882 
2883       /*npalepu modified on 12-JUL-2007 for bug # 6085917 */
2884       /* FROM   OKC_K_HEADERS_V */
2885       FROM      OKC_K_HEADERS_ALL_V
2886       /*end bug # 6085917 */
2887       WHERE	id = p_chr_id;
2888 
2889     BEGIN
2890       OPEN c_chrv_rec;
2891       FETCH c_chrv_rec
2892       INTO	x_chrv_rec.ID,
2893 		x_chrv_rec.SFWT_FLAG,
2894 		x_chrv_rec.CHR_ID_RESPONSE,
2895 		x_chrv_rec.CHR_ID_AWARD,
2896 		x_chrv_rec.INV_ORGANIZATION_ID,
2897 		x_chrv_rec.APPLICATION_ID,
2898 		x_chrv_rec.STS_CODE,
2899 		x_chrv_rec.QCL_ID,
2900 		x_chrv_rec.SCS_CODE,
2901 		x_chrv_rec.CONTRACT_NUMBER,
2902 		x_chrv_rec.CURRENCY_CODE,
2903 		x_chrv_rec.CONTRACT_NUMBER_MODIFIER,
2904 		x_chrv_rec.ARCHIVED_YN,
2905 		x_chrv_rec.DELETED_YN,
2906 		x_chrv_rec.CUST_PO_NUMBER_REQ_YN,
2907 		x_chrv_rec.PRE_PAY_REQ_YN,
2908 		x_chrv_rec.CUST_PO_NUMBER,
2909 		x_chrv_rec.SHORT_DESCRIPTION,
2910 		x_chrv_rec.COMMENTS,
2911 		x_chrv_rec.DESCRIPTION,
2912 		x_chrv_rec.DPAS_RATING,
2913 		x_chrv_rec.COGNOMEN,
2914 		x_chrv_rec.TEMPLATE_YN,
2915 		x_chrv_rec.TEMPLATE_USED,
2916 		x_chrv_rec.DATE_APPROVED,
2917 		x_chrv_rec.DATETIME_CANCELLED,
2918 		x_chrv_rec.AUTO_RENEW_DAYS,
2919 		x_chrv_rec.DATE_ISSUED,
2920 		x_chrv_rec.DATETIME_RESPONDED,
2921 		x_chrv_rec.NON_RESPONSE_REASON,
2922 		x_chrv_rec.NON_RESPONSE_EXPLAIN,
2923 		x_chrv_rec.RFP_TYPE,
2924 		x_chrv_rec.CHR_TYPE,
2925 		x_chrv_rec.KEEP_ON_MAIL_LIST,
2926 		x_chrv_rec.SET_ASIDE_REASON,
2927 		x_chrv_rec.SET_ASIDE_PERCENT,
2928 		x_chrv_rec.RESPONSE_COPIES_REQ,
2929 		x_chrv_rec.DATE_CLOSE_PROJECTED,
2930 		x_chrv_rec.DATETIME_PROPOSED,
2931 		x_chrv_rec.DATE_SIGNED,
2932 		x_chrv_rec.DATE_TERMINATED,
2933 		x_chrv_rec.DATE_RENEWED,
2934 		x_chrv_rec.TRN_CODE,
2935 		x_chrv_rec.START_DATE,
2936 		x_chrv_rec.END_DATE,
2937 		x_chrv_rec.AUTHORING_ORG_ID,
2938 		x_chrv_rec.BUY_OR_SELL,
2939 		x_chrv_rec.ISSUE_OR_RECEIVE,
2940 		x_chrv_rec.ESTIMATED_AMOUNT,
2941 		x_chrv_rec.PROGRAM_ID,
2942                 x_chrv_rec.REQUEST_ID,
2943                 x_chrv_rec.PRICE_LIST_ID,
2944                 x_chrv_rec.PRICING_DATE,
2945                 x_chrv_rec.SIGN_BY_DATE,
2946                 x_chrv_rec.PROGRAM_UPDATE_DATE,
2947                 x_chrv_rec.TOTAL_LINE_LIST_PRICE,
2948                 x_chrv_rec.PROGRAM_APPLICATION_ID,
2949 		x_chrv_rec.ATTRIBUTE_CATEGORY,
2950 		x_chrv_rec.ATTRIBUTE1,
2951 		x_chrv_rec.ATTRIBUTE2,
2952 		x_chrv_rec.ATTRIBUTE3,
2953 		x_chrv_rec.ATTRIBUTE4,
2954 		x_chrv_rec.ATTRIBUTE5,
2955 		x_chrv_rec.ATTRIBUTE6,
2956 		x_chrv_rec.ATTRIBUTE7,
2957 		x_chrv_rec.ATTRIBUTE8,
2958 		x_chrv_rec.ATTRIBUTE9,
2959 		x_chrv_rec.ATTRIBUTE10,
2960 		x_chrv_rec.ATTRIBUTE11,
2961 		x_chrv_rec.ATTRIBUTE12,
2962 		x_chrv_rec.ATTRIBUTE13,
2963 		x_chrv_rec.ATTRIBUTE14,
2964 		x_chrv_rec.ATTRIBUTE15,
2965           x_chrv_rec.GOVERNING_CONTRACT_YN,
2966                -- new colums to replace rules
2967           x_chrv_rec.CONVERSION_TYPE,
2968           x_chrv_rec.CONVERSION_RATE,
2969           x_chrv_rec.CONVERSION_RATE_DATE,
2970           x_chrv_rec.CONVERSION_EURO_RATE,
2971           x_chrv_rec.CUST_ACCT_ID,
2972           x_chrv_rec.BILL_TO_SITE_USE_ID,
2973           x_chrv_rec.INV_RULE_ID,
2974           x_chrv_rec.RENEWAL_TYPE_CODE,
2975           x_chrv_rec.RENEWAL_NOTIFY_TO,
2976           x_chrv_rec.RENEWAL_END_DATE,
2977           x_chrv_rec.SHIP_TO_SITE_USE_ID,
2978           x_chrv_rec.PAYMENT_TERM_ID,
2979           x_chrv_rec.APPROVAL_TYPE,
2980           x_chrv_rec.TERM_CANCEL_SOURCE,
2981           x_chrv_rec.PAYMENT_INSTRUCTION_TYPE,
2982           x_chrv_rec.ORG_ID;
2983 
2984       l_no_data_found := c_chrv_rec%NOTFOUND;
2985       CLOSE c_chrv_rec;
2986       IF l_no_data_found THEN
2987          l_return_status := FND_API.G_RET_STS_ERROR;
2988          return(l_return_status);
2989       ELSE
2990          return(l_return_status);
2991       END IF;
2992      EXCEPTION
2993       WHEN OTHERS THEN
2994         -- store SQL error message on message stack for caller
2995         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2996         -- notify caller of an UNEXPECTED error
2997         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2998         return(l_return_status);
2999     END get_chrv_rec;
3000 
3001   ----------------------------------------------------------------------------
3002   --Function to populate the outcome record to be copied.
3003   ----------------------------------------------------------------------------
3004 
3005     FUNCTION    get_ocev_rec(p_oce_id IN NUMBER,
3006 				x_ocev_rec OUT NOCOPY ocev_rec_type) RETURN  VARCHAR2 IS
3007 
3008       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3009       l_no_data_found BOOLEAN := TRUE;
3010 
3011       CURSOR c_ocev_rec IS
3012       SELECT	ID,
3013                 SFWT_FLAG,
3014                 PDF_ID,
3015                 CNH_ID,
3016                 DNZ_CHR_ID,
3017                 ENABLED_YN,
3018                 COMMENTS,
3019                 ATTRIBUTE_CATEGORY,
3020                 ATTRIBUTE1,
3021                 ATTRIBUTE2,
3022                 ATTRIBUTE3,
3023                 ATTRIBUTE4,
3024                 ATTRIBUTE5,
3025                 ATTRIBUTE6,
3026                 ATTRIBUTE7,
3027                 ATTRIBUTE8,
3028                 ATTRIBUTE9,
3029                 ATTRIBUTE10,
3030                 ATTRIBUTE11,
3031                 ATTRIBUTE12,
3032                 ATTRIBUTE13,
3033                 ATTRIBUTE14,
3034                 ATTRIBUTE15
3035 	FROM    OKC_OUTCOMES_V
3036 	WHERE 	ID = p_oce_id;
3037     BEGIN
3038       OPEN c_ocev_rec;
3039       FETCH c_ocev_rec
3040       INTO	x_ocev_rec.ID,
3041                 x_ocev_rec.SFWT_FLAG,
3042                 x_ocev_rec.PDF_ID,
3043                 x_ocev_rec.CNH_ID,
3044                 x_ocev_rec.DNZ_CHR_ID,
3045                 x_ocev_rec.ENABLED_YN,
3046                 x_ocev_rec.COMMENTS,
3047                 x_ocev_rec.ATTRIBUTE_CATEGORY,
3048                 x_ocev_rec.ATTRIBUTE1,
3049                 x_ocev_rec.ATTRIBUTE2,
3050                 x_ocev_rec.ATTRIBUTE3,
3051                 x_ocev_rec.ATTRIBUTE4,
3052                 x_ocev_rec.ATTRIBUTE5,
3053                 x_ocev_rec.ATTRIBUTE6,
3054                 x_ocev_rec.ATTRIBUTE7,
3055                 x_ocev_rec.ATTRIBUTE8,
3056                 x_ocev_rec.ATTRIBUTE9,
3057                 x_ocev_rec.ATTRIBUTE10,
3058                 x_ocev_rec.ATTRIBUTE11,
3059                 x_ocev_rec.ATTRIBUTE12,
3060                 x_ocev_rec.ATTRIBUTE13,
3061                 x_ocev_rec.ATTRIBUTE14,
3062                 x_ocev_rec.ATTRIBUTE15;
3063 
3064       l_no_data_found := c_ocev_rec%NOTFOUND;
3065       CLOSE c_ocev_rec;
3066       IF l_no_data_found THEN
3067         l_return_status := FND_API.G_RET_STS_ERROR;
3068         return(l_return_status);
3069       ELSE
3070         return(l_return_status);
3071       END IF;
3072     EXCEPTION
3073       WHEN OTHERS THEN
3074         -- store SQL error message on message stack for caller
3075         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3076         -- notify caller of an UNEXPECTED error
3077         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3078         return(l_return_status);
3079     END get_ocev_rec;
3080 
3081   ----------------------------------------------------------------------------
3082   --Function to populate the outcome arguments record to be copied.
3083   ----------------------------------------------------------------------------
3084     FUNCTION    get_oatv_rec(p_oat_id IN NUMBER,
3085 				x_oatv_rec OUT NOCOPY oatv_rec_type) RETURN  VARCHAR2 IS
3086 
3087       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3088       l_no_data_found BOOLEAN := TRUE;
3089 
3090       CURSOR c_oatv_rec IS
3091       SELECT	ID,
3092                 PDP_ID,
3093                 OCE_ID,
3094                 AAE_ID,
3095                 DNZ_CHR_ID,
3096                 VALUE
3097 	FROM    OKC_OUTCOME_ARGUMENTS_V
3098 	WHERE 	ID = p_oat_id;
3099 
3100     BEGIN
3101       OPEN c_oatv_rec;
3102       FETCH c_oatv_rec
3103       INTO	x_oatv_rec.ID,
3104                 x_oatv_rec.PDP_ID,
3105                 x_oatv_rec.OCE_ID,
3106                 x_oatv_rec.AAE_ID,
3107                 x_oatv_rec.DNZ_CHR_ID,
3108                 x_oatv_rec.VALUE;
3109 
3110       l_no_data_found := c_oatv_rec%NOTFOUND;
3111       CLOSE c_oatv_rec;
3112       IF l_no_data_found THEN
3113         l_return_status := FND_API.G_RET_STS_ERROR;
3114         return(l_return_status);
3115       ELSE
3116         return(l_return_status);
3117       END IF;
3118     EXCEPTION
3119       WHEN OTHERS THEN
3120         -- store SQL error message on message stack for caller
3121         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3122         -- notify caller of an UNEXPECTED error
3123         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3124         return(l_return_status);
3125 
3126     END get_oatv_rec;
3127 
3128 --------------------------------------------------------------------------------------------------
3129 -----------------------------------------------------------------------------------------------
3130     FUNCTION    get_pavv_rec(p_pav_id IN NUMBER,
3131                                 x_pavv_rec OUT NOCOPY pavv_rec_type) RETURN  VARCHAR2 IS
3132 
3133       l_return_status           VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3134       l_no_data_found BOOLEAN := TRUE;
3135 
3136       CURSOR c_pavv_rec IS
3137       SELECT    ID,
3138                 CHR_ID,
3139                 CLE_ID,
3140                 FLEX_TITLE,
3141                 PRICING_CONTEXT,
3142                 PRICING_ATTRIBUTE1,
3143                 PRICING_ATTRIBUTE2,
3144                 PRICING_ATTRIBUTE3,
3145                 PRICING_ATTRIBUTE4,
3146                 PRICING_ATTRIBUTE5,
3147                 PRICING_ATTRIBUTE6,
3148                 PRICING_ATTRIBUTE7,
3149                 PRICING_ATTRIBUTE8,
3150                 PRICING_ATTRIBUTE9,
3151                 PRICING_ATTRIBUTE10,
3152                 PRICING_ATTRIBUTE11,
3153                 PRICING_ATTRIBUTE12,
3154                 PRICING_ATTRIBUTE13,
3155                 PRICING_ATTRIBUTE14,
3156                 PRICING_ATTRIBUTE15,
3157                 PRICING_ATTRIBUTE16,
3158                 PRICING_ATTRIBUTE17,
3159                 PRICING_ATTRIBUTE18,
3160                 PRICING_ATTRIBUTE19,
3161                 PRICING_ATTRIBUTE20,
3162                 PRICING_ATTRIBUTE21,
3163                 PRICING_ATTRIBUTE22,
3164                 PRICING_ATTRIBUTE23,
3165                 PRICING_ATTRIBUTE24,
3166                 PRICING_ATTRIBUTE25,
3167                 PRICING_ATTRIBUTE26,
3168                 PRICING_ATTRIBUTE27,
3169                 PRICING_ATTRIBUTE28,
3170                 PRICING_ATTRIBUTE29,
3171                 PRICING_ATTRIBUTE30,
3172                 PRICING_ATTRIBUTE31,
3173                 PRICING_ATTRIBUTE32,
3174                 PRICING_ATTRIBUTE33,
3175                 PRICING_ATTRIBUTE34,
3176                 PRICING_ATTRIBUTE35,
3177                 PRICING_ATTRIBUTE36,
3178                 PRICING_ATTRIBUTE37,
3179                 PRICING_ATTRIBUTE38,
3180                 PRICING_ATTRIBUTE39,
3181                 PRICING_ATTRIBUTE40,
3182                 PRICING_ATTRIBUTE41,
3183                 PRICING_ATTRIBUTE42,
3184                 PRICING_ATTRIBUTE43,
3185                 PRICING_ATTRIBUTE44,
3186                 PRICING_ATTRIBUTE45,
3187                 PRICING_ATTRIBUTE46,
3188                 PRICING_ATTRIBUTE47,
3189                 PRICING_ATTRIBUTE48,
3190                 PRICING_ATTRIBUTE49,
3191                 PRICING_ATTRIBUTE50,
3192                 PRICING_ATTRIBUTE51,
3193                 PRICING_ATTRIBUTE52,
3194                 PRICING_ATTRIBUTE53,
3195                 PRICING_ATTRIBUTE54,
3196                 PRICING_ATTRIBUTE55,
3197                 PRICING_ATTRIBUTE56,
3198                 PRICING_ATTRIBUTE57,
3199                 PRICING_ATTRIBUTE58,
3200                 PRICING_ATTRIBUTE59,
3201                 PRICING_ATTRIBUTE60,
3202                 PRICING_ATTRIBUTE61,
3203                 PRICING_ATTRIBUTE62,
3204                 PRICING_ATTRIBUTE63,
3205                 PRICING_ATTRIBUTE64,
3206                 PRICING_ATTRIBUTE65,
3207                 PRICING_ATTRIBUTE66,
3208                 PRICING_ATTRIBUTE67,
3209                 PRICING_ATTRIBUTE68,
3210                 PRICING_ATTRIBUTE69,
3211                 PRICING_ATTRIBUTE70,
3212                 PRICING_ATTRIBUTE71,
3213                 PRICING_ATTRIBUTE72,
3214                 PRICING_ATTRIBUTE73,
3215                 PRICING_ATTRIBUTE74,
3216                 PRICING_ATTRIBUTE75,
3217                 PRICING_ATTRIBUTE76,
3218                 PRICING_ATTRIBUTE77,
3219                 PRICING_ATTRIBUTE78,
3220                 PRICING_ATTRIBUTE79,
3221                 PRICING_ATTRIBUTE80,
3222                 PRICING_ATTRIBUTE81,
3223                 PRICING_ATTRIBUTE82,
3224                 PRICING_ATTRIBUTE83,
3225                 PRICING_ATTRIBUTE84,
3226                 PRICING_ATTRIBUTE85,
3227                 PRICING_ATTRIBUTE86,
3228                 PRICING_ATTRIBUTE87,
3229                 PRICING_ATTRIBUTE88,
3230                 PRICING_ATTRIBUTE89,
3231                 PRICING_ATTRIBUTE90,
3232                 PRICING_ATTRIBUTE91,
3233                 PRICING_ATTRIBUTE92,
3234                 PRICING_ATTRIBUTE93,
3235                 PRICING_ATTRIBUTE94,
3236                 PRICING_ATTRIBUTE95,
3237                 PRICING_ATTRIBUTE96,
3238                 PRICING_ATTRIBUTE97,
3239                 PRICING_ATTRIBUTE98,
3240                 PRICING_ATTRIBUTE99,
3241                 PRICING_ATTRIBUTE100,
3242                 QUALIFIER_CONTEXT,
3243                 QUALIFIER_ATTRIBUTE1,
3244                 QUALIFIER_ATTRIBUTE2,
3245                 QUALIFIER_ATTRIBUTE3,
3246                 QUALIFIER_ATTRIBUTE4,
3247                 QUALIFIER_ATTRIBUTE5,
3248                 QUALIFIER_ATTRIBUTE6,
3249                 QUALIFIER_ATTRIBUTE7,
3250                 QUALIFIER_ATTRIBUTE8,
3251                 QUALIFIER_ATTRIBUTE9,
3252                 QUALIFIER_ATTRIBUTE10,
3253                 QUALIFIER_ATTRIBUTE11,
3254                 QUALIFIER_ATTRIBUTE12,
3255                 QUALIFIER_ATTRIBUTE13,
3256                 QUALIFIER_ATTRIBUTE14,
3257                 QUALIFIER_ATTRIBUTE15,
3258                 QUALIFIER_ATTRIBUTE16,
3259                 QUALIFIER_ATTRIBUTE17,
3260                 QUALIFIER_ATTRIBUTE18,
3261                 QUALIFIER_ATTRIBUTE19,
3262                 QUALIFIER_ATTRIBUTE20,
3263                 QUALIFIER_ATTRIBUTE21,
3264                 QUALIFIER_ATTRIBUTE22,
3265                 QUALIFIER_ATTRIBUTE23,
3266                 QUALIFIER_ATTRIBUTE24,
3267                 QUALIFIER_ATTRIBUTE25,
3268                 QUALIFIER_ATTRIBUTE26,
3269                 QUALIFIER_ATTRIBUTE27,
3270                 QUALIFIER_ATTRIBUTE28,
3271                 QUALIFIER_ATTRIBUTE29,
3272                 QUALIFIER_ATTRIBUTE30,
3273                 QUALIFIER_ATTRIBUTE31,
3274                 QUALIFIER_ATTRIBUTE32,
3275                 QUALIFIER_ATTRIBUTE33,
3276                 QUALIFIER_ATTRIBUTE34,
3277                 QUALIFIER_ATTRIBUTE35,
3278                 QUALIFIER_ATTRIBUTE36,
3279                 QUALIFIER_ATTRIBUTE37,
3280                 QUALIFIER_ATTRIBUTE38,
3281                 QUALIFIER_ATTRIBUTE39,
3282                 QUALIFIER_ATTRIBUTE40,
3283                 QUALIFIER_ATTRIBUTE41,
3284                 QUALIFIER_ATTRIBUTE42,
3285                 QUALIFIER_ATTRIBUTE43,
3286                 QUALIFIER_ATTRIBUTE44,
3287                 QUALIFIER_ATTRIBUTE45,
3288                 QUALIFIER_ATTRIBUTE46,
3289                 QUALIFIER_ATTRIBUTE47,
3290                 QUALIFIER_ATTRIBUTE48,
3291                 QUALIFIER_ATTRIBUTE49,
3292                 QUALIFIER_ATTRIBUTE50,
3293                 QUALIFIER_ATTRIBUTE51,
3294                 QUALIFIER_ATTRIBUTE52,
3295                 QUALIFIER_ATTRIBUTE53,
3296                 QUALIFIER_ATTRIBUTE54,
3297                 QUALIFIER_ATTRIBUTE55,
3298                 QUALIFIER_ATTRIBUTE56,
3299                 QUALIFIER_ATTRIBUTE57,
3300                 QUALIFIER_ATTRIBUTE58,
3301                 QUALIFIER_ATTRIBUTE59,
3302                 QUALIFIER_ATTRIBUTE60,
3303                 QUALIFIER_ATTRIBUTE61,
3304                 QUALIFIER_ATTRIBUTE62,
3305                 QUALIFIER_ATTRIBUTE63,
3306                 QUALIFIER_ATTRIBUTE64,
3307                 QUALIFIER_ATTRIBUTE65,
3308                 QUALIFIER_ATTRIBUTE66,
3309                 QUALIFIER_ATTRIBUTE67,
3310                 QUALIFIER_ATTRIBUTE68,
3311                 QUALIFIER_ATTRIBUTE69,
3312                 QUALIFIER_ATTRIBUTE70,
3313                 QUALIFIER_ATTRIBUTE71,
3314                 QUALIFIER_ATTRIBUTE72,
3315                 QUALIFIER_ATTRIBUTE73,
3316                 QUALIFIER_ATTRIBUTE74,
3317                 QUALIFIER_ATTRIBUTE75,
3318                 QUALIFIER_ATTRIBUTE76,
3319                 QUALIFIER_ATTRIBUTE77,
3320                 QUALIFIER_ATTRIBUTE78,
3321                 QUALIFIER_ATTRIBUTE79,
3322                 QUALIFIER_ATTRIBUTE80,
3323                 QUALIFIER_ATTRIBUTE81,
3324                 QUALIFIER_ATTRIBUTE82,
3325                 QUALIFIER_ATTRIBUTE83,
3326                 QUALIFIER_ATTRIBUTE84,
3327                 QUALIFIER_ATTRIBUTE85,
3328                 QUALIFIER_ATTRIBUTE86,
3329                 QUALIFIER_ATTRIBUTE87,
3330                 QUALIFIER_ATTRIBUTE88,
3331                 QUALIFIER_ATTRIBUTE89,
3332                 QUALIFIER_ATTRIBUTE90,
3333                 QUALIFIER_ATTRIBUTE91,
3334                 QUALIFIER_ATTRIBUTE92,
3335                 QUALIFIER_ATTRIBUTE93,
3336                 QUALIFIER_ATTRIBUTE94,
3337                 QUALIFIER_ATTRIBUTE95,
3338                 QUALIFIER_ATTRIBUTE96,
3339                 QUALIFIER_ATTRIBUTE97,
3340                 QUALIFIER_ATTRIBUTE98,
3341                 QUALIFIER_ATTRIBUTE99,
3342                 QUALIFIER_ATTRIBUTE100
3343         FROM    OKC_PRICE_ATT_VALUES_V
3344         WHERE   ID = p_pav_id;
3345     BEGIN
3346       OPEN c_pavv_rec;
3347       FETCH c_pavv_rec
3348       INTO      x_pavv_rec.ID,
3349                 x_pavv_rec.CHR_ID,
3350                 x_pavv_rec.CLE_ID,
3351                 x_pavv_rec.FLEX_TITLE,
3352                 x_pavv_rec.PRICING_CONTEXT,
3353                 x_pavv_rec.PRICING_ATTRIBUTE1,
3354                 x_pavv_rec.PRICING_ATTRIBUTE2,
3355                 x_pavv_rec.PRICING_ATTRIBUTE3,
3356                 x_pavv_rec.PRICING_ATTRIBUTE4,
3357                 x_pavv_rec.PRICING_ATTRIBUTE5,
3358                 x_pavv_rec.PRICING_ATTRIBUTE6,
3359                 x_pavv_rec.PRICING_ATTRIBUTE7,
3360                 x_pavv_rec.PRICING_ATTRIBUTE8,
3361                 x_pavv_rec.PRICING_ATTRIBUTE9,
3362                 x_pavv_rec.PRICING_ATTRIBUTE10,
3363                 x_pavv_rec.PRICING_ATTRIBUTE11,
3364                 x_pavv_rec.PRICING_ATTRIBUTE12,
3365                 x_pavv_rec.PRICING_ATTRIBUTE13,
3366                 x_pavv_rec.PRICING_ATTRIBUTE14,
3367                 x_pavv_rec.PRICING_ATTRIBUTE15,
3368                 x_pavv_rec.PRICING_ATTRIBUTE16,
3369                 x_pavv_rec.PRICING_ATTRIBUTE17,
3370                 x_pavv_rec.PRICING_ATTRIBUTE18,
3371                 x_pavv_rec.PRICING_ATTRIBUTE19,
3372                 x_pavv_rec.PRICING_ATTRIBUTE20,
3373                 x_pavv_rec.PRICING_ATTRIBUTE21,
3374                 x_pavv_rec.PRICING_ATTRIBUTE22,
3375                 x_pavv_rec.PRICING_ATTRIBUTE23,
3376                 x_pavv_rec.PRICING_ATTRIBUTE24,
3377                 x_pavv_rec.PRICING_ATTRIBUTE25,
3378                 x_pavv_rec.PRICING_ATTRIBUTE26,
3379                 x_pavv_rec.PRICING_ATTRIBUTE27,
3380                 x_pavv_rec.PRICING_ATTRIBUTE28,
3381                 x_pavv_rec.PRICING_ATTRIBUTE29,
3382                 x_pavv_rec.PRICING_ATTRIBUTE30,
3383                 x_pavv_rec.PRICING_ATTRIBUTE31,
3384                 x_pavv_rec.PRICING_ATTRIBUTE32,
3385                 x_pavv_rec.PRICING_ATTRIBUTE33,
3386                 x_pavv_rec.PRICING_ATTRIBUTE34,
3387                 x_pavv_rec.PRICING_ATTRIBUTE35,
3388                 x_pavv_rec.PRICING_ATTRIBUTE36,
3389                 x_pavv_rec.PRICING_ATTRIBUTE37,
3390                 x_pavv_rec.PRICING_ATTRIBUTE38,
3391                 x_pavv_rec.PRICING_ATTRIBUTE39,
3392                 x_pavv_rec.PRICING_ATTRIBUTE40,
3393                 x_pavv_rec.PRICING_ATTRIBUTE41,
3394                 x_pavv_rec.PRICING_ATTRIBUTE42,
3395                 x_pavv_rec.PRICING_ATTRIBUTE43,
3396                 x_pavv_rec.PRICING_ATTRIBUTE44,
3397                 x_pavv_rec.PRICING_ATTRIBUTE45,
3398                 x_pavv_rec.PRICING_ATTRIBUTE46,
3399                 x_pavv_rec.PRICING_ATTRIBUTE47,
3400                 x_pavv_rec.PRICING_ATTRIBUTE48,
3401                 x_pavv_rec.PRICING_ATTRIBUTE49,
3402                 x_pavv_rec.PRICING_ATTRIBUTE50,
3403                 x_pavv_rec.PRICING_ATTRIBUTE51,
3404                 x_pavv_rec.PRICING_ATTRIBUTE52,
3405                 x_pavv_rec.PRICING_ATTRIBUTE53,
3406                 x_pavv_rec.PRICING_ATTRIBUTE54,
3407                 x_pavv_rec.PRICING_ATTRIBUTE55,
3408                 x_pavv_rec.PRICING_ATTRIBUTE56,
3409                 x_pavv_rec.PRICING_ATTRIBUTE57,
3410                 x_pavv_rec.PRICING_ATTRIBUTE58,
3411                 x_pavv_rec.PRICING_ATTRIBUTE59,
3412                 x_pavv_rec.PRICING_ATTRIBUTE60,
3413                 x_pavv_rec.PRICING_ATTRIBUTE61,
3414                 x_pavv_rec.PRICING_ATTRIBUTE62,
3415                 x_pavv_rec.PRICING_ATTRIBUTE63,
3416                 x_pavv_rec.PRICING_ATTRIBUTE64,
3417                 x_pavv_rec.PRICING_ATTRIBUTE65,
3418                 x_pavv_rec.PRICING_ATTRIBUTE66,
3419                 x_pavv_rec.PRICING_ATTRIBUTE67,
3420                 x_pavv_rec.PRICING_ATTRIBUTE68,
3421                 x_pavv_rec.PRICING_ATTRIBUTE69,
3422                 x_pavv_rec.PRICING_ATTRIBUTE70,
3423                 x_pavv_rec.PRICING_ATTRIBUTE71,
3424                 x_pavv_rec.PRICING_ATTRIBUTE72,
3425                 x_pavv_rec.PRICING_ATTRIBUTE73,
3426                 x_pavv_rec.PRICING_ATTRIBUTE74,
3427                 x_pavv_rec.PRICING_ATTRIBUTE75,
3428                 x_pavv_rec.PRICING_ATTRIBUTE76,
3429                 x_pavv_rec.PRICING_ATTRIBUTE77,
3430                 x_pavv_rec.PRICING_ATTRIBUTE78,
3431                 x_pavv_rec.PRICING_ATTRIBUTE79,
3432                 x_pavv_rec.PRICING_ATTRIBUTE80,
3433                 x_pavv_rec.PRICING_ATTRIBUTE81,
3434                 x_pavv_rec.PRICING_ATTRIBUTE82,
3435                 x_pavv_rec.PRICING_ATTRIBUTE83,
3436                 x_pavv_rec.PRICING_ATTRIBUTE84,
3437                 x_pavv_rec.PRICING_ATTRIBUTE85,
3438                 x_pavv_rec.PRICING_ATTRIBUTE86,
3439                 x_pavv_rec.PRICING_ATTRIBUTE87,
3440                 x_pavv_rec.PRICING_ATTRIBUTE88,
3441                 x_pavv_rec.PRICING_ATTRIBUTE89,
3442                 x_pavv_rec.PRICING_ATTRIBUTE90,
3443                 x_pavv_rec.PRICING_ATTRIBUTE91,
3444                 x_pavv_rec.PRICING_ATTRIBUTE92,
3445                 x_pavv_rec.PRICING_ATTRIBUTE93,
3446                 x_pavv_rec.PRICING_ATTRIBUTE94,
3447                 x_pavv_rec.PRICING_ATTRIBUTE95,
3448                 x_pavv_rec.PRICING_ATTRIBUTE96,
3449                 x_pavv_rec.PRICING_ATTRIBUTE97,
3450                 x_pavv_rec.PRICING_ATTRIBUTE98,
3451                 x_pavv_rec.PRICING_ATTRIBUTE99,
3452                 x_pavv_rec.PRICING_ATTRIBUTE100,
3453                 x_pavv_rec.QUALIFIER_CONTEXT,
3454                 x_pavv_rec.QUALIFIER_ATTRIBUTE1,
3455                 x_pavv_rec.QUALIFIER_ATTRIBUTE2,
3456                 x_pavv_rec.QUALIFIER_ATTRIBUTE3,
3457                 x_pavv_rec.QUALIFIER_ATTRIBUTE4,
3458                 x_pavv_rec.QUALIFIER_ATTRIBUTE5,
3459                 x_pavv_rec.QUALIFIER_ATTRIBUTE6,
3460                 x_pavv_rec.QUALIFIER_ATTRIBUTE7,
3461                 x_pavv_rec.QUALIFIER_ATTRIBUTE8,
3462                 x_pavv_rec.QUALIFIER_ATTRIBUTE9,
3463                 x_pavv_rec.QUALIFIER_ATTRIBUTE10,
3464                 x_pavv_rec.QUALIFIER_ATTRIBUTE11,
3465                 x_pavv_rec.QUALIFIER_ATTRIBUTE12,
3466                 x_pavv_rec.QUALIFIER_ATTRIBUTE13,
3467                 x_pavv_rec.QUALIFIER_ATTRIBUTE14,
3468                 x_pavv_rec.QUALIFIER_ATTRIBUTE15,
3469                 x_pavv_rec.QUALIFIER_ATTRIBUTE16,
3470                 x_pavv_rec.QUALIFIER_ATTRIBUTE17,
3471                 x_pavv_rec.QUALIFIER_ATTRIBUTE18,
3472                 x_pavv_rec.QUALIFIER_ATTRIBUTE19,
3473                 x_pavv_rec.QUALIFIER_ATTRIBUTE20,
3474                 x_pavv_rec.QUALIFIER_ATTRIBUTE21,
3475                 x_pavv_rec.QUALIFIER_ATTRIBUTE22,
3476                 x_pavv_rec.QUALIFIER_ATTRIBUTE23,
3477                 x_pavv_rec.QUALIFIER_ATTRIBUTE24,
3478                 x_pavv_rec.QUALIFIER_ATTRIBUTE25,
3479                 x_pavv_rec.QUALIFIER_ATTRIBUTE26,
3480                 x_pavv_rec.QUALIFIER_ATTRIBUTE27,
3481                 x_pavv_rec.QUALIFIER_ATTRIBUTE28,
3482                 x_pavv_rec.QUALIFIER_ATTRIBUTE29,
3483                 x_pavv_rec.QUALIFIER_ATTRIBUTE30,
3484                 x_pavv_rec.QUALIFIER_ATTRIBUTE31,
3485                 x_pavv_rec.QUALIFIER_ATTRIBUTE32,
3486                 x_pavv_rec.QUALIFIER_ATTRIBUTE33,
3487                 x_pavv_rec.QUALIFIER_ATTRIBUTE34,
3488                 x_pavv_rec.QUALIFIER_ATTRIBUTE35,
3489                 x_pavv_rec.QUALIFIER_ATTRIBUTE36,
3490                 x_pavv_rec.QUALIFIER_ATTRIBUTE37,
3491                 x_pavv_rec.QUALIFIER_ATTRIBUTE38,
3492                 x_pavv_rec.QUALIFIER_ATTRIBUTE39,
3493                 x_pavv_rec.QUALIFIER_ATTRIBUTE40,
3494                 x_pavv_rec.QUALIFIER_ATTRIBUTE41,
3495                 x_pavv_rec.QUALIFIER_ATTRIBUTE42,
3496                 x_pavv_rec.QUALIFIER_ATTRIBUTE43,
3497                 x_pavv_rec.QUALIFIER_ATTRIBUTE44,
3498                 x_pavv_rec.QUALIFIER_ATTRIBUTE45,
3499                 x_pavv_rec.QUALIFIER_ATTRIBUTE46,
3500                 x_pavv_rec.QUALIFIER_ATTRIBUTE47,
3501                 x_pavv_rec.QUALIFIER_ATTRIBUTE48,
3502                 x_pavv_rec.QUALIFIER_ATTRIBUTE49,
3503                 x_pavv_rec.QUALIFIER_ATTRIBUTE50,
3504                 x_pavv_rec.QUALIFIER_ATTRIBUTE51,
3505                 x_pavv_rec.QUALIFIER_ATTRIBUTE52,
3506                 x_pavv_rec.QUALIFIER_ATTRIBUTE53,
3507                 x_pavv_rec.QUALIFIER_ATTRIBUTE54,
3508                 x_pavv_rec.QUALIFIER_ATTRIBUTE55,
3509                 x_pavv_rec.QUALIFIER_ATTRIBUTE56,
3510                 x_pavv_rec.QUALIFIER_ATTRIBUTE57,
3511                 x_pavv_rec.QUALIFIER_ATTRIBUTE58,
3512                 x_pavv_rec.QUALIFIER_ATTRIBUTE59,
3513                 x_pavv_rec.QUALIFIER_ATTRIBUTE60,
3514                 x_pavv_rec.QUALIFIER_ATTRIBUTE61,
3515                 x_pavv_rec.QUALIFIER_ATTRIBUTE62,
3516                 x_pavv_rec.QUALIFIER_ATTRIBUTE63,
3517                 x_pavv_rec.QUALIFIER_ATTRIBUTE64,
3518                 x_pavv_rec.QUALIFIER_ATTRIBUTE65,
3519                 x_pavv_rec.QUALIFIER_ATTRIBUTE66,
3520                 x_pavv_rec.QUALIFIER_ATTRIBUTE67,
3521                 x_pavv_rec.QUALIFIER_ATTRIBUTE68,
3522                 x_pavv_rec.QUALIFIER_ATTRIBUTE69,
3523                 x_pavv_rec.QUALIFIER_ATTRIBUTE70,
3524                 x_pavv_rec.QUALIFIER_ATTRIBUTE71,
3525                 x_pavv_rec.QUALIFIER_ATTRIBUTE72,
3526                 x_pavv_rec.QUALIFIER_ATTRIBUTE73,
3527                 x_pavv_rec.QUALIFIER_ATTRIBUTE74,
3528                 x_pavv_rec.QUALIFIER_ATTRIBUTE75,
3529                 x_pavv_rec.QUALIFIER_ATTRIBUTE76,
3530                 x_pavv_rec.QUALIFIER_ATTRIBUTE77,
3531                 x_pavv_rec.QUALIFIER_ATTRIBUTE78,
3532                 x_pavv_rec.QUALIFIER_ATTRIBUTE79,
3533                 x_pavv_rec.QUALIFIER_ATTRIBUTE80,
3534                 x_pavv_rec.QUALIFIER_ATTRIBUTE81,
3535                 x_pavv_rec.QUALIFIER_ATTRIBUTE82,
3536                 x_pavv_rec.QUALIFIER_ATTRIBUTE83,
3537                 x_pavv_rec.QUALIFIER_ATTRIBUTE84,
3538                 x_pavv_rec.QUALIFIER_ATTRIBUTE85,
3539                 x_pavv_rec.QUALIFIER_ATTRIBUTE86,
3540                 x_pavv_rec.QUALIFIER_ATTRIBUTE87,
3541                 x_pavv_rec.QUALIFIER_ATTRIBUTE88,
3542                 x_pavv_rec.QUALIFIER_ATTRIBUTE89,
3543                 x_pavv_rec.QUALIFIER_ATTRIBUTE90,
3544                 x_pavv_rec.QUALIFIER_ATTRIBUTE91,
3545                 x_pavv_rec.QUALIFIER_ATTRIBUTE92,
3546                 x_pavv_rec.QUALIFIER_ATTRIBUTE93,
3547                 x_pavv_rec.QUALIFIER_ATTRIBUTE94,
3548                 x_pavv_rec.QUALIFIER_ATTRIBUTE95,
3549                 x_pavv_rec.QUALIFIER_ATTRIBUTE96,
3550                 x_pavv_rec.QUALIFIER_ATTRIBUTE97,
3551                 x_pavv_rec.QUALIFIER_ATTRIBUTE98,
3552                 x_pavv_rec.QUALIFIER_ATTRIBUTE99,
3553                 x_pavv_rec.QUALIFIER_ATTRIBUTE100;
3554 
3555       l_no_data_found := c_pavv_rec%NOTFOUND;
3556       CLOSE c_pavv_rec;
3557       IF l_no_data_found THEN
3558         l_return_status := OKC_API.G_RET_STS_ERROR;
3559         return(l_return_status);
3560       ELSE
3561         return(l_return_status);
3562       END IF;
3563     EXCEPTION
3564       WHEN OTHERS THEN
3565         -- store SQL error message on message stack for caller
3566         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3567         -- notify caller of an UNEXPECTED error
3568         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3569         return(l_return_status);
3570 
3571     END get_pavv_rec;
3572 
3573   ----------------------------------------------------------------------------
3574   --Function to populate the price_attributes record to be copied.
3575   ----------------------------------------------------------------------------
3576      FUNCTION    get_patv_rec(p_pat_id IN NUMBER,
3577                                 x_patv_rec OUT NOCOPY patv_rec_type) RETURN  VARCHAR2 IS
3578 
3579       l_return_status           VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3580       l_no_data_found BOOLEAN := TRUE;
3581 
3582       CURSOR c_patv_rec IS
3583       SELECT
3584               --ID,
3585             PAT_ID,
3586             CHR_ID,
3587             CLE_ID,
3588             BSL_ID,
3589             BCL_ID,
3590             CREATED_BY,
3591             CREATION_DATE,
3592             LAST_UPDATED_BY,
3593             LAST_UPDATE_DATE,
3594             MODIFIED_FROM,
3595             MODIFIED_TO,
3596             MODIFIER_MECHANISM_TYPE_CODE,
3597             OPERAND,
3598             ARITHMETIC_OPERATOR,
3599             AUTOMATIC_FLAG,
3600             UPDATE_ALLOWED,
3601             UPDATED_FLAG,
3602             APPLIED_FLAG,
3603             ON_INVOICE_FLAG,
3604             PRICING_PHASE_ID,
3605            CONTEXT,
3606             PROGRAM_APPLICATION_ID,
3607             PROGRAM_ID,
3608             PROGRAM_UPDATE_DATE,
3609             REQUEST_ID,
3610             LIST_HEADER_ID,
3611             LIST_LINE_ID,
3612             LIST_LINE_TYPE_CODE,
3613             CHANGE_REASON_CODE,
3614             CHANGE_REASON_TEXT,
3615             ESTIMATED_FLAG,
3616             ADJUSTED_AMOUNT,
3617            CHARGE_TYPE_CODE,
3618            CHARGE_SUBTYPE_CODE,
3619            RANGE_BREAK_QUANTITY,
3620            ACCRUAL_CONVERSION_RATE,
3621            PRICING_GROUP_SEQUENCE,
3622            ACCRUAL_FLAG,
3623            LIST_LINE_NO,
3624            SOURCE_SYSTEM_CODE,
3625            BENEFIT_QTY,
3626            BENEFIT_UOM_CODE,
3627            EXPIRATION_DATE,
3628            MODIFIER_LEVEL_CODE,
3629            PRICE_BREAK_TYPE_CODE,
3630            SUBSTITUTION_ATTRIBUTE,
3631            PRORATION_TYPE_CODE,
3632            INCLUDE_ON_RETURNS_FLAG,
3633            OBJECT_VERSION_NUMBER,
3634             ATTRIBUTE1,
3635             ATTRIBUTE2,
3636             ATTRIBUTE3,
3637             ATTRIBUTE4,
3638             ATTRIBUTE5,
3639             ATTRIBUTE6,
3640             ATTRIBUTE7,
3641             ATTRIBUTE8,
3642             ATTRIBUTE9,
3643             ATTRIBUTE10,
3644             ATTRIBUTE11,
3645             ATTRIBUTE12,
3646             ATTRIBUTE13,
3647             ATTRIBUTE14,
3648             ATTRIBUTE15,
3649             LAST_UPDATE_LOGIN,
3650             REBATE_TRANSACTION_TYPE_CODE
3651              FROM    OKC_PRICE_ADJUSTMENTS_V
3652         WHERE   ID = p_pat_id;
3653     BEGIN
3654       OPEN c_patv_rec;
3655       FETCH c_patv_rec
3656       INTO
3657             --- x_patv_rec.ID,
3658               x_patv_rec.PAT_ID,
3659               x_patv_rec.CHR_ID,
3660               x_patv_rec.CLE_ID,
3661               x_patv_rec.BSL_ID,
3662               x_patv_rec.BCL_ID,
3663               x_patv_rec.CREATED_BY,
3664               x_patv_rec.CREATION_DATE,
3665               x_patv_rec.LAST_UPDATED_BY,
3666               x_patv_rec.LAST_UPDATE_DATE,
3667               x_patv_rec.MODIFIED_FROM,
3668               x_patv_rec.MODIFIED_TO,
3669               x_patv_rec.MODIFIER_MECHANISM_TYPE_CODE,
3670               x_patv_rec.OPERAND,
3671               x_patv_rec.ARITHMETIC_OPERATOR,
3672               x_patv_rec.AUTOMATIC_FLAG,
3673               x_patv_rec.UPDATE_ALLOWED,
3674               x_patv_rec.UPDATED_FLAG,
3675               x_patv_rec.APPLIED_FLAG,
3676               x_patv_rec.ON_INVOICE_FLAG,
3677               x_patv_rec.PRICING_PHASE_ID,
3678               x_patv_rec.CONTEXT,
3679            x_patv_rec.PROGRAM_APPLICATION_ID,
3680            x_patv_rec.PROGRAM_ID,
3681            x_patv_rec.PROGRAM_UPDATE_DATE,
3682            x_patv_rec.REQUEST_ID,
3683             x_patv_rec.LIST_HEADER_ID,
3684             x_patv_rec.LIST_LINE_ID,
3685            x_patv_rec.LIST_LINE_TYPE_CODE,
3686             x_patv_rec.CHANGE_REASON_CODE,
3687             x_patv_rec.CHANGE_REASON_TEXT,
3688             x_patv_rec.ESTIMATED_FLAG,
3689             x_patv_rec.ADJUSTED_AMOUNT,
3690            x_patv_rec.CHARGE_TYPE_CODE,
3691            x_patv_rec.CHARGE_SUBTYPE_CODE,
3692            x_patv_rec.RANGE_BREAK_QUANTITY,
3693            x_patv_rec.ACCRUAL_CONVERSION_RATE,
3694            x_patv_rec.PRICING_GROUP_SEQUENCE,
3695            x_patv_rec.ACCRUAL_FLAG,
3696             x_patv_rec.LIST_LINE_NO,
3697            x_patv_rec.SOURCE_SYSTEM_CODE,
3698            x_patv_rec.BENEFIT_QTY,
3699            x_patv_rec.BENEFIT_UOM_CODE,
3700            x_patv_rec.EXPIRATION_DATE,
3701            x_patv_rec.MODIFIER_LEVEL_CODE,
3702            x_patv_rec.PRICE_BREAK_TYPE_CODE,
3703            x_patv_rec.SUBSTITUTION_ATTRIBUTE,
3704            x_patv_rec.PRORATION_TYPE_CODE,
3705            x_patv_rec.INCLUDE_ON_RETURNS_FLAG,
3706            x_patv_rec.OBJECT_VERSION_NUMBER,
3707               x_patv_rec.ATTRIBUTE1,
3708               x_patv_rec.ATTRIBUTE2,
3709               x_patv_rec.ATTRIBUTE3,
3710               x_patv_rec.ATTRIBUTE4,
3711               x_patv_rec.ATTRIBUTE5,
3712               x_patv_rec.ATTRIBUTE6,
3713               x_patv_rec.ATTRIBUTE7,
3714               x_patv_rec.ATTRIBUTE8,
3715               x_patv_rec.ATTRIBUTE9,
3716               x_patv_rec.ATTRIBUTE10,
3717               x_patv_rec.ATTRIBUTE11,
3718               x_patv_rec.ATTRIBUTE12,
3719               x_patv_rec.ATTRIBUTE13,
3720               x_patv_rec.ATTRIBUTE14,
3721               x_patv_rec.ATTRIBUTE15,
3722               x_patv_rec.LAST_UPDATE_LOGIN,
3723               x_patv_rec.REBATE_TRANSACTION_TYPE_CODE;
3724 
3725                l_no_data_found := c_patv_rec%NOTFOUND;
3726       CLOSE c_patv_rec;
3727       IF l_no_data_found THEN
3728         l_return_status := OKC_API.G_RET_STS_ERROR;
3729         return(l_return_status);
3730       ELSE
3731         return(l_return_status);
3732       END IF;
3733     EXCEPTION
3734       WHEN OTHERS THEN
3735         -- store SQL error message on message stack for caller
3736         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3737         -- notify caller of an UNEXPECTED error
3738         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3739         return(l_return_status);
3740 
3741     END get_patv_rec;
3742 --------------------------------------------------------------------------------------------------
3743 
3744 /*---------------------------------------------------------------------------------------*/
3745 -- Procedure GenerateNewLineNumber: Used to generate line numbers for all lines and sublines
3746 --                                  in the newly created contract in the same sequence as the
3747 --                                  lines in the source contract
3748 /*---------------------------------------------------------------------------------------*/
3749 
3750  Procedure GenerateNewLineNumber(P_To_Chr_ID IN NUMBER
3751 			        ,P_Partial_Copy_YN IN VARCHAR2
3752 				,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
3753  			        ,x_return_status OUT NOCOPY VARCHAR2) IS
3754  l_api_name        CONSTANT VARCHAR2(30) := 'GenerateNewLineNumber';
3755  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
3756 
3757  cursor allLines IS
3758  select
3759   id
3760  ,line_number
3761  ,cle_id
3762  from okc_k_lines_b
3763  where dnz_chr_id = P_To_Chr_ID
3764  and (
3765       (cle_id is NOT NULL and lse_id in (7,8,9,10,11,13,25,35))
3766      OR
3767       (cle_id is NULL)
3768      )
3769  order by cle_id,to_number(line_number);
3770 
3771  cursor partialLines IS
3772  select
3773   b.id
3774  ,b.line_number
3775  ,b.cle_id
3776  from
3777   okc_k_lines_b_temp bt
3778  ,okc_k_lines_b b
3779  where b.dnz_chr_id = P_To_Chr_ID
3780  and (
3781       (b.cle_id is NOT NULL and b.lse_id in (7,8,9,10,11,13,25,35))
3782        OR
3783       (b.cle_id is NULL)
3784      )
3785  and b.id = bt.id
3786  order by bt.cle_id,to_number(bt.line_number);
3787 
3788  l_id NUMBER;
3789  l_line_number NUMBER;
3790  l_cle_id NUMBER;
3791 
3792  l_current_cle_id NUMBER := -99;
3793  l_subline_num_initialized VARCHAR2(1) := 'N';
3794  l_subline_no NUMBER := -99;
3795 
3796  l_topline_num_initialized VARCHAR2(1) := 'N';
3797  l_topline_no NUMBER := -99;
3798 
3799  BEGIN
3800   x_return_status := FND_API.G_RET_STS_SUCCESS;
3801 
3802   If (P_Partial_Copy_YN = 'N') then
3803    OPEN allLines;
3804   Elsif (P_Partial_Copy_YN = 'Y') then
3805    OPEN partialLines;
3806   End If;
3807 
3808   LOOP
3809   If (P_Partial_Copy_YN = 'N') then
3810 /*
3811    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
3812       FND_LOG.string(FND_LOG.level_statement
3813                         ,l_module_name
3814                         ,'Inside GenerateNewLineNumber, FETCHing from allLines'
3815 		    );
3816    End If;
3817 */
3818     FETCH allLines into l_id,l_line_number,l_cle_id;
3819   Elsif (P_Partial_Copy_YN = 'Y') then
3820 /*
3821    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
3822       FND_LOG.string(FND_LOG.level_statement
3823                         ,l_module_name
3824                         ,'Inside GenerateNewLineNumber, FETCHing from partialLines'
3825 		    );
3826    End If;
3827 */
3828     FETCH partialLines into l_id,l_line_number,l_cle_id;
3829   End If;
3830 
3831   If (P_Partial_Copy_YN = 'N') then
3832    EXIT WHEN allLines%NOTFOUND;
3833   Elsif (P_Partial_Copy_YN = 'Y') then
3834    EXIT WHEN partialLines%NOTFOUND;
3835   End If;
3836 
3837    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
3838       FND_LOG.string(FND_LOG.level_statement
3839                         ,l_module_name
3840                         ,'ID='||l_id||',Line Num='||l_line_number||', Cle ID='||l_cle_id
3841                     );
3842    End If;
3843 
3844   IF (l_cle_id IS NULL) then
3845     IF (l_topline_num_initialized = 'N') then
3846      IF (P_Partial_Copy_YN = 'N') then
3847        l_topline_no := 1;
3848      ELSIF (P_Partial_Copy_YN = 'Y') then
3849       IF (P_Target_Contract_New_YN = 'Y') then
3850        l_topline_no := 1;
3851       ELSIF (P_Target_Contract_New_YN = 'N') then
3852         Begin
3853          SELECT nvl(max(to_number(line_number)),0)
3854          INTO
3855          l_topline_no
3856          FROM
3857          OKC_K_LINES_B
3858          WHERE CLE_ID IS NULL
3859          AND DNZ_CHR_ID = P_To_Chr_ID
3860 	 AND ID NOT IN (Select a.id from OKC_K_LINES_B_TEMP a);
3861         End;
3862         l_topline_no := l_topline_no + 1;
3863       END IF;
3864      END IF;
3865      l_topline_num_initialized := 'Y';
3866     END IF;
3867 
3868     update okc_k_lines_b
3869     set line_number = l_topline_no
3870     where id = l_id;
3871 
3872      l_topline_no := l_topline_no + 1;
3873 
3874   ELSIF (l_cle_id IS NOT NULL) then
3875     IF (l_current_cle_id <> l_cle_id) then
3876       l_current_cle_id := l_cle_id;
3877       l_subline_num_initialized := 'N';
3878      IF (l_subline_num_initialized = 'N') then
3879       IF (P_Partial_Copy_YN = 'N') then
3880        l_subline_no := 1;
3881       ELSIF (P_Partial_Copy_YN = 'Y') then
3882        IF (P_Target_Contract_New_YN = 'Y') then
3883          l_subline_no := 1;
3884        ELSIF (P_Target_Contract_New_YN = 'N') then
3885          Begin
3886           SELECT nvl(max(to_number(line_number)),0)
3887           INTO
3888           l_subline_no
3889           FROM
3890           OKC_K_LINES_B
3891           WHERE CLE_ID = l_cle_id
3892           AND LSE_ID in (7,8,9,10,11,13,25,35)
3893           AND ID NOT IN (Select a.id from OKC_K_LINES_B_TEMP a);
3894          End;
3895          l_subline_no := l_subline_no + 1;
3896        END IF;
3897       END IF;
3898       l_subline_num_initialized := 'Y';
3899      END IF;
3900     END IF;
3901 
3902     update okc_k_lines_b
3903     set line_number = l_subline_no
3904     where id = l_id;
3905 
3906     l_subline_no := l_subline_no + 1;
3907 
3908   END IF;
3909 
3910   END LOOP;
3911   If (allLines%ISOPEN) then
3912    CLOSE allLines;
3913   Elsif (partialLines%ISOPEN) then
3914    CLOSE partialLines;
3915   End If;
3916 
3917     EXCEPTION
3918       WHEN OTHERS THEN
3919 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3920        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
3921         IF (FND_LOG.test(FND_LOG.level_unexpected, l_module_name)) THEN
3922          FND_LOG.string(FND_LOG.level_unexpected
3923                         ,l_module_name||'.GenerateNewLineNumber'
3924                         ,'EXCEPTION in GenerateNewLineNumber '||SQLERRM
3925                          );
3926         END IF;
3927       END IF;
3928 
3929 	  IF allLines%ISOPEN THEN
3930 	    CLOSE allLines;
3931           Elsif partialLines%ISOPEN THEN
3932             CLOSE partialLines;
3933 	  End If;
3934        OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3935 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3936 
3937  End GenerateNewLineNumber;
3938 
3939  --===================================================
3940  -- copy_okc_k_lines_tl
3941  -- Parameters: P_From_Chr_ID : Header ID of source contract
3942  --  	      P_To_Chr_ID   : Header ID of target contract
3943  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
3944  --				    or as part of component copy from UI (value = 'Y')
3945   --====================================================
3946  PROCEDURE copy_okc_k_lines_tl(P_From_Chr_ID IN NUMBER
3947 			    ,P_To_Chr_ID   IN NUMBER
3948 			    ,P_Partial_Copy_YN IN VARCHAR2
3949 			    ,P_Lines_Count IN NUMBER DEFAULT 0
3950 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
3951 
3952  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_K_LINES_TL';
3953  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
3954 
3955  l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3956 
3957  CURSOR GetOkcLinesTLFull(P_To_Chr_ID IN NUMBER) IS
3958  SELECT
3959    OkcTL.ID		AS OkcTL_OldID
3960   ,OkcB.ID		AS OkcTL_NewID
3961   ,OkcTL.LANGUAGE	AS OkcTL_LANGUAGE
3962   ,OkcTL.SOURCE_LANG	AS OkcTL_SOURCE_LANG
3963   ,OkcTL.SFWT_FLAG	AS OkcTL_SFWT_FLAG
3964   ,OkcTL.NAME		AS OkcTL_NAME
3965   ,OkcTL.COMMENTS	AS OkcTL_COMMENTS
3966   ,OkcTL.ITEM_DESCRIPTION AS OkcTL_ITEM_DESCRIPTION
3967   ,OkcTL.BLOCK23TEXT	AS OkcTL_BLOCK23TEXT
3968   ,OkcTL.SECURITY_GROUP_ID AS OkcTL_SECURITY_GROUP_ID
3969   ,OkcTL.OKE_BOE_DESCRIPTION AS OkcTL_OKE_BOE_DESCRIPTION
3970   ,OkcTL.COGNOMEN	AS OkcTL_COGNOMEN
3971  FROM
3972   OKC_K_LINES_TL okcTL
3973  ,OKC_K_LINES_B okcB
3974  where
3975  okcB.ORIG_SYSTEM_ID1 = okcTL.ID
3976  AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
3977 
3978  CURSOR GetOkcLinesTLPartial(P_To_Chr_ID IN NUMBER) IS
3979   SELECT
3980    OkcTL.ID             AS OkcTL_OldID
3981   ,OkcBT.ID              AS OkcTL_NewID
3982   ,OkcTL.LANGUAGE       AS OkcTL_LANGUAGE
3983   ,OkcTL.SOURCE_LANG    AS OkcTL_SOURCE_LANG
3984   ,OkcTL.SFWT_FLAG      AS OkcTL_SFWT_FLAG
3985   ,OkcTL.NAME           AS OkcTL_NAME
3986   ,OkcTL.COMMENTS       AS OkcTL_COMMENTS
3987   ,OkcTL.ITEM_DESCRIPTION AS OkcTL_ITEM_DESCRIPTION
3988   ,OkcTL.BLOCK23TEXT    AS OkcTL_BLOCK23TEXT
3989   ,OkcTL.SECURITY_GROUP_ID AS OkcTL_SECURITY_GROUP_ID
3990   ,OkcTL.OKE_BOE_DESCRIPTION AS OkcTL_OKE_BOE_DESCRIPTION
3991   ,OkcTL.COGNOMEN       AS OkcTL_COGNOMEN
3992  FROM
3993   OKC_K_LINES_TL okcTL
3994  ,OKC_K_LINES_B_TEMP okcBT
3995  where
3996  okcBT.ORIG_SYSTEM_ID1 = okcTL.ID
3997  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
3998 
3999 
4000  Begin
4001   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
4002       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
4003          FND_LOG.string(FND_LOG.level_procedure
4004                         ,l_module_name
4005                         ,'begin: '
4006                          ||',P_From_Chr_ID='||P_From_Chr_ID
4007                          ||',P_To_Chr_ID='||P_To_Chr_ID
4008                          ||',P_Partial_Copy_YN='||P_Partial_Copy_YN
4009                          );
4010       END IF;
4011   END IF;
4012   x_return_status := l_return_status;
4013 
4014   IF (P_Partial_Copy_YN = 'N') THEN
4015    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4016      FND_LOG.string(FND_LOG.level_statement,l_module_name,'Opening GetOkcLinesTLFull');
4017    End If;
4018    OPEN GetOkcLinesTLFull(P_To_Chr_ID => P_To_Chr_ID);
4019   ELSIF (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) THEN
4020    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4021      FND_LOG.string(FND_LOG.level_statement,l_module_name,'Opening GetOkcLinesTLPartial');
4022    End If;
4023    OPEN GetOkcLinesTLPartial(P_To_Chr_ID => P_To_Chr_ID);
4024   END IF;
4025 
4026   LOOP
4027   IF (P_Partial_Copy_YN = 'N') THEN
4028    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4029      FND_LOG.string(FND_LOG.level_statement,l_module_name,'FETCHing from GetOkcLinesTLFull');
4030    End If;
4031    FETCH GetOkcLinesTLFull BULK COLLECT INTO
4032    OKCLinesTLRecTab.OkcTL_OldID
4033   ,OKCLinesTLRecTab.OkcTL_NewID
4034   ,OKCLinesTLRecTab.OkcTL_LANGUAGE
4035   ,OkcLinesTLRecTab.OkcTL_SFWT_FLAG
4036   ,OKCLinesTLRecTab.OkcTL_SOURCE_LANG
4037   ,OKCLinesTLRecTab.OkcTL_NAME
4038   ,OKCLinesTLRecTab.OkcTL_COMMENTS
4039   ,OKCLinesTLRecTab.OkcTL_ITEM_DESCRIPTION
4040   ,OKCLinesTLRecTab.OkcTL_BLOCK23TEXT
4041   ,OKCLinesTLRecTab.OkcTL_SECURITY_GROUP_ID
4042   ,OKCLinesTLRecTab.OkcTL_OKE_BOE_DESCRIPTION
4043   ,OKCLinesTLRecTab.OkcTL_COGNOMEN LIMIT G_BULK_FETCH_LIMIT;
4044   ELSIF (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
4045    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4046      FND_LOG.string(FND_LOG.level_statement,l_module_name,'FETCHing from GetOkcLinesTLPartial');
4047    End If;
4048    FETCH GetOkcLinesTLPartial BULK COLLECT INTO
4049    OKCLinesTLRecTab.OkcTL_OldID
4050   ,OKCLinesTLRecTab.OkcTL_NewID
4051   ,OKCLinesTLRecTab.OkcTL_LANGUAGE
4052   ,OkcLinesTLRecTab.OkcTL_SFWT_FLAG
4053   ,OKCLinesTLRecTab.OkcTL_SOURCE_LANG
4054   ,OKCLinesTLRecTab.OkcTL_NAME
4055   ,OKCLinesTLRecTab.OkcTL_COMMENTS
4056   ,OKCLinesTLRecTab.OkcTL_ITEM_DESCRIPTION
4057   ,OKCLinesTLRecTab.OkcTL_BLOCK23TEXT
4058   ,OKCLinesTLRecTab.OkcTL_SECURITY_GROUP_ID
4059   ,OKCLinesTLRecTab.OkcTL_OKE_BOE_DESCRIPTION
4060   ,OKCLinesTLRecTab.OkcTL_COGNOMEN LIMIT G_BULK_FETCH_LIMIT;
4061   END IF;
4062 
4063   FORALL i IN OKCLinesTLRecTab.OkcTL_NewID.FIRST .. OKCLinesTLRecTab.OkcTL_NewID.LAST
4064   INSERT INTO OKC_K_LINES_TL
4065   (
4066     ID
4067    ,LANGUAGE
4068    ,SOURCE_LANG
4069    ,SFWT_FLAG
4070    ,NAME
4071    ,COMMENTS
4072    ,ITEM_DESCRIPTION
4073    ,BLOCK23TEXT
4074    ,CREATED_BY
4075    ,CREATION_DATE
4076    ,LAST_UPDATED_BY
4077    ,LAST_UPDATE_DATE
4078    ,LAST_UPDATE_LOGIN
4079    ,SECURITY_GROUP_ID
4080    ,OKE_BOE_DESCRIPTION
4081    ,COGNOMEN
4082    )
4083   SELECT
4084   OKCLinesTLRecTab.OkcTL_NewID(i)
4085  ,OKCLinesTLRecTab.OkcTL_LANGUAGE(i)
4086  ,OKCLinesTLRecTab.OkcTL_SOURCE_LANG(i)
4087  ,OKCLinesTLRecTab.OkcTL_SFWT_FLAG(i)
4088  ,OKCLinesTLRecTab.OkcTL_NAME(i)
4089  ,OKCLinesTLRecTab.OkcTL_COMMENTS(i)
4090  ,OKCLinesTLRecTab.OkcTL_ITEM_DESCRIPTION(i)
4091  ,OKCLinesTLRecTab.OkcTL_BLOCK23TEXT(i)
4092  ,FND_GLOBAL.USER_ID
4093  ,SYSDATE
4094  ,FND_GLOBAL.USER_ID
4095  ,SYSDATE
4096  ,FND_GLOBAL.LOGIN_ID
4097  ,OKCLinesTLRecTab.OkcTL_SECURITY_GROUP_ID(i)
4098  ,OKCLinesTLRecTab.OkcTL_OKE_BOE_DESCRIPTION(i)
4099  ,OKCLinesTLRecTab.OkcTL_COGNOMEN(i)
4100   FROM DUAL;
4101 
4102    IF (P_Partial_Copy_YN = 'N') THEN
4103      EXIT WHEN GetOkcLinesTLFull%NOTFOUND;
4104    ELSIF (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) THEN
4105      EXIT WHEN GetOkcLinesTLPartial%NOTFOUND;
4106    END IF;
4107 
4108   END LOOP;
4109 
4110     IF GetOkcLinesTLFull%ISOPEN THEN
4111        CLOSE GetOkcLinesTLFull;
4112     ELSIF GetOkcLinesTLPartial%ISOPEN THEN
4113        CLOSE GetOkcLinesTLPartial;
4114     END IF;
4115 
4116       EXCEPTION
4117         WHEN OTHERS THEN
4118           IF GetOkcLinesTLFull%ISOPEN THEN
4119            CLOSE GetOkcLinesTLFull;
4120           ELSIF GetOkcLinesTLPartial%ISOPEN THEN
4121            CLOSE GetOkcLinesTLPartial;
4122           END IF;
4123           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4124           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
4125 	  RAISE;
4126 
4127  End copy_okc_k_lines_tl;
4128 
4129 
4130 --===================================================
4131 --  copy_okc_price_att_values
4132 --  Parameters: P_From_Chr_ID : Header ID of source contract
4133 --   	      P_To_Chr_ID   : Header ID of target contract
4134 --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
4135 --				    or as part of component copy from UI (value = 'Y')
4136 --	      P_Target_Contract_New_YN : Flag to indicate if copy process was copying to an existing contract (value = 'N')
4137 --					 or if a new contract header was created as part of the copy process (value = 'Y'). This
4138 --					 flag gets set to 'Y' just before the call to copy_contract_header procedure in
4139 --					 copy_components
4140 --	      If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
4141 --		 use cursor GetOkcPAVFull
4142 --	      If (P_Partial_Copy_YN = 'Y') then
4143 --		If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
4144 --		  Only rows for only Header , use cursor GetOkcPAVPartial_H
4145 --		Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
4146 --		  Both rows for both Header and Lines need to be copied, use cursor GetOkcPAVPartial_HNL
4147 --		Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
4148 --		  Only rows for chosen Lines are copied, use cursor GetOkcPAVPartial_L
4149 --		Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
4150 --		  nothing needs to be copied, no copy needed
4151 --		End If
4152 --            End If
4153 --====================================================
4154  PROCEDURE copy_okc_price_att_values(P_From_Chr_ID IN NUMBER
4155 			    ,P_To_Chr_ID   IN NUMBER
4156 			    ,P_Partial_Copy_YN IN VARCHAR2
4157 			    ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
4158 			    ,P_Lines_Count IN NUMBER DEFAULT 0
4159 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
4160 
4161  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PRICE_ATT_VALUES';
4162  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
4163 
4164  l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
4165  CURSOR GetOkcPAVFull IS
4166  SELECT
4167   okcPAV.ID AS okcPAV_OldID
4168  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4169  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4170  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4171  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4172  ,okcH.ID AS okcPAV_NewChrID
4173  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4174  ,NULL AS okcPAV_NewCleID
4175  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4176  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4177  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4178  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4179  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4180  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4181  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4182  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4183  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4184  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4185  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4186  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4187  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4188  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4189  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4190  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4191  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4192  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4193  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4194  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4195  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4196  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4197  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4198  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4199  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4200  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4201  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4202  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4203  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4204  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4205  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4206  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4207  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4208  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4209  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4210  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4211  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4212  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4213  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4214  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4215  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4216  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4217  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4218  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4219  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4220  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4221  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4222  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4223  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4224  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4225  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4226  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4227  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4228  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4229  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4230  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4231  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4232  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4233  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4234  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4235  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4236  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4237  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4238  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4239  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4240  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4241  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4242  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4243  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4244  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4245  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4246  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4247  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4248  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4249  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4250  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4251  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4252  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4253  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4254  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4255  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4256  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4257  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4258  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4259  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4260  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4261  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4262  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4263  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4264  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4265  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4266  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4267  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4268  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4269  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4270  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4271  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4272  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4273  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4274  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4275  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4276  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4277  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4278  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4279  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4280  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4281  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4282  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4283  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4284  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4285  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4286  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4287  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4288  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4289  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4290  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4291  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4292  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4293  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4294  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4295  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4296  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4297  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4298  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4299  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4300  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4301  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4302  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4303  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4304  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4305  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4306  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4307  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4308  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4309  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4310  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4311  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4312  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4313  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4314  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4315  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4316  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4317  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4318  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4319  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4320  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4321  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4322  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4323  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4324  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4325  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4326  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4327  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4328  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4329  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4330  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4331  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
4332  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
4333  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
4334  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
4335  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
4336  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
4337  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
4338  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
4339  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
4340  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
4341  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
4342  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
4343  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
4344  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
4345  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
4346  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
4347  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
4348  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
4349  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
4350  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
4351  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
4352  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
4353  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
4354  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
4355  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
4356  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
4357  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
4358  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
4359  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
4360  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
4361  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
4362  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
4363  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
4364  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
4365  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
4366  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
4367  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
4368  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
4369  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
4370  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
4371  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
4372  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
4373  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
4374  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
4375  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
4376  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
4377  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
4378  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
4379  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
4380  FROM
4381   OKC_PRICE_ATT_VALUES okcPAV
4382  ,OKC_K_HEADERS_B okcH
4383   WHERE okcPAV.CHR_ID = okcH.ORIG_SYSTEM_ID1
4384   and okcH.ID = P_To_Chr_ID
4385   and okcPAV.CLE_ID is NULL
4386   and okcPAV.CHR_ID = P_From_Chr_ID
4387   UNION
4388   SELECT
4389   okcPAV.ID AS okcPAV_OldID
4390  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4391  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4392  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4393  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4394  ,to_number(decode(okcPAV.CHR_ID,NULL,NULL,okcB.DNZ_CHR_ID)) AS okcPAV_NewChrID
4395  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4396  ,okcB.ID AS okcPAV_NewCleID
4397  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4398  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4399  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4400  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4401  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4402  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4403  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4404  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4405  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4406  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4407  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4408  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4409  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4410  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4411  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4412  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4413  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4414  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4415  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4416  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4417  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4418  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4419  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4420  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4421  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4422  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4423  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4424  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4425  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4426  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4427  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4428  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4429  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4430  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4431  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4432  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4433  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4434  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4435  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4436  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4437  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4438  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4439  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4440  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4441  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4442  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4443  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4444  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4445  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4446  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4447  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4448  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4449  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4450  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4451  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4452  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4453  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4454  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4455  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4456  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4457  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4458  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4459  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4460  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4461  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4462  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4463  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4464  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4465  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4466  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4467  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4468  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4469  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4470  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4471  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4472  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4473  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4474  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4475  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4476  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4477  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4478  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4479  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4480  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4481  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4482  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4483  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4484  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4485  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4486  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4487  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4488  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4489  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4490  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4491  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4492  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4493  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4494  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4495  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4496  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4497  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4498  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4499  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4500  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4501  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4502  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4503  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4504  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4505  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4506  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4507  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4508  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4509  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4510  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4511  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4512  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4513  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4514  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4515  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4516  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4517  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4518  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4519  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4520  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4521  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4522  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4523  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4524  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4525  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4526  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4527  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4528  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4529  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4530  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4531  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4532  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4533  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4534  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4535  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4536  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4537  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4538  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4539  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4540  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4541  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4542  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4543  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4544  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4545  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4546  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4547  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4548  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4549  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4550  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4551  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4552  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4553  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
4554  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
4555  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
4556  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
4557  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
4558  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
4559  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
4560  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
4561  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
4562  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
4563  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
4564  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
4565  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
4566  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
4567  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
4568  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
4569  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
4570  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
4571  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
4572  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
4573  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
4574  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
4575  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
4576  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
4577  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
4578  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
4579  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
4580  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
4581  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
4582  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
4583  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
4584  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
4585  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
4586  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
4587  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
4588  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
4589  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
4590  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
4591  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
4592  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
4593  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
4594  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
4595  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
4596  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
4597  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
4598  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
4599  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
4600  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
4601  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
4602  FROM
4603   OKC_PRICE_ATT_VALUES okcPAV
4604  ,OKC_K_LINES_B okcB
4605   WHERE okcPAV.CLE_ID = okcB.ORIG_SYSTEM_ID1
4606   AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
4607 
4608 --------------------------------------------------------------------------
4609 --Cursor used during Component Copy to copy rows for both Header and Lines
4610 --------------------------------------------------------------------------
4611  CURSOR GetOkcPAVPartial_HNL IS
4612  SELECT
4613   okcPAV.ID AS okcPAV_OldID
4614  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4615  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4616  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4617  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4618  ,okcH.ID AS okcPAV_NewChrID
4619  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4620  ,NULL AS okcPAV_NewCleID
4621  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4622  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4623  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4624  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4625  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4626  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4627  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4628  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4629  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4630  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4631  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4632  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4633  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4634  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4635  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4636  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4637  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4638  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4639  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4640  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4641  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4642  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4643  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4644  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4645  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4646  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4647  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4648  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4649  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4650  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4651  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4652  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4653  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4654  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4655  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4656  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4657  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4658  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4659  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4660  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4661  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4662  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4663  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4664  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4665  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4666  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4667  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4668  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4669  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4670  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4671  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4672  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4673  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4674  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4675  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4676  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4677  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4678  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4679  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4680  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4681  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4682  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4683  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4684  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4685  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4686  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4687  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4688  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4689  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4690  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4691  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4692  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4693  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4694  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4695  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4696  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4697  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4698  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4699  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4700  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4701  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4702  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4703  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4704  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4705  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4706  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4707  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4708  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4709  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4710  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4711  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4712  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4713  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4714  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4715  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4716  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4717  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4718  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4719  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4720  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4721  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4722  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4723  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4724  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4725  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4726  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4727  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4728  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4729  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4730  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4731  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4732  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4733  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4734  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4735  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4736  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4737  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4738  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4739  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4740  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4741  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4742  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4743  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4744  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4745  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4746  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4747  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4748  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4749  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4750  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4751  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4752  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4753  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4754  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4755  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4756  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4757  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4758  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4759  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4760  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4761  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4762  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4763  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4764  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4765  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4766  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4767  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4768  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4769  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4770  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4771  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4772  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4773  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4774  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4775  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4776  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4777  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
4778  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
4779  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
4780  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
4781  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
4782  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
4783  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
4784  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
4785  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
4786  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
4787  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
4788  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
4789  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
4790  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
4791  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
4792  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
4793  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
4794  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
4795  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
4796  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
4797  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
4798  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
4799  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
4800  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
4801  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
4802  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
4803  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
4804  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
4805  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
4806  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
4807  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
4808  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
4809  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
4810  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
4811  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
4812  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
4813  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
4814  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
4815  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
4816  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
4817  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
4818  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
4819  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
4820  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
4821  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
4822  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
4823  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
4824  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
4825  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
4826  FROM
4827   OKC_PRICE_ATT_VALUES okcPAV
4828  ,OKC_K_HEADERS_B okcH
4829   WHERE okcPAV.CHR_ID = okcH.ORIG_SYSTEM_ID1
4830   and okcH.ID = P_To_Chr_ID
4831   and okcPAV.CLE_ID is NULL
4832   and okcPAV.CHR_ID = P_From_Chr_ID
4833   UNION
4834   SELECT
4835   okcPAV.ID AS okcPAV_OldID
4836  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4837  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4838  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4839  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4840  ,to_number(decode(okcPAV.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPAV_NewChrID
4841  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4842  ,okcBT.ID AS okcPAV_NewCleID
4843  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4844  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4845  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4846  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4847  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4848  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4849  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4850  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4851  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4852  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4853  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4854  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4855  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4856  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4857  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4858  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4859  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4860  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4861  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4862  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4863  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4864  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4865  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4866  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4867  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4868  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4869  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4870  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4871  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4872  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4873  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4874  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4875  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4876  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4877  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4878  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4879  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4880  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4881  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4882  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4883  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4884  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4885  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4886  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4887  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4888  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4889  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4890  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4891  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4892  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4893  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4894  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4895  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4896  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4897  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4898  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4899  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4900  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4901  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4902  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4903  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4904  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4905  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4906  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4907  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4908  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4909  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4910  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4911  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4912  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4913  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4914  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4915  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4916  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4917  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4918  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4919  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4920  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4921  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4922  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4923  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4924  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4925  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4926  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4927  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4928  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4929  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4930  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4931  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4932  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4933  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4934  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4935  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4936  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4937  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4938  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4939  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4940  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4941  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4942  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4943  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4944  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4945  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4946  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4947  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4948  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4949  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4950  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4951  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4952  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4953  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4954  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4955  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4956  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4957  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4958  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4959  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4960  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4961  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4962  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4963  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4964  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4965  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4966  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4967  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4968  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4969  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4970  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4971  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4972  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4973  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4974  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4975  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4976  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4977  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4978  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4979  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4980  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4981  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4982  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4983  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4984  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4985  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4986  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4987  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4988  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4989  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4990  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4991  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4992  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4993  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4994  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4995  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4996  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4997  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4998  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4999  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
5000  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
5001  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
5002  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
5003  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
5004  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
5005  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
5006  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
5007  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
5008  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
5009  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
5010  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
5011  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
5012  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
5013  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
5014  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
5015  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
5016  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
5017  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
5018  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
5019  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
5020  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
5021  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
5022  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
5023  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
5024  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
5025  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
5026  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
5027  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
5028  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
5029  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
5030  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
5031  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
5032  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
5033  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
5034  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
5035  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
5036  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
5037  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
5038  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
5039  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
5040  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
5041  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
5042  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
5043  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
5044  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
5045  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
5046  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
5047  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
5048  FROM
5049   OKC_PRICE_ATT_VALUES okcPAV
5050  ,OKC_K_LINES_B_TEMP okcBT
5051   WHERE okcPAV.CLE_ID = okcBT.ORIG_SYSTEM_ID1
5052   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
5053 
5054 
5055 --------------------------------------------------------------------------
5056 --Cursor used during Component Copy to copy rows only for Header
5057 --------------------------------------------------------------------------
5058  CURSOR GetOkcPAVPartial_H IS
5059  SELECT
5060   okcPAV.ID AS okcPAV_OldID
5061  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
5062  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
5063  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
5064  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
5065  ,okcH.ID AS okcPAV_NewChrID
5066  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
5067  ,NULL AS okcPAV_NewCleID
5068  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
5069  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
5070  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
5071  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
5072  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
5073  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
5074  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
5075  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
5076  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
5077  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
5078  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
5079  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
5080  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
5081  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
5082  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
5083  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
5084  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
5085  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
5086  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
5087  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
5088  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
5089  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
5090  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
5091  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
5092  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
5093  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
5094  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
5095  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
5096  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
5097  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
5098  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
5099  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
5100  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
5101  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
5102  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
5103  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
5104  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
5105  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
5106  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
5107  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
5108  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
5109  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
5110  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
5111  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
5112  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
5113  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
5114  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
5115  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
5116  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
5117  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
5118  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
5119  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
5120  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
5121  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
5122  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
5123  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
5124  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
5125  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
5126  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
5127  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
5128  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
5129  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
5130  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
5131  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
5132  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
5133  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
5134  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
5135  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
5136  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
5137  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
5138  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
5139  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
5140  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
5141  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
5142  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
5143  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
5144  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
5145  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
5146  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
5147  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
5148  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
5149  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
5150  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
5151  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
5152  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
5153  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
5154  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
5155  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
5156  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
5157  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
5158  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
5159  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
5160  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
5161  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
5162  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
5163  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
5164  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
5165  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
5166  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
5167  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
5168  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
5169  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
5170  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
5171  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
5172  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
5173  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
5174  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
5175  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
5176  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
5177  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
5178  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
5179  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
5180  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
5181  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
5182  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
5183  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
5184  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
5185  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
5186  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
5187  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
5188  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
5189  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
5190  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
5191  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
5192  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
5193  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
5194  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
5195  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
5196  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
5197  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
5198  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
5199  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
5200  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
5201  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
5202  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
5203  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
5204  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
5205  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
5206  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
5207  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
5208  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
5209  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
5210  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
5211  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
5212  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
5213  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
5214  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
5215  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
5216  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
5217  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
5218  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
5219  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
5220  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
5221  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
5222  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
5223  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
5224  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
5225  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
5226  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
5227  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
5228  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
5229  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
5230  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
5231  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
5232  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
5233  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
5234  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
5235  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
5236  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
5237  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
5238  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
5239  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
5240  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
5241  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
5242  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
5243  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
5244  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
5245  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
5246  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
5247  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
5248  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
5249  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
5250  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
5251  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
5252  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
5253  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
5254  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
5255  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
5256  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
5257  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
5258  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
5259  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
5260  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
5261  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
5262  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
5263  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
5264  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
5265  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
5266  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
5267  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
5268  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
5269  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
5270  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
5271  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
5272  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
5273  FROM
5274   OKC_PRICE_ATT_VALUES okcPAV
5275  ,OKC_K_HEADERS_B okcH
5276   WHERE okcPAV.CHR_ID = okcH.ORIG_SYSTEM_ID1
5277   and okcH.ID = P_To_Chr_ID
5278   and okcPAV.CLE_ID is NULL
5279   and okcPAV.CHR_ID = P_From_Chr_ID;
5280 
5281 
5282 
5283 --------------------------------------------------------------------------
5284 --Cursor used during Component Copy to copy rows only for Lines
5285 --------------------------------------------------------------------------
5286   CURSOR GetOkcPAVPartial_L IS
5287   SELECT
5288   okcPAV.ID AS okcPAV_OldID
5289  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
5290  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
5291  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
5292  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
5293  ,to_number(decode(okcPAV.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPAV_NewChrID
5294  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
5295  ,okcBT.ID AS okcPAV_NewCleID
5296  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
5297  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
5298  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
5299  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
5300  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
5301  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
5302  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
5303  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
5304  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
5305  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
5306  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
5307  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
5308  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
5309  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
5310  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
5311  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
5312  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
5313  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
5314  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
5315  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
5316  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
5317  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
5318  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
5319  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
5320  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
5321  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
5322  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
5323  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
5324  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
5325  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
5326  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
5327  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
5328  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
5329  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
5330  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
5331  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
5332  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
5333  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
5334  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
5335  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
5336  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
5337  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
5338  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
5339  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
5340  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
5341  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
5342  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
5343  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
5344  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
5345  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
5346  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
5347  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
5348  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
5349  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
5350  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
5351  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
5352  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
5353  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
5354  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
5355  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
5356  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
5357  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
5358  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
5359  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
5360  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
5361  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
5362  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
5363  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
5364  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
5365  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
5366  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
5367  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
5368  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
5369  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
5370  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
5371  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
5372  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
5373  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
5374  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
5375  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
5376  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
5377  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
5378  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
5379  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
5380  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
5381  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
5382  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
5383  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
5384  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
5385  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
5386  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
5387  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
5388  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
5389  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
5390  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
5391  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
5392  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
5393  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
5394  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
5395  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
5396  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
5397  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
5398  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
5399  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
5400  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
5401  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
5402  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
5403  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
5404  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
5405  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
5406  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
5407  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
5408  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
5409  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
5410  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
5411  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
5412  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
5413  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
5414  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
5415  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
5416  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
5417  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
5418  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
5419  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
5420  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
5421  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
5422  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
5423  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
5424  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
5425  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
5426  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
5427  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
5428  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
5429  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
5430  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
5431  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
5432  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
5433  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
5434  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
5435  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
5436  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
5437  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
5438  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
5439  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
5440  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
5441  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
5442  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
5443  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
5444  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
5445  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
5446  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
5447  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
5448  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
5449  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
5450  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
5451  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
5452  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
5453  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
5454  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
5455  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
5456  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
5457  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
5458  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
5459  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
5460  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
5461  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
5462  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
5463  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
5464  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
5465  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
5466  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
5467  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
5468  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
5469  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
5470  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
5471  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
5472  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
5473  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
5474  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
5475  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
5476  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
5477  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
5478  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
5479  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
5480  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
5481  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
5482  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
5483  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
5484  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
5485  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
5486  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
5487  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
5488  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
5489  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
5490  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
5491  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
5492  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
5493  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
5494  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
5495  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
5496  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
5497  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
5498  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
5499  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
5500  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
5501  FROM
5502   OKC_PRICE_ATT_VALUES okcPAV
5503  ,OKC_K_LINES_B_TEMP okcBT
5504   WHERE okcPAV.CLE_ID = okcBT.ORIG_SYSTEM_ID1
5505   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
5506 
5507  Begin
5508   x_return_status := l_return_status;
5509 
5510  IF (P_Partial_Copy_YN = 'N') THEN
5511   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5512          FND_LOG.string(FND_LOG.level_statement
5513                         ,l_module_name
5514                         ,'OPENing GetOkcPAVFull'
5515                          );
5516   END IF;
5517 
5518   OPEN GetOkcPAVFull;
5519  ELSIF (P_Partial_Copy_YN = 'Y') THEN
5520   IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
5521     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5522          FND_LOG.string(FND_LOG.level_statement
5523                         ,l_module_name
5524                         ,'OPENing GetOkcPAVPartial_H'
5525                          );
5526     END IF;
5527     OPEN GetOkcPAVPartial_H;
5528   ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) THEN
5529     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5530          FND_LOG.string(FND_LOG.level_statement
5531                         ,l_module_name
5532                         ,'OPENing GetOkcPAVPartial_HNL'
5533                          );
5534     END IF;
5535     OPEN GetOkcPAVPartial_HNL;
5536   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) THEN
5537     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5538          FND_LOG.string(FND_LOG.level_statement
5539                         ,l_module_name
5540                         ,'OPENing GetOkcPAVPartial_L'
5541                          );
5542     END IF;
5543     OPEN GetOkcPAVPartial_L;
5544   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
5545     RETURN;
5546   END IF;
5547 
5548  END IF;
5549 
5550  LOOP
5551  IF (P_Partial_Copy_YN = 'N') then
5552     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5553          FND_LOG.string(FND_LOG.level_statement
5554                         ,l_module_name
5555                         ,'FETCHing GetOkcPAVFull'
5556                          );
5557     END IF;
5558 
5559   FETCH GetOkcPAVFull BULK COLLECT INTO
5560   OkcPAVRecTab.OkcPAV_OldID
5561  ,OkcPAVRecTab.OkcPAV_NewID
5562  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
5563  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
5564  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
5565  ,OkcPAVRecTab.OkcPAV_NewChrID
5566  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
5567  ,OkcPAVRecTab.OkcPAV_NewCleID
5568  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
5569  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
5570  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
5571  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
5572  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
5573  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
5574  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
5575  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
5576  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
5577  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
5578  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
5579  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
5580  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
5581  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
5582  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
5583  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
5584  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
5585  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
5586  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
5587  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
5588  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
5589  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
5590  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
5591  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
5592  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
5593  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
5594  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
5595  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
5596  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
5597  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
5598  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
5599  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
5600  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
5601  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
5602  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
5603  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
5604  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
5605  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
5606  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
5607  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
5608  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
5609  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
5610  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
5611  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
5612  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
5613  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
5614  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
5615  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
5616  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
5617  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
5618  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
5619  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
5620  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
5621  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
5622  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
5623  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
5624  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
5625  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
5626  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
5627  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
5628  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
5629  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
5630  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
5631  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
5632  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
5633  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
5634  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
5635  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
5636  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
5637  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
5638  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
5639  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
5640  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
5641  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
5642  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
5643  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
5644  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
5645  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
5646  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
5647  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
5648  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
5649  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
5650  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
5651  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
5652  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
5653  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
5654  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
5655  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
5656  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
5657  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
5658  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
5659  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
5660  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
5661  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
5662  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
5663  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
5664  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
5665  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
5666  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
5667  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
5668  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
5669  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
5670  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
5671  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
5672  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
5673  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
5674  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
5675  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
5676  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
5677  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
5678  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
5679  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
5680  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
5681  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
5682  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
5683  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
5684  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
5685  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
5686  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
5687  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
5688  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
5689  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
5690  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
5691  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
5692  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
5693  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
5694  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
5695  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
5696  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
5697  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
5698  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
5699  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
5700  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
5701  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
5702  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
5703  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
5704  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
5705  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
5706  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
5707  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
5708  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
5709  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
5710  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
5711  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
5712  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
5713  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
5714  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
5715  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
5716  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
5717  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
5718  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
5719  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
5720  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
5721  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
5722  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
5723  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
5724  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
5725  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
5726  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
5727  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
5728  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
5729  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
5730  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
5731  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
5732  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
5733  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
5734  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
5735  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
5736  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
5737  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
5738  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
5739  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
5740  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
5741  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
5742  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
5743  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
5744  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
5745  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
5746  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
5747  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
5748  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
5749  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
5750  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
5751  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
5752  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
5753  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
5754  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
5755  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
5756  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
5757  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
5758  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
5759  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
5760  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
5761  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
5762  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
5763  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
5764  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
5765  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
5766  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
5767  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
5768  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
5769  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
5770  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
5771  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
5772  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
5773  LIMIT G_BULK_FETCH_LIMIT;
5774 
5775  ELSIF (P_Partial_Copy_YN = 'Y') THEN
5776   IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
5777     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5778          FND_LOG.string(FND_LOG.level_statement
5779                         ,l_module_name
5780                         ,'FETCHing GetOkcPAVPartial_H'
5781                          );
5782     END IF;
5783 
5784     FETCH GetOkcPAVPartial_H BULK COLLECT INTO
5785   OkcPAVRecTab.OkcPAV_OldID
5786  ,OkcPAVRecTab.OkcPAV_NewID
5787  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
5788  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
5789  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
5790  ,OkcPAVRecTab.OkcPAV_NewChrID
5791  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
5792  ,OkcPAVRecTab.OkcPAV_NewCleID
5793  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
5794  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
5795  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
5796  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
5797  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
5798  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
5799  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
5800  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
5801  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
5802  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
5803  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
5804  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
5805  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
5806  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
5807  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
5808  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
5809  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
5810  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
5811  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
5812  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
5813  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
5814  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
5815  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
5816  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
5817  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
5818  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
5819  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
5820  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
5821  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
5822  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
5823  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
5824  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
5825  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
5826  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
5827  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
5828  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
5829  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
5830  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
5831  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
5832  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
5833  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
5834  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
5835  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
5836  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
5837  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
5838  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
5839  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
5840  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
5841  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
5842  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
5843  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
5844  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
5845  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
5846  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
5847  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
5848  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
5849  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
5850  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
5851  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
5852  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
5853  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
5854  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
5855  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
5856  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
5857  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
5858  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
5859  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
5860  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
5861  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
5862  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
5863  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
5864  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
5865  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
5866  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
5867  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
5868  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
5869  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
5870  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
5871  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
5872  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
5873  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
5874  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
5875  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
5876  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
5877  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
5878  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
5879  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
5880  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
5881  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
5882  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
5883  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
5884  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
5885  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
5886  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
5887  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
5888  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
5889  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
5890  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
5891  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
5892  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
5893  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
5894  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
5895  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
5896  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
5897  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
5898  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
5899  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
5900  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
5901  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
5902  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
5903  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
5904  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
5905  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
5906  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
5907  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
5908  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
5909  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
5910  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
5911  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
5912  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
5913  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
5914  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
5915  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
5916  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
5917  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
5918  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
5919  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
5920  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
5921  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
5922  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
5923  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
5924  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
5925  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
5926  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
5927  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
5928  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
5929  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
5930  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
5931  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
5932  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
5933  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
5934  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
5935  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
5936  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
5937  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
5938  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
5939  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
5940  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
5941  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
5942  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
5943  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
5944  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
5945  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
5946  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
5947  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
5948  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
5949  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
5950  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
5951  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
5952  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
5953  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
5954  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
5955  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
5956  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
5957  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
5958  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
5959  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
5960  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
5961  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
5962  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
5963  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
5964  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
5965  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
5966  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
5967  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
5968  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
5969  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
5970  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
5971  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
5972  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
5973  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
5974  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
5975  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
5976  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
5977  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
5978  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
5979  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
5980  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
5981  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
5982  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
5983  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
5984  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
5985  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
5986  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
5987  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
5988  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
5989  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
5990  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
5991  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
5992  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
5993  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
5994  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
5995  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
5996  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
5997  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
5998  LIMIT G_BULK_FETCH_LIMIT;
5999   ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) THEN
6000     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
6001          FND_LOG.string(FND_LOG.level_statement
6002                         ,l_module_name
6003                         ,'FETCHing GetOkcPAVPartial_HNL'
6004                          );
6005     END IF;
6006 
6007    FETCH GetOkcPAVPartial_HNL BULK COLLECT INTO
6008   OkcPAVRecTab.OkcPAV_OldID
6009  ,OkcPAVRecTab.OkcPAV_NewID
6010  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
6011  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
6012  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
6013  ,OkcPAVRecTab.OkcPAV_NewChrID
6014  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
6015  ,OkcPAVRecTab.OkcPAV_NewCleID
6016  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
6017  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
6018  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
6019  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
6020  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
6021  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
6022  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
6023  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
6024  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
6025  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
6026  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
6027  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
6028  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
6029  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
6030  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
6031  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
6032  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
6033  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
6034  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
6035  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
6036  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
6037  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
6038  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
6039  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
6040  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
6041  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
6042  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
6043  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
6044  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
6045  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
6046  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
6047  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
6048  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
6049  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
6050  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
6051  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
6052  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
6053  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
6054  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
6055  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
6056  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
6057  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
6058  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
6059  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
6060  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
6061  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
6062  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
6063  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
6064  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
6065  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
6066  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
6067  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
6068  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
6069  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
6070  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
6071  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
6072  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
6073  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
6074  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
6075  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
6076  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
6077  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
6078  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
6079  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
6080  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
6081  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
6082  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
6083  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
6084  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
6085  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
6086  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
6087  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
6088  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
6089  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
6090  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
6091  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
6092  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
6093  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
6094  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
6095  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
6096  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
6097  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
6098  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
6099  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
6100  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
6101  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
6102  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
6103  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
6104  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
6105  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
6106  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
6107  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
6108  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
6109  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
6110  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
6111  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
6112  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
6113  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
6114  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
6115  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
6116  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
6117  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
6118  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
6119  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
6120  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
6121  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
6122  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
6123  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
6124  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
6125  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
6126  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
6127  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
6128  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
6129  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
6130  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
6131  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
6132  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
6133  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
6134  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
6135  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
6136  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
6137  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
6138  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
6139  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
6140  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
6141  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
6142  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
6143  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
6144  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
6145  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
6146  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
6147  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
6148  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
6149  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
6150  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
6151  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
6152  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
6153  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
6154  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
6155  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
6156  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
6157  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
6158  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
6159  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
6160  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
6161  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
6162  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
6163  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
6164  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
6165  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
6166  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
6167  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
6168  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
6169  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
6170  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
6171  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
6172  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
6173  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
6174  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
6175  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
6176  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
6177  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
6178  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
6179  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
6180  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
6181  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
6182  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
6183  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
6184  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
6185  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
6186  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
6187  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
6188  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
6189  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
6190  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
6191  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
6192  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
6193  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
6194  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
6195  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
6196  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
6197  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
6198  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
6199  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
6200  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
6201  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
6202  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
6203  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
6204  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
6205  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
6206  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
6207  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
6208  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
6209  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
6210  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
6211  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
6212  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
6213  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
6214  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
6215  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
6216  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
6217  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
6218  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
6219  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
6220  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
6221  LIMIT G_BULK_FETCH_LIMIT;
6222   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) THEN
6223 
6224     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
6225          FND_LOG.string(FND_LOG.level_statement
6226                         ,l_module_name
6227                         ,'FETCHing GetOkcPAVPartial_L'
6228                          );
6229     END IF;
6230 
6231    FETCH GetOkcPAVPartial_L BULK COLLECT INTO
6232   OkcPAVRecTab.OkcPAV_OldID
6233  ,OkcPAVRecTab.OkcPAV_NewID
6234  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
6235  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
6236  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
6237  ,OkcPAVRecTab.OkcPAV_NewChrID
6238  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
6239  ,OkcPAVRecTab.OkcPAV_NewCleID
6240  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
6241  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
6242  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
6243  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
6244  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
6245  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
6246  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
6247  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
6248  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
6249  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
6250  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
6251  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
6252  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
6253  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
6254  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
6255  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
6256  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
6257  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
6258  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
6259  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
6260  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
6261  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
6262  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
6263  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
6264  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
6265  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
6266  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
6267  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
6268  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
6269  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
6270  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
6271  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
6272  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
6273  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
6274  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
6275  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
6276  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
6277  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
6278  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
6279  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
6280  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
6281  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
6282  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
6283  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
6284  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
6285  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
6286  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
6287  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
6288  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
6289  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
6290  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
6291  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
6292  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
6293  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
6294  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
6295  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
6296  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
6297  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
6298  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
6299  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
6300  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
6301  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
6302  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
6303  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
6304  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
6305  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
6306  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
6307  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
6308  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
6309  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
6310  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
6311  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
6312  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
6313  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
6314  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
6315  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
6316  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
6317  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
6318  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
6319  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
6320  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
6321  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
6322  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
6323  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
6324  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
6325  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
6326  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
6327  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
6328  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
6329  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
6330  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
6331  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
6332  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
6333  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
6334  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
6335  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
6336  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
6337  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
6338  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
6339  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
6340  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
6341  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
6342  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
6343  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
6344  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
6345  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
6346  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
6347  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
6348  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
6349  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
6350  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
6351  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
6352  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
6353  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
6354  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
6355  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
6356  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
6357  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
6358  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
6359  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
6360  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
6361  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
6362  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
6363  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
6364  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
6365  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
6366  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
6367  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
6368  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
6369  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
6370  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
6371  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
6372  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
6373  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
6374  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
6375  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
6376  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
6377  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
6378  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
6379  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
6380  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
6381  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
6382  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
6383  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
6384  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
6385  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
6386  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
6387  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
6388  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
6389  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
6390  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
6391  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
6392  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
6393  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
6394  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
6395  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
6396  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
6397  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
6398  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
6399  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
6400  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
6401  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
6402  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
6403  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
6404  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
6405  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
6406  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
6407  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
6408  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
6409  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
6410  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
6411  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
6412  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
6413  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
6414  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
6415  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
6416  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
6417  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
6418  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
6419  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
6420  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
6421  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
6422  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
6423  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
6424  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
6425  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
6426  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
6427  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
6428  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
6429  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
6430  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
6431  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
6432  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
6433  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
6434  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
6435  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
6436  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
6437  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
6438  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
6439  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
6440  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
6441  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
6442  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
6443  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
6444  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
6445  LIMIT G_BULK_FETCH_LIMIT;
6446   END IF;
6447  END IF;
6448 
6449  ---Bulk insert into okc_price_att_values---
6450  FORALL i in OkcPAVRecTab.OkcPAV_NewID.FIRST .. OkcPAVRecTab.OkcPAV_NewID.LAST
6451  INSERT INTO OKC_PRICE_ATT_VALUES(
6452  ID
6453  ,FLEX_TITLE
6454  ,PRICING_CONTEXT
6455  ,PRICING_ATTRIBUTE1
6456  ,CHR_ID
6457  ,PRICING_ATTRIBUTE2
6458  ,CLE_ID
6459  ,PRICING_ATTRIBUTE3
6460  ,PRICING_ATTRIBUTE4
6461  ,PRICING_ATTRIBUTE5
6462  ,PRICING_ATTRIBUTE6
6463  ,PRICING_ATTRIBUTE7
6464  ,PRICING_ATTRIBUTE8
6465  ,PRICING_ATTRIBUTE9
6466  ,PRICING_ATTRIBUTE10
6467  ,PRICING_ATTRIBUTE11
6468  ,PRICING_ATTRIBUTE12
6469  ,PRICING_ATTRIBUTE13
6470  ,PRICING_ATTRIBUTE14
6471  ,PRICING_ATTRIBUTE15
6472  ,PRICING_ATTRIBUTE16
6473  ,PRICING_ATTRIBUTE17
6474  ,PRICING_ATTRIBUTE18
6475  ,PRICING_ATTRIBUTE19
6476  ,PRICING_ATTRIBUTE20
6477  ,PRICING_ATTRIBUTE21
6478  ,PRICING_ATTRIBUTE22
6479  ,PRICING_ATTRIBUTE23
6480  ,PRICING_ATTRIBUTE24
6481  ,PRICING_ATTRIBUTE25
6482  ,PRICING_ATTRIBUTE26
6483  ,PRICING_ATTRIBUTE27
6484  ,PRICING_ATTRIBUTE28
6485  ,PRICING_ATTRIBUTE29
6486  ,PRICING_ATTRIBUTE30
6487  ,PRICING_ATTRIBUTE31
6488  ,PRICING_ATTRIBUTE32
6489  ,PRICING_ATTRIBUTE33
6490  ,PRICING_ATTRIBUTE34
6491  ,PRICING_ATTRIBUTE35
6492  ,PRICING_ATTRIBUTE36
6493  ,PRICING_ATTRIBUTE37
6494  ,PRICING_ATTRIBUTE38
6495  ,PRICING_ATTRIBUTE39
6496  ,PRICING_ATTRIBUTE40
6497  ,PRICING_ATTRIBUTE41
6498  ,PRICING_ATTRIBUTE42
6499  ,PRICING_ATTRIBUTE43
6500  ,PRICING_ATTRIBUTE44
6501  ,PRICING_ATTRIBUTE45
6502  ,PRICING_ATTRIBUTE46
6503  ,PRICING_ATTRIBUTE47
6504  ,PRICING_ATTRIBUTE48
6505  ,PRICING_ATTRIBUTE49
6506  ,PRICING_ATTRIBUTE50
6507  ,PRICING_ATTRIBUTE51
6508  ,PRICING_ATTRIBUTE52
6509  ,PRICING_ATTRIBUTE53
6510  ,PRICING_ATTRIBUTE54
6511  ,PRICING_ATTRIBUTE55
6512  ,PRICING_ATTRIBUTE56
6513  ,PRICING_ATTRIBUTE57
6514  ,PRICING_ATTRIBUTE58
6515  ,PRICING_ATTRIBUTE59
6516  ,PRICING_ATTRIBUTE60
6517  ,PRICING_ATTRIBUTE61
6518  ,PRICING_ATTRIBUTE62
6519  ,PRICING_ATTRIBUTE63
6520  ,PRICING_ATTRIBUTE64
6521  ,PRICING_ATTRIBUTE65
6522  ,PRICING_ATTRIBUTE66
6523  ,PRICING_ATTRIBUTE67
6524  ,PRICING_ATTRIBUTE68
6525  ,PRICING_ATTRIBUTE69
6526  ,PRICING_ATTRIBUTE70
6527  ,PRICING_ATTRIBUTE71
6528  ,PRICING_ATTRIBUTE72
6529  ,PRICING_ATTRIBUTE73
6530  ,PRICING_ATTRIBUTE74
6531  ,PRICING_ATTRIBUTE75
6532  ,PRICING_ATTRIBUTE76
6533  ,PRICING_ATTRIBUTE77
6534  ,PRICING_ATTRIBUTE78
6535  ,PRICING_ATTRIBUTE79
6536  ,PRICING_ATTRIBUTE80
6537  ,PRICING_ATTRIBUTE81
6538  ,PRICING_ATTRIBUTE82
6539  ,PRICING_ATTRIBUTE83
6540  ,PRICING_ATTRIBUTE84
6541  ,PRICING_ATTRIBUTE85
6542  ,PRICING_ATTRIBUTE86
6543  ,PRICING_ATTRIBUTE87
6544  ,PRICING_ATTRIBUTE88
6545  ,PRICING_ATTRIBUTE89
6546  ,PRICING_ATTRIBUTE90
6547  ,PRICING_ATTRIBUTE91
6548  ,PRICING_ATTRIBUTE92
6549  ,PRICING_ATTRIBUTE93
6550  ,PRICING_ATTRIBUTE94
6551  ,PRICING_ATTRIBUTE95
6552  ,PRICING_ATTRIBUTE96
6553  ,PRICING_ATTRIBUTE97
6554  ,PRICING_ATTRIBUTE98
6555  ,PRICING_ATTRIBUTE99
6556  ,PRICING_ATTRIBUTE100
6557  ,QUALIFIER_CONTEXT
6558  ,QUALIFIER_ATTRIBUTE1
6559  ,QUALIFIER_ATTRIBUTE2
6560  ,QUALIFIER_ATTRIBUTE3
6561  ,QUALIFIER_ATTRIBUTE4
6562  ,QUALIFIER_ATTRIBUTE5
6563  ,QUALIFIER_ATTRIBUTE6
6564  ,QUALIFIER_ATTRIBUTE7
6565  ,QUALIFIER_ATTRIBUTE8
6566  ,QUALIFIER_ATTRIBUTE9
6567  ,QUALIFIER_ATTRIBUTE10
6568  ,QUALIFIER_ATTRIBUTE11
6569  ,QUALIFIER_ATTRIBUTE12
6570  ,QUALIFIER_ATTRIBUTE13
6571  ,QUALIFIER_ATTRIBUTE14
6572  ,QUALIFIER_ATTRIBUTE15
6573  ,QUALIFIER_ATTRIBUTE16
6574  ,QUALIFIER_ATTRIBUTE17
6575  ,QUALIFIER_ATTRIBUTE18
6576  ,QUALIFIER_ATTRIBUTE19
6577  ,QUALIFIER_ATTRIBUTE20
6578  ,QUALIFIER_ATTRIBUTE21
6579  ,QUALIFIER_ATTRIBUTE22
6580  ,QUALIFIER_ATTRIBUTE23
6581  ,QUALIFIER_ATTRIBUTE24
6582  ,QUALIFIER_ATTRIBUTE25
6583  ,QUALIFIER_ATTRIBUTE26
6584  ,QUALIFIER_ATTRIBUTE27
6585  ,QUALIFIER_ATTRIBUTE28
6586  ,QUALIFIER_ATTRIBUTE29
6587  ,QUALIFIER_ATTRIBUTE30
6588  ,QUALIFIER_ATTRIBUTE31
6589  ,QUALIFIER_ATTRIBUTE32
6590  ,QUALIFIER_ATTRIBUTE33
6591  ,QUALIFIER_ATTRIBUTE34
6592  ,QUALIFIER_ATTRIBUTE35
6593  ,QUALIFIER_ATTRIBUTE36
6594  ,QUALIFIER_ATTRIBUTE37
6595  ,QUALIFIER_ATTRIBUTE38
6596  ,QUALIFIER_ATTRIBUTE39
6597  ,QUALIFIER_ATTRIBUTE40
6598  ,QUALIFIER_ATTRIBUTE41
6599  ,QUALIFIER_ATTRIBUTE42
6600  ,QUALIFIER_ATTRIBUTE43
6601  ,QUALIFIER_ATTRIBUTE44
6602  ,QUALIFIER_ATTRIBUTE45
6603  ,QUALIFIER_ATTRIBUTE46
6604  ,QUALIFIER_ATTRIBUTE47
6605  ,QUALIFIER_ATTRIBUTE48
6606  ,QUALIFIER_ATTRIBUTE49
6607  ,QUALIFIER_ATTRIBUTE50
6608  ,QUALIFIER_ATTRIBUTE51
6609  ,QUALIFIER_ATTRIBUTE52
6610  ,QUALIFIER_ATTRIBUTE53
6611  ,QUALIFIER_ATTRIBUTE54
6612  ,QUALIFIER_ATTRIBUTE55
6613  ,QUALIFIER_ATTRIBUTE56
6614  ,QUALIFIER_ATTRIBUTE57
6615  ,QUALIFIER_ATTRIBUTE58
6616  ,QUALIFIER_ATTRIBUTE59
6617  ,QUALIFIER_ATTRIBUTE60
6618  ,QUALIFIER_ATTRIBUTE61
6619  ,QUALIFIER_ATTRIBUTE62
6620  ,QUALIFIER_ATTRIBUTE63
6621  ,QUALIFIER_ATTRIBUTE64
6622  ,QUALIFIER_ATTRIBUTE65
6623  ,QUALIFIER_ATTRIBUTE66
6624  ,QUALIFIER_ATTRIBUTE67
6625  ,QUALIFIER_ATTRIBUTE68
6626  ,QUALIFIER_ATTRIBUTE69
6627  ,QUALIFIER_ATTRIBUTE70
6628  ,QUALIFIER_ATTRIBUTE71
6629  ,QUALIFIER_ATTRIBUTE72
6630  ,QUALIFIER_ATTRIBUTE73
6631  ,QUALIFIER_ATTRIBUTE74
6632  ,QUALIFIER_ATTRIBUTE75
6633  ,QUALIFIER_ATTRIBUTE76
6634  ,QUALIFIER_ATTRIBUTE77
6635  ,QUALIFIER_ATTRIBUTE78
6636  ,QUALIFIER_ATTRIBUTE79
6637  ,QUALIFIER_ATTRIBUTE80
6638  ,QUALIFIER_ATTRIBUTE81
6639  ,QUALIFIER_ATTRIBUTE82
6640  ,QUALIFIER_ATTRIBUTE83
6641  ,QUALIFIER_ATTRIBUTE84
6642  ,QUALIFIER_ATTRIBUTE85
6643  ,QUALIFIER_ATTRIBUTE86
6644  ,QUALIFIER_ATTRIBUTE87
6645  ,QUALIFIER_ATTRIBUTE88
6646  ,QUALIFIER_ATTRIBUTE89
6647  ,QUALIFIER_ATTRIBUTE90
6648  ,QUALIFIER_ATTRIBUTE91
6649  ,QUALIFIER_ATTRIBUTE92
6650  ,QUALIFIER_ATTRIBUTE93
6651  ,QUALIFIER_ATTRIBUTE94
6652  ,QUALIFIER_ATTRIBUTE95
6653  ,QUALIFIER_ATTRIBUTE96
6654  ,QUALIFIER_ATTRIBUTE97
6655  ,QUALIFIER_ATTRIBUTE98
6656  ,QUALIFIER_ATTRIBUTE99
6657  ,QUALIFIER_ATTRIBUTE100
6658  ,SECURITY_GROUP_ID
6659  ,PROGRAM_APPLICATION_ID
6660  ,PROGRAM_ID
6661  ,PROGRAM_UPDATE_DATE
6662  ,REQUEST_ID
6663  ,OBJECT_VERSION_NUMBER
6664  ,CREATED_BY
6665  ,CREATION_DATE
6666  ,LAST_UPDATED_BY
6667  ,LAST_UPDATE_DATE
6668  ,LAST_UPDATE_LOGIN
6669  )
6670  SELECT
6671   OkcPAVRecTab.OkcPAV_NewID(i)
6672  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE(i)
6673  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT(i)
6674  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1(i)
6675  ,OkcPAVRecTab.OkcPAV_NewChrID(i)
6676  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2(i)
6677  ,OkcPAVRecTab.OkcPAV_NewCleID(i)
6678  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3(i)
6679  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4(i)
6680  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5(i)
6681  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6(i)
6682  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7(i)
6683  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8(i)
6684  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9(i)
6685  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10(i)
6686  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11(i)
6687  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12(i)
6688  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13(i)
6689  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14(i)
6690  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15(i)
6691  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16(i)
6692  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17(i)
6693  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18(i)
6694  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19(i)
6695  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20(i)
6696  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21(i)
6697  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22(i)
6698  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23(i)
6699  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24(i)
6700  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25(i)
6701  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26(i)
6702  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27(i)
6703  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28(i)
6704  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29(i)
6705  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30(i)
6706  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31(i)
6707  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32(i)
6708  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33(i)
6709  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34(i)
6710  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35(i)
6711  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36(i)
6712  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37(i)
6713  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38(i)
6714  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39(i)
6715  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40(i)
6716  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41(i)
6717  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42(i)
6718  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43(i)
6719  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44(i)
6720  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45(i)
6721  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46(i)
6722  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47(i)
6723  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48(i)
6724  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49(i)
6725  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50(i)
6726  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51(i)
6727  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52(i)
6728  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53(i)
6729  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54(i)
6730  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55(i)
6731  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56(i)
6732  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57(i)
6733  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58(i)
6734  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59(i)
6735  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60(i)
6736  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61(i)
6737  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62(i)
6738  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63(i)
6739  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64(i)
6740  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65(i)
6741  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66(i)
6742  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67(i)
6743  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68(i)
6744  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69(i)
6745  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70(i)
6746  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71(i)
6747  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72(i)
6748  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73(i)
6749  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74(i)
6750  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75(i)
6751  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76(i)
6752  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77(i)
6753  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78(i)
6754  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79(i)
6755  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80(i)
6756  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81(i)
6757  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82(i)
6758  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83(i)
6759  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84(i)
6760  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85(i)
6761  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86(i)
6762  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87(i)
6763  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88(i)
6764  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89(i)
6765  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90(i)
6766  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91(i)
6767  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92(i)
6768  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93(i)
6769  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94(i)
6770  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95(i)
6771  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96(i)
6772  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97(i)
6773  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98(i)
6774  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99(i)
6775  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100(i)
6776  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT(i)
6777  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1(i)
6778  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2(i)
6779  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3(i)
6780  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4(i)
6781  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5(i)
6782  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6(i)
6783  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7(i)
6784  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8(i)
6785  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9(i)
6786  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10(i)
6787  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11(i)
6788  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12(i)
6789  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13(i)
6790  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14(i)
6791  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15(i)
6792  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16(i)
6793  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17(i)
6794  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18(i)
6795  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19(i)
6796  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20(i)
6797  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21(i)
6798  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22(i)
6799  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23(i)
6800  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24(i)
6801  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25(i)
6802  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26(i)
6803  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27(i)
6804  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28(i)
6805  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29(i)
6806  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30(i)
6807  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31(i)
6808  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32(i)
6809  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33(i)
6810  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34(i)
6811  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35(i)
6812  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36(i)
6813  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37(i)
6814  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38(i)
6815  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39(i)
6816  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40(i)
6817  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41(i)
6818  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42(i)
6819  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43(i)
6820  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44(i)
6821  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45(i)
6822  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46(i)
6823  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47(i)
6824  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48(i)
6825  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49(i)
6826  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50(i)
6827  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51(i)
6828  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52(i)
6829  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53(i)
6830  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54(i)
6831  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55(i)
6832  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56(i)
6833  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57(i)
6834  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58(i)
6835  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59(i)
6836  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60(i)
6837  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61(i)
6838  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62(i)
6839  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63(i)
6840  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64(i)
6841  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65(i)
6842  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66(i)
6843  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67(i)
6844  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68(i)
6845  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69(i)
6846  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70(i)
6847  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71(i)
6848  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72(i)
6849  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73(i)
6850  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74(i)
6851  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75(i)
6852  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76(i)
6853  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77(i)
6854  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78(i)
6855  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79(i)
6856  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80(i)
6857  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81(i)
6858  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82(i)
6859  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83(i)
6860  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84(i)
6861  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85(i)
6862  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86(i)
6863  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87(i)
6864  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88(i)
6865  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89(i)
6866  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90(i)
6867  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91(i)
6868  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92(i)
6869  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93(i)
6870  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94(i)
6871  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95(i)
6872  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96(i)
6873  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97(i)
6874  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98(i)
6875  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99(i)
6876  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100(i)
6877  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID(i)
6878  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID(i)
6879  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID(i)
6880  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE(i)
6881  ,OkcPAVRecTab.OkcPAV_REQUEST_ID(i)
6882  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER(i)
6883  ,FND_GLOBAL.USER_ID
6884  ,SYSDATE
6885  ,FND_GLOBAL.USER_ID
6886  ,SYSDATE
6887  ,FND_GLOBAL.LOGIN_ID
6888  from
6889  DUAL;
6890 
6891   If (P_Partial_Copy_YN = 'N') then
6892    EXIT WHEN GetOkcPAVFull%NOTFOUND;
6893   End If;
6894 
6895   IF (P_Partial_Copy_YN = 'N') THEN
6896    EXIT WHEN GetOkcPAVFull%NOTFOUND;
6897   ELSIF (P_Partial_Copy_YN = 'Y') THEN
6898    IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
6899      EXIT WHEN GetOkcPAVPartial_H%NOTFOUND;
6900    ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) THEN
6901      EXIT WHEN GetOkcPAVPartial_HNL%NOTFOUND;
6902    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) THEN
6903      EXIT WHEN GetOkcPAVPartial_L%NOTFOUND;
6904    END IF;
6905   END IF;
6906 
6907  END LOOP;
6908 
6909 
6910   IF GetOkcPAVFull%ISOPEN THEN
6911     CLOSE GetOkcPAVFull;
6912   ELSIF GetOkcPAVPartial_HNL%ISOPEN THEN
6913     CLOSE GetOkcPAVPartial_HNL;
6914   ELSIF GetOkcPAVPartial_H%ISOPEN THEN
6915     CLOSE GetOkcPAVPartial_H;
6916   ELSIF GetOkcPAVPartial_L%ISOPEN THEN
6917     CLOSE GetOkcPAVPartial_L;
6918   END IF;
6919 
6920     EXCEPTION
6921      WHEN OTHERS THEN
6922        IF GetOkcPAVFull%ISOPEN THEN
6923          CLOSE GetOkcPAVFull;
6924        ELSIF GetOkcPAVPartial_HNL%ISOPEN THEN
6925          CLOSE GetOkcPAVPartial_HNL;
6926        ELSIF GetOkcPAVPartial_H%ISOPEN THEN
6927          CLOSE GetOkcPAVPartial_H;
6928        ELSIF GetOkcPAVPartial_L%ISOPEN THEN
6929          CLOSE GetOkcPAVPartial_L;
6930        END IF;
6931           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6932           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
6933           RAISE;
6934 
6935  End copy_okc_price_att_values;
6936 
6937 --===================================================
6938 --  copy_okc_price_adjustments
6939 --  Parameters: P_From_Chr_ID : Header ID of source contract
6940 --   	      P_To_Chr_ID   : Header ID of target contract
6941 --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
6942 --				    or as part of component copy from UI (value = 'Y')
6943 --            P_Target_Contract_New_YN : Flag to indicate if copy process was copying to an existing contract (value = 'N')
6944 --                                       or if a new contract header was created as part of the copy process (value = 'Y'). This
6945 --                                       flag gets set to 'Y' just before the call to copy_contract_header procedure in
6946 --                                       copy_components
6947 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
6948 --               use cursor GetOkcPAFull
6949 --            If (P_Partial_Copy_YN = 'Y') then
6950 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
6951 --                Only rows for only Header , use cursor GetOkcPAPartial_H
6952 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
6953 --                Both rows for both Header and Lines need to be copied, use cursor GetOkcPAPartial_HNL
6954 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
6955 --                Only rows for chosen Lines are copied, use cursor GetOkcPAPartial_L
6956 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
6957 --                nothing needs to be copied, no copy needed
6958 --              End If
6959 --            End If
6960 
6961 --====================================================
6962  PROCEDURE copy_okc_price_adjustments(P_From_Chr_ID IN NUMBER
6963 			    ,P_To_Chr_ID   IN NUMBER
6964 			    ,P_Partial_Copy_YN IN VARCHAR2
6965 			    ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
6966                             ,P_Lines_Count IN NUMBER DEFAULT 0
6967 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
6968 
6969  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PRICE_ADJUSTMENTS';
6970  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
6971 
6972  l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
6973 
6974  CURSOR GetOkcPAFull IS
6975  SELECT
6976   okcPA.ID AS okcPA_OldID
6977  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
6978  ,okcPA.PAT_ID AS okcPA_PAT_ID
6979  ,okcH.ID AS okcPA_NewChrID
6980  ,NULL AS okcPA_NewCleID
6981  ,okcPA.BSL_ID AS okcPA_BSL_ID
6982  ,okcPA.BCL_ID AS okcPA_BCL_ID
6983  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
6984  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
6985  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
6986  ,okcPA.OPERAND AS okcPA_OPERAND
6987  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
6988  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
6989  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
6990  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
6991  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
6992  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
6993  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
6994  ,okcPA.CONTEXT AS okcPA_CONTEXT
6995  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
6996  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
6997  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
6998  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
6999  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7000  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7001  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7002  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7003  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7004  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7005  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7006  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7007  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7008  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7009  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7010  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7011  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7012  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7013  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7014  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7015  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7016  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7017  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7018  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7019  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7020  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7021  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7022  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7023  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7024  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7025  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7026  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7027  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7028  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7029  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7030  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7031  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7032  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7033  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7034  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7035  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7036  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7037  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7038  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7039  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7040  FROM
7041    OKC_PRICE_ADJUSTMENTS okcPA
7042   ,OKC_K_HEADERS_B okcH
7043    WHERE okcPA.CHR_ID = okcH.ORIG_SYSTEM_ID1
7044    and okcH.ID = P_To_Chr_ID
7045    and okcPA.CLE_ID is NULL
7046    and okcPA.CHR_ID = P_From_Chr_ID
7047  UNION
7048  SELECT
7049   okcPA.ID AS okcPA_OldID
7050  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7051  ,okcPA.PAT_ID AS okcPA_PAT_ID
7052  ,to_number(decode(okcPA.CHR_ID,NULL,NULL,okcB.DNZ_CHR_ID)) AS okcPA_NewChrID
7053  ,okcB.ID AS okcPA_NewCleID
7054  ,okcPA.BSL_ID AS okcPA_BSL_ID
7055  ,okcPA.BCL_ID AS okcPA_BCL_ID
7056  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7057  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7058  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7059  ,okcPA.OPERAND AS okcPA_OPERAND
7060  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7061  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7062  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7063  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7064  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7065  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7066  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7067  ,okcPA.CONTEXT AS okcPA_CONTEXT
7068  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7069  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7070  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7071  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7072  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7073  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7074  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7075  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7076  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7077  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7078  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7079  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7080  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7081  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7082  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7083  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7084  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7085  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7086  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7087  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7088  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7089  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7090  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7091  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7092  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7093  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7094  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7095  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7096  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7097  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7098  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7099  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7100  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7101  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7102  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7103  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7104  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7105  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7106  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7107  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7108  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7109  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7110  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7111  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7112  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7113  FROM
7114   OKC_PRICE_ADJUSTMENTS okcPA
7115  ,OKC_K_LINES_B okcB
7116  WHERE okcPA.CLE_ID = okcB.ORIG_SYSTEM_ID1
7117  AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
7118 
7119 -----------------------------------------------------------------------
7120 --Cursor to be used in component copy to copy rows for Header and Lines
7121 -----------------------------------------------------------------------
7122 
7123  CURSOR GetOkcPAPartial_HNL IS
7124  SELECT
7125   okcPA.ID AS okcPA_OldID
7126  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7127  ,okcPA.PAT_ID AS okcPA_PAT_ID
7128  ,okcH.ID AS okcPA_NewChrID
7129  ,NULL AS okcPA_NewCleID
7130  ,okcPA.BSL_ID AS okcPA_BSL_ID
7131  ,okcPA.BCL_ID AS okcPA_BCL_ID
7132  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7133  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7134  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7135  ,okcPA.OPERAND AS okcPA_OPERAND
7136  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7137  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7138  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7139  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7140  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7141  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7142  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7143  ,okcPA.CONTEXT AS okcPA_CONTEXT
7144  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7145  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7146  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7147  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7148  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7149  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7150  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7151  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7152  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7153  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7154  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7155  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7156  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7157  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7158  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7159  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7160  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7161  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7162  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7163  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7164  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7165  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7166  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7167  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7168  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7169  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7170  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7171  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7172  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7173  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7174  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7175  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7176  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7177  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7178  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7179  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7180  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7181  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7182  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7183  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7184  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7185  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7186  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7187  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7188  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7189  FROM
7190    OKC_PRICE_ADJUSTMENTS okcPA
7191   ,OKC_K_HEADERS_B okcH
7192    WHERE okcPA.CHR_ID = okcH.ORIG_SYSTEM_ID1
7193    and okcH.ID = P_To_Chr_ID
7194    and okcPA.CLE_ID is NULL
7195    and okcPA.CHR_ID = P_From_Chr_ID
7196  UNION
7197  SELECT
7198   okcPA.ID AS okcPA_OldID
7199  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7200  ,okcPA.PAT_ID AS okcPA_PAT_ID
7201  ,to_number(decode(okcPA.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPA_NewChrID
7202  ,okcBT.ID AS okcPA_NewCleID
7203  ,okcPA.BSL_ID AS okcPA_BSL_ID
7204  ,okcPA.BCL_ID AS okcPA_BCL_ID
7205  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7206  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7207  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7208  ,okcPA.OPERAND AS okcPA_OPERAND
7209  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7210  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7211  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7212  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7213  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7214  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7215  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7216  ,okcPA.CONTEXT AS okcPA_CONTEXT
7217  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7218  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7219  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7220  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7221  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7222  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7223  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7224  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7225  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7226  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7227  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7228  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7229  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7230  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7231  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7232  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7233  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7234  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7235  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7236  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7237  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7238  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7239  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7240  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7241  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7242  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7243  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7244  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7245  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7246  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7247  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7248  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7249  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7250  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7251  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7252  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7253  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7254  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7255  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7256  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7257  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7258  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7259  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7260  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7261  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7262  FROM
7263   OKC_PRICE_ADJUSTMENTS okcPA
7264  ,OKC_K_LINES_B_TEMP okcBT
7265  WHERE okcPA.CLE_ID = okcBT.ORIG_SYSTEM_ID1
7266  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
7267 
7268 ----------------------------------------------------------------------------------------
7269 --Cursor to be used in component copy to only copy rows for Header
7270 --ie when no lines have been chosen by user to copy but Contract Header is being created
7271 ----------------------------------------------------------------------------------------
7272  CURSOR GetOkcPAPartial_H IS
7273  SELECT
7274   okcPA.ID AS okcPA_OldID
7275  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7276  ,okcPA.PAT_ID AS okcPA_PAT_ID
7277  ,okcH.ID AS okcPA_NewChrID
7278  ,NULL AS okcPA_NewCleID
7279  ,okcPA.BSL_ID AS okcPA_BSL_ID
7280  ,okcPA.BCL_ID AS okcPA_BCL_ID
7281  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7282  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7283  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7284  ,okcPA.OPERAND AS okcPA_OPERAND
7285  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7286  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7287  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7288  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7289  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7290  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7291  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7292  ,okcPA.CONTEXT AS okcPA_CONTEXT
7293  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7294  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7295  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7296  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7297  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7298  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7299  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7300  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7301  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7302  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7303  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7304  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7305  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7306  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7307  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7308  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7309  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7310  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7311  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7312  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7313  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7314  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7315  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7316  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7317  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7318  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7319  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7320  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7321  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7322  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7323  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7324  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7325  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7326  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7327  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7328  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7329  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7330  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7331  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7332  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7333  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7334  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7335  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7336  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7337  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7338  FROM
7339    OKC_PRICE_ADJUSTMENTS okcPA
7340   ,OKC_K_HEADERS_B okcH
7341    WHERE okcPA.CHR_ID = okcH.ORIG_SYSTEM_ID1
7342    and okcH.ID = P_To_Chr_ID
7343    and okcPA.CLE_ID is NULL
7344    and okcPA.CHR_ID = P_From_Chr_ID;
7345 
7346 
7347 ----------------------------------------------------------------------------------------
7348 --Cursor to be used in component copy to only copy rows for Lines
7349 --ie for the lines chosen by user to copy and copying to an existing contract so
7350 --Header wasnt created.
7351 ----------------------------------------------------------------------------------------
7352  CURSOR GetOkcPAPartial_L IS
7353  SELECT
7354   okcPA.ID AS okcPA_OldID
7355  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7356  ,okcPA.PAT_ID AS okcPA_PAT_ID
7357  ,to_number(decode(okcPA.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPA_NewChrID
7358  ,okcBT.ID AS okcPA_NewCleID
7359  ,okcPA.BSL_ID AS okcPA_BSL_ID
7360  ,okcPA.BCL_ID AS okcPA_BCL_ID
7361  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7362  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7363  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7364  ,okcPA.OPERAND AS okcPA_OPERAND
7365  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7366  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7367  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7368  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7369  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7370  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7371  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7372  ,okcPA.CONTEXT AS okcPA_CONTEXT
7373  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7374  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7375  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7376  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7377  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7378  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7379  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7380  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7381  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7382  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7383  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7384  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7385  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7386  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7387  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7388  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7389  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7390  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7391  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7392  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7393  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7394  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7395  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7396  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7397  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7398  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7399  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7400  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7401  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7402  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7403  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7404  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7405  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7406  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7407  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7408  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7409  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7410  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7411  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7412  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7413  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7414  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7415  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7416  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7417  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7418  FROM
7419   OKC_PRICE_ADJUSTMENTS okcPA
7420  ,OKC_K_LINES_B_TEMP okcBT
7421  WHERE okcPA.CLE_ID = okcBT.ORIG_SYSTEM_ID1
7422  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
7423 
7424 
7425  Begin
7426   x_return_status := l_return_status;
7427 
7428  IF (P_Partial_Copy_YN = 'N') THEN
7429   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7430          FND_LOG.string(FND_LOG.level_statement
7431                         ,l_module_name
7432                         ,'OPENing GetOkcPAFull'
7433                          );
7434   END IF;
7435   OPEN GetOkcPAFull;
7436  ELSIF (P_Partial_Copy_YN = 'Y') THEN
7437    IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
7438      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7439          FND_LOG.string(FND_LOG.level_statement
7440                         ,l_module_name
7441                         ,'OPENing GetOkcPAPartial_H'
7442                          );
7443      END IF;
7444 
7445      OPEN GetOkcPAPartial_H;
7446    ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
7447      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7448          FND_LOG.string(FND_LOG.level_statement
7449                         ,l_module_name
7450                         ,'OPENing GetOkcPAPartial_HNL'
7451                          );
7452      END IF;
7453 
7454      OPEN GetOkcPAPartial_HNL;
7455    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
7456      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7457          FND_LOG.string(FND_LOG.level_statement
7458                         ,l_module_name
7459                         ,'OPENing GetOkcPAPartial_L'
7460                          );
7461      END IF;
7462 
7463      OPEN GetOkcPAPartial_L;
7464    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
7465      RETURN;
7466    END IF;
7467 
7468  END IF;
7469 
7470 
7471  LOOP
7472  IF (P_Partial_Copy_YN = 'N') THEN
7473   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7474          FND_LOG.string(FND_LOG.level_statement
7475                         ,l_module_name
7476                         ,'FETCHing from GetOkcPAFull'
7477                          );
7478   END IF;
7479 
7480   FETCH GetOkcPAFull BULK COLLECT INTO
7481   okcPARecTab.OkcPA_OldID
7482  ,okcPARecTab.OkcPA_NewID
7483  ,okcPARecTab.OkcPA_PAT_ID
7484  ,okcPARecTab.OkcPA_NewChrID
7485  ,okcPARecTab.OkcPA_NewCleID
7486  ,okcPARecTab.OkcPA_BSL_ID
7487  ,okcPARecTab.OkcPA_BCL_ID
7488  ,okcPARecTab.OkcPA_MODIFIED_FROM
7489  ,okcPARecTab.OkcPA_MODIFIED_TO
7490  ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7491  ,okcPARecTab.OkcPA_OPERAND
7492  ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7493  ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7494  ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7495  ,okcPARecTab.OkcPA_UPDATED_FLAG
7496  ,okcPARecTab.OkcPA_APPLIED_FLAG
7497  ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7498  ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7499  ,okcPARecTab.OkcPA_CONTEXT
7500  ,okcPARecTab.OkcPA_ATTRIBUTE1
7501  ,okcPARecTab.OkcPA_ATTRIBUTE2
7502  ,okcPARecTab.OkcPA_ATTRIBUTE3
7503  ,okcPARecTab.OkcPA_ATTRIBUTE4
7504  ,okcPARecTab.OkcPA_ATTRIBUTE5
7505  ,okcPARecTab.OkcPA_ATTRIBUTE6
7506  ,okcPARecTab.OkcPA_ATTRIBUTE7
7507  ,okcPARecTab.OkcPA_ATTRIBUTE8
7508  ,okcPARecTab.OkcPA_ATTRIBUTE9
7509  ,okcPARecTab.OkcPA_ATTRIBUTE10
7510  ,okcPARecTab.OkcPA_ATTRIBUTE11
7511  ,okcPARecTab.OkcPA_ATTRIBUTE12
7512  ,okcPARecTab.OkcPA_ATTRIBUTE13
7513  ,okcPARecTab.OkcPA_ATTRIBUTE14
7514  ,okcPARecTab.OkcPA_ATTRIBUTE15
7515  ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7516  ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7517  ,okcPARecTab.OkcPA_PROGRAM_ID
7518  ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7519  ,okcPARecTab.OkcPA_REQUEST_ID
7520  ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7521  ,okcPARecTab.OkcPA_LIST_HEADER_ID
7522  ,okcPARecTab.OkcPA_LIST_LINE_ID
7523  ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7524  ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7525  ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7526  ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7527  ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7528  ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7529  ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7530  ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7531  ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7532  ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7533  ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7534  ,okcPARecTab.OkcPA_LIST_LINE_NO
7535  ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7536  ,okcPARecTab.OkcPA_BENEFIT_QTY
7537  ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7538  ,okcPARecTab.OkcPA_EXPIRATION_DATE
7539  ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7540  ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7541  ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7542  ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7543  ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7544  ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7545 
7546  ELSIF (P_Partial_Copy_YN = 'Y') THEN
7547    IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
7548      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7549          FND_LOG.string(FND_LOG.level_statement
7550                         ,l_module_name
7551                         ,'FETCHing from GetOkcPAPartial_H'
7552                          );
7553      END IF;
7554 
7555      FETCH GetOkcPAPartial_H BULK COLLECT INTO
7556      okcPARecTab.OkcPA_OldID
7557     ,okcPARecTab.OkcPA_NewID
7558     ,okcPARecTab.OkcPA_PAT_ID
7559     ,okcPARecTab.OkcPA_NewChrID
7560     ,okcPARecTab.OkcPA_NewCleID
7561     ,okcPARecTab.OkcPA_BSL_ID
7562     ,okcPARecTab.OkcPA_BCL_ID
7563     ,okcPARecTab.OkcPA_MODIFIED_FROM
7564     ,okcPARecTab.OkcPA_MODIFIED_TO
7565     ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7566     ,okcPARecTab.OkcPA_OPERAND
7567     ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7568     ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7569     ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7570     ,okcPARecTab.OkcPA_UPDATED_FLAG
7571     ,okcPARecTab.OkcPA_APPLIED_FLAG
7572     ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7573     ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7574     ,okcPARecTab.OkcPA_CONTEXT
7575     ,okcPARecTab.OkcPA_ATTRIBUTE1
7576     ,okcPARecTab.OkcPA_ATTRIBUTE2
7577     ,okcPARecTab.OkcPA_ATTRIBUTE3
7578     ,okcPARecTab.OkcPA_ATTRIBUTE4
7579     ,okcPARecTab.OkcPA_ATTRIBUTE5
7580     ,okcPARecTab.OkcPA_ATTRIBUTE6
7581     ,okcPARecTab.OkcPA_ATTRIBUTE7
7582     ,okcPARecTab.OkcPA_ATTRIBUTE8
7583     ,okcPARecTab.OkcPA_ATTRIBUTE9
7584     ,okcPARecTab.OkcPA_ATTRIBUTE10
7585     ,okcPARecTab.OkcPA_ATTRIBUTE11
7586     ,okcPARecTab.OkcPA_ATTRIBUTE12
7587     ,okcPARecTab.OkcPA_ATTRIBUTE13
7588     ,okcPARecTab.OkcPA_ATTRIBUTE14
7589     ,okcPARecTab.OkcPA_ATTRIBUTE15
7590     ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7591     ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7592     ,okcPARecTab.OkcPA_PROGRAM_ID
7593     ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7594     ,okcPARecTab.OkcPA_REQUEST_ID
7595     ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7596     ,okcPARecTab.OkcPA_LIST_HEADER_ID
7597     ,okcPARecTab.OkcPA_LIST_LINE_ID
7598     ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7599     ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7600     ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7601     ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7602     ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7603     ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7604     ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7605     ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7606     ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7607     ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7608     ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7609     ,okcPARecTab.OkcPA_LIST_LINE_NO
7610     ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7611     ,okcPARecTab.OkcPA_BENEFIT_QTY
7612     ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7613     ,okcPARecTab.OkcPA_EXPIRATION_DATE
7614     ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7615     ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7616     ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7617     ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7618     ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7619     ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7620 
7621    ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
7622      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7623          FND_LOG.string(FND_LOG.level_statement
7624                         ,l_module_name
7625                         ,'FETCHing from GetOkcPAPartial_HNL'
7626                          );
7627      END IF;
7628 
7629      FETCH GetOkcPAPartial_HNL BULK COLLECT INTO
7630      okcPARecTab.OkcPA_OldID
7631     ,okcPARecTab.OkcPA_NewID
7632     ,okcPARecTab.OkcPA_PAT_ID
7633     ,okcPARecTab.OkcPA_NewChrID
7634     ,okcPARecTab.OkcPA_NewCleID
7635     ,okcPARecTab.OkcPA_BSL_ID
7636     ,okcPARecTab.OkcPA_BCL_ID
7637     ,okcPARecTab.OkcPA_MODIFIED_FROM
7638     ,okcPARecTab.OkcPA_MODIFIED_TO
7639     ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7640     ,okcPARecTab.OkcPA_OPERAND
7641     ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7642     ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7643     ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7644     ,okcPARecTab.OkcPA_UPDATED_FLAG
7645     ,okcPARecTab.OkcPA_APPLIED_FLAG
7646     ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7647     ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7648     ,okcPARecTab.OkcPA_CONTEXT
7649     ,okcPARecTab.OkcPA_ATTRIBUTE1
7650     ,okcPARecTab.OkcPA_ATTRIBUTE2
7651     ,okcPARecTab.OkcPA_ATTRIBUTE3
7652     ,okcPARecTab.OkcPA_ATTRIBUTE4
7653     ,okcPARecTab.OkcPA_ATTRIBUTE5
7654     ,okcPARecTab.OkcPA_ATTRIBUTE6
7655     ,okcPARecTab.OkcPA_ATTRIBUTE7
7656     ,okcPARecTab.OkcPA_ATTRIBUTE8
7657     ,okcPARecTab.OkcPA_ATTRIBUTE9
7658     ,okcPARecTab.OkcPA_ATTRIBUTE10
7659     ,okcPARecTab.OkcPA_ATTRIBUTE11
7660     ,okcPARecTab.OkcPA_ATTRIBUTE12
7661     ,okcPARecTab.OkcPA_ATTRIBUTE13
7662     ,okcPARecTab.OkcPA_ATTRIBUTE14
7663     ,okcPARecTab.OkcPA_ATTRIBUTE15
7664     ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7665     ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7666     ,okcPARecTab.OkcPA_PROGRAM_ID
7667     ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7668     ,okcPARecTab.OkcPA_REQUEST_ID
7669     ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7670     ,okcPARecTab.OkcPA_LIST_HEADER_ID
7671     ,okcPARecTab.OkcPA_LIST_LINE_ID
7672     ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7673     ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7674     ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7675     ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7676     ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7677     ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7678     ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7679     ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7680     ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7681     ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7682     ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7683     ,okcPARecTab.OkcPA_LIST_LINE_NO
7684     ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7685     ,okcPARecTab.OkcPA_BENEFIT_QTY
7686     ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7687     ,okcPARecTab.OkcPA_EXPIRATION_DATE
7688     ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7689     ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7690     ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7691     ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7692     ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7693     ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7694 
7695    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
7696      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7697          FND_LOG.string(FND_LOG.level_statement
7698                         ,l_module_name
7699                         ,'FETCHing GetOkcPAPartial_L'
7700                          );
7701      END IF;
7702 
7703      FETCH GetOkcPAPartial_L BULK COLLECT INTO
7704      okcPARecTab.OkcPA_OldID
7705     ,okcPARecTab.OkcPA_NewID
7706     ,okcPARecTab.OkcPA_PAT_ID
7707     ,okcPARecTab.OkcPA_NewChrID
7708     ,okcPARecTab.OkcPA_NewCleID
7709     ,okcPARecTab.OkcPA_BSL_ID
7710     ,okcPARecTab.OkcPA_BCL_ID
7711     ,okcPARecTab.OkcPA_MODIFIED_FROM
7712     ,okcPARecTab.OkcPA_MODIFIED_TO
7713     ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7714     ,okcPARecTab.OkcPA_OPERAND
7715     ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7716     ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7717     ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7718     ,okcPARecTab.OkcPA_UPDATED_FLAG
7719     ,okcPARecTab.OkcPA_APPLIED_FLAG
7720     ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7721     ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7722     ,okcPARecTab.OkcPA_CONTEXT
7723     ,okcPARecTab.OkcPA_ATTRIBUTE1
7724     ,okcPARecTab.OkcPA_ATTRIBUTE2
7725     ,okcPARecTab.OkcPA_ATTRIBUTE3
7726     ,okcPARecTab.OkcPA_ATTRIBUTE4
7727     ,okcPARecTab.OkcPA_ATTRIBUTE5
7728     ,okcPARecTab.OkcPA_ATTRIBUTE6
7729     ,okcPARecTab.OkcPA_ATTRIBUTE7
7730     ,okcPARecTab.OkcPA_ATTRIBUTE8
7731     ,okcPARecTab.OkcPA_ATTRIBUTE9
7732     ,okcPARecTab.OkcPA_ATTRIBUTE10
7733     ,okcPARecTab.OkcPA_ATTRIBUTE11
7734     ,okcPARecTab.OkcPA_ATTRIBUTE12
7735     ,okcPARecTab.OkcPA_ATTRIBUTE13
7736     ,okcPARecTab.OkcPA_ATTRIBUTE14
7737     ,okcPARecTab.OkcPA_ATTRIBUTE15
7738     ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7739     ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7740     ,okcPARecTab.OkcPA_PROGRAM_ID
7741     ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7742     ,okcPARecTab.OkcPA_REQUEST_ID
7743     ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7744     ,okcPARecTab.OkcPA_LIST_HEADER_ID
7745     ,okcPARecTab.OkcPA_LIST_LINE_ID
7746     ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7747     ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7748     ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7749     ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7750     ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7751     ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7752     ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7753     ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7754     ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7755     ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7756     ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7757     ,okcPARecTab.OkcPA_LIST_LINE_NO
7758     ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7759     ,okcPARecTab.OkcPA_BENEFIT_QTY
7760     ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7761     ,okcPARecTab.OkcPA_EXPIRATION_DATE
7762     ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7763     ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7764     ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7765     ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7766     ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7767     ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7768 
7769    END IF;
7770  END IF;
7771 
7772 
7773 
7774   FORALL i in okcPARecTab.OkcPA_NewID.FIRST .. okcPARecTab.OkcPA_NewID.LAST
7775   INSERT INTO OKC_PRICE_ADJUSTMENTS(
7776   ID
7777  ,PAT_ID
7778  ,CHR_ID
7779  ,CLE_ID
7780  ,BSL_ID
7781  ,BCL_ID
7782  ,MODIFIED_FROM
7783  ,MODIFIED_TO
7784  ,MODIFIER_MECHANISM_TYPE_CODE
7785  ,OPERAND
7786  ,ARITHMETIC_OPERATOR
7787  ,AUTOMATIC_FLAG
7788  ,UPDATE_ALLOWED
7789  ,UPDATED_FLAG
7790  ,APPLIED_FLAG
7791  ,ON_INVOICE_FLAG
7792  ,PRICING_PHASE_ID
7793  ,CONTEXT
7794  ,ATTRIBUTE1
7795  ,ATTRIBUTE2
7796  ,ATTRIBUTE3
7797  ,ATTRIBUTE4
7798  ,ATTRIBUTE5
7799  ,ATTRIBUTE6
7800  ,ATTRIBUTE7
7801  ,ATTRIBUTE8
7802  ,ATTRIBUTE9
7803  ,ATTRIBUTE10
7804  ,ATTRIBUTE11
7805  ,ATTRIBUTE12
7806  ,ATTRIBUTE13
7807  ,ATTRIBUTE14
7808  ,ATTRIBUTE15
7809  ,SECURITY_GROUP_ID
7810  ,PROGRAM_APPLICATION_ID
7811  ,PROGRAM_ID
7812  ,PROGRAM_UPDATE_DATE
7813  ,REQUEST_ID
7814  ,OBJECT_VERSION_NUMBER
7815  ,LIST_HEADER_ID
7816  ,LIST_LINE_ID
7817  ,LIST_LINE_TYPE_CODE
7818  ,CHANGE_REASON_CODE
7819  ,CHANGE_REASON_TEXT
7820  ,ESTIMATED_FLAG
7821  ,ADJUSTED_AMOUNT
7822  ,CHARGE_TYPE_CODE
7823  ,CHARGE_SUBTYPE_CODE
7824  ,RANGE_BREAK_QUANTITY
7825  ,ACCRUAL_CONVERSION_RATE
7826  ,PRICING_GROUP_SEQUENCE
7827  ,ACCRUAL_FLAG
7828  ,LIST_LINE_NO
7829  ,SOURCE_SYSTEM_CODE
7830  ,BENEFIT_QTY
7831  ,BENEFIT_UOM_CODE
7832  ,EXPIRATION_DATE
7833  ,MODIFIER_LEVEL_CODE
7834  ,PRICE_BREAK_TYPE_CODE
7835  ,SUBSTITUTION_ATTRIBUTE
7836  ,PRORATION_TYPE_CODE
7837  ,INCLUDE_ON_RETURNS_FLAG
7838  ,REBATE_TRANSACTION_TYPE_CODE
7839  ,CREATED_BY
7840  ,CREATION_DATE
7841  ,LAST_UPDATED_BY
7842  ,LAST_UPDATE_DATE
7843  ,LAST_UPDATE_LOGIN
7844  )
7845  SELECT
7846  okcPARecTab.OkcPA_NewID(i)
7847 ,okcPARecTab.OkcPA_PAT_ID(i)
7848 ,okcPARecTab.OkcPA_NewChrID(i)
7849 ,okcPARecTab.OkcPA_NewCleID(i)
7850 ,okcPARecTab.OkcPA_BSL_ID(i)
7851 ,okcPARecTab.OkcPA_BCL_ID(i)
7852 ,okcPARecTab.OkcPA_MODIFIED_FROM(i)
7853 ,okcPARecTab.OkcPA_MODIFIED_TO(i)
7854 ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE(i)
7855 ,okcPARecTab.OkcPA_OPERAND(i)
7856 ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR(i)
7857 ,okcPARecTab.OkcPA_AUTOMATIC_FLAG(i)
7858 ,okcPARecTab.OkcPA_UPDATE_ALLOWED(i)
7859 ,okcPARecTab.OkcPA_UPDATED_FLAG(i)
7860 ,okcPARecTab.OkcPA_APPLIED_FLAG(i)
7861 ,okcPARecTab.OkcPA_ON_INVOICE_FLAG(i)
7862 ,okcPARecTab.OkcPA_PRICING_PHASE_ID(i)
7863 ,okcPARecTab.OkcPA_CONTEXT(i)
7864 ,okcPARecTab.OkcPA_ATTRIBUTE1(i)
7865 ,okcPARecTab.OkcPA_ATTRIBUTE2(i)
7866 ,okcPARecTab.OkcPA_ATTRIBUTE3(i)
7867 ,okcPARecTab.OkcPA_ATTRIBUTE4(i)
7868 ,okcPARecTab.OkcPA_ATTRIBUTE5(i)
7869 ,okcPARecTab.OkcPA_ATTRIBUTE6(i)
7870 ,okcPARecTab.OkcPA_ATTRIBUTE7(i)
7871 ,okcPARecTab.OkcPA_ATTRIBUTE8(i)
7872 ,okcPARecTab.OkcPA_ATTRIBUTE9(i)
7873 ,okcPARecTab.OkcPA_ATTRIBUTE10(i)
7874 ,okcPARecTab.OkcPA_ATTRIBUTE11(i)
7875 ,okcPARecTab.OkcPA_ATTRIBUTE12(i)
7876 ,okcPARecTab.OkcPA_ATTRIBUTE13(i)
7877 ,okcPARecTab.OkcPA_ATTRIBUTE14(i)
7878 ,okcPARecTab.OkcPA_ATTRIBUTE15(i)
7879 ,okcPARecTab.OkcPA_SECURITY_GROUP_ID(i)
7880 ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID(i)
7881 ,okcPARecTab.OkcPA_PROGRAM_ID(i)
7882 ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE(i)
7883 ,okcPARecTab.OkcPA_REQUEST_ID(i)
7884 ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER(i)
7885 ,okcPARecTab.OkcPA_LIST_HEADER_ID(i)
7886 ,okcPARecTab.OkcPA_LIST_LINE_ID(i)
7887 ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE(i)
7888 ,okcPARecTab.OkcPA_CHANGE_REASON_CODE(i)
7889 ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT(i)
7890 ,okcPARecTab.OkcPA_ESTIMATED_FLAG(i)
7891 ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT(i)
7892 ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE(i)
7893 ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE(i)
7894 ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY(i)
7895 ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE(i)
7896 ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE(i)
7897 ,okcPARecTab.OkcPA_ACCRUAL_FLAG(i)
7898 ,okcPARecTab.OkcPA_LIST_LINE_NO(i)
7899 ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE(i)
7900 ,okcPARecTab.OkcPA_BENEFIT_QTY(i)
7901 ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE(i)
7902 ,okcPARecTab.OkcPA_EXPIRATION_DATE(i)
7903 ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE(i)
7904 ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE(i)
7905 ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE(i)
7906 ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE(i)
7907 ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG(i)
7908 ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE(i)
7909 ,FND_GLOBAL.USER_ID
7910 ,SYSDATE
7911 ,FND_GLOBAL.USER_ID
7912 ,SYSDATE
7913 ,FND_GLOBAL.LOGIN_ID
7914 FROM
7915 DUAL;
7916 
7917 
7918     IF (P_Partial_Copy_YN = 'N') THEN
7919       EXIT WHEN GetOkcPAFull%NOTFOUND;
7920     ELSIF (P_Partial_Copy_YN = 'Y') THEN
7921       IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
7922         EXIT WHEN GetOkcPAPartial_H%NOTFOUND;
7923       ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
7924         EXIT WHEN GetOkcPAPartial_HNL%NOTFOUND;
7925       ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
7926         EXIT WHEN GetOkcPAPartial_L%NOTFOUND;
7927       END IF;
7928     END IF;
7929 
7930  END LOOP;
7931 
7932   IF GetOkcPAFull%ISOPEN THEN
7933    CLOSE GetOkcPAFull;
7934   ELSIF GetOkcPAPartial_H%ISOPEN THEN
7935    CLOSE GetOkcPAPartial_H;
7936   ELSIF GetOkcPAPartial_HNL%ISOPEN THEN
7937    CLOSE GetOkcPAPartial_HNL;
7938   ELSIF GetOkcPAPartial_L%ISOPEN THEN
7939    CLOSE GetOkcPAPartial_L;
7940   END IF;
7941 
7942     EXCEPTION
7943         WHEN OTHERS THEN
7944           IF GetOkcPAFull%ISOPEN THEN
7945 	   CLOSE GetOkcPAFull;
7946 	  ELSIF GetOkcPAPartial_H%ISOPEN THEN
7947 	   CLOSE GetOkcPAPartial_H;
7948 	  ELSIF GetOkcPAPartial_HNL%ISOPEN THEN
7949 	   CLOSE GetOkcPAPartial_HNL;
7950 	  ELSIF GetOkcPAPartial_L%ISOPEN THEN
7951 	   CLOSE GetOkcPAPartial_L;
7952 	  END IF;
7953           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7954           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
7955           RAISE;
7956 
7957  End copy_okc_price_adjustments;
7958 
7959 
7960 --===================================================
7961 --  copy_okc_k_party_roles_b
7962 --  Parameters: P_From_Chr_ID : Header ID of source contract
7963 --   	      P_To_Chr_ID   : Header ID of target contract
7964  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
7965  --				    or as part of component copy from UI (value = 'Y')
7966 --	      P_Lines_Count : Count of rows in P_Lines_Tbl PLSQL Table
7967 --====================================================
7968  PROCEDURE copy_okc_k_party_roles_b(P_From_Chr_ID IN NUMBER
7969 			    ,P_To_Chr_ID   IN NUMBER
7970 			    ,P_Partial_Copy_YN IN VARCHAR2
7971 			    ,P_Lines_Count IN NUMBER DEFAULT 0
7972 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
7973 
7974   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PARTY_ROLES_B';
7975   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
7976 
7977   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
7978  CURSOR GetOkcPRBFull IS
7979  SELECT
7980   okcPRB.ID AS okcPRB_OldID
7981  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPRB_NewID
7982  ,okcH.ID AS okcPRB_NewChrID
7983  ,NULL AS okcPRB_NewCleID
7984  ,okcH.ID AS okcPRB_NewDnzChrID
7985  ,okcPRB.RLE_CODE AS okcPRB_RLE_CODE
7986  ,okcPRB.OBJECT1_ID1 AS okcPRB_OBJECT1_ID1
7987  ,okcPRB.OBJECT1_ID2 AS okcPRB_OBJECT1_ID2
7988  ,okcPRB.JTOT_OBJECT1_CODE AS okcPRB_JTOT_OBJECT1_CODE
7989  ,1 AS okcPRB_OBJECT_VERSION_NUMBER
7990  ,okcPRB.CODE AS okcPRB_CODE
7991  ,okcPRB.FACILITY AS okcPRB_FACILITY
7992  ,okcPRB.MINORITY_GROUP_LOOKUP_CODE AS okcPRB_MINOR_GRP_LOOKUP_CODE
7993  ,okcPRB.SMALL_BUSINESS_FLAG AS okcPRB_SMALL_BUSINESS_FLAG
7994  ,okcPRB.WOMEN_OWNED_FLAG AS okcPRB_WOMEN_OWNED_FLAG
7995  ,okcPRB.ATTRIBUTE_CATEGORY AS okcPRB_ATTRIBUTE_CATEGORY
7996  ,okcPRB.ATTRIBUTE1 AS okcPRB_ATTRIBUTE1
7997  ,okcPRB.ATTRIBUTE2 AS okcPRB_ATTRIBUTE2
7998  ,okcPRB.ATTRIBUTE3 AS okcPRB_ATTRIBUTE3
7999  ,okcPRB.ATTRIBUTE4 AS okcPRB_ATTRIBUTE4
8000  ,okcPRB.ATTRIBUTE5 AS okcPRB_ATTRIBUTE5
8001  ,okcPRB.ATTRIBUTE6 AS okcPRB_ATTRIBUTE6
8002  ,okcPRB.ATTRIBUTE7 AS okcPRB_ATTRIBUTE7
8003  ,okcPRB.ATTRIBUTE8 AS okcPRB_ATTRIBUTE8
8004  ,okcPRB.ATTRIBUTE9 AS okcPRB_ATTRIBUTE9
8005  ,okcPRB.ATTRIBUTE10 AS okcPRB_ATTRIBUTE10
8006  ,okcPRB.ATTRIBUTE11 AS okcPRB_ATTRIBUTE11
8007  ,okcPRB.ATTRIBUTE12 AS okcPRB_ATTRIBUTE12
8008  ,okcPRB.ATTRIBUTE13 AS okcPRB_ATTRIBUTE13
8009  ,okcPRB.ATTRIBUTE14 AS okcPRB_ATTRIBUTE14
8010  ,okcPRB.ATTRIBUTE15 AS okcPRB_ATTRIBUTE15
8011  ,okcPRB.SECURITY_GROUP_ID AS okcPRB_SECURITY_GROUP_ID
8012  ,okcPRB.CPL_ID AS okcPRB_CPL_ID
8013  ,okcPRB.PRIMARY_YN AS okcPRB_PRIMARY_YN
8014  ,okcPRB.BILL_TO_SITE_USE_ID AS okcPRB_BILL_TO_SITE_USE_ID
8015  ,okcPRB.CUST_ACCT_ID AS okcPRB_CUST_ACCT_ID
8016  ,okcPRB.ID AS okcPRB_ORIG_SYSTEM_ID1
8017  ,'COPY' AS okcPRB_ORIG_SYSTEM_REFERENCE1
8018  ,NULL AS okcPRB_ORIG_SYSTEM_SOURCE_CODE
8019  FROM
8020    OKC_K_PARTY_ROLES_B okcPRB
8021   ,OKC_K_HEADERS_B okcH
8022   where okcPRB.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
8023   and okcPRB.CLE_ID is NULL
8024   and okcH.ID = P_To_Chr_ID
8025   and okcPRB.DNZ_CHR_ID = P_From_Chr_ID
8026  UNION
8027  SELECT
8028   okcPRB.ID AS okcPRB_OldID
8029  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPRB_NewID
8030  ,NULL AS okcPRB_NewChrID
8031  ,okcB.ID AS okcPRB_NewCleID
8032  ,okcB.DNZ_CHR_ID AS okcPRB_NewDnzChrID
8033  ,okcPRB.RLE_CODE AS okcPRB_RLE_CODE
8034  ,okcPRB.OBJECT1_ID1 AS okcPRB_OBJECT1_ID1
8035  ,okcPRB.OBJECT1_ID2 AS okcPRB_OBJECT1_ID2
8036  ,okcPRB.JTOT_OBJECT1_CODE AS okcPRB_JTOT_OBJECT1_CODE
8037  ,1 AS okcPRB_OBJECT_VERSION_NUMBER
8038  ,okcPRB.CODE AS okcPRB_CODE
8039  ,okcPRB.FACILITY AS okcPRB_FACILITY
8040  ,okcPRB.MINORITY_GROUP_LOOKUP_CODE AS okcPRB_MINOR_GRP_LOOKUP_CODE
8041  ,okcPRB.SMALL_BUSINESS_FLAG AS okcPRB_SMALL_BUSINESS_FLAG
8042  ,okcPRB.WOMEN_OWNED_FLAG AS okcPRB_WOMEN_OWNED_FLAG
8043  ,okcPRB.ATTRIBUTE_CATEGORY AS okcPRB_ATTRIBUTE_CATEGORY
8044  ,okcPRB.ATTRIBUTE1 AS okcPRB_ATTRIBUTE1
8045  ,okcPRB.ATTRIBUTE2 AS okcPRB_ATTRIBUTE2
8046  ,okcPRB.ATTRIBUTE3 AS okcPRB_ATTRIBUTE3
8047  ,okcPRB.ATTRIBUTE4 AS okcPRB_ATTRIBUTE4
8048  ,okcPRB.ATTRIBUTE5 AS okcPRB_ATTRIBUTE5
8049  ,okcPRB.ATTRIBUTE6 AS okcPRB_ATTRIBUTE6
8050  ,okcPRB.ATTRIBUTE7 AS okcPRB_ATTRIBUTE7
8051  ,okcPRB.ATTRIBUTE8 AS okcPRB_ATTRIBUTE8
8052  ,okcPRB.ATTRIBUTE9 AS okcPRB_ATTRIBUTE9
8053  ,okcPRB.ATTRIBUTE10 AS okcPRB_ATTRIBUTE10
8054  ,okcPRB.ATTRIBUTE11 AS okcPRB_ATTRIBUTE11
8055  ,okcPRB.ATTRIBUTE12 AS okcPRB_ATTRIBUTE12
8056  ,okcPRB.ATTRIBUTE13 AS okcPRB_ATTRIBUTE13
8057  ,okcPRB.ATTRIBUTE14 AS okcPRB_ATTRIBUTE14
8058  ,okcPRB.ATTRIBUTE15 AS okcPRB_ATTRIBUTE15
8059  ,okcPRB.SECURITY_GROUP_ID AS okcPRB_SECURITY_GROUP_ID
8060  ,okcPRB.CPL_ID AS okcPRB_CPL_ID
8061  ,okcPRB.PRIMARY_YN AS okcPRB_PRIMARY_YN
8062  ,okcPRB.BILL_TO_SITE_USE_ID AS okcPRB_BILL_TO_SITE_USE_ID
8063  ,okcPRB.CUST_ACCT_ID AS okcPRB_CUST_ACCT_ID
8064  ,okcPRB.ID AS okcPRB_ORIG_SYSTEM_ID1
8065  ,'COPY' AS okcPRB_ORIG_SYSTEM_REFERENCE1
8066  ,NULL AS okcPRB_ORIG_SYSTEM_SOURCE_CODE
8067  FROM
8068    OKC_K_PARTY_ROLES_B okcPRB
8069   ,OKC_K_LINES_B okcB
8070  WHERE
8071    okcPRB.CLE_ID = okcB.ORIG_SYSTEM_ID1
8072    AND okcPRB.DNZ_CHR_ID = P_From_Chr_ID
8073    AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
8074 
8075 -----------------------------------------------------------------------------
8076 --Cursor to be used in component copy to copy rows for the lines being copied
8077 -----------------------------------------------------------------------------
8078  CURSOR GetOkcPRBPartial IS
8079  SELECT
8080   okcPRB.ID AS okcPRB_OldID
8081  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPRB_NewID
8082  ,NULL AS okcPRB_NewChrID
8083  ,okcBT.ID AS okcPRB_NewCleID
8084  ,okcBT.DNZ_CHR_ID AS okcPRB_NewDnzChrID
8085  ,okcPRB.RLE_CODE AS okcPRB_RLE_CODE
8086  ,okcPRB.OBJECT1_ID1 AS okcPRB_OBJECT1_ID1
8087  ,okcPRB.OBJECT1_ID2 AS okcPRB_OBJECT1_ID2
8088  ,okcPRB.JTOT_OBJECT1_CODE AS okcPRB_JTOT_OBJECT1_CODE
8089  ,1 AS okcPRB_OBJECT_VERSION_NUMBER
8090  ,okcPRB.CODE AS okcPRB_CODE
8091  ,okcPRB.FACILITY AS okcPRB_FACILITY
8092  ,okcPRB.MINORITY_GROUP_LOOKUP_CODE AS okcPRB_MINOR_GRP_LOOKUP_CODE
8093  ,okcPRB.SMALL_BUSINESS_FLAG AS okcPRB_SMALL_BUSINESS_FLAG
8094  ,okcPRB.WOMEN_OWNED_FLAG AS okcPRB_WOMEN_OWNED_FLAG
8095  ,okcPRB.ATTRIBUTE_CATEGORY AS okcPRB_ATTRIBUTE_CATEGORY
8096  ,okcPRB.ATTRIBUTE1 AS okcPRB_ATTRIBUTE1
8097  ,okcPRB.ATTRIBUTE2 AS okcPRB_ATTRIBUTE2
8098  ,okcPRB.ATTRIBUTE3 AS okcPRB_ATTRIBUTE3
8099  ,okcPRB.ATTRIBUTE4 AS okcPRB_ATTRIBUTE4
8100  ,okcPRB.ATTRIBUTE5 AS okcPRB_ATTRIBUTE5
8101  ,okcPRB.ATTRIBUTE6 AS okcPRB_ATTRIBUTE6
8102  ,okcPRB.ATTRIBUTE7 AS okcPRB_ATTRIBUTE7
8103  ,okcPRB.ATTRIBUTE8 AS okcPRB_ATTRIBUTE8
8104  ,okcPRB.ATTRIBUTE9 AS okcPRB_ATTRIBUTE9
8105  ,okcPRB.ATTRIBUTE10 AS okcPRB_ATTRIBUTE10
8106  ,okcPRB.ATTRIBUTE11 AS okcPRB_ATTRIBUTE11
8107  ,okcPRB.ATTRIBUTE12 AS okcPRB_ATTRIBUTE12
8108  ,okcPRB.ATTRIBUTE13 AS okcPRB_ATTRIBUTE13
8109  ,okcPRB.ATTRIBUTE14 AS okcPRB_ATTRIBUTE14
8110  ,okcPRB.ATTRIBUTE15 AS okcPRB_ATTRIBUTE15
8111  ,okcPRB.SECURITY_GROUP_ID AS okcPRB_SECURITY_GROUP_ID
8112  ,okcPRB.CPL_ID AS okcPRB_CPL_ID
8113  ,okcPRB.PRIMARY_YN AS okcPRB_PRIMARY_YN
8114  ,okcPRB.BILL_TO_SITE_USE_ID AS okcPRB_BILL_TO_SITE_USE_ID
8115  ,okcPRB.CUST_ACCT_ID AS okcPRB_CUST_ACCT_ID
8116  ,okcPRB.ID AS okcPRB_ORIG_SYSTEM_ID1
8117  ,'COPY' AS okcPRB_ORIG_SYSTEM_REFERENCE1
8118  ,NULL AS okcPRB_ORIG_SYSTEM_SOURCE_CODE
8119  FROM
8120    OKC_K_PARTY_ROLES_B okcPRB
8121   ,OKC_K_LINES_B_TEMP okcBT
8122  WHERE
8123    okcPRB.CLE_ID = okcBT.ORIG_SYSTEM_ID1
8124    AND okcPRB.CHR_ID IS NULL
8125    AND okcPRB.DNZ_CHR_ID = P_From_Chr_ID
8126    AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
8127 
8128 
8129  Begin
8130   x_return_status := l_return_status;
8131 
8132   IF (P_Partial_Copy_YN = 'N') THEN
8133     OPEN GetOkcPRBFull;
8134   ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0)  THEN
8135     OPEN GetOkcPRBPartial;
8136   END IF;
8137 
8138   LOOP
8139    IF (P_Partial_Copy_YN = 'N') THEN
8140     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8141          FND_LOG.string(FND_LOG.level_statement
8142                         ,l_module_name
8143                         ,'FETCHing from GetOkcPRBFull'
8144                          );
8145     END IF;
8146 
8147      FETCH GetOkcPRBFull BULK COLLECT INTO
8148      OkcPRBRecTab.OkcPRB_OldID
8149     ,OkcPRBRecTab.OkcPRB_NewID
8150     ,OkcPRBRecTab.OkcPRB_NewChrID
8151     ,OkcPRBRecTab.OkcPRB_NewCleID
8152     ,OkcPRBRecTab.OkcPRB_NewDnzChrID
8153     ,OkcPRBRecTab.OkcPRB_RLE_CODE
8154     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID1
8155     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID2
8156     ,OkcPRBRecTab.OkcPRB_JTOT_OBJECT1_CODE
8157     ,OkcPRBRecTab.OkcPRB_OBJECT_VERSION_NUMBER
8158     ,OkcPRBRecTab.OkcPRB_CODE
8159     ,OkcPRBRecTab.OkcPRB_FACILITY
8160     ,OkcPRBRecTab.OkcPRB_MINOR_GROUP_LOOKUP_CODE
8161     ,OkcPRBRecTab.OkcPRB_SMALL_BUSINESS_FLAG
8162     ,OkcPRBRecTab.OkcPRB_WOMEN_OWNED_FLAG
8163     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE_CATEGORY
8164     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE1
8165     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE2
8166     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE3
8167     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE4
8168     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE5
8169     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE6
8170     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE7
8171     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE8
8172     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE9
8173     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE10
8174     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE11
8175     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE12
8176     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE13
8177     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE14
8178     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE15
8179     ,OkcPRBRecTab.OkcPRB_SECURITY_GROUP_ID
8180     ,OkcPRBRecTab.OkcPRB_CPL_ID
8181     ,OkcPRBRecTab.OkcPRB_PRIMARY_YN
8182     ,OkcPRBRecTab.OkcPRB_BILL_TO_SITE_USE_ID
8183     ,OkcPRBRecTab.OkcPRB_CUST_ACCT_ID
8184     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_ID1
8185     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_REFERENCE1
8186     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_SOURCE_CODE LIMIT G_BULK_FETCH_LIMIT;
8187 
8188   ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) THEN
8189     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8190          FND_LOG.string(FND_LOG.level_statement
8191                         ,l_module_name
8192                         ,'FETCHing from GetOkcPRBPartial'
8193                          );
8194     END IF;
8195 
8196      FETCH GetOkcPRBPartial BULK COLLECT INTO
8197      OkcPRBRecTab.OkcPRB_OldID
8198     ,OkcPRBRecTab.OkcPRB_NewID
8199     ,OkcPRBRecTab.OkcPRB_NewChrID
8200     ,OkcPRBRecTab.OkcPRB_NewCleID
8201     ,OkcPRBRecTab.OkcPRB_NewDnzChrID
8202     ,OkcPRBRecTab.OkcPRB_RLE_CODE
8203     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID1
8204     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID2
8205     ,OkcPRBRecTab.OkcPRB_JTOT_OBJECT1_CODE
8206     ,OkcPRBRecTab.OkcPRB_OBJECT_VERSION_NUMBER
8207     ,OkcPRBRecTab.OkcPRB_CODE
8208     ,OkcPRBRecTab.OkcPRB_FACILITY
8209     ,OkcPRBRecTab.OkcPRB_MINOR_GROUP_LOOKUP_CODE
8210     ,OkcPRBRecTab.OkcPRB_SMALL_BUSINESS_FLAG
8211     ,OkcPRBRecTab.OkcPRB_WOMEN_OWNED_FLAG
8212     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE_CATEGORY
8213     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE1
8214     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE2
8215     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE3
8216     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE4
8217     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE5
8218     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE6
8219     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE7
8220     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE8
8221     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE9
8222     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE10
8223     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE11
8224     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE12
8225     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE13
8226     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE14
8227     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE15
8228     ,OkcPRBRecTab.OkcPRB_SECURITY_GROUP_ID
8229     ,OkcPRBRecTab.OkcPRB_CPL_ID
8230     ,OkcPRBRecTab.OkcPRB_PRIMARY_YN
8231     ,OkcPRBRecTab.OkcPRB_BILL_TO_SITE_USE_ID
8232     ,OkcPRBRecTab.OkcPRB_CUST_ACCT_ID
8233     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_ID1
8234     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_REFERENCE1
8235     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_SOURCE_CODE LIMIT G_BULK_FETCH_LIMIT;
8236    END IF;
8237 
8238    FORALL i in OkcPRBRecTab.OkcPRB_NewID.FIRST .. OkcPRBRecTab.OkcPRB_NewID.LAST
8239    INSERT INTO OKC_K_PARTY_ROLES_B(
8240       ID
8241      ,CHR_ID
8242      ,CLE_ID
8243      ,DNZ_CHR_ID
8244      ,RLE_CODE
8245      ,OBJECT1_ID1
8246      ,OBJECT1_ID2
8247      ,JTOT_OBJECT1_CODE
8248      ,OBJECT_VERSION_NUMBER
8249      ,CODE
8250      ,FACILITY
8251      ,MINORITY_GROUP_LOOKUP_CODE
8252      ,SMALL_BUSINESS_FLAG
8253      ,WOMEN_OWNED_FLAG
8254      ,ATTRIBUTE_CATEGORY
8255      ,ATTRIBUTE1
8256      ,ATTRIBUTE2
8257      ,ATTRIBUTE3
8258      ,ATTRIBUTE4
8259      ,ATTRIBUTE5
8260      ,ATTRIBUTE6
8261      ,ATTRIBUTE7
8262      ,ATTRIBUTE8
8263      ,ATTRIBUTE9
8264      ,ATTRIBUTE10
8265      ,ATTRIBUTE11
8266      ,ATTRIBUTE12
8267      ,ATTRIBUTE13
8268      ,ATTRIBUTE14
8269      ,ATTRIBUTE15
8270      ,SECURITY_GROUP_ID
8271      ,CPL_ID
8272      ,PRIMARY_YN
8273      ,BILL_TO_SITE_USE_ID
8274      ,CUST_ACCT_ID
8275      ,ORIG_SYSTEM_ID1
8276      ,ORIG_SYSTEM_REFERENCE1
8277      ,ORIG_SYSTEM_SOURCE_CODE
8278      ,CREATED_BY
8279      ,CREATION_DATE
8280      ,LAST_UPDATED_BY
8281      ,LAST_UPDATE_DATE
8282      ,LAST_UPDATE_LOGIN
8283    )
8284    SELECT
8285      OkcPRBRecTab.OkcPRB_NewID(i)
8286     ,OkcPRBRecTab.OkcPRB_NewChrID(i)
8287     ,OkcPRBRecTab.OkcPRB_NewCleID(i)
8288     ,OkcPRBRecTab.OkcPRB_NewDnzChrID(i)
8289     ,OkcPRBRecTab.OkcPRB_RLE_CODE(i)
8290     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID1(i)
8291     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID2(i)
8292     ,OkcPRBRecTab.OkcPRB_JTOT_OBJECT1_CODE(i)
8293     ,OkcPRBRecTab.OkcPRB_OBJECT_VERSION_NUMBER(i)
8294     ,OkcPRBRecTab.OkcPRB_CODE(i)
8295     ,OkcPRBRecTab.OkcPRB_FACILITY(i)
8296     ,OkcPRBRecTab.OkcPRB_MINOR_GROUP_LOOKUP_CODE(i)
8297     ,OkcPRBRecTab.OkcPRB_SMALL_BUSINESS_FLAG(i)
8298     ,OkcPRBRecTab.OkcPRB_WOMEN_OWNED_FLAG(i)
8299     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE_CATEGORY(i)
8300     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE1(i)
8301     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE2(i)
8302     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE3(i)
8303     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE4(i)
8304     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE5(i)
8305     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE6(i)
8306     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE7(i)
8307     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE8(i)
8308     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE9(i)
8309     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE10(i)
8310     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE11(i)
8311     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE12(i)
8312     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE13(i)
8313     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE14(i)
8314     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE15(i)
8315     ,OkcPRBRecTab.OkcPRB_SECURITY_GROUP_ID(i)
8316     ,OkcPRBRecTab.OkcPRB_CPL_ID(i)
8317     ,OkcPRBRecTab.OkcPRB_PRIMARY_YN(i)
8318     ,OkcPRBRecTab.OkcPRB_BILL_TO_SITE_USE_ID(i)
8319     ,OkcPRBRecTab.OkcPRB_CUST_ACCT_ID(i)
8320     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_ID1(i)
8321     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_REFERENCE1(i)
8322     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_SOURCE_CODE(i)
8323     ,FND_GLOBAL.USER_ID
8324     ,SYSDATE
8325     ,FND_GLOBAL.USER_ID
8326     ,SYSDATE
8327     ,FND_GLOBAL.LOGIN_ID
8328     FROM DUAL;
8329 
8330    IF (P_Partial_Copy_YN = 'N') THEN
8331     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8332          FND_LOG.string(FND_LOG.level_statement
8333                         ,l_module_name
8334                         ,'EXITing from GetOkcPRBFull'
8335                          );
8336     END IF;
8337 
8338     EXIT WHEN GetOkcPRBFull%NOTFOUND;
8339    ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) THEN
8340     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8341          FND_LOG.string(FND_LOG.level_statement
8342                         ,l_module_name
8343                         ,'EXITing from GetOkcPRBPartial'
8344                          );
8345     END IF;
8346 
8347     EXIT WHEN GetOkcPRBPartial%NOTFOUND;
8348    END IF;
8349 
8350   END LOOP;
8351      IF GetOkcPRBFull%ISOPEN THEN
8352        CLOSE GetOkcPRBFull;
8353      ELSIF GetOkcPRBPartial%ISOPEN THEN
8354        CLOSE GetOkcPRBPartial;
8355      END IF;
8356 
8357     EXCEPTION
8358         WHEN OTHERS THEN
8359         IF GetOkcPRBFull%ISOPEN THEN
8360          CLOSE GetOkcPRBFull;
8361         ELSIF GetOkcPRBPartial%ISOPEN THEN
8362          CLOSE GetOkcPRBPartial;
8363         END IF;
8364           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8365           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
8366           RAISE;
8367 
8368  End copy_okc_k_party_roles_b;
8369 
8370 ---------------------------------------------------------------------------------
8371 
8372 --==================================================
8373 -- create_vendor_if_missing : Creates a record in okc_k_party_roles_b for the target contract based on the org_id of the target contract
8374 -- Parameters: P_To_Chr_ID
8375 --==================================================
8376  PROCEDURE create_vendor_if_missing(P_From_Chr_ID IN NUMBER
8377 				   ,P_To_Chr_ID IN NUMBER
8378 				   ,p_api_version IN NUMBER
8379 				   ,p_init_msg_list IN VARCHAR2
8380 				   ,x_msg_count OUT NOCOPY NUMBER
8381 				   ,x_msg_data OUT NOCOPY VARCHAR2
8382 			           ,x_return_status OUT NOCOPY VARCHAR2) IS
8383 
8384  l_api_name        CONSTANT VARCHAR2(30) := 'CREATE_VENDOR_IF_MISSING';
8385  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8386 
8387  l_cplv_rec cplv_rec_type;
8388  x_cplv_rec cplv_rec_type;
8389  l_vendor_role_id NUMBER;
8390  l_create_vendor_yn VARCHAR2(1) := 'N';
8391  l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8392 
8393  CURSOR getSourceHdrVendorPartyRoleID IS
8394  SELECT id
8395  FROM okc_k_party_roles_b
8396  WHERE dnz_chr_id = P_From_Chr_ID
8397  AND cle_id is NULL
8398  AND jtot_object1_code = 'OKX_OPERUNIT';
8399  l_Source_Vendor_PRole_ID NUMBER;
8400 
8401  Begin
8402 
8403   Begin
8404   /*modified the where clause for bug6667810*/
8405    select ID
8406    into l_vendor_role_id
8407    from okc_k_party_roles_b
8408    where dnz_chr_id = P_To_Chr_ID /*where chr_id = P_To_Chr_ID*/
8409    and jtot_object1_code = 'OKX_OPERUNIT';
8410      EXCEPTION
8411        WHEN NO_DATA_FOUND THEN
8412          l_create_vendor_yn := 'Y';
8413   End;
8414 
8415   IF (l_create_vendor_yn = 'Y') then
8416 
8417    Begin
8418     OPEN getSourceHdrVendorPartyRoleID;
8419     FETCH getSourceHdrVendorPartyRoleID INTO l_Source_Vendor_PRole_ID;
8420     CLOSE getSourceHdrVendorPartyRoleID;
8421 
8422     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8423        FND_LOG.string(FND_LOG.level_statement
8424               ,l_module_name
8425               ,'After fetching from getSourceHdrVendorPartyRoleID :'||l_Source_Vendor_PRole_ID
8426                );
8427     END IF;
8428 
8429     x_return_status := get_cplv_rec(p_cpl_id  => l_Source_Vendor_PRole_ID
8430                                    ,x_cplv_rec => l_cplv_rec);
8431 
8432     l_cplv_rec.dnz_chr_id := P_To_Chr_ID;
8433     l_cplv_rec.chr_id := P_To_Chr_ID;
8434    End;
8435 
8436  --create a record in okc_k_party_roles_b--
8437    Begin
8438       OKC_CONTRACT_PARTY_PUB.create_k_party_role(
8439            p_api_version        => p_api_version,
8440            p_init_msg_list      => p_init_msg_list,
8441            x_return_status      => x_return_status,
8442            x_msg_count          => x_msg_count,
8443            x_msg_data           => x_msg_data,
8444            p_cplv_rec           => l_cplv_rec,
8445            x_cplv_rec           => x_cplv_rec);
8446 
8447           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8448            FND_LOG.string(FND_LOG.level_statement
8449                   ,l_module_name
8450                   ,'After call to OKC_CONTRACT_PARTY_PUB.create_k_party_role : x_return_status =' ||x_return_status
8451 		  ||'K-ID:'||x_cplv_rec.dnz_chr_id
8452 		  ||'Cpl ID:'||x_cplv_rec.id
8453                    );
8454           END IF;
8455      If (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
8456           FND_MSG_PUB.add_exc_msg(G_PKG_NAME
8457 				 , l_api_name||':OKC_CONTRACT_PARTY_PUB.create_k_party_role'
8458                                  , substr(x_msg_data,1,240));
8459 	  RETURN;
8460      End If;
8461 
8462 	EXCEPTION
8463          WHEN OTHERS THEN
8464                 IF getSourceHdrVendorPartyRoleID%ISOPEN THEN
8465                   CLOSE getSourceHdrVendorPartyRoleID;
8466                 END IF;
8467                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
8468                  FND_LOG.string(FND_LOG.level_unexpected
8469                         ,l_module_name||'.EXCEPTION'
8470                         ,'Exception in create_vendor_if_missing: In call to OKC_CONTRACT_PARTY_PUB.create_k_party_role, x_return_status ='
8471 			 ||x_return_status
8472                          ||'SQLERRM ='||SQLERRM
8473                          );
8474                 END IF;
8475 
8476 	  FND_MSG_PUB.add_exc_msg(G_PKG_NAME,l_api_name||':OKC_CONTRACT_PARTY_PUB.create_k_party_role', substr(SQLERRM,1,240));
8477           RAISE;
8478 
8479    End;
8480 
8481   END IF; --End If for l_create_vendor_yn check
8482 
8483 
8484  End create_vendor_if_missing;
8485 ---------------------------------------------------------------------------------
8486 --===================================================
8487 --  copy_okc_k_party_roles_tl
8488 --  Parameters: P_From_Chr_ID : Header ID of source contract
8489 --   	      P_To_Chr_ID   : Header ID of target contract
8490  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
8491  --				    or as part of component copy from UI (value = 'Y')
8492 --====================================================
8493  PROCEDURE copy_okc_k_party_roles_tl(P_From_Chr_ID IN NUMBER
8494 			    ,P_To_Chr_ID   IN NUMBER
8495 			    ,P_Partial_Copy_YN IN VARCHAR2
8496 			    ,P_Lines_Count IN NUMBER DEFAULT 0
8497 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
8498 
8499   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PARTY_ROLES_TL';
8500   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8501 
8502   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8503  CURSOR GetOkcPRTLFull IS
8504  SELECT
8505   okcPRTL.ID AS okcPRTL_OldID
8506  ,okcPRB.ID AS okcPRTL_NewID
8507  ,okcPRTL.LANGUAGE AS okcPRTL_LANGUAGE
8508  ,okcPRTL.SOURCE_LANG AS okcPRTL_SOURCE_LANG
8509  ,okcPRTL.SFWT_FLAG AS okcPRTL_SFWT_FLAG
8510  ,okcPRTL.COGNOMEN AS okcPRTL_COGNOMEN
8511  ,okcPRTL.ALIAS AS okcPRTL_ALIAS
8512  ,okcPRTL.SECURITY_GROUP_ID AS okcPRTL_SECURITY_GROUP_ID
8513   FROM
8514   OKC_K_PARTY_ROLES_TL okcPRTL
8515   ,OKC_K_PARTY_ROLES_B okcPRB
8516   where okcPRTL.ID = okcPRB.ORIG_SYSTEM_ID1
8517   AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID;
8518 
8519  CURSOR GetOkcPRTLPartial IS
8520  SELECT
8521   okcPRTL.ID AS okcPRTL_OldID
8522  ,okcPRB.ID AS okcPRTL_NewID
8523  ,okcPRTL.LANGUAGE AS okcPRTL_LANGUAGE
8524  ,okcPRTL.SOURCE_LANG AS okcPRTL_SOURCE_LANG
8525  ,okcPRTL.SFWT_FLAG AS okcPRTL_SFWT_FLAG
8526  ,okcPRTL.COGNOMEN AS okcPRTL_COGNOMEN
8527  ,okcPRTL.ALIAS AS okcPRTL_ALIAS
8528  ,okcPRTL.SECURITY_GROUP_ID AS okcPRTL_SECURITY_GROUP_ID
8529   FROM
8530    OKC_K_PARTY_ROLES_TL okcPRTL
8531   ,OKC_K_PARTY_ROLES_B okcPRB
8532   ,OKC_K_LINES_B_TEMP okcBT
8533   where okcPRTL.ID = okcPRB.ORIG_SYSTEM_ID1
8534   AND okcPRB.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
8535   AND okcPRB.CLE_ID = okcBT.ID
8536   AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID;
8537 
8538  Begin
8539  x_return_status := l_return_status;
8540  IF (P_Partial_Copy_YN = 'N') THEN
8541   OPEN GetOkcPRTLFull;
8542  ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) THEN
8543   OPEN GetOkcPRTLPartial;
8544  END IF;
8545 
8546  LOOP
8547 
8548   If (P_Partial_Copy_YN = 'N') then
8549     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8550          FND_LOG.string(FND_LOG.level_statement
8551                         ,l_module_name
8552                         ,'FETCHing from GetOkcPRTLFull'
8553                          );
8554     END IF;
8555 
8556    FETCH GetOkcPRTLFull BULK COLLECT INTO
8557    OkcPRTLRecTab.OkcPRTL_OldID
8558   ,OkcPRTLRecTab.OkcPRTL_NewID
8559   ,OkcPRTLRecTab.OkcPRTL_LANGUAGE
8560   ,OkcPRTLRecTab.OkcPRTL_SOURCE_LANG
8561   ,OkcPRTLRecTab.OkcPRTL_SFWT_FLAG
8562   ,OkcPRTLRecTab.OkcPRTL_COGNOMEN
8563   ,OkcPRTLRecTab.OkcPRTL_ALIAS
8564   ,OkcPRTLRecTab.OkcPRTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8565   Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8566     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8567          FND_LOG.string(FND_LOG.level_statement
8568                         ,l_module_name
8569                         ,'FETCHing from GetOkcPRTLPartial'
8570                          );
8571     END IF;
8572 
8573    FETCH GetOkcPRTLPartial BULK COLLECT INTO
8574    OkcPRTLRecTab.OkcPRTL_OldID
8575   ,OkcPRTLRecTab.OkcPRTL_NewID
8576   ,OkcPRTLRecTab.OkcPRTL_LANGUAGE
8577   ,OkcPRTLRecTab.OkcPRTL_SOURCE_LANG
8578   ,OkcPRTLRecTab.OkcPRTL_SFWT_FLAG
8579   ,OkcPRTLRecTab.OkcPRTL_COGNOMEN
8580   ,OkcPRTLRecTab.OkcPRTL_ALIAS
8581   ,OkcPRTLRecTab.OkcPRTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8582   End If;
8583 
8584  FORALL i IN OkcPRTLRecTab.OkcPRTL_NewID.FIRST .. OkcPRTLRecTab.OkcPRTL_NewID.LAST
8585  INSERT INTO OKC_K_PARTY_ROLES_TL(
8586   ID
8587  ,LANGUAGE
8588  ,SOURCE_LANG
8589  ,SFWT_FLAG
8590  ,COGNOMEN
8591  ,ALIAS
8592  ,SECURITY_GROUP_ID
8593  ,CREATED_BY
8594  ,CREATION_DATE
8595  ,LAST_UPDATED_BY
8596  ,LAST_UPDATE_DATE
8597  ,LAST_UPDATE_LOGIN
8598  )
8599  SELECT
8600   OkcPRTLRecTab.OkcPRTL_NewID(i)
8601  ,OkcPRTLRecTab.OkcPRTL_LANGUAGE(i)
8602  ,OkcPRTLRecTab.OkcPRTL_SOURCE_LANG(i)
8603  ,OkcPRTLRecTab.OkcPRTL_SFWT_FLAG(i)
8604  ,OkcPRTLRecTab.OkcPRTL_COGNOMEN(i)
8605  ,OkcPRTLRecTab.OkcPRTL_ALIAS(i)
8606  ,OkcPRTLRecTab.OkcPRTL_SECURITY_GROUP_ID(i)
8607  ,FND_GLOBAL.USER_ID
8608  ,SYSDATE
8609  ,FND_GLOBAL.USER_ID
8610  ,SYSDATE
8611  ,FND_GLOBAL.LOGIN_ID
8612  FROM DUAL;
8613 
8614   If (P_Partial_Copy_YN = 'N') then
8615    EXIT WHEN GetOkcPRTLFull%NOTFOUND;
8616   Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8617    EXIT WHEN GetOkcPRTLPartial%NOTFOUND;
8618   End If;
8619 
8620  END LOOP;
8621  If (GetOkcPRTLFull%ISOPEN) then
8622   CLOSE GetOkcPRTLFull;
8623  Elsif (GetOkcPRTLPartial%ISOPEN) then
8624   CLOSE GetOkcPRTLPartial;
8625  End If;
8626 
8627     EXCEPTION
8628         WHEN OTHERS THEN
8629         If GetOkcPRTLFull%ISOPEN then
8630           CLOSE GetOkcPRTLFull;
8631         Elsif GetOkcPRTLPartial%ISOPEN then
8632           CLOSE GetOkcPRTLPartial;
8633         End If;
8634           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8635           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
8636           RAISE;
8637 
8638 
8639  End copy_okc_k_party_roles_tl;
8640 
8641 
8642 --===================================================
8643 --  copy_okc_contacts
8644 --  Parameters: P_From_Chr_ID : Header ID of source contract
8645 --   	      P_To_Chr_ID   : Header ID of target contract
8646  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
8647  --				    or as part of component copy from UI (value = 'Y')
8648 --====================================================
8649  PROCEDURE copy_okc_contacts(P_From_Chr_ID IN NUMBER
8650 			    ,P_To_Chr_ID   IN NUMBER
8651 			    ,P_Partial_Copy_YN IN VARCHAR2
8652 			    ,P_Lines_Count IN NUMBER DEFAULT 0
8653 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
8654 
8655   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_CONTACTS';
8656   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8657 
8658   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8659  CURSOR GetOkcCFull IS
8660  SELECT
8661    okcC.ID AS okcC_OldID
8662  , To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcC_NewID
8663  , okcPRB.ID AS okcC_NewCplID
8664  , okcC.CRO_CODE AS okcC_CRO_CODE
8665  , okcPRB.DNZ_CHR_ID AS okcC_NewDnzChrID
8666  , okcC.OBJECT1_ID1 AS okcC_OBJECT1_ID1
8667  , okcC.OBJECT1_ID2 AS okcC_OBJECT1_ID2
8668  , okcC.JTOT_OBJECT1_CODE AS okcC_JTOT_OBJECT1_CODE
8669  , 1 AS okcC_OBJECT_VERSION_NUMBER
8670  , okcC.CONTACT_SEQUENCE AS okcC_CONTACT_SEQUENCE
8671  , okcC.ATTRIBUTE_CATEGORY AS okcC_ATTRIBUTE_CATEGORY
8672  , okcC.ATTRIBUTE1 AS okcC_ATTRIBUTE1
8673  , okcC.ATTRIBUTE2 AS okcC_ATTRIBUTE2
8674  , okcC.ATTRIBUTE3 AS okcC_ATTRIBUTE3
8675  , okcC.ATTRIBUTE4 AS okcC_ATTRIBUTE4
8676  , okcC.ATTRIBUTE5 AS okcC_ATTRIBUTE5
8677  , okcC.ATTRIBUTE6 AS okcC_ATTRIBUTE6
8678  , okcC.ATTRIBUTE7 AS okcC_ATTRIBUTE7
8679  , okcC.ATTRIBUTE8 AS okcC_ATTRIBUTE8
8680  , okcC.ATTRIBUTE9 AS okcC_ATTRIBUTE9
8681  , okcC.ATTRIBUTE10 AS okcC_ATTRIBUTE10
8682  , okcC.ATTRIBUTE11 AS okcC_ATTRIBUTE11
8683  , okcC.ATTRIBUTE12 AS okcC_ATTRIBUTE12
8684  , okcC.ATTRIBUTE13 AS okcC_ATTRIBUTE13
8685  , okcC.ATTRIBUTE14 AS okcC_ATTRIBUTE14
8686  , okcC.ATTRIBUTE15 AS okcC_ATTRIBUTE15
8687  , okcC.SECURITY_GROUP_ID AS okcC_SECURITY_GROUP_ID
8688  , okcC.START_DATE AS okcC_START_DATE
8689  , okcC.END_DATE AS okcC_END_DATE
8690  , okcC.PRIMARY_YN AS okcC_PRIMARY_YN
8691  , okcC.RESOURCE_CLASS AS okcC_RESOURCE_CLASS
8692  , okcC.SALES_GROUP_ID AS okcC_SALES_GROUP_ID
8693  FROM
8694    OKC_CONTACTS okcC
8695   ,OKC_K_PARTY_ROLES_B okcPRB
8696    WHERE okcC.CPL_ID = okcPRB.ORIG_SYSTEM_ID1
8697    AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID
8698    AND okcC.DNZ_CHR_ID = P_From_Chr_ID;
8699 
8700  CURSOR GetOkcCPartial IS
8701  SELECT
8702    okcC.ID AS okcC_OldID
8703  , To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcC_NewID
8704  , okcPRB.ID AS okcC_NewCplID
8705  , okcC.CRO_CODE AS okcC_CRO_CODE
8706  , okcPRB.DNZ_CHR_ID AS okcC_NewDnzChrID
8707  , okcC.OBJECT1_ID1 AS okcC_OBJECT1_ID1
8708  , okcC.OBJECT1_ID2 AS okcC_OBJECT1_ID2
8709  , okcC.JTOT_OBJECT1_CODE AS okcC_JTOT_OBJECT1_CODE
8710  , 1 AS okcC_OBJECT_VERSION_NUMBER
8711  , okcC.CONTACT_SEQUENCE AS okcC_CONTACT_SEQUENCE
8712  , okcC.ATTRIBUTE_CATEGORY AS okcC_ATTRIBUTE_CATEGORY
8713  , okcC.ATTRIBUTE1 AS okcC_ATTRIBUTE1
8714  , okcC.ATTRIBUTE2 AS okcC_ATTRIBUTE2
8715  , okcC.ATTRIBUTE3 AS okcC_ATTRIBUTE3
8716  , okcC.ATTRIBUTE4 AS okcC_ATTRIBUTE4
8717  , okcC.ATTRIBUTE5 AS okcC_ATTRIBUTE5
8718  , okcC.ATTRIBUTE6 AS okcC_ATTRIBUTE6
8719  , okcC.ATTRIBUTE7 AS okcC_ATTRIBUTE7
8720  , okcC.ATTRIBUTE8 AS okcC_ATTRIBUTE8
8721  , okcC.ATTRIBUTE9 AS okcC_ATTRIBUTE9
8722  , okcC.ATTRIBUTE10 AS okcC_ATTRIBUTE10
8723  , okcC.ATTRIBUTE11 AS okcC_ATTRIBUTE11
8724  , okcC.ATTRIBUTE12 AS okcC_ATTRIBUTE12
8725  , okcC.ATTRIBUTE13 AS okcC_ATTRIBUTE13
8726  , okcC.ATTRIBUTE14 AS okcC_ATTRIBUTE14
8727  , okcC.ATTRIBUTE15 AS okcC_ATTRIBUTE15
8728  , okcC.SECURITY_GROUP_ID AS okcC_SECURITY_GROUP_ID
8729  , okcC.START_DATE AS okcC_START_DATE
8730  , okcC.END_DATE AS okcC_END_DATE
8731  , okcC.PRIMARY_YN AS okcC_PRIMARY_YN
8732  , okcC.RESOURCE_CLASS AS okcC_RESOURCE_CLASS
8733  , okcC.SALES_GROUP_ID AS okcC_SALES_GROUP_ID
8734  FROM
8735    OKC_CONTACTS okcC
8736   ,OKC_K_PARTY_ROLES_B okcPRB
8737   ,OKC_K_LINES_B_TEMP okcBT
8738    WHERE okcC.CPL_ID = okcPRB.ORIG_SYSTEM_ID1
8739    AND okcPRB.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
8740    AND okcPRB.CLE_ID = okcBT.ID
8741    AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID
8742    AND okcPRB.CHR_ID IS NULL
8743    AND okcC.DNZ_CHR_ID = P_From_Chr_ID;
8744 
8745  Begin
8746   x_return_status := l_return_status;
8747   If (P_Partial_Copy_YN = 'N') then
8748     OPEN GetOkcCFull;
8749   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
8750     OPEN GetOkcCPartial;
8751   End If;
8752 
8753   LOOP
8754    If (P_Partial_Copy_YN = 'N') then
8755      FETCH GetOkcCFull BULK COLLECT INTO
8756           OkcCRecTab.OkcC_OldID
8757      	, OkcCRecTab.OkcC_NewID
8758      	, OkcCRecTab.OkcC_NewCplID
8759 	, OkcCRecTab.OkcC_CRO_CODE
8760 	, OkcCRecTab.OkcC_NewDnzChrID
8761 	, OkcCRecTab.OkcC_OBJECT1_ID1
8762 	, OkcCRecTab.OkcC_OBJECT1_ID2
8763 	, OkcCRecTab.OkcC_JTOT_OBJECT1_CODE
8764 	, OkcCRecTab.OkcC_OBJECT_VERSION_NUMBER
8765 	, OkcCRecTab.OkcC_CONTACT_SEQUENCE
8766 	, OkcCRecTab.OkcC_ATTRIBUTE_CATEGORY
8767 	, OkcCRecTab.OkcC_ATTRIBUTE1
8768 	, OkcCRecTab.OkcC_ATTRIBUTE2
8769 	, OkcCRecTab.OkcC_ATTRIBUTE3
8770 	, OkcCRecTab.OkcC_ATTRIBUTE4
8771 	, OkcCRecTab.OkcC_ATTRIBUTE5
8772 	, OkcCRecTab.OkcC_ATTRIBUTE6
8773 	, OkcCRecTab.OkcC_ATTRIBUTE7
8774 	, OkcCRecTab.OkcC_ATTRIBUTE8
8775 	, OkcCRecTab.OkcC_ATTRIBUTE9
8776 	, OkcCRecTab.OkcC_ATTRIBUTE10
8777 	, OkcCRecTab.OkcC_ATTRIBUTE11
8778 	, OkcCRecTab.OkcC_ATTRIBUTE12
8779 	, OkcCRecTab.OkcC_ATTRIBUTE13
8780 	, OkcCRecTab.OkcC_ATTRIBUTE14
8781 	, OkcCRecTab.OkcC_ATTRIBUTE15
8782 	, OkcCRecTab.OkcC_SECURITY_GROUP_ID
8783 	, OkcCRecTab.OkcC_START_DATE
8784 	, OkcCRecTab.OkcC_END_DATE
8785 	, OkcCRecTab.OkcC_PRIMARY_YN
8786 	, OkcCRecTab.OkcC_RESOURCE_CLASS
8787 	, OkcCRecTab.OkcC_SALES_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8788    Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8789      FETCH GetOkcCPartial BULK COLLECT INTO
8790           OkcCRecTab.OkcC_OldID
8791      	, OkcCRecTab.OkcC_NewID
8792      	, OkcCRecTab.OkcC_NewCplID
8793 	, OkcCRecTab.OkcC_CRO_CODE
8794 	, OkcCRecTab.OkcC_NewDnzChrID
8795 	, OkcCRecTab.OkcC_OBJECT1_ID1
8796 	, OkcCRecTab.OkcC_OBJECT1_ID2
8797 	, OkcCRecTab.OkcC_JTOT_OBJECT1_CODE
8798 	, OkcCRecTab.OkcC_OBJECT_VERSION_NUMBER
8799 	, OkcCRecTab.OkcC_CONTACT_SEQUENCE
8800 	, OkcCRecTab.OkcC_ATTRIBUTE_CATEGORY
8801 	, OkcCRecTab.OkcC_ATTRIBUTE1
8802 	, OkcCRecTab.OkcC_ATTRIBUTE2
8803 	, OkcCRecTab.OkcC_ATTRIBUTE3
8804 	, OkcCRecTab.OkcC_ATTRIBUTE4
8805 	, OkcCRecTab.OkcC_ATTRIBUTE5
8806 	, OkcCRecTab.OkcC_ATTRIBUTE6
8807 	, OkcCRecTab.OkcC_ATTRIBUTE7
8808 	, OkcCRecTab.OkcC_ATTRIBUTE8
8809 	, OkcCRecTab.OkcC_ATTRIBUTE9
8810 	, OkcCRecTab.OkcC_ATTRIBUTE10
8811 	, OkcCRecTab.OkcC_ATTRIBUTE11
8812 	, OkcCRecTab.OkcC_ATTRIBUTE12
8813 	, OkcCRecTab.OkcC_ATTRIBUTE13
8814 	, OkcCRecTab.OkcC_ATTRIBUTE14
8815 	, OkcCRecTab.OkcC_ATTRIBUTE15
8816 	, OkcCRecTab.OkcC_SECURITY_GROUP_ID
8817 	, OkcCRecTab.OkcC_START_DATE
8818 	, OkcCRecTab.OkcC_END_DATE
8819 	, OkcCRecTab.OkcC_PRIMARY_YN
8820 	, OkcCRecTab.OkcC_RESOURCE_CLASS
8821 	, OkcCRecTab.OkcC_SALES_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8822    End If;
8823 
8824 
8825    FORALL i IN OkcCRecTab.OkcC_NewID.FIRST .. OkcCRecTab.OkcC_NewID.LAST
8826    INSERT INTO OKC_CONTACTS(
8827      	  ID
8828 	, CPL_ID
8829 	, CRO_CODE
8830 	, DNZ_CHR_ID
8831 	, OBJECT1_ID1
8832 	, OBJECT1_ID2
8833 	, JTOT_OBJECT1_CODE
8834 	, OBJECT_VERSION_NUMBER
8835 	, CONTACT_SEQUENCE
8836 	, ATTRIBUTE_CATEGORY
8837 	, ATTRIBUTE1
8838 	, ATTRIBUTE2
8839 	, ATTRIBUTE3
8840 	, ATTRIBUTE4
8841 	, ATTRIBUTE5
8842 	, ATTRIBUTE6
8843 	, ATTRIBUTE7
8844 	, ATTRIBUTE8
8845 	, ATTRIBUTE9
8846 	, ATTRIBUTE10
8847 	, ATTRIBUTE11
8848 	, ATTRIBUTE12
8849 	, ATTRIBUTE13
8850 	, ATTRIBUTE14
8851 	, ATTRIBUTE15
8852 	, SECURITY_GROUP_ID
8853 	, START_DATE
8854 	, END_DATE
8855 	, PRIMARY_YN
8856 	, RESOURCE_CLASS
8857 	, SALES_GROUP_ID
8858 	, CREATED_BY
8859 	, CREATION_DATE
8860 	, LAST_UPDATED_BY
8861 	, LAST_UPDATE_DATE
8862 	, LAST_UPDATE_LOGIN
8863       )
8864     SELECT
8865           OkcCRecTab.OkcC_NewID(i)
8866 	, OkcCRecTab.OkcC_NewCplID(i)
8867 	, OkcCRecTab.OkcC_CRO_CODE(i)
8868 	, OkcCRecTab.OkcC_NewDnzChrID(i)
8869 	, OkcCRecTab.OkcC_OBJECT1_ID1(i)
8870 	, OkcCRecTab.OkcC_OBJECT1_ID2(i)
8871 	, OkcCRecTab.OkcC_JTOT_OBJECT1_CODE(i)
8872 	, OkcCRecTab.OkcC_OBJECT_VERSION_NUMBER(i)
8873 	, OkcCRecTab.OkcC_CONTACT_SEQUENCE(i)
8874 	, OkcCRecTab.OkcC_ATTRIBUTE_CATEGORY(i)
8875 	, OkcCRecTab.OkcC_ATTRIBUTE1(i)
8876 	, OkcCRecTab.OkcC_ATTRIBUTE2(i)
8877 	, OkcCRecTab.OkcC_ATTRIBUTE3(i)
8878 	, OkcCRecTab.OkcC_ATTRIBUTE4(i)
8879 	, OkcCRecTab.OkcC_ATTRIBUTE5(i)
8880 	, OkcCRecTab.OkcC_ATTRIBUTE6(i)
8881 	, OkcCRecTab.OkcC_ATTRIBUTE7(i)
8882 	, OkcCRecTab.OkcC_ATTRIBUTE8(i)
8883 	, OkcCRecTab.OkcC_ATTRIBUTE9(i)
8884 	, OkcCRecTab.OkcC_ATTRIBUTE10(i)
8885 	, OkcCRecTab.OkcC_ATTRIBUTE11(i)
8886 	, OkcCRecTab.OkcC_ATTRIBUTE12(i)
8887 	, OkcCRecTab.OkcC_ATTRIBUTE13(i)
8888 	, OkcCRecTab.OkcC_ATTRIBUTE14(i)
8889 	, OkcCRecTab.OkcC_ATTRIBUTE15(i)
8890 	, OkcCRecTab.OkcC_SECURITY_GROUP_ID(i)
8891 	, OkcCRecTab.OkcC_START_DATE(i)
8892 	, OkcCRecTab.OkcC_END_DATE(i)
8893 	, OkcCRecTab.OkcC_PRIMARY_YN(i)
8894 	, OkcCRecTab.OkcC_RESOURCE_CLASS(i)
8895 	, OkcCRecTab.OkcC_SALES_GROUP_ID(i)
8896 	, FND_GLOBAL.USER_ID
8897 	, SYSDATE
8898 	, FND_GLOBAL.USER_ID
8899 	, SYSDATE
8900 	, FND_GLOBAL.LOGIN_ID
8901 	FROM DUAL;
8902 
8903         IF (P_Partial_Copy_YN = 'N') then
8904 	  EXIT WHEN GetOkcCFull%NOTFOUND;
8905         ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8906           EXIT WHEN GetOkcCPartial%NOTFOUND;
8907         END IF;
8908 
8909     END LOOP;
8910     If (GetOkcCFull%ISOPEN) then
8911 	CLOSE GetOkcCFull;
8912     Elsif (GetOkcCPartial%ISOPEN) then
8913         CLOSE GetOkcCPartial;
8914     End If;
8915 
8916     EXCEPTION
8917         WHEN OTHERS THEN
8918 	If (GetOkcCFull%ISOPEN) then
8919 	  CLOSE GetOkcCFull;
8920         Elsif (GetOkcCPartial%ISOPEN) then
8921           CLOSE GetOkcCPartial;
8922 	End If;
8923           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8924           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
8925           RAISE;
8926 
8927 
8928  End copy_okc_contacts;
8929 
8930 
8931 --===================================================
8932 --  copy_okc_operation_lines
8933 --  Parameters: P_From_Chr_ID : Header ID of source contract
8934 --              P_To_Chr_ID   : Header ID of target contract
8935 --====================================================
8936 PROCEDURE copy_okc_operation_lines(P_From_Chr_ID IN NUMBER
8937 				  ,P_To_Chr_ID IN NUMBER
8938 				  ,x_return_status OUT NOCOPY VARCHAR2) IS
8939 
8940   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_OPERATION_LINES';
8941   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8942 
8943   l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8944 
8945   CURSOR GetOIEID IS
8946   SELECT ID
8947   from OKC_OPERATION_INSTANCES
8948   WHERE TARGET_CHR_ID = P_To_Chr_ID;
8949   l_OIE_ID NUMBER;
8950 
8951   CURSOR GetOkcOLFull IS
8952   SELECT
8953    To_number(rawtohex(sys_guid()), HexFormatStr)   AS OkcOL_ID
8954   ,NULL AS OkcOL_SELECT_YN
8955   ,'P' AS OkcOL_PROCESS_FLAG
8956   ,l_OIE_ID AS OkcOL_OIE_ID
8957   ,P_To_Chr_ID AS OkcOL_SUBJECT_CHR_ID
8958   ,P_From_Chr_ID AS OkcOL_OBJECT_CHR_ID
8959   ,okcB.ID AS OkcOL_SUBJECT_CLE_ID
8960   ,okcB.ORIG_SYSTEM_ID1 AS OkcOL_OBJECT_CLE_ID
8961   ,1 AS OkcOL_OBJECT_VERSION_NUMBER
8962   ,NULL AS OkcOL_REQUEST_ID
8963   ,NULL AS OkcOL_PROGRAM_APPLICATION_ID
8964   ,NULL AS OkcOL_PROGRAM_ID
8965   ,NULL AS OkcOL_PROGRAM_UPDATE_DATE
8966   ,NULL AS OkcOK_SECURITY_GROUP_ID
8967   ,NULL AS OkcOL_MESSAGE_CODE
8968   ,NULL AS OkcOL_PARENT_OLE_ID
8969   ,'Y' AS OkcOL_ACTIVE_YN
8970   FROM
8971    OKC_K_LINES_B okcB
8972   WHERE
8973    okcB.DNZ_CHR_ID = P_To_Chr_ID;
8974 
8975  Begin
8976   x_return_status := l_return_status;
8977 
8978   OPEN GetOIEID;
8979   FETCH GetOIEID into l_OIE_ID;
8980   CLOSE GetOIEID;
8981 
8982   OPEN GetOkcOLFull;
8983   LOOP
8984   FETCH GetOkcOLFull BULK COLLECT INTO
8985    OkcOLRecTab.OkcOLID
8986   ,OkcOLRecTab.OkcOLSELECT_YN
8987   ,OkcOLRecTab.OkcOLPROCESS_FLAG
8988   ,OkcOLRecTab.OkcOLOIE_ID
8989   ,OkcOLRecTab.OkcOLSUBJECT_CHR_ID
8990   ,OkcOLRecTab.OkcOLOBJECT_CHR_ID
8991   ,OkcOLRecTab.OkcOLSUBJECT_CLE_ID
8992   ,OkcOLRecTab.OkcOLOBJECT_CLE_ID
8993   ,OkcOLRecTab.OkcOLOBJECT_VERSION_NUMBER
8994   ,OkcOLRecTab.OkcOLREQUEST_ID
8995   ,OkcOLRecTab.OkcOLPROGRAM_APPLICATION_ID
8996   ,OkcOLRecTab.OkcOLPROGRAM_ID
8997   ,OkcOLRecTab.OkcOLPROGRAM_UPDATE_DATE
8998   ,OkcOLRecTab.OkcOLSECURITY_GROUP_ID
8999   ,OkcOLRecTab.OkcOLMESSAGE_CODE
9000   ,OkcOLRecTab.OkcOLPARENT_OLE_ID
9001   ,OkcOLRecTab.OkcOLACTIVE_YN
9002   LIMIT G_BULK_FETCH_LIMIT;
9003 
9004    FORALL i in OkcOLRecTab.OkcOLID.FIRST .. OkcOLRecTab.OkcOLID.LAST
9005      INSERT INTO OKC_OPERATION_LINES(
9006       ID
9007      ,SELECT_YN
9008      ,PROCESS_FLAG
9009      ,OIE_ID
9010      ,SUBJECT_CHR_ID
9011      ,OBJECT_CHR_ID
9012      ,SUBJECT_CLE_ID
9013      ,OBJECT_CLE_ID
9014      ,OBJECT_VERSION_NUMBER
9015      ,REQUEST_ID
9016      ,PROGRAM_APPLICATION_ID
9017      ,PROGRAM_ID
9018      ,PROGRAM_UPDATE_DATE
9019      ,SECURITY_GROUP_ID
9020      ,MESSAGE_CODE
9021      ,PARENT_OLE_ID
9022      ,ACTIVE_YN
9023      ,CREATED_BY
9024      ,CREATION_DATE
9025      ,LAST_UPDATED_BY
9026      ,LAST_UPDATE_DATE
9027      ,LAST_UPDATE_LOGIN
9028     )
9029     SELECT
9030     OkcOLRecTab.OkcOLID(i)
9031    ,OkcOLRecTab.OkcOLSELECT_YN(i)
9032    ,OkcOLRecTab.OkcOLPROCESS_FLAG(i)
9033    ,OkcOLRecTab.OkcOLOIE_ID(i)
9034    ,OkcOLRecTab.OkcOLSUBJECT_CHR_ID(i)
9035    ,OkcOLRecTab.OkcOLOBJECT_CHR_ID(i)
9036    ,OkcOLRecTab.OkcOLSUBJECT_CLE_ID(i)
9037    ,OkcOLRecTab.OkcOLOBJECT_CLE_ID(i)
9038    ,OkcOLRecTab.OkcOLOBJECT_VERSION_NUMBER(i)
9039    ,OkcOLRecTab.OkcOLREQUEST_ID(i)
9040    ,OkcOLRecTab.OkcOLPROGRAM_APPLICATION_ID(i)
9041    ,OkcOLRecTab.OkcOLPROGRAM_ID(i)
9042    ,OkcOLRecTab.OkcOLPROGRAM_UPDATE_DATE(i)
9043    ,OkcOLRecTab.OkcOLSECURITY_GROUP_ID(i)
9044    ,OkcOLRecTab.OkcOLMESSAGE_CODE(i)
9045    ,OkcOLRecTab.OkcOLPARENT_OLE_ID(i)
9046    ,OkcOLRecTab.OkcOLACTIVE_YN(i)
9047    ,FND_GLOBAL.USER_ID
9048    ,SYSDATE
9049    ,FND_GLOBAL.USER_ID
9050    ,SYSDATE
9051    ,FND_GLOBAL.LOGIN_ID
9052    FROM DUAL;
9053      EXIT WHEN GetOkcOLFull%NOTFOUND;
9054   END LOOP;
9055 
9056    CLOSE GetOkcOLFull;
9057 
9058    --------Update of PARENT_OLE_ID for Operation Lines created for Top Lines----------------
9059    UPDATE okc_operation_lines ola
9060    set ola.PARENT_OLE_ID = (select olb.ID
9061 			  from okc_operation_lines olb
9062                           where olb.SUBJECT_CHR_ID = P_To_Chr_ID
9063 			  and olb.SUBJECT_CLE_ID IS NULL)
9064    where
9065    ola.SUBJECT_CHR_ID = P_To_Chr_ID
9066    AND ola.SUBJECT_CLE_ID in (SELECT okcb.ID
9067 			    from
9068                             OKC_K_LINES_B okcb
9069 			    WHERE
9070 			    okcb.DNZ_CHR_ID = P_To_Chr_ID
9071 			    AND okcb.CLE_ID IS NULL);
9072    ------------------------------------------------------------------------------------------
9073    --------Update of PARENT_OLE_ID for Operation Lines created for Sub Lines Lines-----------
9074    UPDATE okc_operation_lines ola
9075    set ola.PARENT_OLE_ID = (select olb.ID
9076 			    from okc_operation_lines olb
9077 			    where olb.SUBJECT_CLE_ID = (select b.CLE_ID from
9078 						        okc_k_lines_b b
9079 							where b.ID = ola.SUBJECT_CLE_ID
9080                                                        )
9081                            )
9082    where
9083    ola.SUBJECT_CHR_ID = P_To_Chr_ID
9084    and ola.SUBJECT_CLE_ID in (select okcB.ID
9085 			      from
9086 			      OKC_K_LINES_B okcB
9087 			      where okcB.ID = ola.SUBJECT_CLE_ID
9088                               and okcB.CLE_ID IS NOT NULL);
9089    ------------------------------------------------------------------------------------------
9090 
9091      EXCEPTION
9092        WHEN OTHERS THEN
9093          If GetOkcOLFull%ISOPEN then
9094            CLOSE GetOkcOLFull;
9095          End If;
9096          If GetOIEID%ISOPEN then
9097            CLOSE GetOIEID;
9098          End If;
9099           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9100           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9101           RAISE;
9102 
9103  End copy_okc_operation_lines;
9104 
9105 
9106 --===================================================
9107 --  copy_oks_k_lines_tl
9108 --  Parameters: P_From_Chr_ID : Header ID of source contract
9109 --   	        P_To_Chr_ID   : Header ID of target contract
9110  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9111  --				    or as part of component copy from UI (value = 'Y')
9112 --====================================================
9113  PROCEDURE copy_oks_k_lines_tl(P_From_Chr_ID IN NUMBER
9114 			    ,P_To_Chr_ID   IN NUMBER
9115 			    ,P_Partial_Copy_YN IN VARCHAR2
9116 			    ,P_Lines_Count IN NUMBER DEFAULT 0
9117 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
9118 
9119   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_K_LINES_TL';
9120   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9121 
9122   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9123   CURSOR GetOksTLFull IS
9124   SELECT
9125 	  oksTL.ID AS oksTL_OldID
9126     	, oksB.ID AS oksTL_NewID
9127 	, oksTL.LANGUAGE AS oksTL_LANGUAGE
9128 	, oksTL.SOURCE_LANG AS oksTL_SOURCE_LANG
9129 	, oksTL.SFWT_FLAG AS oksTL_SFWT_FLAG
9130 	, oksTL.INVOICE_TEXT AS oksTL_INVOICE_TEXT
9131 	, oksTL.IB_TRX_DETAILS AS oksTL_IB_TRX_DETAILS
9132 	, oksTL.STATUS_TEXT AS oksTL_STATUS_TEXT
9133 	, oksTL.REACT_TIME_NAME AS oksTL_REACT_TIME_NAME
9134 	, oksTL.SECURITY_GROUP_ID AS oksTL_SECURITY_GROUP_ID
9135   FROM
9136    OKS_K_LINES_TL oksTL
9137   ,OKS_K_LINES_B oksB
9138   WHERE oksTL.ID = oksB.ORIG_SYSTEM_ID1
9139   AND oksB.DNZ_CHR_ID = P_To_Chr_ID;
9140 
9141   CURSOR GetOksTLPartial IS
9142   SELECT
9143 	  oksTL.ID AS oksTL_OldID
9144     	, oksB.ID AS oksTL_NewID
9145 	, oksTL.LANGUAGE AS oksTL_LANGUAGE
9146 	, oksTL.SOURCE_LANG AS oksTL_SOURCE_LANG
9147 	, oksTL.SFWT_FLAG AS oksTL_SFWT_FLAG
9148 	, oksTL.INVOICE_TEXT AS oksTL_INVOICE_TEXT
9149 	, oksTL.IB_TRX_DETAILS AS oksTL_IB_TRX_DETAILS
9150 	, oksTL.STATUS_TEXT AS oksTL_STATUS_TEXT
9151 	, oksTL.REACT_TIME_NAME AS oksTL_REACT_TIME_NAME
9152 	, oksTL.SECURITY_GROUP_ID AS oksTL_SECURITY_GROUP_ID
9153   FROM
9154    OKS_K_LINES_TL oksTL
9155   ,OKS_K_LINES_B oksB
9156   ,OKC_K_LINES_B_TEMP okcBT
9157   WHERE oksTL.ID = oksB.ORIG_SYSTEM_ID1
9158   AND oksB.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
9159   AND oksB.CLE_ID = okcBT.ID
9160   AND oksB.DNZ_CHR_ID = P_To_Chr_ID;
9161 
9162   Begin
9163     x_return_status := l_return_status;
9164 
9165     If (P_Partial_Copy_YN = 'N') then
9166       OPEN GetOksTLFull;
9167     Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
9168       OPEN GetOksTLPartial;
9169     End If;
9170 
9171     LOOP
9172      If (P_Partial_Copy_YN = 'N') then
9173 	FETCH GetOksTLFull BULK COLLECT INTO
9174  	  OksTLRecTab.OksTL_OldID
9175 	, OksTLRecTab.OksTL_NewID
9176 	, OksTLRecTab.OksTL_LANGUAGE
9177 	, OksTLRecTab.OksTL_SOURCE_LANG
9178 	, OksTLRecTab.OksTL_SFWT_FLAG
9179 	, OksTLRecTab.OksTL_INVOICE_TEXT
9180 	, OksTLRecTab.OksTL_IB_TRX_DETAILS
9181 	, OksTLRecTab.OksTL_STATUS_TEXT
9182 	, OksTLRecTab.OksTL_REACT_TIME_NAME
9183 	, OksTLRecTab.OksTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9184      Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
9185 	FETCH GetOksTLPartial BULK COLLECT INTO
9186  	  OksTLRecTab.OksTL_OldID
9187 	, OksTLRecTab.OksTL_NewID
9188 	, OksTLRecTab.OksTL_LANGUAGE
9189 	, OksTLRecTab.OksTL_SOURCE_LANG
9190 	, OksTLRecTab.OksTL_SFWT_FLAG
9191 	, OksTLRecTab.OksTL_INVOICE_TEXT
9192 	, OksTLRecTab.OksTL_IB_TRX_DETAILS
9193 	, OksTLRecTab.OksTL_STATUS_TEXT
9194 	, OksTLRecTab.OksTL_REACT_TIME_NAME
9195 	, OksTLRecTab.OksTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9196      End If;
9197 
9198      FORALL i IN OksTLRecTab.OksTL_NewID.FIRST .. OksTLRecTab.OksTL_NewID.LAST
9199      INSERT INTO OKS_K_LINES_TL(
9200           ID
9201 	, LANGUAGE
9202 	, SOURCE_LANG
9203 	, SFWT_FLAG
9204 	, INVOICE_TEXT
9205 	, IB_TRX_DETAILS
9206 	, STATUS_TEXT
9207 	, REACT_TIME_NAME
9208 	, SECURITY_GROUP_ID
9209 	, CREATED_BY
9210 	, CREATION_DATE
9211 	, LAST_UPDATED_BY
9212 	, LAST_UPDATE_DATE
9213 	, LAST_UPDATE_LOGIN
9214      )
9215      SELECT
9216 	  OksTLRecTab.OksTL_NewID(i)
9217 	, OksTLRecTab.OksTL_LANGUAGE(i)
9218 	, OksTLRecTab.OksTL_SOURCE_LANG(i)
9219 	, OksTLRecTab.OksTL_SFWT_FLAG(i)
9220 	, OksTLRecTab.OksTL_INVOICE_TEXT(i)
9221 	, OksTLRecTab.OksTL_IB_TRX_DETAILS(i)
9222 	, OksTLRecTab.OksTL_STATUS_TEXT(i)
9223 	, OksTLRecTab.OksTL_REACT_TIME_NAME(i)
9224 	, OksTLRecTab.OksTL_SECURITY_GROUP_ID(i)
9225 	, FND_GLOBAL.USER_ID
9226 	, SYSDATE
9227 	, FND_GLOBAL.USER_ID
9228 	, SYSDATE
9229 	, FND_GLOBAL.LOGIN_ID
9230      FROM DUAL;
9231 
9232      If (P_Partial_Copy_YN = 'N') then
9233 	EXIT WHEN GetOksTLFull%NOTFOUND;
9234      Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9235         EXIT WHEN GetOksTLPartial%NOTFOUND;
9236      End If;
9237 
9238     END LOOP;
9239 
9240     If GetOksTLFull%ISOPEN then
9241 	CLOSE GetOksTLFull;
9242     Elsif GetOksTLPartial%ISOPEN then
9243         CLOSE GetOksTLPartial;
9244     End If;
9245 
9246 	EXCEPTION
9247         WHEN OTHERS THEN
9248         If (GetOksTLFull%ISOPEN) then
9249           CLOSE GetOksTLFull;
9250 	Elsif (GetOksTLPartial%ISOPEN) then
9251           CLOSE GetOksTLPartial;
9252         End If;
9253 
9254           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9255           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9256           RAISE;
9257 
9258 
9259  END copy_oks_k_lines_tl;
9260 
9261 --===================================================
9262 --  copy_oks_rev_distributions
9263 --  Parameters: P_From_Chr_ID : Header ID of source contract
9264 --   	      P_To_Chr_ID   : Header ID of target contract
9265  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9266  --				    or as part of component copy from UI (value = 'Y')
9267 --====================================================
9268  PROCEDURE copy_oks_rev_distributions(P_From_Chr_ID IN NUMBER
9269 			    ,P_To_Chr_ID   IN NUMBER
9270 			    ,P_Partial_Copy_YN IN VARCHAR2
9271 			    ,P_Lines_Count IN NUMBER DEFAULT 0
9272 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
9273 
9274   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_REV_DISTRIBUTIONS';
9275   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9276   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9277 
9278   CURSOR GetOksRDFull IS
9279   SELECT
9280           oksRD.ID AS OksRD_OldID
9281         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksRD_NewID
9282 	, okcB.DNZ_CHR_ID AS OksRD_NewChrID
9283 	, okcB.ID AS OksRD_NewCleID
9284 	, oksRD.ACCOUNT_CLASS AS OksRD_ACCOUNT_CLASS
9285 	, oksRD.CODE_COMBINATION_ID AS OksRD_CODE_COMBINATION_ID
9286 	, oksRD.PERCENT AS OksRD_PERCENT
9287 	, 1 AS OksRD_OBJECT_VERSION_NUMBER
9288 	, oksRD.SECURITY_GROUP_ID AS OksRD_SECURITY_GROUP_ID
9289   FROM
9290    OKS_REV_DISTRIBUTIONS oksRD
9291   ,OKC_K_LINES_B okcB
9292   WHERE oksRD.CLE_ID = okcB.ORIG_SYSTEM_ID1
9293   AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
9294 
9295   CURSOR GetOksRDPartial IS
9296   SELECT
9297           oksRD.ID AS OksRD_OldID
9298         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksRD_NewID
9299 	, okcBT.DNZ_CHR_ID AS OksRD_NewChrID
9300 	, okcBT.ID AS OksRD_NewCleID
9301 	, oksRD.ACCOUNT_CLASS AS OksRD_ACCOUNT_CLASS
9302 	, oksRD.CODE_COMBINATION_ID AS OksRD_CODE_COMBINATION_ID
9303 	, oksRD.PERCENT AS OksRD_PERCENT
9304 	, 1 AS OksRD_OBJECT_VERSION_NUMBER
9305 	, oksRD.SECURITY_GROUP_ID AS OksRD_SECURITY_GROUP_ID
9306   FROM
9307    OKS_REV_DISTRIBUTIONS oksRD
9308   ,OKC_K_LINES_B_TEMP okcBT
9309   WHERE oksRD.CLE_ID = okcBT.ORIG_SYSTEM_ID1
9310   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
9311 
9312  Begin
9313    x_return_status := l_return_status;
9314 
9315    If (P_Partial_Copy_YN = 'N') then
9316     OPEN GetOksRDFull;
9317    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9318     OPEN GetOksRDPartial;
9319    End If;
9320 
9321    LOOP
9322     If (P_Partial_Copy_YN = 'N') then
9323       FETCH GetOksRDFull BULK COLLECT INTO
9324           OksRDRecTab.OksRD_OldID
9325        	, OksRDRecTab.OksRD_NewID
9326 	, OksRDRecTab.OksRD_NewChrID
9327 	, OksRDRecTab.OksRD_NewCleID
9328 	, OksRDRecTab.OksRD_ACCOUNT_CLASS
9329 	, OksRDRecTab.OksRD_CODE_COMBINATION_ID
9330 	, OksRDRecTab.OksRD_PERCENT
9331 	, OksRDRecTab.OksRD_OBJECT_VERSION_NUMBER
9332 	, OksRDRecTab.OksRD_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9333 
9334    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9335       FETCH GetOksRDPartial BULK COLLECT INTO
9336           OksRDRecTab.OksRD_OldID
9337         , OksRDRecTab.OksRD_NewID
9338         , OksRDRecTab.OksRD_NewChrID
9339         , OksRDRecTab.OksRD_NewCleID
9340         , OksRDRecTab.OksRD_ACCOUNT_CLASS
9341         , OksRDRecTab.OksRD_CODE_COMBINATION_ID
9342         , OksRDRecTab.OksRD_PERCENT
9343         , OksRDRecTab.OksRD_OBJECT_VERSION_NUMBER
9344         , OksRDRecTab.OksRD_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9345 
9346    End If;
9347 
9348    FORALL i IN OksRDRecTab.OksRD_NewID.FIRST .. OksRDRecTab.OksRD_NewID.LAST
9349      INSERT INTO OKS_REV_DISTRIBUTIONS
9350      (ID
9351     , CHR_ID
9352     , CLE_ID
9353     , ACCOUNT_CLASS
9354     , CODE_COMBINATION_ID
9355     , PERCENT
9356     , OBJECT_VERSION_NUMBER
9357     , SECURITY_GROUP_ID
9358     , CREATED_BY
9359     , CREATION_DATE
9360     , LAST_UPDATED_BY
9361     , LAST_UPDATE_DATE
9362     , LAST_UPDATE_LOGIN
9363     )
9364     SELECT
9365           OksRDRecTab.OksRD_NewID(i)
9366 	, OksRDRecTab.OksRD_NewChrId(i)
9367 	, OksRDRecTab.OksRD_NewCleID(i)
9368 	, OksRDRecTab.OksRD_ACCOUNT_CLASS(i)
9369 	, OksRDRecTab.OksRD_CODE_COMBINATION_ID(i)
9370 	, OksRDRecTab.OksRD_PERCENT(i)
9371 	, OksRDRecTab.OksRD_OBJECT_VERSION_NUMBER(i)
9372 	, OksRDRecTab.OksRD_SECURITY_GROUP_ID(i)
9373 	, FND_GLOBAL.USER_ID
9374 	, SYSDATE
9375 	, FND_GLOBAL.USER_ID
9376 	, SYSDATE
9377 	, FND_GLOBAL.LOGIN_ID
9378     FROM DUAL;
9379 
9380     If (P_Partial_Copy_YN = 'N') then
9381        EXIT WHEN GetOksRDFull%NOTFOUND;
9382     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9383        EXIT WHEN GetOksRDPartial%NOTFOUND;
9384     End If;
9385 
9386    END LOOP;
9387 
9388    If (GetOksRDFull%ISOPEN) then
9389      CLOSE GetOksRDFull;
9390    Elsif (GetOksRDPartial%ISOPEN) then
9391      CLOSE GetOksRDPartial;
9392    End If;
9393 
9394     EXCEPTION
9395         WHEN OTHERS THEN
9396         If (GetOksRDFull%ISOPEN) then
9397           CLOSE GetOksRDFull;
9398         Elsif (GetOksRDPartial%ISOPEN) then
9399           CLOSE GetOksRDPartial;
9400         End If;
9401           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9402           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9403           RAISE;
9404 
9405  End copy_oks_rev_distributions;
9406 
9407 --===================================================
9408 --  copy_oks_qualifiers
9409 --  Parameters: P_From_Chr_ID : Header ID of source contract
9410 --   	      P_To_Chr_ID   : Header ID of target contract
9411  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9412  --				    or as part of component copy from UI (value = 'Y')
9413 --====================================================
9414  PROCEDURE copy_oks_qualifiers(P_From_Chr_ID IN NUMBER
9415 			    ,P_To_Chr_ID   IN NUMBER
9416 			    ,P_Partial_Copy_YN IN VARCHAR2
9417 			    ,P_Lines_Count IN NUMBER DEFAULT 0
9418 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
9419 
9420    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_QUALIFIERS';
9421    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9422 
9423    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9424 
9425  CURSOR GetOksQFull IS
9426  SELECT
9427  	  oksQ.QUALIFIER_ID AS oksQ_OldQualifierID
9428         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksQ_NewQualifierID
9429 	, oksQ.REQUEST_ID AS oksQ_REQUEST_ID
9430 	, oksQ.PROGRAM_APPLICATION_ID AS oksQ_PROGRAM_APPLICATION_ID
9431 	, oksQ.PROGRAM_ID AS oksQ_PROGRAM_ID
9432 	, oksQ.PROGRAM_UPDATE_DATE AS oksQ_PROGRAM_UPDATE_DATE
9433 	, oksQ.QUALIFIER_GROUPING_NO AS oksQ_QUALIF_GROUPING_NO
9434 	, oksQ.QUALIFIER_CONTEXT AS oksQ_QUALIF_CONTEXT
9435 	, oksQ.QUALIFIER_ATTRIBUTE AS oksQ_QUALIF_ATTRIBUTE
9436 	, oksQ.QUALIFIER_ATTR_VALUE AS oksQ_QUALIF_ATTR_VALUE
9437 	, oksQ.COMPARISON_OPERATOR_CODE AS oksQ_COMPARISON_OPERATOR_CODE
9438 	, oksQ.EXCLUDER_FLAG AS oksQ_EXCLUDER_FLAG
9439 	, oksQ.QUALIFIER_RULE_ID AS oksQ_QUALIFIER_RULE_ID
9440 	, oksQ.START_DATE_ACTIVE AS oksQ_START_DATE_ACTIVE
9441 	, oksQ.END_DATE_ACTIVE AS oksQ_END_DATE_ACTIVE
9442 	, oksQ.CREATED_FROM_RULE_ID AS oksQ_CREATED_FROM_RULE_ID
9443 	, oksQ.QUALIFIER_PRECEDENCE AS oksQ_QUALIFIER_PRECEDENCE
9444 	, okcB.DNZ_CHR_ID AS oksQ_NewListHeaderID --*
9445 	, okcB.ID AS oksQ_NewListLineID --*
9446 	, oksQ.QUALIFIER_DATATYPE AS oksQ_QUALIFIER_DATATYPE
9447 	, oksQ.QUALIFIER_ATTR_VALUE_TO AS oksQ_QUALIFIER_ATTR_VALUE_TO
9448 	, oksQ.CONTEXT AS oksQ_CONTEXT
9449 	, oksQ.ATTRIBUTE1 AS oksQ_ATTRIBUTE1
9450 	, oksQ.ATTRIBUTE2 AS oksQ_ATTRIBUTE2
9451 	, oksQ.ATTRIBUTE3 AS oksQ_ATTRIBUTE3
9452 	, oksQ.ATTRIBUTE4 AS oksQ_ATTRIBUTE4
9453 	, oksQ.ATTRIBUTE5 AS oksQ_ATTRIBUTE5
9454 	, oksQ.ATTRIBUTE6 AS oksQ_ATTRIBUTE6
9455 	, oksQ.ATTRIBUTE7 AS oksQ_ATTRIBUTE7
9456 	, oksQ.ATTRIBUTE8 AS oksQ_ATTRIBUTE8
9457 	, oksQ.ATTRIBUTE9 AS oksQ_ATTRIBUTE9
9458 	, oksQ.ATTRIBUTE10 AS oksQ_ATTRIBUTE10
9459 	, oksQ.ATTRIBUTE11 AS oksQ_ATTRIBUTE11
9460 	, oksQ.ATTRIBUTE12 AS oksQ_ATTRIBUTE12
9461 	, oksQ.ATTRIBUTE13 AS oksQ_ATTRIBUTE13
9462 	, oksQ.ATTRIBUTE14 AS oksQ_ATTRIBUTE14
9463 	, oksQ.ATTRIBUTE15 AS oksQ_ATTRIBUTE15
9464 	, oksQ.ACTIVE_FLAG AS oksQ_ACTIVE_FLAG
9465 	, oksQ.LIST_TYPE_CODE AS oksQ_LIST_TYPE_CODE
9466 	, oksQ.QUAL_ATTR_VALUE_FROM_NUMBER AS oksQ_QUAL_ATTRVALUE_FROM_NUM
9467 	, oksQ.QUAL_ATTR_VALUE_TO_NUMBER AS oksQ_QUAL_ATTRVALUE_TO_NUM
9468 	, oksQ.SECURITY_GROUP_ID AS oksQ_SECURITY_GROUP_ID
9469         FROM
9470         OKS_QUALIFIERS oksQ
9471 	,OKC_K_LINES_B okcB
9472 	WHERE
9473 	oksQ.LIST_LINE_ID = okcB.ORIG_SYSTEM_ID1
9474 	AND okcB.CLE_ID IS NULL  --Qualifiers are only for Top Lines
9475 	AND okcB.DNZ_CHR_ID  = P_To_Chr_ID;
9476 
9477  CURSOR GetOksQPartial IS
9478  SELECT
9479  	  oksQ.QUALIFIER_ID AS oksQ_OldQualifierID
9480         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksQ_NewQualifierID
9481 	, oksQ.REQUEST_ID AS oksQ_REQUEST_ID
9482 	, oksQ.PROGRAM_APPLICATION_ID AS oksQ_PROGRAM_APPLICATION_ID
9483 	, oksQ.PROGRAM_ID AS oksQ_PROGRAM_ID
9484 	, oksQ.PROGRAM_UPDATE_DATE AS oksQ_PROGRAM_UPDATE_DATE
9485 	, oksQ.QUALIFIER_GROUPING_NO AS oksQ_QUALIF_GROUPING_NO
9486 	, oksQ.QUALIFIER_CONTEXT AS oksQ_QUALIF_CONTEXT
9487 	, oksQ.QUALIFIER_ATTRIBUTE AS oksQ_QUALIF_ATTRIBUTE
9488 	, oksQ.QUALIFIER_ATTR_VALUE AS oksQ_QUALIF_ATTR_VALUE
9489 	, oksQ.COMPARISON_OPERATOR_CODE AS oksQ_COMPARISON_OPERATOR_CODE
9490 	, oksQ.EXCLUDER_FLAG AS oksQ_EXCLUDER_FLAG
9491 	, oksQ.QUALIFIER_RULE_ID AS oksQ_QUALIFIER_RULE_ID
9492 	, oksQ.START_DATE_ACTIVE AS oksQ_START_DATE_ACTIVE
9493 	, oksQ.END_DATE_ACTIVE AS oksQ_END_DATE_ACTIVE
9494 	, oksQ.CREATED_FROM_RULE_ID AS oksQ_CREATED_FROM_RULE_ID
9495 	, oksQ.QUALIFIER_PRECEDENCE AS oksQ_QUALIFIER_PRECEDENCE
9496 	, okcBT.DNZ_CHR_ID AS oksQ_NewListHeaderID
9497 	, okcBT.ID AS oksQ_NewListLineID
9498 	, oksQ.QUALIFIER_DATATYPE AS oksQ_QUALIFIER_DATATYPE
9499 	, oksQ.QUALIFIER_ATTR_VALUE_TO AS oksQ_QUALIFIER_ATTR_VALUE_TO
9500 	, oksQ.CONTEXT AS oksQ_CONTEXT
9501 	, oksQ.ATTRIBUTE1 AS oksQ_ATTRIBUTE1
9502 	, oksQ.ATTRIBUTE2 AS oksQ_ATTRIBUTE2
9503 	, oksQ.ATTRIBUTE3 AS oksQ_ATTRIBUTE3
9504 	, oksQ.ATTRIBUTE4 AS oksQ_ATTRIBUTE4
9505 	, oksQ.ATTRIBUTE5 AS oksQ_ATTRIBUTE5
9506 	, oksQ.ATTRIBUTE6 AS oksQ_ATTRIBUTE6
9507 	, oksQ.ATTRIBUTE7 AS oksQ_ATTRIBUTE7
9508 	, oksQ.ATTRIBUTE8 AS oksQ_ATTRIBUTE8
9509 	, oksQ.ATTRIBUTE9 AS oksQ_ATTRIBUTE9
9510 	, oksQ.ATTRIBUTE10 AS oksQ_ATTRIBUTE10
9511 	, oksQ.ATTRIBUTE11 AS oksQ_ATTRIBUTE11
9512 	, oksQ.ATTRIBUTE12 AS oksQ_ATTRIBUTE12
9513 	, oksQ.ATTRIBUTE13 AS oksQ_ATTRIBUTE13
9514 	, oksQ.ATTRIBUTE14 AS oksQ_ATTRIBUTE14
9515 	, oksQ.ATTRIBUTE15 AS oksQ_ATTRIBUTE15
9516 	, oksQ.ACTIVE_FLAG AS oksQ_ACTIVE_FLAG
9517 	, oksQ.LIST_TYPE_CODE AS oksQ_LIST_TYPE_CODE
9518 	, oksQ.QUAL_ATTR_VALUE_FROM_NUMBER AS oksQ_QUAL_ATTRVALUE_FROM_NUM
9519 	, oksQ.QUAL_ATTR_VALUE_TO_NUMBER AS oksQ_QUAL_ATTRVALUE_TO_NUM
9520 	, oksQ.SECURITY_GROUP_ID AS oksQ_SECURITY_GROUP_ID
9521         FROM
9522         OKS_QUALIFIERS oksQ
9523 	,OKC_K_LINES_B_TEMP okcBT
9524 	WHERE
9525 	oksQ.LIST_LINE_ID = okcBT.ORIG_SYSTEM_ID1
9526 	AND okcBT.CLE_ID IS NULL  --Qualifiers are only for Top Lines
9527 	AND okcBT.DNZ_CHR_ID  = P_To_Chr_ID;
9528  Begin
9529   x_return_status := l_return_status;
9530   If (P_Partial_Copy_YN = 'N') then
9531    OPEN GetOksQFull;
9532   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9533    OPEN GetOksQPartial;
9534   End If;
9535 
9536   LOOP
9537    If (P_Partial_Copy_YN = 'N') then
9538    FETCH GetOksQFull BULK COLLECT INTO
9539      	  OksQRecTab.OksQ_OldQualifierID
9540    	, OksQRecTab.OksQ_NewQualifierID
9541 	, OksQRecTab.OksQ_REQUEST_ID
9542 	, OksQRecTab.OksQ_PROGRAM_APPLICATION_ID
9543 	, OksQRecTab.OksQ_PROGRAM_ID
9544 	, OksQRecTab.OksQ_PROGRAM_UPDATE_DATE
9545 	, OksQRecTab.OksQ_QUALIFIER_GROUPING_NO
9546 	, OksQRecTab.OksQ_QUALIFIER_CONTEXT
9547 	, OksQRecTab.OksQ_QUALIFIER_ATTRIBUTE
9548 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE
9549 	, OksQRecTab.OksQ_COMPARISON_OPERATOR_CODE
9550 	, OksQRecTab.OksQ_EXCLUDER_FLAG
9551 	, OksQRecTab.OksQ_QUALIFIER_RULE_ID
9552 	, OksQRecTab.OksQ_START_DATE_ACTIVE
9553 	, OksQRecTab.OksQ_END_DATE_ACTIVE
9554 	, OksQRecTab.OksQ_CREATED_FROM_RULE_ID
9555 	, OksQRecTab.OksQ_QUALIFIER_PRECEDENCE
9556 	, OksQRecTab.OksQ_NewListHeaderID
9557 	, OksQRecTab.OksQ_NewListLineID
9558 	, OksQRecTab.OksQ_QUALIFIER_DATATYPE
9559 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE_TO
9560 	, OksQRecTab.OksQ_CONTEXT
9561 	, OksQRecTab.OksQ_ATTRIBUTE1
9562 	, OksQRecTab.OksQ_ATTRIBUTE2
9563 	, OksQRecTab.OksQ_ATTRIBUTE3
9564 	, OksQRecTab.OksQ_ATTRIBUTE4
9565 	, OksQRecTab.OksQ_ATTRIBUTE5
9566 	, OksQRecTab.OksQ_ATTRIBUTE6
9567 	, OksQRecTab.OksQ_ATTRIBUTE7
9568 	, OksQRecTab.OksQ_ATTRIBUTE8
9569 	, OksQRecTab.OksQ_ATTRIBUTE9
9570 	, OksQRecTab.OksQ_ATTRIBUTE10
9571 	, OksQRecTab.OksQ_ATTRIBUTE11
9572 	, OksQRecTab.OksQ_ATTRIBUTE12
9573 	, OksQRecTab.OksQ_ATTRIBUTE13
9574 	, OksQRecTab.OksQ_ATTRIBUTE14
9575 	, OksQRecTab.OksQ_ATTRIBUTE15
9576 	, OksQRecTab.OksQ_ACTIVE_FLAG
9577 	, OksQRecTab.OksQ_LIST_TYPE_CODE
9578 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_FROM_NUM
9579 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_TO_NUM
9580 	, OksQRecTab.OksQ_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9581 
9582    Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
9583    FETCH GetOksQPartial BULK COLLECT INTO
9584      	  OksQRecTab.OksQ_OldQualifierID
9585    	, OksQRecTab.OksQ_NewQualifierID
9586 	, OksQRecTab.OksQ_REQUEST_ID
9587 	, OksQRecTab.OksQ_PROGRAM_APPLICATION_ID
9588 	, OksQRecTab.OksQ_PROGRAM_ID
9589 	, OksQRecTab.OksQ_PROGRAM_UPDATE_DATE
9590 	, OksQRecTab.OksQ_QUALIFIER_GROUPING_NO
9591 	, OksQRecTab.OksQ_QUALIFIER_CONTEXT
9592 	, OksQRecTab.OksQ_QUALIFIER_ATTRIBUTE
9593 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE
9594 	, OksQRecTab.OksQ_COMPARISON_OPERATOR_CODE
9595 	, OksQRecTab.OksQ_EXCLUDER_FLAG
9596 	, OksQRecTab.OksQ_QUALIFIER_RULE_ID
9597 	, OksQRecTab.OksQ_START_DATE_ACTIVE
9598 	, OksQRecTab.OksQ_END_DATE_ACTIVE
9599 	, OksQRecTab.OksQ_CREATED_FROM_RULE_ID
9600 	, OksQRecTab.OksQ_QUALIFIER_PRECEDENCE
9601 	, OksQRecTab.OksQ_NewListHeaderID
9602 	, OksQRecTab.OksQ_NewListLineID
9603 	, OksQRecTab.OksQ_QUALIFIER_DATATYPE
9604 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE_TO
9605 	, OksQRecTab.OksQ_CONTEXT
9606 	, OksQRecTab.OksQ_ATTRIBUTE1
9607 	, OksQRecTab.OksQ_ATTRIBUTE2
9608 	, OksQRecTab.OksQ_ATTRIBUTE3
9609 	, OksQRecTab.OksQ_ATTRIBUTE4
9610 	, OksQRecTab.OksQ_ATTRIBUTE5
9611 	, OksQRecTab.OksQ_ATTRIBUTE6
9612 	, OksQRecTab.OksQ_ATTRIBUTE7
9613 	, OksQRecTab.OksQ_ATTRIBUTE8
9614 	, OksQRecTab.OksQ_ATTRIBUTE9
9615 	, OksQRecTab.OksQ_ATTRIBUTE10
9616 	, OksQRecTab.OksQ_ATTRIBUTE11
9617 	, OksQRecTab.OksQ_ATTRIBUTE12
9618 	, OksQRecTab.OksQ_ATTRIBUTE13
9619 	, OksQRecTab.OksQ_ATTRIBUTE14
9620 	, OksQRecTab.OksQ_ATTRIBUTE15
9621 	, OksQRecTab.OksQ_ACTIVE_FLAG
9622 	, OksQRecTab.OksQ_LIST_TYPE_CODE
9623 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_FROM_NUM
9624 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_TO_NUM
9625 	, OksQRecTab.OksQ_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9626    End If;
9627 
9628    FORALL i IN OksQRecTab.OksQ_NewQualifierID.FIRST .. OksQRecTab.OksQ_NewQualifierID.LAST
9629    INSERT INTO OKS_QUALIFIERS(
9630   	  QUALIFIER_ID
9631 	, REQUEST_ID
9632 	, PROGRAM_APPLICATION_ID
9633 	, PROGRAM_ID
9634 	, PROGRAM_UPDATE_DATE
9635 	, QUALIFIER_GROUPING_NO
9636 	, QUALIFIER_CONTEXT
9637 	, QUALIFIER_ATTRIBUTE
9638 	, QUALIFIER_ATTR_VALUE
9639 	, COMPARISON_OPERATOR_CODE
9640 	, EXCLUDER_FLAG
9641 	, QUALIFIER_RULE_ID
9642 	, START_DATE_ACTIVE
9643 	, END_DATE_ACTIVE
9644 	, CREATED_FROM_RULE_ID
9645 	, QUALIFIER_PRECEDENCE
9646 	, LIST_HEADER_ID
9647 	, LIST_LINE_ID
9648 	, QUALIFIER_DATATYPE
9649 	, QUALIFIER_ATTR_VALUE_TO
9650 	, CONTEXT
9651 	, ATTRIBUTE1
9652 	, ATTRIBUTE2
9653 	, ATTRIBUTE3
9654 	, ATTRIBUTE4
9655 	, ATTRIBUTE5
9656 	, ATTRIBUTE6
9657 	, ATTRIBUTE7
9658 	, ATTRIBUTE8
9659 	, ATTRIBUTE9
9660 	, ATTRIBUTE10
9661 	, ATTRIBUTE11
9662 	, ATTRIBUTE12
9663 	, ATTRIBUTE13
9664 	, ATTRIBUTE14
9665 	, ATTRIBUTE15
9666 	, ACTIVE_FLAG
9667 	, LIST_TYPE_CODE
9668 	, QUAL_ATTR_VALUE_FROM_NUMBER
9669 	, QUAL_ATTR_VALUE_TO_NUMBER
9670 	, SECURITY_GROUP_ID
9671 	, CREATED_BY
9672 	, CREATION_DATE
9673 	, LAST_UPDATED_BY
9674 	, LAST_UPDATE_LOGIN
9675 	, LAST_UPDATE_DATE )
9676         SELECT
9677 	  OksQRecTab.OksQ_NewQualifierID(i)
9678 	, OksQRecTab.OksQ_REQUEST_ID(i)
9679 	, OksQRecTab.OksQ_PROGRAM_APPLICATION_ID(i)
9680 	, OksQRecTab.OksQ_PROGRAM_ID(i)
9681 	, OksQRecTab.OksQ_PROGRAM_UPDATE_DATE(i)
9682 	, OksQRecTab.OksQ_QUALIFIER_GROUPING_NO(i)
9683 	, OksQRecTab.OksQ_QUALIFIER_CONTEXT(i)
9684 	, OksQRecTab.OksQ_QUALIFIER_ATTRIBUTE(i)
9685 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE(i)
9686 	, OksQRecTab.OksQ_COMPARISON_OPERATOR_CODE(i)
9687 	, OksQRecTab.OksQ_EXCLUDER_FLAG(i)
9688 	, OksQRecTab.OksQ_QUALIFIER_RULE_ID(i)
9689 	, OksQRecTab.OksQ_START_DATE_ACTIVE(i)
9690 	, OksQRecTab.OksQ_END_DATE_ACTIVE(i)
9691 	, OksQRecTab.OksQ_CREATED_FROM_RULE_ID(i)
9692 	, OksQRecTab.OksQ_QUALIFIER_PRECEDENCE(i)
9693 	, OksQRecTab.OksQ_NewListHeaderID(i)
9694 	, OksQRecTab.OksQ_NewListLineID(i)
9695 	, OksQRecTab.OksQ_QUALIFIER_DATATYPE(i)
9696 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE_TO(i)
9697 	, OksQRecTab.OksQ_CONTEXT(i)
9698 	, OksQRecTab.OksQ_ATTRIBUTE1(i)
9699 	, OksQRecTab.OksQ_ATTRIBUTE2(i)
9700 	, OksQRecTab.OksQ_ATTRIBUTE3(i)
9701 	, OksQRecTab.OksQ_ATTRIBUTE4(i)
9702 	, OksQRecTab.OksQ_ATTRIBUTE5(i)
9703 	, OksQRecTab.OksQ_ATTRIBUTE6(i)
9704 	, OksQRecTab.OksQ_ATTRIBUTE7(i)
9705 	, OksQRecTab.OksQ_ATTRIBUTE8(i)
9706 	, OksQRecTab.OksQ_ATTRIBUTE9(i)
9707 	, OksQRecTab.OksQ_ATTRIBUTE10(i)
9708 	, OksQRecTab.OksQ_ATTRIBUTE11(i)
9709 	, OksQRecTab.OksQ_ATTRIBUTE12(i)
9710 	, OksQRecTab.OksQ_ATTRIBUTE13(i)
9711 	, OksQRecTab.OksQ_ATTRIBUTE14(i)
9712 	, OksQRecTab.OksQ_ATTRIBUTE15(i)
9713 	, OksQRecTab.OksQ_ACTIVE_FLAG(i)
9714 	, OksQRecTab.OksQ_LIST_TYPE_CODE(i)
9715 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_FROM_NUM(i)
9716 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_TO_NUM(i)
9717 	, OksQRecTab.OksQ_SECURITY_GROUP_ID(i)
9718 	, FND_GLOBAL.USER_ID
9719 	, SYSDATE
9720 	, FND_GLOBAL.USER_ID
9721 	, FND_GLOBAL.LOGIN_ID
9722 	, SYSDATE
9723         FROM DUAL;
9724 
9725         If (P_Partial_Copy_YN = 'N') then
9726 	  EXIT WHEN GetOksQFull%NOTFOUND;
9727 	Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9728           EXIT WHEN GetOksQPartial%NOTFOUND;
9729  	End If;
9730 
9731    END LOOP;
9732 
9733        If (GetOksQFull%ISOPEN) then
9734         CLOSE GetOksQFull;
9735        Elsif (GetOksQPartial%ISOPEN) then
9736         CLOSE GetOksQPartial;
9737        End If;
9738 
9739     EXCEPTION
9740         WHEN OTHERS THEN
9741         If (GetOksQFull%ISOPEN) then
9742 	  CLOSE GetOksQFull;
9743 	Elsif (GetOksQPartial%ISOPEN) then
9744           CLOSE GetOksQPartial;
9745         End IF;
9746           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9747           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9748           RAISE;
9749 
9750 
9751  End copy_oks_qualifiers;
9752 
9753 -----------------------------------------------------------
9754 --===================================================
9755 --  copy_oks_coverage_timezones
9756 --  Parameters: P_From_Chr_ID : Header ID of source contract
9757 --   	      P_To_Chr_ID   : Header ID of target contract
9758  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9759  --				    or as part of component copy from UI (value = 'Y')
9760 --====================================================
9761 
9762  PROCEDURE copy_oks_coverage_timezones(P_From_Chr_ID IN NUMBER
9763                             	  ,P_To_Chr_ID   IN NUMBER
9764                                   ,P_Partial_Copy_YN IN VARCHAR2
9765 				  ,P_Lines_Count IN NUMBER DEFAULT 0
9766                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
9767 
9768    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_COVERAGE_TIMEZONES';
9769    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9770    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9771 
9772    CURSOR GetOksCTZFull IS
9773    SELECT
9774       	  oksCTZ.ID AS oksCTZ_OldID --*
9775          ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS oksCTZ_NewID --*
9776 	 ,okcB.ID AS oksCTZ_NewCleID --*
9777 	 ,oksCTZ.DEFAULT_YN AS oksCTZ_DEFAULT_YN
9778 	 ,oksCTZ.TIMEZONE_ID AS oksCTZ_TIMEZONE_ID
9779 	 ,okcB.DNZ_CHR_ID AS oksCTZ_NewDnzChrID --*
9780 	 ,oksCTZ.SECURITY_GROUP_ID AS oksCTZ_SECURITY_GROUP_ID
9781 	 ,oksCTZ.PROGRAM_APPLICATION_ID AS oksCTZ_PROGRAM_APPLICATION_ID
9782 	 ,oksCTZ.PROGRAM_ID AS oksCTZ_PROGRAM_ID
9783 	 ,oksCTZ.PROGRAM_UPDATE_DATE AS oksCTZ_PROGRAM_UPDATE_DATE
9784 	 ,oksCTZ.REQUEST_ID AS oksCTZ_REQUEST_ID
9785 	 ,1 AS oksCTZ_OBJECT_VERSION_NUMBER
9786 	 ,oksCTZ.ID AS oksCTZ_ORIG_SYSTEM_ID1 --*
9787 	 ,NULL AS oksCTZ_ORIG_SYSTEM_SOURCE_CODE --*
9788 	 ,'COPY' AS oksCTZ_ORIG_SYSTEM_REFERENCE1 --*
9789   FROM
9790    OKS_COVERAGE_TIMEZONES oksCTZ
9791   ,OKC_K_LINES_B okcB
9792   WHERE
9793     oksCTZ.CLE_ID = okcB.ORIG_SYSTEM_ID1
9794   AND oksCTZ.DNZ_CHR_ID = P_From_Chr_ID
9795   AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
9796 
9797   CURSOR GetOksCTZPartial IS
9798   SELECT
9799           oksCTZ.ID AS oksCTZ_OldID --*
9800          ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS oksCTZ_NewID --*
9801          ,okcBT.ID AS oksCTZ_NewCleID --*
9802          ,oksCTZ.DEFAULT_YN AS oksCTZ_DEFAULT_YN
9803          ,oksCTZ.TIMEZONE_ID AS oksCTZ_TIMEZONE_ID
9804          ,okcBT.DNZ_CHR_ID AS oksCTZ_NewDnzChrID --*
9805          ,oksCTZ.SECURITY_GROUP_ID AS oksCTZ_SECURITY_GROUP_ID
9806          ,oksCTZ.PROGRAM_APPLICATION_ID AS oksCTZ_PROGRAM_APPLICATION_ID
9807          ,oksCTZ.PROGRAM_ID AS oksCTZ_PROGRAM_ID
9808          ,oksCTZ.PROGRAM_UPDATE_DATE AS oksCTZ_PROGRAM_UPDATE_DATE
9809          ,oksCTZ.REQUEST_ID AS oksCTZ_REQUEST_ID
9810          ,1 AS oksCTZ_OBJECT_VERSION_NUMBER
9811          ,oksCTZ.ID AS oksCTZ_ORIG_SYSTEM_ID1 --*
9812          ,NULL AS oksCTZ_ORIG_SYSTEM_SOURCE_CODE --*
9813          ,'COPY' AS oksCTZ_ORIG_SYSTEM_REFERENCE1 --*
9814   FROM
9815    OKS_COVERAGE_TIMEZONES oksCTZ
9816   ,OKC_K_LINES_B_TEMP okcBT
9817   WHERE
9818     oksCTZ.CLE_ID = okcBT.ORIG_SYSTEM_ID1
9819   AND oksCTZ.DNZ_CHR_ID = P_From_Chr_ID
9820   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
9821 
9822  Begin
9823    x_return_status := l_return_status;
9824   If (P_Partial_Copy_YN = 'N') then
9825    OPEN GetOksCTZFull;
9826   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9827    OPEN GetOksCTZPartial;
9828   End If;
9829 
9830   LOOP
9831    IF (P_Partial_Copy_YN = 'N') then
9832      FETCH GetOksCTZFull BULK COLLECT INTO
9833           OksCTZRecTab.OksCTZ_OldID
9834          ,OksCTZRecTab.OksCTZ_NewID
9835 	 ,OksCTZRecTab.OksCTZ_NewCleID
9836 	 ,OksCTZRecTab.OksCTZ_DEFAULT_YN
9837 	 ,OksCTZRecTab.OksCTZ_TIMEZONE_ID
9838 	 ,OksCTZRecTab.OksCTZ_NewDnzChrID
9839 	 ,OksCTZRecTab.OksCTZ_SECURITY_GROUP_ID
9840 	 ,OksCTZRecTab.OksCTZ_PROGRAM_APPLICATION_ID
9841 	 ,OksCTZRecTab.OksCTZ_PROGRAM_ID
9842 	 ,OksCTZRecTab.OksCTZ_PROGRAM_UPDATE_DATE
9843 	 ,OksCTZRecTab.OksCTZ_REQUEST_ID
9844 	 ,OksCTZRecTab.OksCTZ_OBJECT_VERSION_NUMBER
9845 	 ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_ID1
9846 	 ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_SOURCE_CODE
9847 	 ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_REFERENCE1
9848          LIMIT G_BULK_FETCH_LIMIT;
9849    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9850      FETCH GetOksCTZPartial BULK COLLECT INTO
9851           OksCTZRecTab.OksCTZ_OldID
9852          ,OksCTZRecTab.OksCTZ_NewID
9853          ,OksCTZRecTab.OksCTZ_NewCleID
9854          ,OksCTZRecTab.OksCTZ_DEFAULT_YN
9855          ,OksCTZRecTab.OksCTZ_TIMEZONE_ID
9856          ,OksCTZRecTab.OksCTZ_NewDnzChrID
9857          ,OksCTZRecTab.OksCTZ_SECURITY_GROUP_ID
9858          ,OksCTZRecTab.OksCTZ_PROGRAM_APPLICATION_ID
9859          ,OksCTZRecTab.OksCTZ_PROGRAM_ID
9860          ,OksCTZRecTab.OksCTZ_PROGRAM_UPDATE_DATE
9861          ,OksCTZRecTab.OksCTZ_REQUEST_ID
9862          ,OksCTZRecTab.OksCTZ_OBJECT_VERSION_NUMBER
9863          ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_ID1
9864          ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_SOURCE_CODE
9865          ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_REFERENCE1
9866          LIMIT G_BULK_FETCH_LIMIT;
9867 
9868    End If;
9869 
9870    FORALL i IN OksCTZRecTab.OksCTZ_NewID.FIRST .. OksCTZRecTab.OksCTZ_NewID.LAST
9871    INSERT INTO OKS_COVERAGE_TIMEZONES(
9872       	  ID
9873   	 ,CLE_ID
9874 	 ,DEFAULT_YN
9875 	 ,TIMEZONE_ID
9876 	 ,DNZ_CHR_ID
9877 	 ,SECURITY_GROUP_ID
9878 	 ,PROGRAM_APPLICATION_ID
9879 	 ,PROGRAM_ID
9880 	 ,PROGRAM_UPDATE_DATE
9881 	 ,REQUEST_ID
9882 	 ,OBJECT_VERSION_NUMBER
9883 	 ,ORIG_SYSTEM_ID1
9884 	 ,ORIG_SYSTEM_SOURCE_CODE
9885 	 ,ORIG_SYSTEM_REFERENCE1
9886  	 ,CREATED_BY
9887 	 ,CREATION_DATE
9888 	 ,LAST_UPDATED_BY
9889 	 ,LAST_UPDATE_DATE
9890 	 ,LAST_UPDATE_LOGIN
9891 	 )
9892    SELECT
9893        OksCTZRecTab.OksCTZ_NewID(i)
9894       ,OksCTZRecTab.OksCTZ_NewCleID(i)
9895       ,OksCTZRecTab.OksCTZ_DEFAULT_YN(i)
9896       ,OksCTZRecTab.OksCTZ_TIMEZONE_ID(i)
9897       ,OksCTZRecTab.OksCTZ_NewDnzChrID(i)
9898       ,OksCTZRecTab.OksCTZ_SECURITY_GROUP_ID(i)
9899       ,OksCTZRecTab.OksCTZ_PROGRAM_APPLICATION_ID(i)
9900       ,OksCTZRecTab.OksCTZ_PROGRAM_ID(i)
9901       ,OksCTZRecTab.OksCTZ_PROGRAM_UPDATE_DATE(i)
9902       ,OksCTZRecTab.OksCTZ_REQUEST_ID(i)
9903       ,OksCTZRecTab.OksCTZ_OBJECT_VERSION_NUMBER(i)
9904       ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_ID1(i)
9905       ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_SOURCE_CODE(i)
9906       ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_REFERENCE1(i)
9907       ,FND_GLOBAL.USER_ID
9908       ,SYSDATE
9909       ,FND_GLOBAL.USER_ID
9910       ,SYSDATE
9911       ,FND_GLOBAL.LOGIN_ID
9912    FROM DUAL;
9913 
9914    If (P_Partial_Copy_YN = 'N') then
9915      EXIT WHEN GetOksCTZFull%NOTFOUND;
9916    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9917      EXIT WHEN GetOksCTZPartial%NOTFOUND;
9918    End If;
9919  End LOOP;
9920 
9921   If GetOksCTZFull%ISOPEN THEN
9922     CLOSE GetOksCTZFull;
9923   Elsif GetOksCTZPartial%ISOPEN THEN
9924     CLOSE GetOksCTZPartial;
9925   End If;
9926 
9927   EXCEPTION
9928         WHEN OTHERS THEN
9929         If (GetOksCTZFull%ISOPEN) then
9930           CLOSE GetOksCTZFull;
9931         Elsif (GetOksCTZPartial%ISOPEN) then
9932           CLOSE GetOksCTZPartial;
9933         End IF;
9934           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9935           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9936           RAISE;
9937 
9938  End copy_oks_coverage_timezones;
9939 
9940 
9941 -----------------------------------------------------------
9942 --===================================================
9943 --  copy_oks_coverage_times
9944 --  Parameters: P_From_Chr_ID : Header ID of source contract
9945 --   	      P_To_Chr_ID   : Header ID of target contract
9946  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9947  --				    or as part of component copy from UI (value = 'Y')
9948 --====================================================
9949 
9950  PROCEDURE copy_oks_coverage_times(P_From_Chr_ID IN NUMBER
9951                                   ,P_To_Chr_ID   IN NUMBER
9952                                   ,P_Partial_Copy_YN IN VARCHAR2
9953 				  ,P_Lines_Count IN NUMBER DEFAULT 0
9954                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
9955 
9956    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_COVERAGE_TIMES';
9957    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9958    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9959 
9960    CURSOR GetOksCTFull IS
9961 	SELECT
9962 	  oksCT.ID AS oksCT_OldID --*
9963 	 ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksCT_NewID --*
9964 	 ,oksCTZ.DNZ_CHR_ID AS oksCT_NewDnzChrID --*
9965 	 ,oksCTZ.ID AS oksCT_NewCovTzeLineID --*
9966 	 ,oksCT.START_HOUR AS oksCT_START_HOUR
9967 	 ,oksCT.START_MINUTE AS oksCT_START_MINUTE
9968 	 ,oksCT.END_HOUR AS oksCT_END_HOUR
9969 	 ,oksCT.END_MINUTE AS oksCT_END_MINUTE
9970 	 ,oksCT.MONDAY_YN AS oksCT_MONDAY_YN
9971 	 ,oksCT.TUESDAY_YN AS oksCT_TUESDAY_YN
9972 	 ,oksCT.WEDNESDAY_YN AS oksCT_WEDNESDAY_YN
9973 	 ,oksCT.THURSDAY_YN AS oksCT_THURSDAY_YN
9974 	 ,oksCT.FRIDAY_YN AS oksCT_FRIDAY_YN
9975 	 ,oksCT.SATURDAY_YN AS oksCT_SATURDAY_YN
9976 	 ,oksCT.SUNDAY_YN AS oksCT_SUNDAY_YN
9977 	 ,oksCT.SECURITY_GROUP_ID AS oksCT_SECURITY_GROUP_ID
9978 	 ,oksCT.PROGRAM_APPLICATION_ID AS oksCT_PROGRAM_APPLICATION_ID
9979 	 ,1 AS oksCT_OBJECT_VERSION_NUMBER
9980 	 ,oksCT.PROGRAM_ID AS oksCT_PROGRAM_ID
9981 	 ,oksCT.PROGRAM_UPDATE_DATE AS oksCT_PROGRAM_UPDATE_DATE
9982 	 ,oksCT.REQUEST_ID AS oksCT_REQUEST_ID
9983 	FROM
9984 	OKS_COVERAGE_TIMES oksCT
9985 	,OKS_COVERAGE_TIMEZONES oksCTZ
9986 	WHERE
9987 	OksCT.COV_TZE_LINE_ID = oksCTZ.ORIG_SYSTEM_ID1
9988 	AND oksCTZ.DNZ_CHR_ID = P_To_Chr_ID
9989 	AND oksCT.DNZ_CHR_ID = P_From_Chr_ID;
9990 
9991    CURSOR GetOksCTPartial IS
9992         SELECT
9993           oksCT.ID AS oksCT_OldID --*
9994          ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksCT_NewID --*
9995          ,oksCTZ.DNZ_CHR_ID AS oksCT_NewDnzChrID --*
9996          ,oksCTZ.ID AS oksCT_NewCovTzeLineID --*
9997          ,oksCT.START_HOUR AS oksCT_START_HOUR
9998          ,oksCT.START_MINUTE AS oksCT_START_MINUTE
9999          ,oksCT.END_HOUR AS oksCT_END_HOUR
10000          ,oksCT.END_MINUTE AS oksCT_END_MINUTE
10001          ,oksCT.MONDAY_YN AS oksCT_MONDAY_YN
10002          ,oksCT.TUESDAY_YN AS oksCT_TUESDAY_YN
10003          ,oksCT.WEDNESDAY_YN AS oksCT_WEDNESDAY_YN
10004          ,oksCT.THURSDAY_YN AS oksCT_THURSDAY_YN
10005          ,oksCT.FRIDAY_YN AS oksCT_FRIDAY_YN
10006          ,oksCT.SATURDAY_YN AS oksCT_SATURDAY_YN
10007          ,oksCT.SUNDAY_YN AS oksCT_SUNDAY_YN
10008          ,oksCT.SECURITY_GROUP_ID AS oksCT_SECURITY_GROUP_ID
10009          ,oksCT.PROGRAM_APPLICATION_ID AS oksCT_PROGRAM_APPLICATION_ID
10010          ,1 AS oksCT_OBJECT_VERSION_NUMBER
10011          ,oksCT.PROGRAM_ID AS oksCT_PROGRAM_ID
10012          ,oksCT.PROGRAM_UPDATE_DATE AS oksCT_PROGRAM_UPDATE_DATE
10013          ,oksCT.REQUEST_ID AS oksCT_REQUEST_ID
10014         FROM
10015          OKS_COVERAGE_TIMES oksCT
10016         ,OKS_COVERAGE_TIMEZONES oksCTZ
10017         ,OKC_K_LINES_B_TEMP okcBT
10018         WHERE
10019         OksCT.COV_TZE_LINE_ID = oksCTZ.ORIG_SYSTEM_ID1
10020         AND oksCTZ.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
10021         AND oksCTZ.CLE_ID = okcBT.ID
10022 	AND oksCTZ.DNZ_CHR_ID = P_To_Chr_ID
10023         AND oksCT.DNZ_CHR_ID = P_From_Chr_ID;
10024 
10025   Begin
10026     x_return_status := l_return_status;
10027     If (P_Partial_Copy_YN = 'N') then
10028       OPEN GetOksCTFull;
10029     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10030       OPEN GetOksCTPartial;
10031     End If;
10032 
10033   LOOP
10034    If (P_Partial_Copy_YN = 'N') then
10035     FETCH GetOksCTFull BULK COLLECT INTO
10036           OksCTRecTab.OksCT_OldID
10037      	 ,OksCTRecTab.OksCT_NewID
10038 	 ,OksCTRecTab.OksCT_NewDnzChrID
10039 	 ,OksCTRecTab.OksCT_NewCovTzeLineID
10040 	 ,OksCTRecTab.OksCT_START_HOUR
10041 	 ,OksCTRecTab.OksCT_START_MINUTE
10042 	 ,OksCTRecTab.OksCT_END_HOUR
10043 	 ,OksCTRecTab.OksCT_END_MINUTE
10044 	 ,OksCTRecTab.OksCT_MONDAY_YN
10045 	 ,OksCTRecTab.OksCT_TUESDAY_YN
10046 	 ,OksCTRecTab.OksCT_WEDNESDAY_YN
10047 	 ,OksCTRecTab.OksCT_THURSDAY_YN
10048 	 ,OksCTRecTab.OksCT_FRIDAY_YN
10049 	 ,OksCTRecTab.OksCT_SATURDAY_YN
10050 	 ,OksCTRecTab.OksCT_SUNDAY_YN
10051 	 ,OksCTRecTab.OksCT_SECURITY_GROUP_ID
10052 	 ,OksCTRecTab.OksCT_PROGRAM_APPLICATION_ID
10053 	 ,OksCTRecTab.OksCT_OBJECT_VERSION_NUMBER
10054 	 ,OksCTRecTab.OksCT_PROGRAM_ID
10055 	 ,OksCTRecTab.OksCT_PROGRAM_UPDATE_DATE
10056 	 ,OksCTRecTab.OksCT_REQUEST_ID
10057  	  LIMIT G_BULK_FETCH_LIMIT;
10058    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10059     FETCH GetOksCTPartial BULK COLLECT INTO
10060           OksCTRecTab.OksCT_OldID
10061          ,OksCTRecTab.OksCT_NewID
10062          ,OksCTRecTab.OksCT_NewDnzChrID
10063          ,OksCTRecTab.OksCT_NewCovTzeLineID
10064          ,OksCTRecTab.OksCT_START_HOUR
10065          ,OksCTRecTab.OksCT_START_MINUTE
10066          ,OksCTRecTab.OksCT_END_HOUR
10067          ,OksCTRecTab.OksCT_END_MINUTE
10068          ,OksCTRecTab.OksCT_MONDAY_YN
10069          ,OksCTRecTab.OksCT_TUESDAY_YN
10070          ,OksCTRecTab.OksCT_WEDNESDAY_YN
10071          ,OksCTRecTab.OksCT_THURSDAY_YN
10072          ,OksCTRecTab.OksCT_FRIDAY_YN
10073          ,OksCTRecTab.OksCT_SATURDAY_YN
10074          ,OksCTRecTab.OksCT_SUNDAY_YN
10075          ,OksCTRecTab.OksCT_SECURITY_GROUP_ID
10076          ,OksCTRecTab.OksCT_PROGRAM_APPLICATION_ID
10077          ,OksCTRecTab.OksCT_OBJECT_VERSION_NUMBER
10078          ,OksCTRecTab.OksCT_PROGRAM_ID
10079          ,OksCTRecTab.OksCT_PROGRAM_UPDATE_DATE
10080          ,OksCTRecTab.OksCT_REQUEST_ID
10081           LIMIT G_BULK_FETCH_LIMIT;
10082 
10083    End If;
10084 
10085    FORALL i in OksCTRecTab.OksCT_NewID.FIRST .. OksCTRecTab.OksCT_NewID.LAST
10086    INSERT INTO OKS_COVERAGE_TIMES(
10087 	    ID
10088 	 ,DNZ_CHR_ID
10089 	 ,COV_TZE_LINE_ID
10090 	 ,START_HOUR
10091 	 ,START_MINUTE
10092 	 ,END_HOUR
10093 	 ,END_MINUTE
10094 	 ,MONDAY_YN
10095 	 ,TUESDAY_YN
10096 	 ,WEDNESDAY_YN
10097 	 ,THURSDAY_YN
10098 	 ,FRIDAY_YN
10099 	 ,SATURDAY_YN
10100 	 ,SUNDAY_YN
10101 	 ,SECURITY_GROUP_ID
10102 	 ,PROGRAM_APPLICATION_ID
10103 	 ,OBJECT_VERSION_NUMBER
10104 	 ,PROGRAM_ID
10105 	 ,PROGRAM_UPDATE_DATE
10106 	 ,REQUEST_ID
10107 	 ,CREATED_BY
10108 	 ,CREATION_DATE
10109 	 ,LAST_UPDATED_BY
10110 	 ,LAST_UPDATE_DATE
10111 	 ,LAST_UPDATE_LOGIN
10112    )
10113    SELECT
10114 	  OksCTRecTab.OksCT_NewID(i)
10115 	 ,OksCTRecTab.OksCT_NewDnzChrID(i)
10116 	 ,OksCTRecTab.OksCT_NewCovTzeLineID(i)
10117 	 ,OksCTRecTab.OksCT_START_HOUR(i)
10118 	 ,OksCTRecTab.OksCT_START_MINUTE(i)
10119 	 ,OksCTRecTab.OksCT_END_HOUR(i)
10120 	 ,OksCTRecTab.OksCT_END_MINUTE(i)
10121 	 ,OksCTRecTab.OksCT_MONDAY_YN(i)
10122 	 ,OksCTRecTab.OksCT_TUESDAY_YN(i)
10123 	 ,OksCTRecTab.OksCT_WEDNESDAY_YN(i)
10124 	 ,OksCTRecTab.OksCT_THURSDAY_YN(i)
10125 	 ,OksCTRecTab.OksCT_FRIDAY_YN(i)
10126 	 ,OksCTRecTab.OksCT_SATURDAY_YN(i)
10127 	 ,OksCTRecTab.OksCT_SUNDAY_YN(i)
10128 	 ,OksCTRecTab.OksCT_SECURITY_GROUP_ID(i)
10129 	 ,OksCTRecTab.OksCT_PROGRAM_APPLICATION_ID(i)
10130 	 ,OksCTRecTab.OksCT_OBJECT_VERSION_NUMBER(i)
10131 	 ,OksCTRecTab.OksCT_PROGRAM_ID(i)
10132 	 ,OksCTRecTab.OksCT_PROGRAM_UPDATE_DATE(i)
10133 	 ,OksCTRecTab.OksCT_REQUEST_ID(i)
10134 	 ,FND_GLOBAL.USER_ID
10135 	 ,SYSDATE
10136 	 ,FND_GLOBAL.USER_ID
10137 	 ,SYSDATE
10138 	 ,FND_GLOBAL.LOGIN_ID
10139 	 FROM DUAL;
10140 
10141     If (P_Partial_Copy_YN = 'N') then
10142       EXIT WHEN GetOksCTFull%NOTFOUND;
10143     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10144       EXIT WHEN GetOksCTPartial%NOTFOUND;
10145     End If;
10146 
10147   END LOOP;
10148 
10149   If GetOksCTFull%ISOPEN THEN
10150    CLOSE GetOksCTFull;
10151   Elsif GetOksCTPartial%ISOPEN THEN
10152    CLOSE GetOksCTPartial;
10153   End If;
10154 
10155     EXCEPTION
10156         WHEN OTHERS THEN
10157         If (GetOksCTFull%ISOPEN) then
10158           CLOSE GetOksCTFull;
10159         Elsif (GetOksCTPartial%ISOPEN) then
10160           CLOSE GetOksCTPartial;
10161         End IF;
10162 
10163           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10164           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10165           RAISE;
10166 
10167   End copy_oks_coverage_times;
10168 
10169 -----------------------------------------------------------
10170 --===================================================
10171 --  copy_oks_pm_activities
10172 --  Parameters: P_From_Chr_ID : Header ID of source contract
10173 --   	      P_To_Chr_ID   : Header ID of target contract
10174  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10175  --				    or as part of component copy from UI (value = 'Y')
10176 --====================================================
10177 
10178   PROCEDURE copy_oks_pm_activities(P_From_Chr_ID IN NUMBER
10179                                   ,P_To_Chr_ID   IN NUMBER
10180                                   ,P_Partial_Copy_YN IN VARCHAR2
10181 				  ,P_Lines_Count IN NUMBER DEFAULT 0
10182                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10183 
10184    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_PM_ACTIVITIES';
10185    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10186    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10187 
10188    CURSOR GetOksPMAFull IS
10189    SELECT
10190     	  oksPMA.ID	AS oksPMA_OldID --*
10191 	 ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMA_NewID --*
10192 	 ,okcB.ID AS oksPMA_NewCleID --*
10193 	 ,okcB.DNZ_CHR_ID AS oksPMA_NewDnzChrID --*
10194 	 ,oksPMA.ACTIVITY_ID AS oksPMA_ACTIVITY_ID
10195 	 ,oksPMA.SELECT_YN AS oksPMA_SELECT_YN
10196 	 ,oksPMA.CONF_REQ_YN AS oksPMA_CONF_REQ_YN
10197 	 ,oksPMA.SCH_EXISTS_YN AS oksPMA_SCH_EXISTS_YN
10198 	 ,oksPMA.PROGRAM_APPLICATION_ID AS oksPMA_PROGRAM_APPLICATION_ID
10199 	 ,oksPMA.PROGRAM_ID AS oksPMA_PROGRAM_ID
10200 	 ,oksPMA.PROGRAM_UPDATE_DATE AS oksPMA_PROGRAM_UPDATE_DATE
10201 	 ,1 AS oksPMA_OBJECT_VERSION_NUMBER
10202 	 ,oksPMA.SECURITY_GROUP_ID AS oksPMA_SECURITY_GROUP_ID
10203 	 ,oksPMA.REQUEST_ID AS oksPMA_REQUEST_ID
10204 	 ,oksPMA.ID AS oksPMA_ORIG_SYSTEM_ID1 --*
10205 	 ,NULL AS oksPMA_ORIG_SYSTEM_SOURCE_CODE --*
10206 	 ,'COPY' AS oksPMA_ORIG_SYSTEM_REFERENCE1 --*
10207    FROM
10208    OKS_PM_ACTIVITIES oksPMA
10209   ,OKC_K_LINES_B okcB
10210   WHERE oksPMA.CLE_ID = okcB.ORIG_SYSTEM_ID1
10211   AND okcB.DNZ_CHR_ID = P_To_Chr_ID
10212   AND oksPMA.DNZ_CHR_ID = P_From_Chr_ID;
10213 
10214    CURSOR GetOksPMAPartial IS
10215    SELECT
10216           oksPMA.ID     AS oksPMA_OldID --*
10217          ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMA_NewID --*
10218          ,okcBT.ID AS oksPMA_NewCleID --*
10219          ,okcBT.DNZ_CHR_ID AS oksPMA_NewDnzChrID --*
10220          ,oksPMA.ACTIVITY_ID AS oksPMA_ACTIVITY_ID
10221          ,oksPMA.SELECT_YN AS oksPMA_SELECT_YN
10222          ,oksPMA.CONF_REQ_YN AS oksPMA_CONF_REQ_YN
10223          ,oksPMA.SCH_EXISTS_YN AS oksPMA_SCH_EXISTS_YN
10224          ,oksPMA.PROGRAM_APPLICATION_ID AS oksPMA_PROGRAM_APPLICATION_ID
10225          ,oksPMA.PROGRAM_ID AS oksPMA_PROGRAM_ID
10226          ,oksPMA.PROGRAM_UPDATE_DATE AS oksPMA_PROGRAM_UPDATE_DATE
10227          ,1 AS oksPMA_OBJECT_VERSION_NUMBER
10228          ,oksPMA.SECURITY_GROUP_ID AS oksPMA_SECURITY_GROUP_ID
10229          ,oksPMA.REQUEST_ID AS oksPMA_REQUEST_ID
10230          ,oksPMA.ID AS oksPMA_ORIG_SYSTEM_ID1 --*
10231          ,NULL AS oksPMA_ORIG_SYSTEM_SOURCE_CODE --*
10232          ,'COPY' AS oksPMA_ORIG_SYSTEM_REFERENCE1 --*
10233    FROM
10234    OKS_PM_ACTIVITIES oksPMA
10235   ,OKC_K_LINES_B_TEMP okcBT
10236   WHERE oksPMA.CLE_ID = okcBT.ORIG_SYSTEM_ID1
10237   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
10238   AND oksPMA.DNZ_CHR_ID = P_From_Chr_ID
10239   AND okcBT.DATES_CHANGED_YN = 'N'; --Added to handle Date Effectivity Fix. Do Bulk copy of oks_pm_schedules only for those lines whose dates
10240                                     --havent been changed from that on the Source Line
10241 
10242   Begin
10243    x_return_status := l_return_status;
10244 
10245   If (P_Partial_Copy_YN = 'N') then
10246    OPEN GetOksPMAFull;
10247   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10248    OPEN GetOksPMAPartial;
10249   End If;
10250 
10251   LOOP
10252    If (P_Partial_Copy_YN = 'N') then
10253      FETCH GetOksPMAFull BULK COLLECT INTO
10254           OksPMARecTab.OksPMA_OldID
10255          ,OksPMARecTab.OksPMA_NewID
10256 	 ,OksPMARecTab.OksPMA_NewCleID
10257 	 ,OksPMARecTab.OksPMA_NewDnzChrID
10258 	 ,OksPMARecTab.OksPMA_ACTIVITY_ID
10259 	 ,OksPMARecTab.OksPMA_SELECT_YN
10260 	 ,OksPMARecTab.OksPMA_CONF_REQ_YN
10261 	 ,OksPMARecTab.OksPMA_SCH_EXISTS_YN
10262 	 ,OksPMARecTab.OksPMA_PROGRAM_APPLICATION_ID
10263 	 ,OksPMARecTab.OksPMA_PROGRAM_ID
10264 	 ,OksPMARecTab.OksPMA_PROGRAM_UPDATE_DATE
10265 	 ,OksPMARecTab.OksPMA_OBJECT_VERSION_NUMBER
10266 	 ,OksPMARecTab.OksPMA_SECURITY_GROUP_ID
10267 	 ,OksPMARecTab.OksPMA_REQUEST_ID
10268 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_ID1
10269 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_SOURCE_CODE
10270 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_REFERENCE1
10271      LIMIT G_BULK_FETCH_LIMIT;
10272    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10273     FETCH GetOksPMAPartial BULK COLLECT INTO
10274           OksPMARecTab.OksPMA_OldID
10275          ,OksPMARecTab.OksPMA_NewID
10276          ,OksPMARecTab.OksPMA_NewCleID
10277          ,OksPMARecTab.OksPMA_NewDnzChrID
10278          ,OksPMARecTab.OksPMA_ACTIVITY_ID
10279          ,OksPMARecTab.OksPMA_SELECT_YN
10280          ,OksPMARecTab.OksPMA_CONF_REQ_YN
10281          ,OksPMARecTab.OksPMA_SCH_EXISTS_YN
10282          ,OksPMARecTab.OksPMA_PROGRAM_APPLICATION_ID
10283          ,OksPMARecTab.OksPMA_PROGRAM_ID
10284          ,OksPMARecTab.OksPMA_PROGRAM_UPDATE_DATE
10285          ,OksPMARecTab.OksPMA_OBJECT_VERSION_NUMBER
10286          ,OksPMARecTab.OksPMA_SECURITY_GROUP_ID
10287          ,OksPMARecTab.OksPMA_REQUEST_ID
10288          ,OksPMARecTab.OksPMA_ORIG_SYSTEM_ID1
10289          ,OksPMARecTab.OksPMA_ORIG_SYSTEM_SOURCE_CODE
10290          ,OksPMARecTab.OksPMA_ORIG_SYSTEM_REFERENCE1
10291      LIMIT G_BULK_FETCH_LIMIT;
10292 
10293    End If;
10294    FORALL i IN OksPMARecTab.OksPMA_NewID.FIRST .. OksPMARecTab.OksPMA_NewID.LAST
10295    INSERT INTO OKS_PM_ACTIVITIES(
10296 	  ID
10297 	 ,CLE_ID
10298 	 ,DNZ_CHR_ID
10299 	 ,ACTIVITY_ID
10300 	 ,SELECT_YN
10301 	 ,CONF_REQ_YN
10302 	 ,SCH_EXISTS_YN
10303 	 ,PROGRAM_APPLICATION_ID
10304 	 ,PROGRAM_ID
10305 	 ,PROGRAM_UPDATE_DATE
10306 	 ,OBJECT_VERSION_NUMBER
10307 	 ,SECURITY_GROUP_ID
10308 	 ,REQUEST_ID
10309 	 ,ORIG_SYSTEM_ID1
10310 	 ,ORIG_SYSTEM_SOURCE_CODE
10311 	 ,ORIG_SYSTEM_REFERENCE1
10312  	 ,CREATED_BY
10313 	 ,CREATION_DATE
10314 	 ,LAST_UPDATED_BY
10315 	 ,LAST_UPDATE_DATE
10316 	 ,LAST_UPDATE_LOGIN
10317    )
10318    SELECT
10319 	  OksPMARecTab.OksPMA_NewID(i)
10320 	 ,OksPMARecTab.OksPMA_NewCleID(i)
10321 	 ,OksPMARecTab.OksPMA_NewDnzChrID(i)
10322 	 ,OksPMARecTab.OksPMA_ACTIVITY_ID(i)
10323 	 ,OksPMARecTab.OksPMA_SELECT_YN(i)
10324 	 ,OksPMARecTab.OksPMA_CONF_REQ_YN(i)
10325 	 ,OksPMARecTab.OksPMA_SCH_EXISTS_YN(i)
10326 	 ,OksPMARecTab.OksPMA_PROGRAM_APPLICATION_ID(i)
10327 	 ,OksPMARecTab.OksPMA_PROGRAM_ID(i)
10328 	 ,OksPMARecTab.OksPMA_PROGRAM_UPDATE_DATE(i)
10329 	 ,OksPMARecTab.OksPMA_OBJECT_VERSION_NUMBER(i)
10330 	 ,OksPMARecTab.OksPMA_SECURITY_GROUP_ID(i)
10331 	 ,OksPMARecTab.OksPMA_REQUEST_ID(i)
10332 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_ID1(i)
10333 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_SOURCE_CODE(i)
10334 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_REFERENCE1(i)
10335 	 ,FND_GLOBAL.USER_ID
10336 	 ,SYSDATE
10337 	 ,FND_GLOBAL.USER_ID
10338 	 ,SYSDATE
10339 	 ,FND_GLOBAL.LOGIN_ID
10340 	 FROM DUAL;
10341 
10342     If (P_Partial_Copy_YN = 'N') then
10343      EXIT WHEN GetOksPMAFull%NOTFOUND;
10344     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10345      EXIT WHEN GetOksPMAPartial%NOTFOUND;
10346     End If;
10347 
10348   END LOOP;
10349 
10350   If GetOksPMAFull%ISOPEN then
10351     CLOSE GetOksPMAFull;
10352   Elsif GetOksPMAPartial%ISOPEN then
10353     CLOSE GetOksPMAPartial;
10354   End If;
10355 
10356       EXCEPTION
10357         WHEN OTHERS THEN
10358         If (GetOksPMAFull%ISOPEN) then
10359           CLOSE GetOksPMAFull;
10360 	Elsif (GetOksPMAPartial%ISOPEN) then
10361 	  CLOSE GetOksPMAPartial;
10362         End IF;
10363 
10364           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10365           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10366           RAISE;
10367 
10368   End copy_oks_pm_activities;
10369 
10370 -----------------------------------------------------------
10371 --===================================================
10372 --  copy_oks_pm_stream_levels
10373 --  Parameters: P_From_Chr_ID : Header ID of source contract
10374 --   	      P_To_Chr_ID   : Header ID of target contract
10375  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10376  --				    or as part of component copy from UI (value = 'Y')
10377 --====================================================
10378 
10379  PROCEDURE copy_oks_pm_stream_levels(P_From_Chr_ID IN NUMBER
10380                                   ,P_To_Chr_ID   IN NUMBER
10381                                   ,P_Partial_Copy_YN IN VARCHAR2
10382 				  ,P_Lines_Count IN NUMBER DEFAULT 0
10383                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10384 
10385    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_PM_STREAM_LEVELS';
10386    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10387    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10388  CURSOR GetOksPMSLFull IS
10389  SELECT
10390    oksPMSL.ID AS oksPMSL_OldID --*
10391   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10392   ,oksPMA.CLE_ID AS oksPMSL_NewCleID --*
10393   ,oksPMA.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10394   ,oksPMA.ID AS oksPMSL_NewActivityLineID --*
10395   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10396   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10397   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10398   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10399   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10400   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10401   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10402   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10403   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10404   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10405   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10406   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10407   ,1 AS oksPMSL_OBJECT_VERSION_NUMBER
10408   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10409   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10410   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10411   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10412   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10413   FROM
10414    OKS_PM_STREAM_LEVELS oksPMSL
10415   ,OKS_PM_ACTIVITIES oksPMA
10416   WHERE
10417       oksPMSL.ACTIVITY_LINE_ID = oksPMA.ORIG_SYSTEM_ID1
10418   AND oksPMA.DNZ_CHR_ID  = P_To_Chr_ID
10419   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID
10420  UNION
10421  SELECT
10422    oksPMSL.ID AS oksPMSL_OldID --*
10423   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10424   ,okcB.ID AS oksPMSL_NewCleID --*
10425   ,okcB.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10426   ,NULL AS oksPMSL_NewActivityLineID --*
10427   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10428   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10429   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10430   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10431   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10432   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10433   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10434   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10435   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10436   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10437   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10438   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10439   ,oksPMSL.OBJECT_VERSION_NUMBER AS oksPMSL_OBJECT_VERSION_NUMBER
10440   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10441   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10442   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10443   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10444   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10445   FROM
10446    OKS_PM_STREAM_LEVELS oksPMSL
10447   ,OKC_K_LINES_B okcB
10448   WHERE
10449       oksPMSL.CLE_ID = okcB.ORIG_SYSTEM_ID1
10450   AND oksPMSL.ACTIVITY_LINE_ID IS NULL
10451   AND okcB.DNZ_CHR_ID = P_To_Chr_ID
10452   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID;
10453 
10454  CURSOR GetOksPMSLPartial IS
10455  SELECT
10456    oksPMSL.ID AS oksPMSL_OldID --*
10457   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10458   ,oksPMA.CLE_ID AS oksPMSL_NewCleID --*
10459   ,oksPMA.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10460   ,oksPMA.ID AS oksPMSL_NewActivityLineID --*
10461   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10462   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10463   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10464   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10465   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10466   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10467   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10468   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10469   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10470   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10471   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10472   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10473   ,1 AS oksPMSL_OBJECT_VERSION_NUMBER
10474   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10475   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10476   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10477   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10478   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10479   FROM
10480    OKS_PM_STREAM_LEVELS oksPMSL
10481   ,OKS_PM_ACTIVITIES oksPMA
10482   ,OKC_K_LINES_B_TEMP okcBT
10483   WHERE
10484       oksPMSL.ACTIVITY_LINE_ID = oksPMA.ORIG_SYSTEM_ID1
10485   AND oksPMA.DNZ_CHR_ID  = okcBT.DNZ_CHR_ID
10486   AND oksPMA.CLE_ID = okcBT.ID
10487   AND oksPMA.DNZ_CHR_ID  = P_To_Chr_ID
10488   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID
10489   AND okcBT.DATES_CHANGED_YN = 'N' --Added to handle Date Effectivity Fix. Do Bulk copy of oks_pm_schedules only for those lines whose dates
10490                                     --havent been changed from that on the Source Line
10491  UNION
10492  SELECT
10493    oksPMSL.ID AS oksPMSL_OldID --*
10494   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10495   ,okcBT.ID AS oksPMSL_NewCleID --*
10496   ,okcBT.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10497   ,NULL AS oksPMSL_NewActivityLineID --*
10498   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10499   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10500   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10501   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10502   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10503   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10504   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10505   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10506   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10507   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10508   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10509   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10510   ,oksPMSL.OBJECT_VERSION_NUMBER AS oksPMSL_OBJECT_VERSION_NUMBER
10511   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10512   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10513   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10514   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10515   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10516   FROM
10517    OKS_PM_STREAM_LEVELS oksPMSL
10518   ,OKC_K_LINES_B_TEMP okcBT
10519   WHERE
10520       oksPMSL.CLE_ID = okcBT.ORIG_SYSTEM_ID1
10521   AND oksPMSL.ACTIVITY_LINE_ID IS NULL
10522   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
10523   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID
10524   AND okcBT.DATES_CHANGED_YN = 'N'; --Added to handle Date Effectivity Fix. Do Bulk copy of oks_pm_schedules only for those lines whose dates
10525                                     --havent been changed from that on the Source Line
10526 
10527  Begin
10528   x_return_status := l_return_status;
10529   If (P_Partial_Copy_YN = 'N') then
10530    OPEN GetOksPMSLFull;
10531   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10532    OPEN GetOksPMSLPartial;
10533   End If;
10534 
10535   LOOP
10536    If (P_Partial_Copy_YN = 'N') then
10537     FETCH GetOksPMSLFull BULK COLLECT INTO
10538           OksPMSLRecTab.OksPMSL_OldID
10539          ,OksPMSLRecTab.OksPMSL_NewID
10540 	 ,OksPMSLRecTab.OksPMSL_NewCleID
10541 	 ,OksPMSLRecTab.OksPMSL_NewDnzChrID
10542 	 ,OksPMSLRecTab.OksPMSL_NewActivityLineID
10543 	 ,OksPMSLRecTab.OksPMSL_SEQUENCE_NUMBER
10544 	 ,OksPMSLRecTab.OksPMSL_NUMBER_OF_OCCURENCES
10545 	 ,OksPMSLRecTab.OksPMSL_START_DATE
10546 	 ,OksPMSLRecTab.OksPMSL_END_DATE
10547 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY
10548 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY_UOM
10549 	 ,OksPMSLRecTab.OksPMSL_OFFSET_DURATION
10550 	 ,OksPMSLRecTab.OksPMSL_OFFSET_UOM
10551 	 ,OksPMSLRecTab.OksPMSL_AUTOSCHEDULE_YN
10552 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_APPLICATION_ID
10553 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_ID
10554 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_UPDATE_DATE
10555 	 ,OksPMSLRecTab.OksPMSL_OBJECT_VERSION_NUMBER
10556 	 ,OksPMSLRecTab.OksPMSL_SECURITY_GROUP_ID
10557 	 ,OksPMSLRecTab.OksPMSL_REQUEST_ID
10558 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYSTEM_ID1
10559 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_SOURCE_CODE
10560 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_REFERENCE1
10561      LIMIT G_BULK_FETCH_LIMIT;
10562    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10563     FETCH GetOksPMSLPartial BULK COLLECT INTO
10564           OksPMSLRecTab.OksPMSL_OldID
10565          ,OksPMSLRecTab.OksPMSL_NewID
10566          ,OksPMSLRecTab.OksPMSL_NewCleID
10567          ,OksPMSLRecTab.OksPMSL_NewDnzChrID
10568          ,OksPMSLRecTab.OksPMSL_NewActivityLineID
10569          ,OksPMSLRecTab.OksPMSL_SEQUENCE_NUMBER
10570          ,OksPMSLRecTab.OksPMSL_NUMBER_OF_OCCURENCES
10571          ,OksPMSLRecTab.OksPMSL_START_DATE
10572          ,OksPMSLRecTab.OksPMSL_END_DATE
10573          ,OksPMSLRecTab.OksPMSL_FREQUENCY
10574          ,OksPMSLRecTab.OksPMSL_FREQUENCY_UOM
10575          ,OksPMSLRecTab.OksPMSL_OFFSET_DURATION
10576          ,OksPMSLRecTab.OksPMSL_OFFSET_UOM
10577          ,OksPMSLRecTab.OksPMSL_AUTOSCHEDULE_YN
10578          ,OksPMSLRecTab.OksPMSL_PROGRAM_APPLICATION_ID
10579          ,OksPMSLRecTab.OksPMSL_PROGRAM_ID
10580          ,OksPMSLRecTab.OksPMSL_PROGRAM_UPDATE_DATE
10581          ,OksPMSLRecTab.OksPMSL_OBJECT_VERSION_NUMBER
10582          ,OksPMSLRecTab.OksPMSL_SECURITY_GROUP_ID
10583          ,OksPMSLRecTab.OksPMSL_REQUEST_ID
10584          ,OksPMSLRecTab.OksPMSL_ORIG_SYSTEM_ID1
10585          ,OksPMSLRecTab.OksPMSL_ORIG_SYS_SOURCE_CODE
10586          ,OksPMSLRecTab.OksPMSL_ORIG_SYS_REFERENCE1
10587      LIMIT G_BULK_FETCH_LIMIT;
10588 
10589    End If;
10590 
10591       FORALL i IN OksPMSLRecTab.OksPMSL_NewID.FIRST .. OksPMSLRecTab.OksPMSL_NewID.LAST
10592       INSERT INTO OKS_PM_STREAM_LEVELS (
10593           ID
10594 	 ,CLE_ID
10595 	 ,DNZ_CHR_ID
10596 	 ,ACTIVITY_LINE_ID
10597 	 ,SEQUENCE_NUMBER
10598 	 ,NUMBER_OF_OCCURENCES
10599 	 ,START_DATE
10600 	 ,END_DATE
10601 	 ,FREQUENCY
10602 	 ,FREQUENCY_UOM
10603 	 ,OFFSET_DURATION
10604 	 ,OFFSET_UOM
10605 	 ,AUTOSCHEDULE_YN
10606 	 ,PROGRAM_APPLICATION_ID
10607 	 ,PROGRAM_ID
10608 	 ,PROGRAM_UPDATE_DATE
10609 	 ,OBJECT_VERSION_NUMBER
10610 	 ,SECURITY_GROUP_ID
10611 	 ,REQUEST_ID
10612 	 ,ORIG_SYSTEM_ID1
10613 	 ,ORIG_SYSTEM_SOURCE_CODE
10614 	 ,ORIG_SYSTEM_REFERENCE1
10615 	 ,CREATED_BY
10616 	 ,CREATION_DATE
10617 	 ,LAST_UPDATED_BY
10618 	 ,LAST_UPDATE_DATE
10619 	 ,LAST_UPDATE_LOGIN
10620       )
10621      SELECT
10622     	  OksPMSLRecTab.OksPMSL_NewID(i)
10623 	 ,OksPMSLRecTab.OksPMSL_NewCleID(i)
10624 	 ,OksPMSLRecTab.OksPMSL_NewDnzChrID(i)
10625 	 ,OksPMSLRecTab.OksPMSL_NewActivityLineID(i)
10626 	 ,OksPMSLRecTab.OksPMSL_SEQUENCE_NUMBER(i)
10627 	 ,OksPMSLRecTab.OksPMSL_NUMBER_OF_OCCURENCES(i)
10628 	 ,OksPMSLRecTab.OksPMSL_START_DATE(i)
10629 	 ,OksPMSLRecTab.OksPMSL_END_DATE(i)
10630 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY(i)
10631 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY_UOM(i)
10632 	 ,OksPMSLRecTab.OksPMSL_OFFSET_DURATION(i)
10633 	 ,OksPMSLRecTab.OksPMSL_OFFSET_UOM(i)
10634 	 ,OksPMSLRecTab.OksPMSL_AUTOSCHEDULE_YN(i)
10635 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_APPLICATION_ID(i)
10636 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_ID(i)
10637 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_UPDATE_DATE(i)
10638 	 ,OksPMSLRecTab.OksPMSL_OBJECT_VERSION_NUMBER(i)
10639 	 ,OksPMSLRecTab.OksPMSL_SECURITY_GROUP_ID(i)
10640 	 ,OksPMSLRecTab.OksPMSL_REQUEST_ID(i)
10641 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYSTEM_ID1(i)
10642 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_SOURCE_CODE(i)
10643 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_REFERENCE1(i)
10644          ,FND_GLOBAL.USER_ID
10645 	 ,SYSDATE
10646 	 ,FND_GLOBAL.USER_ID
10647 	 ,SYSDATE
10648 	 ,FND_GLOBAL.LOGIN_ID
10649    FROM DUAL;
10650 
10651    IF (P_Partial_Copy_YN = 'N') then
10652     EXIT WHEN GetOksPMSLFull%NOTFOUND;
10653    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10654     EXIT WHEN GetOksPMSLPartial%NOTFOUND;
10655    End If;
10656 
10657   END LOOP;
10658 
10659   If (GetOksPMSLFull%ISOPEN) then
10660     CLOSE GetOksPMSLFull;
10661   Elsif (GetOksPMSLPartial%ISOPEN) then
10662     CLOSE GetOksPMSLPartial;
10663   End If;
10664 
10665         EXCEPTION
10666         WHEN OTHERS THEN
10667         If (GetOksPMSLFull%ISOPEN) then
10668           CLOSE GetOksPMSLFull;
10669         Elsif (GetOksPMSLPartial%ISOPEN) then
10670           CLOSE GetOksPMSLPartial;
10671         End IF;
10672 
10673           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10674           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10675           RAISE;
10676 
10677 
10678  End copy_oks_pm_stream_levels;
10679 
10680 -----------------------------------------------------------
10681 --===================================================
10682 --  copy_oks_pm_schedules
10683 --  Parameters: P_From_Chr_ID : Header ID of source contract
10684 --   	      P_To_Chr_ID   : Header ID of target contract
10685  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10686  --				    or as part of component copy from UI (value = 'Y')
10687 --====================================================
10688 
10689   PROCEDURE copy_oks_pm_schedules(P_From_Chr_ID IN NUMBER
10690                                   ,P_To_Chr_ID   IN NUMBER
10691                                   ,P_Partial_Copy_YN IN VARCHAR2
10692 				  ,P_Lines_Count IN NUMBER DEFAULT 0
10693                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10694 
10695    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_PM_SCHEDULES';
10696    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10697    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10698  CURSOR GetOksPMSCHFull IS
10699  SELECT
10700    oksPMSCH.ID AS oksPMSCH_OldID --*
10701   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSCH_NewID --*
10702   ,oksPMSCH.RULE_ID AS oksPMSCH_RULE_ID
10703   ,1 AS oksPMSCH_OBJECT_VERSION_NUMBER
10704   ,oksPMSL.DNZ_CHR_ID AS oksPMSCH_NewDnzChrID --*
10705   ,oksPMSL.CLE_ID AS oksPMSCH_NewCleID --*
10706   ,oksPMSCH.SCH_SEQUENCE AS oksPMSCH_SCH_SEQUENCE
10707   ,oksPMSCH.SCHEDULE_DATE AS oksPMSCH_SCHEDULE_DATE
10708   ,oksPMSCH.SCHEDULE_DATE_FROM AS oksPMSCH_SCHEDULE_DATE_FROM
10709   ,oksPMSCH.SCHEDULE_DATE_TO AS oksPMSCH_SCHEDULE_DATE_TO
10710   ,oksPMSCH.PMA_RULE_ID AS oksPMSCH_PMA_RULE_ID
10711   ,oksPMSCH.PMP_RULE_ID AS oksPMSCH_PMP_RULE_ID
10712   ,oksPMSL.ACTIVITY_LINE_ID AS oksPMSCH_NewActivityLineID --*
10713   ,oksPMSL.ID AS oksPMSCH_NewStreamLineID --*
10714   ,oksPMSCH.SECURITY_GROUP_ID AS oksPMSCH_SECURITY_GROUP_ID
10715   ,oksPMSCH.PROGRAM_APPLICATION_ID AS oksPMSCH_PROG_APPLICATION_ID
10716   ,oksPMSCH.PROGRAM_ID AS oksPMSCH_PROGRAM_ID
10717   ,oksPMSCH.PROGRAM_UPDATE_DATE AS oksPMSCH_PROGRAM_UPDATE_DATE
10718   ,oksPMSCH.REQUEST_ID AS oksPMSCH_REQUEST_ID
10719  FROM
10720   OKS_PM_SCHEDULES oksPMSCH
10721  ,OKS_PM_STREAM_LEVELS oksPMSL
10722   WHERE
10723   oksPMSCH.STREAM_LINE_ID = oksPMSL.ORIG_SYSTEM_ID1
10724   AND oksPMSL.DNZ_CHR_ID = P_To_Chr_ID
10725   AND oksPMSCH.DNZ_CHR_ID = P_From_Chr_ID;
10726 
10727  CURSOR GetOksPMSCHPartial IS
10728  SELECT
10729    oksPMSCH.ID AS oksPMSCH_OldID --*
10730   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSCH_NewID --*
10731   ,oksPMSCH.RULE_ID AS oksPMSCH_RULE_ID
10732   ,1 AS oksPMSCH_OBJECT_VERSION_NUMBER
10733   ,oksPMSL.DNZ_CHR_ID AS oksPMSCH_NewDnzChrID --*
10734   ,oksPMSL.CLE_ID AS oksPMSCH_NewCleID --*
10735   ,oksPMSCH.SCH_SEQUENCE AS oksPMSCH_SCH_SEQUENCE
10736   ,oksPMSCH.SCHEDULE_DATE AS oksPMSCH_SCHEDULE_DATE
10737   ,oksPMSCH.SCHEDULE_DATE_FROM AS oksPMSCH_SCHEDULE_DATE_FROM
10738   ,oksPMSCH.SCHEDULE_DATE_TO AS oksPMSCH_SCHEDULE_DATE_TO
10739   ,oksPMSCH.PMA_RULE_ID AS oksPMSCH_PMA_RULE_ID
10740   ,oksPMSCH.PMP_RULE_ID AS oksPMSCH_PMP_RULE_ID
10741   ,oksPMSL.ACTIVITY_LINE_ID AS oksPMSCH_NewActivityLineID --*
10742   ,oksPMSL.ID AS oksPMSCH_NewStreamLineID --*
10743   ,oksPMSCH.SECURITY_GROUP_ID AS oksPMSCH_SECURITY_GROUP_ID
10744   ,oksPMSCH.PROGRAM_APPLICATION_ID AS oksPMSCH_PROG_APPLICATION_ID
10745   ,oksPMSCH.PROGRAM_ID AS oksPMSCH_PROGRAM_ID
10746   ,oksPMSCH.PROGRAM_UPDATE_DATE AS oksPMSCH_PROGRAM_UPDATE_DATE
10747   ,oksPMSCH.REQUEST_ID AS oksPMSCH_REQUEST_ID
10748  FROM
10749   OKS_PM_SCHEDULES oksPMSCH
10750  ,OKS_PM_STREAM_LEVELS oksPMSL
10751  ,OKC_K_LINES_B_TEMP okcBT
10752   WHERE
10753   oksPMSCH.STREAM_LINE_ID = oksPMSL.ORIG_SYSTEM_ID1
10754   AND oksPMSL.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
10755   AND oksPMSL.CLE_ID = okcBT.ID
10756   AND oksPMSL.DNZ_CHR_ID = P_To_Chr_ID
10757   AND oksPMSCH.DNZ_CHR_ID = P_From_Chr_ID
10758   AND okcBT.DATES_CHANGED_YN = 'N'; --Added to handle Date Effectivity Fix. Do Bulk copy of oks_pm_schedules only for those lines whose dates
10759 				    --havent been changed from that on the Source Line
10760 
10761  Begin
10762   x_return_status := l_return_status;
10763   If (P_Partial_Copy_YN = 'N') then
10764    OPEN GetOksPMSCHFull;
10765   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10766    OPEN GetOksPMSCHPartial;
10767   End If;
10768 
10769   LOOP
10770    If (P_Partial_Copy_YN = 'N') then
10771      FETCH GetOksPMSCHFull BULK COLLECT INTO
10772       OksPMSCHRecTab.OksPMSCH_OldID
10773      ,OksPMSCHRecTab.OksPMSCH_NewID
10774      ,OksPMSCHRecTab.OksPMSCH_RULE_ID
10775      ,OksPMSCHRecTab.OksPMSCH_OBJECT_VERSION_NUMBER
10776      ,OksPMSCHRecTab.OksPMSCH_NewDnzChrID
10777      ,OksPMSCHRecTab.OksPMSCH_NewCleID
10778      ,OksPMSCHRecTab.OksPMSCH_SCH_SEQUENCE
10779      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE
10780      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_FROM
10781      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_TO
10782      ,OksPMSCHRecTab.OksPMSCH_PMA_RULE_ID
10783      ,OksPMSCHRecTab.OksPMSCH_PMP_RULE_ID
10784      ,OksPMSCHRecTab.OksPMSCH_NewActivityLineID
10785      ,OksPMSCHRecTab.OksPMSCH_NewStreamLineID
10786      ,OksPMSCHRecTab.OksPMSCH_SECURITY_GROUP_ID
10787      ,OksPMSCHRecTab.OksPMSCH_PROG_APPLICATION_ID
10788      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_ID
10789      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_UPDATE_DATE
10790      ,OksPMSCHRecTab.OksPMSCH_REQUEST_ID
10791      LIMIT G_BULK_FETCH_LIMIT;
10792    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10793      FETCH GetOksPMSCHPartial BULK COLLECT INTO
10794       OksPMSCHRecTab.OksPMSCH_OldID
10795      ,OksPMSCHRecTab.OksPMSCH_NewID
10796      ,OksPMSCHRecTab.OksPMSCH_RULE_ID
10797      ,OksPMSCHRecTab.OksPMSCH_OBJECT_VERSION_NUMBER
10798      ,OksPMSCHRecTab.OksPMSCH_NewDnzChrID
10799      ,OksPMSCHRecTab.OksPMSCH_NewCleID
10800      ,OksPMSCHRecTab.OksPMSCH_SCH_SEQUENCE
10801      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE
10802      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_FROM
10803      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_TO
10804      ,OksPMSCHRecTab.OksPMSCH_PMA_RULE_ID
10805      ,OksPMSCHRecTab.OksPMSCH_PMP_RULE_ID
10806      ,OksPMSCHRecTab.OksPMSCH_NewActivityLineID
10807      ,OksPMSCHRecTab.OksPMSCH_NewStreamLineID
10808      ,OksPMSCHRecTab.OksPMSCH_SECURITY_GROUP_ID
10809      ,OksPMSCHRecTab.OksPMSCH_PROG_APPLICATION_ID
10810      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_ID
10811      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_UPDATE_DATE
10812      ,OksPMSCHRecTab.OksPMSCH_REQUEST_ID
10813      LIMIT G_BULK_FETCH_LIMIT;
10814 
10815    End If;
10816 
10817    FORALL i IN OksPMSCHRecTab.OksPMSCH_NewID.FIRST .. OksPMSCHRecTab.OksPMSCH_NewID.LAST
10818    INSERT INTO OKS_PM_SCHEDULES(
10819      ID
10820     ,RULE_ID
10821     ,OBJECT_VERSION_NUMBER
10822     ,DNZ_CHR_ID
10823     ,CLE_ID
10824     ,SCH_SEQUENCE
10825     ,SCHEDULE_DATE
10826     ,SCHEDULE_DATE_FROM
10827     ,SCHEDULE_DATE_TO
10828     ,PMA_RULE_ID
10829     ,PMP_RULE_ID
10830     ,ACTIVITY_LINE_ID
10831     ,STREAM_LINE_ID
10832     ,SECURITY_GROUP_ID
10833     ,PROGRAM_APPLICATION_ID
10834     ,PROGRAM_ID
10835     ,PROGRAM_UPDATE_DATE
10836     ,REQUEST_ID
10837     ,CREATED_BY
10838     ,CREATION_DATE
10839     ,LAST_UPDATED_BY
10840     ,LAST_UPDATE_DATE
10841     ,LAST_UPDATE_LOGIN
10842    )
10843   SELECT
10844      OksPMSCHRecTab.OksPMSCH_NewID(i)
10845     ,OksPMSCHRecTab.OksPMSCH_RULE_ID(i)
10846     ,OksPMSCHRecTab.OksPMSCH_OBJECT_VERSION_NUMBER(i)
10847     ,OksPMSCHRecTab.OksPMSCH_NewDnzChrID(i)
10848     ,OksPMSCHRecTab.OksPMSCH_NewCleID(i)
10849     ,OksPMSCHRecTab.OksPMSCH_SCH_SEQUENCE(i)
10850     ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE(i)
10851     ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_FROM(i)
10852     ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_TO(i)
10853     ,OksPMSCHRecTab.OksPMSCH_PMA_RULE_ID(i)
10854     ,OksPMSCHRecTab.OksPMSCH_PMP_RULE_ID(i)
10855     ,OksPMSCHRecTab.OksPMSCH_NewActivityLineID(i)
10856     ,OksPMSCHRecTab.OksPMSCH_NewStreamLineID(i)
10857     ,OksPMSCHRecTab.OksPMSCH_SECURITY_GROUP_ID(i)
10858     ,OksPMSCHRecTab.OksPMSCH_PROG_APPLICATION_ID(i)
10859     ,OksPMSCHRecTab.OksPMSCH_PROGRAM_ID(i)
10860     ,OksPMSCHRecTab.OksPMSCH_PROGRAM_UPDATE_DATE(i)
10861     ,OksPMSCHRecTab.OksPMSCH_REQUEST_ID(i)
10862     ,FND_GLOBAL.USER_ID
10863     ,SYSDATE
10864     ,FND_GLOBAL.USER_ID
10865     ,SYSDATE
10866     ,FND_GLOBAL.LOGIN_ID
10867    FROM DUAL;
10868 
10869    If (P_Partial_Copy_YN = 'N') then
10870      EXIT WHEN GetOksPMSCHFull%NOTFOUND;
10871    Elsif (P_Partial_Copy_YN = 'Y') then
10872      EXIT WHEN GetOksPMSCHPartial%NOTFOUND;
10873    End If;
10874 
10875   End LOOP;
10876   If (GetOksPMSCHFull%ISOPEN) then
10877     CLOSE GetOksPMSCHFull;
10878   Elsif (GetOksPMSCHPartial%ISOPEN) then
10879     CLOSE GetOksPMSCHPartial;
10880   End If;
10881 
10882  EXCEPTION
10883         WHEN OTHERS THEN
10884         If (GetOksPMSCHFull%ISOPEN) then
10885           CLOSE GetOksPMSCHFull;
10886 	Elsif (GetOksPMSCHPartial%ISOPEN) then
10887           CLOSE GetOksPMSCHPartial;
10888         End IF;
10889           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10890           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10891           RAISE;
10892 
10893  End copy_oks_pm_schedules;
10894 
10895 -----------------------------------------------------------
10896 --==============================================================
10897 --Procedure copy_pm_for_SkippedLines: Used to create PM Stream levels and PM Schedules for those lines
10898 --lines whose PM schedule related entities couldnt be bulk copied because their effective dates had to
10899 --be changed.
10900 --==============================================================
10901   Procedure copy_pm_for_SkippedLines(p_api_version           IN NUMBER
10902 					,P_To_Chr_ID 		 IN NUMBER
10903         				,p_init_msg_list         IN VARCHAR2 DEFAULT OKC_API.G_FALSE
10904         				,x_return_status         OUT NOCOPY VARCHAR2
10905         				,x_msg_count             OUT NOCOPY NUMBER
10906         				,x_msg_data              OUT NOCOPY VARCHAR2) IS
10907 
10908   l_api_name        CONSTANT VARCHAR2(30) := 'copy_pm_for_SkippedLines';
10909   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10910 
10911   CURSOR GetLinesWithDatesChanged IS
10912   SELECT
10913   a.ID as LINE_ID
10914   from
10915   OKC_K_LINES_B_TEMP a
10916   where a.DNZ_CHR_ID = P_To_Chr_ID
10917   and a.lse_id in (1,19)
10918   and a.DATES_CHANGED_YN = 'Y';
10919 
10920   TYPE lines_tbl_type IS TABLE OF GetLinesWithDatesChanged%ROWTYPE INDEX BY BINARY_INTEGER ;
10921   l_lines_tbl lines_tbl_type;
10922 
10923   --l_Target_Line_ID_WithDtsChngd NUMBER;
10924 
10925   Begin
10926         IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
10927                  FND_LOG.string(FND_LOG.level_procedure
10928                         ,l_module_name
10929                         ,'Entered copy_pm_for_SkippedLines'
10930                          );
10931         END IF;
10932 
10933   OPEN GetLinesWithDatesChanged;
10934   LOOP
10935   FETCH GetLinesWithDatesChanged BULK COLLECT INTO l_lines_tbl LIMIT G_BULK_FETCH_LIMIT;
10936    IF (l_lines_tbl.COUNT > 0) then
10937     FOR i in l_lines_tbl.FIRST..l_lines_tbl.LAST LOOP
10938       Begin
10939          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
10940                  FND_LOG.string(FND_LOG.level_statement
10941                         ,l_module_name
10942                         ,'Target Line ID : '||l_lines_tbl(i).LINE_ID
10943                          );
10944          END IF;
10945 
10946         OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE(p_api_version => p_api_version
10947 						     ,p_init_msg_list => p_init_msg_list
10948                                                      ,x_return_status => x_return_status
10949         					     ,x_msg_count => x_msg_count
10950         					     ,x_msg_data => x_msg_data
10951         					     ,p_contract_line_id => l_lines_tbl(i).LINE_ID);
10952 
10953             If (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
10954                 IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
10955                  FND_LOG.string(FND_LOG.level_statement
10956                         ,l_module_name
10957                         ,'Return status from OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE : x_return_status ='||x_return_status
10958                          );
10959                 END IF;
10960               RETURN;
10961             End If;
10962 
10963             EXCEPTION
10964             WHEN OTHERS THEN
10965                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
10966                  FND_LOG.string(FND_LOG.level_unexpected
10967                         ,l_module_name||'.EXCEPTION'
10968                         ,'Exception in call to OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE, x_return_status ='||x_return_status
10969                          ||'SQLERRM ='||SQLERRM
10970                          );
10971                 END IF;
10972             x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10973             FND_MSG_PUB.add_exc_msg(g_pkg_name, 'OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE', substr(SQLERRM,1,240));
10974             RAISE;
10975       End;
10976     END LOOP; --End LOOP for looping through l_lines_tbl rows
10977    END IF; --End of If check for l_lines_tbl.COUNT > 0
10978 
10979   EXIT WHEN GetLinesWithDatesChanged%NOTFOUND;
10980   END LOOP; --End LOOP for bulk fetch from GetLinesWithDatesChanged cursor
10981    If GetLinesWithDatesChanged%ISOPEN then
10982      CLOSE GetLinesWithDatesChanged;
10983    End If;
10984 
10985      EXCEPTION
10986         WHEN OTHERS THEN
10987           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10988           If GetLinesWithDatesChanged%ISOPEN then
10989            CLOSE GetLinesWithDatesChanged;
10990           End If;
10991           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10992           RAISE;
10993   End copy_pm_for_SkippedLines;
10994 --===================================================
10995 --  copy_oks_pm_action_time_types
10996 --  Parameters: P_From_Chr_ID : Header ID of source contract
10997 --   	      P_To_Chr_ID   : Header ID of target contract
10998  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10999  --				    or as part of component copy from UI (value = 'Y')
11000 --====================================================
11001 
11002  PROCEDURE copy_oks_action_time_types(P_From_Chr_ID IN NUMBER
11003                                   ,P_To_Chr_ID   IN NUMBER
11004                                   ,P_Partial_Copy_YN IN VARCHAR2
11005 				  ,P_Lines_Count IN NUMBER DEFAULT 0
11006                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
11007 
11008    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_ACTION_TIME_TYPES';
11009    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11010    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11011 
11012  CURSOR GetOksATTFull IS
11013  SELECT
11014    oksATT.ID AS oksATT_OldID --*
11015   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksATT_NewID --*
11016   ,okcB.ID AS oksATT_NewCleID--*
11017   ,okcB.DNZ_CHR_ID AS oksATT_NewDnzChrID--*
11018   ,oksATT.ACTION_TYPE_CODE AS oksATT_ACTION_TYPE_CODE
11019   ,oksATT.SECURITY_GROUP_ID AS oksATT_SECURITY_GROUP_ID
11020   ,oksATT.PROGRAM_APPLICATION_ID AS oksATT_PROGRAM_APPLICATION_ID
11021   ,oksATT.PROGRAM_ID AS oksATT_PROGRAM_ID
11022   ,oksATT.PROGRAM_UPDATE_DATE AS oksATT_PROGRAM_UPDATE_DATE
11023   ,oksATT.REQUEST_ID AS oksATT_REQUEST_ID
11024   ,1 AS oksATT_OBJECT_VERSION_NUMBER
11025   ,oksATT.ID AS oksATT_ORIG_SYSTEM_ID1--*
11026   ,NULL AS oksATT_ORIG_SYSTEM_SOURCE_CODE--*
11027   ,'COPY' AS oksATT_ORIG_SYSTEM_REFERENCE1--*
11028  FROM
11029   OKS_ACTION_TIME_TYPES oksATT
11030  ,OKC_K_LINES_B okcB
11031  WHERE oksATT.CLE_ID = okcB.ORIG_SYSTEM_ID1
11032  AND okcB.DNZ_CHR_ID = P_To_Chr_ID
11033  AND oksATT.DNZ_CHR_ID = P_From_Chr_ID;
11034 
11035  CURSOR GetOksATTPartial IS
11036  SELECT
11037    oksATT.ID AS oksATT_OldID --*
11038   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksATT_NewID --*
11039   ,okcBT.ID AS oksATT_NewCleID--*
11040   ,okcBT.DNZ_CHR_ID AS oksATT_NewDnzChrID--*
11041   ,oksATT.ACTION_TYPE_CODE AS oksATT_ACTION_TYPE_CODE
11042   ,oksATT.SECURITY_GROUP_ID AS oksATT_SECURITY_GROUP_ID
11043   ,oksATT.PROGRAM_APPLICATION_ID AS oksATT_PROGRAM_APPLICATION_ID
11044   ,oksATT.PROGRAM_ID AS oksATT_PROGRAM_ID
11045   ,oksATT.PROGRAM_UPDATE_DATE AS oksATT_PROGRAM_UPDATE_DATE
11046   ,oksATT.REQUEST_ID AS oksATT_REQUEST_ID
11047   ,1 AS oksATT_OBJECT_VERSION_NUMBER
11048   ,oksATT.ID AS oksATT_ORIG_SYSTEM_ID1--*
11049   ,NULL AS oksATT_ORIG_SYSTEM_SOURCE_CODE--*
11050   ,'COPY' AS oksATT_ORIG_SYSTEM_REFERENCE1--*
11051  FROM
11052   OKS_ACTION_TIME_TYPES oksATT
11053  ,OKC_K_LINES_B_TEMP okcBT
11054  WHERE oksATT.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11055  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11056  AND oksATT.DNZ_CHR_ID = P_From_Chr_ID;
11057 
11058  Begin
11059   x_return_status := l_return_status;
11060   If (P_Partial_Copy_YN = 'N') then
11061     OPEN GetOksATTFull;
11062   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11063     OPEN GetOksATTPartial;
11064   End If;
11065   LOOP
11066    If (P_Partial_Copy_YN = 'N') then
11067     FETCH GetOksATTFull BULK COLLECT INTO
11068           OksATTRecTab.OksATT_OldID
11069          ,OksATTRecTab.OksATT_NewID
11070 	 ,OksATTRecTab.OksATT_NewCleID
11071 	 ,OksATTRecTab.OksATT_NewDnzChrID
11072 	 ,OksATTRecTab.OksATT_ACTION_TYPE_CODE
11073 	 ,OksATTRecTab.OksATT_SECURITY_GROUP_ID
11074 	 ,OksATTRecTab.OksATT_PROGRAM_APPLICATION_ID
11075 	 ,OksATTRecTab.OksATT_PROGRAM_ID
11076 	 ,OksATTRecTab.OksATT_PROGRAM_UPDATE_DATE
11077 	 ,OksATTRecTab.OksATT_REQUEST_ID
11078 	 ,OksATTRecTab.OksATT_OBJECT_VERSION_NUMBER
11079 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_ID1
11080 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_SOURCE_CODE
11081 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_REFERENCE1
11082       LIMIT G_BULK_FETCH_LIMIT;
11083    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11084     FETCH GetOksATTPartial BULK COLLECT INTO
11085           OksATTRecTab.OksATT_OldID
11086          ,OksATTRecTab.OksATT_NewID
11087          ,OksATTRecTab.OksATT_NewCleID
11088          ,OksATTRecTab.OksATT_NewDnzChrID
11089          ,OksATTRecTab.OksATT_ACTION_TYPE_CODE
11090          ,OksATTRecTab.OksATT_SECURITY_GROUP_ID
11091          ,OksATTRecTab.OksATT_PROGRAM_APPLICATION_ID
11092          ,OksATTRecTab.OksATT_PROGRAM_ID
11093          ,OksATTRecTab.OksATT_PROGRAM_UPDATE_DATE
11094          ,OksATTRecTab.OksATT_REQUEST_ID
11095          ,OksATTRecTab.OksATT_OBJECT_VERSION_NUMBER
11096          ,OksATTRecTab.OksATT_ORIG_SYSTEM_ID1
11097          ,OksATTRecTab.OksATT_ORIG_SYSTEM_SOURCE_CODE
11098          ,OksATTRecTab.OksATT_ORIG_SYSTEM_REFERENCE1
11099       LIMIT G_BULK_FETCH_LIMIT;
11100 
11101    End If;
11102 
11103    FORALL i IN OksATTRecTab.OksATT_NewID.FIRST .. OksATTRecTab.OksATT_NewID.LAST
11104    INSERT INTO OKS_ACTION_TIME_TYPES(
11105 	  ID
11106 	 ,CLE_ID
11107 	 ,DNZ_CHR_ID
11108 	 ,ACTION_TYPE_CODE
11109 	 ,SECURITY_GROUP_ID
11110 	 ,PROGRAM_APPLICATION_ID
11111 	 ,PROGRAM_ID
11112 	 ,PROGRAM_UPDATE_DATE
11113 	 ,REQUEST_ID
11114 	 ,OBJECT_VERSION_NUMBER
11115 	 ,ORIG_SYSTEM_ID1
11116 	 ,ORIG_SYSTEM_SOURCE_CODE
11117 	 ,ORIG_SYSTEM_REFERENCE1
11118 	 ,CREATED_BY
11119 	 ,CREATION_DATE
11120 	 ,LAST_UPDATED_BY
11121 	 ,LAST_UPDATE_DATE
11122 	 ,LAST_UPDATE_LOGIN
11123    )
11124    SELECT
11125           OksATTRecTab.OksATT_NewID(i)
11126 	 ,OksATTRecTab.OksATT_NewCleID(i)
11127 	 ,OksATTRecTab.OksATT_NewDnzChrID(i)
11128 	 ,OksATTRecTab.OksATT_ACTION_TYPE_CODE(i)
11129 	 ,OksATTRecTab.OksATT_SECURITY_GROUP_ID(i)
11130 	 ,OksATTRecTab.OksATT_PROGRAM_APPLICATION_ID(i)
11131 	 ,OksATTRecTab.OksATT_PROGRAM_ID(i)
11132 	 ,OksATTRecTab.OksATT_PROGRAM_UPDATE_DATE(i)
11133 	 ,OksATTRecTab.OksATT_REQUEST_ID(i)
11134 	 ,OksATTRecTab.OksATT_OBJECT_VERSION_NUMBER(i)
11135 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_ID1(i)
11136 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_SOURCE_CODE(i)
11137 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_REFERENCE1(i)
11138          ,FND_GLOBAL.USER_ID
11139 	 ,SYSDATE
11140 	 ,FND_GLOBAL.USER_ID
11141 	 ,SYSDATE
11142 	 ,FND_GLOBAL.LOGIN_ID
11143    FROM DUAL;
11144 
11145    If (P_Partial_Copy_YN = 'N') then
11146     EXIT WHEN GetOksATTFull%NOTFOUND;
11147    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11148     EXIT WHEN GetOksATTPartial%NOTFOUND;
11149    End If;
11150 
11151   END LOOP;
11152 
11153   If (GetOksATTFull%ISOPEN) then
11154     CLOSE GetOksATTFull;
11155   Elsif (GetOksATTPartial%ISOPEN) then
11156     CLOSE GetOksATTPartial;
11157   End If;
11158 	EXCEPTION
11159        	  WHEN OTHERS THEN
11160 	   If (GetOksATTFull%ISOPEN) then
11161 	     CLOSE GetOksATTFull;
11162 	   Elsif (GetOksATTPartial%ISOPEN) then
11163              CLOSE GetOksATTPartial;
11164        	   End IF;
11165 
11166            x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11167           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11168           RAISE;
11169 
11170  End copy_oks_action_time_types;
11171 
11172 -----------------------------------------------------
11173 --===================================================
11174 --  copy_oks_pm_action_times
11175 --  Parameters: P_From_Chr_ID : Header ID of source contract
11176 --   	      P_To_Chr_ID   : Header ID of target contract
11177  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11178  --				    or as part of component copy from UI (value = 'Y')
11179 --====================================================
11180 
11181  PROCEDURE copy_oks_action_times(P_From_Chr_ID IN NUMBER
11182                                 ,P_To_Chr_ID   IN NUMBER
11183                                 ,P_Partial_Copy_YN IN VARCHAR2
11184 				,P_Lines_Count IN NUMBER DEFAULT 0
11185                                 ,x_return_status OUT NOCOPY VARCHAR2) IS
11186 
11187    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_ACTION_TIMES';
11188    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11189    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11190 
11191  CURSOR GetOksATFull IS
11192  SELECT
11193   oksAT.ID AS oksAT_OldID
11194  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksAT_NewID --*
11195  ,oksATT.ID AS oksAT_NewCovActionTypeID
11196  ,oksATT.CLE_ID AS oksAT_NewCleID
11197  ,oksATT.DNZ_CHR_ID AS oksAT_NewDnzChrID
11198  ,oksAT.UOM_CODE AS oksAT_UOM_CODE
11199  ,oksAT.SUN_DURATION AS oksAT_SUN_DURATION
11200  ,oksAT.MON_DURATION AS oksAT_MON_DURATION
11201  ,oksAT.TUE_DURATION AS oksAT_TUE_DURATION
11202  ,oksAT.WED_DURATION AS oksAT_WED_DURATION
11203  ,oksAT.THU_DURATION AS oksAT_THU_DURATION
11204  ,oksAT.FRI_DURATION AS oksAT_FRI_DURATION
11205  ,oksAT.SAT_DURATION AS oksAT_SAT_DURATION
11206  ,oksAT.SECURITY_GROUP_ID AS oksAT_SECURITY_GROUP_ID
11207  ,oksAT.PROGRAM_APPLICATION_ID AS oksAT_PROGRAM_APPLICATION_ID
11208  ,oksAT.PROGRAM_ID AS oksAT_PROGRAM_ID
11209  ,oksAT.PROGRAM_UPDATE_DATE AS oksAT_PROGRAM_UPDATE_DATE
11210  ,oksAT.REQUEST_ID AS oksAT_REQUEST_ID
11211  ,1 AS oksAT_OBJECT_VERSION_NUMBER
11212  FROM
11213   OKS_ACTION_TIMES oksAT
11214  ,OKS_ACTION_TIME_TYPES oksATT
11215  WHERE oksAT.COV_ACTION_TYPE_ID = oksATT.ORIG_SYSTEM_ID1
11216  AND oksATT.DNZ_CHR_ID = P_To_Chr_ID
11217  AND oksAT.DNZ_CHR_ID = P_From_Chr_ID;
11218 
11219 
11220   CURSOR GetOksATPartial IS
11221   SELECT
11222   oksAT.ID AS oksAT_OldID
11223  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksAT_NewID --*
11224  ,oksATT.ID AS oksAT_NewCovActionTypeID
11225  ,oksATT.CLE_ID AS oksAT_NewCleID
11226  ,oksATT.DNZ_CHR_ID AS oksAT_NewDnzChrID
11227  ,oksAT.UOM_CODE AS oksAT_UOM_CODE
11228  ,oksAT.SUN_DURATION AS oksAT_SUN_DURATION
11229  ,oksAT.MON_DURATION AS oksAT_MON_DURATION
11230  ,oksAT.TUE_DURATION AS oksAT_TUE_DURATION
11231  ,oksAT.WED_DURATION AS oksAT_WED_DURATION
11232  ,oksAT.THU_DURATION AS oksAT_THU_DURATION
11233  ,oksAT.FRI_DURATION AS oksAT_FRI_DURATION
11234  ,oksAT.SAT_DURATION AS oksAT_SAT_DURATION
11235  ,oksAT.SECURITY_GROUP_ID AS oksAT_SECURITY_GROUP_ID
11236  ,oksAT.PROGRAM_APPLICATION_ID AS oksAT_PROGRAM_APPLICATION_ID
11237  ,oksAT.PROGRAM_ID AS oksAT_PROGRAM_ID
11238  ,oksAT.PROGRAM_UPDATE_DATE AS oksAT_PROGRAM_UPDATE_DATE
11239  ,oksAT.REQUEST_ID AS oksAT_REQUEST_ID
11240  ,1 AS oksAT_OBJECT_VERSION_NUMBER
11241  FROM
11242   OKS_ACTION_TIMES oksAT
11243  ,OKS_ACTION_TIME_TYPES oksATT
11244  ,OKC_K_LINES_B_TEMP okcBT
11245  WHERE oksAT.COV_ACTION_TYPE_ID = oksATT.ORIG_SYSTEM_ID1
11246  AND oksATT.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
11247  AND oksATT.CLE_ID = okcBT.ID
11248  AND oksATT.DNZ_CHR_ID = P_To_Chr_ID
11249  AND oksAT.DNZ_CHR_ID = P_From_Chr_ID;
11250 
11251  Begin
11252  x_return_status := l_return_status;
11253 
11254  If (P_Partial_Copy_YN = 'N') then
11255   OPEN GetOksATFull;
11256  Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11257   OPEN GetOksATPartial;
11258  End If;
11259 
11260  LOOP
11261   If (P_Partial_Copy_YN = 'N') then
11262     FETCH GetOksATFull BULK COLLECT INTO
11263           OksATRecTab.OksAT_OldID
11264          ,OksATRecTab.OksAT_NewID
11265 	 ,OksATRecTab.OksAT_NewCovActionTypeID
11266 	 ,OksATRecTab.OksAT_NewCleID
11267 	 ,OksATRecTab.OksAT_NewDnzChrID
11268 	 ,OksATRecTab.OksAT_UOM_CODE
11269 	 ,OksATRecTab.OksAT_SUN_DURATION
11270 	 ,OksATRecTab.OksAT_MON_DURATION
11271 	 ,OksATRecTab.OksAT_TUE_DURATION
11272 	 ,OksATRecTab.OksAT_WED_DURATION
11273 	 ,OksATRecTab.OksAT_THU_DURATION
11274 	 ,OksATRecTab.OksAT_FRI_DURATION
11275 	 ,OksATRecTab.OksAT_SAT_DURATION
11276 	 ,OksATRecTab.OksAT_SECURITY_GROUP_ID
11277 	 ,OksATRecTab.OksAT_PROGRAM_APPLICATION_ID
11278 	 ,OksATRecTab.OksAT_PROGRAM_ID
11279 	 ,OksATRecTab.OksAT_PROGRAM_UPDATE_DATE
11280 	 ,OksATRecTab.OksAT_REQUEST_ID
11281 	 ,OksATRecTab.OksAT_OBJECT_VERSION_NUMBER
11282          LIMIT G_BULK_FETCH_LIMIT;
11283   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11284     FETCH GetOksATPartial BULK COLLECT INTO
11285           OksATRecTab.OksAT_OldID
11286          ,OksATRecTab.OksAT_NewID
11287          ,OksATRecTab.OksAT_NewCovActionTypeID
11288          ,OksATRecTab.OksAT_NewCleID
11289          ,OksATRecTab.OksAT_NewDnzChrID
11290          ,OksATRecTab.OksAT_UOM_CODE
11291          ,OksATRecTab.OksAT_SUN_DURATION
11292          ,OksATRecTab.OksAT_MON_DURATION
11293          ,OksATRecTab.OksAT_TUE_DURATION
11294          ,OksATRecTab.OksAT_WED_DURATION
11295          ,OksATRecTab.OksAT_THU_DURATION
11296          ,OksATRecTab.OksAT_FRI_DURATION
11297          ,OksATRecTab.OksAT_SAT_DURATION
11298          ,OksATRecTab.OksAT_SECURITY_GROUP_ID
11299          ,OksATRecTab.OksAT_PROGRAM_APPLICATION_ID
11300          ,OksATRecTab.OksAT_PROGRAM_ID
11301          ,OksATRecTab.OksAT_PROGRAM_UPDATE_DATE
11302          ,OksATRecTab.OksAT_REQUEST_ID
11303          ,OksATRecTab.OksAT_OBJECT_VERSION_NUMBER
11304          LIMIT G_BULK_FETCH_LIMIT;
11305 
11306   End If;
11307 
11308   FORALL i IN OksATRecTab.OksAT_NewID.FIRST .. OksATRecTab.OksAT_NewID.LAST
11309   INSERT INTO OKS_ACTION_TIMES (
11310           ID
11311 	 ,COV_ACTION_TYPE_ID
11312 	 ,CLE_ID
11313 	 ,DNZ_CHR_ID
11314 	 ,UOM_CODE
11315 	 ,SUN_DURATION
11316 	 ,MON_DURATION
11317 	 ,TUE_DURATION
11318 	 ,WED_DURATION
11319 	 ,THU_DURATION
11320 	 ,FRI_DURATION
11321 	 ,SAT_DURATION
11322 	 ,SECURITY_GROUP_ID
11323 	 ,PROGRAM_APPLICATION_ID
11324 	 ,PROGRAM_ID
11325 	 ,PROGRAM_UPDATE_DATE
11326 	 ,REQUEST_ID
11327 	 ,OBJECT_VERSION_NUMBER
11328 	 ,CREATED_BY
11329 	 , CREATION_DATE
11330 	 ,LAST_UPDATED_BY
11331 	 ,LAST_UPDATE_DATE
11332 	 ,LAST_UPDATE_LOGIN
11333        )
11334   SELECT
11335     OksATRecTab.OksAT_NewID(i)
11336    ,OksATRecTab.OksAT_NewCovActionTypeID(i)
11337    ,OksATRecTab.OksAT_NewCleID(i)
11338    ,OksATRecTab.OksAT_NewDnzChrID(i)
11339    ,OksATRecTab.OksAT_UOM_CODE(i)
11340    ,OksATRecTab.OksAT_SUN_DURATION(i)
11341    ,OksATRecTab.OksAT_MON_DURATION(i)
11342    ,OksATRecTab.OksAT_TUE_DURATION(i)
11343    ,OksATRecTab.OksAT_WED_DURATION(i)
11344    ,OksATRecTab.OksAT_THU_DURATION(i)
11345    ,OksATRecTab.OksAT_FRI_DURATION(i)
11346    ,OksATRecTab.OksAT_SAT_DURATION(i)
11347    ,OksATRecTab.OksAT_SECURITY_GROUP_ID(i)
11348    ,OksATRecTab.OksAT_PROGRAM_APPLICATION_ID(i)
11349    ,OksATRecTab.OksAT_PROGRAM_ID(i)
11350    ,OksATRecTab.OksAT_PROGRAM_UPDATE_DATE(i)
11351    ,OksATRecTab.OksAT_REQUEST_ID(i)
11352    ,OksATRecTab.OksAT_OBJECT_VERSION_NUMBER(i)
11353    ,FND_GLOBAL.USER_ID
11354    ,SYSDATE
11355    ,FND_GLOBAL.USER_ID
11356    ,SYSDATE
11357    ,FND_GLOBAL.LOGIN_ID
11358   FROM DUAL;
11359 
11360   If (P_Partial_Copy_YN = 'N') then
11361    EXIT WHEN GetOksATFull%NOTFOUND;
11362   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11363    EXIT WHEN GetOksATPartial%NOTFOUND;
11364   End If;
11365 
11366  END LOOP;
11367  If (GetOksATFull%ISOPEN) then
11368     CLOSE GetOksATFull;
11369  Elsif (GetOksATPartial%ISOPEN) then
11370     CLOSE GetOksATPartial;
11371  End If;
11372 
11373         EXCEPTION
11374           WHEN OTHERS THEN
11375            If (GetOksATFull%ISOPEN) then
11376              CLOSE GetOksATFull;
11377 	   Elsif (GetOksATPartial%ISOPEN) then
11378 	     CLOSE GetOksATPartial;
11379            End IF;
11380 
11381           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11382           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11383           RAISE;
11384 
11385 
11386  End copy_oks_action_times;
11387 
11388 --------------------------------------------------------
11389 --===================================================
11390 --  copy_oks_k_sales_credits
11391 --  Parameters: P_From_Chr_ID : Header ID of source contract
11392 --   	      P_To_Chr_ID   : Header ID of target contract
11393  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11394  --				    or as part of component copy from UI (value = 'Y')
11395 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
11396 --               use cursor GetOksSCFull
11397 --            If (P_Partial_Copy_YN = 'Y') then
11398 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
11399 --                Only rows for only Header , use cursor GetOksSCPartial_H
11400 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
11401 --                Both rows for both Header and Lines need to be copied, use cursor GetOksSCPartial_HNL
11402 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
11403 --                Only rows for chosen Lines are copied, use cursor GetOksSCPartial_L
11404 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
11405 --                nothing needs to be copied, no copy needed
11406 --              End If
11407 --            End If
11408 
11409 --====================================================
11410  PROCEDURE copy_oks_k_sales_credits(P_From_Chr_ID IN NUMBER
11411                                  ,P_To_Chr_ID   IN NUMBER
11412                                  ,P_Partial_Copy_YN IN VARCHAR2
11413                                  ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
11414                                  ,P_Lines_Count IN NUMBER DEFAULT 0
11415                                  ,x_return_status OUT NOCOPY VARCHAR2) IS
11416 
11417    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_SALES_CREDITS';
11418    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11419    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11420 
11421  CURSOR GetOksSCFull IS
11422  SELECT
11423   oksSC.ID AS oksSC_OldID
11424  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11425  ,oksSC.PERCENT AS oksSC_PERCENT
11426  ,okcH.ID AS oksSC_NewChrID
11427  ,NULL AS oksSC_NewCleID
11428  ,oksSC.CTC_ID AS oksSC_CTC_ID
11429  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11430  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11431  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11432  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11433  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11434  FROM
11435    OKS_K_SALES_CREDITS oksSC
11436   ,OKC_K_HEADERS_B okcH
11437  WHERE oksSC.CHR_ID = okcH.ORIG_SYSTEM_ID1
11438  AND oksSC.CLE_ID IS NULL
11439  AND okcH.ID = P_To_Chr_ID
11440  AND oksSC.CHR_ID = P_From_Chr_ID
11441  UNION
11442  SELECT
11443   oksSC.ID AS oksSC_OldID
11444  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11445  ,oksSC.PERCENT AS oksSC_PERCENT
11446  ,okcB.DNZ_CHR_ID AS oksSC_NewChrID
11447  ,okcB.ID AS oksSC_NewCleID
11448  ,oksSC.CTC_ID AS oksSC_CTC_ID
11449  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11450  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11451  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11452  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11453  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11454  FROM
11455   OKS_K_SALES_CREDITS oksSC
11456  ,OKC_K_LINES_B okcB
11457  WHERE oksSC.CLE_ID = okcB.ORIG_SYSTEM_ID1
11458  AND okcB.DNZ_CHR_ID = P_To_Chr_ID
11459  AND oksSC.CHR_ID = P_From_Chr_ID;
11460 
11461  CURSOR GetOksSCPartial_H IS
11462  SELECT
11463   oksSC.ID AS oksSC_OldID
11464  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11465  ,oksSC.PERCENT AS oksSC_PERCENT
11466  ,okcH.ID AS oksSC_NewChrID
11467  ,NULL AS oksSC_NewCleID
11468  ,oksSC.CTC_ID AS oksSC_CTC_ID
11469  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11470  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11471  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11472  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11473  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11474  FROM
11475    OKS_K_SALES_CREDITS oksSC
11476   ,OKC_K_HEADERS_B okcH
11477  WHERE oksSC.CHR_ID = okcH.ORIG_SYSTEM_ID1
11478  AND oksSC.CLE_ID IS NULL
11479  AND okcH.ID = P_To_Chr_ID
11480  AND oksSC.CHR_ID = P_From_Chr_ID;
11481 
11482  CURSOR GetOksSCPartial_L IS
11483  SELECT
11484   oksSC.ID AS oksSC_OldID
11485  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11486  ,oksSC.PERCENT AS oksSC_PERCENT
11487  ,okcBT.DNZ_CHR_ID AS oksSC_NewChrID
11488  ,okcBT.ID AS oksSC_NewCleID
11489  ,oksSC.CTC_ID AS oksSC_CTC_ID
11490  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11491  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11492  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11493  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11494  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11495  FROM
11496    OKS_K_SALES_CREDITS oksSC
11497   ,OKC_K_LINES_B_TEMP okcBT
11498  WHERE
11499      oksSC.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11500  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11501  AND oksSC.CHR_ID = P_From_Chr_ID;
11502 
11503  CURSOR GetOksSCPartial_HNL IS
11504   SELECT
11505   oksSC.ID AS oksSC_OldID
11506  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11507  ,oksSC.PERCENT AS oksSC_PERCENT
11508  ,okcH.ID AS oksSC_NewChrID
11509  ,NULL AS oksSC_NewCleID
11510  ,oksSC.CTC_ID AS oksSC_CTC_ID
11511  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11512  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11513  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11514  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11515  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11516  FROM
11517    OKS_K_SALES_CREDITS oksSC
11518   ,OKC_K_HEADERS_B okcH
11519  WHERE oksSC.CHR_ID = okcH.ORIG_SYSTEM_ID1
11520  AND oksSC.CLE_ID IS NULL
11521  AND okcH.ID = P_To_Chr_ID
11522  AND oksSC.CHR_ID = P_From_Chr_ID
11523  UNION
11524   SELECT
11525   oksSC.ID AS oksSC_OldID
11526  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11527  ,oksSC.PERCENT AS oksSC_PERCENT
11528  ,okcBT.DNZ_CHR_ID AS oksSC_NewChrID
11529  ,okcBT.ID AS oksSC_NewCleID
11530  ,oksSC.CTC_ID AS oksSC_CTC_ID
11531  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11532  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11533  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11534  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11535  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11536  FROM
11537    OKS_K_SALES_CREDITS oksSC
11538   ,OKC_K_LINES_B_TEMP okcBT
11539  WHERE
11540      oksSC.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11541  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11542  AND oksSC.CHR_ID = P_From_Chr_ID;
11543 
11544  Begin
11545   x_return_status := l_return_status;
11546 
11547   If (P_Partial_Copy_YN = 'N') then
11548    OPEN GetOksSCFull;
11549   Elsif (P_Partial_Copy_YN = 'Y') then
11550    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
11551     OPEN GetOksSCPartial_H;
11552    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
11553     OPEN GetOksSCPartial_HNL;
11554    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
11555     OPEN GetOksSCPartial_L;
11556    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
11557     RETURN;
11558    End If;
11559   End If;
11560 
11561   LOOP
11562    IF (P_Partial_Copy_YN = 'N') then
11563     FETCH GetOksSCFull BULK COLLECT INTO
11564      OksSCRecTab.OksSC_OldID
11565     ,OksSCRecTab.OksSC_NewID
11566     ,OksSCRecTab.OksSC_PERCENT
11567     ,OksSCRecTab.OksSC_NewChrID
11568     ,OksSCRecTab.OksSC_NewCleID
11569     ,OksSCRecTab.OksSC_CTC_ID
11570     ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11571     ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11572     ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11573     ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11574     ,OksSCRecTab.OksSC_SALES_GROUP_ID
11575     LIMIT G_BULK_FETCH_LIMIT;
11576    Elsif (P_Partial_Copy_YN = 'Y') then
11577     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
11578      FETCH GetOksSCPartial_H BULK COLLECT INTO
11579       OksSCRecTab.OksSC_OldID
11580      ,OksSCRecTab.OksSC_NewID
11581      ,OksSCRecTab.OksSC_PERCENT
11582      ,OksSCRecTab.OksSC_NewChrID
11583      ,OksSCRecTab.OksSC_NewCleID
11584      ,OksSCRecTab.OksSC_CTC_ID
11585      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11586      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11587      ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11588      ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11589      ,OksSCRecTab.OksSC_SALES_GROUP_ID
11590      LIMIT G_BULK_FETCH_LIMIT;
11591     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
11592      FETCH GetOksSCPartial_HNL BULK COLLECT INTO
11593       OksSCRecTab.OksSC_OldID
11594      ,OksSCRecTab.OksSC_NewID
11595      ,OksSCRecTab.OksSC_PERCENT
11596      ,OksSCRecTab.OksSC_NewChrID
11597      ,OksSCRecTab.OksSC_NewCleID
11598      ,OksSCRecTab.OksSC_CTC_ID
11599      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11600      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11601      ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11602      ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11603      ,OksSCRecTab.OksSC_SALES_GROUP_ID
11604     LIMIT G_BULK_FETCH_LIMIT;
11605 
11606     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
11607      FETCH GetOksSCPartial_L BULK COLLECT INTO
11608       OksSCRecTab.OksSC_OldID
11609      ,OksSCRecTab.OksSC_NewID
11610      ,OksSCRecTab.OksSC_PERCENT
11611      ,OksSCRecTab.OksSC_NewChrID
11612      ,OksSCRecTab.OksSC_NewCleID
11613      ,OksSCRecTab.OksSC_CTC_ID
11614      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11615      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11616      ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11617      ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11618      ,OksSCRecTab.OksSC_SALES_GROUP_ID
11619     LIMIT G_BULK_FETCH_LIMIT;
11620     End If;
11621    End If;
11622 
11623    FORALL i IN OksSCRecTab.OksSC_NewID.FIRST .. OksSCRecTab.OksSC_NewID.LAST
11624    INSERT INTO OKS_K_SALES_CREDITS(
11625     ID
11626    ,PERCENT
11627    ,CHR_ID
11628    ,CLE_ID
11629    ,CTC_ID
11630    ,SALES_CREDIT_TYPE_ID1
11631    ,SALES_CREDIT_TYPE_ID2
11632    ,OBJECT_VERSION_NUMBER
11633    ,SECURITY_GROUP_ID
11634    ,SALES_GROUP_ID
11635    ,CREATED_BY
11636    ,CREATION_DATE
11637    ,LAST_UPDATED_BY
11638    ,LAST_UPDATE_DATE
11639    )
11640    SELECT
11641     OksSCRecTab.OksSC_NewID(i)
11642    ,OksSCRecTab.OksSC_PERCENT(i)
11643    ,OksSCRecTab.OksSC_NewChrID(i)
11644    ,OksSCRecTab.OksSC_NewCleID(i)
11645    ,OksSCRecTab.OksSC_CTC_ID(i)
11646    ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1(i)
11647    ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2(i)
11648    ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER(i)
11649    ,OksSCRecTab.OksSC_SECURITY_GROUP_ID(i)
11650    ,OksSCRecTab.OksSC_SALES_GROUP_ID(i)
11651    ,FND_GLOBAL.USER_ID
11652    ,SYSDATE
11653    ,FND_GLOBAL.USER_ID
11654    ,SYSDATE
11655    FROM DUAL;
11656 
11657    If (P_Partial_Copy_YN = 'N') then
11658     EXIT WHEN GetOksSCFull%NOTFOUND;
11659    Elsif (P_Partial_Copy_YN = 'Y') then
11660     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
11661      EXIT WHEN GetOksSCPartial_H%NOTFOUND;
11662     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
11663      EXIT WHEN GetOksSCPartial_HNL%NOTFOUND;
11664     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
11665      EXIT WHEN GetOksSCPartial_L%NOTFOUND;
11666     End If;
11667    End If;
11668 
11669   END LOOP;
11670 
11671    If GetOksSCFull%ISOPEN then
11672     CLOSE GetOksSCFull;
11673    Elsif GetOksSCPartial_H%ISOPEN then
11674     CLOSE GetOksSCPartial_H;
11675    Elsif GetOksSCPartial_HNL%ISOPEN then
11676     CLOSE GetOksSCPartial_HNL;
11677    Elsif GetOksSCPartial_L%ISOPEN then
11678     CLOSE GetOksSCPartial_L;
11679    End If;
11680 
11681   EXCEPTION
11682           WHEN OTHERS THEN
11683 	   If GetOksSCFull%ISOPEN then
11684 	    CLOSE GetOksSCFull;
11685   	   Elsif GetOksSCPartial_H%ISOPEN then
11686    	    CLOSE GetOksSCPartial_H;
11687   	   Elsif GetOksSCPartial_HNL%ISOPEN then
11688    	    CLOSE GetOksSCPartial_HNL;
11689   	   Elsif GetOksSCPartial_L%ISOPEN then
11690    	    CLOSE GetOksSCPartial_L;
11691    	   End If;
11692 
11693           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11694           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11695           RAISE;
11696 
11697 End copy_oks_k_sales_credits;
11698 
11699 ------------------------------------------------------------
11700 --===================================================
11701 --  copy_oks_billrate_schedules
11702 --  Parameters: P_From_Chr_ID : Header ID of source contract
11703 --   	      P_To_Chr_ID   : Header ID of target contract
11704  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11705  --				    or as part of component copy from UI (value = 'Y')
11706 --====================================================
11707 
11708 PROCEDURE copy_oks_billrate_schedules(P_From_Chr_ID IN NUMBER
11709                                      ,P_To_Chr_ID   IN NUMBER
11710                                      ,P_Partial_Copy_YN IN VARCHAR2
11711 				     ,P_Lines_Count IN NUMBER DEFAULT 0
11712                                      ,x_return_status OUT NOCOPY VARCHAR2) IS
11713 
11714    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_BILLRATE_SCHEDULES';
11715    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11716    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11717 
11718  CURSOR GetOksBSCHFull IS
11719  SELECT
11720   oksBSCH.ID AS oksBSCH_OldID
11721  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksBSCH_NewID
11722  ,okcB.ID AS oksBSCH_NewCleID
11723  ,okcB.CLE_ID AS oksBSCH_NewBTCleID
11724  ,okcB.DNZ_CHR_ID AS oksBSCH_NewDnzChrID
11725  ,oksBSCH.START_HOUR AS oksBSCH_START_HOUR
11726  ,oksBSCH.START_MINUTE AS oksBSCH_START_MINUTE
11727  ,oksBSCH.END_HOUR AS oksBSCH_END_HOUR
11728  ,oksBSCH.END_MINUTE AS oksBSCH_END_MINUTE
11729  ,oksBSCH.MONDAY_FLAG AS oksBSCH_MONDAY_FLAG
11730  ,oksBSCH.TUESDAY_FLAG AS oksBSCH_TUESDAY_FLAG
11731  ,oksBSCH.WEDNESDAY_FLAG AS oksBSCH_WEDNESDAY_FLAG
11732  ,oksBSCH.THURSDAY_FLAG AS oksBSCH_THURSDAY_FLAG
11733  ,oksBSCH.FRIDAY_FLAG AS oksBSCH_FRIDAY_FLAG
11734  ,oksBSCH.SATURDAY_FLAG AS oksBSCH_SATURDAY_FLAG
11735  ,oksBSCH.SUNDAY_FLAG AS oksBSCH_SUNDAY_FLAG
11736  ,oksBSCH.OBJECT1_ID1 AS oksBSCH_OBJECT1_ID1
11737  ,oksBSCH.OBJECT1_ID2 AS oksBSCH_OBJECT1_ID2
11738  ,oksBSCH.JTOT_OBJECT1_CODE AS oksBSCH_JTOT_OBJECT1_CODE
11739  ,oksBSCH.BILL_RATE_CODE AS oksBSCH_BILL_RATE_CODE
11740  ,oksBSCH.FLAT_RATE AS oksBSCH_FLAT_RATE
11741  ,oksBSCH.UOM AS oksBSCH_UOM
11742  ,oksBSCH.HOLIDAY_YN AS oksBSCH_HOLIDAY_YN
11743  ,oksBSCH.PERCENT_OVER_LIST_PRICE AS oksBSCH_PCT_OVER_LIST_PRICE
11744  ,oksBSCH.PROGRAM_APPLICATION_ID AS oksBSCH_PRGRM_APPLICATION_ID
11745  ,oksBSCH.PROGRAM_ID AS oksBSCH_PROGRAM_ID
11746  ,oksBSCH.PROGRAM_UPDATE_DATE AS oksBSCH_PROGRAM_UPDATE_DATE
11747  ,oksBSCH.REQUEST_ID AS oksBSCH_REQUEST_ID
11748  ,oksBSCH.SECURITY_GROUP_ID AS oksBSCH_SECURITY_GROUP_ID
11749  ,1 AS oksBSCH_OBJECT_VERSION_NUMBER
11750  FROM
11751   OKS_BILLRATE_SCHEDULES oksBSCH
11752  ,OKC_K_LINES_B okcB
11753  WHERE oksBSCH.CLE_ID = okcB.ORIG_SYSTEM_ID1
11754  AND okcB.DNZ_CHR_ID = P_To_Chr_ID
11755  AND oksBSCH.DNZ_CHR_ID = P_From_Chr_ID;
11756 
11757  CURSOR GetOksBSCHPartial IS
11758  SELECT
11759   oksBSCH.ID AS oksBSCH_OldID
11760  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksBSCH_NewID
11761  ,okcBT.ID AS oksBSCH_NewCleID
11762  ,okcBT.CLE_ID AS oksBSCH_NewBTCleID
11763  ,okcBT.DNZ_CHR_ID AS oksBSCH_NewDnzChrID
11764  ,oksBSCH.START_HOUR AS oksBSCH_START_HOUR
11765  ,oksBSCH.START_MINUTE AS oksBSCH_START_MINUTE
11766  ,oksBSCH.END_HOUR AS oksBSCH_END_HOUR
11767  ,oksBSCH.END_MINUTE AS oksBSCH_END_MINUTE
11768  ,oksBSCH.MONDAY_FLAG AS oksBSCH_MONDAY_FLAG
11769  ,oksBSCH.TUESDAY_FLAG AS oksBSCH_TUESDAY_FLAG
11770  ,oksBSCH.WEDNESDAY_FLAG AS oksBSCH_WEDNESDAY_FLAG
11771  ,oksBSCH.THURSDAY_FLAG AS oksBSCH_THURSDAY_FLAG
11772  ,oksBSCH.FRIDAY_FLAG AS oksBSCH_FRIDAY_FLAG
11773  ,oksBSCH.SATURDAY_FLAG AS oksBSCH_SATURDAY_FLAG
11774  ,oksBSCH.SUNDAY_FLAG AS oksBSCH_SUNDAY_FLAG
11775  ,oksBSCH.OBJECT1_ID1 AS oksBSCH_OBJECT1_ID1
11776  ,oksBSCH.OBJECT1_ID2 AS oksBSCH_OBJECT1_ID2
11777  ,oksBSCH.JTOT_OBJECT1_CODE AS oksBSCH_JTOT_OBJECT1_CODE
11778  ,oksBSCH.BILL_RATE_CODE AS oksBSCH_BILL_RATE_CODE
11779  ,oksBSCH.FLAT_RATE AS oksBSCH_FLAT_RATE
11780  ,oksBSCH.UOM AS oksBSCH_UOM
11781  ,oksBSCH.HOLIDAY_YN AS oksBSCH_HOLIDAY_YN
11782  ,oksBSCH.PERCENT_OVER_LIST_PRICE AS oksBSCH_PCT_OVER_LIST_PRICE
11783  ,oksBSCH.PROGRAM_APPLICATION_ID AS oksBSCH_PRGRM_APPLICATION_ID
11784  ,oksBSCH.PROGRAM_ID AS oksBSCH_PROGRAM_ID
11785  ,oksBSCH.PROGRAM_UPDATE_DATE AS oksBSCH_PROGRAM_UPDATE_DATE
11786  ,oksBSCH.REQUEST_ID AS oksBSCH_REQUEST_ID
11787  ,oksBSCH.SECURITY_GROUP_ID AS oksBSCH_SECURITY_GROUP_ID
11788  ,1 AS oksBSCH_OBJECT_VERSION_NUMBER
11789  FROM
11790   OKS_BILLRATE_SCHEDULES oksBSCH
11791  ,OKC_K_LINES_B_TEMP okcBT
11792  WHERE oksBSCH.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11793  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11794  AND oksBSCH.DNZ_CHR_ID = P_From_Chr_ID;
11795 
11796 
11797  Begin
11798   x_return_status := l_return_status;
11799   If (P_Partial_Copy_YN = 'N') then
11800    OPEN GetOksBSCHFull;
11801   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11802    OPEN GetOksBSCHPartial;
11803   End If;
11804 
11805   LOOP
11806    If (P_Partial_Copy_YN = 'N') then
11807     FETCH GetOksBSCHFull BULK COLLECT INTO
11808           OksBSCHRecTab.OksBSCH_OldID
11809          ,OksBSCHRecTab.OksBSCH_NewID
11810 	 ,OksBSCHRecTab.OksBSCH_NewCleID
11811 	 ,OksBSCHRecTab.OksBSCH_NewBTCleID
11812 	 ,OksBSCHRecTab.OksBSCH_NewDnzChrID
11813 	 ,OksBSCHRecTab.OksBSCH_START_HOUR
11814 	 ,OksBSCHRecTab.OksBSCH_START_MINUTE
11815 	 ,OksBSCHRecTab.OksBSCH_END_HOUR
11816 	 ,OksBSCHRecTab.OksBSCH_END_MINUTE
11817 	 ,OksBSCHRecTab.OksBSCH_MONDAY_FLAG
11818 	 ,OksBSCHRecTab.OksBSCH_TUESDAY_FLAG
11819 	 ,OksBSCHRecTab.OksBSCH_WEDNESDAY_FLAG
11820 	 ,OksBSCHRecTab.OksBSCH_THURSDAY_FLAG
11821 	 ,OksBSCHRecTab.OksBSCH_FRIDAY_FLAG
11822 	 ,OksBSCHRecTab.OksBSCH_SATURDAY_FLAG
11823 	 ,OksBSCHRecTab.OksBSCH_SUNDAY_FLAG
11824 	 ,OksBSCHRecTab.OksBSCH_OBJECT1_ID1
11825 	 ,OksBSCHRecTab.OksBSCH_OBJECT1_ID2
11826 	 ,OksBSCHRecTab.OksBSCH_JTOT_OBJECT1_CODE
11827 	 ,OksBSCHRecTab.OksBSCH_BILL_RATE_CODE
11828 	 ,OksBSCHRecTab.OksBSCH_FLAT_RATE
11829 	 ,OksBSCHRecTab.OksBSCH_UOM
11830 	 ,OksBSCHRecTab.OksBSCH_HOLIDAY_YN
11831 	 ,OksBSCHRecTab.OksBSCH_PCT_OVER_LIST_PRICE
11832 	 ,OksBSCHRecTab.OksBSCH_PRGRM_APPLICATION_ID
11833 	 ,OksBSCHRecTab.OksBSCH_PROGRAM_ID
11834 	 ,OksBSCHRecTab.OksBSCH_PROGRAM_UPDATE_DATE
11835 	 ,OksBSCHRecTab.OksBSCH_REQUEST_ID
11836 	 ,OksBSCHRecTab.OksBSCH_SECURITY_GROUP_ID
11837 	 ,OksBSCHRecTab.OksBSCH_OBJECT_VERSION_NUMBER
11838      LIMIT G_BULK_FETCH_LIMIT;
11839    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11840     FETCH GetOksBSCHPartial BULK COLLECT INTO
11841           OksBSCHRecTab.OksBSCH_OldID
11842          ,OksBSCHRecTab.OksBSCH_NewID
11843          ,OksBSCHRecTab.OksBSCH_NewCleID
11844          ,OksBSCHRecTab.OksBSCH_NewBTCleID
11845          ,OksBSCHRecTab.OksBSCH_NewDnzChrID
11846          ,OksBSCHRecTab.OksBSCH_START_HOUR
11847          ,OksBSCHRecTab.OksBSCH_START_MINUTE
11848          ,OksBSCHRecTab.OksBSCH_END_HOUR
11849          ,OksBSCHRecTab.OksBSCH_END_MINUTE
11850          ,OksBSCHRecTab.OksBSCH_MONDAY_FLAG
11851          ,OksBSCHRecTab.OksBSCH_TUESDAY_FLAG
11852          ,OksBSCHRecTab.OksBSCH_WEDNESDAY_FLAG
11853          ,OksBSCHRecTab.OksBSCH_THURSDAY_FLAG
11854          ,OksBSCHRecTab.OksBSCH_FRIDAY_FLAG
11855          ,OksBSCHRecTab.OksBSCH_SATURDAY_FLAG
11856          ,OksBSCHRecTab.OksBSCH_SUNDAY_FLAG
11857          ,OksBSCHRecTab.OksBSCH_OBJECT1_ID1
11858          ,OksBSCHRecTab.OksBSCH_OBJECT1_ID2
11859          ,OksBSCHRecTab.OksBSCH_JTOT_OBJECT1_CODE
11860          ,OksBSCHRecTab.OksBSCH_BILL_RATE_CODE
11861          ,OksBSCHRecTab.OksBSCH_FLAT_RATE
11862          ,OksBSCHRecTab.OksBSCH_UOM
11863          ,OksBSCHRecTab.OksBSCH_HOLIDAY_YN
11864          ,OksBSCHRecTab.OksBSCH_PCT_OVER_LIST_PRICE
11865          ,OksBSCHRecTab.OksBSCH_PRGRM_APPLICATION_ID
11866          ,OksBSCHRecTab.OksBSCH_PROGRAM_ID
11867          ,OksBSCHRecTab.OksBSCH_PROGRAM_UPDATE_DATE
11868          ,OksBSCHRecTab.OksBSCH_REQUEST_ID
11869          ,OksBSCHRecTab.OksBSCH_SECURITY_GROUP_ID
11870          ,OksBSCHRecTab.OksBSCH_OBJECT_VERSION_NUMBER
11871      LIMIT G_BULK_FETCH_LIMIT;
11872 
11873    End If;
11874 
11875    FORALL i IN OksBSCHRecTab.OksBSCH_NewID.FIRST .. OksBSCHRecTab.OksBSCH_NewID.LAST
11876    INSERT INTO OKS_BILLRATE_SCHEDULES (
11877       ID
11878      ,CLE_ID
11879      ,BT_CLE_ID
11880      ,DNZ_CHR_ID
11881      ,START_HOUR
11882      ,START_MINUTE
11883      ,END_HOUR
11884      ,END_MINUTE
11885      ,MONDAY_FLAG
11886      ,TUESDAY_FLAG
11887      ,WEDNESDAY_FLAG
11888      ,THURSDAY_FLAG
11889      ,FRIDAY_FLAG
11890      ,SATURDAY_FLAG
11891      ,SUNDAY_FLAG
11892      ,OBJECT1_ID1
11893      ,OBJECT1_ID2
11894      ,JTOT_OBJECT1_CODE
11895      ,BILL_RATE_CODE
11896      ,FLAT_RATE
11897      ,UOM
11898      ,HOLIDAY_YN
11899      ,PERCENT_OVER_LIST_PRICE
11900      ,PROGRAM_APPLICATION_ID
11901      ,PROGRAM_ID
11902      ,PROGRAM_UPDATE_DATE
11903      ,REQUEST_ID
11904      ,SECURITY_GROUP_ID
11905      ,OBJECT_VERSION_NUMBER
11906      ,CREATED_BY
11907      ,CREATION_DATE
11908      ,LAST_UPDATED_BY
11909      ,LAST_UPDATE_DATE
11910      ,LAST_UPDATE_LOGIN
11911   )
11912   SELECT
11913    OksBSCHRecTab.OksBSCH_NewID(i)
11914   ,OksBSCHRecTab.OksBSCH_NewCleID(i)
11915   ,OksBSCHRecTab.OksBSCH_NewBTCleID(i)
11916   ,OksBSCHRecTab.OksBSCH_NewDnzChrID(i)
11917   ,OksBSCHRecTab.OksBSCH_START_HOUR(i)
11918   ,OksBSCHRecTab.OksBSCH_START_MINUTE(i)
11919   ,OksBSCHRecTab.OksBSCH_END_HOUR(i)
11920   ,OksBSCHRecTab.OksBSCH_END_MINUTE(i)
11921   ,OksBSCHRecTab.OksBSCH_MONDAY_FLAG(i)
11922   ,OksBSCHRecTab.OksBSCH_TUESDAY_FLAG(i)
11923   ,OksBSCHRecTab.OksBSCH_WEDNESDAY_FLAG(i)
11924   ,OksBSCHRecTab.OksBSCH_THURSDAY_FLAG(i)
11925   ,OksBSCHRecTab.OksBSCH_FRIDAY_FLAG(i)
11926   ,OksBSCHRecTab.OksBSCH_SATURDAY_FLAG(i)
11927   ,OksBSCHRecTab.OksBSCH_SUNDAY_FLAG(i)
11928   ,OksBSCHRecTab.OksBSCH_OBJECT1_ID1(i)
11929   ,OksBSCHRecTab.OksBSCH_OBJECT1_ID2(i)
11930   ,OksBSCHRecTab.OksBSCH_JTOT_OBJECT1_CODE(i)
11931   ,OksBSCHRecTab.OksBSCH_BILL_RATE_CODE(i)
11932   ,OksBSCHRecTab.OksBSCH_FLAT_RATE(i)
11933   ,OksBSCHRecTab.OksBSCH_UOM(i)
11934   ,OksBSCHRecTab.OksBSCH_HOLIDAY_YN(i)
11935   ,OksBSCHRecTab.OksBSCH_PCT_OVER_LIST_PRICE(i)
11936   ,OksBSCHRecTab.OksBSCH_PRGRM_APPLICATION_ID(i)
11937   ,OksBSCHRecTab.OksBSCH_PROGRAM_ID(i)
11938   ,OksBSCHRecTab.OksBSCH_PROGRAM_UPDATE_DATE(i)
11939   ,OksBSCHRecTab.OksBSCH_REQUEST_ID(i)
11940   ,OksBSCHRecTab.OksBSCH_SECURITY_GROUP_ID(i)
11941   ,OksBSCHRecTab.OksBSCH_OBJECT_VERSION_NUMBER(i)
11942   ,FND_GLOBAL.USER_ID
11943   ,SYSDATE
11944   ,FND_GLOBAL.USER_ID
11945   ,SYSDATE
11946   ,FND_GLOBAL.LOGIN_ID
11947   FROM DUAL;
11948 
11949    If (P_Partial_Copy_YN = 'N') then
11950     EXIT WHEN GetOksBSCHFull%NOTFOUND;
11951    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11952     EXIT WHEN GetOksBSCHPartial%NOTFOUND;
11953    End If;
11954 
11955   END LOOP;
11956 
11957   If (GetOksBSCHFull%ISOPEN) then
11958     CLOSE GetOksBSCHFull;
11959   Elsif (GetOksBSCHPartial%ISOPEN) then
11960     CLOSE GetOksBSCHPartial;
11961   End If;
11962 
11963    EXCEPTION
11964           WHEN OTHERS THEN
11965            If (GetOksBSCHFull%ISOPEN) then
11966              CLOSE GetOksBSCHFull;
11967 	   Elsif (GetOksBSCHPartial%ISOPEN) then
11968 	     CLOSE GetOksBSCHPartial;
11969            End IF;
11970 
11971           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11972           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11973           RAISE;
11974 
11975 
11976  End copy_oks_billrate_schedules;
11977 
11978  ------------------------------------------------------------
11979 --===================================================
11980 --  copy_oks_stream_levels_b
11981 --  Parameters: P_From_Chr_ID : Header ID of source contract
11982 --   	      P_To_Chr_ID   : Header ID of target contract
11983  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11984  --				    or as part of component copy from UI (value = 'Y')
11985 --            P_Target_Contract_New_YN : Flag to indicate if copy process was copying to an existing contract (value = 'N')
11986 --                                       or if a new contract header was created as part of the copy process (value = 'Y'). This
11987 --                                       flag gets set to 'Y' just before the call to copy_contract_header procedure in
11988 --                                       copy_components
11989 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
11990 --               use cursor GetOksSLFull
11991 --            If (P_Partial_Copy_YN = 'Y') then
11992 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
11993 --                Only rows for only Header , use cursor GetOksSLPartial_H
11994 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
11995 --                Both rows for both Header and Lines need to be copied, use cursor GetOksSLPartial_HNL
11996 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
11997 --                Only rows for chosen Lines are copied, use cursor GetOksSLPartial_L
11998 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
11999 --                nothing needs to be copied, no copy needed
12000 --              End If
12001 --            End If
12002 --====================================================
12003 
12004  PROCEDURE copy_oks_stream_levels_b(P_From_Chr_ID IN NUMBER
12005                                    ,P_To_Chr_ID   IN NUMBER
12006                                    ,P_Partial_Copy_YN IN VARCHAR2
12007 				   ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
12008 				   ,P_Lines_Count IN NUMBER DEFAULT 0
12009                                    ,x_return_status OUT NOCOPY VARCHAR2) IS
12010 
12011    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_STREAM_LEVELS_B';
12012    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
12013    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
12014 
12015  CURSOR GetOksSLFull IS
12016  SELECT
12017    oksSL.ID AS oksSL_OldID
12018   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12019   ,okcH.ID AS oksSL_NewChrID
12020   ,NULL AS oksSL_NewCleID
12021   ,okcH.ID AS oksSL_NewDnzChrID
12022   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12023   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12024   ,oksSL.START_DATE AS oksSL_START_DATE
12025   ,oksSL.END_DATE AS oksSL_END_DATE
12026   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12027   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12028   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12029   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12030   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12031   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12032   ,oksSL.COMMENTS AS oksSL_COMMENTS
12033   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12034   ,oksSL.AMOUNT AS oksSL_AMOUNT
12035   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12036   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12037   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12038   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12039   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12040   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12041   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12042   FROM
12043     OKS_STREAM_LEVELS_B oksSL
12044    ,OKC_K_HEADERS_B okcH
12045   WHERE
12046   oksSL.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
12047   AND okcH.ID = P_To_Chr_ID
12048   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12049   AND oksSL.CLE_ID IS NULL
12050   AND oksSL.CHR_ID IS NOT NULL
12051   UNION ALL
12052    SELECT
12053    oksSL.ID AS oksSL_OldID
12054   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12055   ,NULL AS oksSL_NewChrID
12056   ,okcBTarget.ID AS oksSL_NewCleID
12057   ,okcBTarget.DNZ_CHR_ID AS oksSL_NewDnzChrID
12058   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12059   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12060   ,oksSL.START_DATE AS oksSL_START_DATE
12061   ,oksSL.END_DATE AS oksSL_END_DATE
12062   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12063   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12064   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12065   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12066   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12067   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12068   ,oksSL.COMMENTS AS oksSL_COMMENTS
12069   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12070   ,oksSL.AMOUNT AS oksSL_AMOUNT
12071   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12072   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12073   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12074   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12075   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12076   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12077   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12078   FROM
12079    OKS_STREAM_LEVELS_B oksSL
12080   ,OKC_K_LINES_B okcBTarget
12081   ,OKC_K_LINES_B okcBSource
12082   WHERE
12083   oksSL.CLE_ID = okcBTarget.ORIG_SYSTEM_ID1
12084   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12085   AND okcBTarget.DNZ_CHR_ID = P_To_Chr_ID
12086   AND oksSL.CHR_ID IS NULL
12087   AND oksSL.CLE_ID IS NOT NULL
12088   AND okcBTarget.ORIG_SYSTEM_ID1 = okcBSource.ID
12089 --AND okcB.DATE_TERMINATED IS NULL;
12090   AND (
12091          (okcBSource.CLE_ID IS NULL 					--Line being copied is a Topline that is:
12092           AND okcBSource.DATE_TERMINATED IS NULL			--a) Not Terminated
12093           AND NOT EXISTS (select b.ID from okc_k_lines_b b		--b) Has no sublines that are Terminated
12094                           where b.CLE_ID= okcBSource.ID
12095                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12096                           and b.DATE_TERMINATED IS NOT NULL
12097 			 )
12098          )
12099       OR
12100          (okcBSource.CLE_ID IS NOT NULL				    --Line being copied is a Subline that is:
12101           AND okcBSource.DATE_TERMINATED IS NULL		    --a) Not Terminated
12102 	  AND NOT EXISTS (select b.ID from okc_k_lines_b b	    --b) Has no peer sublines that are Terminated
12103                           where b.CLE_ID = okcBSource.CLE_ID
12104 	 		 and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12105 	 		 and b.DATE_TERMINATED IS NOT NULL
12106                          )
12107          )
12108       )
12109   --npalepu added on 31-may-2006 for bug # 5178264
12110   And (
12111          (okcBSource.CLE_ID IS NULL                                     --Line being copied is a Topline that is:
12112           AND okcBSource.DATE_CANCELLED IS NULL                         --a) Not Cancelled
12113           AND NOT EXISTS (select b.ID from okc_k_lines_b b              --b) Has no sublines that are Cancelled
12114                           where b.CLE_ID= okcBSource.ID
12115                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12116                           and b.DATE_CANCELLED IS NOT NULL
12117                          )
12118          )
12119       OR
12120          (okcBSource.CLE_ID IS NOT NULL                             --Line being copied is a Subline that is:
12121           AND okcBSource.DATE_CANCELLED IS NULL                     --a) Not Cancelled
12122           AND NOT EXISTS (select b.ID from okc_k_lines_b b          --b) Has no peer sublines that are Cancelled
12123                           where b.CLE_ID = okcBSource.CLE_ID
12124                          and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12125                          and b.DATE_CANCELLED IS NOT NULL
12126                          )
12127          ))
12128   --end npalepu
12129       ;
12130 
12131 ----------------------------------------------------------------------------
12132 --Cursor to be used in Component Copy to copy rows for both Header and Lines
12133 ----------------------------------------------------------------------------
12134  CURSOR GetOksSLPartial_HNL IS
12135  SELECT
12136    oksSL.ID AS oksSL_OldID
12137   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12138   ,okcH.ID AS oksSL_NewChrID
12139   ,NULL AS oksSL_NewCleID
12140   ,okcH.ID AS oksSL_NewDnzChrID
12141   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12142   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12143   ,oksSL.START_DATE AS oksSL_START_DATE
12144   ,oksSL.END_DATE AS oksSL_END_DATE
12145   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12146   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12147   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12148   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12149   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12150   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12151   ,oksSL.COMMENTS AS oksSL_COMMENTS
12152   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12153   ,oksSL.AMOUNT AS oksSL_AMOUNT
12154   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12155   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12156   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12157   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12158   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12159   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12160   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12161   FROM
12162     OKS_STREAM_LEVELS_B oksSL
12163    ,OKC_K_HEADERS_B okcH
12164   WHERE
12165   oksSL.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
12166   AND okcH.ID = P_To_Chr_ID
12167   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12168   AND oksSL.CLE_ID IS NULL
12169   AND oksSL.CHR_ID IS NOT NULL
12170   UNION ALL
12171    SELECT
12172    oksSL.ID AS oksSL_OldID
12173   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12174   ,NULL AS oksSL_NewChrID
12175   ,okcBT.ID AS oksSL_NewCleID
12176   ,okcBT.DNZ_CHR_ID AS oksSL_NewDnzChrID
12177   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12178   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12179   ,oksSL.START_DATE AS oksSL_START_DATE
12180   ,oksSL.END_DATE AS oksSL_END_DATE
12181   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12182   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12183   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12184   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12185   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12186   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12187   ,oksSL.COMMENTS AS oksSL_COMMENTS
12188   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12189   ,oksSL.AMOUNT AS oksSL_AMOUNT
12190   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12191   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12192   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12193   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12194   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12195   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12196   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12197   FROM
12198    OKS_STREAM_LEVELS_B oksSL
12199   ,OKC_K_LINES_B_TEMP okcBT
12200   WHERE
12201   oksSL.CLE_ID = okcBT.ORIG_SYSTEM_ID1
12202   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
12203   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12204   AND oksSL.CLE_ID IS NOT NULL
12205   AND oksSL.CHR_ID IS NULL
12206   --AND (okcBT.DATES_CHANGED_YN = 'N' AND okcBT.DATE_TERMINATED IS NULL);
12207   AND (
12208 	(okcBT.CLE_ID IS NULL 					 --Line being copied is a Topline with
12209 	 AND okcBT.DATES_CHANGED_YN = 'N' 			 --a) Dates not changed to honor target
12210          AND okcBT.DATE_TERMINATED IS NULL			 --b) Is not TERMINATED
12211          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
12212                          where b.CLE_ID = okcBT.ID
12213                          and b.LINE_EXISTS_YN = 'N'
12214                          and b.DATE_TERMINATED is not null)
12215         )
12216        OR
12217         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12218 	 AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12219          AND okcBT.DATES_CHANGED_YN = 'N' 		         --b) Subline's dates havent changed
12220 	 AND okcBT.DATE_TERMINATED IS NULL			 --c) Subline is not TERMINATED
12221 	 AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a	 --d) Has no peer sublines that TERMINATED
12222 			 where 					 --e) Its Top Line being copied doesnt have its Dates Changed
12223                           (a.CLE_ID = okcBT.CLE_ID
12224                           and a.LINE_EXISTS_YN = 'N'
12225 		   	  and a.DATE_TERMINATED IS NOT NULL)
12226                          OR
12227                           (a.ID = okcBT.CLE_ID
12228                            and a.DATES_CHANGED_YN = 'Y'
12229                           )
12230                       )
12231         )
12232        OR
12233         (okcBT.CLE_ID IS NOT NULL				 --Line being copied is a subline that is:
12234 	 AND okcBT.LINE_EXISTS_YN = 'Y'				 --a) Being copied to an existing Target Topline
12235 	 AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'			 --b) It is not TERMINATED
12236         )							 --c) Its Dates haven't been changed with respect to Target TopLine
12237       )
12238   --npalepu added on 31-may-2006 for bug # 5178264
12239   AND (
12240         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12241          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12242          AND okcBT.DATE_CANCELLED IS NULL                        --b) Is not Cancelled
12243          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
12244                          where b.CLE_ID = okcBT.ID
12245                          and b.LINE_EXISTS_YN = 'N'
12246                          and b.DATE_CANCELLED is not null)
12247         )
12248        OR
12249         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12250          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12251          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's dates havent changed
12252          AND okcBT.DATE_CANCELLED IS NULL                        --c) Subline is not Cancelled
12253          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that Cancelled
12254                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12255                           (a.CLE_ID = okcBT.CLE_ID
12256                           and a.LINE_EXISTS_YN = 'N'
12257                           and a.DATE_CANCELLED IS NOT NULL)
12258                          OR
12259                           (a.ID = okcBT.CLE_ID
12260                            and a.DATES_CHANGED_YN = 'Y'
12261                           )
12262                       )
12263         )
12264 
12265        OR
12266         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12267          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12268          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
12269         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12270       )
12271   --end npalepu
12272       ;
12273 --------------------------------------------------------------------------------------
12274 --Cursor to copy rows for only Header ie when lines when chosen by user for copy in UI
12275 --------------------------------------------------------------------------------------
12276  CURSOR GetOksSLPartial_H IS
12277  SELECT
12278    oksSL.ID AS oksSL_OldID
12279   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12280   ,okcH.ID AS oksSL_NewChrID
12281   ,NULL AS oksSL_NewCleID
12282   ,okcH.ID AS oksSL_NewDnzChrID
12283   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12284   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12285   ,oksSL.START_DATE AS oksSL_START_DATE
12286   ,oksSL.END_DATE AS oksSL_END_DATE
12287   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12288   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12289   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12290   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12291   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12292   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12293   ,oksSL.COMMENTS AS oksSL_COMMENTS
12294   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12295   ,oksSL.AMOUNT AS oksSL_AMOUNT
12296   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12297   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12298   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12299   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12300   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12301   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12302   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12303   FROM
12304     OKS_STREAM_LEVELS_B oksSL
12305    ,OKC_K_HEADERS_B okcH
12306   WHERE
12307   oksSL.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
12308   AND okcH.ID = P_To_Chr_ID
12309   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12310   AND oksSL.CLE_ID IS NULL
12311   AND oksSL.CHR_ID IS NOT NULL;
12312 
12313 --------------------------------------------------------------------------------------
12314 --Cursor to copy rows for Lines ie when copying to an existing Target Contract
12315 --------------------------------------------------------------------------------------
12316  CURSOR GetOksSLPartial_L IS
12317  SELECT
12318    oksSL.ID AS oksSL_OldID
12319   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12320   ,NULL AS oksSL_NewChrID
12321   ,okcBT.ID AS oksSL_NewCleID
12322   ,okcBT.DNZ_CHR_ID AS oksSL_NewDnzChrID
12323   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12324   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12325   ,oksSL.START_DATE AS oksSL_START_DATE
12326   ,oksSL.END_DATE AS oksSL_END_DATE
12327   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12328   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12329   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12330   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12331   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12332   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12333   ,oksSL.COMMENTS AS oksSL_COMMENTS
12334   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12335   ,oksSL.AMOUNT AS oksSL_AMOUNT
12336   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12337   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12338   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12339   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12340   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12341   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12342   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12343   FROM
12344    OKS_STREAM_LEVELS_B oksSL
12345   ,OKC_K_LINES_B_TEMP okcBT
12346   WHERE
12347   oksSL.CLE_ID = okcBT.ORIG_SYSTEM_ID1
12348   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12349   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
12350   --AND (okcBT.DATES_CHANGED_YN = 'N' AND okcBT.DATE_TERMINATED IS NULL);
12351   AND (
12352         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12353          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12354          AND okcBT.DATE_TERMINATED IS NULL                       --b) Is not TERMINATED
12355          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
12356                          where b.CLE_ID = okcBT.ID
12357                          and b.LINE_EXISTS_YN = 'N'
12358                          and b.DATE_TERMINATED is not null)
12359         )
12360        OR
12361         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12362          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12363          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's dates havent changed
12364          AND okcBT.DATE_TERMINATED IS NULL                       --c) Subline is not TERMINATED
12365          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that TERMINATED
12366                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12367                           (a.CLE_ID = okcBT.CLE_ID
12368                           and a.LINE_EXISTS_YN = 'N'
12369                           and a.DATE_TERMINATED IS NOT NULL)
12370                          OR
12371                           (a.ID = okcBT.CLE_ID
12372                            and a.DATES_CHANGED_YN = 'Y'
12373                           )
12374                       )
12375         )
12376        OR
12377         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12378          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12379          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not TERMINATED
12380         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12381       )
12382   --npalepu added on 31-may-2006 for bug # 5178264
12383   AND (
12384         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12385          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12386          AND okcBT.DATE_CANCELLED IS NULL                       --b) Is not cancelled
12387          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
12388                          where b.CLE_ID = okcBT.ID
12389                          and b.LINE_EXISTS_YN = 'N'
12390                          and b.DATE_CANCELLED is not null)
12391         )
12392        OR
12393         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12394          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12395          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's dates havent changed
12396          AND okcBT.DATE_CANCELLED IS NULL                        --c) Subline is not Cancelled
12397          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that Cancelled
12398                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12399                           (a.CLE_ID = okcBT.CLE_ID
12400                           and a.LINE_EXISTS_YN = 'N'
12401                           and a.DATE_CANCELLED IS NOT NULL)
12402                          OR
12403                           (a.ID = okcBT.CLE_ID
12404                            and a.DATES_CHANGED_YN = 'Y'
12405                           )
12406                       )
12407         )
12408 
12409        OR
12410         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12411          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12412          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
12413         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12414       )
12415    --end npalepu
12416       ;
12417 
12418  Begin
12419   x_return_status := l_return_status;
12420 --errorout_hk('Entered copy_oks_stream_levels_b');
12421   If (P_Partial_Copy_YN = 'N') then
12422    OPEN GetOksSLFull;
12423   ElsIf (P_Partial_Copy_YN = 'Y') then
12424    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
12425     OPEN GetOksSLPartial_H;
12426    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
12427     OPEN GetOksSLPartial_HNL;
12428    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
12429    --errorout_hk('Opening GetOksSLPartial_L');
12430     OPEN GetOksSLPartial_L;
12431    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
12432     RETURN;
12433    End If;
12434   End If;
12435 
12436 
12437 
12438   LOOP
12439    If (P_Partial_Copy_YN = 'N') then
12440     FETCH GetOksSLFull BULK COLLECT INTO
12441       OksSLRecTab.OksSL_OldID
12442      ,OksSLRecTab.OksSL_NewID
12443      ,OksSLRecTab.OksSL_NewChrID
12444      ,OksSLRecTab.OksSL_NewCleID
12445      ,OksSLRecTab.OksSL_NewDnzChrID
12446      ,OksSLRecTab.OksSL_SEQUENCE_NO
12447      ,OksSLRecTab.OksSL_UOM_CODE
12448      ,OksSLRecTab.OksSL_START_DATE
12449      ,OksSLRecTab.OksSL_END_DATE
12450      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12451      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12452      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12453      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12454      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12455      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12456      ,OksSLRecTab.OksSL_COMMENTS
12457      ,OksSLRecTab.OksSL_DUE_ARR_YN
12458      ,OksSLRecTab.OksSL_AMOUNT
12459      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12460      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12461      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12462      ,OksSLRecTab.OksSL_REQUEST_ID
12463      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12464      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12465      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12466     LIMIT G_BULK_FETCH_LIMIT;
12467    Elsif (P_Partial_Copy_YN = 'Y') then
12468     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
12469       FETCH GetOksSLPartial_H BULK COLLECT INTO
12470       OksSLRecTab.OksSL_OldID
12471      ,OksSLRecTab.OksSL_NewID
12472      ,OksSLRecTab.OksSL_NewChrID
12473      ,OksSLRecTab.OksSL_NewCleID
12474      ,OksSLRecTab.OksSL_NewDnzChrID
12475      ,OksSLRecTab.OksSL_SEQUENCE_NO
12476      ,OksSLRecTab.OksSL_UOM_CODE
12477      ,OksSLRecTab.OksSL_START_DATE
12478      ,OksSLRecTab.OksSL_END_DATE
12479      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12480      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12481      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12482      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12483      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12484      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12485      ,OksSLRecTab.OksSL_COMMENTS
12486      ,OksSLRecTab.OksSL_DUE_ARR_YN
12487      ,OksSLRecTab.OksSL_AMOUNT
12488      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12489      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12490      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12491      ,OksSLRecTab.OksSL_REQUEST_ID
12492      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12493      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12494      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12495     LIMIT G_BULK_FETCH_LIMIT;
12496     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
12497       FETCH GetOksSLPartial_HNL BULK COLLECT INTO
12498       OksSLRecTab.OksSL_OldID
12499      ,OksSLRecTab.OksSL_NewID
12500      ,OksSLRecTab.OksSL_NewChrID
12501      ,OksSLRecTab.OksSL_NewCleID
12502      ,OksSLRecTab.OksSL_NewDnzChrID
12503      ,OksSLRecTab.OksSL_SEQUENCE_NO
12504      ,OksSLRecTab.OksSL_UOM_CODE
12505      ,OksSLRecTab.OksSL_START_DATE
12506      ,OksSLRecTab.OksSL_END_DATE
12507      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12508      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12509      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12510      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12511      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12512      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12513      ,OksSLRecTab.OksSL_COMMENTS
12514      ,OksSLRecTab.OksSL_DUE_ARR_YN
12515      ,OksSLRecTab.OksSL_AMOUNT
12516      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12517      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12518      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12519      ,OksSLRecTab.OksSL_REQUEST_ID
12520      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12521      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12522      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12523     LIMIT G_BULK_FETCH_LIMIT;
12524     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
12525        --errorout_hk('Fetching GetOksSLPartial_L');
12526       FETCH GetOksSLPartial_L BULK COLLECT INTO
12527       OksSLRecTab.OksSL_OldID
12528      ,OksSLRecTab.OksSL_NewID
12529      ,OksSLRecTab.OksSL_NewChrID
12530      ,OksSLRecTab.OksSL_NewCleID
12531      ,OksSLRecTab.OksSL_NewDnzChrID
12532      ,OksSLRecTab.OksSL_SEQUENCE_NO
12533      ,OksSLRecTab.OksSL_UOM_CODE
12534      ,OksSLRecTab.OksSL_START_DATE
12535      ,OksSLRecTab.OksSL_END_DATE
12536      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12537      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12538      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12539      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12540      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12541      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12542      ,OksSLRecTab.OksSL_COMMENTS
12543      ,OksSLRecTab.OksSL_DUE_ARR_YN
12544      ,OksSLRecTab.OksSL_AMOUNT
12545      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12546      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12547      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12548      ,OksSLRecTab.OksSL_REQUEST_ID
12549      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12550      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12551      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12552     LIMIT G_BULK_FETCH_LIMIT;
12553     End If;
12554    End If;
12555 --errorout_hk('GetOksLEPartial_L count -'||OksLERecTab.OksLE_NewID.count);
12556 
12557    FORALL i IN OksSLRecTab.OksSL_NewID.FIRST .. OksSLRecTab.OksSL_NewID.LAST
12558    INSERT INTO OKS_STREAM_LEVELS_B (
12559      ID
12560     ,CHR_ID
12561     ,CLE_ID
12562     ,DNZ_CHR_ID
12563     ,SEQUENCE_NO
12564     ,UOM_CODE
12565     ,START_DATE
12566     ,END_DATE
12567     ,LEVEL_PERIODS
12568     ,UOM_PER_PERIOD
12569     ,ADVANCE_PERIODS
12570     ,LEVEL_AMOUNT
12571     ,INVOICE_OFFSET_DAYS
12572     ,INTERFACE_OFFSET_DAYS
12573     ,COMMENTS
12574     ,DUE_ARR_YN
12575     ,AMOUNT
12576     ,LINES_DETAILED_YN
12577     ,OBJECT_VERSION_NUMBER
12578     ,SECURITY_GROUP_ID
12579     ,REQUEST_ID
12580     ,ORIG_SYSTEM_ID1
12581     ,ORIG_SYSTEM_SOURCE_CODE
12582     ,ORIG_SYSTEM_REFERENCE1
12583     ,CREATED_BY
12584     ,CREATION_DATE
12585     ,LAST_UPDATED_BY
12586     ,LAST_UPDATE_DATE
12587     ,LAST_UPDATE_LOGIN
12588    )
12589    SELECT
12590     OksSLRecTab.OksSL_NewID(i)
12591    ,OksSLRecTab.OksSL_NewChrID(i)
12592    ,OksSLRecTab.OksSL_NewCleID(i)
12593    ,OksSLRecTab.OksSL_NewDnzChrID(i)
12594    ,OksSLRecTab.OksSL_SEQUENCE_NO(i)
12595    ,OksSLRecTab.OksSL_UOM_CODE(i)
12596    ,OksSLRecTab.OksSL_START_DATE(i)
12597    ,OksSLRecTab.OksSL_END_DATE(i)
12598    ,OksSLRecTab.OksSL_LEVEL_PERIODS(i)
12599    ,OksSLRecTab.OksSL_UOM_PER_PERIOD(i)
12600    ,OksSLRecTab.OksSL_ADVANCE_PERIODS(i)
12601    ,OksSLRecTab.OksSL_LEVEL_AMOUNT(i)
12602    ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS(i)
12603    ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS(i)
12604    ,OksSLRecTab.OksSL_COMMENTS(i)
12605    ,OksSLRecTab.OksSL_DUE_ARR_YN(i)
12606    ,OksSLRecTab.OksSL_AMOUNT(i)
12607    ,OksSLRecTab.OksSL_LINES_DETAILED_YN(i)
12608    ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER(i)
12609    ,OksSLRecTab.OksSL_SECURITY_GROUP_ID(i)
12610    ,OksSLRecTab.OksSL_REQUEST_ID(i)
12611    ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1(i)
12612    ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE(i)
12613    ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1(i)
12614    ,FND_GLOBAL.USER_ID
12615    ,SYSDATE
12616    ,FND_GLOBAL.USER_ID
12617    ,SYSDATE
12618    ,FND_GLOBAL.LOGIN_ID
12619    FROM DUAL;
12620 
12621    If (P_Partial_Copy_YN = 'N') then
12622     EXIT WHEN GetOksSLFull%NOTFOUND;
12623    ElsIf (P_Partial_Copy_YN = 'Y') then
12624     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
12625      EXIT WHEN GetOksSLPartial_H%NOTFOUND;
12626     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
12627      EXIT WHEN GetOksSLPartial_HNL%NOTFOUND;
12628     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
12629      EXIT WHEN GetOksSLPartial_L%NOTFOUND;
12630     End If;
12631    End If;
12632 
12633 
12634   END LOOP;
12635 
12636   If (GetOksSLFull%ISOPEN) then
12637    CLOSE GetOksSLFull;
12638   Elsif (GetOksSLPartial_H%ISOPEN) then
12639    CLOSE GetOksSLPartial_H;
12640   Elsif (GetOksSLPartial_HNL%ISOPEN) then
12641    CLOSE GetOksSLPartial_HNL;
12642   Elsif (GetOksSLPartial_L%ISOPEN) then
12643    CLOSE GetOksSLPartial_L;
12644   End If;
12645 
12646      EXCEPTION
12647           WHEN OTHERS THEN
12648   		  If (GetOksSLFull%ISOPEN) then
12649 		   CLOSE GetOksSLFull;
12650 		  Elsif (GetOksSLPartial_H%ISOPEN) then
12651 		   CLOSE GetOksSLPartial_H;
12652 		  Elsif (GetOksSLPartial_HNL%ISOPEN) then
12653 		   CLOSE GetOksSLPartial_HNL;
12654 		  Elsif (GetOksSLPartial_L%ISOPEN) then
12655 		   CLOSE GetOksSLPartial_L;
12656 		  End If;
12657 
12658           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
12659           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
12660           RAISE;
12661 
12662  End copy_oks_stream_levels_b;
12663 
12664  ------------------------------------------------
12665 --===================================================
12666 --  copy_oks_level_elements
12667 --  Parameters: P_From_Chr_ID : Header ID of source contract
12668 --   	      P_To_Chr_ID   : Header ID of target contract
12669  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
12670  --				    or as part of component copy from UI (value = 'Y')
12671 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
12672 --               use cursor GetOksLEFull
12673 --            If (P_Partial_Copy_YN = 'Y') then
12674 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
12675 --                Only rows for only Header , use cursor GetOksLEPartial_H
12676 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
12677 --                Both rows for both Header and Lines need to be copied, use cursor GetOksLEPartial_HNL
12678 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
12679 --                Only rows for chosen Lines are copied, use cursor GetOksLEPartial_L
12680 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
12681 --                nothing needs to be copied, no copy needed
12682 --              End If
12683 --            End If
12684 
12685 --====================================================
12686 
12687  PROCEDURE copy_oks_level_elements(P_From_Chr_ID IN NUMBER
12688                                   ,P_To_Chr_ID   IN NUMBER
12689                                   ,P_Partial_Copy_YN IN VARCHAR2
12690                                   ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
12691                                   ,P_Lines_Count IN NUMBER DEFAULT 0
12692                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
12693 
12694    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_LEVEL_ELEMENTS';
12695    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
12696    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
12697 
12698 /******
12699  CURSOR GetOksLEFull IS
12700  SELECT
12701    oksLE.ID AS oksLE_OldID
12702   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID
12703   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12704   ,oksLE.DATE_START AS oksLE_DATE_START
12705   ,oksLE.AMOUNT AS oksLE_AMOUNT
12706   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12707   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12708   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12709   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12710   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12711   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12712   ,NULL AS oksLE_DATE_COMPLETED
12713   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12714   ,oksSL.ID AS oksLE_NewRulID --*
12715   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12716   ,oksSL.CLE_ID AS oksLE_NewCleID --*
12717   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12718   ,decode(oksSL.CLE_ID,NULL,NULL,(select
12719                                   decode(a.CLE_ID,NULL,a.ID,a.CLE_ID)
12720     				  from okc_k_lines_b a
12721     				  where
12722         			  a.ID = oksSL.CLE_ID
12723     				  and a.DNZ_CHR_ID = P_To_Chr_ID )) AS oksLE_NewParentCleID --*
12724   ,oksLE.DATE_END AS oksLE_DATE_END
12725   FROM
12726    OKS_LEVEL_ELEMENTS oksLE
12727   ,OKS_STREAM_LEVELS_B oksSL
12728   WHERE
12729   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12730   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12731   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID;
12732 *******/
12733 
12734  CURSOR GetOksLEFull IS
12735  SELECT
12736    oksLE.ID AS oksLE_OldID --*
12737   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12738   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12739   ,oksLE.DATE_START AS oksLE_DATE_START
12740   ,oksLE.AMOUNT AS oksLE_AMOUNT
12741   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12742   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12743   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12744   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12745   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12746   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12747   ,NULL AS oksLE_DATE_COMPLETED
12748   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12749   ,oksSL.ID AS oksLE_NewRulID
12750   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12751   ,NULL AS oksLE_NewCleID --*
12752   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12753   ,NULL AS oksLE_NewParentCleID --*
12754   ,oksLE.DATE_END AS oksLE_DATE_END
12755   FROM
12756    OKS_LEVEL_ELEMENTS oksLE
12757   ,OKS_STREAM_LEVELS_B oksSL
12758   WHERE
12759   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12760   AND oksSL.CHR_ID IS NOT NULL
12761   AND oksSL.CLE_ID IS NULL
12762   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12763   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
12764  UNION ALL
12765   SELECT
12766    oksLE.ID AS oksLE_OldID --*
12767   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12768   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12769   ,oksLE.DATE_START AS oksLE_DATE_START
12770   ,oksLE.AMOUNT AS oksLE_AMOUNT
12771   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12772   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12773   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12774   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12775   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12776   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12777   ,NULL AS oksLE_DATE_COMPLETED
12778   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12779   ,oksSL.ID AS oksLE_NewRulID --*
12780   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12781   ,oksSL.CLE_ID AS oksLE_NewCleID --*
12782   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12783   ,decode(okcBTarget.CLE_ID,NULL,okcBTarget.ID,okcBTarget.CLE_ID) AS NewParentCleID
12784   ,oksLE.DATE_END AS oksLE_DATE_END
12785   FROM
12786    OKS_LEVEL_ELEMENTS oksLE
12787   ,OKS_STREAM_LEVELS_B oksSL
12788   ,OKC_K_LINES_B okcBTarget
12789   ,OKC_K_LINES_B okcBSource
12790   WHERE
12791   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12792   AND oksSL.CHR_ID IS NULL
12793   AND oksSL.CLE_ID IS NOT NULL
12794   AND oksSL.DNZ_CHR_ID = okcBTarget.DNZ_CHR_ID
12795   AND oksSL.CLE_ID = okcBTarget.ID
12796   AND okcBTarget.ORIG_SYSTEM_ID1 = okcBSource.ID
12797   --AND okcB.DATE_TERMINATED IS NULL;
12798   AND (
12799          (okcBSource.CLE_ID IS NULL                                     --Line being copied is a Topline that is:
12800           AND okcBSource.DATE_TERMINATED IS NULL                        --a) Not Terminated
12801           AND NOT EXISTS (select b.ID from okc_k_lines_b b              --b) Has no sublines that are Terminated
12802                           where b.CLE_ID= okcBSource.ID
12803                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12804                           and b.DATE_TERMINATED IS NOT NULL
12805                          )
12806          )
12807       OR
12808          (okcBSource.CLE_ID IS NOT NULL                             --Line being copied is a Subline that is:
12809           AND okcBSource.DATE_TERMINATED IS NULL                    --a) Not Terminated
12810           AND NOT EXISTS (select b.ID from okc_k_lines_b b          --b) Has no peer sublines that are Terminated
12811                           where b.CLE_ID = okcBSource.CLE_ID
12812                          and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12813                          and b.DATE_TERMINATED IS NOT NULL
12814                          )
12815          )
12816       )
12817   --npalepu added on 31-may-2006 for bug # 5178264
12818   AND (
12819          (okcBSource.CLE_ID IS NULL                                     --Line being copied is a Topline that is:
12820           AND okcBSource.DATE_CANCELLED IS NULL                        --a) Not Cancelled
12821           AND NOT EXISTS (select b.ID from okc_k_lines_b b              --b) Has no sublines that are Cancelled
12822                           where b.CLE_ID= okcBSource.ID
12823                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12824                           and b.DATE_CANCELLED IS NOT NULL
12825                          )
12826          )
12827       OR
12828          (okcBSource.CLE_ID IS NOT NULL                             --Line being copied is a Subline that is:
12829           AND okcBSource.DATE_CANCELLED IS NULL                    --a) Not Cancelled
12830           AND NOT EXISTS (select b.ID from okc_k_lines_b b          --b) Has no peer sublines that are Cancelled
12831                           where b.CLE_ID = okcBSource.CLE_ID
12832                          and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12833                          and b.DATE_CANCELLED IS NOT NULL
12834                          )
12835          )
12836       )
12837   --end npalepu
12838   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12839   AND okcBSource.DNZ_CHR_ID = P_From_Chr_ID
12840   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID;
12841 
12842 
12843  CURSOR GetOksLEPartial_H IS
12844  SELECT
12845    oksLE.ID AS oksLE_OldID --*
12846   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12847   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12848   ,oksLE.DATE_START AS oksLE_DATE_START
12849   ,oksLE.AMOUNT AS oksLE_AMOUNT
12850   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12851   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12852   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12853   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12854   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12855   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12856   ,NULL AS oksLE_DATE_COMPLETED
12857   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12858   ,oksSL.ID AS oksLE_NewRulID
12859   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12860   ,NULL AS oksLE_NewCleID --*
12861   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12862   ,NULL AS oksLE_NewParentCleID --*
12863   ,oksLE.DATE_END AS oksLE_DATE_END
12864   FROM
12865    OKS_LEVEL_ELEMENTS oksLE
12866   ,OKS_STREAM_LEVELS_B oksSL
12867   WHERE
12868   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12869   AND oksSL.CHR_ID IS NOT NULL
12870   AND oksSL.CLE_ID IS NULL
12871   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12872   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID;
12873 
12874  CURSOR GetOksLEPartial_L IS
12875  SELECT
12876    oksLE.ID AS oksLE_OldID --*
12877   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12878   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12879   ,oksLE.DATE_START AS oksLE_DATE_START
12880   ,oksLE.AMOUNT AS oksLE_AMOUNT
12881   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12882   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12883   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12884   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12885   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12886   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12887   ,NULL AS oksLE_DATE_COMPLETED
12888   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12889   ,oksSL.ID AS oksLE_NewRulID --*
12890   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12891   ,oksSL.CLE_ID AS oksLE_NewCleID --*
12892   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12893   ,decode(okcBT.CLE_ID,NULL,okcBT.ID,okcBT.CLE_ID) AS NewParentCleID
12894   ,oksLE.DATE_END AS oksLE_DATE_END
12895   FROM
12896    OKS_LEVEL_ELEMENTS oksLE
12897   ,OKS_STREAM_LEVELS_B oksSL
12898   ,OKC_K_LINES_B_TEMP okcBT
12899   WHERE
12900   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12901   AND oksSL.CHR_ID IS NULL
12902   AND oksSL.CLE_ID IS NOT NULL
12903   AND oksSL.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
12904   AND oksSL.CLE_ID = okcBT.ID
12905   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12906   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
12907 --  AND (okcBT.DATES_CHANGED_YN = 'N' and okcBT.DATE_TERMINATED IS NULL);
12908   AND (
12909         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12910          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12911          AND okcBT.DATE_TERMINATED IS NULL                       --b) Is not TERMINATED
12912          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
12913                          where b.CLE_ID = okcBT.ID
12914                          and b.LINE_EXISTS_YN = 'N'
12915                          and b.DATE_TERMINATED is not null)
12916         )
12917        OR
12918         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12919          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12920          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
12921          AND okcBT.DATE_TERMINATED IS NULL                       --c) Subline is not TERMINATED
12922          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are TERMINATED
12923                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12924                           (a.CLE_ID = okcBT.CLE_ID
12925                           and a.LINE_EXISTS_YN = 'N'
12926                           and a.DATE_TERMINATED IS NOT NULL)
12927                          OR
12928                           (a.ID = okcBT.CLE_ID
12929                            and a.DATES_CHANGED_YN = 'Y'
12930                           )
12931                       )
12932         )
12933        OR
12934         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12935          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12936          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not TERMINATED
12937         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12938       )
12939   --npalepu added on 31-may-2006 for bug # 5178264
12940   AND (
12941         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12942          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12943          AND okcBT.DATE_CANCELLED IS NULL                        --b) Is not Cancelled
12944          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
12945                          where b.CLE_ID = okcBT.ID
12946                          and b.LINE_EXISTS_YN = 'N'
12947                          and b.DATE_CANCELLED is not null)
12948         )
12949        OR
12950         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12951          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12952          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
12953          AND okcBT.DATE_CANCELLED IS NULL                        --c) Subline is not Cancelled
12954          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are Cancelled
12955                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12956                           (a.CLE_ID = okcBT.CLE_ID
12957                           and a.LINE_EXISTS_YN = 'N'
12958                           and a.DATE_CANCELLED IS NOT NULL)
12959                          OR
12960                           (a.ID = okcBT.CLE_ID
12961                            and a.DATES_CHANGED_YN = 'Y'
12962                           )
12963                       )
12964         )
12965        OR
12966         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12967          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12968          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
12969         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12970       )
12971   --end npalepu
12972       ;
12973 
12974 
12975  CURSOR GetOksLEPartial_HNL IS
12976  SELECT
12977    oksLE.ID AS oksLE_OldID --*
12978   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12979   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12980   ,oksLE.DATE_START AS oksLE_DATE_START
12981   ,oksLE.AMOUNT AS oksLE_AMOUNT
12982   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12983   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12984   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12985   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12986   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12987   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12988   ,NULL AS oksLE_DATE_COMPLETED
12989   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12990   ,oksSL.ID AS oksLE_NewRulID
12991   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12992   ,NULL AS oksLE_NewCleID --*
12993   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12994   ,NULL AS NewParentCleID --*
12995   ,oksLE.DATE_END AS oksLE_DATE_END
12996   FROM
12997    OKS_LEVEL_ELEMENTS oksLE
12998   ,OKS_STREAM_LEVELS_B oksSL
12999   WHERE
13000   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
13001   AND oksSL.CHR_ID IS NOT NULL
13002   AND oksSL.CLE_ID IS NULL
13003   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
13004   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
13005  UNION ALL
13006  SELECT
13007    oksLE.ID AS oksLE_OldID --*
13008   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
13009   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
13010   ,oksLE.DATE_START AS oksLE_DATE_START
13011   ,oksLE.AMOUNT AS oksLE_AMOUNT
13012   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
13013   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
13014   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
13015   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
13016   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
13017   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
13018   ,NULL AS oksLE_DATE_COMPLETED
13019   ,1 AS oksLE_OBJECT_VERSION_NUMBER
13020   ,oksSL.ID AS oksLE_NewRulID --*
13021   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
13022   ,oksSL.CLE_ID AS oksLE_NewCleID --*
13023   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
13024   ,decode(okcBT.CLE_ID,NULL,okcBT.ID,okcBT.CLE_ID) AS NewParentCleID
13025   ,oksLE.DATE_END AS oksLE_DATE_END
13026   FROM
13027    OKS_LEVEL_ELEMENTS oksLE
13028   ,OKS_STREAM_LEVELS_B oksSL
13029   ,OKC_K_LINES_B_TEMP okcBT
13030   WHERE
13031   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
13032   AND oksSL.CHR_ID IS NULL
13033   AND oksSL.CLE_ID IS NOT NULL
13034   AND oksSL.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
13035   AND oksSL.CLE_ID = okcBT.ID
13036   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
13037   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
13038 --  AND (okcBT.DATES_CHANGED_YN = 'N' AND okcBT.DATE_TERMINATED IS NULL);
13039   AND (
13040         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
13041          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
13042          AND okcBT.DATE_TERMINATED IS NULL                       --b) Is not TERMINATED
13043          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
13044                          where b.CLE_ID = okcBT.ID
13045                          and b.LINE_EXISTS_YN = 'N'
13046                          and b.DATE_TERMINATED is not null)
13047         )
13048        OR
13049         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
13050          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
13051          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
13052          AND okcBT.DATE_TERMINATED IS NULL                       --c) Subline is not TERMINATED
13053          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are TERMINATED
13054                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
13055                           (a.CLE_ID = okcBT.CLE_ID
13056                           and a.LINE_EXISTS_YN = 'N'
13057                           and a.DATE_TERMINATED IS NOT NULL)
13058                          OR
13059                           (a.ID = okcBT.CLE_ID
13060                            and a.DATES_CHANGED_YN = 'Y'
13061                           )
13062                       )
13063         )
13064        OR
13065         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
13066          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
13067          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not TERMINATED
13068         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
13069       )
13070   --npalepu added on 21-may-2006 for bug # 5178264
13071   AND (
13072         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
13073          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
13074          AND okcBT.DATE_CANCELLED IS NULL                       --b) Is not Cancelled
13075          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
13076                          where b.CLE_ID = okcBT.ID
13077                          and b.LINE_EXISTS_YN = 'N'
13078                          and b.DATE_CANCELLED is not null)
13079         )
13080        OR
13081         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
13082          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
13083          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
13084          AND okcBT.DATE_CANCELLED IS NULL                       --c) Subline is not Cancelled
13085          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are Cancelled
13086                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
13087                           (a.CLE_ID = okcBT.CLE_ID
13088                           and a.LINE_EXISTS_YN = 'N'
13089                           and a.DATE_CANCELLED IS NOT NULL)
13090                          OR
13091                           (a.ID = okcBT.CLE_ID
13092                            and a.DATES_CHANGED_YN = 'Y'
13093                           )
13094                       )
13095         )
13096        OR
13097         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
13098          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
13099          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
13100         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
13101       )
13102   --end npalepu
13103       ;
13104 
13105 l_count NUMBER;
13106  Begin
13107  If (P_Partial_Copy_YN = 'N') then
13108   OPEN GetOksLEFull;
13109  Elsif (P_Partial_Copy_YN = 'Y') then
13110   If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
13111     OPEN GetOksLEPartial_H;
13112   Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
13113     OPEN GetOksLEPartial_HNL;
13114   Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
13115   --errorout_hk('Open GetOksLEPartial_L');
13116     OPEN GetOksLEPartial_L;
13117   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
13118     RETURN;
13119   End If;
13120  End If;
13121 
13122  LOOP
13123   If (P_Partial_Copy_YN = 'N') then
13124     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13125          FND_LOG.string(FND_LOG.level_statement
13126                         ,l_module_name
13127                         ,'FETCHing from GetOksLEFull'
13128                          );
13129     END IF;
13130 
13131    FETCH GetOksLEFull BULK COLLECT INTO
13132       OksLERecTab.OksLE_OldID
13133      ,OksLERecTab.OksLE_NewID
13134      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13135      ,OksLERecTab.OksLE_DATE_START
13136      ,OksLERecTab.OksLE_AMOUNT
13137      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13138      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13139      ,OksLERecTab.OksLE_DATE_TRANSACTION
13140      ,OksLERecTab.OksLE_DATE_DUE
13141      ,OksLERecTab.OksLE_DATE_PRINT
13142      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13143      ,OksLERecTab.OksLE_DATE_COMPLETED
13144      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13145      ,OksLERecTab.OksLE_NewRulID
13146      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13147      ,OksLERecTab.OksLE_NewCleID
13148      ,OksLERecTab.OksLE_NewDnzChrID
13149      ,OksLERecTab.OksLE_NewParentCleID
13150      ,OksLERecTab.OksLE_DATE_END
13151    LIMIT G_BULK_FETCH_LIMIT;
13152   Elsif (P_Partial_Copy_YN = 'Y') then
13153    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
13154     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13155          FND_LOG.string(FND_LOG.level_statement
13156                         ,l_module_name
13157                         ,'FETCHing from GetOksLEPartial_H'
13158                          );
13159     END IF;
13160 
13161      FETCH GetOksLEPartial_H BULK COLLECT INTO
13162       OksLERecTab.OksLE_OldID
13163      ,OksLERecTab.OksLE_NewID
13164      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13165      ,OksLERecTab.OksLE_DATE_START
13166      ,OksLERecTab.OksLE_AMOUNT
13167      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13168      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13169      ,OksLERecTab.OksLE_DATE_TRANSACTION
13170      ,OksLERecTab.OksLE_DATE_DUE
13171      ,OksLERecTab.OksLE_DATE_PRINT
13172      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13173      ,OksLERecTab.OksLE_DATE_COMPLETED
13174      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13175      ,OksLERecTab.OksLE_NewRulID
13176      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13177      ,OksLERecTab.OksLE_NewCleID
13178      ,OksLERecTab.OksLE_NewDnzChrID
13179      ,OksLERecTab.OksLE_NewParentCleID
13180      ,OksLERecTab.OksLE_DATE_END
13181      LIMIT G_BULK_FETCH_LIMIT;
13182 
13183    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
13184     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13185          FND_LOG.string(FND_LOG.level_statement
13186                         ,l_module_name
13187                         ,'FETCHing from GetOksLEPartial_HNL'
13188                          );
13189     END IF;
13190 
13191      FETCH GetOksLEPartial_HNL BULK COLLECT INTO
13192       OksLERecTab.OksLE_OldID
13193      ,OksLERecTab.OksLE_NewID
13194      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13195      ,OksLERecTab.OksLE_DATE_START
13196      ,OksLERecTab.OksLE_AMOUNT
13197      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13198      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13199      ,OksLERecTab.OksLE_DATE_TRANSACTION
13200      ,OksLERecTab.OksLE_DATE_DUE
13201      ,OksLERecTab.OksLE_DATE_PRINT
13202      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13203      ,OksLERecTab.OksLE_DATE_COMPLETED
13204      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13205      ,OksLERecTab.OksLE_NewRulID
13206      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13207      ,OksLERecTab.OksLE_NewCleID
13208      ,OksLERecTab.OksLE_NewDnzChrID
13209      ,OksLERecTab.OksLE_NewParentCleID
13210      ,OksLERecTab.OksLE_DATE_END
13211      LIMIT G_BULK_FETCH_LIMIT;
13212 
13213    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
13214     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13215          FND_LOG.string(FND_LOG.level_statement
13216                         ,l_module_name
13217                         ,'FETCHing from GetOksLEPartial_L'
13218                          );
13219     END IF;
13220 --errorout_hk('Fetching GetOksLEPartial_L');
13221      FETCH GetOksLEPartial_L BULK COLLECT INTO
13222       OksLERecTab.OksLE_OldID
13223      ,OksLERecTab.OksLE_NewID
13224      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13225      ,OksLERecTab.OksLE_DATE_START
13226      ,OksLERecTab.OksLE_AMOUNT
13227      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13228      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13229      ,OksLERecTab.OksLE_DATE_TRANSACTION
13230      ,OksLERecTab.OksLE_DATE_DUE
13231      ,OksLERecTab.OksLE_DATE_PRINT
13232      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13233      ,OksLERecTab.OksLE_DATE_COMPLETED
13234      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13235      ,OksLERecTab.OksLE_NewRulID
13236      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13237      ,OksLERecTab.OksLE_NewCleID
13238      ,OksLERecTab.OksLE_NewDnzChrID
13239      ,OksLERecTab.OksLE_NewParentCleID
13240      ,OksLERecTab.OksLE_DATE_END
13241      LIMIT G_BULK_FETCH_LIMIT;
13242 
13243    End If;
13244   End If;
13245 
13246 --errorout_hk('GetOksLEPartial_L count -'||OksLERecTab.OksLE_NewID.count);
13247 
13248   FORALL i IN OksLERecTab.OksLE_NewID.FIRST .. OksLERecTab.OksLE_NewID.LAST
13249   INSERT INTO OKS_LEVEL_ELEMENTS(
13250    ID
13251   ,SEQUENCE_NUMBER
13252   ,DATE_START
13253   ,AMOUNT
13254   ,DATE_RECEIVABLE_GL
13255   ,DATE_REVENUE_RULE_START
13256   ,DATE_TRANSACTION
13257   ,DATE_DUE
13258   ,DATE_PRINT
13259   ,DATE_TO_INTERFACE
13260   ,DATE_COMPLETED
13261   ,OBJECT_VERSION_NUMBER
13262   ,RUL_ID
13263   ,SECURITY_GROUP_ID
13264   ,CLE_ID
13265   ,DNZ_CHR_ID
13266   ,PARENT_CLE_ID
13267   ,DATE_END
13268   ,CREATED_BY
13269   ,CREATION_DATE
13270   ,LAST_UPDATED_BY
13271   ,LAST_UPDATE_DATE
13272   )
13273   SELECT
13274    OksLERecTab.OksLE_NewID(i)
13275   ,OksLERecTab.OksLE_SEQUENCE_NUMBER(i)
13276   ,OksLERecTab.OksLE_DATE_START(i)
13277   ,OksLERecTab.OksLE_AMOUNT(i)
13278   ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL(i)
13279   ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START(i)
13280   ,OksLERecTab.OksLE_DATE_TRANSACTION(i)
13281   ,OksLERecTab.OksLE_DATE_DUE(i)
13282   ,OksLERecTab.OksLE_DATE_PRINT(i)
13283   ,OksLERecTab.OksLE_DATE_TO_INTERFACE(i)
13284   ,OksLERecTab.OksLE_DATE_COMPLETED(i)
13285   ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER(i)
13286   ,OksLERecTab.OksLE_NewRulID(i)
13287   ,OksLERecTab.OksLE_SECURITY_GROUP_ID(i)
13288   ,OksLERecTab.OksLE_NewCleID(i)
13289   ,OksLERecTab.OksLE_NewDnzChrID(i)
13290   ,OksLERecTab.OksLE_NewParentCleID(i)
13291   ,OksLERecTab.OksLE_DATE_END(i)
13292   ,FND_GLOBAL.USER_ID
13293   ,SYSDATE
13294   ,FND_GLOBAL.USER_ID
13295   ,SYSDATE
13296   FROM DUAL;
13297 
13298   IF (P_Partial_Copy_YN = 'N') then
13299    EXIT WHEN GetOksLEFull%NOTFOUND;
13300   Elsif (P_Partial_Copy_YN = 'Y') then
13301    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
13302      EXIT WHEN GetOksLEPartial_H%NOTFOUND;
13303    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
13304      EXIT WHEN GetOksLEPartial_HNL%NOTFOUND;
13305    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
13306      EXIT WHEN GetOksLEPartial_L%NOTFOUND;
13307    End If;
13308   End If;
13309 
13310 
13311  End LOOP;
13312 
13313  If (GetOksLEFull%ISOPEN) then
13314   CLOSE GetOksLEFull;
13315  Elsif (GetOksLEPartial_H%ISOPEN) then
13316   CLOSE GetOksLEPartial_H;
13317  Elsif (GetOksLEPartial_HNL%ISOPEN) then
13318   CLOSE GetOksLEPartial_HNL;
13319  Elsif (GetOksLEPartial_L%ISOPEN) then
13320   CLOSE GetOksLEPartial_L;
13321  End If;
13322 
13323 
13324     EXCEPTION
13325           WHEN OTHERS THEN
13326 		 If (GetOksLEFull%ISOPEN) then
13327 		  CLOSE GetOksLEFull;
13328 		 Elsif (GetOksLEPartial_H%ISOPEN) then
13329 		  CLOSE GetOksLEPartial_H;
13330 		 Elsif (GetOksLEPartial_HNL%ISOPEN) then
13331 		  CLOSE GetOksLEPartial_HNL;
13332 		 Elsif (GetOksLEPartial_L%ISOPEN) then
13333 		  CLOSE GetOksLEPartial_L;
13334 		 End If;
13335 
13336           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13337           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
13338           RAISE;
13339 
13340 
13341  End copy_oks_level_elements;
13342 
13343 
13344 --==============================================================
13345 --Procedure update_line_inv_and_acct_rule: This procedure will be called just before Billing Schedule copy
13346 --to update the Invoice and Accounting Rules on the copied lines with the Target Header Invoice and
13347 --Accounting Rules. This update is done ONLY IF the Invoice/Accounting Rule is NULL on the Line.
13348 --Parameters:
13349 --	P_To_Chr_ID   : Header ID of the Target Contract
13350 --	P_Partial_Copy_YN : Flag to indicate if this is flow is Full Copy or Component Copy
13351 --==============================================================
13352 Procedure update_line_inv_and_acct_rule(P_To_Chr_ID IN NUMBER
13353 				       ,P_Partial_Copy_YN IN VARCHAR2
13354 				       ,x_return_status OUT NOCOPY VARCHAR2) IS
13355 
13356   l_api_name        CONSTANT VARCHAR2(30) := 'update_line_inv_and_acct_rule';
13357   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
13358 
13359  /**Gets all Billing related attributes for the Target Contract and populates them in Package Varialbes.
13360     These will be used :
13361     a) In this routine to update the Inv and Acct Rules on the copied lines
13362     b) In the routine create_bsch_using_PPSetup to generate Billing Schedules for Target Header and all its copied top lines
13363   */
13364   CURSOR GetTrgHdrPPAttributes IS
13365   SELECT
13366    okcH.START_DATE
13367   ,okcH.END_DATE
13368   ,okcH.INV_RULE_ID
13369   ,oksH.ACCT_RULE_ID
13370   ,oksH.PERIOD_START
13371   ,oksH.PERIOD_TYPE
13372   ,oksH.PRICE_UOM
13373   ,oksH.BILLING_SCHEDULE_TYPE
13374   from
13375    OKC_K_HEADERS_B okcH
13376   ,OKS_K_HEADERS_B oksH
13377   where okcH.ID = P_To_Chr_ID
13378   AND oksH.CHR_ID = okcH.ID;
13379 
13380   CURSOR GetTargetLines_F IS
13381   Select
13382   a.ID
13383   FROM
13384   OKC_K_LINES_B a
13385   where a.DNZ_CHR_ID = P_To_Chr_ID
13386   and a.CLE_ID IS NULL;
13387 
13388   CURSOR GetTargetLines_P IS
13389   Select
13390   okcB.ID
13391   FROM
13392   OKC_K_LINES_B okcB
13393   ,OKC_K_LINES_B_TEMP okcBT
13394   where okcB.ID = okcBT.ID
13395   and okcB.DNZ_CHR_ID = P_To_Chr_ID
13396   and okcB.CLE_ID IS NULL;
13397 
13398   LineIDTab NumTabType;
13399 Begin
13400   --Get Partial Period Attributes from Target Contract.
13401   OPEN GetTrgHdrPPAttributes;
13402   FETCH GetTrgHdrPPAttributes
13403   INTO
13404    G_TrgHdrStartDate
13405   ,G_TrgHdrEndDate
13406   ,G_TrgHdrInvRuleID
13407   ,G_TrgHdrAcctRuleID
13408   ,G_TrgHdrPeriodStart
13409   ,G_TrgHdrPeriodType
13410   ,G_TrgHdrPriceUOM
13411   ,G_TrgHdrBillingScheduleType;
13412   CLOSE GetTrgHdrPPAttributes;
13413 
13414   IF (P_Partial_Copy_YN = 'N') then
13415    OPEN GetTargetLines_F;
13416   ELSIF (P_Partial_Copy_YN = 'Y') then
13417    OPEN GetTargetLines_P;
13418   END IF;
13419 
13420   LOOP
13421   IF (P_Partial_Copy_YN = 'N') then
13422    FETCH GetTargetLines_F BULK COLLECT INTO LineIDTab LIMIT G_BULK_FETCH_LIMIT;
13423   ELSIF (P_Partial_Copy_YN = 'Y') then
13424    FETCH GetTargetLines_P BULK COLLECT INTO LineIDTab LIMIT G_BULK_FETCH_LIMIT;
13425   END IF;
13426 
13427   Begin
13428    FORALL i IN LineIDTab.FIRST..LineIDTab.LAST
13429     UPDATE OKC_K_LINES_B a
13430     SET a.INV_RULE_ID = nvl(a.INV_RULE_ID,G_TrgHdrInvRuleID)
13431     WHERE a.ID = LineIDTab(i);
13432   End;
13433   Begin
13434    FORALL j IN LineIDTab.FIRST..LineIDTab.LAST
13435     UPDATE OKS_K_LINES_B a
13436     SET a.ACCT_RULE_ID = nvl(a.ACCT_RULE_ID,G_TrgHdrAcctRuleID)
13437     WHERE a.DNZ_CHR_ID = P_To_Chr_ID
13438     and a.CLE_ID = LineIDTab(j);
13439   End;
13440     If P_Partial_Copy_YN = 'N' then
13441       EXIT WHEN GetTargetLines_F%NOTFOUND;
13442     Elsif P_Partial_Copy_YN = 'Y' then
13443       EXIT WHEN GetTargetLines_P%NOTFOUND;
13444     End If;
13445 
13446   END LOOP;
13447 
13448   IF GetTargetLines_F%ISOPEN THEN
13449     CLOSE GetTargetLines_F;
13450   ELSIF GetTargetLines_P%ISOPEN THEN
13451     CLOSE GetTargetLines_P;
13452   END IF;
13453 
13454  EXCEPTION
13455   WHEN OTHERS THEN
13456    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13457    IF GetTrgHdrPPAttributes%ISOPEN then
13458     CLOSE GetTrgHdrPPAttributes;
13459    End If;
13460    IF GetTargetLines_F%ISOPEN then
13461     CLOSE GetTargetLines_F;
13462    End IF;
13463    IF GetTargetLines_P%ISOPEN THEN
13464     CLOSE GetTargetLines_P;
13465    End IF;
13466 
13467    FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in update_line_inv_and_acct_rule', substr(SQLERRM,1,240));
13468 
13469 
13470 End update_line_inv_and_acct_rule;
13471 
13472 --==============================================================
13473 --Procedure copy_bsch_for_SkippedLines: Used to create PM Stream levels and PM Schedules for those lines
13474 --lines whose PM schedule related entities couldnt be bulk copied because their effective dates had to
13475 --be changed.
13476 --Parameters to be passed to Billing Schedule creation API
13477 --Inv_Rule_ID : Value present only for top-line. Use that for subline also
13478 --Billing Schedule Type: Value always present for top line. For subline if value is null, take it from top line
13479 --StreamLvl_tbl:
13480 --    id                  	   number,
13481 --    CHR_ID	                   Number,
13482 --    CLE_ID	                   Number,
13483 --    DNZ_CHR_ID	                   Number,
13484 --    Sequence_no	        	   Number,
13485 --    uom_code	                   Varchar2 (3),
13486 --    start_date	                   Date,
13487 --    end_date                       date,
13488 --    level_periods	           Number,
13489 --    uom_per_period	           Number,
13490 --    advance_periods	           Number,
13491 --    level_amount	           Number,
13492 --    invoice_offset_days	           Number,
13493 --    interface_offset_days	   Number,
13494 --    comments	                   Varchar2 (240),
13495 --    due_ARR_YN	                   Varchar2 (1),
13496 --    AMOUNT	                   Number,
13497 --    LINES_DETAILED_YN	           Varchar2 (1),
13498 --    Rule_Information1              Varchar2 (450),
13499 --    Rule_Information2              Varchar2 (450),
13500 --    Rule_Information3              Varchar2 (450),
13501 --    Rule_Information4              Varchar2 (450),
13502 --    Rule_Information_Category      Varchar2 (90),
13503 --    Object1_Id1                    Varchar2 (40)
13504 --==============================================================
13505   Procedure copy_bsch_for_SkippedLines(P_To_Chr_ID 	       IN NUMBER
13506 				      ,P_From_Chr_ID	       IN NUMBER
13507 				      ,P_Partial_Copy_YN       IN VARCHAR2
13508         			      ,p_init_msg_list         IN VARCHAR2 DEFAULT OKC_API.G_FALSE
13509         			      ,x_return_status         OUT NOCOPY VARCHAR2
13510         			      ,x_msg_count             OUT NOCOPY NUMBER
13511         			      ,x_msg_data              OUT NOCOPY VARCHAR2) IS
13512 
13513   l_api_name        CONSTANT VARCHAR2(30) := 'copy_bsch_for_SkippedLines';
13514   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
13515 
13516   TYPE TargetLinesRecTabType IS RECORD
13517   ( LINE_ID NumTabType
13518    ,ORIG_SYSTEM_ID1 NumTabType
13519    ,CLE_ID NumTabType
13520    ,INV_RULE_ID NumTabType
13521    ,BILLING_SCHEDULE_TYPE OksB_BillScheduleTypeTabType
13522    ,START_DATE DateTabType
13523    ,END_DATE DateTabType
13524    ,SOURCE_LINE_DATE_TERMINATED DateTabType
13525    ,GEN_SUBLINE_BSCH_YN FlagTabType
13526   );
13527 
13528  TargetLinesRecTab TargetLinesRecTabType;
13529 
13530   --Gets all Top Lines whose DATE_TERMINATED IS NOT NULL or those which have a subline with DATE_TERMINATED as NOT NULL.
13531   --The Top Line API will be used to generate BSCHs for such Top Lines and its sublines.
13532   CURSOR GetTargetLinesForBSCHRegen_F IS
13533   SELECT
13534   okcB.ID as  LINE_ID
13535  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
13536  ,okcB.CLE_ID CLE_ID
13537  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
13538          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
13539         ) as INV_RULE_ID
13540  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
13541         ,decode(oksB.BILLING_SCHEDULE_TYPE
13542 		,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
13543                 ,oksB.BILLING_SCHEDULE_TYPE
13544 		) -- its a subline
13545         ) as BILLING_SCHEDULE_TYPE
13546  ,okcB.START_DATE as START_DATE
13547  ,okcB.END_DATE as END_DATE
13548  ,okcB_Source.DATE_TERMINATED as SOURCE_LINE_DATE_TERMINATED
13549  ,NULL as GEN_SUBLINE_BSCH_YN
13550   from
13551    OKC_K_LINES_B okcB
13552   ,OKS_K_LINES_B oksB
13553   ,OKC_K_LINES_B okcB_Source
13554   where okcB.DNZ_CHR_ID = P_To_Chr_ID
13555   and okcB.ID = oksB.CLE_ID
13556   and okcB_Source.ID = okcB.ORIG_SYSTEM_ID1
13557   and okcB_Source.DNZ_CHR_ID = P_From_Chr_ID
13558   and okcB.CLE_ID IS NULL
13559   --npalepu modified on 31-may-2006 for bug # 5178264
13560   /* and (okcB_Source.DATE_TERMINATED IS NOT NULL
13561        OR
13562        (okcB_Source.DATE_TERMINATED IS NULL
13563         AND EXISTS (select b.ID from okc_k_lines_b b where b.CLE_ID= okcB_Source.ID and b.DATE_TERMINATED IS NOT NULL)
13564        )
13565       ); */
13566   and ((okcB_Source.DATE_TERMINATED IS NOT NULL
13567        OR
13568        (okcB_Source.DATE_TERMINATED IS NULL
13569         AND EXISTS (select b.ID from okc_k_lines_b b where b.CLE_ID= okcB_Source.ID and b.DATE_TERMINATED IS NOT NULL)
13570        )
13571       ) OR
13572       (okcB_Source.DATE_CANCELLED IS NOT NULL
13573        OR
13574        (okcB_Source.DATE_CANCELLED IS NULL
13575         AND EXISTS (select b.ID from okc_k_lines_b b where b.CLE_ID= okcB_Source.ID and b.DATE_CANCELLED IS NOT NULL)
13576        )
13577       ));
13578   --end npalepu
13579 
13580 
13581   CURSOR GetTargetLinesForBSCHRegen_P IS
13582   SELECT
13583   okcB.ID as  LINE_ID
13584  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
13585  ,okcB.CLE_ID CLE_ID
13586  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
13587          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
13588         ) as INV_RULE_ID
13589  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
13590         ,decode(oksB.BILLING_SCHEDULE_TYPE
13591                 ,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
13592                 ,oksB.BILLING_SCHEDULE_TYPE
13593                ) -- its a subline
13594         ) as BILLING_SCHEDULE_TYPE
13595  ,okcB.START_DATE as START_DATE
13596  ,okcB.END_DATE as END_DATE
13597  ,okcBT.DATE_TERMINATED as SOURCE_LINE_DATE_TERMINATED
13598  ,okcBT.GEN_SUBLINE_BSCH_YN as GEN_SUBLINE_BSCH_YN
13599   from
13600    OKC_K_LINES_B okcB
13601   ,OKS_K_LINES_B oksB
13602   ,OKC_K_LINES_B_TEMP okcBT
13603   where okcB.DNZ_CHR_ID = P_To_Chr_ID
13604   and okcB.ID = oksB.CLE_ID
13605   and okcBT.ID = okcB.ID
13606   --npalepu modified on 31-may-2006 for bug # 5178264
13607  /* and (
13608          (okcBT.CLE_ID IS NULL AND (okcBT.DATES_CHANGED_YN = 'Y'
13609                                    OR okcBT.DATE_TERMINATED IS NOT NULL
13610                                    OR (
13611                                        okcBT.DATE_TERMINATED IS NULL and EXISTS (select b.ID from okc_k_lines_b_temp b
13612                                                                                  where b.CLE_ID= okcBT.ID
13613                                                                                  and b.DATE_TERMINATED IS NOT NULL
13614                                                                                  and b.LINE_EXISTS_YN = 'N')
13615                                       )
13616                                   )
13617          )
13618       OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y' and okcBT.GEN_SUBLINE_BSCH_YN = 'Y')
13619       ); */
13620   and ((
13621          (okcBT.CLE_ID IS NULL AND (okcBT.DATES_CHANGED_YN = 'Y'
13622                                    OR okcBT.DATE_TERMINATED IS NOT NULL
13623                                    OR (
13624                                        okcBT.DATE_TERMINATED IS NULL and EXISTS (select b.ID from okc_k_lines_b_temp b
13625                                                                                  where b.CLE_ID= okcBT.ID
13626                                                                                  and b.DATE_TERMINATED IS NOT NULL
13627                                                                                  and b.LINE_EXISTS_YN = 'N')
13628                                       )
13629                                   )
13630          )
13631       OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y' and okcBT.GEN_SUBLINE_BSCH_YN = 'Y')
13632       )
13633       OR
13634       (
13635          (okcBT.CLE_ID IS NULL AND (okcBT.DATES_CHANGED_YN = 'Y'
13636                                    OR okcBT.DATE_CANCELLED IS NOT NULL
13637                                    OR (
13638                                        okcBT.DATE_CANCELLED IS NULL and EXISTS (select b.ID from okc_k_lines_b_temp b
13639                                                                                  where b.CLE_ID= okcBT.ID
13640                                                                                  and b.DATE_CANCELLED IS NOT NULL
13641                                                                                  and b.LINE_EXISTS_YN = 'N')
13642                                       )
13643                                   )
13644          )
13645       OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y' and okcBT.GEN_SUBLINE_BSCH_YN = 'Y')
13646       ));
13647 
13648     --end npalepu
13649 
13650   CURSOR GetStreamsForSourceTopLine(l_Source_Top_Line_ID IN NUMBER) IS
13651   SELECT
13652    SEQUENCE_NO
13653   ,UOM_CODE
13654   ,START_DATE
13655   ,END_DATE
13656   ,LEVEL_PERIODS
13657   ,UOM_PER_PERIOD
13658   ,ADVANCE_PERIODS
13659   ,LEVEL_AMOUNT
13660   ,INVOICE_OFFSET_DAYS
13661   ,INTERFACE_OFFSET_DAYS
13662   ,COMMENTS
13663   ,DUE_ARR_YN
13664   ,AMOUNT
13665   ,LINES_DETAILED_YN
13666   FROM
13667   OKS_STREAM_LEVELS_B where CLE_ID = l_Source_Top_Line_ID
13668   ORDER BY SEQUENCE_NO;
13669 
13670   TYPE l_SourceStreams_tbl_Type IS TABLE OF GetStreamsForSourceTopLine%ROWTYPE INDEX BY BINARY_INTEGER;
13671   l_SourceStreams_tbl l_SourceStreams_tbl_Type;
13672 
13673   l_TargetTopLineStreams_tbl OKS_BILL_SCH.StreamLvl_tbl;
13674   l_TargetTopLineStreams_tbl_Ctr NUMBER := 0;
13675   l_bil_sch_out_tbl   OKS_BILL_SCH.itembillsch_tbl;
13676 
13677   l_stage varchar2(100) := null;
13678 
13679   BEGIN --Main Begin
13680     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
13681              FND_LOG.string(FND_LOG.level_procedure
13682                     ,l_module_name
13683                     ,'Entered copy_bsch_for_SkippedLines'
13684 		   ||' P_From_Chr_ID :'||P_From_Chr_ID
13685 		   ||' P_To_Chr_ID :'||P_To_Chr_ID
13686 		   ||' P_Partial_Copy_YN :'||P_Partial_Copy_YN
13687                      );
13688     END IF;
13689 
13690   IF (P_Partial_Copy_YN = 'Y') then
13691    OPEN GetTargetLinesForBSCHRegen_P;
13692   ELSIF (P_Partial_Copy_YN = 'N') then
13693    OPEN GetTargetLinesForBSCHRegen_F;
13694   END IF;
13695 
13696   LOOP --1)
13697    IF (P_Partial_Copy_YN = 'Y') then
13698     FETCH GetTargetLinesForBSCHRegen_P BULK COLLECT INTO
13699      TargetLinesRecTab.LINE_ID
13700     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
13701     ,TargetLinesRecTab.CLE_ID
13702     ,TargetLinesRecTab.INV_RULE_ID
13703     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
13704     ,TargetLinesRecTab.START_DATE
13705     ,TargetLinesRecTab.END_DATE
13706     ,TargetLinesRecTab.SOURCE_LINE_DATE_TERMINATED
13707     ,TargetLinesRecTab.GEN_SUBLINE_BSCH_YN LIMIT G_BULK_FETCH_LIMIT;
13708 
13709    ELSIF (P_Partial_Copy_YN = 'N') then
13710     FETCH GetTargetLinesForBSCHRegen_F BULK COLLECT INTO
13711      TargetLinesRecTab.LINE_ID
13712     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
13713     ,TargetLinesRecTab.CLE_ID
13714     ,TargetLinesRecTab.INV_RULE_ID
13715     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
13716     ,TargetLinesRecTab.START_DATE
13717     ,TargetLinesRecTab.END_DATE
13718     ,TargetLinesRecTab.SOURCE_LINE_DATE_TERMINATED
13719     ,TargetLinesRecTab.GEN_SUBLINE_BSCH_YN LIMIT G_BULK_FETCH_LIMIT;
13720 
13721    END IF;
13722 
13723    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13724     FND_LOG.string(FND_LOG.level_statement,l_module_name,' Lines Count :'||TargetLinesRecTab.LINE_ID.COUNT);
13725    END IF;
13726 
13727   IF (TargetLinesRecTab.LINE_ID.COUNT > 0) then
13728    BEGIN --Begin for looping through TargetLinesRecTab
13729     FOR i in TargetLinesRecTab.LINE_ID.FIRST..TargetLinesRecTab.LINE_ID.LAST LOOP --2)
13730 
13731         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13732                  FND_LOG.string(FND_LOG.level_statement
13733                         ,l_module_name
13734                         ,'Target Line ID : '||TargetLinesRecTab.LINE_ID(i)
13735 			||' Target Line Orig System ID1:'||TargetLinesRecTab.ORIG_SYSTEM_ID1(i)
13736 			||' Target Line CLE_ID :'||TargetLinesRecTab.CLE_ID(i)
13737 			||' Target line INV_RULE_ID:'||TargetLinesRecTab.INV_RULE_ID(i)
13738 			||' Target Line BSCH_TYPE:'||TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
13739 			||' Target Line Start Date:'||TargetLinesRecTab.START_DATE(i)
13740 			||' Target Line End Date:'||TargetLinesRecTab.END_DATE(i)
13741 			||' Target Line GEN_SUBLINE_BSCH_YN:'||TargetLinesRecTab.GEN_SUBLINE_BSCH_YN(i)
13742                          );
13743         END IF;
13744 
13745      IF (TargetLinesRecTab.CLE_ID(i) IS NULL) then
13746       l_SourceStreams_tbl.DELETE;
13747       l_TargetTopLineStreams_tbl.DELETE;
13748       l_TargetTopLineStreams_tbl_Ctr := 0;
13749 
13750         BEGIN --Begin of Fetch from GetStreamsForSourceTopLine
13751          OPEN GetStreamsForSourceTopLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
13752          LOOP --3)
13753          FETCH GetStreamsForSourceTopLine BULK COLLECT INTO l_SourceStreams_tbl LIMIT G_BULK_FETCH_LIMIT;
13754          IF (l_SourceStreams_tbl.COUNT > 0) then
13755           BEGIN --Begin of looping through l_SourceStreams_tbl
13756            FOR j IN l_SourceStreams_tbl.FIRST..l_SourceStreams_tbl.LAST LOOP --4)
13757             l_TargetTopLineStreams_tbl_Ctr := l_TargetTopLineStreams_tbl_Ctr + 1;
13758 
13759             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).id := FND_API.g_miss_num;
13760             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
13761             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).cle_id := TargetLinesRecTab.LINE_ID(i);
13762             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
13763             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).sequence_no := l_SourceStreams_tbl(j).sequence_no;
13764             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).uom_code := l_SourceStreams_tbl(j).uom_code;
13765             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).start_date := l_SourceStreams_tbl(j).start_date;
13766             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).end_date := l_SourceStreams_tbl(j).end_date;
13767             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).level_periods := l_SourceStreams_tbl(j).level_periods;
13768             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).uom_per_period := l_SourceStreams_tbl(j).uom_per_period;
13769             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).advance_periods := l_SourceStreams_tbl(j).advance_periods;
13770             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).level_amount := l_SourceStreams_tbl(j).level_amount;
13771             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).invoice_offset_days := l_SourceStreams_tbl(j).invoice_offset_days;
13772             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).interface_offset_days := l_SourceStreams_tbl(j).interface_offset_days;
13773             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).comments := l_SourceStreams_tbl(j).comments;
13774             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).due_arr_yn := l_SourceStreams_tbl(j).due_arr_yn;
13775             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).amount := l_SourceStreams_tbl(j).amount;
13776             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).lines_detailed_yn := l_SourceStreams_tbl(j).lines_detailed_yn;
13777            END LOOP; --End LOOP for looping through Source Streams PLSQL table --4)
13778               EXCEPTION
13779    	    WHEN OTHERS THEN
13780                    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13781                    l_stage := 'Looping through l_SourceStreams_tbl';
13782                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
13783           END; --End of looping through l_SourceStreams_tbl
13784          END IF; -- End of if check for l_SourceStreams_tbl.COUNT > 0
13785 
13786          EXIT WHEN GetStreamsForSourceTopLine%NOTFOUND;
13787          END LOOP; --End LOOP for BULK FETCH of Source Streams --3)
13788          IF (GetStreamsForSourceTopLine%ISOPEN) then
13789            CLOSE GetStreamsForSourceTopLine;
13790          End If;
13791             EXCEPTION
13792    	   WHEN OTHERS THEN
13793    		l_stage := 'Fetching from cursor GetStreamsForSourceTopLine';
13794    	        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13795                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
13796 
13797         END; --End of Fetch from GetStreamsForSourceTopLine
13798 
13799          ---------Begin of BSCH Creation for Top Line----------
13800         BEGIN
13801          --OKS_BILL_SCH.create_bill_sch_rules
13802            OKS_BILL_SCH.create_bill_sch_rules(
13803                             p_billing_type => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
13804                            ,p_sll_tbl => l_TargetTopLineStreams_tbl
13805                            ,p_invoice_rule_id => TargetLinesRecTab.INV_RULE_ID(i)
13806                            ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
13807                            ,x_return_status => x_return_status);
13808 
13809          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13810            FND_LOG.string(FND_LOG.level_statement
13811                         ,l_module_name
13812                         ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
13813                         ||',x_return_status='||x_return_status
13814                          );
13815          END IF;
13816          IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
13817           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
13818           RETURN;
13819          END IF;
13820 
13821 
13822             EXCEPTION
13823             WHEN OTHERS THEN
13824                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
13825                  FND_LOG.string(FND_LOG.level_unexpected
13826                         ,l_module_name||'.EXCEPTION'
13827                         ,'Exception in call to OKS_BILL_SCH.create_bill_sch_rules, x_return_status ='||x_return_status
13828                          ||'SQLERRM ='||SQLERRM
13829                          );
13830                 END IF;
13831             x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13832             FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
13833             RAISE;
13834        END;
13835        --------End of BSCH Creation for Top Line
13836 
13837 
13838 
13839 
13840 
13841      ELSIF (TargetLinesRecTab.CLE_ID(i) IS NOT NULL) then
13842        IF (TargetLinesRecTab.GEN_SUBLINE_BSCH_YN(i) = 'Y') then
13843         --------Begin of BSCH Creation for Subline------------
13844 
13845          BEGIN
13846             Oks_bill_sch.Create_Bill_Sch_CP(
13847                                           p_top_line_id      => TargetLinesRecTab.CLE_ID(i)
13848                                          ,p_cp_line_id       => TargetLinesRecTab.LINE_ID(i)
13849                                          ,p_cp_new           => 'Y'
13850                                          ,x_return_status    => x_return_status
13851                                          ,x_msg_count        => x_msg_count
13852                                          ,x_msg_data         => x_msg_data
13853                                           );
13854          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13855            FND_LOG.string(FND_LOG.level_statement
13856                         ,l_module_name
13857                         ,'After call to OKS_BILL_SCH.Create_Bill_Sch_CP'
13858                         ||',x_return_status='||x_return_status
13859                          );
13860          END IF;
13861          IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
13862           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_cp', substr(SQLERRM,1,240));
13863           RETURN;
13864          END IF;
13865 
13866 
13867 
13868 
13869               EXCEPTION
13870               WHEN OTHERS THEN
13871                   IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
13872                    FND_LOG.string(FND_LOG.level_unexpected
13873                           ,l_module_name||'.EXCEPTION'
13874                           ,'Exception in call to OKS_BILL_SCH.create_bill_sch_cp, x_return_status ='||x_return_status
13875                            ||'SQLERRM ='||SQLERRM
13876                            );
13877                   END IF;
13878               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13879               FND_MSG_PUB.add_exc_msg(g_pkg_name, 'OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE', substr(SQLERRM,1,240));
13880               RAISE;
13881          END;
13882        --------End of BSCH Creation for Subline---------------
13883 
13884        END IF; --End If for GEN_SUBLINE_BSCH_YN = 'Y'
13885 
13886      END IF; --End If for CLE_ID is NULL check
13887 
13888        If (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
13889         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13890          FND_LOG.string(FND_LOG.level_statement
13891            ,l_module_name
13892            ,'Return status from OKS_BILL_SCH : x_return_status ='||x_return_status
13893             );
13894         END IF;
13895         RETURN;
13896        End If;
13897 
13898     END LOOP; --End LOOP for looping through TargetLinesRecTab PLSQL table --2)
13899 	EXCEPTION WHEN OTHERS THEN
13900           l_stage := 'Looping through TargetLinesRecTab';
13901           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13902           FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
13903    END; --End of Begin for looping through TargetLinesRecTab
13904   END IF; --End of If check for TargetLinesRecTab.LINE_ID.COUNT > 0
13905 
13906    IF (P_Partial_Copy_YN = 'Y') then
13907     EXIT WHEN GetTargetLinesForBSCHRegen_P%NOTFOUND;
13908    ELSIF (P_Partial_Copy_YN = 'N') then
13909     EXIT WHEN GetTargetLinesForBSCHRegen_F%NOTFOUND;
13910    END IF;
13911 
13912   END LOOP; --End LOOP for BULK FETCH from GetTargetLinesForBSCHRegen_P cursor --1)
13913             --or GetTargetLinesForBSCHRegen_F cursor
13914 
13915   IF GetStreamsForSourceTopLine%ISOPEN THEN
13916     CLOSE GetStreamsForSourceTopLine;
13917   END IF;
13918   IF GetTargetLinesForBSCHRegen_P%ISOPEN THEN
13919     CLOSE GetTargetLinesForBSCHRegen_P;
13920   ELSIF GetTargetLinesForBSCHRegen_F%ISOPEN THEN
13921     CLOSE GetTargetLinesForBSCHRegen_F;
13922   END IF;
13923 
13924 
13925 
13926      EXCEPTION
13927         WHEN OTHERS THEN
13928           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13929           IF GetStreamsForSourceTopLine%ISOPEN THEN
13930            CLOSE GetStreamsForSourceTopLine;
13931           END IF;
13932           IF GetTargetLinesForBSCHRegen_P%ISOPEN THEN
13933            CLOSE GetTargetLinesForBSCHRegen_P;
13934           ELSIF GetTargetLinesForBSCHRegen_F%ISOPEN THEN
13935            CLOSE GetTargetLinesForBSCHRegen_F;
13936           END IF;
13937           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
13938           RAISE;
13939 End copy_bsch_for_SkippedLines;
13940 
13941 --------------------------------
13942 Function GetSubscriptionFrequency(p_line_id IN NUMBER) RETURN VARCHAR2 IS
13943 CURSOR getFrequency IS
13944 SELECT frequency
13945 FROM   OKS_SUBSCR_HEADER_B
13946 WHERE  cle_id = p_line_id;
13947 
13948 l_Frequency OKS_SUBSCR_HEADER_B.FREQUENCY%TYPE;
13949 
13950 Begin
13951  OPEN getFrequency;
13952  FETCH getFrequency INTO l_Frequency;
13953  CLOSE getFrequency;
13954  RETURN l_Frequency;
13955 
13956 End GetSubscriptionFrequency;
13957 
13958 --This routine creates is a wrapper around the Billing Schedule APIs for creating Header and Line Billing Schedules.
13959 --This would be used to create Header or Line Billing Schedules using the Partial Period Setup on the Target Contract header
13960 --This routine gets called when copying a) To New Contract, to create the Billing Schedule for header. The PP Setup on Header would be used
13961 --b) To an EXISTING contract, to create the Billing Schedules for lines that are copied , using the PP Setup on Header.
13962 Procedure instantiate_bsch_using_PPSetup(P_To_Chr_ID IN NUMBER
13963 					,P_To_Line_ID IN NUMBER
13964 					,StartDate IN DATE
13965 					,EndDate IN DATE
13966                                         ,PeriodStart IN VARCHAR2
13967 					,HdrPriceUOM IN VARCHAR2
13968 				        ,LinePriceUOM IN VARCHAR2
13969                                         ,InvoiceRuleID IN NUMBER
13970 					,BillingScheduleType IN VARCHAR2
13971                                         -- npalepu added on 22-may-2006
13972                                         ,P_LSE_ID  NUMBER
13973                                         --end npalepu
13974 					--NECHATUR 23-Jun-2006 Bug#5349539 Declaring Interface Offset Days and Invoice Offset Days parameters
13975                                         ,P_INTERFACE_OFFSET_DAYS NUMBER
13976                                         ,P_INVOICE_OFFSET_DAYS NUMBER
13977                                         --End NECHATUR Bug#5349539
13978                                         ,x_return_status OUT NOCOPY VARCHAR2) IS
13979 
13980   l_api_name        CONSTANT VARCHAR2(30) := 'instantiate_bsch_using_PPSetup';
13981   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
13982 
13983 
13984   l_HdrStreams_tbl     OKS_BILL_SCH.StreamLvl_tbl;
13985   l_HdrStreams_tbl_Ctr NUMBER := 0;
13986 
13987   l_LineStreams_tbl OKS_BILL_SCH.StreamLvl_tbl;
13988   l_LineStreams_tbl_Ctr NUMBER := 0;
13989 
13990   l_bil_sch_out_tbl   OKS_BILL_SCH.itembillsch_tbl;
13991   l_tce_code         VARCHAR2(100);
13992   l_uom_quantity     NUMBER;
13993   l_level_periods NUMBER;
13994 
13995   l_resultant_PriceUOM OKS_K_LINES_B.PRICE_UOM%TYPE;
13996 
13997 Begin
13998              IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
13999               FND_LOG.string(FND_LOG.level_procedure
14000                             ,l_module_name
14001                             ,'Begin instantiate_bsch_using_PPSetup'
14002                            ||' P_To_Chr_ID : '||P_To_Chr_ID
14003 			   ||' P_To_Line_ID : '||P_To_Line_ID
14004                            ||' Startdate : '||StartDate
14005                            ||' EndDate   : '||EndDate
14006                            ||' InvRuleID : '||InvoiceRuleID
14007                            ||' PeriodStart : '||PeriodStart
14008                            ||' HdrPriceUOM : '||HdrPriceUOM
14009 			   ||' LinePriceUOM :'||LinePriceUOM
14010                            ||' BillingScheduleType : '||BillingScheduleType
14011                             );
14012              END IF;
14013 
14014     --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14015 
14016    IF P_To_Line_ID IS NULL then
14017     l_resultant_PriceUOM := HdrPriceUOM;
14018    ELSIF P_To_Line_ID IS NOT NULL then
14019     l_resultant_PriceUOM := LinePriceUOM;
14020    End IF;
14021 
14022 /* hkamdar 28-Aug-2006. Commentd for Bug# 5458842.
14023       --npalepu added on 22-may-2006 for bug # 5207620
14024       IF l_resultant_PriceUOM IS NOT NULL then
14025         IF P_LSE_ID = 46 AND P_To_Line_ID IS NOT NULL  THEN
14026            l_resultant_PriceUOM := OKS_SUBSCRIPTION_PVT.Map_Freq_Uom(l_resultant_PriceUOM);
14027         End IF;
14028       End IF;
14029       --end npalepu
14030 */
14031 -- End hkamdar for Bug# 545882.
14032 
14033       IF l_resultant_PriceUOM IS NOT NULL then
14034        OKS_BILL_UTIL_PUB.get_seeded_timeunit(
14035                  p_timeunit      => l_resultant_PriceUOM
14036                 ,x_quantity      => l_uom_quantity
14037                 ,x_timeunit      => l_tce_code
14038                 ,x_return_status => x_return_status);
14039 
14040        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14041         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_UTIL_PUB.get_seeded_timeunit', substr(SQLERRM,1,240));
14042         RETURN;
14043        END IF;
14044 
14045        IF nvl(l_tce_code,'HOUR') NOT IN ('HOUR','MINUTE') THEN
14046       ---Get the periods to be used for creating the stream for the Top line--
14047           l_level_periods :=OKS_BILL_UTIL_PUB.Get_Periods
14048                             (
14049                              p_start_date   => StartDate
14050                             ,p_end_date     => EndDate
14051                             ,p_uom_code     => l_resultant_PriceUOM
14052                             ,p_period_start => PeriodStart
14053                             );
14054 
14055          IF (l_level_periods IS NOT NULL) THEN
14056           BEGIN
14057             IF P_To_Line_ID IS NULL then
14058 
14059              --Generating Header Schedule--
14060              l_HdrStreams_tbl.DELETE;
14061              --npalepu changing the counter value to 1 for bug # 5207620 on 23-may-2006
14062              /* l_HdrStreams_tbl_Ctr := 0; */
14063              l_HdrStreams_tbl_Ctr := 1;
14064              --end npalepu
14065 
14066               BEGIN --Begin of populating Stream Table for Target Header
14067                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).level_periods := l_level_periods;
14068                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).id := FND_API.g_miss_num;
14069                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).chr_id := P_To_Chr_ID;
14070                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).cle_id := FND_API.g_miss_num;
14071                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14072                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).sequence_no := 1;
14073                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).uom_code := l_resultant_PriceUOM;
14074                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).start_date := StartDate;
14075                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).end_date := EndDate;
14076                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).uom_per_period := 1;
14077               END; --End of populating Stream table for Target Header
14078 
14079 
14080                   --Generate Billing Schedule for Target Header--
14081                        OKS_BILL_SCH.Create_Header_Bill_Sch(
14082                                         p_billing_type => BillingScheduleType
14083                                        ,p_sll_tbl => l_HdrStreams_tbl
14084                                        ,p_invoice_rule_id => InvoiceRuleID
14085                                        ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14086                                        ,x_return_status => x_return_status);
14087                        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14088                          FND_LOG.string(FND_LOG.level_statement
14089                                       ,l_module_name
14090                                       ,'After call to OKS_BILL_SCH.create_hdr_bill_sch'
14091                                       ||',x_return_status='||x_return_status
14092                                        );
14093                        END IF;
14094                        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14095                         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_hdr_bill_sch', substr(SQLERRM,1,240));
14096                         RETURN;
14097                        END IF;
14098 
14099             ELSIF P_To_Line_ID IS NOT NULL then
14100             --Generating Schedule for Top Line--
14101 
14102              l_LineStreams_tbl.DELETE;
14103              --npalepu changing the counter value to 1 for bug # 5207620 on 23-may-2006
14104              /* l_LineStreams_tbl_Ctr := 0; */
14105              l_LineStreams_tbl_Ctr := 1;
14106              --end npalepu
14107 
14108               BEGIN --Begin of populating Stream Table for Target Top Line
14109                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_periods := l_level_periods;
14110                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).id := FND_API.g_miss_num;
14111                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
14112                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id := P_To_Line_ID;
14113                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14114                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).sequence_no := 1;
14115                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_code := l_resultant_PriceUOM;
14116                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).start_date := StartDate;
14117                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).end_date := EndDate;
14118                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_per_period := 1;
14119 --NECHATUR 23-Jun-2006 Bug#5349539 Populating Invoice Offset Days and Interface Offset Days of Stream Table
14120                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).invoice_offset_days := P_INVOICE_OFFSET_DAYS;
14121                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).interface_offset_days := P_INTERFACE_OFFSET_DAYS;
14122 -- End NECHATUR Bug#5349539
14123               END; --End of populating Stream table for Target Top Line
14124 
14125  	          --Generate Billing Schedule for Top Line--
14126        		       OKS_BILL_SCH.create_bill_sch_rules(
14127        		                        p_billing_type => BillingScheduleType
14128        		                       ,p_sll_tbl => l_LineStreams_tbl
14129        		                       ,p_invoice_rule_id => InvoiceRuleID
14130        		                       ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14131        		                       ,x_return_status => x_return_status);
14132        		       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14133        		         FND_LOG.string(FND_LOG.level_statement
14134        		                      ,l_module_name
14135        		                      ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
14136        		                      ||',x_return_status='||x_return_status
14137        		                       );
14138        		       END IF;
14139        		       IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14140        		        FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
14141        		        RETURN;
14142        		       END IF;
14143             END IF;  --End of P_To_Line_ID check
14144 
14145              EXCEPTION
14146              WHEN OTHERS THEN
14147                  IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
14148                   FND_LOG.string(FND_LOG.level_unexpected
14149                       ,l_module_name||'.EXCEPTION'
14150                       ,'Exception in instantiate_bsch_using_PPSetup, x_return_status ='||x_return_status
14151                        ||'SQLERRM ='||SQLERRM
14152                        );
14153                  END IF;
14154              x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14155              FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in instantiate_bsch_using_PPSetup', substr(SQLERRM,1,240));
14156              RAISE;
14157 
14158            END;
14159          END IF; --End of If check for l_level_periods IS NOT NULL
14160        END IF; -- End of IF Check for l_tce_code NOT in HOUR,MINUTE
14161       END IF; --IF Check for PRICEUOM NOT NULL
14162 
14163 End instantiate_bsch_using_PPSetup;
14164 
14165 /*---------------------------------------------------------------------
14166 --The following routine is used to generate Billing Schedules in the following situations:
14167 --A)  During FULL Copy and PARTIAL COPY to a NEW Contract
14168 -- If Partial period DOES NOT EXIST in Source Contract and EXISTS in GCD:
14169       i) Schedules are generated using GCD PPSetup for New Target Contract Header and all its lines
14170 
14171 --B) During PARTIAL COPY to an EXISTING Contract
14172 --    i) Schedules are generated for copied Top Lines as follows:
14173 --	   a) Using Target Header Streams if they EXIST
14174 --	   b) If Target header Streams DONT EXIST, use Partial Period Setup on Target Header to generate Streams for top lines
14175 --	   c) If Partial Period Setup DOES NOT EXIST on Target Header, use GCD Partial Period Setup to generate Streams for top lines.
14176 --	   d) If GCD Partial Period DOES NOT EXIST, using Streams of the Source Top Lines
14177 --    ii) Schedules are generated for copied Sublines as follows
14178 --	   a) Using the streams of corresponding target top lines
14179 --
14180 --Note: If the Partial Period Setup had existed on the Source Contract or if the Partial Period Setup was NULL on Both Source Contract
14181 --      and in GCD,  the Billing Schedules for Target Header and Lines would have been bulk copied using
14182 --	COPY_OKS_STREAM_LEVELS and COPY_OKS_LEVEL_ELEMENTS routines.
14183 --------------------------------------------------------------------*/
14184 Procedure create_bsch_using_PPSetup(P_To_Chr_ID 	       IN NUMBER
14185 				   ,P_From_Chr_ID	       IN NUMBER
14186 				   ,P_Partial_Copy_YN       IN VARCHAR2
14187 				   ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
14188         			   ,p_init_msg_list         IN VARCHAR2 DEFAULT OKC_API.G_FALSE
14189         			   ,x_return_status         OUT NOCOPY VARCHAR2
14190         			   ,x_msg_count             OUT NOCOPY NUMBER
14191         			   ,x_msg_data              OUT NOCOPY VARCHAR2) IS
14192 
14193   l_api_name        CONSTANT VARCHAR2(30) := 'create_bsch_using_PPSetup';
14194   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
14195 
14196 
14197   -- hkamdar 04-Sep-2006 Added for bug# 5458842.
14198   -- Added usage_type and usage_period
14199   TYPE TargetLinesRecTabType IS RECORD
14200   ( LINE_ID NumTabType
14201    ,LSE_ID NumTabType
14202    ,ORIG_SYSTEM_ID1 NumTabType
14203    ,CLE_ID NumTabType
14204    ,INV_RULE_ID NumTabType
14205    ,BILLING_SCHEDULE_TYPE OksB_BillScheduleTypeTabType
14206    ,START_DATE DateTabType
14207    ,END_DATE DateTabType
14208    ,PRICE_UOM Varchar2_30_TabType
14209    ,USAGE_TYPE Varchar2_30_TabType
14210    ,USAGE_PERIOD Varchar2_30_TabType
14211   );
14212 
14213  TargetLinesRecTab TargetLinesRecTabType;
14214 
14215 -- hkamdar added for bug # 5043015
14216 /** Full contract copy: When source doesn't have PP setup, GCD has PP setup. Cursor to get all toplines
14217     created during copy for which Billing Schedule needs to be generated.
14218 */
14219 
14220   CURSOR GetTrgLinesDetails_PP IS
14221   SELECT
14222   okcB.ID as  LINE_ID
14223  ,okcB.LSE_ID as LSE_ID
14224  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
14225  ,okcB.CLE_ID CLE_ID
14226  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
14227          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
14228         ) as INV_RULE_ID
14229  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
14230         ,decode(oksB.BILLING_SCHEDULE_TYPE
14231                 ,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
14232                 ,oksB.BILLING_SCHEDULE_TYPE
14233                ) -- its a subline
14234         ) as BILLING_SCHEDULE_TYPE
14235  ,okcB.START_DATE as START_DATE
14236  ,okcB.END_DATE as END_DATE
14237  ,decode(okcB.LSE_ID
14238         ,122
14239         ,oksB.USAGE_PERIOD
14240         ,46
14241         ,(SELECT frequency FROM OKS_SUBSCR_HEADER_B WHERE cle_id = okcB.ID)
14242         ,oksB.PRICE_UOM
14243         )AS PRICE_UOM
14244   -- hkamdar 04-Sep-2006 Added for bug# 5458842.
14245   ,oksB.USAGE_TYPE as USAGE_TYPE
14246   ,oksB.USAGE_PERIOD as USAGE_PERIOD
14247   from
14248    OKC_K_LINES_B okcB
14249   ,OKS_K_LINES_B oksB
14250   where okcB.CHR_ID = P_To_Chr_ID
14251   and okcB.ID = oksB.CLE_ID;
14252 -- End hkamdar
14253 
14254  /**Component Copy to an EXISTING Contract: Cursor to get Target Lines for which Billing Schedule needs to be generated.
14255  --This is used for generating schedules for lines copied to an existing Target Contract
14256  */
14257   CURSOR GetTrgLines_K_EXISTS_P IS
14258   SELECT
14259   okcB.ID as  LINE_ID
14260  ,okcB.LSE_ID as LSE_ID
14261  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
14262  ,okcB.CLE_ID CLE_ID
14263  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
14264          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
14265         ) as INV_RULE_ID
14266  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
14267         ,decode(oksB.BILLING_SCHEDULE_TYPE
14268                 ,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
14269                 ,oksB.BILLING_SCHEDULE_TYPE
14270                ) -- its a subline
14271         ) as BILLING_SCHEDULE_TYPE
14272  ,okcB.START_DATE as START_DATE
14273  ,okcB.END_DATE as END_DATE
14274  ,decode(okcB.LSE_ID
14275         ,12
14276         ,oksB.USAGE_PERIOD
14277         ,46
14278         ,(SELECT frequency FROM OKS_SUBSCR_HEADER_B WHERE cle_id = okcB.ID)
14279         ,oksB.PRICE_UOM
14280         )AS PRICE_UOM
14281   -- hkamdar 04-Sep-2006 Added for bug# 5458842.
14282   ,oksB.USAGE_TYPE as USAGE_TYPE
14283   ,oksB.USAGE_PERIOD as USAGE_PERIOD
14284   from
14285    OKC_K_LINES_B okcB
14286   ,OKS_K_LINES_B oksB
14287   ,OKC_K_LINES_B_TEMP okcBT
14288   where okcB.DNZ_CHR_ID = P_To_Chr_ID
14289   and okcB.ID = oksB.CLE_ID
14290   and okcBT.ID = okcB.ID
14291   and (okcBT.CLE_ID IS NULL  --Get all Top lines that are being copied
14292     OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y') --OR Sublines that are being copied to existing Top Lines
14293       );
14294 
14295   /**This is used to get the Target header Billing streams. Used to generate the Schedules for Lines copied to an existing target contract.
14296   --If this cursor fetches no rows, then the Partial period Setup on the Target header is used to generate the Billing schedules for the lines.
14297   --If the PPSetup on Target header is also NULL, then no schedule is generated for the lines.
14298   */
14299   CURSOR GetStreamsForTargetHeader(P_To_Chr_ID IN NUMBER) IS
14300   SELECT
14301    SEQUENCE_NO
14302   ,UOM_CODE
14303   ,START_DATE
14304   ,END_DATE
14305   ,LEVEL_PERIODS
14306   ,UOM_PER_PERIOD
14307   ,ADVANCE_PERIODS
14308   ,LEVEL_AMOUNT
14309   ,INVOICE_OFFSET_DAYS
14310   ,INTERFACE_OFFSET_DAYS
14311   ,COMMENTS
14312   ,DUE_ARR_YN
14313   ,AMOUNT
14314   ,LINES_DETAILED_YN
14315   FROM
14316   OKS_STREAM_LEVELS_B where CHR_ID = P_To_Chr_ID AND
14317   CLE_ID IS NULL
14318   ORDER BY SEQUENCE_NO;
14319 
14320   TYPE l_TrgHdrStreams_Tbl_Type IS TABLE OF GetStreamsForTargetHeader%ROWTYPE INDEX BY BINARY_INTEGER;
14321   l_TrgHdrStreams_Tbl l_TrgHdrStreams_Tbl_Type;
14322   l_TrgHdrStreams_Exists_YN VARCHAR2(1);
14323 
14324 -- NECHATUR 23-Jun-2006 Bug#5349539 Cursor to get the Interface Offset Days and Invoice Offset Days of the Source Line Billing Stream
14325   CURSOR GetStreamsForLine(P_From_Cle_ID IN NUMBER) IS
14326   SELECT
14327    INVOICE_OFFSET_DAYS
14328   ,INTERFACE_OFFSET_DAYS
14329   FROM
14330   OKS_STREAM_LEVELS_B
14331   WHERE CLE_ID = P_From_Cle_ID
14332     AND dnz_chr_id = P_FROM_CHR_ID
14333   ORDER BY SEQUENCE_NO;
14334 -- End NECHATUR Bug#5349539
14335 
14336 -- hkamdar added on 24-Apr-2006. Based on Aaron's feedback on 07-Apr-2006. to PP CR03 ammendment.
14337   /**This is used to get the Source Line Billing streams. Used to generate the Schedules for Lines copied to an existing target contract.
14338   --If this cursor fetches no rows, then do not generate the Billing schedules for the lines.
14339 
14340   */
14341   CURSOR GetStreamsForSourceLine(P_From_Cle_ID IN NUMBER) IS
14342   SELECT
14343    SEQUENCE_NO
14344   ,UOM_CODE
14345   ,START_DATE
14346   ,END_DATE
14347   ,LEVEL_PERIODS
14348   ,UOM_PER_PERIOD
14349   ,ADVANCE_PERIODS
14350   ,LEVEL_AMOUNT
14351   ,INVOICE_OFFSET_DAYS
14352   ,INTERFACE_OFFSET_DAYS
14353   ,COMMENTS
14354   ,DUE_ARR_YN
14355   ,AMOUNT
14356   ,LINES_DETAILED_YN
14357   FROM
14358   OKS_STREAM_LEVELS_B
14359   WHERE CLE_ID = P_From_Cle_ID
14360     AND dnz_chr_id = P_FROM_CHR_ID
14361   ORDER BY SEQUENCE_NO;
14362 
14363   TYPE l_SrcLnStreams_Tbl_Type IS TABLE OF GetStreamsForSourceLine%ROWTYPE INDEX BY BINARY_INTEGER;
14364   l_SrcLnStreams_Tbl l_SrcLnStreams_Tbl_Type;
14365   l_SrcLnStreams_Exists_YN VARCHAR2(1);
14366 -- end hkamdar
14367   l_stage varchar2(100) := null;
14368 
14369   l_resultant_price_uom OKS_K_LINES_B.PRICE_UOM%TYPE;
14370   l_tce_code         VARCHAR2(100);
14371   l_uom_quantity     NUMBER;
14372   l_level_periods NUMBER;
14373 
14374   l_LineStreams_tbl OKS_BILL_SCH.StreamLvl_tbl;
14375   l_LineStreams_tbl_Ctr NUMBER := 0;
14376   l_bil_sch_out_tbl   OKS_BILL_SCH.itembillsch_tbl;
14377 
14378  -- hkamdar 20-Apr-2006
14379  -- added to incorporate Aaron's feedback on 07-Apr-2006 about partial copy
14380  l_duration_match   VARCHAR2(1);
14381  -- end hkamdar
14382 
14383  --npalepu added on 22-may-2006 for bug # 5207620
14384  l_default_bsch_type VARCHAR2(1);
14385  --end npalepu
14386 
14387 --NECHATUR 23-Jun-2006 Bug#5349539 Declaring Interface Offset Days and Invoice Offset Days Parameters
14388  L_INTERFACE_OFFSET_DAYS NUMBER;
14389  L_INVOICE_OFFSET_DAYS NUMBER;
14390 --End NECHATUR Bug#5349539
14391 
14392 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14393 
14394 l_item_type          VARCHAR2(50);
14395 l_price_uom          VARCHAR2(50);
14396 l_pricing_method     VARCHAR2(50);
14397 l_period_start       VARCHAR2(50);
14398 l_period_type        VARCHAR2(50);
14399 
14400 -- Flag to indicate whether to generate billing schedule or not
14401 l_generate_bill_sch_yn VARCHAR2(1) := 'N';
14402 -- End hkamdar for Bug# 5458842.
14403 
14404   BEGIN --Main Begin
14405     --errorout_hk('Entered create_bsch_using_ppsetup, P_Partial_Copy_YN :'||P_Partial_Copy_YN);
14406     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
14407              FND_LOG.string(FND_LOG.level_procedure
14408                     ,l_module_name
14409                     ,'Entered create_bsch_using_PPSetup'
14410 		   ||' P_From_Chr_ID :'||P_From_Chr_ID
14411 		   ||' P_To_Chr_ID :'||P_To_Chr_ID
14412 		   ||' P_Partial_Copy_YN :'||P_Partial_Copy_YN
14413                      );
14414     END IF;
14415 
14416 
14417   --+++++++++++++++++++++++++++++Full Copy or Component Copy to a New Contract++++++++++++++++++++++++++++
14418   --IF Full Copy or Partial Copy to a new contract, generate schedule for header and all its lines
14419   --using Partial Period Setup on the Target header
14420   IF (P_Partial_Copy_YN = 'N' OR (P_Partial_Copy_YN = 'Y' AND P_Target_Contract_New_YN = 'Y')) then
14421    IF (    G_TrgHdrPeriodStart IS NOT NULL
14422        AND G_TrgHdrPeriodType IS NOT NULL
14423        AND G_TrgHdrPriceUOM IS NOT NULL) THEN
14424      --errorout_hk('Condition -I :Partial copy N or (partial copy Y and TRGT New)');
14425 -- hkamdar 04-Sep-2006 Added USAGE_TYPE and USAGE_PERIOD for bug# 5458842.
14426   OPEN GetTrgLinesDetails_PP;
14427   LOOP --1)
14428   FETCH GetTrgLinesDetails_PP BULK COLLECT INTO
14429      TargetLinesRecTab.LINE_ID
14430     ,TargetLinesRecTab.LSE_ID
14431     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
14432     ,TargetLinesRecTab.CLE_ID
14433     ,TargetLinesRecTab.INV_RULE_ID
14434     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
14435     ,TargetLinesRecTab.START_DATE
14436     ,TargetLinesRecTab.END_DATE
14437     ,TargetLinesRecTab.PRICE_UOM
14438     ,TargetLinesRecTab.USAGE_TYPE
14439     ,TargetLinesRecTab.USAGE_PERIOD LIMIT G_BULK_FETCH_LIMIT;
14440 
14441     IF (TargetLinesRecTab.LINE_ID.COUNT > 0) THEN
14442 
14443        FOR i in TargetLinesRecTab.LINE_ID.FIRST..TargetLinesRecTab.LINE_ID.LAST LOOP --2)
14444 
14445   --Generate Header Schedule if copying to a new Contract. This will also generate schedule for all its lines
14446   /*  instantiate_bsch_using_PPSetup(P_To_Chr_ID => P_To_Chr_ID
14447                                   ,P_To_Line_ID => NULL
14448                                   ,StartDate => G_TrgHdrStartDate
14449                                   ,EndDate => G_TrgHdrEndDate
14450                                   ,HdrPriceUOM => G_TrgHdrPriceUOM
14451 				  ,LinePriceUOM => NULL
14452                                   ,PeriodStart => G_TrgHdrPeriodStart
14453                                   ,InvoiceRuleID => G_TrgHdrInvRuleID
14454                                   ,BillingScheduleType => nvl(G_TrgHdrBillingScheduleType,'T')
14455                                   ,x_return_status => x_return_status);*/
14456 
14457 
14458              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14459               FND_LOG.string(FND_LOG.level_statement
14460                             ,l_module_name
14461                             ,'Before call to instantiate_bsch_using_PPSetup for HEADER'
14462                            ||' : Line_Id         : '||TargetLinesRecTab.LINE_ID(i)
14463                            ||' : TrgHdrStartdate : '||TargetLinesRecTab.start_date(i)
14464 			   ||' : TrgHdrEndDate   : '||TargetLinesRecTab.end_date(i)
14465 			   ||' : TrgHdrInvRuleID : '||G_TrgHdrInvRuleID
14466 			   ||' : TrgHdrPeriodStart : '||G_TrgHdrPeriodStart
14467 			   ||' : TrgHdrPeriodType : '||G_TrgHdrPeriodType
14468 			   ||' : HdrPriceUOM : '||G_TrgHdrPriceUOM
14469                            ||' : LinePriceUOM     : '||TargetLinesRecTab.PRICE_UOM(i)
14470 			   ||' : TrgHdrBillingScheduleType : '||G_TrgHdrBillingScheduleType
14471                             );
14472              END IF;
14473      --errorout_hk('Calling instantiate_bsch_using_PPSetup for Condition -I');
14474     --npalepu added on 23-may-2006 for bug # 5207620
14475 
14476     /* hkamdar 04-Sep-2006 commented for bug# 5458842.
14477     IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14478         l_default_bsch_type := 'E';
14479     ELSE
14480         l_default_bsch_type := 'T';
14481     END IF;
14482     --end npalepu
14483     */
14484 
14485 -- NECHATUR 23-Jun-2006 Bug#5349539 Fetching the data from the cursor into the Offset Days variables
14486     Open GetStreamsForLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14487     Fetch GetStreamsForLine into L_INVOICE_OFFSET_DAYS,L_INTERFACE_OFFSET_DAYS;
14488     Close GetStreamsForLine;
14489 -- End NECHATUR Bug#5349539
14490 
14491 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14492 
14493 IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14494 /* hkamdar 04-Sep-2006 Commented. For Subscription lines only Equal Amount billing schedule type is used for
14495 -- which manual billing schedules are allowed.
14496    OPEN osh_cur(TargetLinesRecTab.LINE_ID(i));
14497    FETCH osh_cur INTO l_item_type,l_price_uom;
14498    CLOSE osh_cur;
14499    l_price_uom := OKS_SUBSCRIPTION_PVT.Map_Freq_Uom(l_price_uom);
14500 
14501    l_period_start := 'SERVICE';
14502 */
14503    l_generate_bill_sch_yn := 'N';
14504 
14505 ELSIF TargetLinesRecTab.LSE_ID(i) = 12 THEN
14506 -- hkamdar Bug# 5708505 8-Feb-07
14507 -- Added outer if condition to check billing schedule type
14508   IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) IS NOT NULL THEN
14509    IF TargetLinesRecTab.USAGE_TYPE(i) <> 'NPR' THEN
14510       l_price_uom := TargetLinesRecTab.USAGE_PERIOD(i);
14511       l_period_start := 'SERVICE';
14512       l_generate_bill_sch_yn := 'Y';
14513    ELSE
14514       l_generate_bill_sch_yn := 'N';
14515    END IF;
14516   ELSE
14517      l_generate_bill_sch_yn := 'N';
14518   END IF;
14519 -- 29-Sep-2006. Bug# 5563412. Added sublines lse ids and Ext Warranty lse id check.
14520 ELSIF TargetLinesRecTab.LSE_ID(i) IN (1,7,8,9,10,11,35,19,25) THEN
14521    IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) =  'T' THEN
14522       l_period_start := G_TrgHdrPeriodStart;
14523       l_price_uom := TargetLinesRecTab.PRICE_UOM(i);
14524       l_generate_bill_sch_yn := 'Y';
14525    ELSE
14526       l_generate_bill_sch_yn := 'N';
14527    END IF;
14528 ELSE
14529       l_generate_bill_sch_yn := 'N';
14530 END IF; -- TargetLinesRecTab.LSE_ID(i) = 12
14531 
14532 -- if generate billing schedule flag is Y only then call instantiate_bsch_using_PPSetup
14533 IF l_generate_bill_sch_yn = 'Y' THEN
14534 -- End hkamdar for Bug# 5458842.
14535 
14536     instantiate_bsch_using_PPSetup(P_To_Chr_ID => P_To_Chr_ID
14537                                   ,P_To_Line_ID => TargetLinesRecTab.LINE_ID(i)--NULL
14538                                   ,StartDate => TargetLinesRecTab.start_date(i)--G_TrgHdrStartDate
14539                                   ,EndDate => TargetLinesRecTab.end_date(i)--G_TrgHdrEndDate
14540                                   ,HdrPriceUOM => G_TrgHdrPriceUOM
14541 				  -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14542                                   --,LinePriceUOM => TargetLinesRecTab.PRICE_UOM(i)
14543                                   --,PeriodStart => G_TrgHdrPeriodStart
14544 				  ,LinePriceUOM => l_price_uom
14545                                   ,PeriodStart => l_period_start
14546 				  -- End hkamdar for Bug# 5458842.
14547                                   ,InvoiceRuleID => G_TrgHdrInvRuleID
14548                                   --npalepu changed for bug # 5207620 on 23-may-2006
14549                                   /* ,BillingScheduleType => nvl(G_TrgHdrBillingScheduleType,'T') */
14550                                   ,BillingScheduleType => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14551                                   --end npalepu
14552                                   --npalepu added on 22-may-2006
14553                                   ,p_LSE_ID =>TargetLinesRecTab.LSE_ID(i)
14554                                   --end npalepu
14555 				  --NECHATUR 23-Jun-2006 Bug#5349539
14556                                   ,P_INVOICE_OFFSET_DAYS =>L_INVOICE_OFFSET_DAYS
14557                                   ,P_INTERFACE_OFFSET_DAYS =>L_INTERFACE_OFFSET_DAYS
14558                                   -- End NECHATUR Bug#5349539
14559                                   ,x_return_status => x_return_status);
14560 
14561             IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14562              FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to instantiate_bsch_using_PPSetup', substr(SQLERRM,1,240));
14563              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14564               FND_LOG.string(FND_LOG.level_statement
14565                             ,l_module_name
14566                             ,'Return status from instantiate_bsch_using_PPSetup for HEADER : x_return_status ='||x_return_status
14567                             );
14568              END IF;
14569              RETURN;
14570             END IF;
14571 
14572              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14573               FND_LOG.string(FND_LOG.level_statement
14574                             ,l_module_name
14575                             ,'Before call to instantiate_bsch_using_PPSetup for HEADER'
14576                            ||' : Line_Id         : '||TargetLinesRecTab.LINE_ID(i)
14577                            ||' : TrgHdrStartdate : '||TargetLinesRecTab.start_date(i)
14578                            ||' : TrgHdrEndDate   : '||TargetLinesRecTab.end_date(i)
14579                            ||' : TrgHdrInvRuleID : '||G_TrgHdrInvRuleID
14580                            ||' : TrgHdrPeriodStart : '||G_TrgHdrPeriodStart
14581                            ||' : TrgHdrPeriodType : '||G_TrgHdrPeriodType
14582                            ||' : HdrPriceUOM : '||G_TrgHdrPriceUOM
14583                            ||' : LinePriceUOM     : '||TargetLinesRecTab.PRICE_UOM(i)
14584                            ||' : TrgHdrBillingScheduleType : '||G_TrgHdrBillingScheduleType
14585                             );
14586              END IF;
14587 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14588 -- Initializing local variables.
14589 l_item_type       := NULL;
14590 l_price_uom       := NULL;
14591 l_pricing_method  := NULL;
14592 l_period_start    := NULL;
14593 l_period_type     := NULL;
14594 
14595 l_generate_bill_sch_yn := 'N';
14596 
14597 END IF; --l_generate_bill_sch_yn = 'Y'
14598 -- End hkamdar for Bug# 5458842.
14599 
14600         END LOOP; --End LOOP for looping through Target header Streams PLSQL table
14601     END IF; -- TargetLinesRecTab.LINE_ID.COUNT > 0
14602 
14603     EXIT WHEN GetTrgLinesDetails_PP%NOTFOUND;
14604 
14605   END LOOP; --End LOOP for BULK FETCH from GetTrgLinesDetails_PP
14606   IF GetTrgLinesDetails_PP%ISOPEN THEN
14607     CLOSE GetTrgLinesDetails_PP;
14608   END IF;
14609 -- End hkamdar
14610 
14611   --End of Billing Schedule Generation for Header
14612    END IF;
14613 
14614  --++++++++++++++++++++++++++++++++++++Component Copy to an Existing Contract+++++++++++++++++++++++++++++++++
14615   ELSIF (P_Partial_Copy_YN = 'Y' AND P_Target_Contract_New_YN = 'N') then
14616    -- When Copying Lines to an Existing Contract generate schedules for all the Top Lines using
14617    -- a) Header schedule on Target to generate schedules for Lines
14618    -- b) If Header schedule doesnt exist on Target use use Partial Period Setup on Target header to generate streams
14619    -- If Header streams dont exist and PPSetup doesnt exist on target header no schedule is generated for lines
14620      --errorout_hk('Condition -II :Partial copy Y and TRGT Not New)');
14621    --============Get Target header Streams===================
14622   OPEN GetStreamsForTargetHeader(P_To_Chr_ID);
14623   FETCH GetStreamsForTargetHeader BULK COLLECT INTO l_TrgHdrStreams_Tbl;
14624   IF l_TrgHdrStreams_Tbl.COUNT > 0 then
14625     l_TrgHdrStreams_Exists_YN := 'Y';
14626   ELSE
14627     l_TrgHdrStreams_Exists_YN := 'N';
14628   END IF;
14629   CLOSE GetStreamsForTargetHeader;
14630    --=======================================================
14631 
14632   OPEN GetTrgLines_K_EXISTS_P;
14633   LOOP --1)
14634 -- hkamdar 04-Sep-2006 Added USAGE_TYPE and USAGE_PERIOD for bug# 5458842.
14635   FETCH GetTrgLines_K_EXISTS_P BULK COLLECT INTO
14636      TargetLinesRecTab.LINE_ID
14637     ,TargetLinesRecTab.LSE_ID
14638     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
14639     ,TargetLinesRecTab.CLE_ID
14640     ,TargetLinesRecTab.INV_RULE_ID
14641     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
14642     ,TargetLinesRecTab.START_DATE
14643     ,TargetLinesRecTab.END_DATE
14644     ,TargetLinesRecTab.PRICE_UOM
14645     ,TargetLinesRecTab.USAGE_TYPE
14646     ,TargetLinesRecTab.USAGE_PERIOD LIMIT G_BULK_FETCH_LIMIT;
14647 
14648   IF (TargetLinesRecTab.LINE_ID.COUNT > 0) THEN
14649    BEGIN --Begin for looping through TargetLinesRecTab
14650     FOR i in TargetLinesRecTab.LINE_ID.FIRST..TargetLinesRecTab.LINE_ID.LAST LOOP --2)
14651 
14652 
14653 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14654 
14655 IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14656 /* hkamdar 04-Sep-2006 Commented. For Subscription lines only Equal Amount billing schedule type is used for
14657 -- which manual billing schedules are allowed.
14658    OPEN osh_cur(TargetLinesRecTab.LINE_ID(i));
14659    FETCH osh_cur INTO l_item_type,l_price_uom;
14660    CLOSE osh_cur;
14661    l_price_uom := OKS_SUBSCRIPTION_PVT.Map_Freq_Uom(l_price_uom);
14662    l_period_start := 'SERVICE';
14663 */
14664    l_generate_bill_sch_yn := 'N';
14665 
14666 ELSIF TargetLinesRecTab.LSE_ID(i) = 12 THEN
14667 -- hkamdar Bug# 5708505 8-Feb-07
14668 -- Added outer if condition to check billing schedule type
14669   IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) IS NOT NULL THEN
14670    IF TargetLinesRecTab.USAGE_TYPE(i) <> 'NPR' THEN
14671       l_price_uom := TargetLinesRecTab.USAGE_PERIOD(i);
14672       l_period_start := 'SERVICE';
14673       l_generate_bill_sch_yn := 'Y';
14674    ELSE
14675       l_generate_bill_sch_yn := 'N';
14676    END IF;
14677   ELSE l_generate_bill_sch_yn := 'N';
14678 
14679   END IF;
14680 
14681 -- 29-Sep-2006. Bug# 5563412. Added sublines lse ids and Ext Warranty lse id check.
14682 ELSIF TargetLinesRecTab.LSE_ID(i) IN (1,7,8,9,10,11,35,19,25) THEN
14683    IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) = 'T' THEN
14684       l_period_start := G_TrgHdrPeriodStart;
14685       l_price_uom := TargetLinesRecTab.PRICE_UOM(i);
14686       l_generate_bill_sch_yn := 'Y';
14687    ELSE
14688       l_generate_bill_sch_yn := 'N';
14689    END IF;
14690 ELSE
14691       l_generate_bill_sch_yn := 'N';
14692 
14693 END IF; -- TargetLinesRecTab.LSE_ID(i) = 12
14694 
14695 -- if generate billing schedule flag is Y only then call instantiate_bsch_using_PPSetup
14696 IF l_generate_bill_sch_yn = 'Y' THEN
14697 -- End hkamdar for Bug# 5458842.
14698 
14699      IF (TargetLinesRecTab.CLE_ID(i) IS NULL) then --It is a Top Line
14700 -- hkamdar  New Logic for Subscription and usage lines here
14701       --/*IF Header Billing Streams exists use them for generating the Top Line streams*/--
14702       IF (l_TrgHdrStreams_Exists_YN = 'Y') THEN
14703            --errorout_hk('Condition -II : If Target Header Streams Exists');
14704            --Resetting PLSQL table for populating line streams--
14705            l_LineStreams_tbl.DELETE;
14706            l_LineStreams_tbl_Ctr := 0;
14707        --Generate Schedule for Top Line using Header Streams--
14708           BEGIN --Begin of looping through l_TrgHdrStreams_Tbl
14709            FOR j IN l_TrgHdrStreams_Tbl.FIRST..l_TrgHdrStreams_Tbl.LAST LOOP --4)
14710             l_LineStreams_tbl_Ctr := l_LineStreams_tbl_Ctr + 1;
14711 
14712             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).id := FND_API.g_miss_num;
14713             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
14714             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id := TargetLinesRecTab.LINE_ID(i);
14715             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14716             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).sequence_no := l_TrgHdrStreams_Tbl(j).sequence_no;
14717             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_code := l_TrgHdrStreams_Tbl(j).uom_code;
14718             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).start_date := l_TrgHdrStreams_Tbl(j).start_date;
14719             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).end_date := l_TrgHdrStreams_Tbl(j).end_date;
14720             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_periods := l_TrgHdrStreams_Tbl(j).level_periods;
14721             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_per_period := l_TrgHdrStreams_Tbl(j).uom_per_period;
14722             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).advance_periods := l_TrgHdrStreams_Tbl(j).advance_periods;
14723             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_amount := l_TrgHdrStreams_Tbl(j).level_amount;
14724             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).invoice_offset_days := l_TrgHdrStreams_Tbl(j).invoice_offset_days;
14725             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).interface_offset_days := l_TrgHdrStreams_Tbl(j).interface_offset_days;
14726             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).comments := l_TrgHdrStreams_Tbl(j).comments;
14727             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).due_arr_yn := l_TrgHdrStreams_Tbl(j).due_arr_yn;
14728             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).amount := l_TrgHdrStreams_Tbl(j).amount;
14729             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).lines_detailed_yn := l_TrgHdrStreams_Tbl(j).lines_detailed_yn;
14730            END LOOP; --End LOOP for looping through Target header Streams PLSQL table
14731               EXCEPTION
14732                WHEN OTHERS THEN
14733                    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14734                    l_stage := 'Looping through l_TrgHdrStreams_Tbl';
14735                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
14736 		   RAISE;
14737           END; --End of looping through l_TrgHdrStreams_Tbl
14738 
14739           BEGIN --Begin for calling OKS_BILL_SCH.Create_Bill_Sch_Rules
14740                   --Generate Billing Schedule for Top Line--
14741                        OKS_BILL_SCH.create_bill_sch_rules(
14742                                         p_billing_type => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14743                                        ,p_sll_tbl => l_LineStreams_tbl
14744                                        ,p_invoice_rule_id => TargetLinesRecTab.INV_RULE_ID(i)
14745                                        ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14746                                        ,x_return_status => x_return_status);
14747                        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14748                          FND_LOG.string(FND_LOG.level_statement
14749                                       ,l_module_name
14750                                       ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
14751                                       ||',x_return_status='||x_return_status
14752                                        );
14753                        END IF;
14754                        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14755                         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
14756                         RETURN;
14757                        END IF;
14758                  EXCEPTION
14759                   WHEN OTHERS THEN
14760                      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14761                      l_stage := 'OKS_BILL_SCH.create_bill_sch_rules';
14762                      FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage,substr(SQLERRM,1,240));
14763 		     RAISE;
14764           END;
14765 
14766       ELSIF (l_TrgHdrStreams_Exists_YN = 'N') THEN
14767       --IF Header Billing Streams dont exist use Partial period Settings on Header--
14768       --to generate schedule for line--
14769            --errorout_hk('Condition -II : If Target Header Streams Not Exist');
14770        IF (G_TrgHdrPeriodStart IS NOT NULL
14771            AND G_TrgHdrPeriodType IS NOT NULL
14772            AND G_TrgHdrPriceUOM IS NOT NULL) THEN
14773                       --errorout_hk('Condition -II : If Target Header Streams Not Exist and Price UOM is not null call instantiate_bsch');
14774           Begin
14775            --npalepu added on 23-may-2006 for bug # 5207620
14776 
14777     /* hkamdar 04-Sep-2006 commented for bug# 5458842.
14778            IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14779                 l_default_bsch_type := 'E';
14780            ELSE
14781                 l_default_bsch_type := 'T';
14782            END IF;
14783            --end npalepu
14784   */
14785 -- NECHATUR 23-Jun-2006 Bug#5349539 Fetching the data from the cursor into the Offset Days variables
14786            Open GetStreamsForLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14787            Fetch GetStreamsForLine into L_INVOICE_OFFSET_DAYS,L_INTERFACE_OFFSET_DAYS;
14788            Close GetStreamsForLine;
14789 --  End NECHATUR Bug#5349539
14790            instantiate_bsch_using_PPSetup(P_To_Chr_ID => P_To_Chr_ID
14791                                          ,P_To_Line_ID =>TargetLinesRecTab.LINE_ID(i)
14792                                          ,StartDate => TargetLinesRecTab.START_DATE(i)
14793                                          ,EndDate => TargetLinesRecTab.END_DATE(i)
14794                                          ,HdrPriceUOM => G_TrgHdrPriceUOM
14795 				         -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14796 				         --,LinePriceUOM => TargetLinesRecTab.PRICE_UOM(i)
14797                                          --,PeriodStart => G_TrgHdrPeriodStart
14798 				         ,LinePriceUOM => l_price_uom
14799                                          ,PeriodStart => l_period_start
14800 					 -- End hkamdar for Bug# 5458842.
14801                                          ,InvoiceRuleID => TargetLinesRecTab.INV_RULE_ID(i)
14802                                          --npalepu changed for bug # 5207620 on 23-may-2006
14803                                          /* ,BillingScheduleType => nvl(TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i),'T') */
14804                                          ,BillingScheduleType => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14805                                          --end npalepu
14806                                          --npalepu added on 22-may-2006
14807                                          ,p_LSE_ID =>TargetLinesRecTab.LSE_ID(i)
14808                                          --end npalepu
14809 					 --NECHATUR 23-Jun-2006 Bug#5349539
14810                                          ,P_INVOICE_OFFSET_DAYS =>L_INVOICE_OFFSET_DAYS
14811                                          ,P_INTERFACE_OFFSET_DAYS =>L_INTERFACE_OFFSET_DAYS
14812                                          -- End NECHATUR Bug#5349539
14813                                          ,x_return_status => x_return_status);
14814             IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14815              FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to instantiate_bsch_using_PPSetup', substr(SQLERRM,1,240));
14816              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14817               FND_LOG.string(FND_LOG.level_statement
14818                             ,l_module_name
14819                             ,'Return status from instantiate_bsch_using_PPSetup for LINE : x_return_status ='||x_return_status
14820                             );
14821              END IF;
14822              RETURN;
14823             END IF;
14824 
14825                 EXCEPTION
14826                   WHEN OTHERS THEN
14827                      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14828                      l_stage := 'instantiate_bsch_using_PPSetup';
14829                      FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage,substr(SQLERRM,1,240));
14830                      RAISE;
14831           End;
14832           -- hkamdar 20-Apr-2006 Added based on Aaron's feedback on 07-Apr-2006. to PP CR03 ammendment.
14833           -- IF no target header bill schedule exists and no PP attributes are present on Target Header then
14834           -- if duration of source line and target line are same then copy the source line billing schedule.
14835        ELSE  -- target header partial period attributes does not exist
14836 
14837             -- check for line duration match
14838           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14839             IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
14840                 FND_LOG.string(FND_LOG.level_statement
14841                         ,l_module_name||'.chk_line_effectivity'
14842                         ,'Before call to chk_line_effectivity'
14843                          );
14844             END IF;
14845           END IF;
14846                      --errorout_hk('Condition -II : Check for line effectivity');
14847           chk_line_effectivity(TargetLinesRecTab.LINE_ID(i),l_duration_match, x_return_status);
14848 
14849           IF x_return_status <> 'S' Then
14850                         OKC_API.set_message
14851                                         (G_APP_NAME,
14852                                          G_UNEXPECTED_ERROR,
14853                                          G_SQLCODE_TOKEN,
14854                                          SQLCODE,
14855                                          G_SQLERRM_TOKEN,
14856                                          'Check Line Effectivity ERROR');
14857 
14858                          RAISE G_EXCEPTION_HALT_VALIDATION;
14859           End If;
14860 
14861           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14862             IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
14863                 FND_LOG.string(FND_LOG.level_statement
14864                         ,l_module_name||'.chk_line_effectivity'
14865                         ,'After call to chk_line_effectivity'
14866                          );
14867             END IF;
14868           END IF;
14869 
14870           IF l_duration_match = 'T' THEN
14871            --errorout_hk('Condition -II : If Duration matches copy bill schedules');
14872 --errorout_hk('Source Line id-'||TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14873                  --============Get Source Line Streams===================
14874            OPEN GetStreamsForSourceLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14875            FETCH GetStreamsForSourceLine BULK COLLECT INTO l_SrcLnStreams_Tbl;
14876            IF l_SrcLnStreams_Tbl.COUNT > 0 then
14877               l_SrcLnStreams_Exists_YN := 'Y';
14878            ELSE
14879               l_SrcLnStreams_Exists_YN := 'N';
14880            END IF;
14881            CLOSE GetStreamsForSourceLine;
14882                  --=======================================================
14883 --errorout_hk('Src Stream Exists-'||l_SrcLnStreams_Exists_YN);
14884            IF l_SrcLnStreams_Exists_YN = 'Y' THEN
14885 
14886            --Resetting PLSQL table for populating line streams--
14887            l_LineStreams_tbl.DELETE;
14888            l_LineStreams_tbl_Ctr := 0;
14889        --Generate Schedule for Top Line using Header Streams--
14890           BEGIN --Begin of looping through l_TrgHdrStreams_Tbl
14891            FOR j IN l_SrcLnStreams_Tbl.FIRST..l_SrcLnStreams_Tbl.LAST LOOP --4)
14892             l_LineStreams_tbl_Ctr := l_LineStreams_tbl_Ctr + 1;
14893 
14894             --errorout_hk('l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id-'||TargetLinesRecTab.LINE_ID(i));
14895             --errorout_hk('dnz_chr_id-'||P_To_Chr_ID);
14896             --errorout_hk('sequence_no-'||l_SrcLnStreams_Tbl(j).sequence_no);
14897             --errorout_hk('uom_code-'|| l_SrcLnStreams_Tbl(j).uom_code);
14898             --errorout_hk('start_date-'||TargetLinesRecTab.start_date(i));
14899             --errorout_hk('end_date-'|| TargetLinesRecTab.end_date(i));
14900             --errorout_hk('level_periods-'||l_SrcLnStreams_Tbl(j).level_periods);
14901             --errorout_hk('uom_per_period-'|| l_SrcLnStreams_Tbl(j).uom_per_period);
14902             --errorout_hk('advance_periods-'||l_SrcLnStreams_Tbl(j).advance_periods);
14903             --errorout_hk('level_amount-'||l_SrcLnStreams_Tbl(j).level_amount);
14904             --errorout_hk('invoice_offset_days-'|| l_SrcLnStreams_Tbl(j).invoice_offset_days);
14905             --errorout_hk('interface_offset_days-'|| l_SrcLnStreams_Tbl(j).interface_offset_days);
14906             --errorout_hk('comments-'|| l_SrcLnStreams_Tbl(j).comments);
14907             --errorout_hk('due_arr_yn-'|| l_SrcLnStreams_Tbl(j).due_arr_yn);
14908             --errorout_hk('amount-'|| l_SrcLnStreams_Tbl(j).amount);
14909             --errorout_hk('lines_detailed_yn-'|| l_SrcLnStreams_Tbl(j).lines_detailed_yn);
14910 
14911             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).id := FND_API.g_miss_num;
14912             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
14913             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id := TargetLinesRecTab.LINE_ID(i);
14914             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14915             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).sequence_no := l_SrcLnStreams_Tbl(j).sequence_no;
14916             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_code := l_SrcLnStreams_Tbl(j).uom_code;
14917             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).start_date := TargetLinesRecTab.start_date(i);
14918             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).end_date := TargetLinesRecTab.end_date(i);
14919             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_periods := l_SrcLnStreams_Tbl(j).level_periods;
14920             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_per_period := l_SrcLnStreams_Tbl(j).uom_per_period;
14921             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).advance_periods := l_SrcLnStreams_Tbl(j).advance_periods;
14922             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_amount := l_SrcLnStreams_Tbl(j).level_amount;
14923             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).invoice_offset_days := l_SrcLnStreams_Tbl(j).invoice_offset_days;
14924             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).interface_offset_days := l_SrcLnStreams_Tbl(j).interface_offset_days;
14925             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).comments := l_SrcLnStreams_Tbl(j).comments;
14926             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).due_arr_yn := l_SrcLnStreams_Tbl(j).due_arr_yn;
14927             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).amount := l_SrcLnStreams_Tbl(j).amount;
14928             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).lines_detailed_yn := l_SrcLnStreams_Tbl(j).lines_detailed_yn;
14929            END LOOP; --End LOOP for looping through Target header Streams PLSQL table
14930               EXCEPTION
14931                WHEN OTHERS THEN
14932                    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14933                    l_stage := 'Looping through l_SrcLnStreams_Tbl';
14934                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
14935 		   RAISE;
14936           END; --End of looping through l_TrgHdrStreams_Tbl
14937 
14938           END IF; -- check for l_SrcLnStreams_Exists_YN = 'Y'
14939           BEGIN --Begin for calling OKS_BILL_SCH.Create_Bill_Sch_Rules
14940                   --Generate Billing Schedule for Top Line--
14941                        OKS_BILL_SCH.create_bill_sch_rules(
14942                                         p_billing_type => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14943                                        ,p_sll_tbl => l_LineStreams_tbl
14944                                        ,p_invoice_rule_id => TargetLinesRecTab.INV_RULE_ID(i)
14945                                        ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14946                                        ,x_return_status => x_return_status);
14947                        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14948                          FND_LOG.string(FND_LOG.level_statement
14949                                       ,l_module_name
14950                                       ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
14951                                       ||',x_return_status='||x_return_status
14952                                        );
14953                        END IF;
14954                        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14955                         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
14956                         RETURN;
14957                        END IF;
14958                  EXCEPTION
14959                   WHEN OTHERS THEN
14960                      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14961                      l_stage := 'OKS_BILL_SCH.create_bill_sch_rules';
14962                      FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage,substr(SQLERRM,1,240));
14963 		     RAISE;
14964           END;
14965   --------------------------------------------------------------------
14966           END IF; -- l_duration_match check
14967        -- end hkamdar 20-Apr-2006
14968        END IF;
14969 
14970       END IF; --End of IF Check for l_TrgHdrStreams_Exists_YN
14971 
14972      ELSIF (TargetLinesRecTab.CLE_ID(i) IS NOT NULL) then
14973 
14974       --+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14975         --------Begin of BSCH Creation for Subline--------------------------
14976         --------For sublines, use topline schedules to generate schedule-----
14977       BEGIN
14978        Oks_bill_sch.Create_Bill_Sch_CP(
14979                                        p_top_line_id      => TargetLinesRecTab.CLE_ID(i)
14980                                       ,p_cp_line_id       => TargetLinesRecTab.LINE_ID(i)
14981                                       ,p_cp_new           => 'Y'
14982                                       ,x_return_status    => x_return_status
14983                                       ,x_msg_count        => x_msg_count
14984                                       ,x_msg_data         => x_msg_data
14985                                       );
14986          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14987            FND_LOG.string(FND_LOG.level_statement
14988                         ,l_module_name
14989                         ,'After call to OKS_BILL_SCH.Create_Bill_Sch_CP'
14990                         ||',x_return_status='||x_return_status
14991                          );
14992          END IF;
14993          IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14994           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_cp', substr(SQLERRM,1,240));
14995           RETURN;
14996          END IF;
14997 
14998               EXCEPTION
14999               WHEN OTHERS THEN
15000                   IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
15001                    FND_LOG.string(FND_LOG.level_unexpected
15002                           ,l_module_name||'.EXCEPTION'
15003                           ,'Exception in call to OKS_BILL_SCH.create_bill_sch_cp, x_return_status ='||x_return_status
15004                            ||'SQLERRM ='||SQLERRM
15005                            );
15006                   END IF;
15007               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15008               FND_MSG_PUB.add_exc_msg(g_pkg_name, 'OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE', substr(SQLERRM,1,240));
15009               RAISE;
15010       END;
15011       --+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
15012        --------End of BSCH Creation for Subline---------------
15013      END IF; --End If for CLE_ID is NULL check
15014 
15015      IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
15016       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15017        FND_LOG.string(FND_LOG.level_statement
15018                      ,l_module_name
15019                      ,'Return status from OKS_BILL_SCH : x_return_status ='||x_return_status
15020                      );
15021       END IF;
15022       RETURN;
15023      END IF;
15024 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
15025 -- Initializing local variables.
15026 l_item_type       := NULL;
15027 l_price_uom       := NULL;
15028 l_pricing_method  := NULL;
15029 l_period_start    := NULL;
15030 l_period_type     := NULL;
15031 -- End hkamdar for Bug# 5458842.
15032 l_generate_bill_sch_yn := 'N';
15033 
15034 END IF; --l_generate_bill_sch_yn = 'Y'
15035 -- End hkamdar for Bug# 5458842.
15036     END LOOP; --End LOOP for looping through TargetLinesRecTab PLSQL table --2)
15037 	EXCEPTION WHEN OTHERS THEN
15038           l_stage := 'Looping through TargetLinesRecTab';
15039           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15040           FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
15041    END; --End of Begin for looping through TargetLinesRecTab
15042   END IF; --End of If check for TargetLinesRecTab.LINE_ID.COUNT > 0
15043 
15044     EXIT WHEN GetTrgLines_K_EXISTS_P%NOTFOUND;
15045 
15046   END LOOP; --End LOOP for BULK FETCH from GetTrgLines_K_EXISTS_P
15047   IF GetTrgLines_K_EXISTS_P%ISOPEN THEN
15048     CLOSE GetTrgLines_K_EXISTS_P;
15049   END IF;
15050 
15051   END IF; -- (P_Partial_Copy_YN = 'Y' AND P_Target_Contract_New_YN = 'N') then
15052 
15053      EXCEPTION
15054         WHEN OTHERS THEN
15055           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15056           IF GetTrgLines_K_EXISTS_P%ISOPEN THEN
15057            CLOSE GetTrgLines_K_EXISTS_P;
15058           END IF;
15059           IF GetStreamsForTargetHeader%ISOPEN THEN
15060            CLOSE GetStreamsForTargetHeader;
15061           END IF;
15062           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
15063           RAISE;
15064 
15065 End create_bsch_using_PPSetup;
15066 
15067 ---------------------------------------------------------------------
15068 
15069 --This routine has been moved to OKS_UTIL_PUB. This routine is commented out here as it is no longer being used.
15070 --The one in OKS_UTIL_PUB is being used.
15071 /**********
15072 Procedure create_transaction_extension(P_Api_Version IN NUMBER
15073 				      ,P_Init_Msg_List IN VARCHAR2
15074 				      ,P_Header_ID IN NUMBER
15075 				      ,P_Line_ID IN NUMBER
15076 				      ,P_Source_Trx_Ext_ID IN NUMBER
15077 				      ,P_Cust_Acct_ID IN NUMBER
15078 		                      ,P_Bill_To_Site_Use_ID IN NUMBER
15079 				      ,x_entity_id OUT NOCOPY NUMBER
15080 				      ,x_msg_data OUT NOCOPY VARCHAR2
15081 				      ,x_msg_count OUT NOCOPY NUMBER
15082 				      ,x_return_status OUT NOCOPY VARCHAR2) IS
15083 
15084  l_api_name        CONSTANT VARCHAR2(30) := 'create_transaction_extension';
15085  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
15086 
15087 --Input parameters--
15088 l_PayerContext_Rec	    IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type;
15089 l_Payer_Equivalency	    VARCHAR2(20);
15090 l_Pmt_channel		    VARCHAR2(20);
15091 l_instr_assignment	    NUMBER;
15092 l_TrxnExtension_rec         IBY_FNDCPT_TRXN_PUB.TrxnExtension_rec_type;
15093 l_ext_entity_tab        IBY_FNDCPT_COMMON_PUB.Id_tbl_type; --Used by copy_transaction_extension
15094 
15095 
15096 --Output parameters--
15097 l_response		    IBY_FNDCPT_COMMON_PUB.Result_rec_type;
15098 l_entity_id		    NUMBER;
15099 
15100 --Local Variables--
15101 l_Authoring_Org_ID NUMBER;
15102 
15103 l_Cust_Account_Site_ID NUMBER;
15104 l_Cust_Account_ID	  NUMBER;
15105 l_Party_ID	  NUMBER;
15106 
15107 ---Cursor to retrieve Account_Site_ID, Cust_Account_ID and Party_ID for Header
15108 CURSOR GetAcctInfo IS
15109 select
15110  cas.cust_account_id Cust_Account_ID
15111 ,ca.party_id Party_ID
15112 from
15113  hz_cust_site_uses_all csu
15114 ,hz_cust_acct_sites_all cas
15115 ,hz_cust_accounts_all ca
15116 where
15117 csu.site_use_id = P_Bill_To_Site_Use_ID
15118 and cas.cust_acct_site_id = csu.cust_acct_site_id
15119 and ca.cust_account_id = cas.cust_account_id;
15120 
15121 CURSOR GetCustAcctParty IS
15122 select
15123  ca.party_id Party_ID
15124 from
15125  hz_cust_accounts_all ca
15126 where ca.cust_account_id = P_Cust_Acct_ID;
15127 
15128 --Cursor to get Instrument_Assignment_ID
15129 CURSOR GetInstrAssgnID IS
15130 select
15131  instr_assignment_ID
15132 ,CARD_EXPIRYDATE
15133 from
15134 IBY_TRXN_EXTENSIONS_V
15135 where
15136 trxn_extension_ID = P_Source_Trx_Ext_ID;
15137 
15138 l_Instrument_Assignment_ID NUMBER;
15139 l_CC_Expiry_Date	   DATE;
15140 
15141 Begin
15142     l_ext_entity_tab.DELETE;
15143     l_ext_entity_tab(0) := P_Source_Trx_Ext_ID;
15144 
15145     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
15146       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
15147          FND_LOG.string(FND_LOG.level_procedure
15148                         ,l_module_name||'.Begin'
15149                         ,'P_Source_Trx_Ext_ID='||P_Source_Trx_Ext_ID
15150                        ||',P_Bill_To_Site_Use_ID='||P_Bill_To_Site_Use_ID
15151 		       ||',P_Header_ID='||P_Header_ID
15152                        ||',P_Line_ID='||P_Line_ID
15153                          );
15154       END IF;
15155     END IF;
15156 
15157 OPEN GetInstrAssgnID;
15158 Fetch GetInstrAssgnID INTO l_Instrument_Assignment_ID,l_CC_Expiry_Date;
15159 CLOSE GetInstrAssgnID;
15160 
15161 IF ( to_number(to_char(l_CC_Expiry_Date,'YYYYMM')) <
15162      to_number(to_char(SYSDATE,'YYYYMM'))
15163    ) then
15164  x_entity_id := NULL;
15165  x_return_status := FND_API.G_RET_STS_SUCCESS;
15166 ELSE
15167 
15168  l_Authoring_Org_ID := okc_context.get_okc_org_id;
15169  l_Cust_Account_Site_ID := P_Bill_To_Site_Use_ID;
15170 
15171  IF (P_Cust_Acct_ID IS NULL) THEN
15172   OPEN GetAcctInfo;
15173   FETCH GetAcctInfo INTO
15174    l_Cust_Account_ID
15175   ,l_Party_ID;
15176   CLOSE GetAcctInfo;
15177 
15178  ELSIF (P_Cust_Acct_ID IS NOT NULL) THEN
15179   l_Cust_Account_ID := P_Cust_Acct_ID;
15180 
15181   OPEN GetCustAcctParty;
15182   FETCH GetCustAcctParty INTO l_Party_ID;
15183   CLOSE GetCustAcctParty;
15184 
15185  END IF;
15186 
15187 
15188 
15189 
15190  --Setting values for l_PayerContext_Rec--
15191 -- l_PayerContext_Rec.Org_Type          := 'OPERATING_UNIT';
15192 -- l_PayerContext_Rec.Org_Id            := l_Authoring_Org_ID;
15193 -- l_PayerContext_Rec.Account_Site_Id   := l_Cust_Account_Site_ID;
15194  l_PayerContext_Rec.Payment_Function  := 'CUSTOMER_PAYMENT';
15195  l_PayerContext_Rec.Party_Id          := l_Party_ID;
15196  l_PayerContext_Rec.Cust_Account_Id   := l_Cust_Account_ID;
15197 
15198  --Setting values for l_TrxnExtension_rec--
15199  If (P_Header_ID IS NOT NULL and P_Line_ID IS NULL) then
15200   l_TrxnExtension_rec.order_id := P_Header_ID;
15201  Elsif (P_Header_ID IS NULL and P_Line_ID IS NOT NULL) then
15202   l_TrxnExtension_rec.order_id := P_Line_ID;
15203  End If;
15204 
15205  l_TrxnExtension_rec.originating_application_id := G_APP_ID;
15206  l_TrxnExtension_rec.Trxn_Ref_Number1 := to_char(SYSDATE,'ddmmyyyyhhmmssss');
15207 
15208  l_Payer_Equivalency := IBY_FNDCPT_COMMON_PUB.G_PAYER_EQUIV_UPWARD;
15209  l_Pmt_Channel      := 'CREDIT_CARD';
15210  l_instr_assignment := l_Instrument_Assignment_ID;
15211 
15212                 IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15213                  FND_LOG.string(FND_LOG.level_statement
15214                         ,l_module_name
15215                         ,'Org ID='||l_Authoring_Org_ID
15216 		        ||'Party ID='||l_Party_ID
15217 			||'Acct_Id ='||l_Cust_Account_ID
15218 			||'Site_Id='||l_Cust_Account_Site_ID
15219                          );
15220                 END IF;
15221 
15222      Begin
15223 
15224         IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension
15225                         (
15226                          p_api_version => P_api_version
15227 			,p_init_msg_list => p_init_msg_list
15228 			,p_commit => FND_API.G_FALSE
15229                         ,x_return_status => x_return_status
15230                         ,x_msg_count   => x_msg_count
15231                         ,x_msg_data    => x_msg_data
15232                         ,p_payer       => l_PayerContext_Rec
15233                         ,p_payer_equivalency => l_Payer_Equivalency
15234                         ,p_pmt_channel  => l_Pmt_channel
15235                         ,p_instr_assignment => l_instr_assignment
15236                         ,p_trxn_attribs     => l_TrxnExtension_rec
15237                         ,x_entity_id        => x_entity_id
15238                         ,x_response         => l_response
15239                          );
15240 
15241 
15242    --    IBY_FNDCPT_TRXN_PUB.Copy_Transaction_Extension
15243     --  (
15244     --   p_api_version        => p_api_version
15245     --  ,p_init_msg_list      => p_init_msg_list
15246     --  ,p_commit             => FND_API.G_FALSE
15247     --  ,x_return_status      => x_return_status
15248     --  ,x_msg_count          => x_msg_count
15249     --  ,x_msg_data           => x_msg_data
15250     --  ,p_payer              => l_PayerContext_Rec
15251     --  ,p_payer_equivalency  => l_Payer_Equivalency
15252     --  ,p_entities           => l_ext_entity_tab
15253     --  ,p_trxn_attribs       => l_TrxnExtension_rec
15254     --  ,x_entity_id          => x_entity_id
15255     --  ,x_response           => l_response
15256     --  );
15257 
15258 
15259 
15260          IF (x_return_status = FND_API.g_ret_sts_unexp_error) THEN
15261            fnd_message.set_name (g_app_name, 'OKS_IBY_API_ERROR');
15262            fnd_message.set_token
15263                           ('IBY_API_NAME',
15264                            'IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension : '||l_response.result_code);
15265            fnd_message.set_token ('ERROR_DTLS', l_response.result_message);
15266            fnd_msg_pub.ADD;
15267            RAISE fnd_api.g_exc_unexpected_error;
15268          ELSIF (x_return_status = FND_API.g_ret_sts_error) THEN
15269            fnd_message.set_name (g_app_name, 'OKS_IBY_API_ERROR');
15270            fnd_message.set_token
15271                           ('IBY_API_NAME',
15272                            'IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension :'||l_response.result_code);
15273            fnd_message.set_token ('ERROR_DTLS', l_response.result_message);
15274            fnd_msg_pub.ADD;
15275            RAISE fnd_api.g_exc_error;
15276          END IF;
15277 
15278 
15279 
15280 
15281          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15282            FND_LOG.string(FND_LOG.level_statement
15283 		        ,l_module_name
15284 		        ,'After call to IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension'
15285 			||',x_return_status='||x_return_status
15286 			||',Result Code ='||l_response.result_code
15287 			||',Result Category='||l_response.result_category
15288 			||',Result Message='||l_response.result_message
15289                          );
15290          END IF;
15291 
15292 
15293          EXCEPTION
15294             WHEN OTHERS THEN
15295 	        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
15296                  FND_LOG.string(FND_LOG.level_unexpected
15297                         ,l_module_name||'.EXCEPTION'
15298                         ,'Exception in call to IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension, x_return_status ='||x_return_status
15299 			 ||'SQLERRM ='||SQLERRM
15300                          );
15301                 END IF;
15302           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15303           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension', substr(SQLERRM,1,240));
15304           RAISE;
15305 
15306     End;
15307 
15308 END IF; --End of IF Check for l_CC_Expiry_Date--------------------------------------
15309 
15310     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
15311       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
15312          FND_LOG.string(FND_LOG.level_procedure
15313                         ,l_module_name||'.End'
15314                         ,'x_return_status ='||x_return_status
15315                          );
15316       END IF;
15317     END IF;
15318 
15319          EXCEPTION
15320             WHEN OTHERS THEN
15321                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
15322                  FND_LOG.string(FND_LOG.level_unexpected
15323                         ,l_module_name||'.EXCEPTION'
15324                         ,'General Exception in Create_Transaction_Exception, x_return_status ='||x_return_status
15325                          ||'SQLERRM ='||SQLERRM
15326                          );
15327                 END IF;
15328           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15329           IF GetInstrAssgnID%ISOPEN then
15330            CLOSE GetInstrAssgnID;
15331           END IF;
15332           IF GetAcctInfo%ISOPEN then
15333            CLOSE GetAcctInfo;
15334           END IF;
15335           IF GetCustAcctParty%ISOPEN then
15336            CLOSE GetCustAcctParty;
15337           END IF;
15338           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
15339           RAISE;
15340 
15341 End create_transaction_extension;
15342 
15343 ********************/
15344 
15345 
15346 /*=====================================================================================
15347 --Update_BP_StartDates: This procedure is used in Partial Copy to update the Start Dates of all the Business Process lines on the target contract
15348                         and its children based on the offset_period and offset_duration defined for the Business process lines
15349 			on the source contract.
15350 			Parameters:
15351 				P_From_Chr_ID : Source Contract ID
15352 				P_To_Chr_ID   : Target Contract ID
15353 =======================================================================================*/
15354 PROCEDURE Update_BP_StartDates(P_From_Chr_ID IN NUMBER
15355 			      ,P_To_Chr_ID IN NUMBER
15356 			      ,x_return_status OUT NOCOPY VARCHAR2) IS
15357 
15358  l_api_name        CONSTANT VARCHAR2(30) := 'Update_BP_StartDates';
15359  l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
15360 
15361 
15362  CURSOR getBPOffsetInformation IS
15363  select
15364   a.id
15365  ,a.start_date
15366  ,a.end_date
15367  ,b.offset_duration
15368  ,b.offset_period
15369  from
15370    OKC_K_LINES_B_TEMP a
15371   ,OKS_K_LINES_B b
15372  where
15373   a.dnz_chr_id = P_To_Chr_ID
15374   and a.lse_id in (3,21)
15375   and a.orig_system_id1 = b.cle_id(+)
15376   and a.DATES_CHANGED_YN = 'Y';
15377 
15378  l_BP_ID NUMBER;
15379  l_BP_Start_Date DATE;
15380  l_BP_End_Date   DATE;
15381  l_BP_Offset_Duration OKS_K_LINES_B.OFFSET_DURATION%TYPE;
15382  l_BP_Offset_Period   OKS_K_LINES_B.OFFSET_PERIOD%TYPE;
15383 
15384  l_Resultant_Start_Date DATE;
15385 
15386  CURSOR getBPLineandChildren IS
15387  select
15388   a.ID
15389  from
15390   OKC_K_LINES_B_TEMP a
15391  where a.dnz_chr_id = P_To_Chr_ID
15392  start with a.id = l_BP_ID
15393  connect by prior a.id = a.cle_id;
15394 
15395  l_BP_Child_ID NUMBER;
15396 
15397 Begin
15398  x_return_status := FND_API.G_RET_STS_SUCCESS;
15399     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15400         FND_LOG.string(FND_LOG.level_statement
15401            ,l_module_name
15402            ,'In Update_BP: P_To_Chr_ID :'||P_To_Chr_ID
15403            );
15404     END IF;
15405 
15406  OPEN getBPOffsetInformation;
15407  LOOP
15408  FETCH getBPOffsetInformation INTO
15409   l_BP_ID
15410  ,l_BP_Start_Date
15411  ,l_BP_End_Date
15412  ,l_BP_Offset_Duration
15413  ,l_BP_Offset_Period;
15414   EXIT WHEN getBPOffsetInformation%NOTFOUND;
15415       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15416         FND_LOG.string(FND_LOG.level_statement
15417            ,l_module_name
15418            ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.Update_BP'
15419 	  ||' BP ID : '||l_BP_ID
15420           ||' BP Start Date: '||l_BP_Start_Date
15421           ||' BP End Date: '||l_BP_End_Date
15422 	  ||' BP Offset Duration: '||l_BP_Offset_Duration
15423 	  ||' BP Offset Period: '||l_BP_Offset_Period
15424            );
15425       END IF;
15426 
15427     l_Resultant_Start_Date := okc_time_util_pub.get_enddate(p_start_date => l_BP_Start_Date
15428 							   ,p_timeunit => l_BP_Offset_Period
15429 							   ,p_duration => l_BP_Offset_Duration);
15430 
15431     If (l_BP_Offset_Duration >0) then
15432        l_Resultant_Start_Date := l_Resultant_Start_Date +1;
15433     Elsif (l_BP_Offset_Duration is NULL) then
15434        l_Resultant_Start_Date := l_BP_Start_Date;
15435     End If;
15436 
15437     If (l_Resultant_Start_Date > l_BP_End_Date) then
15438       l_Resultant_Start_Date := l_BP_End_Date;
15439     End If;
15440 
15441 
15442     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15443         FND_LOG.string(FND_LOG.level_statement
15444            ,l_module_name
15445            ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.Update_BP'
15446 	   ||' Resultant Date : '||l_Resultant_Start_Date
15447            );
15448     END IF;
15449 
15450     OPEN getBPLineandChildren;
15451     LOOP
15452     FETCH getBPLineandChildren INTO l_BP_Child_ID;
15453      EXIT WHEN getBPLineandChildren%NOTFOUND;
15454 
15455 
15456 
15457        UPDATE OKC_K_LINES_B_TEMP SET START_DATE = l_Resultant_Start_Date
15458        WHERE DNZ_CHR_ID = P_To_Chr_ID
15459        AND ID = l_BP_Child_ID;
15460 
15461     END LOOP;
15462     If (getBPLineandChildren%ISOPEN) then
15463      CLOSE getBPLineandChildren;
15464     End If;
15465  END LOOP;
15466  If (getBPOffsetInformation%ISOPEN) then
15467   CLOSE getBPOffsetInformation;
15468  End If;
15469 
15470   EXCEPTION
15471    WHEN OTHERS THEN
15472        OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
15473        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
15474          FND_LOG.string(FND_LOG.level_unexpected
15475                         ,l_module_name
15476                         ,SQLERRM
15477                         );
15478        END IF;
15479        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15480        If (getBPLineandChildren%ISOPEN) then
15481         CLOSE getBPLineandChildren;
15482        End If;
15483        If (getBPOffsetInformation%ISOPEN) then
15484         CLOSE getBPOffsetInformation;
15485        End If;
15486        RAISE;
15487 End Update_BP_StartDates;
15488 
15489 /*======================================================================================
15490  Function ContractPPSetupEXISTS(P_Chr_ID IN NUMBER) RETURN VARCHAR2
15491  P_Chr_ID : ID of the Contract whose Partial Period Setup needs to be checked for existence.
15492  Returns 'Y' if the Partial Period Setup on the Contract is NOT NULL (ie Period_Start and Period_Type are NOT NULL) else 'N'
15493  ======================================================================================*/
15494  Function ContractPPSetupEXISTS(P_Chr_ID IN NUMBER) RETURN VARCHAR2 IS
15495 
15496  l_api_name        CONSTANT VARCHAR2(30) := 'ContractPPSetupEXISTS';
15497  l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
15498 
15499  CURSOR getPPAttributes IS
15500  SELECT period_type, period_start
15501  FROM   oks_k_headers_b
15502  WHERE  chr_id = P_Chr_ID;
15503  l_period_type OKS_K_HEADERS_B.PERIOD_TYPE%TYPE;
15504  l_period_start OKS_K_HEADERS_B.PERIOD_START%TYPE;
15505 
15506  Begin
15507  OPEN getPPAttributes;
15508  FETCH getPPAttributes INTO l_period_type,l_period_start;
15509  CLOSE getPPAttributes;
15510 
15511  If (l_period_type IS NOT NULL) AND (l_period_start IS NOT NULL) then
15512    RETURN 'Y';
15513  Else
15514    RETURN 'N';
15515  End If;
15516 
15517     EXCEPTION
15518       WHEN OTHERS THEN
15519  	     OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
15520              IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
15521                FND_LOG.string(FND_LOG.level_unexpected
15522                              ,l_module_name
15523                              ,SQLERRM
15524                              );
15525              END IF;
15526              RAISE;
15527 
15528 
15529  End ContractPPSetupEXISTS;
15530 
15531  Function IsSourceContractTemplate(P_From_Chr_ID IN NUMBER) RETURN VARCHAR2 IS
15532  CURSOR GetTemplateYN IS
15533  select template_yn
15534  from okc_k_headers_b
15535  where id = P_From_Chr_ID;
15536 
15537  l_Template_YN VARCHAR2(1);
15538  Begin
15539   OPEN GetTemplateYN;
15540   FETCH GetTemplateYN INTO l_Template_YN;
15541   CLOSE GetTemplateYN;
15542 
15543   RETURN l_Template_YN;
15544    EXCEPTION
15545     WHEN OTHERS THEN
15546      IF GetTemplateYN%ISOPEN THEN
15547       CLOSE GetTemplateYN;
15548      End IF;
15549 
15550  End IsSourceContractTemplate;
15551 /*======================================================================================
15552 --Copy_Lines: This procedure copies all lines and its details for a given Contract Header
15553               This pricedure is used in COPY_CONTRACT API.
15554 		                  Parameters:
15555 					      P_From_Chr_ID: Header ID of the Source Contract
15556 						 P_To_Chr_ID  : Header ID of the Target Contract
15557 						 P_Renew_Ref_YN : Parameter to indicate if this routine is being called in
15558 						 the context of Contract Renewal or regular Copy. Valid
15559 						 values are 'Y' and 'N'
15560 p_include_cancelled_lines is used to check whether to copy cancelled_lines or not
15561 p_include_terminated_lines is used to check whether to copy terminated lines or not
15562 =======================================================================================*/
15563 PROCEDURE copy_lines(
15564        p_api_version      IN NUMBER
15565 	 ,p_init_msg_list    IN VARCHAR2 DEFAULT OKC_API.G_FALSE
15566 	 ,x_return_status    OUT NOCOPY VARCHAR2
15567 	 ,x_msg_count        OUT NOCOPY NUMBER
15568 	 ,x_msg_data         OUT NOCOPY VARCHAR2
15569 	 ,P_From_Chr_ID      IN NUMBER
15570 	 ,P_To_Chr_ID        IN NUMBER
15571 	 ,P_Renew_Ref_YN     IN VARCHAR2
15572 	 ,p_include_cancelled_lines IN VARCHAR2 DEFAULT 'Y'
15573 	 ,p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
15574 
15575  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_LINES';
15576  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
15577 
15578  l_SrcContractPPSetupExists_YN VARCHAR2(1) := ContractPPSetupEXISTS(P_Chr_ID => P_From_Chr_ID);
15579  l_GCDPPSetupExists_YN VARCHAR2(1) ;
15580 
15581   -- 03-Nov-2006 hkamdar. Bug# 5623498.
15582  CURSOR get_toplvl_uom(p_line_id IN NUMBER) IS
15583  SELECT OEL.PRICING_QUANTITY_UOM
15584        FROM   OKC_K_LINES_B OKCLINE,
15585               OKC_K_REL_OBJS OKCREL,
15586               OE_ORDER_LINES_ALL OEL
15587        WHERE  OKCLINE.LSE_ID IN (7,9,25)
15588        AND    OKCLINE.id = p_line_id
15589        AND    OKCLINE.ID =  OKCREL.CLE_ID
15590        AND    OEL.LINE_ID = OKCREL.OBJECT1_ID1;
15591 
15592  l_toplvl_uom_code   OKS_K_LINES_B.toplvl_uom_code%TYPE;
15593  -- 03-Nov-2006 hkamdar. Bug# 5623498.
15594 
15595 -- Bug# 5531198 hkamdar 21-Sep-2006
15596  ---------------------------------------------------------------------------
15597   ------------Cursor to get PRICE UOM of newly created contract--------
15598   CURSOR get_new_price_uom(P_To_Chr_ID IN NUMBER) IS
15599   select price_uom
15600   from oks_k_headers_b
15601   where chr_id = P_To_Chr_ID;
15602 
15603   l_TrgtHeaderPriceUom         OKS_K_HEADERS_B.PRICE_UOM%TYPE := NULL;
15604   l_TrgtHeaderPriceUomExists_YN VARCHAR2(1);
15605   ----------------------------------------------------------------------------
15606 -- End Bug# 5531198 hkamdar 21-Sep-2006
15607 
15608 /*if p_include_cancelled_lines 'Y' AND p_include_terminated_lines = 'Y' */
15609 /* Cursor to get rows to be copied from:
15610 	OKC_K_LINES_B
15611 	OKS_K_LINES_B
15612 	OKC_K_ITEMS
15613    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
15614   CURSOR GetOKCOKSLinesB_Copy(P_From_Chr_ID IN NUMBER
15615 				  ,P_To_Chr_ID IN NUMBER) IS
15616   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
15617   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
15618    okcB.ID                                          AS OkcB_OldOKCLineID
15619   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
15620   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
15621   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
15622   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
15623   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
15624   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
15625   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
15626   ,NULL				                    AS OkcB_TRN_CODE
15627   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
15628   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
15629   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
15630   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
15631   ,decode(okcB.DATE_TERMINATED
15632          ,NULL
15633          ,decode(okcB.LSE_ID
15634                 ,46
15635                 ,decode(okcB.DATE_CANCELLED
15636                        ,NULL
15637                        ,okcB.PRICE_NEGOTIATED
15638                        ,okcB.CANCELLED_AMOUNT
15639                        )
15640                 ,okcB.PRICE_NEGOTIATED
15641                 )
15642          ,nvl(okcB.PRICE_NEGOTIATED,0)
15643           +nvl(oksB.CREDIT_AMOUNT,0)
15644           +nvl(oksB.UBT_AMOUNT,0)
15645           +nvl(oksB.SUPPRESSED_CREDIT,0)
15646          ) 					    AS OkcB_PRICE_NEGOTIATED
15647   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
15648   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
15649   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
15650   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
15651   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
15652   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
15653   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
15654   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
15655   ,NULL			                            AS OkcB_DATE_TERMINATED
15656   ,okcB.START_DATE                                  AS OkcB_START_DATE
15657   ,okcB.END_DATE                                    AS OkcB_END_DATE
15658   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
15659   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
15660   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
15661   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
15662   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
15663   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
15664   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
15665   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
15666   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
15667   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
15668   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
15669   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
15670   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
15671   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
15672   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
15673   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
15674   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
15675   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
15676   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
15677   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
15678   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
15679   ,NULL				    		    AS OkcB_DATE_RENEWED
15680   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
15681   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
15682   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
15683   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
15684   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
15685   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
15686   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
15687   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
15688   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
15689   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
15690   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
15691   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
15692   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
15693   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
15694   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
15695   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
15696   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
15697   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
15698   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
15699   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
15700   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
15701   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
15702   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
15703   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
15704   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
15705   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
15706   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
15707   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
15708   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
15709   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
15710   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
15711   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
15712   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
15713   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
15714   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
15715   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
15716   ,NULL						    AS OkcB_DATE_CANCELLED
15717   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
15718   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
15719   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
15720   ,NULL						    AS OkcB_CANCELLED_AMOUNT
15721   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
15722   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
15723   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
15724   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
15725   ,oksB.ID                                		AS OksB_OldOksLineID
15726   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
15727   ,oksB.CLE_ID  					AS OksB_CLE_ID
15728   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
15729   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
15730   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
15731   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
15732   ,NULL                                                 AS OksB_CC_NO --Obsolete
15733   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
15734   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
15735   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
15736   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
15737   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
15738   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
15739   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
15740   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
15741   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
15742   ,NULL							AS OksB_UBT_AMOUNT
15743   ,NULL							AS OksB_CREDIT_AMOUNT
15744   ,NULL							AS OksB_SUPPRESSED_CREDIT
15745   ,NULL							AS OksB_OVERRIDE_AMOUNT
15746   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
15747   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
15748   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
15749   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
15750   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
15751   -- Bug# 5531198 hkamdar 21-Sep-2006
15752   /*
15753   ,decode(l_SrcContractPPSetupExists_YN
15754           ,'Y'
15755           ,oksB.PRICE_UOM
15756           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
15757   ,decode(l_SrcContractPPSetupExists_YN
15758           ,'Y'
15759           ,oksB.PRICE_UOM
15760           ,decode(l_TrgtHeaderPriceUomExists_YN
15761 	          ,'Y'
15762 		  ,l_TrgtHeaderPriceUom
15763 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
15764   -- End Bug# 5531198 hkamdar 21-Sep-2006
15765   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
15766   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
15767   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
15768   ,oksB.TAX_CODE					AS OksB_TAX_CODE
15769   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
15770   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
15771   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
15772   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
15773   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
15774   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
15775   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
15776   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
15777   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
15778   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
15779   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
15780   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
15781   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
15782   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
15783   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
15784   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
15785   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
15786   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
15787   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
15788   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
15789   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
15790   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
15791   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
15792   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
15793   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
15794   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
15795   ,oksB.BASE_READING					AS OksB_BASE_READING
15796   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
15797   ,NULL							AS OksB_FULL_CREDIT
15798   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
15799   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
15800   ,oksB.PRORATE						AS OksB_PRORATE
15801   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
15802   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
15803   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
15804   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
15805   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
15806   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
15807   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
15808   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
15809   ,oksB.PDF_ID						AS OksB_PDF_ID
15810   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
15811   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
15812   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
15813   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
15814   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
15815   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
15816   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
15817   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
15818   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
15819   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
15820   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
15821   ,1							AS OksB_OBJECT_VERSION_NUMBER
15822   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
15823   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
15824   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
15825   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
15826   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
15827   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
15828   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
15829   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
15830   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
15831   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
15832   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
15833   --------------------------------End of OKS_K_LINES_B columns-------------------------
15834   --------------------------------Start of OKC_K_ITEMS columns-------------------------
15835   ,okcI.ID                                     		AS OkcI_OldOkcItemID
15836   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
15837   ,okcI.CLE_ID						AS OkcI_CLE_ID
15838   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
15839   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
15840   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
15841   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
15842   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
15843   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
15844   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
15845   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
15846   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
15847   ,1							AS OkcI_OBJECT_VERSION_NUMBER
15848   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
15849   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
15850   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
15851   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
15852   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
15853   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
15854   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
15855   FROM
15856    OKC_K_LINES_B okcB
15857   ,OKS_K_LINES_B oksB
15858   ,OKC_K_ITEMS okcI
15859   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
15860   AND okcB.ID = oksB.CLE_ID(+)
15861   AND okcB.ID = okcI.CLE_ID(+)
15862   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
15863   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID;
15864 
15865 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy-----------------
15866 
15867 /*if p_include_cancelled_lines ='Y' and p_include_terminated_lines = 'N'*/
15868 /* Cursor to get rows to be copied from:
15869 	OKC_K_LINES_B
15870 	OKS_K_LINES_B
15871 	OKC_K_ITEMS
15872    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
15873   CURSOR GetOKCOKSLinesB_Copy_CANCEL(P_From_Chr_ID IN NUMBER
15874 				  ,P_To_Chr_ID IN NUMBER) IS
15875   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
15876   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
15877    okcB.ID                                          AS OkcB_OldOKCLineID
15878   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
15879   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
15880   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
15881   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
15882   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
15883   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
15884   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
15885   ,NULL				                    AS OkcB_TRN_CODE
15886   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
15887   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
15888   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
15889   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
15890   ,decode(okcB.DATE_TERMINATED
15891          ,NULL
15892          ,decode(okcB.LSE_ID
15893                 ,46
15894                 ,decode(okcB.DATE_CANCELLED
15895                        ,NULL
15896                        ,okcB.PRICE_NEGOTIATED
15897                        ,okcB.CANCELLED_AMOUNT
15898                        )
15899                 ,okcB.PRICE_NEGOTIATED
15900                 )
15901          ,nvl(okcB.PRICE_NEGOTIATED,0)
15902           +nvl(oksB.CREDIT_AMOUNT,0)
15903           +nvl(oksB.UBT_AMOUNT,0)
15904           +nvl(oksB.SUPPRESSED_CREDIT,0)
15905          ) 					    AS OkcB_PRICE_NEGOTIATED
15906   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
15907   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
15908   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
15909   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
15910   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
15911   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
15912   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
15913   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
15914   ,NULL			                            AS OkcB_DATE_TERMINATED
15915   ,okcB.START_DATE                                  AS OkcB_START_DATE
15916   ,okcB.END_DATE                                    AS OkcB_END_DATE
15917   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
15918   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
15919   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
15920   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
15921   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
15922   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
15923   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
15924   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
15925   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
15926   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
15927   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
15928   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
15929   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
15930   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
15931   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
15932   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
15933   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
15934   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
15935   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
15936   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
15937   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
15938   ,NULL				    		    AS OkcB_DATE_RENEWED
15939   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
15940   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
15941   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
15942   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
15943   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
15944   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
15945   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
15946   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
15947   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
15948   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
15949   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
15950   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
15951   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
15952   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
15953   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
15954   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
15955   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
15956   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
15957   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
15958   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
15959   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
15960   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
15961   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
15962   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
15963   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
15964   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
15965   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
15966   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
15967   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
15968   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
15969   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
15970   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
15971   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
15972   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
15973   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
15974   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
15975   ,NULL						    AS OkcB_DATE_CANCELLED
15976   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
15977   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
15978   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
15979   ,NULL						    AS OkcB_CANCELLED_AMOUNT
15980   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
15981   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
15982   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
15983   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
15984   ,oksB.ID                                		AS OksB_OldOksLineID
15985   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
15986   ,oksB.CLE_ID  					AS OksB_CLE_ID
15987   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
15988   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
15989   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
15990   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
15991   ,NULL                                                 AS OksB_CC_NO --Obsolete
15992   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
15993   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
15994   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
15995   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
15996   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
15997   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
15998   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
15999   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
16000   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
16001   ,NULL							AS OksB_UBT_AMOUNT
16002   ,NULL							AS OksB_CREDIT_AMOUNT
16003   ,NULL							AS OksB_SUPPRESSED_CREDIT
16004   ,NULL							AS OksB_OVERRIDE_AMOUNT
16005   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
16006   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
16007   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
16008   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
16009   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
16010   -- Bug# 5531198 hkamdar 21-Sep-2006
16011   /*
16012   ,decode(l_SrcContractPPSetupExists_YN
16013           ,'Y'
16014           ,oksB.PRICE_UOM
16015           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16016   ,decode(l_SrcContractPPSetupExists_YN
16017           ,'Y'
16018           ,oksB.PRICE_UOM
16019           ,decode(l_TrgtHeaderPriceUomExists_YN
16020 	          ,'Y'
16021 		  ,l_TrgtHeaderPriceUom
16022 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16023   -- End Bug# 5531198 hkamdar 21-Sep-2006
16024   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
16025   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
16026   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
16027   ,oksB.TAX_CODE					AS OksB_TAX_CODE
16028   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
16029   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
16030   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
16031   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
16032   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
16033   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
16034   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
16035   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
16036   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
16037   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
16038   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
16039   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
16040   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
16041   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
16042   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
16043   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
16044   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
16045   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
16046   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
16047   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
16048   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
16049   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
16050   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
16051   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
16052   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
16053   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
16054   ,oksB.BASE_READING					AS OksB_BASE_READING
16055   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
16056   ,NULL							AS OksB_FULL_CREDIT
16057   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
16058   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
16059   ,oksB.PRORATE						AS OksB_PRORATE
16060   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
16061   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
16062   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
16063   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
16064   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
16065   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
16066   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
16067   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
16068   ,oksB.PDF_ID						AS OksB_PDF_ID
16069   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
16070   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
16071   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
16072   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
16073   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
16074   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
16075   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
16076   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
16077   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
16078   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
16079   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
16080   ,1							AS OksB_OBJECT_VERSION_NUMBER
16081   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
16082   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
16083   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
16084   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
16085   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
16086   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
16087   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
16088   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
16089   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
16090   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
16091   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
16092   --------------------------------End of OKS_K_LINES_B columns-------------------------
16093   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16094   ,okcI.ID                                     		AS OkcI_OldOkcItemID
16095   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
16096   ,okcI.CLE_ID						AS OkcI_CLE_ID
16097   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
16098   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
16099   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
16100   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
16101   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
16102   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
16103   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
16104   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
16105   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
16106   ,1							AS OkcI_OBJECT_VERSION_NUMBER
16107   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
16108   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
16109   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16110   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
16111   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
16112   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
16113   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
16114   FROM
16115    OKC_K_LINES_B okcB
16116   ,OKS_K_LINES_B oksB
16117   ,OKC_K_ITEMS okcI
16118   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
16119   AND okcB.ID = oksB.CLE_ID(+)
16120   AND okcB.ID = okcI.CLE_ID(+)
16121   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16122   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16123   AND okcB.date_terminated IS NULL;
16124 
16125 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy_CANCEL-----------------
16126 
16127 /*if p_include_cancelled_lines = 'N' and p_include_terminated_lines = 'Y' */
16128 /* Cursor to get rows to be copied from:
16129 	OKC_K_LINES_B
16130 	OKS_K_LINES_B
16131 	OKC_K_ITEMS
16132    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
16133   CURSOR GetOKCOKSLinesB_Copy_TERMN(P_From_Chr_ID IN NUMBER
16134 				  ,P_To_Chr_ID IN NUMBER) IS
16135   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
16136   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
16137    okcB.ID                                          AS OkcB_OldOKCLineID
16138   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
16139   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
16140   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
16141   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
16142   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
16143   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
16144   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
16145   ,NULL				                    AS OkcB_TRN_CODE
16146   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
16147   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
16148   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
16149   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
16150   ,decode(okcB.DATE_TERMINATED
16151          ,NULL
16152          ,decode(okcB.LSE_ID
16153                 ,46
16154                 ,decode(okcB.DATE_CANCELLED
16155                        ,NULL
16156                        ,okcB.PRICE_NEGOTIATED
16157                        ,okcB.CANCELLED_AMOUNT
16158                        )
16159                 ,okcB.PRICE_NEGOTIATED
16160                 )
16161          ,nvl(okcB.PRICE_NEGOTIATED,0)
16162           +nvl(oksB.CREDIT_AMOUNT,0)
16163           +nvl(oksB.UBT_AMOUNT,0)
16164           +nvl(oksB.SUPPRESSED_CREDIT,0)
16165          ) 					    AS OkcB_PRICE_NEGOTIATED
16166   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
16167   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
16168   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
16169   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
16170   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
16171   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
16172   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
16173   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
16174   ,NULL			                            AS OkcB_DATE_TERMINATED
16175   ,okcB.START_DATE                                  AS OkcB_START_DATE
16176   ,okcB.END_DATE                                    AS OkcB_END_DATE
16177   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
16178   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
16179   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
16180   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
16181   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
16182   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
16183   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
16184   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
16185   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
16186   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
16187   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
16188   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
16189   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
16190   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
16191   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
16192   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
16193   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
16194   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
16195   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
16196   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
16197   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16198   ,NULL				    		    AS OkcB_DATE_RENEWED
16199   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
16200   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
16201   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
16202   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
16203   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
16204   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16205   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16206   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16207   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16208   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16209   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16210   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16211   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16212   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16213   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16214   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16215   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16216   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16217   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16218   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16219   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16220   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16221   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16222   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16223   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16224   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16225   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16226   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16227   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16228   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16229   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16230   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16231   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16232   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16233   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16234   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16235   ,NULL						    AS OkcB_DATE_CANCELLED
16236   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
16237   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16238   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16239   ,NULL						    AS OkcB_CANCELLED_AMOUNT
16240   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16241   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
16242   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16243   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16244   ,oksB.ID                                		AS OksB_OldOksLineID
16245   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
16246   ,oksB.CLE_ID  					AS OksB_CLE_ID
16247   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
16248   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
16249   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
16250   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
16251   ,NULL                                                 AS OksB_CC_NO --Obsolete
16252   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
16253   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
16254   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
16255   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
16256   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
16257   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
16258   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
16259   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
16260   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
16261   ,NULL							AS OksB_UBT_AMOUNT
16262   ,NULL							AS OksB_CREDIT_AMOUNT
16263   ,NULL							AS OksB_SUPPRESSED_CREDIT
16264   ,NULL							AS OksB_OVERRIDE_AMOUNT
16265   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
16266   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
16267   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
16268   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
16269   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
16270   -- Bug# 5531198 hkamdar 21-Sep-2006
16271   /*
16272   ,decode(l_SrcContractPPSetupExists_YN
16273           ,'Y'
16274           ,oksB.PRICE_UOM
16275           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16276   ,decode(l_SrcContractPPSetupExists_YN
16277           ,'Y'
16278           ,oksB.PRICE_UOM
16279           ,decode(l_TrgtHeaderPriceUomExists_YN
16280 	          ,'Y'
16281 		  ,l_TrgtHeaderPriceUom
16282 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16283   -- End Bug# 5531198 hkamdar 21-Sep-2006
16284   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
16285   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
16286   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
16287   ,oksB.TAX_CODE					AS OksB_TAX_CODE
16288   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
16289   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
16290   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
16291   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
16292   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
16293   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
16294   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
16295   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
16296   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
16297   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
16298   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
16299   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
16300   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
16301   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
16302   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
16303   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
16304   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
16305   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
16306   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
16307   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
16308   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
16309   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
16310   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
16311   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
16312   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
16313   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
16314   ,oksB.BASE_READING					AS OksB_BASE_READING
16315   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
16316   ,NULL							AS OksB_FULL_CREDIT
16317   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
16318   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
16319   ,oksB.PRORATE						AS OksB_PRORATE
16320   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
16321   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
16322   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
16323   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
16324   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
16325   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
16326   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
16327   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
16328   ,oksB.PDF_ID						AS OksB_PDF_ID
16329   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
16330   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
16331   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
16332   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
16333   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
16334   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
16335   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
16336   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
16337   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
16338   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
16339   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
16340   ,1							AS OksB_OBJECT_VERSION_NUMBER
16341   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
16342   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
16343   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
16344   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
16345   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
16346   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
16347   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
16348   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
16349   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
16350   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
16351   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
16352   --------------------------------End of OKS_K_LINES_B columns-------------------------
16353   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16354   ,okcI.ID                                     		AS OkcI_OldOkcItemID
16355   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
16356   ,okcI.CLE_ID						AS OkcI_CLE_ID
16357   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
16358   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
16359   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
16360   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
16361   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
16362   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
16363   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
16364   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
16365   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
16366   ,1							AS OkcI_OBJECT_VERSION_NUMBER
16367   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
16368   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
16369   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16370   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
16371   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
16372   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
16373   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
16374   FROM
16375    OKC_K_LINES_B okcB
16376   ,OKS_K_LINES_B oksB
16377   ,OKC_K_ITEMS okcI
16378   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
16379   AND okcB.ID = oksB.CLE_ID(+)
16380   AND okcB.ID = okcI.CLE_ID(+)
16381   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16382   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16383   AND okcB.date_cancelled IS NULL;
16384 
16385 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy_termn-----------------
16386 
16387 /*if p_include_cancelled_lines = 'N' and p_include_terminated_lines = 'N' */
16388 /* Cursor to get rows to be copied from:
16389 	OKC_K_LINES_B
16390 	OKS_K_LINES_B
16391 	OKC_K_ITEMS
16392    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
16393   CURSOR GetOKCOKSLinesB_Copy_exclude(P_From_Chr_ID IN NUMBER
16394 				  ,P_To_Chr_ID IN NUMBER) IS
16395   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
16396   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
16397    okcB.ID                                          AS OkcB_OldOKCLineID
16398   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
16399   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
16400   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
16401   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
16402   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
16403   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
16404   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
16405   ,NULL				                    AS OkcB_TRN_CODE
16406   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
16407   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
16408   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
16409   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
16410   ,decode(okcB.DATE_TERMINATED
16411          ,NULL
16412          ,decode(okcB.LSE_ID
16413                 ,46
16414                 ,decode(okcB.DATE_CANCELLED
16415                        ,NULL
16416                        ,okcB.PRICE_NEGOTIATED
16417                        ,okcB.CANCELLED_AMOUNT
16418                        )
16419                 ,okcB.PRICE_NEGOTIATED
16420                 )
16421          ,nvl(okcB.PRICE_NEGOTIATED,0)
16422           +nvl(oksB.CREDIT_AMOUNT,0)
16423           +nvl(oksB.UBT_AMOUNT,0)
16424           +nvl(oksB.SUPPRESSED_CREDIT,0)
16425          ) 					    AS OkcB_PRICE_NEGOTIATED
16426   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
16427   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
16428   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
16429   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
16430   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
16431   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
16432   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
16433   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
16434   ,NULL			                            AS OkcB_DATE_TERMINATED
16435   ,okcB.START_DATE                                  AS OkcB_START_DATE
16436   ,okcB.END_DATE                                    AS OkcB_END_DATE
16437   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
16438   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
16439   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
16440   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
16441   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
16442   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
16443   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
16444   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
16445   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
16446   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
16447   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
16448   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
16449   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
16450   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
16451   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
16452   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
16453   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
16454   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
16455   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
16456   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
16457   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16458   ,NULL				    		    AS OkcB_DATE_RENEWED
16459   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
16460   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
16461   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
16462   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
16463   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
16464   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16465   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16466   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16467   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16468   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16469   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16470   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16471   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16472   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16473   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16474   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16475   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16476   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16477   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16478   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16479   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16480   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16481   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16482   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16483   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16484   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16485   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16486   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16487   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16488   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16489   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16490   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16491   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16492   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16493   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16494   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16495   ,NULL						    AS OkcB_DATE_CANCELLED
16496   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
16497   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16498   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16499   ,NULL						    AS OkcB_CANCELLED_AMOUNT
16500   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16501   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
16502   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16503   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16504   ,oksB.ID                                		AS OksB_OldOksLineID
16505   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
16506   ,oksB.CLE_ID  					AS OksB_CLE_ID
16507   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
16508   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
16509   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
16510   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
16511   ,NULL                                                 AS OksB_CC_NO --Obsolete
16512   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
16513   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
16514   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
16515   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
16516   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
16517   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
16518   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
16519   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
16520   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
16521   ,NULL							AS OksB_UBT_AMOUNT
16522   ,NULL							AS OksB_CREDIT_AMOUNT
16523   ,NULL							AS OksB_SUPPRESSED_CREDIT
16524   ,NULL							AS OksB_OVERRIDE_AMOUNT
16525   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
16526   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
16527   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
16528   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
16529   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
16530   -- Bug# 5531198 hkamdar 21-Sep-2006
16531   /*
16532   ,decode(l_SrcContractPPSetupExists_YN
16533           ,'Y'
16534           ,oksB.PRICE_UOM
16535           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16536   ,decode(l_SrcContractPPSetupExists_YN
16537           ,'Y'
16538           ,oksB.PRICE_UOM
16539           ,decode(l_TrgtHeaderPriceUomExists_YN
16540 	          ,'Y'
16541 		  ,l_TrgtHeaderPriceUom
16542 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16543   -- End Bug# 5531198 hkamdar 21-Sep-2006
16544   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
16545   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
16546   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
16547   ,oksB.TAX_CODE					AS OksB_TAX_CODE
16548   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
16549   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
16550   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
16551   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
16552   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
16553   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
16554   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
16555   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
16556   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
16557   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
16558   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
16559   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
16560   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
16561   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
16562   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
16563   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
16564   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
16565   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
16566   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
16567   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
16568   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
16569   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
16570   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
16571   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
16572   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
16573   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
16574   ,oksB.BASE_READING					AS OksB_BASE_READING
16575   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
16576   ,NULL							AS OksB_FULL_CREDIT
16577   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
16578   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
16579   ,oksB.PRORATE						AS OksB_PRORATE
16580   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
16581   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
16582   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
16583   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
16584   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
16585   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
16586   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
16587   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
16588   ,oksB.PDF_ID						AS OksB_PDF_ID
16589   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
16590   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
16591   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
16592   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
16593   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
16594   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
16595   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
16596   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
16597   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
16598   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
16599   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
16600   ,1							AS OksB_OBJECT_VERSION_NUMBER
16601   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
16602   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
16603   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
16604   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
16605   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
16606   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
16607   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
16608   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
16609   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
16610   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
16611   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
16612   --------------------------------End of OKS_K_LINES_B columns-------------------------
16613   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16614   ,okcI.ID                                     		AS OkcI_OldOkcItemID
16615   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
16616   ,okcI.CLE_ID						AS OkcI_CLE_ID
16617   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
16618   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
16619   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
16620   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
16621   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
16622   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
16623   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
16624   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
16625   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
16626   ,1							AS OkcI_OBJECT_VERSION_NUMBER
16627   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
16628   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
16629   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16630   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
16631   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
16632   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
16633   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
16634   FROM
16635    OKC_K_LINES_B okcB
16636   ,OKS_K_LINES_B oksB
16637   ,OKC_K_ITEMS okcI
16638   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
16639   AND okcB.ID = oksB.CLE_ID(+)
16640   AND okcB.ID = okcI.CLE_ID(+)
16641   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16642   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16643   AND okcB.date_cancelled is null
16644   AND okcB.date_terminated is null;
16645 
16646 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy_EXCLUDE-----------------
16647 
16648 
16649 /* Cursor to get rows to be copied from:
16650 	OKC_K_LINES_B
16651 	OKS_K_LINES_B
16652 	OKC_K_ITEMS
16653    for a specified Source Contracti. This cursor is used when P_Renew_Ref_YN = 'Y'. It filters out
16654    the lines that have been renewed,cancelled or terminated or have been marked as 'DNR' (Do not renew) */
16655 
16656   CURSOR GetOKCOKSLinesB_Renew(P_From_Chr_ID IN NUMBER
16657 				    ,P_To_Chr_ID IN NUMBER) IS
16658   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
16659   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
16660    okcB.ID							      AS OkcB_OldOKCLineID
16661   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS OkcB_NewOKCLineID --Target Value
16662   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
16663   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
16664   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
16665   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
16666   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
16667   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
16668   ,okcB.TRN_CODE			            AS OkcB_TRN_CODE
16669   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
16670   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
16671   ,1						    AS OkcB_OBJECT_VERSION_NUMBER
16672   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
16673   ,okcB.PRICE_NEGOTIATED 			    AS OkcB_PRICE_NEGOTIATED
16674   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
16675   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
16676   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
16677   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
16678   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
16679   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
16680   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
16681   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
16682   ,NULL			                            AS OkcB_DATE_TERMINATED
16683   ,okcB.START_DATE                                  AS OkcB_START_DATE
16684   ,okcB.END_DATE                                    AS OkcB_END_DATE
16685   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
16686   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
16687   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
16688   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
16689   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
16690   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
16691   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
16692   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
16693   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
16694   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
16695   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
16696   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
16697   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
16698   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
16699   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
16700   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
16701   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
16702   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
16703   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
16704   /*Commented and Modified by sjanakir for Bug# 7214731
16705   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
16706   ,okcB.UPG_ORIG_SYSTEM_REF_ID			    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16707   */
16708   ,NULL			    AS OkcB_UPG_ORIG_SYSTEM_REF
16709   ,NULL			    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16710   ,NULL						    AS OkcB_DATE_RENEWED
16711   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
16712   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
16713   ,'OKC_LINE'                                       AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
16714   ,okcB.PROGRAM_APPLICATION_ID			    AS OkcB_PROGRAM_APPLICATION_ID
16715   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
16716   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16717   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16718   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16719   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16720   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16721   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16722   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16723   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16724   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16725   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16726   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16727   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16728   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16729   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16730   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16731   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16732   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16733   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16734   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16735   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16736   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16737   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16738   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16739   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16740   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16741   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16742   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16743   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16744   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16745   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16746   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16747   ,NULL						    AS OkcB_DATE_CANCELLED
16748   ,NULL			    			    AS OkcB_TERM_CANCEL_SOURCE
16749   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16750   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16751   ,NULL			    			    AS OkcB_CANCELLED_AMOUNT
16752   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16753   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')        AS OkcB_LINE_TERMINATED_FLAG
16754   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16755   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16756   ,oksB.ID					    AS OksB_OldOksLineID
16757   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OksB_NewOksLineID
16758   ,oksB.CLE_ID  				    AS OksB_CLE_ID
16759   ,P_To_Chr_ID 					    AS OksB_NewDnzChrID
16760   ,oksB.DISCOUNT_LIST				    AS OksB_DISCOUNT_LIST
16761   ,oksB.ACCT_RULE_ID				    AS OksB_ACCT_RULE_ID
16762   ,oksB.PAYMENT_TYPE				    AS OksB_PAYMENT_TYPE
16763   ,NULL						    AS OksB_CC_NO --Obsolete
16764   ,NULL						    AS OksB_CC_EXPIRY_DATE --Obsolete
16765   ,NULL						    AS OksB_CC_BANK_ACCT_ID --Obsolete
16766   ,NULL						    AS OksB_CC_AUTH_CODE --Obsolete
16767   ,oksB.COMMITMENT_ID				    AS OksB_COMMITMENT_ID
16768   ,oksB.LOCKED_PRICE_LIST_ID			    AS OksB_LOCKED_PRICE_LIST_ID
16769   ,oksB.USAGE_EST_YN				    AS OksB_USAGE_EST_YN
16770   ,oksB.USAGE_EST_METHOD			    AS OksB_USAGE_EST_METHOD
16771   ,oksB.USAGE_EST_START_DATE			    AS OksB_USAGE_EST_START_DATE
16772   ,oksB.TERMN_METHOD				    AS OksB_TERMN_METHOD
16773   ,NULL						    AS OksB_UBT_AMOUNT
16774   ,NULL						    AS OksB_CREDIT_AMOUNT
16775   ,NULL 					    AS OksB_SUPPRESSED_CREDIT
16776   ,NULL						    AS OksB_OVERRIDE_AMOUNT
16777   ,oksB.CUST_PO_NUMBER_REQ_YN			    AS OksB_CUST_PO_NUMBER_REQ_YN
16778   ,oksB.CUST_PO_NUMBER				    AS OksB_CUST_PO_NUMBER
16779   ,oksB.GRACE_DURATION				    AS OksB_GRACE_DURATION
16780   ,oksB.GRACE_PERIOD				    AS OksB_GRACE_PERIOD
16781   ,oksB.INV_PRINT_FLAG				    AS OksB_INV_PRINT_FLAG
16782   -- Bug# 5531198 hkamdar 21-Sep-2006
16783   /*
16784   ,decode(l_SrcContractPPSetupExists_YN
16785           ,'Y'
16786           ,oksB.PRICE_UOM
16787           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16788   ,decode(l_SrcContractPPSetupExists_YN
16789           ,'Y'
16790           ,oksB.PRICE_UOM
16791           ,decode(l_TrgtHeaderPriceUomExists_YN
16792 	          ,'Y'
16793 		  ,l_TrgtHeaderPriceUom
16794 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16795   -- End Bug# 5531198 hkamdar 21-Sep-2006
16796   ,oksB.TAX_AMOUNT				    AS OksB_TAX_AMOUNT
16797   ,oksB.TAX_INCLUSIVE_YN			    AS OksB_TAX_INCLUSIVE_YN
16798   ,oksB.TAX_STATUS				    AS OksB_TAX_STATUS
16799   ,oksB.TAX_CODE				    AS OksB_TAX_CODE
16800   ,oksB.TAX_EXEMPTION_ID			    AS OksB_TAX_EXEMPTION_ID
16801   ,oksB.IB_TRANS_TYPE				    AS OksB_IB_TRANS_TYPE
16802   ,oksB.IB_TRANS_DATE				    AS OksB_IB_TRANS_DATE
16803   ,oksB.PROD_PRICE				    AS OksB_PROD_PRICE
16804   ,oksB.SERVICE_PRICE				    AS OksB_SERVICE_PRICE
16805   ,oksB.CLVL_LIST_PRICE				    AS OksB_CLVL_LIST_PRICE
16806   ,oksB.CLVL_QUANTITY				    AS OksB_CLVL_QUANTITY
16807   ,oksB.CLVL_EXTENDED_AMT			    AS OksB_CLVL_EXTENDED_AMT
16808   ,oksB.CLVL_UOM_CODE				    AS OksB_CLVL_UOM_CODE
16809   ,oksB.TOPLVL_OPERAND_CODE			    AS OksB_TOPLVL_OPERAND_CODE
16810   ,oksB.TOPLVL_OPERAND_VAL			    AS OksB_TOPLVL_OPERAND_VAL
16811   ,oksB.TOPLVL_QUANTITY				    AS OksB_TOPLVL_QUANTITY
16812   ,oksB.TOPLVL_UOM_CODE				    AS OksB_TOPLVL_UOM_CODE
16813   ,oksB.TOPLVL_ADJ_PRICE			    AS OksB_TOPLVL_ADJ_PRICE
16814   ,oksB.TOPLVL_PRICE_QTY			    AS OksB_TOPLVL_PRICE_QTY
16815   ,oksB.AVERAGING_INTERVAL			    AS OksB_AVERAGING_INTERVAL
16816   ,oksB.SETTLEMENT_INTERVAL			    AS OksB_SETTLEMENT_INTERVAL
16817   ,oksB.MINIMUM_QUANTITY			    AS OksB_MINIMUM_QUANTITY
16818   ,oksB.DEFAULT_QUANTITY			    AS OksB_DEFAULT_QUANTITY
16819   ,oksB.AMCV_FLAG				    AS OksB_AMCV_FLAG
16820   ,oksB.FIXED_QUANTITY				    AS OksB_FIXED_QUANTITY
16821   ,oksB.USAGE_DURATION				    AS OksB_USAGE_DURATION
16822   ,oksB.USAGE_PERIOD				    AS OksB_USAGE_PERIOD
16823   ,oksB.LEVEL_YN				    AS OksB_LEVEL_YN
16824   ,oksB.USAGE_TYPE				    AS OksB_USAGE_TYPE
16825   ,oksB.UOM_QUANTIFIED				    AS OksB_UOM_QUANTIFIED
16826   ,oksB.BASE_READING				    AS OksB_BASE_READING
16827   ,oksB.BILLING_SCHEDULE_TYPE			AS OksB_BILLING_SCHEDULE_TYPE
16828   ,NULL						AS OksB_FULL_CREDIT
16829   ,oksB.LOCKED_PRICE_LIST_LINE_ID		AS OksB_LOCKED_PRICE_LIST_LINE_ID
16830   ,oksB.BREAK_UOM				AS OksB_BREAK_UOM
16831   ,oksB.PRORATE					AS OksB_PRORATE
16832   ,oksB.COVERAGE_TYPE				AS OksB_COVERAGE_TYPE
16833   ,oksB.EXCEPTION_COV_ID			AS OksB_EXCEPTION_COV_ID
16834   ,oksB.LIMIT_UOM_QUANTIFIED			AS OksB_LIMIT_UOM_QUANTIFIED
16835   ,oksB.DISCOUNT_AMOUNT				AS OksB_DISCOUNT_AMOUNT
16836   ,oksB.DISCOUNT_PERCENT			AS OksB_DISCOUNT_PERCENT
16837   ,oksB.OFFSET_DURATION				AS OksB_OFFSET_DURATION
16838   ,oksB.OFFSET_PERIOD				AS OksB_OFFSET_PERIOD
16839   ,oksB.INCIDENT_SEVERITY_ID			AS OksB_INCIDENT_SEVERITY_ID
16840   ,oksB.PDF_ID					AS OksB_PDF_ID
16841   ,oksB.WORK_THRU_YN				AS OksB_WORK_THRU_YN
16842   ,oksB.REACT_ACTIVE_YN				AS OksB_REACT_ACTIVE_YN
16843   ,oksB.TRANSFER_OPTION				AS OksB_TRANSFER_OPTION
16844   ,oksB.PROD_UPGRADE_YN				AS OksB_PROD_UPGRADE_YN
16845   ,oksB.INHERITANCE_TYPE			AS OksB_INHERITANCE_TYPE
16846   ,oksB.PM_PROGRAM_ID				AS OksB_PM_PROGRAM_ID
16847   ,oksB.PM_CONF_REQ_YN				AS OksB_PM_CONF_REQ_YN
16848   ,oksB.PM_SCH_EXISTS_YN			AS OksB_PM_SCH_EXISTS_YN
16849   ,oksB.ALLOW_BT_DISCOUNT			AS OksB_ALLOW_BT_DISCOUNT
16850   ,oksB.APPLY_DEFAULT_TIMEZONE			AS OksB_APPLY_DEFAULT_TIMEZONE
16851   ,oksB.SYNC_DATE_INSTALL			AS OksB_SYNC_DATE_INSTALL
16852   ,1						AS OksB_OBJECT_VERSION_NUMBER
16853   ,oksB.SECURITY_GROUP_ID			AS OksB_SECURITY_GROUP_ID
16854   ,oksB.REQUEST_ID				AS OksB_REQUEST_ID
16855   ,oksB.ID 					AS OksB_ORIG_SYSTEM_ID1
16856   ,'COPY' 					AS OksB_ORIG_SYSTEM_REFERENCE1
16857   ,NULL 					AS OksB_ORIG_SYSTEM_SOURCE_CODE
16858   ,oksB.TRXN_EXTENSION_ID			AS OksB_TRXN_EXTENSION_ID
16859   ,oksB.TAX_CLASSIFICATION_CODE                 AS OksB_TAX_CLASSIFICATION_CODE
16860   ,oksB.EXEMPT_CERTIFICATE_NUMBER               AS OksB_EXEMPT_CERTIFICATE_NUMBER
16861   ,oksB.EXEMPT_REASON_CODE                      AS OksB_EXEMPT_REASON_CODE
16862   ,oksB.COVERAGE_ID                    		AS OksB_COVERAGE_ID
16863   ,oksB.STANDARD_COV_YN                      	AS OksB_STANDARD_COV_YN
16864   --------------------------------End of OKS_K_LINES_B columns-------------------------
16865   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16866   ,okcI.ID					AS OkcI_OldOkcItemID
16867   ,To_number(rawtohex(sys_guid()), HexFormatStr)AS OkcI_NewOkcItemID
16868   ,okcI.CLE_ID					AS OkcI_CLE_ID
16869   ,P_To_Chr_ID 					AS OkcI_NewDnzChrID
16870   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  	AS OkcI_NewChrID
16871   ,okcI.OBJECT1_ID1				AS OkcI_OBJECT1_ID1
16872   ,okcI.OBJECT1_ID2				AS OkcI_OBJECT1_ID2
16873   ,okcI.JTOT_OBJECT1_CODE			AS OkcI_JTOT_OBJECT1_CODE
16874   ,okcI.UOM_CODE				AS OkcI_UOM_CODE
16875   ,okcI.EXCEPTION_YN				AS OkcI_EXCEPTION_YN
16876   ,okcI.NUMBER_OF_ITEMS				AS OkcI_NUMBER_OF_ITEMS
16877   ,okcI.PRICED_ITEM_YN				AS OkcI_PRICED_ITEM_YN
16878   ,1						AS OkcI_OBJECT_VERSION_NUMBER
16879   ,okcI.SECURITY_GROUP_ID			AS OkcI_SECURITY_GROUP_ID
16880   ,okcI.UPG_ORIG_SYSTEM_REF			AS OkcI_UPG_ORIG_SYSTEM_REF
16881   ,okcI.UPG_ORIG_SYSTEM_REF_ID			AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16882   ,okcI.PROGRAM_APPLICATION_ID			AS Okc_PROGRAM_APPLICATION_ID
16883   ,okcI.PROGRAM_ID				AS OkcI_PROGRAM_ID
16884   ,okcI.PROGRAM_UPDATE_DATE			AS OkcI_PROGRAM_UPDATE_DATE
16885   ,okcI.REQUEST_ID				AS OkcI_REQUEST_ID
16886   FROM
16887   OKC_K_LINES_B okcB
16888   ,OKS_K_LINES_B oksB
16889   ,OKC_K_ITEMS okcI
16890   WHERE
16891   okcB.ID = oksB.CLE_ID(+)
16892   AND okcB.ID = okcI.CLE_ID(+)
16893   AND okcB.DNZ_CHR_ID = P_From_Chr_ID
16894   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16895   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16896   AND
16897     (
16898      NVL(okcB.LINE_RENEWAL_TYPE_CODE,'X') <> 'DNR'
16899      AND okcB.DATE_TERMINATED IS NULL
16900      AND okcB.DATE_CANCELLED IS NULL
16901      AND okcB.DATE_RENEWED IS NULL
16902      )
16903   AND (okcB.CLE_ID IS NULL
16904       OR
16905       (okcB.CLE_ID IS NOT NULL
16906        AND NOT EXISTS
16907           (SELECT 'X'
16908            FROM okc_k_lines_b lb2
16909            WHERE NVL(lb2.line_renewal_type_code,'X') = 'DNR'
16910            OR lb2.DATE_TERMINATED IS NOT NULL
16911            OR lb2.DATE_CANCELLED IS NOT NULL
16912            OR lb2.DATE_RENEWED IS NOT NULL
16913    	   START WITH lb2.id = okcB.cle_id
16914            CONNECT BY PRIOR lb2.cle_id = lb2.id
16915           )
16916      )
16917     );
16918 
16919   -------------End of Cursor definition for GetOKCOKSLinesB_Renew-------------
16920 
16921   -------------Cursor to get default status for line-------------------------
16922   CURSOR get_default_status IS
16923   select code
16924   from okc_statuses_b
16925   where ste_code = 'ENTERED'
16926   and default_yn = 'Y';
16927 
16928   l_Default_Sts_Code OKC_STATUSES_B.CODE%TYPE;
16929   ---------------------------------------------------------------------------
16930   ------------Cursor to get Contract Number of newly created contract--------
16931   CURSOR get_new_contract_number(P_To_Chr_ID IN NUMBER) IS
16932   select contract_number
16933   from okc_k_headers_b
16934   where id = P_To_Chr_ID;
16935 
16936   l_new_contract_number       OKC_K_HEADERS_B.CONTRACT_NUMBER%TYPE := NULL;
16937   ----------------------------------------------------------------------------
16938 
16939   l_return_status    VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
16940   l_euro_currency    VARCHAR2(15) := NULL;
16941 
16942   --OKC Line Attributes to be updated--
16943   l_converted_price_negotiated NUMBER := NULL;
16944   l_converted_price_unit NUMBER := NULL;
16945   l_tax_amount NUMBER := NULL;
16946 
16947 
16948   --OKS Line Attributes to be updated--
16949   l_locked_price_list_id      NUMBER := NULL;
16950   l_locked_price_list_line_id NUMBER := NULL;
16951   l_trxn_extension_id		NUMBER := NULL;
16952 
16953   lx_rail_rec OKS_TAX_UTIL_PVT.ra_rec_type;
16954 Begin
16955 
16956     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
16957       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
16958          FND_LOG.string(FND_LOG.level_procedure
16959                         ,l_module_name||'.Begin'
16960                         ,',P_From_Chr_ID='||P_From_Chr_ID
16961                          ||',P_To_Chr_ID='||P_To_Chr_ID
16962                          ||',p_renew_ref_yn='||p_renew_ref_yn
16963                          );
16964       END IF;
16965     END IF;
16966 
16967   x_return_status := l_return_status;
16968 
16969   --Setting Variable to indicate existence of Partial Period Setup in GCD--
16970   IF (OKS_SETUP_UTIL_PUB.G_GCD_PERIOD_START IS NOT NULL and OKS_SETUP_UTIL_PUB.G_GCD_PERIOD_TYPE IS NOT NULL) then
16971    l_GCDPPSetupExists_YN := 'Y';
16972   ELSE
16973    l_GCDPPSetupExists_YN := 'N';
16974   END IF;
16975   ------------------------------------------------------------------------
16976 
16977   ------------------------------------------------------------------------
16978   -- Bug# 5531198 hkamdar 21-Sep-2006
16979   --Get Price UOM of Target Contract--
16980   IF l_SrcContractPPSetupExists_YN = 'N' THEN
16981      Begin
16982          OPEN get_new_price_uom(P_To_Chr_ID);
16983          FETCH get_new_price_uom into l_TrgtHeaderPriceUom;
16984          CLOSE get_new_price_uom;
16985      End;
16986 
16987      IF l_TrgtHeaderPriceUom IS NOT NULL THEN
16988         l_TrgtHeaderPriceUomExists_YN := 'Y';
16989      ELSE
16990         l_TrgtHeaderPriceUomExists_YN := 'N';
16991      END IF;
16992   END IF;
16993   -- End Bug# 5531198 hkamdar 21-Sep-2006
16994  ------------------------------------------------------------------------
16995 
16996   --Get Contract Number of Target Contract--
16997   Begin
16998     OPEN get_new_contract_number(P_To_Chr_ID);
16999     FETCH get_new_contract_number into l_new_contract_number;
17000     CLOSE get_new_contract_number;
17001     If l_new_contract_number IS NULL then
17002         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17003          FND_LOG.string(FND_LOG.level_statement
17004                         ,l_module_name||':'||'Cursor get_new_contract_number'
17005                         ,'Contract number of Target Contract is NULL'
17006                         );
17007         END IF;
17008         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
17009 	RAISE G_EXCEPTION_HALT_VALIDATION;
17010     End If;
17011   End;
17012  -------------------------------------------
17013   --Get default status for lines------------
17014   Begin
17015     OPEN get_default_status;
17016     FETCH get_default_status into l_Default_Sts_Code;
17017     CLOSE get_default_status;
17018     If l_Default_Sts_Code IS NULL then
17019         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17020          FND_LOG.string(FND_LOG.level_statement
17021                         ,l_module_name||':'||'Cursor get_default_status'
17022                         ,'Default Status not found'
17023                         );
17024         END IF;
17025        l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
17026        RAISE G_EXCEPTION_HALT_VALIDATION;
17027     End If;
17028   End;
17029   ------------------------------------------
17030 
17031  IF (P_Renew_Ref_YN = 'N') then
17032   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17033          FND_LOG.string(FND_LOG.level_statement
17034                         ,l_module_name
17035                         ,'Opening GetOKCOKSLinesB_Copy'
17036                         );
17037   END IF;
17038 /*MODIFIED FOR BUG6617044 COPY ENHANCEMENT */
17039   IF p_include_cancelled_lines = 'Y' AND
17040          p_include_terminated_lines = 'Y' THEN
17041         OPEN GetOKCOKSLinesB_Copy(P_From_Chr_ID, P_To_Chr_ID);
17042       ELSIF p_include_cancelled_lines = 'N' AND
17043             p_include_terminated_lines = 'Y' THEN
17044         OPEN GetOKCOKSLinesB_Copy_TERMN(P_From_Chr_ID, P_To_Chr_ID);
17045       ELSIF p_include_cancelled_lines = 'Y' AND
17046             p_include_terminated_lines = 'N' THEN
17047         OPEN GetOKCOKSLinesB_Copy_CANCEL(P_From_Chr_ID, P_To_Chr_ID);
17048       ELSIF p_include_cancelled_lines = 'N' AND
17049             p_include_terminated_lines = 'N' THEN
17050         OPEN GetOKCOKSLinesB_Copy_EXCLUDE(P_From_Chr_ID, P_To_Chr_ID);
17051       END IF;
17052  ELSIF (P_Renew_Ref_YN = 'Y') then
17053   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17054          FND_LOG.string(FND_LOG.level_statement
17055                         ,l_module_name
17056                         ,'Opening GetOKCOKSLinesB_Renew'
17057                         );
17058   END IF;
17059   OPEN GetOKCOKSLinesB_Renew(P_From_Chr_ID,P_To_Chr_ID);
17060  END IF;
17061 
17062  LOOP
17063   IF (P_Renew_Ref_YN = 'N') THEN
17064    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17065          FND_LOG.string(FND_LOG.level_statement
17066                         ,l_module_name
17067                         ,'FETCHING from GetOKCOKSLinesB_Copy'
17068                         );
17069    END IF;
17070 
17071    IF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'Y' THEN
17072     FETCH GetOKCOKSLinesB_Copy BULK COLLECT INTO
17073     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17074    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17075    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17076    ,OKCOKSLinesRecTab.OkcB_NewChrID
17077    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17078    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17079    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17080    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17081    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17082    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17083    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17084    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17085    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17086    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17087    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17088    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17089    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17090    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17091    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17092    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17093    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17094    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17095    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17096    ,OKCOKSLinesRecTab.OkcB_START_DATE
17097    ,OKCOKSLinesRecTab.OkcB_END_DATE
17098    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17099    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17100    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17101    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17102    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17103    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17104    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17105    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17106    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17107    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17108    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17109    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17110    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17111    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17112    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17113    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17114    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17115    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17116    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17117    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17118    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17119    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17120    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17121    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17122    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17123    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17124    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17125    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17126    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17127    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17128    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17129    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17130    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17131    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17132    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17133    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17134    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17135    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17136    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17137    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17138    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17139    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17140    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17141    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17142    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17143    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17144    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17145    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17146    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17147    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17148    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17149    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17150    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17151    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17152    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17153    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17154    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17155    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17156    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17157    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17158    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17159    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17160    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17161    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17162    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17163 -----------------End of record members for OKC_K_LINES_B columns
17164 -----------------Start of record members for OKS_K_LINES_B columns
17165    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17166    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17167    ,OKCOKSLinesRecTab.OksB_CLE_ID
17168    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17169    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17170    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17171    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17172    ,OKCOKSLinesRecTab.OksB_CC_NO
17173    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17174    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17175    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17176    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17177    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17178    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17179    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17180    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17181    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17182    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17183    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17184    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17185    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17186    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17187    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17188    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17189    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17190    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17191    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17192    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17193    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17194    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17195    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17196    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17197    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17198    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17199    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17200    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17201    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17202    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17203    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17204    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17205    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17206    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17207    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17208    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17209    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17210    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17211    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17212    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17213    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17214    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17215    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17216    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17217    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17218    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17219    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17220    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17221    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17222    ,OKCOKSLinesRecTab.OksB_BASE_READING
17223    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17224    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17225    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17226    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17227    ,OKCOKSLinesRecTab.OksB_PRORATE
17228    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17229    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17230    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17231    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17232    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17233    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17234    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17235    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17236    ,OKCOKSLinesRecTab.OksB_PDF_ID
17237    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17238    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17239    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17240    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17241    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17242    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17243    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17244    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17245    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17246    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17247    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17248    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17249    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17250    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17251    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17252    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17253    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17254    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17255    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17256    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17257    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17258    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17259    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17260 -----------------End of record members for OKS_K_LINES_B columns
17261 -----------------Start of record members for OKC_K_ITEMS columns
17262    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17263    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17264    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17265    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17266    ,OKCOKSLinesRecTab.OkcI_NewChrID
17267    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17268    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17269    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17270    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17271    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17272    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17273    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17274    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17275    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17276    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17277    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17278    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17279    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17280    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17281    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
17282 
17283    ELSIF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'N' THEN
17284 
17285 
17286     FETCH GetOKCOKSLinesB_Copy_CANCEL BULK COLLECT INTO
17287     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17288    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17289    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17290    ,OKCOKSLinesRecTab.OkcB_NewChrID
17291    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17292    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17293    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17294    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17295    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17296    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17297    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17298    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17299    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17300    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17301    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17302    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17303    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17304    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17305    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17306    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17307    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17308    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17309    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17310    ,OKCOKSLinesRecTab.OkcB_START_DATE
17311    ,OKCOKSLinesRecTab.OkcB_END_DATE
17312    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17313    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17314    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17315    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17316    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17317    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17318    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17319    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17320    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17321    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17322    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17323    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17324    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17325    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17326    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17327    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17328    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17329    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17330    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17331    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17332    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17333    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17334    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17335    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17336    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17337    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17338    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17339    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17340    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17341    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17342    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17343    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17344    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17345    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17346    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17347    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17348    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17349    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17350    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17351    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17352    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17353    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17354    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17355    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17356    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17357    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17358    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17359    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17360    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17361    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17362    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17363    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17364    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17365    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17366    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17367    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17368    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17369    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17370    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17371    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17372    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17373    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17374    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17375    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17376    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17377 -----------------End of record members for OKC_K_LINES_B columns
17378 -----------------Start of record members for OKS_K_LINES_B columns
17379    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17380    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17381    ,OKCOKSLinesRecTab.OksB_CLE_ID
17382    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17383    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17384    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17385    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17386    ,OKCOKSLinesRecTab.OksB_CC_NO
17387    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17388    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17389    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17390    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17391    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17392    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17393    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17394    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17395    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17396    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17397    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17398    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17399    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17400    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17401    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17402    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17403    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17404    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17405    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17406    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17407    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17408    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17409    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17410    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17411    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17412    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17413    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17414    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17415    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17416    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17417    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17418    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17419    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17420    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17421    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17422    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17423    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17424    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17425    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17426    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17427    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17428    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17429    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17430    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17431    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17432    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17433    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17434    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17435    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17436    ,OKCOKSLinesRecTab.OksB_BASE_READING
17437    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17438    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17439    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17440    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17441    ,OKCOKSLinesRecTab.OksB_PRORATE
17442    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17443    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17444    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17445    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17446    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17447    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17448    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17449    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17450    ,OKCOKSLinesRecTab.OksB_PDF_ID
17451    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17452    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17453    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17454    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17455    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17456    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17457    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17458    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17459    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17460    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17461    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17462    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17463    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17464    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17465    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17466    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17467    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17468    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17469    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17470    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17471    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17472    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17473    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17474 -----------------End of record members for OKS_K_LINES_B columns
17475 -----------------Start of record members for OKC_K_ITEMS columns
17476    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17477    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17478    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17479    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17480    ,OKCOKSLinesRecTab.OkcI_NewChrID
17481    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17482    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17483    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17484    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17485    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17486    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17487    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17488    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17489    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17490    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17491    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17492    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17493    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17494    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17495    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
17496 
17497   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'Y' then
17498 
17499     FETCH GetOKCOKSLinesB_Copy_TERMN BULK COLLECT INTO
17500     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17501    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17502    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17503    ,OKCOKSLinesRecTab.OkcB_NewChrID
17504    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17505    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17506    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17507    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17508    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17509    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17510    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17511    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17512    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17513    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17514    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17515    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17516    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17517    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17518    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17519    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17520    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17521    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17522    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17523    ,OKCOKSLinesRecTab.OkcB_START_DATE
17524    ,OKCOKSLinesRecTab.OkcB_END_DATE
17525    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17526    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17527    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17528    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17529    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17530    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17531    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17532    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17533    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17534    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17535    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17536    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17537    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17538    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17539    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17540    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17541    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17542    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17543    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17544    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17545    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17546    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17547    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17548    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17549    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17550    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17551    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17552    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17553    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17554    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17555    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17556    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17557    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17558    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17559    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17560    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17561    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17562    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17563    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17564    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17565    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17566    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17567    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17568    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17569    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17570    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17571    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17572    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17573    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17574    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17575    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17576    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17577    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17578    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17579    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17580    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17581    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17582    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17583    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17584    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17585    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17586    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17587    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17588    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17589    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17590 -----------------End of record members for OKC_K_LINES_B columns
17591 -----------------Start of record members for OKS_K_LINES_B columns
17592    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17593    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17594    ,OKCOKSLinesRecTab.OksB_CLE_ID
17595    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17596    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17597    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17598    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17599    ,OKCOKSLinesRecTab.OksB_CC_NO
17600    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17601    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17602    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17603    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17604    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17605    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17606    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17607    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17608    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17609    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17610    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17611    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17612    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17613    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17614    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17615    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17616    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17617    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17618    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17619    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17620    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17621    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17622    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17623    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17624    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17625    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17626    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17627    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17628    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17629    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17630    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17631    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17632    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17633    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17634    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17635    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17636    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17637    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17638    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17639    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17640    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17641    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17642    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17643    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17644    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17645    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17646    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17647    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17648    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17649    ,OKCOKSLinesRecTab.OksB_BASE_READING
17650    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17651    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17652    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17653    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17654    ,OKCOKSLinesRecTab.OksB_PRORATE
17655    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17656    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17657    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17658    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17659    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17660    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17661    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17662    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17663    ,OKCOKSLinesRecTab.OksB_PDF_ID
17664    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17665    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17666    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17667    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17668    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17669    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17670    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17671    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17672    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17673    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17674    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17675    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17676    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17677    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17678    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17679    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17680    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17681    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17682    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17683    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17684    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17685    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17686    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17687 -----------------End of record members for OKS_K_LINES_B columns
17688 -----------------Start of record members for OKC_K_ITEMS columns
17689    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17690    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17691    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17692    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17693    ,OKCOKSLinesRecTab.OkcI_NewChrID
17694    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17695    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17696    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17697    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17698    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17699    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17700    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17701    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17702    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17703    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17704    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17705    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17706    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17707    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17708    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
17709   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'N' THEN
17710 
17711     FETCH GetOKCOKSLinesB_Copy_EXCLUDE BULK COLLECT INTO
17712     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17713    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17714    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17715    ,OKCOKSLinesRecTab.OkcB_NewChrID
17716    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17717    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17718    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17719    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17720    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17721    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17722    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17723    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17724    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17725    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17726    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17727    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17728    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17729    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17730    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17731    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17732    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17733    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17734    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17735    ,OKCOKSLinesRecTab.OkcB_START_DATE
17736    ,OKCOKSLinesRecTab.OkcB_END_DATE
17737    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17738    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17739    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17740    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17741    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17742    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17743    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17744    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17745    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17746    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17747    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17748    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17749    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17750    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17751    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17752    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17753    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17754    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17755    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17756    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17757    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17758    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17759    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17760    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17761    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17762    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17763    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17764    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17765    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17766    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17767    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17768    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17769    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17770    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17771    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17772    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17773    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17774    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17775    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17776    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17777    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17778    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17779    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17780    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17781    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17782    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17783    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17784    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17785    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17786    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17787    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17788    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17789    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17790    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17791    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17792    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17793    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17794    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17795    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17796    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17797    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17798    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17799    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17800    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17801    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17802 -----------------End of record members for OKC_K_LINES_B columns
17803 -----------------Start of record members for OKS_K_LINES_B columns
17804    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17805    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17806    ,OKCOKSLinesRecTab.OksB_CLE_ID
17807    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17808    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17809    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17810    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17811    ,OKCOKSLinesRecTab.OksB_CC_NO
17812    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17813    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17814    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17815    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17816    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17817    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17818    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17819    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17820    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17821    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17822    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17823    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17824    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17825    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17826    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17827    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17828    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17829    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17830    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17831    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17832    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17833    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17834    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17835    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17836    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17837    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17838    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17839    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17840    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17841    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17842    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17843    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17844    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17845    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17846    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17847    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17848    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17849    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17850    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17851    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17852    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17853    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17854    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17855    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17856    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17857    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17858    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17859    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17860    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17861    ,OKCOKSLinesRecTab.OksB_BASE_READING
17862    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17863    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17864    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17865    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17866    ,OKCOKSLinesRecTab.OksB_PRORATE
17867    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17868    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17869    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17870    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17871    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17872    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17873    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17874    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17875    ,OKCOKSLinesRecTab.OksB_PDF_ID
17876    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17877    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17878    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17879    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17880    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17881    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17882    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17883    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17884    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17885    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17886    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17887    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17888    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17889    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17890    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17891    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17892    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17893    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17894    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17895    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17896    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17897    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17898    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17899 -----------------End of record members for OKS_K_LINES_B columns
17900 -----------------Start of record members for OKC_K_ITEMS columns
17901    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17902    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17903    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17904    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17905    ,OKCOKSLinesRecTab.OkcI_NewChrID
17906    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17907    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17908    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17909    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17910    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17911    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17912    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17913    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17914    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17915    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17916    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17917    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17918    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17919    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17920    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
17921   END IF;
17922 
17923   ELSIF (P_Renew_Ref_YN = 'Y') then
17924 
17925    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17926          FND_LOG.string(FND_LOG.level_statement
17927                         ,l_module_name
17928                         ,'FETCHING from GetOKCOKSLinesB_Renew'
17929                         );
17930    END IF;
17931     FETCH GetOKCOKSLinesB_Renew BULK COLLECT INTO
17932     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17933    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17934    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17935    ,OKCOKSLinesRecTab.OkcB_NewChrID
17936    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17937    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17938    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17939    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17940    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17941    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17942    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17943    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17944    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17945    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17946    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17947    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17948    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17949    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17950    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17951    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17952    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17953    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17954    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17955    ,OKCOKSLinesRecTab.OkcB_START_DATE
17956    ,OKCOKSLinesRecTab.OkcB_END_DATE
17957    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17958    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17959    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17960    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17961    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17962    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17963    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17964    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17965    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17966    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17967    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17968    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17969    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17970    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17971    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17972    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17973    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17974    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17975    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17976    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17977    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17978    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17979    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17980    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17981    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17982    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17983    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17984    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17985    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17986    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17987    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17988    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17989    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17990    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17991    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17992    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17993    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17994    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17995    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17996    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17997    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17998    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17999    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
18000    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
18001    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
18002    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
18003    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
18004    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
18005    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
18006    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
18007    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
18008    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
18009    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
18010    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
18011    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
18012    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
18013    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
18014    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
18015    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
18016    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
18017    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
18018    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
18019    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
18020    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG -- pseudo column
18021    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
18022    -----------------End of record members for OKC_K_LINES_B columns
18023    -----------------Start of record members for OKS_K_LINES_B columns
18024    ,OKCOKSLinesRecTab.OksB_OldOksLineID
18025    ,OKCOKSLinesRecTab.OksB_NewOksLineID
18026    ,OKCOKSLinesRecTab.OksB_CLE_ID
18027    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
18028    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
18029    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
18030    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
18031    ,OKCOKSLinesRecTab.OksB_CC_NO
18032    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
18033    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
18034    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
18035    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
18036    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
18037    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
18038    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
18039    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
18040    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
18041    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
18042    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
18043    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
18044    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
18045    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
18046    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
18047    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
18048    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
18049    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
18050    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
18051    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
18052    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
18053    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
18054    ,OKCOKSLinesRecTab.OksB_TAX_CODE
18055    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
18056    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
18057    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
18058    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
18059    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
18060    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
18061    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
18062    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
18063    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
18064    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
18065    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
18066    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
18067    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
18068    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
18069    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
18070    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
18071    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
18072    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
18073    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
18074    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
18075    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
18076    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
18077    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
18078    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
18079    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
18080    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
18081    ,OKCOKSLinesRecTab.OksB_BASE_READING
18082    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
18083    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
18084    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
18085    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
18086    ,OKCOKSLinesRecTab.OksB_PRORATE
18087    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
18088    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
18089    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
18090    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
18091    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
18092    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
18093    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
18094    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
18095    ,OKCOKSLinesRecTab.OksB_PDF_ID
18096    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
18097    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
18098    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
18099    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
18100    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
18101    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
18102    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
18103    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
18104    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
18105    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
18106    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
18107    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
18108    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
18109    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
18110    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
18111    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
18112    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
18113    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
18114    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
18115    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
18116    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
18117    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
18118    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
18119    -----------------End of record members for OKS_K_LINES_B columns
18120    -----------------Start of record members for OKC_K_ITEMS columns
18121    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
18122    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
18123    ,OKCOKSLinesRecTab.OkcI_CLE_ID
18124    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
18125    ,OKCOKSLinesRecTab.OkcI_NewChrID
18126    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
18127    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
18128    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
18129    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
18130    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
18131    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
18132    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
18133    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
18134    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
18135    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
18136    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
18137    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
18138    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
18139    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
18140    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
18141 
18142    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18143          FND_LOG.string(FND_LOG.level_statement
18144                         ,l_module_name
18145                         ,'After FETCH from GetOKCOKSLinesB_Renew'
18146                         );
18147    END IF;
18148 
18149   END IF;
18150 
18151    --Bulk Insert into OKC_K_LINES_B
18152  Begin
18153 
18154   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
18155   INSERT INTO OKC_K_LINES_B(
18156    ID
18157  , LINE_NUMBER
18158  , CHR_ID
18159  , CLE_ID
18160  , DNZ_CHR_ID
18161  , DISPLAY_SEQUENCE
18162  , STS_CODE
18163  , TRN_CODE
18164  , LSE_ID
18165  , EXCEPTION_YN
18166  , OBJECT_VERSION_NUMBER
18167  , HIDDEN_IND
18168  , PRICE_NEGOTIATED
18169  , PRICE_LEVEL_IND
18170  , PRICE_UNIT
18171  , PRICE_UNIT_PERCENT
18172  , INVOICE_LINE_LEVEL_IND
18173  , DPAS_RATING
18174  , TEMPLATE_USED
18175  , PRICE_TYPE
18176  , CURRENCY_CODE
18177  , DATE_TERMINATED
18178  , START_DATE
18179  , END_DATE
18180  , ATTRIBUTE_CATEGORY
18181  , ATTRIBUTE1
18182  , ATTRIBUTE2
18183  , ATTRIBUTE3
18184  , ATTRIBUTE4
18185  , ATTRIBUTE5
18186  , ATTRIBUTE6
18187  , ATTRIBUTE7
18188  , ATTRIBUTE8
18189  , ATTRIBUTE9
18190  , ATTRIBUTE10
18191  , ATTRIBUTE11
18192  , ATTRIBUTE12
18193  , ATTRIBUTE13
18194  , ATTRIBUTE14
18195  , ATTRIBUTE15
18196  , SECURITY_GROUP_ID
18197  , PRICE_NEGOTIATED_RENEWED
18198  , CURRENCY_CODE_RENEWED
18199  , UPG_ORIG_SYSTEM_REF
18200  , UPG_ORIG_SYSTEM_REF_ID
18201  , DATE_RENEWED
18202  , ORIG_SYSTEM_ID1
18203  , ORIG_SYSTEM_REFERENCE1
18204  , ORIG_SYSTEM_SOURCE_CODE
18205  , PROGRAM_APPLICATION_ID
18206  , PROGRAM_ID
18207  , PROGRAM_UPDATE_DATE
18208  , REQUEST_ID
18209  , PRICE_LIST_ID
18210  , PRICE_LIST_LINE_ID
18211  , LINE_LIST_PRICE
18212  , ITEM_TO_PRICE_YN
18213  , PRICING_DATE
18214  , PRICE_BASIS_YN
18215  , CONFIG_HEADER_ID
18216  , CONFIG_REVISION_NUMBER
18217  , CONFIG_COMPLETE_YN
18218  , CONFIG_VALID_YN
18219  , CONFIG_TOP_MODEL_LINE_ID
18220  , CONFIG_ITEM_TYPE
18221  , CONFIG_ITEM_ID
18222  , SERVICE_ITEM_YN
18223  , PH_PRICING_TYPE
18224  , PH_PRICE_BREAK_BASIS
18225  , PH_MIN_QTY
18226  , PH_MIN_AMT
18227  , PH_QP_REFERENCE_ID
18228  , PH_VALUE
18229  , PH_ENFORCE_PRICE_LIST_YN
18230  , PH_ADJUSTMENT
18231  , PH_INTEGRATED_WITH_QP
18232  , CUST_ACCT_ID
18233  , BILL_TO_SITE_USE_ID
18234  , INV_RULE_ID
18235  , LINE_RENEWAL_TYPE_CODE
18236  , SHIP_TO_SITE_USE_ID
18237  , PAYMENT_TERM_ID
18238  , DATE_CANCELLED
18239  , TERM_CANCEL_SOURCE
18240  , ANNUALIZED_FACTOR
18241  , PAYMENT_INSTRUCTION_TYPE -- hkamdar 29-Mar-2006 Bug # 4722452
18242  , CANCELLED_AMOUNT
18243  , CREATION_DATE
18244  , CREATED_BY
18245  , LAST_UPDATE_DATE
18246  , LAST_UPDATED_BY
18247  , LAST_UPDATE_LOGIN
18248   )
18249  SELECT
18250   OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18251  ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER(i)
18252  ,OKCOKSLinesRecTab.OkcB_NewChrID(i)
18253  ,OKCOKSLinesRecTab.OkcB_CLE_ID(i)
18254  ,OKCOKSLinesRecTab.OkcB_NewDnzChrID(i)
18255  ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE(i)
18256  ,l_Default_Sts_Code
18257  ,OKCOKSLinesRecTab.OkcB_TRN_CODE(i)
18258  ,OKCOKSLinesRecTab.OkcB_LSE_ID(i)
18259  ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN(i)
18260  ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER(i)
18261  ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND(i)
18262  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
18263  ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND(i)
18264  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
18265  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT(i)
18266  ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND(i)
18267  ,OKCOKSLinesRecTab.OkcB_DPAS_RATING(i)
18268  ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED(i)
18269  ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE(i)
18270  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
18271  ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED(i)
18272  ,OKCOKSLinesRecTab.OkcB_START_DATE(i)
18273  ,OKCOKSLinesRecTab.OkcB_END_DATE(i)
18274  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY(i)
18275  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1(i)
18276  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2(i)
18277  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3(i)
18278  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4(i)
18279  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5(i)
18280  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6(i)
18281  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7(i)
18282  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8(i)
18283  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9(i)
18284  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10(i)
18285  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11(i)
18286  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12(i)
18287  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13(i)
18288  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14(i)
18289  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15(i)
18290  ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID(i)
18291  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED(i)
18292  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED(i)
18293  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF(i)
18294  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID(i)
18295  ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED(i)
18296  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1(i)
18297  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1(i)
18298  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE(i)
18299  ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID(i)
18300  ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID(i)
18301  ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE(i)
18302  ,OKCOKSLinesRecTab.OkcB_REQUEST_ID(i)
18303  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID(i)
18304  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID(i)
18305  ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE(i)
18306  ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN(i)
18307  ,OKCOKSLinesRecTab.OkcB_PRICING_DATE(i)
18308  ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN(i)
18309  ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID(i)
18310  ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER(i)
18311  ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN(i)
18312  ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN(i)
18313  ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID(i)
18314  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE(i)
18315  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID(i)
18316  ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN(i)
18317  ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE(i)
18318  ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS(i)
18319  ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY(i)
18320  ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT(i)
18321  ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID(i)
18322  ,OKCOKSLinesRecTab.OkcB_PH_VALUE(i)
18323  ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN(i)
18324  ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT(i)
18325  ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP(i)
18326  ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
18327  ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
18328  ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID(i)
18329  ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE(i)
18330  ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID(i)
18331  ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID(i)
18332  ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED(i)
18333  ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE(i)
18334  ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR(i)
18335  ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE(i) -- hkamdar 29-Mar-2006 Bug # 4722452
18336  ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i)
18337  ,SYSDATE
18338  ,FND_GLOBAL.USER_ID
18339  ,SYSDATE
18340  ,FND_GLOBAL.USER_ID
18341  ,FND_GLOBAL.LOGIN_ID
18342   FROM
18343   DUAL;
18344 
18345       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18346          FND_LOG.string(FND_LOG.level_statement
18347                         ,l_module_name
18348                         ,'AFTER INSERT into OKC_K_LINES_B '
18349                         );
18350        END IF;
18351 
18352     EXCEPTION
18353       WHEN OTHERS THEN
18354 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
18355        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
18356          FND_LOG.string(FND_LOG.level_unexpected
18357                         ,l_module_name
18358                         ,'EXCEPTION during insert into OKC_K_LINES_B '||SQLERRM
18359                         );
18360        END IF;
18361 
18362         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
18363         RAISE G_EXCEPTION_HALT_VALIDATION;
18364 
18365  End;
18366 
18367  Begin
18368   --Bulk Insert into OKS_K_LINES_B
18369   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
18370   INSERT INTO OKS_K_LINES_B(
18371    ID
18372   ,CLE_ID
18373   ,DNZ_CHR_ID
18374   ,DISCOUNT_LIST
18375   ,ACCT_RULE_ID
18376   ,PAYMENT_TYPE
18377   ,CC_NO
18378   ,CC_EXPIRY_DATE
18379   ,CC_BANK_ACCT_ID
18380   ,CC_AUTH_CODE
18381   ,COMMITMENT_ID
18382   ,LOCKED_PRICE_LIST_ID
18383   ,USAGE_EST_YN
18384   ,USAGE_EST_METHOD
18385   ,USAGE_EST_START_DATE
18386   ,TERMN_METHOD
18387   ,UBT_AMOUNT
18388   ,CREDIT_AMOUNT
18389   ,SUPPRESSED_CREDIT
18390   ,OVERRIDE_AMOUNT
18391   ,CUST_PO_NUMBER_REQ_YN
18392   ,CUST_PO_NUMBER
18393   ,GRACE_DURATION
18394   ,GRACE_PERIOD
18395   ,INV_PRINT_FLAG
18396   ,PRICE_UOM
18397   ,TAX_AMOUNT
18398   ,TAX_INCLUSIVE_YN
18399   ,TAX_STATUS
18400   ,TAX_CODE
18401   ,TAX_EXEMPTION_ID
18402   ,IB_TRANS_TYPE
18403   ,IB_TRANS_DATE
18404   ,PROD_PRICE
18405   ,SERVICE_PRICE
18406   ,CLVL_LIST_PRICE
18407   ,CLVL_QUANTITY
18408   ,CLVL_EXTENDED_AMT
18409   ,CLVL_UOM_CODE
18410   ,TOPLVL_OPERAND_CODE
18411   ,TOPLVL_OPERAND_VAL
18412   ,TOPLVL_QUANTITY
18413   ,TOPLVL_UOM_CODE
18414   ,TOPLVL_ADJ_PRICE
18415   ,TOPLVL_PRICE_QTY
18416   ,AVERAGING_INTERVAL
18417   ,SETTLEMENT_INTERVAL
18418   ,MINIMUM_QUANTITY
18419   ,DEFAULT_QUANTITY
18420   ,AMCV_FLAG
18421   ,FIXED_QUANTITY
18422   ,USAGE_DURATION
18423   ,USAGE_PERIOD
18424   ,LEVEL_YN
18425   ,USAGE_TYPE
18426   ,UOM_QUANTIFIED
18427   ,BASE_READING
18428   ,BILLING_SCHEDULE_TYPE
18429   ,FULL_CREDIT
18430   ,LOCKED_PRICE_LIST_LINE_ID
18431   ,BREAK_UOM
18432   ,PRORATE
18433   ,COVERAGE_TYPE
18434   ,EXCEPTION_COV_ID
18435   ,LIMIT_UOM_QUANTIFIED
18436   ,DISCOUNT_AMOUNT
18437   ,DISCOUNT_PERCENT
18438   ,OFFSET_DURATION
18439   ,OFFSET_PERIOD
18440   ,INCIDENT_SEVERITY_ID
18441   ,PDF_ID
18442   ,WORK_THRU_YN
18443   ,REACT_ACTIVE_YN
18444   ,TRANSFER_OPTION
18445   ,PROD_UPGRADE_YN
18446   ,INHERITANCE_TYPE
18447   ,PM_PROGRAM_ID
18448   ,PM_CONF_REQ_YN
18449   ,PM_SCH_EXISTS_YN
18450   ,ALLOW_BT_DISCOUNT
18451   ,APPLY_DEFAULT_TIMEZONE
18452   ,SYNC_DATE_INSTALL
18453   ,OBJECT_VERSION_NUMBER
18454   ,SECURITY_GROUP_ID
18455   ,REQUEST_ID
18456   ,ORIG_SYSTEM_ID1
18457   ,ORIG_SYSTEM_REFERENCE1
18458   ,ORIG_SYSTEM_SOURCE_CODE
18459   ,TRXN_EXTENSION_ID
18460   ,TAX_CLASSIFICATION_CODE
18461   ,EXEMPT_CERTIFICATE_NUMBER
18462   ,EXEMPT_REASON_CODE
18463   ,COVERAGE_ID
18464   ,STANDARD_COV_YN
18465   ,CREATION_DATE
18466   ,CREATED_BY
18467   ,LAST_UPDATE_DATE
18468   ,LAST_UPDATED_BY
18469   ,LAST_UPDATE_LOGIN
18470   )
18471   SELECT
18472    OKCOKSLinesRecTab.OksB_NewOksLineID(i)
18473   ,OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18474   ,OKCOKSLinesRecTab.OksB_NewDnzChrID(i)
18475   ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST(i)
18476   ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID(i)
18477   ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE(i)
18478   ,OKCOKSLinesRecTab.OksB_CC_NO(i)
18479   ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE(i)
18480   ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID(i)
18481   ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE(i)
18482   ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID(i)
18483   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i)
18484   ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN(i)
18485   ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD(i)
18486   ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE(i)
18487   ,OKCOKSLinesRecTab.OksB_TERMN_METHOD(i)
18488   ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT(i)
18489   ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT(i)
18490   ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT(i)
18491   ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT(i)
18492   ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN(i)
18493   ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER(i)
18494   ,OKCOKSLinesRecTab.OksB_GRACE_DURATION(i)
18495   ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD(i)
18496   ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG(i)
18497   ,OKCOKSLinesRecTab.OksB_PRICE_UOM(i)
18498   ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT(i)
18499   ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN(i)
18500   ,OKCOKSLinesRecTab.OksB_TAX_STATUS(i)
18501   ,OKCOKSLinesRecTab.OksB_TAX_CODE(i)
18502   ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID(i)
18503   ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE(i)
18504   ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE(i)
18505   ,OKCOKSLinesRecTab.OksB_PROD_PRICE(i)
18506   ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE(i)
18507   ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE(i)
18508   ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY(i)
18509   ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT(i)
18510   ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE(i)
18511   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE(i)
18512   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL(i)
18513   ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY(i)
18514   ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i)
18515   ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE(i)
18516   ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY(i)
18517   ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL(i)
18518   ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL(i)
18519   ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY(i)
18520   ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY(i)
18521   ,OKCOKSLinesRecTab.OksB_AMCV_FLAG(i)
18522   ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY(i)
18523   ,OKCOKSLinesRecTab.OksB_USAGE_DURATION(i)
18524   ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD(i)
18525   ,OKCOKSLinesRecTab.OksB_LEVEL_YN(i)
18526   ,OKCOKSLinesRecTab.OksB_USAGE_TYPE(i)
18527   ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED(i)
18528   ,OKCOKSLinesRecTab.OksB_BASE_READING(i)
18529   ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE(i)
18530   ,OKCOKSLinesRecTab.OksB_FULL_CREDIT(i)
18531   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
18532   ,OKCOKSLinesRecTab.OksB_BREAK_UOM(i)
18533   ,OKCOKSLinesRecTab.OksB_PRORATE(i)
18534   ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE(i)
18535   ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID(i)
18536   ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED(i)
18537   ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT(i)
18538   ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT(i)
18539   ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION(i)
18540   ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD(i)
18541   ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID(i)
18542   ,OKCOKSLinesRecTab.OksB_PDF_ID(i)
18543   ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN(i)
18544   ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN(i)
18545   ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION(i)
18546   ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN(i)
18547   ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE(i)
18548   ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID(i)
18549   ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN(i)
18550   ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN(i)
18551   ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT(i)
18552   ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE(i)
18553   ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL(i)
18554   ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER(i)
18555   ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID(i)
18556   ,OKCOKSLinesRecTab.OksB_REQUEST_ID(i)
18557   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1(i)
18558   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1(i)
18559   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE(i)
18560   ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
18561   ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE(i)
18562   ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER(i)
18563   ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE(i)
18564   ,OKCOKSLinesRecTab.OksB_COVERAGE_ID(i)
18565   ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN(i)
18566   ,SYSDATE
18567   ,FND_GLOBAL.USER_ID
18568   ,SYSDATE
18569   ,FND_GLOBAL.USER_ID
18570   ,FND_GLOBAL.LOGIN_ID
18571    FROM
18572    DUAL
18573    WHERE
18574    OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL;
18575 
18576        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18577          FND_LOG.string(FND_LOG.level_statement
18578                         ,l_module_name
18579                         ,'AFTER INSERT into OKS_K_LINES_B '
18580                         );
18581        END IF;
18582 
18583   EXCEPTION
18584       WHEN OTHERS THEN
18585 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
18586        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
18587          FND_LOG.string(FND_LOG.level_unexpected
18588                         ,l_module_name
18589                         ,'EXCEPTION during insert into OKS_K_LINES_B '||SQLERRM
18590                         );
18591        END IF;
18592 
18593         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
18594         RAISE G_EXCEPTION_HALT_VALIDATION;
18595 
18596  End;
18597 
18598   --Bulk Insert into OKC_K_ITEMS
18599  Begin
18600 
18601 
18602   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
18603   INSERT INTO OKC_K_ITEMS(
18604    ID
18605   ,CLE_ID
18606   ,DNZ_CHR_ID
18607   ,CHR_ID
18608   ,OBJECT1_ID1
18609   ,OBJECT1_ID2
18610   ,JTOT_OBJECT1_CODE
18611   ,UOM_CODE
18612   ,EXCEPTION_YN
18613   ,NUMBER_OF_ITEMS
18614   ,PRICED_ITEM_YN
18615   ,OBJECT_VERSION_NUMBER
18616   ,SECURITY_GROUP_ID
18617   ,UPG_ORIG_SYSTEM_REF
18618   ,UPG_ORIG_SYSTEM_REF_ID
18619   ,PROGRAM_APPLICATION_ID
18620   ,PROGRAM_ID
18621   ,PROGRAM_UPDATE_DATE
18622   ,REQUEST_ID
18623   ,CREATION_DATE
18624   ,CREATED_BY
18625   ,LAST_UPDATE_DATE
18626   ,LAST_UPDATED_BY
18627   ,LAST_UPDATE_LOGIN
18628   )
18629   SELECT
18630     OKCOKSLinesRecTab.OkcI_NewOkcItemID(i)
18631    ,OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
18632    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID(i)
18633    ,OKCOKSLinesRecTab.OkcI_NewChrID(i)
18634    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1(i)
18635    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2(i)
18636    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE(i)
18637    ,OKCOKSLinesRecTab.OkcI_UOM_CODE(i)
18638    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN(i)
18639    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS(i)
18640    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN(i)
18641    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER(i)
18642    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID(i)
18643    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF(i)
18644    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID(i)
18645    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID(i)
18646    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID(i)
18647    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE(i)
18648    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID(i)
18649    ,SYSDATE
18650    ,FND_GLOBAL.USER_ID
18651    ,SYSDATE
18652    ,FND_GLOBAL.USER_ID
18653    ,FND_GLOBAL.LOGIN_ID
18654    FROM
18655    DUAL
18656    where OKCOKSLinesRecTab.OkcI_OldOkcItemID(i) IS NOT NULL;
18657 
18658        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18659          FND_LOG.string(FND_LOG.level_statement
18660                         ,l_module_name
18661                         ,'AFTER INSERT into OKC_K_ITEMS '
18662                         );
18663        END IF;
18664 
18665   EXCEPTION
18666       WHEN OTHERS THEN
18667 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
18668        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
18669          FND_LOG.string(FND_LOG.level_unexpected
18670                         ,l_module_name
18671                         ,'EXCEPTION during insert into OKC_K_ITEMS '||SQLERRM
18672                         );
18673        END IF;
18674 
18675         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
18676         RAISE; --RAISE G_EXCEPTION_HALT_VALIDATION;
18677 
18678  End;
18679 
18680   -----------------Start of row by row processing---------------------
18681 
18682    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18683         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18684          FND_LOG.string(FND_LOG.level_statement
18685                         ,l_module_name
18686                         ,'Before Start of Row by Row Processing , Count of rows being processed :'||OKCOKSLinesRecTab.OkcB_NewOKCLineID.COUNT
18687                          );
18688         END IF;
18689    END IF;
18690 
18691  If (OKCOKSLinesRecTab.OkcB_NewOKCLineID.COUNT > 0) then
18692   FOR i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST LOOP
18693 
18694   ---- If 'RENEW', then for each line fetched---------------------------------------
18695   --	   a) Update Price_Negotiated and Price_Unit columns based on converted currency
18696   ----------------------------------------------------------------------------------
18697    IF P_Renew_Ref_YN = 'Y' then
18698 
18699     Begin
18700      l_euro_currency := OKC_CURRENCY_API.GET_EURO_CURRENCY_CODE(OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i));
18701 
18702      IF (l_euro_currency <> OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)) THEN
18703 	   --Convert Price Negotiated--
18704          OKC_CURRENCY_API.CONVERT_AMOUNT
18705 	                            (p_FROM_CURRENCY => OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
18706 				    ,p_TO_CURRENCY => l_euro_currency
18707 				    ,p_CONVERSION_DATE => g_conversion_date
18708 				    ,p_CONVERSION_TYPE => g_conversion_type
18709 				    ,p_AMOUNT => OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
18710                                     ,x_CONVERSION_RATE => g_conversion_rate
18711 				    ,x_CONVERTED_AMOUNT => l_converted_price_negotiated
18712 				    );
18713        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18714         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18715          FND_LOG.string(FND_LOG.level_statement
18716                         ,l_module_name||'.OKC_CURRENCY_API.CONVERT_AMOUNT'
18717                         ,'After call to convert_amount for Price_Negotiated: x_return_status:'||l_return_status
18718                          ||'Orig Price_Negotiated='||OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
18719                          ||'Converted Price Negotiated='||l_converted_price_negotiated
18720                          );
18721         END IF;
18722        END IF;
18723 
18724 	   --Convert Price Unit--
18725          OKC_CURRENCY_API.CONVERT_AMOUNT
18726 	                            (p_FROM_CURRENCY => OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
18727 				    ,p_TO_CURRENCY => l_euro_currency
18728 				    ,p_CONVERSION_DATE => g_conversion_date
18729 				    ,p_CONVERSION_TYPE => g_conversion_type
18730 				    ,p_AMOUNT =>OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
18731                                     ,x_CONVERSION_RATE => g_conversion_rate
18732 				    ,x_CONVERTED_AMOUNT => l_converted_price_unit
18733 				    );
18734 
18735        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18736         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18737          FND_LOG.string(FND_LOG.level_statement
18738                         ,l_module_name||'.OKC_CURRENCY_API.CONVERT_AMOUNT'
18739                         ,'After call to convert_amount for Price_Unit: x_return_status:'||l_return_status
18740                          ||'Orig Price_Negotiated='||OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
18741                          ||'Converted Price Unit='||l_converted_price_unit
18742                          );
18743         END IF;
18744        END IF;
18745 
18746 
18747         UPDATE OKC_K_LINES_B
18748 	SET
18749 	 PRICE_NEGOTIATED = l_converted_price_negotiated
18750 	,PRICE_UNIT = l_converted_price_unit
18751 	WHERE ID = OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
18752         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OkcB_OldOkcLineID(i);
18753 
18754         If SQL%NOTFOUND then
18755          l_return_status := FND_API.G_RET_STS_ERROR;
18756       	 RAISE G_EXCEPTION_HALT_VALIDATION;
18757 	End If;
18758 
18759      END IF;
18760     End;
18761 
18762    END IF; --End of check P_Renew_Ref_YN = 'Y'
18763 
18764         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18765          FND_LOG.string(FND_LOG.level_statement
18766                         ,l_module_name
18767                         ,'OKC LSE ID : '||OKCOKSLinesRecTab.OkcB_LSE_ID(i)
18768                          );
18769         END IF;
18770 
18771    ---If (LSE_ID in (1,19)--------------------------------------
18772    ---       a) Instantiate counter events
18773    ---	   b) Copy Line Notes
18774    --------------------------------------------------------------
18775    IF (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 1 OR OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 19) THEN
18776     --Instantiate Counters Events
18777 
18778      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18779       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18780          FND_LOG.string(FND_LOG.level_statement
18781                         ,l_module_name||'.instantiate_counters_events'
18782                         ,'Before call to instantiate_counters_events'
18783                          );
18784       END IF;
18785      END IF;
18786 
18787 
18788     instantiate_counters_events(
18789                      p_api_version   => p_api_version
18790 	            ,p_init_msg_list => p_init_msg_list
18791 		    ,x_return_status => l_return_status
18792 		    ,x_msg_count     => x_msg_count
18793 		    ,x_msg_data      => x_msg_data
18794 		    ,p_old_cle_id    => OKCOKSLinesRecTab.OkcB_OldOKCLineID(i)
18795 		    ,p_old_lse_id    => OKCOKSLinesRecTab.OkcB_LSE_ID(i)
18796 		    ,p_start_date    => OKCOKSLinesRecTab.OkcB_START_DATE(i)
18797 		    ,p_end_date      => OKCOKSLinesRecTab.OkcB_END_DATE(i)
18798 	            ,p_new_cle_id    => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18799                     --npalepu added on 20-mar-2006 for bug # 5102052
18800                     ,p_new_chr_id    => P_To_Chr_ID
18801                     --end npalepu
18802                     );
18803 
18804 		    IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
18805 		       RAISE G_EXCEPTION_HALT_VALIDATION;
18806 		    END IF;
18807 
18808 
18809      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18810       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18811          FND_LOG.string(FND_LOG.level_statement
18812                         ,l_module_name||'.instantiate_counters_events'
18813                         ,'After call to instantiate_counters_events x_return_status:'||l_return_status
18814                          );
18815       END IF;
18816      END IF;
18817 
18818        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18819         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18820          FND_LOG.string(FND_LOG.level_statement
18821                         ,l_module_name||'.OKS_COVERAGES_PVT.COPY_NOTES'
18822                         ,'Before call to copy_notes for line:'||OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18823                          );
18824         END IF;
18825        END IF;
18826 
18827     IF (p_renew_ref_yn = 'N') then --Bug
18828         --Copy Line level notes
18829         OKS_COVERAGES_PVT.COPY_NOTES(p_api_version  =>  p_api_version
18830                           	    ,p_init_msg_list =>  p_init_msg_list
18831 			            ,x_msg_count => x_msg_count
18832 			            ,x_msg_data =>  x_msg_data
18833 			            ,x_return_status =>  l_return_status
18834  			            ,p_line_id  => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18835 			            );
18836        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18837         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18838          FND_LOG.string(FND_LOG.level_statement
18839                         ,l_module_name||'.OKS_COVERAGES_PVT.COPY_NOTES'
18840                         ,'After call to copy_notes for line: x_return_status:'||l_return_status
18841                          );
18842         END IF;
18843        END IF;
18844 
18845        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
18846         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18847               x_return_status := l_return_status;
18848               RAISE G_EXCEPTION_HALT_VALIDATION;
18849         END IF;
18850        END IF;
18851     END IF; --End of p_renew_ref_yn IF check for Copy_Notes
18852 
18853    END IF; -----End of LSE_ID check in (1,19)
18854 
18855  ------------Re-compute TAX_AMOUNT for a subscription line if the line being copied is a cancelled line------------
18856        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18857          FND_LOG.string(FND_LOG.level_statement
18858                         ,l_module_name||'.OKS_TAX_UTIL_PVT.Get_Tax'
18859                         ,' LSE ID and LINE TERMINATED FLAG : '||OKCOKSLinesRecTab.OkcB_LSE_ID(i)||':'||OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG(i)
18860                          );
18861        END IF;
18862 
18863  IF (P_Renew_Ref_YN = 'N') then
18864   Begin
18865   --npalepu added condition lse_id IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) for bug # 5660131 on 15-Nov-2006
18866    If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OkcB_LSE_ID(i) IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) AND
18867        (
18868         (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46 AND OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG(i) = 'Y')
18869         OR
18870         (OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG(i) = 'Y')
18871        )
18872       )
18873        then
18874 
18875     /*-Line below is not correct as it would be NULL. Also, it is not required as the Tax API derives the Price_Negotiated for the Line ID
18876     --lx_rail_rec.AMOUNT := OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i); --Price Negotiated would be stored in the CANCELLED_AMOUNT column
18877 								      --for a cancelled Subscription Line
18878     */
18879 
18880      --npalepu added on 06-NOV-2006 for bug # 5636927
18881      lx_rail_rec.AMOUNT := NULL;
18882      --end npalepu
18883 
18884        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18885         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18886          FND_LOG.string(FND_LOG.level_statement
18887                         ,l_module_name
18888                         ,'Before call to OKS_TAX_UTIL_PVT.Get_Tax '
18889                          );
18890         END IF;
18891        END IF;
18892 
18893     OKS_TAX_UTIL_PVT.Get_Tax
18894      ( p_api_version => p_api_version
18895       ,p_init_msg_list => p_init_msg_list
18896       ,p_chr_id	=> P_To_Chr_ID
18897       ,p_cle_id  => OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
18898       ,px_rail_rec => lx_rail_rec
18899       ,x_msg_count => x_msg_count
18900       ,x_msg_data => x_msg_data
18901       ,x_return_status => l_return_status
18902      );
18903        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18904         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18905          FND_LOG.string(FND_LOG.level_statement
18906                         ,l_module_name||'.OKS_TAX_UTIL_PVT.Get_Tax'
18907                         ,'After call to Get Tax API for line: x_return_status :'||l_return_status
18908                         ||'Tax Amount '||lx_rail_rec.TAX_VALUE
18909                          );
18910         END IF;
18911        END IF;
18912 
18913 
18914        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
18915         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18916               x_return_status := l_return_status;
18917               RAISE G_EXCEPTION_HALT_VALIDATION;
18918         END IF;
18919        END IF;
18920 
18921     UPDATE OKS_K_LINES_B
18922     SET
18923      TAX_AMOUNT = lx_rail_rec.TAX_VALUE
18924     WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
18925     AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
18926 
18927     If SQL%NOTFOUND then
18928      l_return_status := FND_API.G_RET_STS_ERROR;
18929      RAISE G_EXCEPTION_HALT_VALIDATION;
18930     End If;
18931 
18932    End If;
18933   End;
18934  END IF; --End of check P_Renew_Ref_YN = 'N'
18935  ------------------------------------------------------------------------------------------------------------------
18936  -----------Generate new Locked_Price_List_Line_ID for line if a value currently exists----------
18937 
18938   IF (P_Renew_Ref_YN = 'N') THEN
18939    Begin
18940     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i) IS NOT NULL) then
18941           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18942            FND_LOG.string(FND_LOG.level_statement
18943                         ,l_module_name
18944                         ,'Before call to QP_LOCK_PRICELIST_GRP.Lock_Price'
18945                          );
18946           END IF;
18947      QP_LOCK_PRICELIST_GRP.Lock_Price(p_source_list_line_id     => OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
18948 	                             ,p_list_source_code        => 'OKS'
18949 				     ,p_orig_system_header_ref     => l_new_contract_number
18950 				     ,p_org_id 			=>   okc_context.get_okc_org_id
18951 				     ,x_locked_price_list_id       => l_locked_price_list_id
18952 				     ,x_locked_list_line_id        => l_locked_price_list_line_id
18953 				     ,x_return_status              => l_return_status
18954 				     ,x_msg_count                  => x_msg_count
18955 				     ,x_msg_data                   => x_msg_data);
18956 
18957        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18958         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18959          FND_LOG.string(FND_LOG.level_statement
18960                         ,l_module_name||'.QP_LOCK_PRICELIST_GRP.Lock_Price'
18961                         ,'After call to Lock_Price API for line: x_return_status :'||l_return_status
18962                         ||'Old Locked Price List Line ID='||OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
18963 			||'New Locked Price List Line ID='||l_locked_price_list_line_id
18964 			||'New Locked Price List ID='||l_locked_price_list_id
18965                          );
18966         END IF;
18967        END IF;
18968 
18969        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
18970         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18971               x_return_status := l_return_status;
18972               RAISE G_EXCEPTION_HALT_VALIDATION;
18973         END IF;
18974        END IF;
18975 
18976 	UPDATE OKS_K_LINES_B
18977 	SET
18978 	 LOCKED_PRICE_LIST_ID = l_locked_price_list_id
18979 	,LOCKED_PRICE_LIST_LINE_ID = l_locked_price_list_line_id
18980 	WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
18981         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
18982 
18983         If SQL%NOTFOUND then
18984           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18985            FND_LOG.string(FND_LOG.level_statement
18986                         ,l_module_name||'.QP_LOCK_PRICELIST_GRP.Lock_Price'
18987                         ,'After call to QP_LOCK_PRICELIST_GRP.Lock_Price, Error in Update OKS_K_LINES_B, row not found for update'
18988                          );
18989           END IF;
18990 
18991 	  l_return_status := FND_API.G_RET_STS_ERROR;
18992 	  RAISE G_EXCEPTION_HALT_VALIDATION;
18993 	End If;
18994     End If;
18995    End;
18996   END IF; --End of P_Renew_Ref_YN check for Lock_Price call
18997 
18998  ----------------------------------------------------------------------------------------------------
18999  ------------Generate Transaction Extension for line if a value currently exists--------------------
19000 
19001    Begin
19002     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i) IS NOT NULL) then
19003 	--Generate new transaction extension id;
19004        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19005         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19006          FND_LOG.string(FND_LOG.level_statement
19007                         ,l_module_name||'.Create_Transaction_Extension'
19008                         ,'Before call to Create_Transaction_Extension for line in COPY_LINES'
19009                         ||'Old Trxn ID='||OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
19010                          );
19011         END IF;
19012        END IF;
19013 
19014  	OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
19015                                       ,P_Init_Msg_List => p_init_msg_list
19016 			              ,P_Header_ID => NULL
19017 				      ,P_Line_ID => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
19018                                       ,P_Source_Trx_Ext_ID => OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
19019 				      ,P_Cust_Acct_ID => OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
19020                                       ,P_Bill_To_Site_Use_ID => OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
19021 				      ,x_entity_id => l_trxn_extension_id
19022                                       ,x_msg_data => x_msg_data
19023                                       ,x_msg_count => x_msg_count
19024                                       ,x_return_status => l_return_status) ;
19025 
19026 
19027 
19028        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19029         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19030          FND_LOG.string(FND_LOG.level_statement
19031                         ,l_module_name||'.Create_Transaction_Extension'
19032                         ,'After call to Create_Transaction_Extension for line: x_return_status :'||l_return_status
19033                         ||'New Trxn ID='||l_trxn_extension_id
19034                          );
19035         END IF;
19036        END IF;
19037 
19038        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
19039         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
19040               x_return_status := l_return_status;
19041               RAISE G_EXCEPTION_HALT_VALIDATION;
19042         END IF;
19043        END IF;
19044 
19045         UPDATE OKS_K_LINES_B
19046         SET
19047          TRXN_EXTENSION_ID = l_trxn_extension_id
19048         WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19049         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19050 
19051         If SQL%NOTFOUND then
19052           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19053            FND_LOG.string(FND_LOG.level_statement
19054                         ,l_module_name||'.Create_Transaction_Extension'
19055                         ,'After call to Create_Transaction_Extension, Error in Update OKS_K_LINES_B, row not found for update'
19056                          );
19057           END IF;
19058 
19059           l_return_status := FND_API.G_RET_STS_ERROR;
19060           RAISE G_EXCEPTION_HALT_VALIDATION;
19061         End If;
19062 
19063     End If;
19064 
19065    End;
19066 
19067    -- 03-Nov-2006 hkamdar. Bug# 5623498.
19068     IF OKCOKSLinesRecTab.OkcB_LSE_ID(i) in (7,9,25) AND OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i) IS NULL THEN
19069 
19070 
19071     OPEN get_toplvl_uom(OKCOKSLinesRecTab.OkcB_OldOKCLineID(i));
19072     FETCH get_toplvl_uom INTO l_toplvl_uom_code;
19073     CLOSE get_toplvl_uom;
19074 
19075     IF l_toplvl_uom_code IS NOT NULL then
19076       UPDATE OKS_K_LINES_B
19077       SET    toplvl_uom_code = l_toplvl_uom_code
19078       WHERE  id = OKCOKSLinesRecTab.OksB_NewOksLineID(i);
19079     END IF;
19080 
19081     END IF;
19082  -- 03-Nov-2006 hkamdar. Bug# 5623498.
19083  ------------------------------------------------------------------------------------------------------------------
19084  ------------------------------------------------------------------------------------------------
19085 
19086   END LOOP;
19087  End If; --End of row count in OKCOKSLinesRecTab.OkcB_NewOKCLineID
19088 
19089   --------------------End of row by row processing------------------------
19090        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19091         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19092          FND_LOG.string(FND_LOG.level_statement
19093                         ,l_module_name
19094                         ,'End of Row by Row processing'
19095                          );
19096         END IF;
19097        END IF;
19098 
19099 
19100    If (P_Renew_Ref_YN = 'N') THEN
19101       IF p_include_cancelled_lines = 'Y' AND
19102            p_include_terminated_lines = 'Y' THEN
19103           EXIT WHEN GetOKCOKSLinesB_Copy%NOTFOUND;
19104         ELSIF p_include_cancelled_lines = 'N' AND
19105               p_include_terminated_lines = 'Y' THEN
19106           EXIT WHEN GetOKCOKSLinesB_Copy_TERMN%NOTFOUND;
19107         ELSIF p_include_cancelled_lines = 'Y' AND
19108               p_include_terminated_lines = 'N' THEN
19109           EXIT WHEN GetOKCOKSLinesB_Copy_CANCEL%NOTFOUND;
19110         ELSIF p_include_cancelled_lines = 'N' AND
19111               p_include_terminated_lines = 'N' THEN
19112           EXIT WHEN GetOKCOKSLinesB_Copy_EXCLUDE%NOTFOUND;
19113         END IF;
19114 
19115    ELSIF (P_Renew_Ref_YN = 'Y') THEN
19116      EXIT WHEN GetOKCOKSLinesB_Renew%NOTFOUND;
19117    END IF;
19118 
19119  END LOOP; --End of Bulk fetch and insert into OKC_K_LINES_B,OKS_K_LINES_B,OKC_K_ITEMS
19120 
19121        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19122         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19123          FND_LOG.string(FND_LOG.level_statement
19124                         ,l_module_name
19125                         ,'After BULK FETCH and BULK INSERT into OKC_K_LINES_B,OKS_K_LINES_B,OKC_K_ITEMS'
19126                          );
19127         END IF;
19128        END IF;
19129 
19130 
19131     IF GetOKCOKSLinesB_Copy%ISOPEN THEN
19132       CLOSE GetOKCOKSLinesB_Copy;
19133     ELSIF GetOKCOKSLinesB_Copy_TERMN%ISOPEN THEN
19134       CLOSE GetOKCOKSLinesB_Copy_TERMN;
19135     ELSIF GetOKCOKSLinesB_Copy_CANCEL%ISOPEN THEN
19136       CLOSE GetOKCOKSLinesB_Copy_CANCEL;
19137     ELSIF GetOKCOKSLinesB_Copy_EXCLUDE%ISOPEN THEN
19138       CLOSE GetOKCOKSLinesB_Copy_EXCLUDE;
19139     ELSIF GetOKCOKSLinesB_Renew%ISOPEN THEN
19140       CLOSE GetOKCOKSLinesB_Renew;
19141     END IF;
19142 
19143  ----------------------------------------------------------------------------
19144  -- Update of OKC_K_LINES_B
19145  --   i)  CLE_ID on OKC_K_LINES_B for sublines
19146  --  ii) PRICE_NEGOTIATED on OKC_K_LINES_B for toplines
19147  --
19148  -- Update of OKS_K_LINES_B
19149  -- iii) COVERAGE_ID on OKS_K_LINES_B for toplines with STANDARD_COV_YN = 'N'
19150  --  iv) TAX_AMOUNT on OKS_K_LINES_B for all toplines
19151 
19152   Begin
19153 
19154    UPDATE OKC_K_LINES_B a
19155    SET a.CLE_ID = (select b.ID
19156   		   FROM OKC_K_LINES_B b
19157 		   WHERE
19158 		   b.ORIG_SYSTEM_ID1 = a.CLE_ID
19159 		   AND b.DNZ_CHR_ID = P_To_Chr_ID)
19160    WHERE
19161    a.DNZ_CHR_ID = P_To_Chr_ID
19162    AND a.CLE_ID IS NOT NULL;
19163 
19164    UPDATE OKC_K_LINES_B a
19165    SET a.PRICE_NEGOTIATED = (select sum(b.PRICE_NEGOTIATED)
19166                              from OKC_K_LINES_B b
19167 			     where b.CLE_ID = a.ID
19168 			     AND b.DNZ_CHR_ID = P_To_Chr_ID
19169 			     AND b.DATE_CANCELLED IS NULL) --Cancelled sublines shouldn't be included in sum.
19170    WHERE
19171    a.DNZ_CHR_ID = P_To_Chr_ID
19172    AND a.CLE_ID IS NULL
19173    AND a.LSE_ID <> 46; -- Subscription Lines do not have sublines. So they shouldnt be updated.
19174 
19175    UPDATE OKS_K_LINES_B a
19176    SET a.COVERAGE_ID = (select b.ID
19177   			FROM OKC_K_LINES_B b
19178 			WHERE
19179 			b.CLE_ID = a.CLE_ID
19180 			AND b.DNZ_CHR_ID = P_To_Chr_ID
19181 			AND b.LSE_ID in (2,20))
19182    WHERE a.DNZ_CHR_ID = P_To_Chr_ID
19183    AND a.CLE_ID in (select c.ID from OKC_K_LINES_B c
19184                     where c.DNZ_CHR_ID = P_To_Chr_ID
19185 		    and c.LSE_ID in (1,19))
19186    AND a.STANDARD_COV_YN = 'N';
19187 
19188    UPDATE OKS_K_LINES_B a
19189    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
19190                        FROM
19191 		       OKS_K_LINES_B b
19192 		      ,OKC_K_LINES_B c
19193 		       WHERE
19194 		       c.ID = b.CLE_ID
19195 		       AND c.cle_id = a.cle_id
19196 		       AND c.DATE_CANCELLED IS NULL) --Cancelled sublines shouldnt be included in sum
19197    WHERE a.dnz_chr_id = P_To_Chr_ID
19198    and a.CLE_ID = (select b.id
19199   		   FROM
19200 		   OKC_K_LINES_B b
19201 		   WHERE b.cle_id is NULL
19202 		   AND b.id = a.cle_id
19203 		   AND b.LSE_ID <> 46); --Subscription Lines do not have sublines. So they shouldnt be updated.
19204 
19205 
19206   -- hkamdar 05-Oct-2006. Bug# 5361663.
19207   -- Updating price_uom to NULL for Covered levels - Customer, Party and Site.
19208 
19209    Update OKS_K_LINES_B
19210    Set    PRICE_UOM = NULL
19211    WHERE  CLE_ID IN (SELECT ID FROM OKC_K_LINES_B WHERE DNZ_CHR_ID = P_To_Chr_ID
19212                           AND LSE_ID IN (8,10,35));
19213   -- End hkamdar 05-Oct-2006. Bug# 5361663.
19214 
19215   End;
19216  ---------------------------------------------------------------------------------
19217  --------------------------------------------------------------------------------
19218  --Update of OKC_K_HEADERS_B.ESTIMATED_AMOUNT and OKS_K_HEADERS_B.TAX_AMOUNT to equal
19219  --sum of OKC_K_LINES_B.PRICE_NEGOTIATED of all top lines and OKS_K_LINES_B.TAX_AMOUNT
19220  --of all top lines respectively
19221   Begin
19222    UPDATE OKC_K_HEADERS_B a
19223    SET a.ESTIMATED_AMOUNT = (select sum(b.PRICE_NEGOTIATED)
19224                              FROM OKC_K_LINES_B b
19225 			     where b.DNZ_CHR_ID = a.ID
19226 			     and b.CLE_ID IS NULL
19227                              AND b.DATE_CANCELLED IS NULL) --Cancelled toplines shouldn't be included in sum.
19228    WHERE a.ID = P_To_Chr_ID;
19229 
19230    UPDATE OKS_K_HEADERS_B a
19231    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
19232    		       FROM
19233 		       OKS_K_LINES_B b
19234 		      ,OKC_K_LINES_B c
19235 		       where b.DNZ_CHR_ID = a.CHR_ID
19236 		       and b.CLE_ID = c.ID
19237 		       and c.CLE_ID IS NULL
19238 		       and c.DATE_CANCELLED IS NULL) --Cancelled toplines shouldn't be included in sum
19239    WHERE a.CHR_ID = P_To_Chr_ID;
19240 
19241   End;
19242  --------------------------------------------------------------------------------
19243 
19244  -------------Generate new line numbers in OKC_K_LINES_B for newly created lines-----
19245  Begin
19246   GenerateNewLineNumber(P_To_Chr_ID => P_To_Chr_ID
19247                        ,P_Partial_Copy_YN => 'N'
19248                        ,x_return_status => l_return_Status);
19249 
19250        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19251         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19252          FND_LOG.string(FND_LOG.level_statement
19253                         ,l_module_name||'.GenerateNewLineNumber'
19254                         ,'After call to GenerateNewLineNumber for line: x_return_status :'||l_return_status
19255                          );
19256         END IF;
19257        END IF;
19258 
19259       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19260 	     RAISE G_EXCEPTION_HALT_VALIDATION;
19261       End If;
19262  End;
19263  ------------------------------------------------------------------------------------
19264 
19265  ------------Copy of Subscription Schedules for all lines in target contract---------
19266 
19267  Begin
19268   If (P_Renew_Ref_YN = 'N') then
19269 
19270       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19271         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19272          FND_LOG.string(FND_LOG.level_statement
19273                         ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst for all Subscription Lines'
19274                         ,'Before call to OKS_SETUP_UTIL_PUB.copy_subscr_inst for all Subscription Lines'
19275 			||to_char(sysdate,'DD/MM/YYYY HH:MI:SS')
19276                          );
19277         END IF;
19278        END IF;
19279 
19280      OKS_SETUP_UTIL_PUB.copy_subscr_inst(p_new_chr_id => P_To_Chr_ID
19281 	               			,p_cle_id => NULL
19282 					,p_intent => 'COPY'
19283 				        ,x_return_status => l_return_status);
19284 
19285        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19286         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19287          FND_LOG.string(FND_LOG.level_statement
19288                         ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst'
19289                         ,'After call to OKS_SETUP_UTIL_PUB.copy_subscr_inst: x_return_status:'||l_return_status
19290 			 ||to_char(sysdate,'DD/MM/YYYY HH:MI:SS')
19291                          ||' '||SQLERRM
19292                          );
19293         END IF;
19294        END IF;
19295 
19296      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19297          RAISE G_EXCEPTION_HALT_VALIDATION;
19298      End If;
19299   End If;
19300  End;
19301 
19302  ------------------------------------------------------------------------------------
19303  ------------Copy of OKC_K_LINES_TL--------------------------------------------------
19304  Begin
19305        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19306         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19307          FND_LOG.string(FND_LOG.level_statement
19308                         ,l_module_name||'.copy_okc_k_lines_tl'
19309                         ,'Before call to copy_okc_k_lines_tl'
19310                          );
19311         END IF;
19312        END IF;
19313    copy_okc_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
19314                     ,P_To_Chr_ID   => P_To_Chr_ID
19315 		    ,P_Partial_Copy_YN => 'N'
19316                     ,x_return_status => l_return_status);
19317 
19318        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19319         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19320          FND_LOG.string(FND_LOG.level_statement
19321                         ,l_module_name||'.copy_okc_k_lines_tl'
19322                         ,'After call to copy_okc_k_lines_tl: x_return_status:'||l_return_status
19323                          ||' '||SQLERRM
19324                          );
19325         END IF;
19326        END IF;
19327 
19328      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19329          RAISE G_EXCEPTION_HALT_VALIDATION;
19330      End If;
19331  End;
19332  ------------------------------------------------------------------------------------
19333  -----------Copy of OKC_PARTY_ROLES_B--------------------------------
19334  Begin
19335        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19336         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19337          FND_LOG.string(FND_LOG.level_statement
19338                         ,l_module_name||'.copy_okc_k_party_roles_b'
19339                         ,'Before call to copy_okc_k_party_roles_b'
19340                          );
19341         END IF;
19342        END IF;
19343 
19344   copy_okc_k_party_roles_b(P_From_Chr_ID => P_From_Chr_ID
19345                         ,P_To_Chr_ID   => P_To_Chr_ID
19346                         ,P_Partial_Copy_YN => 'N'
19347                         ,x_return_status => l_return_status);
19348 
19349        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19350         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19351          FND_LOG.string(FND_LOG.level_statement
19352                         ,l_module_name||'.copy_okc_k_party_roles_b'
19353                         ,'After call to copy_okc_k_party_roles_b: x_return_status:'||l_return_status
19354                          ||' '||SQLERRM
19355                          );
19356         END IF;
19357        END IF;
19358 
19359      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19360          RAISE G_EXCEPTION_HALT_VALIDATION;
19361      End If;
19362  End;
19363 ---------------------------------------------------------------------
19364 ------------Copy of OKC_PARTY_ROLES_TL------------------------------
19365  Begin
19366        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19367         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19368          FND_LOG.string(FND_LOG.level_statement
19369                         ,l_module_name||'.copy_okc_k_party_roles_tl'
19370                         ,'Before call to copy_okc_k_party_roles_tl'
19371                          );
19372         END IF;
19373        END IF;
19374   copy_okc_k_party_roles_tl(P_From_Chr_ID => P_From_Chr_ID
19375                         ,P_To_Chr_ID   => P_To_Chr_ID
19376                         ,P_Partial_Copy_YN => 'N'
19377                         ,x_return_status => l_return_status);
19378 
19379        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19380         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19381          FND_LOG.string(FND_LOG.level_statement
19382                         ,l_module_name||'.copy_okc_k_party_roles_tl'
19383                         ,'After call to copy_okc_party_roles_tl: x_return_status:'||l_return_status
19384                          ||' '||SQLERRM
19385                          );
19386         END IF;
19387        END IF;
19388 
19389      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19390          RAISE G_EXCEPTION_HALT_VALIDATION;
19391      End If;
19392  End;
19393 ----------------------------------------------------------------------
19394 ------------Copy of OKC_CONTACTS--------------------------------------
19395  Begin
19396        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19397         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19398          FND_LOG.string(FND_LOG.level_statement
19399                         ,l_module_name||'.copy_okc_contacts'
19400                         ,'Before call to copy_okc_contacts'
19401                          );
19402         END IF;
19403        END IF;
19404   copy_okc_contacts(P_From_Chr_ID => P_From_Chr_ID
19405                         ,P_To_Chr_ID   => P_To_Chr_ID
19406                         ,P_Partial_Copy_YN => 'N'
19407                         ,x_return_status => l_return_status);
19408 
19409        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19410         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19411          FND_LOG.string(FND_LOG.level_statement
19412                         ,l_module_name||'.copy_okc_contacts'
19413                         ,'After call to copy_okc_contacts: x_return_status:'||l_return_status
19414                          ||' '||SQLERRM
19415                          );
19416         END IF;
19417        END IF;
19418      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19419          RAISE G_EXCEPTION_HALT_VALIDATION;
19420      End If;
19421  End;
19422 -------------------------------------------------------------------------
19423 ------------Copy of OKC_PRICE_ATT_VALUES-----------------------------
19424  Begin
19425        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19426         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19427          FND_LOG.string(FND_LOG.level_statement
19428                         ,l_module_name||'.copy_okc_price_att_values'
19429                         ,'Before call to copy_okc_price_att_values'
19430                          );
19431         END IF;
19432        END IF;
19433   copy_okc_price_att_values(P_From_Chr_ID => P_From_Chr_ID
19434                         ,P_To_Chr_ID   => P_To_Chr_ID
19435                         ,P_Partial_Copy_YN => 'N'
19436                         ,x_return_status => l_return_status);
19437 
19438        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19439         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19440          FND_LOG.string(FND_LOG.level_statement
19441                         ,l_module_name||'.copy_okc_price_att_values'
19442                         ,'After call to copy_okc_price_att_values: x_return_status:'||l_return_status
19443                          ||' '||SQLERRM
19444                          );
19445         END IF;
19446        END IF;
19447 
19448      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19449          RAISE G_EXCEPTION_HALT_VALIDATION;
19450      End If;
19451  End;
19452 ---------------------------------------------------------------------
19453  -----------Copy of OKC_PRICE_ADJUSTMENTS---------------------------
19454  Begin
19455        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19456         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19457          FND_LOG.string(FND_LOG.level_statement
19458                         ,l_module_name||'.copy_okc_price_adjustments'
19459                         ,'Before call to copy_okc_price_adjustments'
19460                          );
19461         END IF;
19462        END IF;
19463 
19464    copy_okc_price_adjustments(P_From_Chr_ID => P_From_Chr_ID
19465                         ,P_To_Chr_ID   => P_To_Chr_ID
19466                         ,P_Partial_Copy_YN => 'N'
19467                         ,x_return_status => l_return_status);
19468 
19469        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19470         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19471          FND_LOG.string(FND_LOG.level_statement
19472                         ,l_module_name||'.copy_okc_price_adjustments'
19473                         ,'After call to copy_okc_price_adjustments: x_return_status:'||l_return_status
19474                          ||' '||SQLERRM
19475                          );
19476         END IF;
19477        END IF;
19478 
19479      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19480          RAISE G_EXCEPTION_HALT_VALIDATION;
19481      End If;
19482  End;
19483 --------------------------------------------------------------------
19484 ------------Copy of OKS_K_LINES_TL---------------------------------
19485  Begin
19486        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19487         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19488          FND_LOG.string(FND_LOG.level_statement
19489                         ,l_module_name||'.copy_oks_k_lines_tl'
19490                         ,'Before call to copy_oks_k_lines_tl'
19491                          );
19492         END IF;
19493        END IF;
19494   copy_oks_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
19495                         ,P_To_Chr_ID   => P_To_Chr_ID
19496                         ,P_Partial_Copy_YN => 'N'
19497                         ,x_return_status => l_return_status);
19498 
19499        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19500         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19501          FND_LOG.string(FND_LOG.level_statement
19502                         ,l_module_name||'.copy_oks_k_lines_tl'
19503                         ,'After call to copy_oks_k_lines_tl: x_return_status:'||l_return_status
19504                          ||' '||SQLERRM
19505                          );
19506         END IF;
19507        END IF;
19508 
19509      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19510          RAISE G_EXCEPTION_HALT_VALIDATION;
19511      End If;
19512  End;
19513 ---------------------------------------------------------------------
19514 ------------Copy of OKS_REV_DISTRIBUTIONS--------------------------
19515  Begin
19516        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19517         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19518          FND_LOG.string(FND_LOG.level_statement
19519                         ,l_module_name||'.copy_oks_rev_distributions'
19520                         ,'Before call to copy_oks_rev_distributions'
19521                          );
19522         END IF;
19523        END IF;
19524 
19525   copy_oks_rev_distributions(P_From_Chr_ID => P_From_Chr_ID
19526                         ,P_To_Chr_ID   => P_To_Chr_ID
19527                         ,P_Partial_Copy_YN => 'N'
19528                         ,x_return_status => l_return_status);
19529 
19530        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19531         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19532          FND_LOG.string(FND_LOG.level_statement
19533                         ,l_module_name||'.copy_oks_rev_distributions'
19534                         ,'After call to copy_oks_rev_distributions: x_return_status:'||l_return_status
19535                          ||' '||SQLERRM
19536                          );
19537         END IF;
19538        END IF;
19539 
19540      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19541          RAISE G_EXCEPTION_HALT_VALIDATION;
19542      End If;
19543  End;
19544 ---------------------------------------------------------------------
19545 -------------Copy of OKS_QUALIFIERS----------------------------------
19546  Begin
19547        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19548         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19549          FND_LOG.string(FND_LOG.level_statement
19550                         ,l_module_name||'.copy_oks_qualifiers'
19551                         ,'Before call to copy_oks_qualifiers'
19552                          );
19553         END IF;
19554        END IF;
19555 
19556   copy_oks_qualifiers(P_From_Chr_ID => P_From_Chr_ID
19557                         ,P_To_Chr_ID   => P_To_Chr_ID
19558                         ,P_Partial_Copy_YN => 'N'
19559                         ,x_return_status => l_return_status);
19560 
19561        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19562         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19563          FND_LOG.string(FND_LOG.level_statement
19564                         ,l_module_name||'.copy_oks_qualifiers'
19565                         ,'After call to copy_oks_qualifiers: x_return_status:'||l_return_status
19566                          ||' '||SQLERRM
19567                          );
19568         END IF;
19569        END IF;
19570 
19571      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19572          RAISE G_EXCEPTION_HALT_VALIDATION;
19573      End If;
19574  End;
19575 ----------------------------------------------------------------------
19576 
19577 --------------Copy of OKS_K_SALES_CREDITS-------------------------------
19578    Begin
19579    copy_oks_k_sales_credits(P_From_Chr_ID => P_From_Chr_ID
19580                            ,P_To_Chr_ID   => P_To_Chr_ID
19581                            ,P_Partial_Copy_YN => 'N'
19582                            ,x_return_status => l_return_status);
19583 
19584      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19585          RAISE G_EXCEPTION_HALT_VALIDATION;
19586      End If;
19587    End;
19588  ---------------------------------------------------------------------
19589 
19590 ----Create Operation Lines in case when P_Renew_Ref_YN = 'Y'----------
19591 
19592   If (P_Renew_Ref_YN = 'Y') then
19593    Begin
19594        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19595         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19596          FND_LOG.string(FND_LOG.level_statement
19597                         ,l_module_name||'.copy_okc_operation_lines'
19598                         ,'Before call to copy_okc_operation_lines'
19599                          );
19600         END IF;
19601        END IF;
19602 
19603     copy_okc_operation_lines(P_From_Chr_ID => P_From_Chr_ID
19604                             ,P_To_Chr_ID => P_To_Chr_ID
19605                             ,x_return_status => l_return_status);
19606 
19607        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19608         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19609          FND_LOG.string(FND_LOG.level_statement
19610                         ,l_module_name||'.copy_okc_operation_lines'
19611                         ,'After call to copy_okc_operation_lines: x_return_status:'||l_return_status
19612                          ||' '||SQLERRM
19613                          );
19614         END IF;
19615        END IF;
19616 
19617      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19618          RAISE G_EXCEPTION_HALT_VALIDATION;
19619      End If;
19620 
19621    End;
19622   End If;
19623 ----------------------------------------------------------------------
19624 ---------------------------------------------------------
19625 --The following entities are copied only for regular Copy of a Contract, not during
19626 --Renewal. These get regenerated during post-renewal process
19627 ---------------------------------------------------------
19628        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19629          FND_LOG.string(FND_LOG.level_statement
19630                         ,l_module_name||'.copy_lines'
19631                         ,'Template YN:'||IsSourceContractTemplate(P_From_Chr_ID => P_From_Chr_ID)
19632                         ||', l_SrcContractPPSetupExists_YN :'||l_SrcContractPPSetupExists_YN
19633 			||', l_GCDPPSetupExists_YN:'||l_GCDPPSetupExists_YN
19634                          );
19635        END IF;
19636 
19637  IF (P_Renew_Ref_YN = 'N') then
19638 
19639   --------------Update Invoice Rule ID and Accounting Rule ID on all copied top lines (if NULL)----
19640   --------------with that on header. This routine at the same populates the Package variables for
19641   --------------Header Billing attributes
19642 
19643   update_line_inv_and_acct_rule(P_To_Chr_ID => P_To_Chr_ID
19644  			       ,P_Partial_Copy_YN => 'N'
19645 			       ,x_return_status => l_return_status
19646                                );
19647 
19648   -------------------------------------------------------------------------------------------------
19649 
19650   --Copy Billing schedules only if source contract is not a template. This is because
19651   --update_template_contract anyway deletes and recreates the schedules as per dates
19652   --specified by user.
19653 
19654 --  IF (IsSourceContractTemplate(P_From_Chr_ID => P_From_Chr_ID) = 'N') THEN
19655    IF (
19656        (l_SrcContractPPSetupExists_YN = 'Y') OR
19657        (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'N')
19658      ) THEN -- Bulk Copy of Billing Schedule can be done from Source
19659 
19660   --================Start of Billing Schedule copy for Header and Lines==========
19661 
19662    -------------Copy of OKS_STREAM_LEVELS_B---------------------------
19663    Begin
19664        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19665         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19666          FND_LOG.string(FND_LOG.level_statement
19667                         ,l_module_name||'.copy_oks_stream_levels_b'
19668                         ,'Before call to copy_oks_stream_levels_b'
19669                          );
19670         END IF;
19671        END IF;
19672 
19673    copy_oks_stream_levels_b(P_From_Chr_ID => P_From_Chr_ID
19674                            ,P_To_Chr_ID   => P_To_Chr_ID
19675                            ,P_Partial_Copy_YN => 'N'
19676                            ,x_return_status => l_return_status);
19677 
19678        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19679         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19680          FND_LOG.string(FND_LOG.level_statement
19681                         ,l_module_name||'.copy_oks_stream_levels_b'
19682                         ,'After call to copy_oks_stream_levels_b: x_return_status:'||l_return_status
19683                          ||' '||SQLERRM
19684                          );
19685         END IF;
19686        END IF;
19687 
19688      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19689          RAISE G_EXCEPTION_HALT_VALIDATION;
19690      End If;
19691    End;
19692   -------------------------------------------------------------------
19693    -------------Copy of OKS_LEVEL_ELEMENTS---------------------------
19694    Begin
19695        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19696         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19697          FND_LOG.string(FND_LOG.level_statement
19698                         ,l_module_name||'.copy_oks_level_elements'
19699                         ,'Before call to copy_oks_level_elements'
19700                          );
19701         END IF;
19702        END IF;
19703 
19704    copy_oks_level_elements(P_From_Chr_ID => P_From_Chr_ID
19705                           ,P_To_Chr_ID   => P_To_Chr_ID
19706                           ,P_Partial_Copy_YN => 'N'
19707                           ,x_return_status => l_return_status);
19708 
19709        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19710         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19711          FND_LOG.string(FND_LOG.level_statement
19712                         ,l_module_name||'.copy_oks_level_elements'
19713                         ,'After call to copy_oks_level_elements: x_return_status:'||l_return_status
19714                          ||' '||SQLERRM
19715                          );
19716         END IF;
19717        END IF;
19718 
19719      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19720          RAISE G_EXCEPTION_HALT_VALIDATION;
19721      End If;
19722    End;
19723   --------------------------------------------------------------------
19724 
19725   --------------Copy of Billing schedules for Skipped Lines-----------
19726    Begin
19727       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19728        IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19729         FND_LOG.string(FND_LOG.level_statement
19730                        ,l_module_name||'.copy_bsch_for_SkippedLines'
19731                        ,'Before call to copy_bsch_for_SkippedLines'
19732                         );
19733        END IF;
19734       END IF;
19735 
19736 
19737 
19738    copy_bsch_for_SkippedLines(P_To_Chr_ID  => P_To_Chr_ID
19739 			     ,P_From_Chr_ID => P_From_Chr_ID
19740 			     ,P_Partial_Copy_YN => 'N'
19741                              ,p_init_msg_list => p_init_msg_list
19742                              ,x_return_status => l_return_status
19743                              ,x_msg_count => x_msg_count
19744                              ,x_msg_data => x_msg_data);
19745 
19746        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19747         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19748          FND_LOG.string(FND_LOG.level_statement
19749                         ,l_module_name||'.copy_bsch_for_SkippedLines'
19750                         ,'After call to copy_bsch_for_SkippedLines: x_return_status:'||l_return_status
19751                          ||' '||SQLERRM
19752                          );
19753         END IF;
19754        END IF;
19755 
19756 
19757 
19758      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19759          RAISE G_EXCEPTION_HALT_VALIDATION;
19760      End If;
19761 
19762    End;
19763   --------------------------------------------------------------------
19764 
19765 
19766    ELSIF (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'Y') THEN
19767        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19768         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19769          FND_LOG.string(FND_LOG.level_statement
19770                         ,l_module_name||'.create_bsch_using_PPSetup'
19771                         ,'Before call to create_bsch_using_PPSetup'
19772                          );
19773         END IF;
19774        END IF;
19775     --Create Billing Schedule using Partial Period Setup in GCD----
19776     create_bsch_using_PPSetup(P_To_Chr_ID        => P_To_Chr_ID
19777                              ,P_From_Chr_ID      => P_From_Chr_ID
19778                              ,P_Partial_Copy_YN  => 'N'
19779                              ,p_init_msg_list    => p_init_msg_list
19780                              ,x_return_status    => l_return_status
19781                              ,x_msg_count   	 => x_msg_count
19782                              ,x_msg_data         => x_msg_data);
19783 
19784        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19785         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19786          FND_LOG.string(FND_LOG.level_statement
19787                         ,l_module_name||'.create_bsch_using_PPSetup'
19788                         ,'After call to create_bsch_using_PPSetup: x_return_status:'||l_return_status
19789                          ||' '||SQLERRM
19790                          );
19791         END IF;
19792        END IF;
19793      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19794          RAISE G_EXCEPTION_HALT_VALIDATION;
19795      End If;
19796 
19797 
19798    END IF; --End of IF Check for l_SrcContractPPSetupExists_YN = 'Y'
19799 --  END IF; --End of IsSourceContractTemplate = 'N' check
19800 
19801   --================End of Billing Schedule copy===============================
19802 
19803    --================Start of Coverage Schedule copy for Lines==================
19804 
19805    -------------Copy of OKS_COVERAGE_TIMEZONES------------------------
19806    Begin
19807    copy_oks_coverage_timezones(P_From_Chr_ID => P_From_Chr_ID
19808                               ,P_To_Chr_ID   => P_To_Chr_ID
19809                               ,P_Partial_Copy_YN => 'N'
19810                               ,x_return_status => l_return_status);
19811      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19812          RAISE G_EXCEPTION_HALT_VALIDATION;
19813      End If;
19814    End;
19815   ---------------------------------------------------------------------
19816 
19817    -------------Copy of OKS_COVERAGE_TIMES-----------------------------
19818    Begin
19819    copy_oks_coverage_times(P_From_Chr_ID => P_From_Chr_ID
19820                               ,P_To_Chr_ID   => P_To_Chr_ID
19821                               ,P_Partial_Copy_YN => 'N'
19822                               ,x_return_status => l_return_status);
19823      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19824          RAISE G_EXCEPTION_HALT_VALIDATION;
19825      End If;
19826    End;
19827   ---------------------------------------------------------------------
19828   --=======================End of Coverage Schedule copy==========================
19829 
19830 
19831   --=======================Start of PM Schedule Copy for Line=====================
19832 
19833    -------------Copy of OKS_PM_ACTIVITIES-----------------------------
19834    Begin
19835    copy_oks_pm_activities(P_From_Chr_ID => P_From_Chr_ID
19836                          ,P_To_Chr_ID   => P_To_Chr_ID
19837                          ,P_Partial_Copy_YN => 'N'
19838                          ,x_return_status => l_return_status);
19839 
19840      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19841          RAISE G_EXCEPTION_HALT_VALIDATION;
19842      End If;
19843    End;
19844   ---------------------------------------------------------------------
19845   --------------Copy of OKS_PM_STREAM_LEVELS---------------------------
19846    Begin
19847    copy_oks_pm_stream_levels(P_From_Chr_ID => P_From_Chr_ID
19848                          ,P_To_Chr_ID   => P_To_Chr_ID
19849                          ,P_Partial_Copy_YN => 'N'
19850                          ,x_return_status => l_return_status);
19851 
19852      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19853          RAISE G_EXCEPTION_HALT_VALIDATION;
19854      End If;
19855    End;
19856   ---------------------------------------------------------------------
19857   -------------Copy of OKS_PM_SCHEDULES----------------------------------
19858    Begin
19859    copy_oks_pm_schedules(P_From_Chr_ID => P_From_Chr_ID
19860                          ,P_To_Chr_ID   => P_To_Chr_ID
19861                          ,P_Partial_Copy_YN => 'N'
19862                          ,x_return_status => l_return_status);
19863 
19864      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19865          RAISE G_EXCEPTION_HALT_VALIDATION;
19866      End If;
19867    End;
19868   ---------------------------------------------------------------------
19869 
19870  --=====================End of PM Schedule Copy=================================
19871 
19872 
19873  --=====================Start of Action Times copy for Lines====================
19874 
19875   --------------Copy of OKS_ACTION_TIME_TYPES-------------------------
19876    Begin
19877    copy_oks_action_time_types(P_From_Chr_ID => P_From_Chr_ID
19878                              ,P_To_Chr_ID   => P_To_Chr_ID
19879                              ,P_Partial_Copy_YN => 'N'
19880                              ,x_return_status => l_return_status);
19881 
19882      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19883          RAISE G_EXCEPTION_HALT_VALIDATION;
19884      End If;
19885    End;
19886   ---------------------------------------------------------------------
19887   --------------Copy of OKS_ACTION_TIMES-------------------------------
19888    Begin
19889    copy_oks_action_times(P_From_Chr_ID => P_From_Chr_ID
19890                         ,P_To_Chr_ID   => P_To_Chr_ID
19891                         ,P_Partial_Copy_YN => 'N'
19892                         ,x_return_status => l_return_status);
19893 
19894      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19895          RAISE G_EXCEPTION_HALT_VALIDATION;
19896      End If;
19897    End;
19898   ---------------------------------------------------------------------
19899 
19900  --=====================End of Action Times copy================================
19901 
19902  --=====================Start of BillRate Schedule copy for Lines===============
19903 
19904   --------------Copy of OKS_BILLRATE_SCHEDULES-------------------------------
19905    Begin
19906    copy_oks_billrate_schedules(P_From_Chr_ID => P_From_Chr_ID
19907                               ,P_To_Chr_ID   => P_To_Chr_ID
19908                               ,P_Partial_Copy_YN => 'N'
19909                               ,x_return_status => l_return_status);
19910 
19911      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19912          RAISE G_EXCEPTION_HALT_VALIDATION;
19913      End If;
19914    End;
19915   ---------------------------------------------------------------------
19916 
19917  --=====================End of BillRate Schedule copy============================
19918 
19919 
19920     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
19921       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
19922          FND_LOG.string(FND_LOG.level_procedure
19923                         ,l_module_name||'.End'
19924                         ,',x_return_status='||x_return_status
19925                          );
19926       END IF;
19927     END IF;
19928   END IF; --End of check of P_Renew_Ref_YN='N'
19929 
19930  EXCEPTION
19931   WHEN G_EXCEPTION_HALT_VALIDATION then
19932 
19933       IF GetOKCOKSLinesB_Copy%ISOPEN THEN
19934         CLOSE GetOKCOKSLinesB_Copy;
19935       ELSIF GetOKCOKSLinesB_Copy_TERMN%ISOPEN THEN
19936         CLOSE GetOKCOKSLinesB_Copy_TERMN;
19937       ELSIF GetOKCOKSLinesB_Copy_CANCEL%ISOPEN THEN
19938         CLOSE GetOKCOKSLinesB_Copy_CANCEL;
19939       ELSIF GetOKCOKSLinesB_Copy_EXCLUDE%ISOPEN THEN
19940         CLOSE GetOKCOKSLinesB_Copy_EXCLUDE;
19941       ELSIF GetOKCOKSLinesB_Renew%ISOPEN THEN
19942         CLOSE GetOKCOKSLinesB_Renew;
19943       END IF;
19944 
19945     x_return_status := l_return_status;
19946       IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) then
19947          FND_LOG.string(FND_LOG.level_procedure
19948                         ,l_module_name||'.EXCEPTION'
19949                         ,',x_return_status='||x_return_status
19950                         ||'Error Msg='||SQLERRM
19951                          );
19952       END IF;
19953     OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
19954     RETURN;
19955   WHEN OTHERS THEN
19956 
19957       IF GetOKCOKSLinesB_Copy%ISOPEN THEN
19958         CLOSE GetOKCOKSLinesB_Copy;
19959       ELSIF GetOKCOKSLinesB_Copy_TERMN%ISOPEN THEN
19960         CLOSE GetOKCOKSLinesB_Copy_TERMN;
19961       ELSIF GetOKCOKSLinesB_Copy_CANCEL%ISOPEN THEN
19962         CLOSE GetOKCOKSLinesB_Copy_CANCEL;
19963       ELSIF GetOKCOKSLinesB_Copy_EXCLUDE%ISOPEN THEN
19964         CLOSE GetOKCOKSLinesB_Copy_EXCLUDE;
19965       ELSIF GetOKCOKSLinesB_Renew%ISOPEN THEN
19966         CLOSE GetOKCOKSLinesB_Renew;
19967       END IF;
19968     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19969     FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
19970     RAISE;
19971 
19972 END copy_lines;
19973 --=======================================End COPY_LINES=====================================
19974 
19975 
19976 /*======================================================================================
19977 --Copy_Line_Components: This procedure copies all lines that are selected by the user for Copy in the Copy UI
19978               and their details. This pricedure is used in COPY_COMPONENTS API.
19979 		    Parameters:
19980 		      P_From_Chr_ID: Header ID of the Source Contract
19981 		      P_To_Chr_ID  : Header ID of the Target Contract
19982 		      P_Target_Contract_New_YN: Flag to indicate if the Target Contract was just created as part of Copy
19983 	                          or was already present and only lines were copied to an existing target
19984 				  contract. Value for this parameter will be 'Y' if source contract is being
19985 				  copied to a new contract, 'N' if the copy is happening into an existing
19986 				  contract.  This parameter would be initialized in this API to 'N' and get set
19987 			          to 'Y' immediately after the call to Copy_Contract_Header.
19988                      		  This parameter would be used in copy of:
19989 					    Price Attribute Values
19990 					    Price Adjustments
19991 					    Sales Credits
19992 					    Billing Schedules.
19993 				  If value is 'N' these entities would be copied only for Lines
19994 				  else they would be copied for both Header and Lines.
19995 ===============================================================================*/
19996 PROCEDURE copy_line_components(
19997       p_api_version      IN NUMBER
19998      ,p_init_msg_list    IN VARCHAR2 DEFAULT OKC_API.G_FALSE
19999      ,x_return_status    OUT NOCOPY VARCHAR2
20000      ,x_msg_count        OUT NOCOPY NUMBER
20001      ,x_msg_data         OUT NOCOPY VARCHAR2
20002      ,P_From_Chr_ID      IN NUMBER
20003      ,P_To_Chr_ID        IN NUMBER
20004      ,P_Target_Contract_New_YN IN VARCHAR2
20005      ,P_Lines_Tbl        IN api_lines_tbl
20006      ,p_change_status_YN                IN VARCHAR2 --Added for Update_Service requirement(Bug 4747648)
20007                                                            --If 'Y', status of new line is default status
20008                                                            --If 'N', status from Source Line is retained
20009      ,p_return_new_top_line_ID_YN    IN VARCHAR2 --Added for Update_Service requirement(Bug 4747648)
20010                                                            --If 'Y' then the new line IDs of the copied top lines need to be
20011                                                            --published
20012 
20013 ,p_include_cancelled_lines IN VARCHAR2 DEFAULT 'Y'
20014 ,p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
20015 
20016  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_LINE_COMPONENTS';
20017  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
20018  l_return_status    VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
20019  l_euro_currency    VARCHAR2(15) := NULL;
20020  l_converted_price_negotiated NUMBER := NULL;
20021  l_converted_price_unit NUMBER := NULL;
20022 
20023  l_SrcContractPPSetupExists_YN VARCHAR2(1) := ContractPPSetupEXISTS(P_Chr_ID => P_From_Chr_ID);
20024  l_TrgContractPPSetupExists_YN VARCHAR2(1) := ContractPPSetupEXISTS(P_Chr_ID => P_To_Chr_ID);
20025  l_GCDPPSetupExists_YN VARCHAR2(1);
20026 
20027  l_locked_price_list_id      NUMBER := NULL;
20028  l_locked_price_list_line_id NUMBER := NULL;
20029  l_trxn_extension_id           NUMBER := NULL;
20030 
20031  lx_rail_rec OKS_TAX_UTIL_PVT.ra_rec_type;
20032  -- 03-Nov-2006 hkamdar. Bug# 5623498.
20033  CURSOR get_toplvl_uom(p_line_id IN NUMBER) IS
20034  SELECT OEL.PRICING_QUANTITY_UOM
20035        FROM   OKC_K_LINES_B OKCLINE,
20036               OKC_K_REL_OBJS OKCREL,
20037               OE_ORDER_LINES_ALL OEL
20038        WHERE  OKCLINE.LSE_ID IN (7,9,25)
20039        AND    OKCLINE.id = p_line_id
20040        AND    OKCLINE.ID =  OKCREL.CLE_ID
20041        AND    OEL.LINE_ID = OKCREL.OBJECT1_ID1;
20042  l_toplvl_uom_code   OKS_K_LINES_B.toplvl_uom_code%TYPE;
20043  -- 03-Nov-2006 hkamdar. Bug# 5623498.
20044 
20045   -------------Cursor to get default status for line-------------------------
20046   CURSOR get_default_status IS
20047   select code
20048   from okc_statuses_b
20049   where ste_code = 'ENTERED'
20050   and default_yn = 'Y';
20051 
20052   l_Default_Sts_Code OKC_STATUSES_B.CODE%TYPE;
20053   ---------------------------------------------------------------------------
20054   ------------Cursor to get Contract Number,Start Date and End Date of newly created contract--------
20055   CURSOR get_new_contract_num_and_Dates(P_To_Chr_ID IN NUMBER) IS
20056   select
20057    a.contract_number
20058   ,a.start_date
20059   ,a.end_date
20060   ,b.price_uom
20061   from okc_k_headers_b a
20062   ,oks_k_headers_b b
20063   where a.id = P_To_Chr_ID
20064   and a.id = b.chr_id;
20065 
20066   l_new_contract_number       OKC_K_HEADERS_B.CONTRACT_NUMBER%TYPE := NULL;
20067   l_Hdr_Start_Date DATE;
20068   l_Hdr_End_Date   DATE;
20069   l_Target_Hdr_Price_UOM  OKS_K_HEADERS_B.PRICE_UOM%TYPE := NULL;
20070 
20071   -- Bug# 5531198 hkamdar 21-Sep-2006
20072   l_TrgtHeaderPriceUomExists_YN VARCHAR2(1);
20073   -- End Bug# 5531198 hkamdar 21-Sep-2006
20074 
20075 
20076 /*if p_include_cancelled_lines = 'Y' AND P_INCLUDE_TERMINATED_LINES = 'Y' */
20077   ----------------------------------------------------------------------------
20078   -- Cursor to get rows to be copied from:
20079   --	OKC_K_LINES_B_TEMP
20080   --	OKS_K_LINES_B
20081   --	OKC_K_ITEMS
20082   -- for a specified Source Contract and for the lines chosen by the user for copy.
20083 
20084   CURSOR GetOKCOKSLinesB_Temp(P_From_Chr_ID IN NUMBER
20085 			     ,P_To_Chr_ID IN NUMBER) IS
20086   SELECT
20087   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
20088    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
20089   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
20090   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
20091   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
20092   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
20093   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
20094   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
20095   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
20096   ,decode(p_change_status_YN
20097         ,'Y'
20098         ,NULL
20099         ,'N'
20100         ,decode(okcBT.CLE_ID
20101                ,NULL
20102                ,NULL
20103                ,okcBT.TRN_CODE)
20104          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
20105   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
20106   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
20107   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
20108   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
20109   ,decode(okcBT.DATE_TERMINATED
20110          ,NULL
20111          ,decode(okcBT.LSE_ID
20112                 ,46
20113                 ,decode(okcBT.DATE_CANCELLED
20114                        ,NULL
20115                        ,okcBT.PRICE_NEGOTIATED
20116                        ,okcBT.CANCELLED_AMOUNT
20117                        )
20118                 ,okcBT.PRICE_NEGOTIATED
20119                 )
20120          ,nvl(okcBT.PRICE_NEGOTIATED,0)
20121           +nvl(oksB.CREDIT_AMOUNT,0)
20122           +nvl(oksB.UBT_AMOUNT,0)
20123           +nvl(oksB.SUPPRESSED_CREDIT,0)
20124          ) 					    AS OkcBT_PRICE_NEGOTIATED
20125   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
20126   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
20127   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
20128   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
20129   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
20130   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
20131   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
20132   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
20133   ,NULL			                            AS OkcBT_DATE_TERMINATED
20134   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
20135   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
20136   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
20137   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
20138   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
20139   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
20140   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
20141   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
20142   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
20143   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
20144   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
20145   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
20146   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
20147   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
20148   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
20149   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
20150   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
20151   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
20152   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
20153   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
20154   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
20155   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
20156   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
20157   ,NULL				    		    AS OkcBT_DATE_RENEWED
20158   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
20159   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
20160   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
20161   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
20162   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
20163   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
20164   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
20165   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
20166   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
20167   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
20168   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
20169   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
20170   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
20171   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
20172   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
20173   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
20174   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
20175   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
20176   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
20177   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
20178   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
20179   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
20180   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
20181   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
20182   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
20183   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
20184   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
20185   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
20186   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
20187   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
20188   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
20189   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
20190   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
20191   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
20192   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
20193   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
20194   ,decode(p_change_status_YN
20195         ,'Y'
20196         ,NULL
20197         ,'N'
20198         ,decode(okcBT.CLE_ID
20199                ,NULL
20200                ,NULL
20201                ,okcBT.DATE_CANCELLED)
20202          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
20203   ,decode(p_change_status_YN
20204         ,'Y'
20205         ,NULL
20206         ,'N'
20207         ,decode(okcBT.CLE_ID
20208                ,NULL
20209                ,NULL
20210                ,okcBT.TERM_CANCEL_SOURCE)
20211          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
20212   ,decode(okcBT.DATES_CHANGED_YN
20213          ,'N'
20214          ,okcBT.ANNUALIZED_FACTOR
20215          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
20216 						  ,okcBT.END_DATE
20217 						  ,okcBT.LSE_ID)
20218          )			    		    AS OkcBT_ANNUALIZED_FACTOR
20219  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20220 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20221   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20222   ,decode(p_change_status_YN
20223         ,'Y'
20224         ,NULL
20225         ,'N'
20226         ,decode(okcBT.CLE_ID
20227                ,NULL
20228                ,NULL
20229                ,okcBT.CANCELLED_AMOUNT)
20230          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
20231   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
20232   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
20233   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
20234   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
20235   ,oksB.ID                                		AS OksB_OldOksLineID
20236   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
20237   ,oksB.CLE_ID  					AS OksB_CLE_ID
20238   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
20239   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
20240   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
20241  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20242 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
20243   ,NULL					        AS OksB_PAYMENT_TYPE
20244   ,NULL							AS OksB_CC_NO --Obsolete
20245   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
20246   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
20247   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
20248 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20249   ,NULL                         AS OksB_COMMITMENT_ID
20250 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
20251   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
20252   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
20253   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
20254   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
20255   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
20256   ,NULL							AS OksB_UBT_AMOUNT
20257   ,NULL							AS OksB_CREDIT_AMOUNT
20258   ,NULL							AS OksB_SUPPRESSED_CREDIT
20259   ,NULL							AS OksB_OVERRIDE_AMOUNT
20260   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
20261   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20262   ,NULL					        AS OksB_CUST_PO_NUMBER
20263 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
20264   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
20265   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
20266   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
20267  -- Bug# 5531198 hkamdar 21-Sep-2006
20268  /*
20269   ,decode(P_Target_Contract_New_YN
20270          ,'Y'
20271          ,decode(l_SrcContractPPSetupExists_YN
20272                 ,'Y'
20273                 ,oksB.PRICE_UOM
20274                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
20275          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
20276 			  --is subsequently updated based on whether Partial Period Setup on
20277 			  --Target Contract existed or not
20278          ) 						AS OksB_PRICE_UOM */
20279   ,decode(P_Target_Contract_New_YN
20280          ,'Y'
20281 	 ,decode(l_SrcContractPPSetupExists_YN
20282           ,'Y'
20283           ,oksB.PRICE_UOM
20284           ,decode(l_TrgtHeaderPriceUomExists_YN
20285 	          ,'Y'
20286 		  ,l_Target_Hdr_Price_UOM
20287 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
20288 		  --The value of Price_UOM when copying to an existing Target Contract
20289 		  --is subsequently updated based on whether Partial Period Setup on
20290 		  --Target Contract existed or not
20291   -- End Bug# 5531198 hkamdar 21-Sep-2006
20292   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
20293   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
20294   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
20295   ,oksB.TAX_CODE					AS OksB_TAX_CODE
20296   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
20297   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
20298   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
20299   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
20300   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
20301   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
20302   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
20303   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
20304   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
20305   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
20306   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
20307   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
20308   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
20309   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
20310   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
20311   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
20312   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
20313   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
20314   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
20315   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
20316   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
20317   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
20318   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
20319   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
20320   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
20321   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
20322   ,oksB.BASE_READING					AS OksB_BASE_READING
20323   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
20324   ,NULL							AS OksB_FULL_CREDIT
20325   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
20326   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
20327   ,oksB.PRORATE						AS OksB_PRORATE
20328   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
20329   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
20330   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
20331   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
20332   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
20333   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
20334   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
20335   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
20336   ,oksB.PDF_ID						AS OksB_PDF_ID
20337   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
20338   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
20339   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
20340   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
20341   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
20342   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
20343   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
20344   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
20345   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
20346   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
20347   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
20348   ,1							AS OksB_OBJECT_VERSION_NUMBER
20349   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
20350   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
20351   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
20352   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
20353   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
20354   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
20355   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
20356   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
20357   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
20358   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
20359   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
20360   --------------------------------End of OKS_K_LINES_B columns-------------------------
20361   --------------------------------Start of OKC_K_ITEMS columns-------------------------
20362   ,okcI.ID                                     		AS OkcI_OldOkcItemID
20363   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
20364   ,okcI.CLE_ID						AS OkcI_CLE_ID
20365   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
20366   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
20367   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
20368   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
20369   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
20370   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
20371   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
20372   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
20373   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
20374   ,1							AS OkcI_OBJECT_VERSION_NUMBER
20375   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
20376   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
20377   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
20378   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
20379   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
20380   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
20381   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
20382   FROM
20383    OKC_K_LINES_B_TEMP okcBT
20384   ,OKS_K_LINES_B oksB
20385   ,OKC_K_ITEMS okcI
20386   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
20387   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
20388   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
20389   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
20390   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID;
20391 
20392 /*IF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'N' */
20393   ----------------------------------------------------------------------------
20394   -- Cursor to get rows to be copied from:
20395   --	OKC_K_LINES_B_TEMP
20396   --	OKS_K_LINES_B
20397   --	OKC_K_ITEMS
20398   -- for a specified Source Contract and for the lines chosen by the user for copy.
20399 
20400   CURSOR GetOKCOKSLinesB_Temp_CANCEL(P_From_Chr_ID IN NUMBER
20401 			     ,P_To_Chr_ID IN NUMBER) IS
20402   SELECT
20403   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
20404    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
20405   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
20406   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
20407   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
20408   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
20409   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
20410   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
20411   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
20412   ,decode(p_change_status_YN
20413         ,'Y'
20414         ,NULL
20415         ,'N'
20416         ,decode(okcBT.CLE_ID
20417                ,NULL
20418                ,NULL
20419                ,okcBT.TRN_CODE)
20420          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
20421   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
20422   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
20423   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
20424   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
20425   ,decode(okcBT.DATE_TERMINATED
20426          ,NULL
20427          ,decode(okcBT.LSE_ID
20428                 ,46
20429                 ,decode(okcBT.DATE_CANCELLED
20430                        ,NULL
20431                        ,okcBT.PRICE_NEGOTIATED
20432                        ,okcBT.CANCELLED_AMOUNT
20433                        )
20434                 ,okcBT.PRICE_NEGOTIATED
20435                 )
20436          ,nvl(okcBT.PRICE_NEGOTIATED,0)
20437           +nvl(oksB.CREDIT_AMOUNT,0)
20438           +nvl(oksB.UBT_AMOUNT,0)
20439           +nvl(oksB.SUPPRESSED_CREDIT,0)
20440          ) 					    AS OkcBT_PRICE_NEGOTIATED
20441   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
20442   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
20443   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
20444   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
20445   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
20446   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
20447   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
20448   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
20449   ,NULL			                            AS OkcBT_DATE_TERMINATED
20450   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
20451   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
20452   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
20453   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
20454   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
20455   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
20456   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
20457   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
20458   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
20459   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
20460   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
20461   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
20462   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
20463   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
20464   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
20465   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
20466   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
20467   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
20468   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
20469   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
20470   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
20471   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
20472   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
20473   ,NULL				    		    AS OkcBT_DATE_RENEWED
20474   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
20475   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
20476   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
20477   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
20478   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
20479   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
20480   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
20481   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
20482   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
20483   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
20484   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
20485   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
20486   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
20487   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
20488   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
20489   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
20490   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
20491   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
20492   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
20493   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
20494   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
20495   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
20496   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
20497   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
20498   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
20499   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
20500   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
20501   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
20502   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
20503   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
20504   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
20505   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
20506   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
20507   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
20508   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
20509   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
20510   ,decode(p_change_status_YN
20511         ,'Y'
20512         ,NULL
20513         ,'N'
20514         ,decode(okcBT.CLE_ID
20515                ,NULL
20516                ,NULL
20517                ,okcBT.DATE_CANCELLED)
20518          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
20519   ,decode(p_change_status_YN
20520         ,'Y'
20521         ,NULL
20522         ,'N'
20523         ,decode(okcBT.CLE_ID
20524                ,NULL
20525                ,NULL
20526                ,okcBT.TERM_CANCEL_SOURCE)
20527          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
20528   ,decode(okcBT.DATES_CHANGED_YN
20529          ,'N'
20530          ,okcBT.ANNUALIZED_FACTOR
20531          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
20532 						  ,okcBT.END_DATE
20533 						  ,okcBT.LSE_ID)
20534          )			    		    AS OkcBT_ANNUALIZED_FACTOR
20535  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20536 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20537   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20538   ,decode(p_change_status_YN
20539         ,'Y'
20540         ,NULL
20541         ,'N'
20542         ,decode(okcBT.CLE_ID
20543                ,NULL
20544                ,NULL
20545                ,okcBT.CANCELLED_AMOUNT)
20546          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
20547   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
20548   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
20549   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
20550   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
20551   ,oksB.ID                                		AS OksB_OldOksLineID
20552   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
20553   ,oksB.CLE_ID  					AS OksB_CLE_ID
20554   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
20555   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
20556   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
20557  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20558 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
20559   ,NULL					        AS OksB_PAYMENT_TYPE
20560   ,NULL							AS OksB_CC_NO --Obsolete
20561   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
20562   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
20563   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
20564 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20565   ,NULL                         AS OksB_COMMITMENT_ID
20566 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
20567   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
20568   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
20569   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
20570   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
20571   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
20572   ,NULL							AS OksB_UBT_AMOUNT
20573   ,NULL							AS OksB_CREDIT_AMOUNT
20574   ,NULL							AS OksB_SUPPRESSED_CREDIT
20575   ,NULL							AS OksB_OVERRIDE_AMOUNT
20576   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
20577   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20578   ,NULL					        AS OksB_CUST_PO_NUMBER
20579 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
20580   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
20581   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
20582   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
20583  -- Bug# 5531198 hkamdar 21-Sep-2006
20584  /*
20585   ,decode(P_Target_Contract_New_YN
20586          ,'Y'
20587          ,decode(l_SrcContractPPSetupExists_YN
20588                 ,'Y'
20589                 ,oksB.PRICE_UOM
20590                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
20591          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
20592 			  --is subsequently updated based on whether Partial Period Setup on
20593 			  --Target Contract existed or not
20594          ) 						AS OksB_PRICE_UOM */
20595   ,decode(P_Target_Contract_New_YN
20596          ,'Y'
20597 	 ,decode(l_SrcContractPPSetupExists_YN
20598           ,'Y'
20599           ,oksB.PRICE_UOM
20600           ,decode(l_TrgtHeaderPriceUomExists_YN
20601 	          ,'Y'
20602 		  ,l_Target_Hdr_Price_UOM
20603 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
20604 		  --The value of Price_UOM when copying to an existing Target Contract
20605 		  --is subsequently updated based on whether Partial Period Setup on
20606 		  --Target Contract existed or not
20607   -- End Bug# 5531198 hkamdar 21-Sep-2006
20608   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
20609   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
20610   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
20611   ,oksB.TAX_CODE					AS OksB_TAX_CODE
20612   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
20613   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
20614   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
20615   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
20616   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
20617   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
20618   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
20619   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
20620   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
20621   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
20622   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
20623   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
20624   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
20625   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
20626   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
20627   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
20628   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
20629   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
20630   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
20631   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
20632   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
20633   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
20634   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
20635   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
20636   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
20637   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
20638   ,oksB.BASE_READING					AS OksB_BASE_READING
20639   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
20640   ,NULL							AS OksB_FULL_CREDIT
20641   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
20642   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
20643   ,oksB.PRORATE						AS OksB_PRORATE
20644   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
20645   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
20646   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
20647   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
20648   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
20649   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
20650   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
20651   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
20652   ,oksB.PDF_ID						AS OksB_PDF_ID
20653   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
20654   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
20655   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
20656   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
20657   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
20658   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
20659   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
20660   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
20661   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
20662   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
20663   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
20664   ,1							AS OksB_OBJECT_VERSION_NUMBER
20665   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
20666   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
20667   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
20668   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
20669   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
20670   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
20671   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
20672   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
20673   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
20674   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
20675   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
20676   --------------------------------End of OKS_K_LINES_B columns-------------------------
20677   --------------------------------Start of OKC_K_ITEMS columns-------------------------
20678   ,okcI.ID                                     		AS OkcI_OldOkcItemID
20679   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
20680   ,okcI.CLE_ID						AS OkcI_CLE_ID
20681   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
20682   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
20683   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
20684   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
20685   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
20686   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
20687   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
20688   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
20689   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
20690   ,1							AS OkcI_OBJECT_VERSION_NUMBER
20691   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
20692   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
20693   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
20694   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
20695   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
20696   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
20697   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
20698   FROM
20699    OKC_K_LINES_B_TEMP okcBT
20700   ,OKS_K_LINES_B oksB
20701   ,OKC_K_ITEMS okcI
20702   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
20703   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
20704   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
20705   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
20706   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID
20707   AND okcBT.date_terminated is null;
20708 
20709 /*if p_include_cancelled_lines= 'N' AND p_include_terminated_lines = 'Y' */
20710   ----------------------------------------------------------------------------
20711   -- Cursor to get rows to be copied from:
20712   --	OKC_K_LINES_B_TEMP
20713   --	OKS_K_LINES_B
20714   --	OKC_K_ITEMS
20715   -- for a specified Source Contract and for the lines chosen by the user for copy.
20716 
20717   CURSOR GetOKCOKSLinesB_Temp_TERMN(P_From_Chr_ID IN NUMBER
20718 			     ,P_To_Chr_ID IN NUMBER) IS
20719   SELECT
20720   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
20721    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
20722   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
20723   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
20724   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
20725   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
20726   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
20727   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
20728   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
20729   ,decode(p_change_status_YN
20730         ,'Y'
20731         ,NULL
20732         ,'N'
20733         ,decode(okcBT.CLE_ID
20734                ,NULL
20735                ,NULL
20736                ,okcBT.TRN_CODE)
20737          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
20738   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
20739   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
20740   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
20741   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
20742   ,decode(okcBT.DATE_TERMINATED
20743          ,NULL
20744          ,decode(okcBT.LSE_ID
20745                 ,46
20746                 ,decode(okcBT.DATE_CANCELLED
20747                        ,NULL
20748                        ,okcBT.PRICE_NEGOTIATED
20749                        ,okcBT.CANCELLED_AMOUNT
20750                        )
20751                 ,okcBT.PRICE_NEGOTIATED
20752                 )
20753          ,nvl(okcBT.PRICE_NEGOTIATED,0)
20754           +nvl(oksB.CREDIT_AMOUNT,0)
20755           +nvl(oksB.UBT_AMOUNT,0)
20756           +nvl(oksB.SUPPRESSED_CREDIT,0)
20757          ) 					    AS OkcBT_PRICE_NEGOTIATED
20758   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
20759   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
20760   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
20761   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
20762   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
20763   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
20764   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
20765   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
20766   ,NULL			                            AS OkcBT_DATE_TERMINATED
20767   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
20768   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
20769   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
20770   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
20771   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
20772   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
20773   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
20774   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
20775   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
20776   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
20777   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
20778   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
20779   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
20780   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
20781   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
20782   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
20783   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
20784   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
20785   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
20786   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
20787   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
20788   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
20789   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
20790   ,NULL				    		    AS OkcBT_DATE_RENEWED
20791   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
20792   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
20793   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
20794   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
20795   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
20796   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
20797   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
20798   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
20799   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
20800   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
20801   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
20802   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
20803   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
20804   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
20805   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
20806   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
20807   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
20808   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
20809   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
20810   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
20811   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
20812   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
20813   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
20814   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
20815   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
20816   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
20817   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
20818   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
20819   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
20820   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
20821   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
20822   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
20823   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
20824   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
20825   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
20826   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
20827   ,decode(p_change_status_YN
20828         ,'Y'
20829         ,NULL
20830         ,'N'
20831         ,decode(okcBT.CLE_ID
20832                ,NULL
20833                ,NULL
20834                ,okcBT.DATE_CANCELLED)
20835          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
20836   ,decode(p_change_status_YN
20837         ,'Y'
20838         ,NULL
20839         ,'N'
20840         ,decode(okcBT.CLE_ID
20841                ,NULL
20842                ,NULL
20843                ,okcBT.TERM_CANCEL_SOURCE)
20844          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
20845   ,decode(okcBT.DATES_CHANGED_YN
20846          ,'N'
20847          ,okcBT.ANNUALIZED_FACTOR
20848          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
20849 						  ,okcBT.END_DATE
20850 						  ,okcBT.LSE_ID)
20851          )			    		    AS OkcBT_ANNUALIZED_FACTOR
20852  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20853 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20854   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20855   ,decode(p_change_status_YN
20856         ,'Y'
20857         ,NULL
20858         ,'N'
20859         ,decode(okcBT.CLE_ID
20860                ,NULL
20861                ,NULL
20862                ,okcBT.CANCELLED_AMOUNT)
20863          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
20864   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
20865   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
20866   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
20867   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
20868   ,oksB.ID                                		AS OksB_OldOksLineID
20869   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
20870   ,oksB.CLE_ID  					AS OksB_CLE_ID
20871   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
20872   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
20873   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
20874  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20875 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
20876   ,NULL					        AS OksB_PAYMENT_TYPE
20877   ,NULL							AS OksB_CC_NO --Obsolete
20878   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
20879   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
20880   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
20881 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20882   ,NULL                         AS OksB_COMMITMENT_ID
20883 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
20884   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
20885   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
20886   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
20887   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
20888   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
20889   ,NULL							AS OksB_UBT_AMOUNT
20890   ,NULL							AS OksB_CREDIT_AMOUNT
20891   ,NULL							AS OksB_SUPPRESSED_CREDIT
20892   ,NULL							AS OksB_OVERRIDE_AMOUNT
20893   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
20894   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20895   ,NULL					        AS OksB_CUST_PO_NUMBER
20896 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
20897   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
20898   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
20899   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
20900  -- Bug# 5531198 hkamdar 21-Sep-2006
20901  /*
20902   ,decode(P_Target_Contract_New_YN
20903          ,'Y'
20904          ,decode(l_SrcContractPPSetupExists_YN
20905                 ,'Y'
20906                 ,oksB.PRICE_UOM
20907                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
20908          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
20909 			  --is subsequently updated based on whether Partial Period Setup on
20910 			  --Target Contract existed or not
20911          ) 						AS OksB_PRICE_UOM */
20912   ,decode(P_Target_Contract_New_YN
20913          ,'Y'
20914 	 ,decode(l_SrcContractPPSetupExists_YN
20915           ,'Y'
20916           ,oksB.PRICE_UOM
20917           ,decode(l_TrgtHeaderPriceUomExists_YN
20918 	          ,'Y'
20919 		  ,l_Target_Hdr_Price_UOM
20920 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
20921 		  --The value of Price_UOM when copying to an existing Target Contract
20922 		  --is subsequently updated based on whether Partial Period Setup on
20923 		  --Target Contract existed or not
20924   -- End Bug# 5531198 hkamdar 21-Sep-2006
20925   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
20926   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
20927   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
20928   ,oksB.TAX_CODE					AS OksB_TAX_CODE
20929   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
20930   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
20931   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
20932   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
20933   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
20934   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
20935   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
20936   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
20937   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
20938   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
20939   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
20940   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
20941   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
20942   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
20943   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
20944   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
20945   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
20946   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
20947   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
20948   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
20949   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
20950   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
20951   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
20952   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
20953   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
20954   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
20955   ,oksB.BASE_READING					AS OksB_BASE_READING
20956   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
20957   ,NULL							AS OksB_FULL_CREDIT
20958   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
20959   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
20960   ,oksB.PRORATE						AS OksB_PRORATE
20961   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
20962   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
20963   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
20964   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
20965   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
20966   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
20967   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
20968   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
20969   ,oksB.PDF_ID						AS OksB_PDF_ID
20970   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
20971   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
20972   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
20973   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
20974   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
20975   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
20976   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
20977   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
20978   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
20979   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
20980   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
20981   ,1							AS OksB_OBJECT_VERSION_NUMBER
20982   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
20983   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
20984   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
20985   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
20986   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
20987   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
20988   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
20989   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
20990   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
20991   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
20992   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
20993   --------------------------------End of OKS_K_LINES_B columns-------------------------
20994   --------------------------------Start of OKC_K_ITEMS columns-------------------------
20995   ,okcI.ID                                     		AS OkcI_OldOkcItemID
20996   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
20997   ,okcI.CLE_ID						AS OkcI_CLE_ID
20998   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
20999   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
21000   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
21001   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
21002   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
21003   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
21004   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
21005   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
21006   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
21007   ,1							AS OkcI_OBJECT_VERSION_NUMBER
21008   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
21009   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
21010   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
21011   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
21012   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
21013   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
21014   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
21015   FROM
21016    OKC_K_LINES_B_TEMP okcBT
21017   ,OKS_K_LINES_B oksB
21018   ,OKC_K_ITEMS okcI
21019   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
21020   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
21021   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
21022   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
21023   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID
21024   AND okcBT.date_cancelled is null;
21025 
21026 /*if p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'N'*/
21027   ----------------------------------------------------------------------------
21028   -- Cursor to get rows to be copied from:
21029   --	OKC_K_LINES_B_TEMP
21030   --	OKS_K_LINES_B
21031   --	OKC_K_ITEMS
21032   -- for a specified Source Contract and for the lines chosen by the user for copy.
21033 
21034   CURSOR GetOKCOKSLinesB_Temp_EXCLUDE(P_From_Chr_ID IN NUMBER
21035 			     ,P_To_Chr_ID IN NUMBER) IS
21036   SELECT
21037   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
21038    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
21039   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
21040   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
21041   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
21042   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
21043   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
21044   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
21045   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
21046   ,decode(p_change_status_YN
21047         ,'Y'
21048         ,NULL
21049         ,'N'
21050         ,decode(okcBT.CLE_ID
21051                ,NULL
21052                ,NULL
21053                ,okcBT.TRN_CODE)
21054          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
21055   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
21056   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
21057   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
21058   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
21059   ,decode(okcBT.DATE_TERMINATED
21060          ,NULL
21061          ,decode(okcBT.LSE_ID
21062                 ,46
21063                 ,decode(okcBT.DATE_CANCELLED
21064                        ,NULL
21065                        ,okcBT.PRICE_NEGOTIATED
21066                        ,okcBT.CANCELLED_AMOUNT
21067                        )
21068                 ,okcBT.PRICE_NEGOTIATED
21069                 )
21070          ,nvl(okcBT.PRICE_NEGOTIATED,0)
21071           +nvl(oksB.CREDIT_AMOUNT,0)
21072           +nvl(oksB.UBT_AMOUNT,0)
21073           +nvl(oksB.SUPPRESSED_CREDIT,0)
21074          ) 					    AS OkcBT_PRICE_NEGOTIATED
21075   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
21076   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
21077   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
21078   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
21079   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
21080   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
21081   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
21082   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
21083   ,NULL			                            AS OkcBT_DATE_TERMINATED
21084   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
21085   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
21086   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
21087   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
21088   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
21089   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
21090   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
21091   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
21092   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
21093   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
21094   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
21095   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
21096   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
21097   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
21098   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
21099   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
21100   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
21101   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
21102   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
21103   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
21104   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
21105   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
21106   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
21107   ,NULL				    		    AS OkcBT_DATE_RENEWED
21108   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
21109   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
21110   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
21111   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
21112   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
21113   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
21114   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
21115   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
21116   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
21117   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
21118   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
21119   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
21120   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
21121   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
21122   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
21123   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
21124   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
21125   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
21126   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
21127   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
21128   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
21129   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
21130   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
21131   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
21132   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
21133   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
21134   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
21135   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
21136   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
21137   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
21138   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
21139   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
21140   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
21141   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
21142   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
21143   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
21144   ,decode(p_change_status_YN
21145         ,'Y'
21146         ,NULL
21147         ,'N'
21148         ,decode(okcBT.CLE_ID
21149                ,NULL
21150                ,NULL
21151                ,okcBT.DATE_CANCELLED)
21152          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
21153   ,decode(p_change_status_YN
21154         ,'Y'
21155         ,NULL
21156         ,'N'
21157         ,decode(okcBT.CLE_ID
21158                ,NULL
21159                ,NULL
21160                ,okcBT.TERM_CANCEL_SOURCE)
21161          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
21162   ,decode(okcBT.DATES_CHANGED_YN
21163          ,'N'
21164          ,okcBT.ANNUALIZED_FACTOR
21165          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
21166 						  ,okcBT.END_DATE
21167 						  ,okcBT.LSE_ID)
21168          )			    		    AS OkcBT_ANNUALIZED_FACTOR
21169  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21170 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
21171   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
21172   ,decode(p_change_status_YN
21173         ,'Y'
21174         ,NULL
21175         ,'N'
21176         ,decode(okcBT.CLE_ID
21177                ,NULL
21178                ,NULL
21179                ,okcBT.CANCELLED_AMOUNT)
21180          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
21181   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
21182   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
21183   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
21184   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
21185   ,oksB.ID                                		AS OksB_OldOksLineID
21186   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
21187   ,oksB.CLE_ID  					AS OksB_CLE_ID
21188   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
21189   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
21190   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
21191  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21192 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
21193   ,NULL					        AS OksB_PAYMENT_TYPE
21194   ,NULL							AS OksB_CC_NO --Obsolete
21195   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
21196   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
21197   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
21198 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21199   ,NULL                         AS OksB_COMMITMENT_ID
21200 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
21201   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
21202   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
21203   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
21204   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
21205   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
21206   ,NULL							AS OksB_UBT_AMOUNT
21207   ,NULL							AS OksB_CREDIT_AMOUNT
21208   ,NULL							AS OksB_SUPPRESSED_CREDIT
21209   ,NULL							AS OksB_OVERRIDE_AMOUNT
21210   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
21211   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21212   ,NULL					        AS OksB_CUST_PO_NUMBER
21213 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
21214   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
21215   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
21216   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
21217  -- Bug# 5531198 hkamdar 21-Sep-2006
21218  /*
21219   ,decode(P_Target_Contract_New_YN
21220          ,'Y'
21221          ,decode(l_SrcContractPPSetupExists_YN
21222                 ,'Y'
21223                 ,oksB.PRICE_UOM
21224                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
21225          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
21226 			  --is subsequently updated based on whether Partial Period Setup on
21227 			  --Target Contract existed or not
21228          ) 						AS OksB_PRICE_UOM */
21229   ,decode(P_Target_Contract_New_YN
21230          ,'Y'
21231 	 ,decode(l_SrcContractPPSetupExists_YN
21232           ,'Y'
21233           ,oksB.PRICE_UOM
21234           ,decode(l_TrgtHeaderPriceUomExists_YN
21235 	          ,'Y'
21236 		  ,l_Target_Hdr_Price_UOM
21237 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
21238 		  --The value of Price_UOM when copying to an existing Target Contract
21239 		  --is subsequently updated based on whether Partial Period Setup on
21240 		  --Target Contract existed or not
21241   -- End Bug# 5531198 hkamdar 21-Sep-2006
21242   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
21243   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
21244   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
21245   ,oksB.TAX_CODE					AS OksB_TAX_CODE
21246   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
21247   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
21248   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
21249   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
21250   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
21251   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
21252   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
21253   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
21254   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
21255   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
21256   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
21257   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
21258   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
21259   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
21260   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
21261   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
21262   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
21263   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
21264   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
21265   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
21266   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
21267   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
21268   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
21269   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
21270   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
21271   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
21272   ,oksB.BASE_READING					AS OksB_BASE_READING
21273   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
21274   ,NULL							AS OksB_FULL_CREDIT
21275   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
21276   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
21277   ,oksB.PRORATE						AS OksB_PRORATE
21278   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
21279   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
21280   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
21281   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
21282   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
21283   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
21284   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
21285   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
21286   ,oksB.PDF_ID						AS OksB_PDF_ID
21287   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
21288   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
21289   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
21290   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
21291   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
21292   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
21293   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
21294   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
21295   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
21296   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
21297   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
21298   ,1							AS OksB_OBJECT_VERSION_NUMBER
21299   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
21300   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
21301   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
21302   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
21303   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
21304   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
21305   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
21306   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
21307   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
21308   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
21309   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
21310   --------------------------------End of OKS_K_LINES_B columns-------------------------
21311   --------------------------------Start of OKC_K_ITEMS columns-------------------------
21312   ,okcI.ID                                     		AS OkcI_OldOkcItemID
21313   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
21314   ,okcI.CLE_ID						AS OkcI_CLE_ID
21315   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
21316   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
21317   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
21318   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
21319   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
21320   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
21321   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
21322   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
21323   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
21324   ,1							AS OkcI_OBJECT_VERSION_NUMBER
21325   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
21326   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
21327   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
21328   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
21329   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
21330   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
21331   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
21332   FROM
21333    OKC_K_LINES_B_TEMP okcBT
21334   ,OKS_K_LINES_B oksB
21335   ,OKC_K_ITEMS okcI
21336   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
21337   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
21338   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
21339   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
21340   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID
21341   AND okcBT.date_cancelled IS NULL
21342   AND okcBT.date_terminated IS NULL;
21343 
21344  j BINARY_INTEGER := 0;
21345 
21346 Begin
21347   x_return_status := l_return_status;
21348   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
21349       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
21350          FND_LOG.string(FND_LOG.level_procedure
21351                         ,l_module_name||'.Begin'
21352                         ,' P_From_Chr_ID='||P_From_Chr_ID
21353                          ||',P_To_Chr_ID='||P_To_Chr_ID
21354 			 ||',P_Lines_Tbl.COUNT ='||P_Lines_Tbl.COUNT
21355                          );
21356       END IF;
21357   END IF;
21358   --Setting Variable to indicate existence of Partial Period Setup in GCD , only checked if copying to a new contract in Component Copy--
21359    IF (P_Target_Contract_New_YN = 'Y') THEN
21360     IF (OKS_SETUP_UTIL_PUB.G_GCD_PERIOD_START IS NOT NULL and OKS_SETUP_UTIL_PUB.G_GCD_PERIOD_TYPE IS NOT NULL) then
21361        l_GCDPPSetupExists_YN := 'Y';
21362     ELSE
21363        l_GCDPPSetupExists_YN := 'N';
21364     END IF;
21365    END IF;
21366 
21367  If P_Lines_Tbl.COUNT > 0 then
21368    --Get Contract Number of Target Contract--
21369   Begin
21370     OPEN get_new_contract_num_and_Dates(P_To_Chr_ID);
21371     FETCH get_new_contract_num_and_Dates
21372     into
21373      l_new_contract_number
21374     ,l_Hdr_Start_Date
21375     ,l_Hdr_End_Date
21376     ,l_Target_Hdr_Price_UOM;
21377     CLOSE get_new_contract_num_and_Dates;
21378     If l_new_contract_number IS NULL then
21379       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
21380          l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
21381          RAISE G_EXCEPTION_HALT_VALIDATION;
21382     End If;
21383 
21384     -- Bug# 5531198 hkamdar 21-Sep-2006
21385     IF l_Target_Hdr_Price_UOM IS NOT NULL THEN
21386        l_TrgtHeaderPriceUomExists_YN := 'Y';
21387     ELSE
21388        l_TrgtHeaderPriceUomExists_YN := 'N';
21389     END IF;
21390     -- End Bug# 5531198 hkamdar 21-Sep-2006
21391   End;
21392 
21393 
21394  -------------------------------------------
21395   --Get default status for lines------------
21396   Begin
21397     OPEN get_default_status;
21398     FETCH get_default_status into l_Default_Sts_Code;
21399     CLOSE get_default_status;
21400     If l_Default_Sts_Code IS NULL then
21401        OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
21402        l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
21403           RAISE G_EXCEPTION_HALT_VALIDATION;
21404     End If;
21405   End;
21406   ------------------------------------------
21407  -----Convert PLSQL table of records P_Lines_Tbl into PLSQL Record of tables------
21408   If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
21409               FND_LOG.string(FND_LOG.level_statement
21410 		                 ,l_module_name
21411 				       ,'Count of rows in P_Lines_Tbl='||P_Lines_Tbl.COUNT);
21412   End If;
21413 
21414   FOR i in P_Lines_Tbl.FIRST .. P_Lines_Tbl.LAST LOOP
21415    Begin
21416     ApiLinesRecTab.IDTab(j) := P_Lines_Tbl(i).id;
21417     ApiLinesRecTab.ToKTab(j) := P_Lines_Tbl(i).to_k;
21418     ApiLinesRecTab.ToLineTab(j) := P_Lines_Tbl(i).to_line;
21419     ApiLinesRecTab.LineExistsYNTab(j) := P_Lines_Tbl(i).line_exists_yn;
21420     ApiLinesRecTab.LineExpYNTab(j) := P_Lines_Tbl(i).line_exp_yn;
21421 
21422     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
21423      FND_LOG.string(FND_LOG.level_statement
21424                  ,l_module_name
21425                  ,'ID='||P_Lines_Tbl(i).id
21426               ||', TO_K='||P_Lines_Tbl(i).to_k
21427               ||', TO_LINE='||P_Lines_Tbl(i).to_line
21428               ||', LINE_EXISTS_YN='||P_Lines_Tbl(i).line_exists_yn
21429 	      ||', LINE_EXP_YN='||P_Lines_Tbl(i).line_exp_yn
21430 	      ||', LSE_ID='||P_Lines_Tbl(i).lse_id
21431                   );
21432     End If;
21433     j := j+1;
21434 
21435       EXCEPTION
21436          WHEN OTHERS THEN
21437               NULL;
21438 	      If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
21439 		  FND_LOG.string(FND_LOG.level_unexpected
21440 		                ,l_module_name
21441 					 ,SQLERRM);
21442 	      End If;
21443    End;
21444   End LOOP;
21445 
21446  End If; -- End of check for P_Lines_Tbl.COUNT to be > 0
21447  --------------------------------------------------------------------------------------
21448 
21449 ------------------------Start of BULK INSERT INTO OKC_K_LINES_B_TEMP-----------------
21450  IF (P_Lines_Tbl.COUNT > 0) then ---++++++++++++Start of Check of P_Lines_Tbl.COUNT for
21451 			 	 ---++++++++++++Bulk insert into OKC_K_LINES_B_TEMP
21452 
21453  ------Loop through PLSQL Record of tables of the lines to do bulk inserts into--------
21454  ------OKC_K_LINES_B_TEMP global temporary table----------------------------------------
21455  -- a) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NULL and LINE_EXP_YN = 'Y'
21456  --    (Indicates that line being copied is a top line and that this line and all its sublines
21457  --	need to be queried explicitly from the database and copied)
21458  --
21459 
21460  Begin
21461 
21462  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
21463  INSERT INTO OKC_K_LINES_B_TEMP(
21464   ID
21465  ,LINE_NUMBER
21466  ,CHR_ID
21467  ,CLE_ID
21468  ,CLE_ID_RENEWED
21469  ,DNZ_CHR_ID
21470  ,DISPLAY_SEQUENCE
21471  ,STS_CODE
21472  ,TRN_CODE
21473  ,LSE_ID
21474  ,EXCEPTION_YN
21475  ,OBJECT_VERSION_NUMBER
21476  ,CREATED_BY
21477  ,CREATION_DATE
21478  ,LAST_UPDATED_BY
21479  ,LAST_UPDATE_DATE
21480  ,HIDDEN_IND
21481  ,PRICE_NEGOTIATED
21482  ,PRICE_LEVEL_IND
21483  ,PRICE_UNIT
21484  ,PRICE_UNIT_PERCENT
21485  ,INVOICE_LINE_LEVEL_IND
21486  ,DPAS_RATING
21487  ,TEMPLATE_USED
21488  ,PRICE_TYPE
21489  ,CURRENCY_CODE
21490  ,LAST_UPDATE_LOGIN
21491  ,DATE_TERMINATED
21492  ,START_DATE
21493  ,END_DATE
21494  ,ATTRIBUTE_CATEGORY
21495  ,ATTRIBUTE1
21496  ,ATTRIBUTE2
21497  ,ATTRIBUTE3
21498  ,ATTRIBUTE4
21499  ,ATTRIBUTE5
21500  ,ATTRIBUTE6
21501  ,ATTRIBUTE7
21502  ,ATTRIBUTE8
21503  ,ATTRIBUTE9
21504  ,ATTRIBUTE10
21505  ,ATTRIBUTE11
21506  ,ATTRIBUTE12
21507  ,ATTRIBUTE13
21508  ,ATTRIBUTE14
21509  ,ATTRIBUTE15
21510  ,SECURITY_GROUP_ID
21511  ,CLE_ID_RENEWED_TO
21512  ,PRICE_NEGOTIATED_RENEWED
21513  ,CURRENCY_CODE_RENEWED
21514  ,UPG_ORIG_SYSTEM_REF
21515  ,UPG_ORIG_SYSTEM_REF_ID
21516  ,DATE_RENEWED
21517  ,ORIG_SYSTEM_SOURCE_CODE
21518  ,ORIG_SYSTEM_ID1
21519  ,ORIG_SYSTEM_REFERENCE1
21520  ,PROGRAM_APPLICATION_ID
21521  ,PROGRAM_ID
21522  ,PROGRAM_UPDATE_DATE
21523  ,REQUEST_ID
21524  ,PRICE_LIST_ID
21525  ,PRICE_LIST_LINE_ID
21526  ,LINE_LIST_PRICE
21527  ,ITEM_TO_PRICE_YN
21528  ,PRICING_DATE
21529  ,PRICE_BASIS_YN
21530  ,CONFIG_HEADER_ID
21531  ,CONFIG_REVISION_NUMBER
21532  ,CONFIG_COMPLETE_YN
21533  ,CONFIG_VALID_YN
21534  ,CONFIG_TOP_MODEL_LINE_ID
21535  ,CONFIG_ITEM_TYPE
21536  ,CONFIG_ITEM_ID
21537  ,SERVICE_ITEM_YN
21538  ,PH_PRICING_TYPE
21539  ,PH_PRICE_BREAK_BASIS
21540  ,PH_MIN_QTY
21541  ,PH_MIN_AMT
21542  ,PH_QP_REFERENCE_ID
21543  ,PH_VALUE
21544  ,PH_ENFORCE_PRICE_LIST_YN
21545  ,PH_ADJUSTMENT
21546  ,PH_INTEGRATED_WITH_QP
21547  ,CUST_ACCT_ID
21548  ,BILL_TO_SITE_USE_ID
21549  ,INV_RULE_ID
21550  ,LINE_RENEWAL_TYPE_CODE
21551  ,SHIP_TO_SITE_USE_ID
21552  ,PAYMENT_TERM_ID
21553  ,DATE_CANCELLED
21554  ,TERM_CANCEL_SOURCE
21555  ,ANNUALIZED_FACTOR
21556  ,PAYMENT_INSTRUCTION_TYPE -- hkamdar 29-Mar-2006 Bug # 4722452
21557  ,CANCELLED_AMOUNT
21558  ,LINE_EXISTS_YN
21559  ,DATES_CHANGED_YN
21560  ,GEN_SUBLINE_BSCH_YN
21561  )
21562  SELECT
21563   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
21564  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
21565  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
21566  ,okcB.CLE_ID AS okcB_CLE_ID
21567  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
21568  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
21569  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
21570  ,okcB.STS_CODE AS okcB_STS_CODE
21571  ,okcB.TRN_CODE AS okcB_TRN_CODE
21572  ,okcB.LSE_ID AS okcB_LSE_ID
21573  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
21574  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
21575  ,okcB.CREATED_BY AS okcB_CREATED_BY
21576  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
21577  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
21578  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
21579  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
21580  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
21581  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
21582  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
21583  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
21584  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
21585  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
21586  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
21587  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
21588  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
21589  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
21590  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
21591  ,(CASE
21592     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21593           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21594     THEN nvl(okcB.START_DATE,sysdate)
21595     ELSE l_Hdr_Start_Date
21596     END
21597    ) AS okcB_START_DATE
21598  ,(CASE
21599     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21600           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21601     THEN nvl(okcB.END_DATE,sysdate)
21602     ELSE l_Hdr_End_Date
21603     END
21604    ) AS okcB_END_DATE
21605  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
21606  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
21607  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
21608  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
21609  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
21610  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
21611  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
21612  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
21613  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
21614  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
21615  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
21616  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
21617  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
21618  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
21619  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
21620  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
21621  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
21622  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
21623  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
21624  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
21625  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
21626  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
21627  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
21628  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE --*
21629  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
21630  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1 --*
21631  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
21632  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
21633  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
21634  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
21635  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
21636  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
21637  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
21638  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
21639  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
21640  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
21641  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
21642  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
21643  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
21644  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
21645  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
21646  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
21647  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
21648  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
21649  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
21650  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
21651  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
21652  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
21653  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
21654  ,okcB.PH_VALUE AS okcB_PH_VALUE
21655  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
21656  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
21657  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
21658  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
21659  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
21660  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
21661  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
21662  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
21663  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
21664  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
21665  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
21666  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
21667 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21668  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
21669  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
21670  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
21671  ,(CASE
21672     WHEN (
21673           nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21674           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
21675          )
21676     THEN 'N'
21677     ELSE 'Y'
21678     END
21679    ) AS okcB_DATES_CHANGED_YN
21680  ,'N' AS okcB_GEN_SUBLINE_BSCH_YN
21681  FROM
21682  OKC_K_LINES_B okcB
21683  WHERE ApiLinesRecTab.ToLineTab(i) IS NULL
21684  AND ApiLinesRecTab.LineExpYNTab(i) = 'Y'
21685  AND okcB.DNZ_CHR_ID = P_From_Chr_ID
21686  CONNECT BY PRIOR okcB.ID = okcB.CLE_ID
21687  START WITH okcB.ID = ApiLinesRecTab.IDTab(i);
21688 
21689    EXCEPTION
21690     WHEN OTHERS THEN
21691               If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
21692                   FND_LOG.string(FND_LOG.level_unexpected
21693                                 ,l_module_name
21694                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  a) :'||SQLERRM);
21695               End If;
21696 
21697      OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
21698      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
21699      RAISE G_EXCEPTION_HALT_VALIDATION;
21700 
21701  End;
21702 
21703  -- b) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NULL and LINE_EXP_YN = 'N'
21704  --    (Indicates that line being copied is a top line and that this line and only all its "Coverage"
21705  --    sublines  need to be queried explicitly from the database and copied. "Coverage" sublines
21706  --    are never shown on the UI so they always have to be queried from the DB and copied)
21707  --
21708 
21709  Begin
21710  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
21711  INSERT INTO OKC_K_LINES_B_TEMP(
21712   ID
21713  ,LINE_NUMBER
21714  ,CHR_ID
21715  ,CLE_ID
21716  ,CLE_ID_RENEWED
21717  ,DNZ_CHR_ID
21718  ,DISPLAY_SEQUENCE
21719  ,STS_CODE
21720  ,TRN_CODE
21721  ,LSE_ID
21722  ,EXCEPTION_YN
21723  ,OBJECT_VERSION_NUMBER
21724  ,CREATED_BY
21725  ,CREATION_DATE
21726  ,LAST_UPDATED_BY
21727  ,LAST_UPDATE_DATE
21728  ,HIDDEN_IND
21729  ,PRICE_NEGOTIATED
21730  ,PRICE_LEVEL_IND
21731  ,PRICE_UNIT
21732  ,PRICE_UNIT_PERCENT
21733  ,INVOICE_LINE_LEVEL_IND
21734  ,DPAS_RATING
21735  ,TEMPLATE_USED
21736  ,PRICE_TYPE
21737  ,CURRENCY_CODE
21738  ,LAST_UPDATE_LOGIN
21739  ,DATE_TERMINATED
21740  ,START_DATE
21741  ,END_DATE
21742  ,ATTRIBUTE_CATEGORY
21743  ,ATTRIBUTE1
21744  ,ATTRIBUTE2
21745  ,ATTRIBUTE3
21746  ,ATTRIBUTE4
21747  ,ATTRIBUTE5
21748  ,ATTRIBUTE6
21749  ,ATTRIBUTE7
21750  ,ATTRIBUTE8
21751  ,ATTRIBUTE9
21752  ,ATTRIBUTE10
21753  ,ATTRIBUTE11
21754  ,ATTRIBUTE12
21755  ,ATTRIBUTE13
21756  ,ATTRIBUTE14
21757  ,ATTRIBUTE15
21758  ,SECURITY_GROUP_ID
21759  ,CLE_ID_RENEWED_TO
21760  ,PRICE_NEGOTIATED_RENEWED
21761  ,CURRENCY_CODE_RENEWED
21762  ,UPG_ORIG_SYSTEM_REF
21763  ,UPG_ORIG_SYSTEM_REF_ID
21764  ,DATE_RENEWED
21765  ,ORIG_SYSTEM_SOURCE_CODE
21766  ,ORIG_SYSTEM_ID1
21767  ,ORIG_SYSTEM_REFERENCE1
21768  ,PROGRAM_APPLICATION_ID
21769  ,PROGRAM_ID
21770  ,PROGRAM_UPDATE_DATE
21771  ,REQUEST_ID
21772  ,PRICE_LIST_ID
21773  ,PRICE_LIST_LINE_ID
21774  ,LINE_LIST_PRICE
21775  ,ITEM_TO_PRICE_YN
21776  ,PRICING_DATE
21777  ,PRICE_BASIS_YN
21778  ,CONFIG_HEADER_ID
21779  ,CONFIG_REVISION_NUMBER
21780  ,CONFIG_COMPLETE_YN
21781  ,CONFIG_VALID_YN
21782  ,CONFIG_TOP_MODEL_LINE_ID
21783  ,CONFIG_ITEM_TYPE
21784  ,CONFIG_ITEM_ID
21785  ,SERVICE_ITEM_YN
21786  ,PH_PRICING_TYPE
21787  ,PH_PRICE_BREAK_BASIS
21788  ,PH_MIN_QTY
21789  ,PH_MIN_AMT
21790  ,PH_QP_REFERENCE_ID
21791  ,PH_VALUE
21792  ,PH_ENFORCE_PRICE_LIST_YN
21793  ,PH_ADJUSTMENT
21794  ,PH_INTEGRATED_WITH_QP
21795  ,CUST_ACCT_ID
21796  ,BILL_TO_SITE_USE_ID
21797  ,INV_RULE_ID
21798  ,LINE_RENEWAL_TYPE_CODE
21799  ,SHIP_TO_SITE_USE_ID
21800  ,PAYMENT_TERM_ID
21801  ,DATE_CANCELLED
21802  ,TERM_CANCEL_SOURCE
21803  ,ANNUALIZED_FACTOR
21804  ,PAYMENT_INSTRUCTION_TYPE
21805  ,CANCELLED_AMOUNT
21806  ,LINE_EXISTS_YN
21807  ,DATES_CHANGED_YN
21808  ,GEN_SUBLINE_BSCH_YN
21809  )
21810  SELECT
21811   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
21812  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
21813  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
21814  ,okcB.CLE_ID AS okcB_CLE_ID
21815  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
21816  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
21817  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
21818  ,okcB.STS_CODE AS okcB_STS_CODE
21819  ,okcB.TRN_CODE AS okcB_TRN_CODE
21820  ,okcB.LSE_ID AS okcB_LSE_ID
21821  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
21822  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
21823  ,okcB.CREATED_BY AS okcB_CREATED_BY
21824  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
21825  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
21826  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
21827  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
21828  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
21829  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
21830  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
21831  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
21832  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
21833  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
21834  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
21835  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
21836  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
21837  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
21838  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
21839  ,(CASE
21840     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21841           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21842     THEN nvl(okcB.START_DATE,sysdate)
21843     ELSE l_Hdr_Start_Date
21844     END
21845    ) AS okcB_START_DATE
21846 ,(CASE
21847     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21848           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21849     THEN nvl(okcB.END_DATE,sysdate)
21850     ELSE l_Hdr_End_Date
21851     END
21852    ) AS okcB_END_DATE
21853  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
21854  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
21855  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
21856  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
21857  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
21858  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
21859  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
21860  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
21861  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
21862  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
21863  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
21864  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
21865  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
21866  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
21867  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
21868  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
21869  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
21870  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
21871  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
21872  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
21873  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
21874  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
21875  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
21876  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE
21877  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
21878  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1
21879  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
21880  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
21881  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
21882  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
21883  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
21884  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
21885  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
21886  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
21887  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
21888  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
21889  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
21890  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
21891  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
21892  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
21893  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
21894  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
21895  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
21896  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
21897  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
21898  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
21899  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
21900  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
21901  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
21902  ,okcB.PH_VALUE AS okcB_PH_VALUE
21903  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
21904  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
21905  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
21906  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
21907  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
21908  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
21909  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
21910  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
21911  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
21912  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
21913  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
21914  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
21915 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21916  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
21917  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
21918  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
21919  ,(CASE
21920     WHEN (
21921           nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21922           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
21923          )
21924     THEN 'N'
21925     ELSE 'Y'
21926     END
21927    ) AS okcB_DATES_CHANGED_YN
21928  ,'N' AS okcB_GEN_SUBLINE_BSCH_YN
21929  FROM
21930  OKC_K_LINES_B okcB
21931  WHERE okcB.ID = ApiLinesRecTab.IDTab(i)
21932  AND ApiLinesRecTab.ToLineTab(i) IS NULL
21933  AND ApiLinesRecTab.LineExpYNTab(i) = 'N'
21934  AND okcB.DNZ_CHR_ID = P_From_Chr_ID
21935  UNION
21936  SELECT
21937   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcCL_NewID --*
21938  ,okcCL.LINE_NUMBER AS okcCL_LINE_NUMBER
21939  ,decode(okcCL.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcCL_NewChrID --*
21940  ,okcCL.CLE_ID AS okcCL_CLE_ID
21941  ,okcCL.CLE_ID_RENEWED AS okcCL_CLE_ID_RENEWED
21942  ,P_To_Chr_ID AS okcCL_NewDnzChrID --*
21943  ,okcCL.DISPLAY_SEQUENCE AS okcCL_DISPLAY_SEQUENCE
21944  ,okcCL.STS_CODE AS okcCL_STS_CODE
21945  ,okcCL.TRN_CODE AS okcCL_TRN_CODE
21946  ,okcCL.LSE_ID AS okcCL_LSE_ID
21947  ,okcCL.EXCEPTION_YN AS okcCL_EXCEPTION_YN
21948  ,okcCL.OBJECT_VERSION_NUMBER AS okcCL_OBJECT_VERSION_NUMBER
21949  ,okcCL.CREATED_BY AS okcCL_CREATED_BY
21950  ,okcCL.CREATION_DATE AS okcCL_CREATION_DATE
21951  ,okcCL.LAST_UPDATED_BY AS okcCL_LAST_UPDATED_BY
21952  ,okcCL.LAST_UPDATE_DATE AS okcCL_LAST_UPDATE_DATE
21953  ,okcCL.HIDDEN_IND AS okcCL_HIDDEN_IND
21954  ,okcCL.PRICE_NEGOTIATED AS okcCL_PRICE_NEGOTIATED
21955  ,okcCL.PRICE_LEVEL_IND AS okcCL_PRICE_LEVEL_IND
21956  ,okcCL.PRICE_UNIT AS okcCL_PRICE_UNIT
21957  ,okcCL.PRICE_UNIT_PERCENT AS okcCL_PRICE_UNIT_PERCENT
21958  ,okcCL.INVOICE_LINE_LEVEL_IND AS okcCL_INVOICE_LINE_LEVEL_IND
21959  ,okcCL.DPAS_RATING AS okcCL_DPAS_RATING
21960  ,okcCL.TEMPLATE_USED AS okcCL_TEMPLATE_USED
21961  ,okcCL.PRICE_TYPE AS okcCL_PRICE_TYPE
21962  ,okcCL.CURRENCY_CODE AS okcCL_CURRENCY_CODE
21963  ,okcCL.LAST_UPDATE_LOGIN AS okcCL_LAST_UPDATE_LOGIN
21964  ,okcCL.DATE_TERMINATED AS okcCL_DATE_TERMINATED
21965  ,(CASE
21966     WHEN (nvl(okcCL.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21967           nvl(okcCL.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21968     THEN nvl(okcCL.START_DATE,sysdate)
21969     ELSE l_Hdr_Start_Date
21970     END
21971    ) AS okcCL_START_DATE
21972 ,(CASE
21973     WHEN (nvl(okcCL.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21974           nvl(okcCL.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21975     THEN nvl(okcCL.END_DATE,sysdate)
21976     ELSE l_Hdr_End_Date
21977     END
21978    ) AS okcCL_END_DATE
21979  ,okcCL.ATTRIBUTE_CATEGORY AS okcCL_ATTRIBUTE_CATEGORY
21980  ,okcCL.ATTRIBUTE1 AS okcCL_ATTRIBUTE1
21981  ,okcCL.ATTRIBUTE2 AS okcCL_ATTRIBUTE2
21982  ,okcCL.ATTRIBUTE3 AS okcCL_ATTRIBUTE3
21983  ,okcCL.ATTRIBUTE4 AS okcCL_ATTRIBUTE4
21984  ,okcCL.ATTRIBUTE5 AS okcCL_ATTRIBUTE5
21985  ,okcCL.ATTRIBUTE6 AS okcCL_ATTRIBUTE6
21986  ,okcCL.ATTRIBUTE7 AS okcCL_ATTRIBUTE7
21987  ,okcCL.ATTRIBUTE8 AS okcCL_ATTRIBUTE8
21988  ,okcCL.ATTRIBUTE9 AS okcCL_ATTRIBUTE9
21989  ,okcCL.ATTRIBUTE10 AS okcCL_ATTRIBUTE10
21990  ,okcCL.ATTRIBUTE11 AS okcCL_ATTRIBUTE11
21991  ,okcCL.ATTRIBUTE12 AS okcCL_ATTRIBUTE12
21992  ,okcCL.ATTRIBUTE13 AS okcCL_ATTRIBUTE13
21993  ,okcCL.ATTRIBUTE14 AS okcCL_ATTRIBUTE14
21994  ,okcCL.ATTRIBUTE15 AS okcCL_ATTRIBUTE15
21995  ,okcCL.SECURITY_GROUP_ID AS okcCL_SECURITY_GROUP_ID
21996  ,okcCL.CLE_ID_RENEWED_TO AS okcCL_CLE_ID_RENEWED_TO
21997  ,okcCL.PRICE_NEGOTIATED_RENEWED AS okcCL_PRICE_NEGOTIATED_RENEWED
21998  ,okcCL.CURRENCY_CODE_RENEWED AS okcCL_CURRENCY_CODE_RENEWED
21999  ,okcCL.UPG_ORIG_SYSTEM_REF AS okcCL_UPG_ORIG_SYSTEM_REF
22000  ,okcCL.UPG_ORIG_SYSTEM_REF_ID AS okcCL_UPG_ORIG_SYSTEM_REF_ID
22001  ,okcCL.DATE_RENEWED AS okcCL_DATE_RENEWED
22002  ,okcCL.ORIG_SYSTEM_SOURCE_CODE AS okcCL_ORIG_SYSTEM_SOURCE_CODE
22003  ,okcCL.ID AS okcCL_ORIG_SYSTEM_ID1 --*
22004  ,okcCL.ORIG_SYSTEM_REFERENCE1 AS okcCL_ORIG_SYSTEM_REFERENCE1
22005  ,okcCL.PROGRAM_APPLICATION_ID AS okcCL_PROGRAM_APPLICATION_ID
22006  ,okcCL.PROGRAM_ID AS okcCL_PROGRAM_ID
22007  ,okcCL.PROGRAM_UPDATE_DATE AS okcCL_PROGRAM_UPDATE_DATE
22008  ,okcCL.REQUEST_ID AS okcCL_REQUEST_ID
22009  ,okcCL.PRICE_LIST_ID AS okcCL_PRICE_LIST_ID
22010  ,okcCL.PRICE_LIST_LINE_ID AS okcCL_PRICE_LIST_LINE_ID
22011  ,okcCL.LINE_LIST_PRICE AS okcCL_LINE_LIST_PRICE
22012  ,okcCL.ITEM_TO_PRICE_YN AS okcCL_ITEM_TO_PRICE_YN
22013  ,okcCL.PRICING_DATE AS okcCL_PRICING_DATE
22014  ,okcCL.PRICE_BASIS_YN AS okcCL_PRICE_BASIS_YN
22015  ,okcCL.CONFIG_HEADER_ID AS okcCL_CONFIG_HEADER_ID
22016  ,okcCL.CONFIG_REVISION_NUMBER AS okcCL_CONFIG_REVISION_NUMBER
22017  ,okcCL.CONFIG_COMPLETE_YN AS okcCL_CONFIG_COMPLETE_YN
22018  ,okcCL.CONFIG_VALID_YN AS okcCL_CONFIG_VALID_YN
22019  ,okcCL.CONFIG_TOP_MODEL_LINE_ID AS okcCL_CONFIG_TOP_MODEL_LINE_ID
22020  ,okcCL.CONFIG_ITEM_TYPE AS okcCL_CONFIG_ITEM_TYPE
22021  ,okcCL.CONFIG_ITEM_ID AS okcCL_CONFIG_ITEM_ID
22022  ,okcCL.SERVICE_ITEM_YN AS okcCL_SERVICE_ITEM_YN
22023  ,okcCL.PH_PRICING_TYPE AS okcCL_PH_PRICING_TYPE
22024  ,okcCL.PH_PRICE_BREAK_BASIS AS okcCL_PH_PRICE_BREAK_BASIS
22025  ,okcCL.PH_MIN_QTY AS okcCL_PH_MIN_QTY
22026  ,okcCL.PH_MIN_AMT AS okcCL_PH_MIN_AMT
22027  ,okcCL.PH_QP_REFERENCE_ID AS okcCL_PH_QP_REFERENCE_ID
22028  ,okcCL.PH_VALUE AS okcCL_PH_VALUE
22029  ,okcCL.PH_ENFORCE_PRICE_LIST_YN AS okcCL_PH_ENFORCE_PRICE_LIST_YN
22030  ,okcCL.PH_ADJUSTMENT AS okcCL_PH_ADJUSTMENT
22031  ,okcCL.PH_INTEGRATED_WITH_QP AS okcCL_PH_INTEGRATED_WITH_QP
22032  ,okcCL.CUST_ACCT_ID AS okcCL_CUST_ACCT_ID
22033  ,okcCL.BILL_TO_SITE_USE_ID AS okcCL_BILL_TO_SITE_USE_ID
22034  ,okcCL.INV_RULE_ID AS okcCL_INV_RULE_ID
22035  ,okcCL.LINE_RENEWAL_TYPE_CODE AS okcCL_LINE_RENEWAL_TYPE_CODE
22036  ,okcCL.SHIP_TO_SITE_USE_ID AS okcCL_SHIP_TO_SITE_USE_ID
22037  ,okcCL.PAYMENT_TERM_ID AS okcCL_PAYMENT_TERM_ID
22038  ,okcCL.DATE_CANCELLED AS okcCL_DATE_CANCELLED
22039  ,okcCL.TERM_CANCEL_SOURCE AS okcCL_TERM_CANCEL_SOURCE
22040  ,okcCL.ANNUALIZED_FACTOR AS okcCL_ANNUALIZED_FACTOR
22041 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22042  ,NULL AS okcCL_PAYMENT_INSTRUCTION_TYPE
22043  ,okcCL.CANCELLED_AMOUNT AS okcCL_CANCELLED_AMOUNT
22044  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22045  ,(CASE
22046     WHEN (
22047           nvl(okcCL.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22048           nvl(okcCL.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
22049          )
22050     THEN 'N'
22051     ELSE 'Y'
22052     END
22053    ) AS okcCL_DATES_CHANGED_YN
22054  ,'N' AS okcCL_GEN_SUBLINE_BSCH_YN
22055  FROM
22056  OKC_K_LINES_B okcCL
22057  WHERE
22058  okcCL.DNZ_CHR_ID = P_From_Chr_ID
22059  AND ApiLinesRecTab.ToLineTab(i) IS NULL
22060  AND ApiLinesRecTab.LineExpYNTab(i) = 'N'
22061  CONNECT BY PRIOR okcCL.ID = okcCL.CLE_ID
22062  START WITH okcCL.ID = (select a.COVERAGE_ID
22063                              FROM
22064                              OKS_K_LINES_B a
22065                              where a.CLE_ID = ApiLinesRecTab.IDTab(i)
22066                             );
22067 
22068    EXCEPTION
22069     WHEN OTHERS THEN
22070               If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
22071                   FND_LOG.string(FND_LOG.level_unexpected
22072                                 ,l_module_name
22073                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  b) :'||SQLERRM);
22074               End If;
22075 
22076 
22077      OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22078      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22079      RAISE G_EXCEPTION_HALT_VALIDATION;
22080 
22081  End;
22082 
22083 
22084 
22085  -- c) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NOT NULL and LINE_EXISTS_YN = 'N'
22086  --    (Indicates that line being copied is a subline and that its top line as indicated by TO_LINE
22087  --    is being copied as a separate line in ApiLinesRecTab.
22088  --
22089 
22090  Begin
22091 
22092  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
22093  INSERT INTO OKC_K_LINES_B_TEMP(
22094   ID
22095  ,LINE_NUMBER
22096  ,CHR_ID
22097  ,CLE_ID
22098  ,CLE_ID_RENEWED
22099  ,DNZ_CHR_ID
22100  ,DISPLAY_SEQUENCE
22101  ,STS_CODE
22102  ,TRN_CODE
22103  ,LSE_ID
22104  ,EXCEPTION_YN
22105  ,OBJECT_VERSION_NUMBER
22106  ,CREATED_BY
22107  ,CREATION_DATE
22108  ,LAST_UPDATED_BY
22109  ,LAST_UPDATE_DATE
22110  ,HIDDEN_IND
22111  ,PRICE_NEGOTIATED
22112  ,PRICE_LEVEL_IND
22113  ,PRICE_UNIT
22114  ,PRICE_UNIT_PERCENT
22115  ,INVOICE_LINE_LEVEL_IND
22116  ,DPAS_RATING
22117  ,TEMPLATE_USED
22118  ,PRICE_TYPE
22119  ,CURRENCY_CODE
22120  ,LAST_UPDATE_LOGIN
22121  ,DATE_TERMINATED
22122  ,START_DATE
22123  ,END_DATE
22124  ,ATTRIBUTE_CATEGORY
22125  ,ATTRIBUTE1
22126  ,ATTRIBUTE2
22127  ,ATTRIBUTE3
22128  ,ATTRIBUTE4
22129  ,ATTRIBUTE5
22130  ,ATTRIBUTE6
22131  ,ATTRIBUTE7
22132  ,ATTRIBUTE8
22133  ,ATTRIBUTE9
22134  ,ATTRIBUTE10
22135  ,ATTRIBUTE11
22136  ,ATTRIBUTE12
22137  ,ATTRIBUTE13
22138  ,ATTRIBUTE14
22139  ,ATTRIBUTE15
22140  ,SECURITY_GROUP_ID
22141  ,CLE_ID_RENEWED_TO
22142  ,PRICE_NEGOTIATED_RENEWED
22143  ,CURRENCY_CODE_RENEWED
22144  ,UPG_ORIG_SYSTEM_REF
22145  ,UPG_ORIG_SYSTEM_REF_ID
22146  ,DATE_RENEWED
22147  ,ORIG_SYSTEM_SOURCE_CODE
22148  ,ORIG_SYSTEM_ID1
22149  ,ORIG_SYSTEM_REFERENCE1
22150  ,PROGRAM_APPLICATION_ID
22151  ,PROGRAM_ID
22152  ,PROGRAM_UPDATE_DATE
22153  ,REQUEST_ID
22154  ,PRICE_LIST_ID
22155  ,PRICE_LIST_LINE_ID
22156  ,LINE_LIST_PRICE
22157  ,ITEM_TO_PRICE_YN
22158  ,PRICING_DATE
22159  ,PRICE_BASIS_YN
22160  ,CONFIG_HEADER_ID
22161  ,CONFIG_REVISION_NUMBER
22162  ,CONFIG_COMPLETE_YN
22163  ,CONFIG_VALID_YN
22164  ,CONFIG_TOP_MODEL_LINE_ID
22165  ,CONFIG_ITEM_TYPE
22166  ,CONFIG_ITEM_ID
22167  ,SERVICE_ITEM_YN
22168  ,PH_PRICING_TYPE
22169  ,PH_PRICE_BREAK_BASIS
22170  ,PH_MIN_QTY
22171  ,PH_MIN_AMT
22172  ,PH_QP_REFERENCE_ID
22173  ,PH_VALUE
22174  ,PH_ENFORCE_PRICE_LIST_YN
22175  ,PH_ADJUSTMENT
22176  ,PH_INTEGRATED_WITH_QP
22177  ,CUST_ACCT_ID
22178  ,BILL_TO_SITE_USE_ID
22179  ,INV_RULE_ID
22180  ,LINE_RENEWAL_TYPE_CODE
22181  ,SHIP_TO_SITE_USE_ID
22182  ,PAYMENT_TERM_ID
22183  ,DATE_CANCELLED
22184  ,TERM_CANCEL_SOURCE
22185  ,ANNUALIZED_FACTOR
22186  ,PAYMENT_INSTRUCTION_TYPE
22187  ,CANCELLED_AMOUNT
22188  ,LINE_EXISTS_YN
22189  ,DATES_CHANGED_YN
22190  ,GEN_SUBLINE_BSCH_YN
22191  )
22192  SELECT
22193   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
22194  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
22195  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
22196  ,ApiLinesRecTab.ToLineTab(i) AS okcB_CLE_ID --*,okcB.CLE_ID AS okcB_CLE_ID
22197  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
22198  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
22199  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
22200  ,okcB.STS_CODE AS okcB_STS_CODE
22201  ,okcB.TRN_CODE AS okcB_TRN_CODE
22202  ,okcB.LSE_ID AS okcB_LSE_ID
22203  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
22204  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
22205  ,okcB.CREATED_BY AS okcB_CREATED_BY
22206  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
22207  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
22208  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
22209  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
22210  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
22211  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
22212  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
22213  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
22214  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
22215  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
22216  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
22217  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
22218  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
22219  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
22220  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
22221  ,(CASE
22222     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22223           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22224     THEN nvl(okcB.START_DATE,sysdate)
22225     ELSE l_Hdr_Start_Date
22226     END
22227    ) AS okcB_START_DATE
22228  ,(CASE
22229     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22230           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22231     THEN nvl(okcB.END_DATE,sysdate)
22232     ELSE l_Hdr_End_Date
22233     END
22234    ) AS okcB_END_DATE
22235  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
22236  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
22237  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
22238  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
22239  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
22240  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
22241  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
22242  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
22243  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
22244  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
22245  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
22246  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
22247  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
22248  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
22249  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
22250  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
22251  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
22252  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
22253  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
22254  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
22255  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
22256  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
22257  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
22258  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE
22259  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
22260  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1
22261  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
22262  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
22263  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
22264  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
22265  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
22266  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
22267  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
22268  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
22269  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
22270  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
22271  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
22272  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
22273  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
22274  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
22275  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
22276  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
22277  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
22278  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
22279  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
22280  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
22281  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
22282  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
22283  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
22284  ,okcB.PH_VALUE AS okcB_PH_VALUE
22285  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
22286  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
22287  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
22288  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
22289  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
22290  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
22291  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
22292  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
22293  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
22294  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
22295  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
22296  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
22297 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22298  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
22299  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
22300  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22301  ,(CASE
22302     WHEN (
22303           nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22304           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
22305          )
22306     THEN 'N'
22307     ELSE 'Y'
22308     END
22309    ) AS okcB_DATES_CHANGED_YN
22310  ,'N' AS okcB_GEN_SUBLINE_BSCH_YN
22311  FROM
22312  OKC_K_LINES_B okcB
22313  WHERE okcB.ID = ApiLinesRecTab.IDTab(i)
22314  AND ApiLinesRecTab.ToLineTab(i) IS NOT NULL
22315  AND ApiLinesRecTab.LineExistsYNTab(i) = 'N'
22316  AND okcB.DNZ_CHR_ID = P_From_Chr_ID;
22317 
22318    EXCEPTION
22319     WHEN OTHERS THEN
22320 
22321         /*   IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
22322               FND_LOG.string(FND_LOG.level_unexpected
22323                                 ,l_module_name
22324                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  c) :'||SQLERRM);
22325            END IF; */
22326 
22327 
22328 
22329           OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22330      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22331      RAISE G_EXCEPTION_HALT_VALIDATION;
22332 
22333  End;
22334 
22335  -- d) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NOT NULL and LINE_EXISTS_YN = 'Y'
22336  --    (Indicates that line being copied is a subline and that its top line as indicated by TO_LINE
22337  --    already exists in the Target Contractis and is not being copied from the Source Contract
22338  --
22339 
22340  Begin
22341 
22342  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
22343  INSERT INTO OKC_K_LINES_B_TEMP(
22344   ID
22345  ,LINE_NUMBER
22346  ,CHR_ID
22347  ,CLE_ID
22348  ,CLE_ID_RENEWED
22349  ,DNZ_CHR_ID
22350  ,DISPLAY_SEQUENCE
22351  ,STS_CODE
22352  ,TRN_CODE
22353  ,LSE_ID
22354  ,EXCEPTION_YN
22355  ,OBJECT_VERSION_NUMBER
22356  ,CREATED_BY
22357  ,CREATION_DATE
22358  ,LAST_UPDATED_BY
22359  ,LAST_UPDATE_DATE
22360  ,HIDDEN_IND
22361  ,PRICE_NEGOTIATED
22362  ,PRICE_LEVEL_IND
22363  ,PRICE_UNIT
22364  ,PRICE_UNIT_PERCENT
22365  ,INVOICE_LINE_LEVEL_IND
22366  ,DPAS_RATING
22367  ,TEMPLATE_USED
22368  ,PRICE_TYPE
22369  ,CURRENCY_CODE
22370  ,LAST_UPDATE_LOGIN
22371  ,DATE_TERMINATED
22372  ,START_DATE
22373  ,END_DATE
22374  ,ATTRIBUTE_CATEGORY
22375  ,ATTRIBUTE1
22376  ,ATTRIBUTE2
22377  ,ATTRIBUTE3
22378  ,ATTRIBUTE4
22379  ,ATTRIBUTE5
22380  ,ATTRIBUTE6
22381  ,ATTRIBUTE7
22382  ,ATTRIBUTE8
22383  ,ATTRIBUTE9
22384  ,ATTRIBUTE10
22385  ,ATTRIBUTE11
22386  ,ATTRIBUTE12
22387  ,ATTRIBUTE13
22388  ,ATTRIBUTE14
22389  ,ATTRIBUTE15
22390  ,SECURITY_GROUP_ID
22391  ,CLE_ID_RENEWED_TO
22392  ,PRICE_NEGOTIATED_RENEWED
22393  ,CURRENCY_CODE_RENEWED
22394  ,UPG_ORIG_SYSTEM_REF
22395  ,UPG_ORIG_SYSTEM_REF_ID
22396  ,DATE_RENEWED
22397  ,ORIG_SYSTEM_SOURCE_CODE
22398  ,ORIG_SYSTEM_ID1
22399  ,ORIG_SYSTEM_REFERENCE1
22400  ,PROGRAM_APPLICATION_ID
22401  ,PROGRAM_ID
22402  ,PROGRAM_UPDATE_DATE
22403  ,REQUEST_ID
22404  ,PRICE_LIST_ID
22405  ,PRICE_LIST_LINE_ID
22406  ,LINE_LIST_PRICE
22407  ,ITEM_TO_PRICE_YN
22408  ,PRICING_DATE
22409  ,PRICE_BASIS_YN
22410  ,CONFIG_HEADER_ID
22411  ,CONFIG_REVISION_NUMBER
22412  ,CONFIG_COMPLETE_YN
22413  ,CONFIG_VALID_YN
22414  ,CONFIG_TOP_MODEL_LINE_ID
22415  ,CONFIG_ITEM_TYPE
22416  ,CONFIG_ITEM_ID
22417  ,SERVICE_ITEM_YN
22418  ,PH_PRICING_TYPE
22419  ,PH_PRICE_BREAK_BASIS
22420  ,PH_MIN_QTY
22421  ,PH_MIN_AMT
22422  ,PH_QP_REFERENCE_ID
22423  ,PH_VALUE
22424  ,PH_ENFORCE_PRICE_LIST_YN
22425  ,PH_ADJUSTMENT
22426  ,PH_INTEGRATED_WITH_QP
22427  ,CUST_ACCT_ID
22428  ,BILL_TO_SITE_USE_ID
22429  ,INV_RULE_ID
22430  ,LINE_RENEWAL_TYPE_CODE
22431  ,SHIP_TO_SITE_USE_ID
22432  ,PAYMENT_TERM_ID
22433  ,DATE_CANCELLED
22434  ,TERM_CANCEL_SOURCE
22435  ,ANNUALIZED_FACTOR
22436  ,PAYMENT_INSTRUCTION_TYPE
22437  ,CANCELLED_AMOUNT
22438  ,LINE_EXISTS_YN
22439  ,DATES_CHANGED_YN
22440  ,GEN_SUBLINE_BSCH_YN
22441  )
22442  SELECT
22443   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
22444  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
22445  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
22446  ,ApiLinesRecTab.ToLineTab(i) AS okcB_CLE_ID --*
22447  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
22448  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
22449  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
22450  ,okcB.STS_CODE AS okcB_STS_CODE
22451  ,okcB.TRN_CODE AS okcB_TRN_CODE
22452  ,okcB.LSE_ID AS okcB_LSE_ID
22453  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
22454  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
22455  ,okcB.CREATED_BY AS okcB_CREATED_BY
22456  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
22457  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
22458  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
22459  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
22460  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
22461  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
22462  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
22463  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
22464  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
22465  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
22466  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
22467  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
22468  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
22469  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
22470  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
22471  ,(CASE
22472     WHEN (
22473           (nvl(okcB.START_DATE,sysdate) BETWEEN
22474               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22475           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22476           )
22477        AND
22478           (nvl(okcB.END_DATE,sysdate) BETWEEN
22479               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22480           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22481           )
22482          )
22483     THEN nvl(okcB.START_DATE,sysdate)
22484     ELSE (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22485     END
22486    ) AS okcB_START_DATE --okcB.START_DATE AS okcB_START_DATE
22487  ,(CASE
22488     WHEN (
22489           (nvl(okcB.START_DATE,sysdate) BETWEEN
22490               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22491           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22492           )
22493        AND
22494           (nvl(okcB.END_DATE,sysdate) BETWEEN
22495               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22496           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22497           )
22498          )
22499     THEN nvl(okcB.END_DATE,sysdate)
22500     ELSE (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22501     END
22502    ) AS okcB_END_DATE --okcB.END_DATE AS okcB_END_DATE
22503  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
22504  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
22505  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
22506  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
22507  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
22508  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
22509  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
22510  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
22511  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
22512  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
22513  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
22514  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
22515  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
22516  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
22517  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
22518  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
22519  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
22520  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
22521  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
22522  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
22523  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
22524  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
22525  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
22526  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE
22527  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
22528  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1
22529  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
22530  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
22531  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
22532  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
22533  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
22534  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
22535  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
22536  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
22537  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
22538  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
22539  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
22540  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
22541  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
22542  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
22543  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
22544  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
22545  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
22546  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
22547  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
22548  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
22549  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
22550  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
22551  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
22552  ,okcB.PH_VALUE AS okcB_PH_VALUE
22553  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
22554  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
22555  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
22556  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
22557  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
22558  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
22559  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
22560  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
22561  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
22562  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
22563  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
22564  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
22565 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22566  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
22567  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
22568  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22569  ,(CASE
22570     WHEN (
22571            (nvl(okcB.START_DATE,sysdate) BETWEEN
22572                (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22573            AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i)))
22574        AND
22575            (nvl(okcB.END_DATE,sysdate) BETWEEN
22576                (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22577            AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i)))
22578          )
22579     THEN 'N'
22580     ELSE 'Y'
22581     END
22582    ) AS okcB_DATES_CHANGED_YN
22583  ,(CASE
22584     WHEN (
22585 	   (
22586             (nvl(okcB.START_DATE,sysdate) BETWEEN
22587                 (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22588             AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22589             )
22590           AND
22591             (nvl(okcB.END_DATE,sysdate) BETWEEN
22592                 (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22593             AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22594             )
22595            )
22596         AND okcB.DATE_TERMINATED IS NULL
22597          )
22598     THEN 'N'
22599     ELSE 'Y'
22600     END
22601    ) AS okcB_GEN_SUBLINE_BSCH_YN
22602  FROM
22603  OKC_K_LINES_B okcB
22604  WHERE okcB.ID = ApiLinesRecTab.IDTab(i)
22605  AND ApiLinesRecTab.ToLineTab(i) IS NOT NULL
22606  AND ApiLinesRecTab.LineExistsYNTab(i) = 'Y'
22607  AND okcB.DNZ_CHR_ID = P_From_Chr_ID;
22608 
22609    EXCEPTION
22610     WHEN OTHERS THEN
22611            /*
22612               If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
22613                   FND_LOG.string(FND_LOG.level_unexpected
22614                                 ,l_module_name
22615                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  d) :'||SQLERRM);
22616               End If;
22617            */
22618 
22619 
22620          OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22621      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22622      RAISE G_EXCEPTION_HALT_VALIDATION;
22623  End;
22624 
22625     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
22626       FND_LOG.string(FND_LOG.level_statement
22627                     ,l_module_name
22628                     ,'After Bulk Insert into OKC_K_LINES_B_TEMP'
22629                     );
22630     End If;
22631 
22632 -----------------------------------------------------------------------------
22633 -----Update of OKC_K_LINES_B_TEMP to set CLE_ID to point to the new IDs of
22634 -----Target lines to be created
22635   printTemptable;
22636 
22637  Begin
22638   UPDATE OKC_K_LINES_B_TEMP a
22639    SET a.CLE_ID = (select b.ID
22640                    FROM OKC_K_LINES_B_TEMP b
22641                    WHERE
22642                    b.ORIG_SYSTEM_ID1 = a.CLE_ID
22643                    AND b.DNZ_CHR_ID = P_To_Chr_ID)
22644    WHERE
22645    a.DNZ_CHR_ID = P_To_Chr_ID
22646    AND a.CLE_ID IS NOT NULL
22647    AND a.LINE_EXISTS_YN = 'N';
22648      EXCEPTION
22649       WHEN OTHERS THEN
22650         If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
22651                   FND_LOG.string(FND_LOG.level_unexpected
22652                                 ,l_module_name
22653                                 ,'During update of cle_id in OKC_K_LINES_B_TEMP :'
22654 			       ||SQLERRM
22655                                 );
22656         End If;
22657         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22658         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22659         RAISE G_EXCEPTION_HALT_VALIDATION;
22660 
22661 
22662  End;
22663 
22664 ------------------------------------------------------------------------------
22665 
22666  -------------Update Dates of Business Process Lines and its children based on Offset Information------
22667  Begin
22668   Update_BP_StartDates(P_From_Chr_ID => P_From_Chr_ID
22669                       ,P_To_Chr_ID => P_To_Chr_ID
22670                       ,x_return_status => l_return_status);
22671 
22672       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
22673              RAISE G_EXCEPTION_HALT_VALIDATION;
22674       End If;
22675 
22676  End;
22677  ------------------------------------------------------------------------------------------------------
22678 ------------------------------------------------------------------------------
22679 
22680 END IF; -----End of Check of P_Lines_Tbl.COUNT > 0+++++++++++++++++++++++
22681         -----for insert into OKC_K_LINES_B_TEMP +++++++++++++++++++++++++
22682 
22683 ---=============================-End of BULK INSERT INTO OKC_K_LINES_B_TEMP===================
22684 
22685 
22686  -----------------------------------------------------------------------------
22687  --Process rows in OKC_K_LINES_B_TEMP and do bulk inserts into OKC_K_LINES_B
22688  --OKS_K_LINES_B and OKC_K_ITEMS
22689  ----------------------------------------------------------------------------
22690  IF (P_Lines_Tbl.COUNT > 0) then  ---Start of Check of P_Lines_Tbl.COUNT > 0 *****************
22691 				 ---for bulk insert into OKC_K_LINES_B,	    *****************
22692                                  ---OKS_K_LINES_B,OKC_K_ITEMS		    *****************
22693 
22694     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
22695       FND_LOG.string(FND_LOG.level_statement
22696                     ,l_module_name
22697                     ,'Start of BULK FETCH from OKC_K_LINES_B_TEMP'
22698 		   ||'Count of Lines in P_Lines_Tbl='||P_Lines_Tbl.COUNT
22699                     );
22700     End If;
22701 
22702 
22703 --------Start of BULK FETCH FROM OKC_K_LINES_B_TEMP---------------
22704  Begin
22705 
22706 
22707 	IF p_include_cancelled_lines = 'Y' AND
22708            p_include_terminated_lines = 'Y' THEN
22709           OPEN GetOKCOKSLinesB_Temp(P_From_Chr_ID, P_To_Chr_ID);
22710         ELSIF p_include_cancelled_lines = 'N' AND
22711               p_include_terminated_lines = 'Y' THEN
22712           OPEN GetOKCOKSLinesB_Temp_termn(P_From_Chr_ID, P_To_Chr_ID);
22713         ELSIF p_include_cancelled_lines = 'Y' AND
22714               p_include_terminated_lines = 'N' THEN
22715           OPEN GetOKCOKSLinesB_Temp_cancel(P_From_Chr_ID, P_To_Chr_ID);
22716         ELSIF p_include_cancelled_lines = 'N' AND
22717               p_include_terminated_lines = 'N' THEN
22718           OPEN GetOKCOKSLinesB_Temp_exclude(P_From_Chr_ID, P_To_Chr_ID);
22719         END IF;
22720 
22721   LOOP
22722    IF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'Y' THEN
22723    FETCH GetOKCOKSLinesB_Temp BULK COLLECT INTO
22724     OKCOKSLinesRecTab.OkcB_OldOKCLineID
22725    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
22726    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
22727    ,OKCOKSLinesRecTab.OkcB_NewChrID
22728    ,OKCOKSLinesRecTab.OkcB_CLE_ID
22729    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
22730    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
22731    ,OKCOKSLinesRecTab.OkcB_STS_CODE
22732    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
22733    ,OKCOKSLinesRecTab.OkcB_LSE_ID
22734    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
22735    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
22736    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
22737    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
22738    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
22739    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
22740    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
22741    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
22742    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
22743    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
22744    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
22745    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
22746    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
22747    ,OKCOKSLinesRecTab.OkcB_START_DATE
22748    ,OKCOKSLinesRecTab.OkcB_END_DATE
22749    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
22750    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
22751    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
22752    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
22753    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
22754    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
22755    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
22756    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
22757    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
22758    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
22759    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
22760    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
22761    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
22762    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
22763    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
22764    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
22765    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
22766    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
22767    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
22768    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
22769    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
22770    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
22771    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
22772    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
22773    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
22774    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
22775    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
22776    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
22777    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
22778    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
22779    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
22780    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
22781    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
22782    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
22783    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
22784    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
22785    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
22786    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
22787    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
22788    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
22789    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
22790    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
22791    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
22792    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
22793    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
22794    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
22795    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
22796    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
22797    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
22798    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
22799    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
22800    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
22801    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
22802    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
22803    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
22804    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
22805    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
22806    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
22807    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
22808    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
22809    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
22810    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
22811    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
22812    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
22813    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
22814 -----------------End of record members for OKC_K_LINES_B columns
22815 -----------------Start of record members for OKS_K_LINES_B columns
22816    ,OKCOKSLinesRecTab.OksB_OldOksLineID
22817    ,OKCOKSLinesRecTab.OksB_NewOksLineID
22818    ,OKCOKSLinesRecTab.OksB_CLE_ID
22819    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
22820    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
22821    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
22822    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
22823    ,OKCOKSLinesRecTab.OksB_CC_NO
22824    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
22825    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
22826    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
22827    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
22828    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
22829    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
22830    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
22831    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
22832    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
22833    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
22834    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
22835    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
22836    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
22837    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
22838    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
22839    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
22840    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
22841    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
22842    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
22843    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
22844    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
22845    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
22846    ,OKCOKSLinesRecTab.OksB_TAX_CODE
22847    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
22848    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
22849    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
22850    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
22851    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
22852    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
22853    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
22854    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
22855    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
22856    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
22857    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
22858    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
22859    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
22860    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
22861    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
22862    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
22863    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
22864    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
22865    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
22866    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
22867    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
22868    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
22869    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
22870    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
22871    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
22872    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
22873    ,OKCOKSLinesRecTab.OksB_BASE_READING
22874    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
22875    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
22876    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
22877    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
22878    ,OKCOKSLinesRecTab.OksB_PRORATE
22879    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
22880    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
22881    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
22882    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
22883    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
22884    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
22885    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
22886    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
22887    ,OKCOKSLinesRecTab.OksB_PDF_ID
22888    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
22889    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
22890    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
22891    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
22892    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
22893    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
22894    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
22895    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
22896    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
22897    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
22898    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
22899    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
22900    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
22901    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
22902    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
22903    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
22904    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
22905    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
22906    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
22907    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
22908    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
22909    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
22910    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
22911 -----------------End of record members for OKS_K_LINES_B columns
22912 -----------------Start of record members for OKC_K_ITEMS columns
22913    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
22914    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
22915    ,OKCOKSLinesRecTab.OkcI_CLE_ID
22916    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
22917    ,OKCOKSLinesRecTab.OkcI_NewChrID
22918    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
22919    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
22920    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
22921    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
22922    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
22923    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
22924    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
22925    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
22926    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
22927    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
22928    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
22929    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
22930    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
22931    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
22932    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
22933 
22934   ELSIF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'N' THEN
22935    FETCH GetOKCOKSLinesB_Temp_CANCEL BULK COLLECT INTO
22936     OKCOKSLinesRecTab.OkcB_OldOKCLineID
22937    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
22938    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
22939    ,OKCOKSLinesRecTab.OkcB_NewChrID
22940    ,OKCOKSLinesRecTab.OkcB_CLE_ID
22941    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
22942    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
22943    ,OKCOKSLinesRecTab.OkcB_STS_CODE
22944    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
22945    ,OKCOKSLinesRecTab.OkcB_LSE_ID
22946    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
22947    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
22948    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
22949    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
22950    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
22951    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
22952    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
22953    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
22954    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
22955    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
22956    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
22957    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
22958    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
22959    ,OKCOKSLinesRecTab.OkcB_START_DATE
22960    ,OKCOKSLinesRecTab.OkcB_END_DATE
22961    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
22962    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
22963    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
22964    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
22965    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
22966    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
22967    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
22968    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
22969    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
22970    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
22971    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
22972    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
22973    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
22974    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
22975    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
22976    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
22977    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
22978    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
22979    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
22980    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
22981    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
22982    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
22983    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
22984    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
22985    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
22986    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
22987    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
22988    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
22989    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
22990    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
22991    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
22992    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
22993    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
22994    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
22995    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
22996    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
22997    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
22998    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
22999    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
23000    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
23001    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
23002    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
23003    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
23004    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
23005    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
23006    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
23007    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
23008    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
23009    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
23010    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
23011    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
23012    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
23013    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
23014    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
23015    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
23016    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
23017    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
23018    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
23019    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
23020    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
23021    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
23022    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
23023    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
23024    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
23025    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
23026 -----------------End of record members for OKC_K_LINES_B columns
23027 -----------------Start of record members for OKS_K_LINES_B columns
23028    ,OKCOKSLinesRecTab.OksB_OldOksLineID
23029    ,OKCOKSLinesRecTab.OksB_NewOksLineID
23030    ,OKCOKSLinesRecTab.OksB_CLE_ID
23031    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
23032    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
23033    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
23034    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
23035    ,OKCOKSLinesRecTab.OksB_CC_NO
23036    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
23037    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
23038    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
23039    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
23040    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
23041    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
23042    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
23043    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
23044    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
23045    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
23046    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
23047    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
23048    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
23049    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
23050    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
23051    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
23052    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
23053    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
23054    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
23055    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
23056    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
23057    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
23058    ,OKCOKSLinesRecTab.OksB_TAX_CODE
23059    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
23060    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23061    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23062    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23063    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23064    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23065    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23066    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23067    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23068    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23069    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23070    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23071    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23072    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23073    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23074    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23075    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23076    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23077    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23078    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23079    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23080    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23081    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23082    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23083    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23084    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23085    ,OKCOKSLinesRecTab.OksB_BASE_READING
23086    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23087    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23088    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23089    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23090    ,OKCOKSLinesRecTab.OksB_PRORATE
23091    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23092    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23093    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23094    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23095    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23096    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23097    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23098    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23099    ,OKCOKSLinesRecTab.OksB_PDF_ID
23100    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23101    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23102    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23103    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23104    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23105    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23106    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23107    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23108    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23109    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23110    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23111    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23112    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23113    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23114    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23115    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23116    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23117    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23118    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23119    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23120    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23121    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23122    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23123 -----------------End of record members for OKS_K_LINES_B columns
23124 -----------------Start of record members for OKC_K_ITEMS columns
23125    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23126    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23127    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23128    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23129    ,OKCOKSLinesRecTab.OkcI_NewChrID
23130    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23131    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23132    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23133    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23134    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23135    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23136    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23137    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23138    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23139    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23140    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23141    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23142    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23143    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23144    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
23145 
23146   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'Y' THEN
23147    FETCH GetOKCOKSLinesB_Temp_TERMN BULK COLLECT INTO
23148     OKCOKSLinesRecTab.OkcB_OldOKCLineID
23149    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
23150    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
23151    ,OKCOKSLinesRecTab.OkcB_NewChrID
23152    ,OKCOKSLinesRecTab.OkcB_CLE_ID
23153    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
23154    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
23155    ,OKCOKSLinesRecTab.OkcB_STS_CODE
23156    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
23157    ,OKCOKSLinesRecTab.OkcB_LSE_ID
23158    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
23159    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
23160    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
23161    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
23162    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
23163    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
23164    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
23165    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
23166    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
23167    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
23168    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
23169    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
23170    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
23171    ,OKCOKSLinesRecTab.OkcB_START_DATE
23172    ,OKCOKSLinesRecTab.OkcB_END_DATE
23173    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
23174    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
23175    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
23176    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
23177    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
23178    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
23179    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
23180    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
23181    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
23182    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
23183    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
23184    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
23185    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
23186    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
23187    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
23188    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
23189    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
23190    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
23191    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
23192    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
23193    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
23194    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
23195    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
23196    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
23197    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
23198    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
23199    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
23200    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
23201    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
23202    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
23203    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
23204    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
23205    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
23206    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
23207    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
23208    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
23209    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
23210    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
23211    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
23212    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
23213    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
23214    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
23215    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
23216    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
23217    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
23218    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
23219    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
23220    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
23221    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
23222    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
23223    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
23224    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
23225    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
23226    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
23227    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
23228    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
23229    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
23230    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
23231    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
23232    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
23233    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
23234    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
23235    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
23236    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
23237    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
23238 -----------------End of record members for OKC_K_LINES_B columns
23239 -----------------Start of record members for OKS_K_LINES_B columns
23240    ,OKCOKSLinesRecTab.OksB_OldOksLineID
23241    ,OKCOKSLinesRecTab.OksB_NewOksLineID
23242    ,OKCOKSLinesRecTab.OksB_CLE_ID
23243    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
23244    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
23245    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
23246    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
23247    ,OKCOKSLinesRecTab.OksB_CC_NO
23248    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
23249    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
23250    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
23251    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
23252    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
23253    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
23254    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
23255    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
23256    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
23257    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
23258    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
23259    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
23260    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
23261    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
23262    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
23263    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
23264    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
23265    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
23266    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
23267    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
23268    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
23269    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
23270    ,OKCOKSLinesRecTab.OksB_TAX_CODE
23271    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
23272    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23273    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23274    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23275    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23276    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23277    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23278    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23279    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23280    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23281    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23282    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23283    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23284    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23285    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23286    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23287    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23288    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23289    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23290    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23291    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23292    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23293    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23294    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23295    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23296    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23297    ,OKCOKSLinesRecTab.OksB_BASE_READING
23298    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23299    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23300    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23301    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23302    ,OKCOKSLinesRecTab.OksB_PRORATE
23303    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23304    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23305    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23306    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23307    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23308    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23309    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23310    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23311    ,OKCOKSLinesRecTab.OksB_PDF_ID
23312    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23313    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23314    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23315    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23316    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23317    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23318    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23319    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23320    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23321    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23322    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23323    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23324    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23325    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23326    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23327    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23328    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23329    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23330    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23331    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23332    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23333    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23334    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23335 -----------------End of record members for OKS_K_LINES_B columns
23336 -----------------Start of record members for OKC_K_ITEMS columns
23337    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23338    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23339    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23340    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23341    ,OKCOKSLinesRecTab.OkcI_NewChrID
23342    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23343    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23344    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23345    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23346    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23347    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23348    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23349    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23350    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23351    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23352    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23353    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23354    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23355    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23356    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
23357 
23358   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'N' THEN
23359    FETCH GetOKCOKSLinesB_Temp_EXCLUDE BULK COLLECT INTO
23360     OKCOKSLinesRecTab.OkcB_OldOKCLineID
23361    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
23362    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
23363    ,OKCOKSLinesRecTab.OkcB_NewChrID
23364    ,OKCOKSLinesRecTab.OkcB_CLE_ID
23365    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
23366    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
23367    ,OKCOKSLinesRecTab.OkcB_STS_CODE
23368    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
23369    ,OKCOKSLinesRecTab.OkcB_LSE_ID
23370    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
23371    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
23372    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
23373    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
23374    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
23375    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
23376    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
23377    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
23378    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
23379    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
23380    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
23381    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
23382    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
23383    ,OKCOKSLinesRecTab.OkcB_START_DATE
23384    ,OKCOKSLinesRecTab.OkcB_END_DATE
23385    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
23386    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
23387    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
23388    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
23389    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
23390    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
23391    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
23392    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
23393    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
23394    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
23395    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
23396    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
23397    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
23398    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
23399    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
23400    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
23401    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
23402    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
23403    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
23404    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
23405    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
23406    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
23407    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
23408    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
23409    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
23410    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
23411    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
23412    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
23413    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
23414    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
23415    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
23416    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
23417    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
23418    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
23419    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
23420    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
23421    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
23422    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
23423    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
23424    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
23425    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
23426    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
23427    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
23428    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
23429    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
23430    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
23431    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
23432    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
23433    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
23434    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
23435    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
23436    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
23437    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
23438    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
23439    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
23440    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
23441    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
23442    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
23443    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
23444    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
23445    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
23446    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
23447    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
23448    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
23449    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
23450 -----------------End of record members for OKC_K_LINES_B columns
23451 -----------------Start of record members for OKS_K_LINES_B columns
23452    ,OKCOKSLinesRecTab.OksB_OldOksLineID
23453    ,OKCOKSLinesRecTab.OksB_NewOksLineID
23454    ,OKCOKSLinesRecTab.OksB_CLE_ID
23455    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
23456    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
23457    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
23458    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
23459    ,OKCOKSLinesRecTab.OksB_CC_NO
23460    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
23461    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
23462    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
23463    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
23464    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
23465    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
23466    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
23467    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
23468    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
23469    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
23470    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
23471    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
23472    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
23473    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
23474    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
23475    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
23476    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
23477    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
23478    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
23479    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
23480    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
23481    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
23482    ,OKCOKSLinesRecTab.OksB_TAX_CODE
23483    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
23484    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23485    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23486    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23487    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23488    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23489    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23490    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23491    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23492    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23493    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23494    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23495    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23496    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23497    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23498    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23499    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23500    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23501    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23502    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23503    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23504    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23505    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23506    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23507    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23508    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23509    ,OKCOKSLinesRecTab.OksB_BASE_READING
23510    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23511    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23512    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23513    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23514    ,OKCOKSLinesRecTab.OksB_PRORATE
23515    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23516    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23517    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23518    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23519    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23520    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23521    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23522    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23523    ,OKCOKSLinesRecTab.OksB_PDF_ID
23524    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23525    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23526    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23527    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23528    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23529    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23530    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23531    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23532    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23533    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23534    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23535    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23536    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23537    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23538    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23539    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23540    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23541    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23542    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23543    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23544    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23545    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23546    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23547 -----------------End of record members for OKS_K_LINES_B columns
23548 -----------------Start of record members for OKC_K_ITEMS columns
23549    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23550    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23551    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23552    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23553    ,OKCOKSLinesRecTab.OkcI_NewChrID
23554    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23555    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23556    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23557    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23558    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23559    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23560    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23561    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23562    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23563    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23564    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23565    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23566    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23567    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23568    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID LIMIT G_BULK_FETCH_LIMIT;
23569   END IF;
23570 
23571   ---Bulk insert into OKC_K_LINES_B---
23572 
23573   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
23574   INSERT INTO OKC_K_LINES_B(
23575    ID
23576  , LINE_NUMBER
23577  , CHR_ID
23578  , CLE_ID
23579  , DNZ_CHR_ID
23580  , DISPLAY_SEQUENCE
23581  , STS_CODE
23582  , TRN_CODE
23583  , LSE_ID
23584  , EXCEPTION_YN
23585  , OBJECT_VERSION_NUMBER
23586  , HIDDEN_IND
23587  , PRICE_NEGOTIATED
23588  , PRICE_LEVEL_IND
23589  , PRICE_UNIT
23590  , PRICE_UNIT_PERCENT
23591  , INVOICE_LINE_LEVEL_IND
23592  , DPAS_RATING
23593  , TEMPLATE_USED
23594  , PRICE_TYPE
23595  , CURRENCY_CODE
23596  , DATE_TERMINATED
23597  , START_DATE
23598  , END_DATE
23599  , ATTRIBUTE_CATEGORY
23600  , ATTRIBUTE1
23601  , ATTRIBUTE2
23602  , ATTRIBUTE3
23603  , ATTRIBUTE4
23604  , ATTRIBUTE5
23605  , ATTRIBUTE6
23606  , ATTRIBUTE7
23607  , ATTRIBUTE8
23608  , ATTRIBUTE9
23609  , ATTRIBUTE10
23610  , ATTRIBUTE11
23611  , ATTRIBUTE12
23612  , ATTRIBUTE13
23613  , ATTRIBUTE14
23614  , ATTRIBUTE15
23615  , SECURITY_GROUP_ID
23616  , PRICE_NEGOTIATED_RENEWED
23617  , CURRENCY_CODE_RENEWED
23618  , UPG_ORIG_SYSTEM_REF
23619  , UPG_ORIG_SYSTEM_REF_ID
23620  , DATE_RENEWED
23621  , ORIG_SYSTEM_ID1
23622  , ORIG_SYSTEM_REFERENCE1
23623  , ORIG_SYSTEM_SOURCE_CODE
23624  , PROGRAM_APPLICATION_ID
23625  , PROGRAM_ID
23626  , PROGRAM_UPDATE_DATE
23627  , REQUEST_ID
23628  , PRICE_LIST_ID
23629  , PRICE_LIST_LINE_ID
23630  , LINE_LIST_PRICE
23631  , ITEM_TO_PRICE_YN
23632  , PRICING_DATE
23633  , PRICE_BASIS_YN
23634  , CONFIG_HEADER_ID
23635  , CONFIG_REVISION_NUMBER
23636  , CONFIG_COMPLETE_YN
23637  , CONFIG_VALID_YN
23638  , CONFIG_TOP_MODEL_LINE_ID
23639  , CONFIG_ITEM_TYPE
23640  , CONFIG_ITEM_ID
23641  , SERVICE_ITEM_YN
23642  , PH_PRICING_TYPE
23643  , PH_PRICE_BREAK_BASIS
23644  , PH_MIN_QTY
23645  , PH_MIN_AMT
23646  , PH_QP_REFERENCE_ID
23647  , PH_VALUE
23648  , PH_ENFORCE_PRICE_LIST_YN
23649  , PH_ADJUSTMENT
23650  , PH_INTEGRATED_WITH_QP
23651  , CUST_ACCT_ID
23652  , BILL_TO_SITE_USE_ID
23653  , INV_RULE_ID
23654  , LINE_RENEWAL_TYPE_CODE
23655  , SHIP_TO_SITE_USE_ID
23656  , PAYMENT_TERM_ID
23657  , DATE_CANCELLED
23658  , TERM_CANCEL_SOURCE
23659  , ANNUALIZED_FACTOR
23660  , PAYMENT_INSTRUCTION_TYPE -- hkamdar 29-Mar-2006 Bug # 4722452
23661  , CANCELLED_AMOUNT
23662  , CREATION_DATE
23663  , CREATED_BY
23664  , LAST_UPDATE_DATE
23665  , LAST_UPDATED_BY
23666  , LAST_UPDATE_LOGIN
23667   )
23668  SELECT
23669   OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
23670  ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER(i)
23671  ,OKCOKSLinesRecTab.OkcB_NewChrID(i)
23672  ,OKCOKSLinesRecTab.OkcB_CLE_ID(i)
23673  ,OKCOKSLinesRecTab.OkcB_NewDnzChrID(i)
23674  ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE(i)
23675  ,decode(p_change_status_YN
23676         ,'Y'
23677         ,l_Default_Sts_Code
23678         ,'N'
23679         ,decode(OKCOKSLinesRecTab.OkcB_CLE_ID(i)
23680                ,NULL
23681                ,l_Default_Sts_Code
23682 	       ,OKCOKSLinesRecTab.OkcB_STS_CODE(i)
23683                )
23684         )
23685  ,OKCOKSLinesRecTab.OkcB_TRN_CODE(i)
23686  ,OKCOKSLinesRecTab.OkcB_LSE_ID(i)
23687  ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN(i)
23688  ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER(i)
23689  ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND(i)
23690  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
23691  ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND(i)
23692  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
23693  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT(i)
23694  ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND(i)
23695  ,OKCOKSLinesRecTab.OkcB_DPAS_RATING(i)
23696  ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED(i)
23697  ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE(i)
23698  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
23699  ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED(i)
23700  ,OKCOKSLinesRecTab.OkcB_START_DATE(i)
23701  ,OKCOKSLinesRecTab.OkcB_END_DATE(i)
23702  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY(i)
23703  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1(i)
23704  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2(i)
23705  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3(i)
23706  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4(i)
23707  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5(i)
23708  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6(i)
23709  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7(i)
23710  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8(i)
23711  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9(i)
23712  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10(i)
23713  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11(i)
23714  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12(i)
23715  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13(i)
23716  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14(i)
23717  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15(i)
23718  ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID(i)
23719  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED(i)
23720  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED(i)
23721  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF(i)
23722  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID(i)
23723  ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED(i)
23724  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1(i)
23725  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1(i)
23726  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE(i)
23727  ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID(i)
23728  ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID(i)
23729  ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE(i)
23730  ,OKCOKSLinesRecTab.OkcB_REQUEST_ID(i)
23731  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID(i)
23732  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID(i)
23733  ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE(i)
23734  ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN(i)
23735  ,OKCOKSLinesRecTab.OkcB_PRICING_DATE(i)
23736  ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN(i)
23737  ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID(i)
23738  ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER(i)
23739  ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN(i)
23740  ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN(i)
23741  ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID(i)
23742  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE(i)
23743  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID(i)
23744  ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN(i)
23745  ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE(i)
23746  ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS(i)
23747  ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY(i)
23748  ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT(i)
23749  ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID(i)
23750  ,OKCOKSLinesRecTab.OkcB_PH_VALUE(i)
23751  ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN(i)
23752  ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT(i)
23753  ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP(i)
23754  ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
23755  ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
23756  ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID(i)
23757  ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE(i)
23758  ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID(i)
23759  ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID(i)
23760  ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED(i)
23761  ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE(i)
23762  ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR(i)
23763  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
23764 -- ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE(i) -- hkamdar 29-Mar-2006 Bug # 4722452
23765  ,NULL
23766  ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i)
23767  ,SYSDATE
23768  ,FND_GLOBAL.USER_ID
23769  ,SYSDATE
23770  ,FND_GLOBAL.USER_ID
23771  ,FND_GLOBAL.LOGIN_ID
23772   FROM
23773   DUAL;
23774 
23775     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
23776       FND_LOG.string(FND_LOG.level_statement
23777                     ,l_module_name
23778                     ,'After BULK INSERT into OKC_K_LINES_B'
23779                     );
23780     End If;
23781 
23782 
23783  ---Bulk insert into OKS_K_LINES_B---
23784 
23785   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
23786   INSERT INTO OKS_K_LINES_B(
23787    ID
23788   ,CLE_ID
23789   ,DNZ_CHR_ID
23790   ,DISCOUNT_LIST
23791   ,ACCT_RULE_ID
23792   ,PAYMENT_TYPE
23793   ,CC_NO
23794   ,CC_EXPIRY_DATE
23795   ,CC_BANK_ACCT_ID
23796   ,CC_AUTH_CODE
23797   ,COMMITMENT_ID
23798   ,LOCKED_PRICE_LIST_ID
23799   ,USAGE_EST_YN
23800   ,USAGE_EST_METHOD
23801   ,USAGE_EST_START_DATE
23802   ,TERMN_METHOD
23803   ,UBT_AMOUNT
23804   ,CREDIT_AMOUNT
23805   ,SUPPRESSED_CREDIT
23806   ,OVERRIDE_AMOUNT
23807   ,CUST_PO_NUMBER_REQ_YN
23808   ,CUST_PO_NUMBER
23809   ,GRACE_DURATION
23810   ,GRACE_PERIOD
23811   ,INV_PRINT_FLAG
23812   ,PRICE_UOM
23813   ,TAX_AMOUNT
23814   ,TAX_INCLUSIVE_YN
23815   ,TAX_STATUS
23816   ,TAX_CODE
23817   ,TAX_EXEMPTION_ID
23818   ,IB_TRANS_TYPE
23819   ,IB_TRANS_DATE
23820   ,PROD_PRICE
23821   ,SERVICE_PRICE
23822   ,CLVL_LIST_PRICE
23823   ,CLVL_QUANTITY
23824   ,CLVL_EXTENDED_AMT
23825   ,CLVL_UOM_CODE
23826   ,TOPLVL_OPERAND_CODE
23827   ,TOPLVL_OPERAND_VAL
23828   ,TOPLVL_QUANTITY
23829   ,TOPLVL_UOM_CODE
23830   ,TOPLVL_ADJ_PRICE
23831   ,TOPLVL_PRICE_QTY
23832   ,AVERAGING_INTERVAL
23833   ,SETTLEMENT_INTERVAL
23834   ,MINIMUM_QUANTITY
23835   ,DEFAULT_QUANTITY
23836   ,AMCV_FLAG
23837   ,FIXED_QUANTITY
23838   ,USAGE_DURATION
23839   ,USAGE_PERIOD
23840   ,LEVEL_YN
23841   ,USAGE_TYPE
23842   ,UOM_QUANTIFIED
23843   ,BASE_READING
23844   ,BILLING_SCHEDULE_TYPE
23845   ,FULL_CREDIT
23846   ,LOCKED_PRICE_LIST_LINE_ID
23847   ,BREAK_UOM
23848   ,PRORATE
23849   ,COVERAGE_TYPE
23850   ,EXCEPTION_COV_ID
23851   ,LIMIT_UOM_QUANTIFIED
23852   ,DISCOUNT_AMOUNT
23853   ,DISCOUNT_PERCENT
23854   ,OFFSET_DURATION
23855   ,OFFSET_PERIOD
23856   ,INCIDENT_SEVERITY_ID
23857   ,PDF_ID
23858   ,WORK_THRU_YN
23859   ,REACT_ACTIVE_YN
23860   ,TRANSFER_OPTION
23861   ,PROD_UPGRADE_YN
23862   ,INHERITANCE_TYPE
23863   ,PM_PROGRAM_ID
23864   ,PM_CONF_REQ_YN
23865   ,PM_SCH_EXISTS_YN
23866   ,ALLOW_BT_DISCOUNT
23867   ,APPLY_DEFAULT_TIMEZONE
23868   ,SYNC_DATE_INSTALL
23869   ,OBJECT_VERSION_NUMBER
23870   ,SECURITY_GROUP_ID
23871   ,REQUEST_ID
23872   ,ORIG_SYSTEM_ID1
23873   ,ORIG_SYSTEM_REFERENCE1
23874   ,ORIG_SYSTEM_SOURCE_CODE
23875   ,TRXN_EXTENSION_ID
23876   ,TAX_CLASSIFICATION_CODE
23877   ,EXEMPT_CERTIFICATE_NUMBER
23878   ,EXEMPT_REASON_CODE
23879   ,COVERAGE_ID
23880   ,STANDARD_COV_YN
23881   ,CREATION_DATE
23882   ,CREATED_BY
23883   ,LAST_UPDATE_DATE
23884   ,LAST_UPDATED_BY
23885   ,LAST_UPDATE_LOGIN
23886   )
23887   SELECT
23888    OKCOKSLinesRecTab.OksB_NewOksLineID(i)
23889   ,OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
23890   ,OKCOKSLinesRecTab.OksB_NewDnzChrID(i)
23891   ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST(i)
23892   ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID(i)
23893  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
23894   ,NULL
23895 --  ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE(i)
23896   ,OKCOKSLinesRecTab.OksB_CC_NO(i)
23897   ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE(i)
23898   ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID(i)
23899   ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE(i)
23900  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
23901   ,NULL
23902 --  ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID(i)
23903   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i)
23904   ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN(i)
23905   ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD(i)
23906   ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE(i)
23907   ,OKCOKSLinesRecTab.OksB_TERMN_METHOD(i)
23908   ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT(i)
23909   ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT(i)
23910   ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT(i)
23911   ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT(i)
23912   ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN(i)
23913  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
23914   ,NULL
23915 --  ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER(i)
23916   ,OKCOKSLinesRecTab.OksB_GRACE_DURATION(i)
23917   ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD(i)
23918   ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG(i)
23919   ,OKCOKSLinesRecTab.OksB_PRICE_UOM(i)
23920   ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT(i)
23921   ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN(i)
23922   ,OKCOKSLinesRecTab.OksB_TAX_STATUS(i)
23923   ,OKCOKSLinesRecTab.OksB_TAX_CODE(i)
23924   ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID(i)
23925   ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE(i)
23926   ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE(i)
23927   ,OKCOKSLinesRecTab.OksB_PROD_PRICE(i)
23928   ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE(i)
23929   ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE(i)
23930   ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY(i)
23931   ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT(i)
23932   ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE(i)
23933   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE(i)
23934   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL(i)
23935   ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY(i)
23936   ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i)
23937   ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE(i)
23938   ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY(i)
23939   ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL(i)
23940   ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL(i)
23941   ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY(i)
23942   ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY(i)
23943   ,OKCOKSLinesRecTab.OksB_AMCV_FLAG(i)
23944   ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY(i)
23945   ,OKCOKSLinesRecTab.OksB_USAGE_DURATION(i)
23946   ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD(i)
23947   ,OKCOKSLinesRecTab.OksB_LEVEL_YN(i)
23948   ,OKCOKSLinesRecTab.OksB_USAGE_TYPE(i)
23949   ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED(i)
23950   ,OKCOKSLinesRecTab.OksB_BASE_READING(i)
23951   ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE(i)
23952   ,OKCOKSLinesRecTab.OksB_FULL_CREDIT(i)
23953   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
23954   ,OKCOKSLinesRecTab.OksB_BREAK_UOM(i)
23955   ,OKCOKSLinesRecTab.OksB_PRORATE(i)
23956   ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE(i)
23957   ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID(i)
23958   ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED(i)
23959   ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT(i)
23960   ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT(i)
23961   ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION(i)
23962   ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD(i)
23963   ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID(i)
23964   ,OKCOKSLinesRecTab.OksB_PDF_ID(i)
23965   ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN(i)
23966   ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN(i)
23967   ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION(i)
23968   ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN(i)
23969   ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE(i)
23970   ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID(i)
23971   ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN(i)
23972   ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN(i)
23973   ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT(i)
23974   ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE(i)
23975   ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL(i)
23976   ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER(i)
23977   ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID(i)
23978   ,OKCOKSLinesRecTab.OksB_REQUEST_ID(i)
23979   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1(i)
23980   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1(i)
23981   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE(i)
23982   ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
23983   ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE(i)
23984   ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER(i)
23985   ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE(i)
23986   ,OKCOKSLinesRecTab.OksB_COVERAGE_ID(i)
23987   ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN(i)
23988   ,SYSDATE
23989   ,FND_GLOBAL.USER_ID
23990   ,SYSDATE
23991   ,FND_GLOBAL.USER_ID
23992   ,FND_GLOBAL.LOGIN_ID
23993    FROM
23994    DUAL
23995    WHERE
23996    OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL;
23997 
23998     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
23999       FND_LOG.string(FND_LOG.level_statement
24000                     ,l_module_name
24001                     ,'After BULK INSERT into OKS_K_LINES_B'
24002                     );
24003     End If;
24004 
24005  ---Bulk insert into OKC_K_ITEMS---
24006 
24007   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
24008   INSERT INTO OKC_K_ITEMS(
24009    ID
24010   ,CLE_ID
24011   ,DNZ_CHR_ID
24012   ,CHR_ID
24013   ,OBJECT1_ID1
24014   ,OBJECT1_ID2
24015   ,JTOT_OBJECT1_CODE
24016   ,UOM_CODE
24017   ,EXCEPTION_YN
24018   ,NUMBER_OF_ITEMS
24019   ,PRICED_ITEM_YN
24020   ,OBJECT_VERSION_NUMBER
24021   ,SECURITY_GROUP_ID
24022   ,UPG_ORIG_SYSTEM_REF
24023   ,UPG_ORIG_SYSTEM_REF_ID
24024   ,PROGRAM_APPLICATION_ID
24025   ,PROGRAM_ID
24026   ,PROGRAM_UPDATE_DATE
24027   ,REQUEST_ID
24028   ,CREATION_DATE
24029   ,CREATED_BY
24030   ,LAST_UPDATE_DATE
24031   ,LAST_UPDATED_BY
24032   ,LAST_UPDATE_LOGIN
24033   )
24034   SELECT
24035     OKCOKSLinesRecTab.OkcI_NewOkcItemID(i)
24036    ,OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
24037    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID(i)
24038    ,OKCOKSLinesRecTab.OkcI_NewChrID(i)
24039    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1(i)
24040    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2(i)
24041    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE(i)
24042    ,OKCOKSLinesRecTab.OkcI_UOM_CODE(i)
24043    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN(i)
24044    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS(i)
24045    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN(i)
24046    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER(i)
24047    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID(i)
24048    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF(i)
24049    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID(i)
24050    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID(i)
24051    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID(i)
24052    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE(i)
24053    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID(i)
24054    ,SYSDATE
24055    ,FND_GLOBAL.USER_ID
24056    ,SYSDATE
24057    ,FND_GLOBAL.USER_ID
24058    ,FND_GLOBAL.LOGIN_ID
24059    FROM
24060    DUAL
24061    where OKCOKSLinesRecTab.OkcI_OldOkcItemID(i) IS NOT NULL;
24062 
24063     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24064       FND_LOG.string(FND_LOG.level_statement
24065                     ,l_module_name
24066                     ,'After BULK INSERT into OKC_K_ITEMS'
24067                     );
24068     End If;
24069 
24070 
24071   -----------------Start of row by row processing---------------------
24072   FOR i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST LOOP
24073 
24074    ------------Re-compute TAX_AMOUNT for a subscription line if the line being copied is a cancelled line------------
24075     BEGIN
24076      /*If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND
24077          OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46 AND
24078          OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG(i) = 'Y') then*/
24079 
24080       --npalepu added condition lse_id IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) for bug # 5660131
24081       If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OkcB_LSE_ID(i) IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) AND
24082           (
24083            (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46 AND OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG(i) = 'Y')
24084            OR
24085            (OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG(i) = 'Y')
24086           )
24087          )
24088        then
24089 
24090     /*-Line below is not correct as it would be NULL. Also, it is not required as the Tax API derives the Price_Negotiated for the Line ID
24091     --lx_rail_rec.AMOUNT := OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i); --Price Negotiated would be stored in the CANCELLED_AMOUNT column
24092                                                                       --for a cancelled Subscription Line
24093     */
24094 
24095      --npalepu added on 06-NOV-2006 for bug # 5636927
24096      lx_rail_rec.AMOUNT := NULL;
24097      --end npalepu
24098 
24099       OKS_TAX_UTIL_PVT.Get_Tax
24100        ( p_api_version => p_api_version
24101         ,p_init_msg_list => p_init_msg_list
24102         ,p_chr_id	=> P_To_Chr_ID
24103         ,p_cle_id  => OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
24104         ,px_rail_rec => lx_rail_rec
24105         ,x_msg_count => x_msg_count
24106         ,x_msg_data => x_msg_data
24107         ,x_return_status => l_return_status
24108        );
24109 
24110          IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24111           IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24112                 x_return_status := l_return_status;
24113                 RAISE G_EXCEPTION_HALT_VALIDATION;
24114           END IF;
24115          END IF;
24116 
24117       UPDATE OKS_K_LINES_B
24118       SET
24119        TAX_AMOUNT = lx_rail_rec.TAX_VALUE
24120       WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24121       AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24122 
24123       If SQL%NOTFOUND then
24124        l_return_status := FND_API.G_RET_STS_ERROR;
24125        RAISE G_EXCEPTION_HALT_VALIDATION;
24126       End If;
24127 
24128      End If;
24129     END;
24130  ------------------------------------------------------------------------------------------------------------------
24131  ------------------------------------------------------------------------------------------------------------------
24132 
24133    ---If (LSE_ID in (1,19)--------------------------------------
24134    ---       a) Instantiate counter events
24135    ---	   b) Copy Line Notes
24136  --------------------------------------------------------------
24137    IF (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 1 OR OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 19) THEN
24138 
24139     --Instantiate Counters Events
24140 
24141     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24142       FND_LOG.string(FND_LOG.level_statement
24143                     ,l_module_name
24144                     ,'Before instantiate_counters_events'
24145                    ||' p_old_cle_id='||OKCOKSLinesRecTab.OkcB_OldOKCLineID(i)
24146 		   ||',p_old_lse_id='||OKCOKSLinesRecTab.OkcB_LSE_ID(i)
24147 		   ||',p_new_cle_id='||OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24148                     );
24149     End If;
24150 
24151     instantiate_counters_events(
24152                      p_api_version   => p_api_version
24153 	            ,p_init_msg_list => p_init_msg_list
24154 		    ,x_return_status => l_return_status
24155 		    ,x_msg_count     => x_msg_count
24156 		    ,x_msg_data      => x_msg_data
24157 		    ,p_old_cle_id    => OKCOKSLinesRecTab.OkcB_OldOKCLineID(i)
24158 		    ,p_old_lse_id    => OKCOKSLinesRecTab.OkcB_LSE_ID(i)
24159 		    ,p_start_date    => OKCOKSLinesRecTab.OkcB_START_DATE(i)
24160 		    ,p_end_date      => OKCOKSLinesRecTab.OkcB_END_DATE(i)
24161 	            ,p_new_cle_id    => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24162                     --npalepu added on 20-mar-2006 for bug # 5102052
24163                     ,p_new_chr_id    => P_To_Chr_ID
24164                     --end npalepu
24165                     );
24166 
24167 		    IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24168 		       RAISE G_EXCEPTION_HALT_VALIDATION;
24169 		    END IF;
24170 
24171     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24172       FND_LOG.string(FND_LOG.level_statement
24173                     ,l_module_name
24174                     ,'After instantiate_counters_events'
24175                    ||', x_return_status ='||l_return_status
24176                     );
24177     End If;
24178 
24179 
24180    --Copy Line level notes
24181     OKS_COVERAGES_PVT.COPY_NOTES(p_api_version  =>  p_api_version
24182                 	        ,p_init_msg_list =>  p_init_msg_list
24183 			        ,x_msg_count => x_msg_count
24184 			        ,x_msg_data =>  x_msg_data
24185 			        ,x_return_status =>  l_return_status
24186  			        ,p_line_id  => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24187 			        );
24188        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24189         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24190          FND_LOG.string(FND_LOG.level_statement
24191                         ,l_module_name||'.OKS_COVERAGES_PVT.COPY_NOTES'
24192                         ,'After call to copy_notes for line: x_return_status:'||l_return_status
24193                          );
24194         END IF;
24195        END IF;
24196 
24197        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24198         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24199               x_return_status := l_return_status;
24200               RAISE G_EXCEPTION_HALT_VALIDATION;
24201         END IF;
24202        END IF;
24203 
24204    END IF; -----End of LSE_ID check in (1,19)
24205 
24206    -----------Generate new Locked_Price_List_Line_ID for line if a value currently exists----------
24207 
24208    Begin
24209     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i) IS NOT NULL) then
24210      QP_LOCK_PRICELIST_GRP.Lock_Price(p_source_list_line_id     => OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
24211 	                             ,p_list_source_code        => 'OKS'
24212 				     ,p_orig_system_header_ref     => l_new_contract_number
24213 				     ,p_org_id 			=>   okc_context.get_okc_org_id
24214 				     ,x_locked_price_list_id       => l_locked_price_list_id
24215 				     ,x_locked_list_line_id        => l_locked_price_list_line_id
24216 				     ,x_return_status              => l_return_status
24217 				     ,x_msg_count                  => x_msg_count
24218 				     ,x_msg_data                   => x_msg_data);
24219 
24220        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24221         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24222          FND_LOG.string(FND_LOG.level_statement
24223                         ,l_module_name||'.QP_LOCK_PRICELIST_GRP.Lock_Price'
24224                         ,'After call to Lock_Price API for line: x_return_status :'||l_return_status
24225                         ||'Old Locked Price List Line ID='||OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
24226 			||'New Locked Price List Line ID='||l_locked_price_list_line_id
24227 			||'New Locked Price List ID='||l_locked_price_list_id
24228                          );
24229         END IF;
24230        END IF;
24231 
24232        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24233         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24234               x_return_status := l_return_status;
24235               RAISE G_EXCEPTION_HALT_VALIDATION;
24236         END IF;
24237        END IF;
24238 
24239 	UPDATE OKS_K_LINES_B
24240 	SET
24241 	 LOCKED_PRICE_LIST_ID = l_locked_price_list_id
24242 	,LOCKED_PRICE_LIST_LINE_ID = l_locked_price_list_line_id
24243 	WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24244         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24245 
24246         If SQL%NOTFOUND then
24247 	  l_return_status := FND_API.G_RET_STS_ERROR;
24248 	  RAISE G_EXCEPTION_HALT_VALIDATION;
24249 	End If;
24250     End If;
24251    End;
24252 
24253  ----------------------------------------------------------------------------------------------------
24254  ------------Generate Transaction Extension for line if a value currently exists--------------------
24255 
24256    Begin
24257     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i) IS NOT NULL) then
24258         --Generate new transaction extension id;
24259        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24260         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24261          FND_LOG.string(FND_LOG.level_statement
24262                         ,l_module_name||'.Create_Transaction_Extension'
24263                         ,'Before call to Create_Transaction_Extension for line in COPY_LINE_COMPONENTS'
24264                         ||'Old Trxn ID='||OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
24265                          );
24266         END IF;
24267        END IF;
24268 
24269         OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
24270                                       ,P_Init_Msg_List => p_init_msg_list
24271                                       ,P_Header_ID => NULL
24272                                       ,P_Line_ID => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24273                                       ,P_Source_Trx_Ext_ID => OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
24274 				      ,P_Cust_Acct_ID => OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
24275                                       ,P_Bill_To_Site_Use_ID => OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
24276                                       ,x_entity_id => l_trxn_extension_id
24277                                       ,x_msg_data => x_msg_data
24278                                       ,x_msg_count => x_msg_count
24279                                       ,x_return_status => l_return_status) ;
24280 
24281 
24282 
24283        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24284         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24285          FND_LOG.string(FND_LOG.level_statement
24286                         ,l_module_name||'.Create_Transaction_Extension'
24287                         ,'After call to Create_Transaction_Extension for line: x_return_status :'||l_return_status
24288                         ||'New Trxn ID='||l_trxn_extension_id
24289                          );
24290         END IF;
24291        END IF;
24292 
24293        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24294         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24295               x_return_status := l_return_status;
24296               RAISE G_EXCEPTION_HALT_VALIDATION;
24297         END IF;
24298        END IF;
24299 
24300         UPDATE OKS_K_LINES_B
24301         SET
24302          TRXN_EXTENSION_ID = l_trxn_extension_id
24303         WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24304         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24305 
24306         If SQL%NOTFOUND then
24307           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24308            FND_LOG.string(FND_LOG.level_statement
24309                         ,l_module_name||'.Create_Transaction_Extension'
24310                         ,'After call to Create_Transaction_Extension, Error in Update OKS_K_LINES_B, row not found for update'
24311                          );
24312           END IF;
24313 
24314           l_return_status := FND_API.G_RET_STS_ERROR;
24315           RAISE G_EXCEPTION_HALT_VALIDATION;
24316         End If;
24317 
24318     End If;
24319 
24320    End;
24321 
24322  -------------------------------------------------------------------------------------------------
24323  -----------Copy subscription schedules for subscription lines chosen by user--------
24324  If (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46) then
24325    Begin
24326     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24327         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24328          FND_LOG.string(FND_LOG.level_statement
24329                         ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst for Lines chosen by user'
24330                         ,'Before call to OKS_SETUP_UTIL_PUB.copy_subscr_inst for Lines chosen by user'
24331 			||':'||to_char(sysdate,'DD/MM/YY HH:MI:SS')
24332                          );
24333         END IF;
24334     END IF;
24335 
24336     OKS_SETUP_UTIL_PUB.copy_subscr_inst(p_new_chr_id => P_To_Chr_ID
24337                                        ,p_cle_id => OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
24338 				       ,p_intent => 'COPY'
24339                                        ,x_return_status => l_return_status);
24340 
24341     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24342      IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24343       FND_LOG.string(FND_LOG.level_statement
24344                      ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst'
24345                      ,'After call to OKS_SETUP_UTIL_PUB.copy_subscr_inst: x_return_status:'||l_return_status
24346 		      ||':'||to_char(sysdate,'DD/MM/YY HH:MI:SS')
24347                       ||' '||SQLERRM
24348                       );
24349      END IF;
24350     END IF;
24351 
24352     If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24353          RAISE G_EXCEPTION_HALT_VALIDATION;
24354     End If;
24355 
24356    End;
24357  End If;
24358 
24359  -- 03-Nov-2006 hkamdar. Bug# 5623498.
24360  IF OKCOKSLinesRecTab.OkcB_LSE_ID(i) in (7,9,25) AND OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i) IS NULL THEN
24361 
24362 
24363     OPEN get_toplvl_uom(OKCOKSLinesRecTab.OkcB_OldOKCLineID(i));
24364     FETCH get_toplvl_uom INTO l_toplvl_uom_code;
24365     CLOSE get_toplvl_uom;
24366 
24367     IF l_toplvl_uom_code IS NOT NULL then
24368       UPDATE OKS_K_LINES_B
24369       SET    toplvl_uom_code = l_toplvl_uom_code
24370       WHERE  id = OKCOKSLinesRecTab.OksB_NewOksLineID(i);
24371     END IF;
24372 
24373  END IF;
24374  -- 03-Nov-2006 hkamdar. Bug# 5623498.
24375  ------------------------------------------------------------------------------------------------
24376 
24377  ------------------------------------------------------------------------------------------------
24378 
24379   END LOOP;
24380   --------------------End of row by row processing------------------------
24381 
24382           IF p_include_cancelled_lines = 'Y' AND
24383              p_include_terminated_lines = 'Y' THEN
24384             EXIT WHEN GetOKCOKSLinesB_Temp%NOTFOUND;
24385           ELSIF p_include_cancelled_lines = 'N' AND
24386                 p_include_terminated_lines = 'Y' THEN
24387             EXIT WHEN GetOKCOKSLinesB_Temp_termn%NOTFOUND;
24388           ELSIF p_include_cancelled_lines = 'Y' AND
24389                 p_include_terminated_lines = 'N' THEN
24390             EXIT WHEN GetOKCOKSLinesB_Temp_cancel%NOTFOUND;
24391           ELSIF p_include_cancelled_lines = 'N' AND
24392                 p_include_terminated_lines = 'N' THEN
24393             EXIT WHEN GetOKCOKSLinesB_Temp_exclude%NOTFOUND;
24394           END IF;
24395 
24396  END LOOP;
24397 
24398         IF p_include_cancelled_lines = 'Y' AND
24399            p_include_terminated_lines = 'Y' THEN
24400           CLOSE GetOKCOKSLinesB_Temp;
24401         ELSIF p_include_cancelled_lines = 'N' AND
24402               p_include_terminated_lines = 'Y' THEN
24403           CLOSE GetOKCOKSLinesB_Temp_termn;
24404         ELSIF p_include_cancelled_lines = 'Y' AND
24405               p_include_terminated_lines = 'N' THEN
24406           CLOSE GetOKCOKSLinesB_Temp_cancel;
24407         ELSIF p_include_cancelled_lines = 'N' AND
24408               p_include_terminated_lines = 'N' THEN
24409           CLOSE GetOKCOKSLinesB_Temp_exclude;
24410         END IF;
24411 
24412  End;
24413 --------End of BULK FETCH FROM OKC_K_LINES_B_TEMP---------------
24414 
24415 END IF; ---End of Check of P_Lines_Tbl.COUNT > 0 *****************
24416         ---for bulk insert into OKC_K_LINES_B,     *****************
24417         ---OKS_K_LINES_B,OKC_K_ITEMS               *****************
24418 
24419 
24420  ----------------------------------------------------------------------------
24421  -- Update of OKC_K_LINES_B
24422  --  ii) PRICE_NEGOTIATED on OKC_K_LINES_B for toplines
24423  --
24424  -- Update of OKS_K_LINES_B
24425  -- iii) COVERAGE_ID on OKS_K_LINES_B for toplines with STANDARD_COV_YN = 'N'
24426  --  iv) TAX_AMOUNT on OKS_K_LINES_B for all toplines
24427  --   v) PRICE_UOM on OKS_K_LINES_B as per Partial Period uptake rules, when copying to an existing Target Contract
24428  ----------------------------------------------------------------------------
24429  Begin
24430 
24431    UPDATE OKC_K_LINES_B a
24432    SET a.PRICE_NEGOTIATED = (select sum(b.PRICE_NEGOTIATED)
24433                              from OKC_K_LINES_B b
24434 			     where b.CLE_ID = a.ID
24435 			     AND b.DNZ_CHR_ID = P_To_Chr_ID
24436                              AND b.DATE_CANCELLED IS NULL) --Cancelled sublines shouldn't be included in sum
24437    WHERE
24438    a.DNZ_CHR_ID = P_To_Chr_ID
24439    AND a.CLE_ID IS NULL
24440    AND a.LSE_ID <> 46; -- Subscription Lines do not have sublines. So they shouldnt be updated.
24441 
24442 
24443    UPDATE OKS_K_LINES_B a
24444    SET a.COVERAGE_ID = (select b.ID
24445   			FROM
24446                          OKC_K_LINES_B b
24447                         ,OKC_K_LINES_B_TEMP bt
24448 			WHERE
24449                         b.ID = bt.ID
24450 			AND b.CLE_ID = a.CLE_ID
24451 			AND b.DNZ_CHR_ID = P_To_Chr_ID
24452 			AND b.LSE_ID in (2,20))
24453    WHERE a.DNZ_CHR_ID = P_To_Chr_ID
24454    AND a.STANDARD_COV_YN = 'N'
24455    AND a.CLE_ID in (SELECT b.ID from OKC_K_LINES_B_TEMP b where b.LINE_EXISTS_YN = 'N'
24456                     and b.LSE_ID in (1,19));
24457 
24458 
24459    UPDATE OKS_K_LINES_B a
24460    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
24461                        FROM
24462 		       OKS_K_LINES_B b
24463 		      ,OKC_K_LINES_B c
24464 		       WHERE
24465 		       c.ID = b.CLE_ID
24466 		       AND c.cle_id = a.cle_id
24467 		       AND c.DATE_CANCELLED IS NULL) --Cancelled sublines shouldn't be included in sum
24468    WHERE a.dnz_chr_id = P_To_Chr_ID
24469    and a.CLE_ID = (select b.id
24470   		   FROM
24471 		   OKC_K_LINES_B b
24472 		   WHERE b.cle_id is NULL
24473 		   AND b.id = a.cle_id
24474 		   AND b.LSE_ID <> 46); --Subscription Lines do not have sublines. So they shouldnt be updated.
24475 
24476    --If copying to an existing contract:
24477    ----If the Target Contract has Partial Period Setup on it
24478         --a) Update Price_UOM of Top Lines and its sublines that were copied, with the Price_UOM of the target header.
24479         --b) Update Price_UOM of sublines that were copied to existing top lines with that of the Target top line.
24480    ----Else if the Target Contract doesnt have Partial Period Setup on it
24481         --Update the Price_UOM on the Top Lines/Sublines being copied with the Source Top Line/Subline PRICE_UOM
24482 	--the Price UOM on the TargetHeader/Top Lines is NOT NULL, else retain the Price_UOM on Source TopLine/Sublines
24483 
24484    IF (P_Target_Contract_New_YN = 'N') then
24485     IF (l_TrgContractPPSetupExists_YN = 'Y') then --Partial Period Setup exists in Target Contract Header
24486 
24487      --Update price_uom of copied top lines and their sublines
24488      UPDATE OKS_K_LINES_B a
24489      SET a.PRICE_UOM = l_Target_Hdr_Price_UOM
24490      WHERE a.CLE_ID IN (select bt.id from okc_k_lines_b_temp bt
24491 	                where
24492 		        (bt.cle_id is null --Top Line
24493 		         OR
24494                          (bt.cle_id is not null
24495                           and bt.line_exists_yn = 'N'
24496                           -- hkamdar 05-Oct-2006. Bug# 5361663. Removing Customer, Party and Site Covered levels
24497                           -- as the PRICE_UOM should be NULL for them.
24498                          -- and bt.lse_id in (7,8,9,10,11,13,25,35) --Covered Level Sublines copied with top line
24499                           and bt.lse_id in (7,9,11,13,25) --Covered Level Sublines copied with top line
24500                          -- End hkamdar 05-Oct-2006. Bug# 5361663.
24501                          )
24502                         )
24503                        );
24504 
24505       --Update of PRICE_UOM of Sublines that were copied to existing Top lines.
24506       UPDATE OKS_K_LINES_B a
24507       SET a.PRICE_UOM = (select b.price_uom from oks_k_lines_b b
24508                          where b.cle_id = (select c.cle_id from okc_k_lines_b c
24509                                            where c.id = a.CLE_ID)
24510                         )
24511       WHERE a.CLE_ID IN (select bt.ID from okc_k_lines_b_temp bt
24512 		         where bt.CLE_ID IS NOT NULL
24513                          and bt.LINE_EXISTS_YN = 'Y'
24514       -- hkamdar 05-Oct-2006. Bug# 5361663. Removing Customer, Party and Site Covered levels
24515       -- as the PRICE_UOM should be NULL for them.
24516                          and bt.lse_id NOT IN (8,10,35)
24517       -- End hkamdar 05-Oct-2006. Bug# 5361663.
24518                          );
24519 
24520     ELSIF (l_TrgContractPPSetupExists_YN = 'N') then --Partial Period Setup does not exist in Target Contract Header
24521 
24522     /****Not required: If PPSetup DOES NOT EXIST on Target Header, then the Price UOM on
24523                        copied Top Lines and its sublines will be same as that of the Source Top Line/Sublines.
24524      --Update of PRICE_UOM on copied Top Lines and their Sublines
24525      UPDATE OKS_K_LINES_B a
24526      SET a.PRICE_UOM = nvl(l_Target_Hdr_Price_UOM,a.PRICE_UOM)
24527      WHERE a.CLE_ID IN (select bt.id from okc_k_lines_b_temp bt
24528                         where
24529                         (bt.cle_id is null --Top Line
24530                          OR
24531                          (bt.cle_id is not null
24532                           and bt.line_exists_yn = 'N'
24533                           and bt.lse_id in (7,8,9,10,11,13,25,35) --Covered Level Sublines copied with top line
24534                          )
24535                         )
24536                        );
24537     ******/
24538 
24539       --Update PRICE_UOM of Sub Lines that were copied to existing top lines
24540       UPDATE OKS_K_LINES_B a
24541       SET a.PRICE_UOM = nvl(
24542                             (select b.price_uom from oks_k_lines_b b
24543                              where b.cle_id = (select c.cle_id from okc_k_lines_b c
24544                                                where c.id = a.CLE_ID)
24545                             )
24546                            ,a.PRICE_UOM
24547                            )
24548       WHERE a.CLE_ID IN (select bt.ID from okc_k_lines_b_temp bt
24549                          where bt.CLE_ID IS NOT NULL
24550                          and bt.LINE_EXISTS_YN = 'Y'
24551       -- hkamdar 05-Oct-2006. Bug# 5361663. Removing Customer, Party and Site Covered levels
24552       -- as the PRICE_UOM should be NULL for them.
24553                          and bt.lse_id NOT IN (8,10,35)
24554       -- End hkamdar 05-Oct-2006. Bug# 5361663.
24555                          );
24556 
24557 
24558 
24559     END IF; -- End of check for l_TrgContractPPSetupExists_YN = 'Y'
24560    END IF; --End of check for P_Target_Contract_New_YN = 'N'
24561 
24562   End;
24563  --------------------------------------------------------------------------------
24564  --------------------------------------------------------------------------------
24565  --Update of OKC_K_HEADERS_B.ESTIMATED_AMOUNT and OKS_K_HEADERS_B.TAX_AMOUNT to equal
24566  --sum of OKC_K_LINES_B.PRICE_NEGOTIATED of all top lines and OKS_K_LINES_B.TAX_AMOUNT
24567  --of all top lines respectively
24568   Begin
24569    UPDATE OKC_K_HEADERS_B a
24570    SET a.ESTIMATED_AMOUNT = (select sum(b.PRICE_NEGOTIATED)
24571                              FROM OKC_K_LINES_B b
24572                              where b.DNZ_CHR_ID = a.ID
24573                              and b.CLE_ID IS NULL
24574                              AND b.DATE_CANCELLED IS NULL) --Cancelled toplines shouldn't be included in sum
24575    WHERE a.ID = P_To_Chr_ID;
24576 
24577    UPDATE OKS_K_HEADERS_B a
24578    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
24579                        FROM
24580                        OKS_K_LINES_B b
24581                       ,OKC_K_LINES_B c
24582                        where b.DNZ_CHR_ID = a.CHR_ID
24583                        and b.CLE_ID = c.ID
24584                        and c.CLE_ID IS NULL
24585 		       and c.DATE_CANCELLED IS NULL) -- Cancelled toplines shouldn't be included in sum
24586    WHERE a.CHR_ID = P_To_Chr_ID;
24587 
24588   End;
24589  --------------------------------------------------------------------------------
24590 
24591  -------------Generate new line numbers in OKC_K_LINES_B for newly created lines-----
24592  IF (P_Lines_Tbl.COUNT > 0) then
24593   Begin
24594    GenerateNewLineNumber(P_To_Chr_ID => P_To_Chr_ID
24595                         ,P_Partial_Copy_YN => 'Y'
24596 			,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24597                         ,x_return_status => l_return_Status);
24598 
24599         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24600          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24601           FND_LOG.string(FND_LOG.level_statement
24602                          ,l_module_name||'.GenerateNewLineNumber'
24603                          ,'After call to GenerateNewLineNumber for line: x_return_status :'||l_return_status
24604                           );
24605          END IF;
24606         END IF;
24607 
24608        If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24609               RAISE G_EXCEPTION_HALT_VALIDATION;
24610        End If;
24611   End;
24612  END IF;
24613  -------------------------------------------------------------------------------------
24614 
24615  ------------Copy of OKC_K_LINES_TL--------------------------------------------------
24616  IF (P_Lines_Tbl.COUNT > 0) then
24617   Begin
24618         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24619          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24620           FND_LOG.string(FND_LOG.level_statement
24621                          ,l_module_name||'.copy_okc_k_lines_tl'
24622                          ,'Before call to copy_okc_k_lines_tl'
24623                           );
24624          END IF;
24625         END IF;
24626     copy_okc_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
24627                     ,P_To_Chr_ID   => P_To_Chr_ID
24628                     ,P_Partial_Copy_YN => 'Y'
24629                     ,P_Lines_Count => P_Lines_Tbl.COUNT
24630                      ,x_return_status => l_return_status);
24631 
24632         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24633          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24634           FND_LOG.string(FND_LOG.level_statement
24635                          ,l_module_name||'.copy_okc_k_lines_tl'
24636                          ,'After call to copy_okc_k_lines_tl: x_return_status:'||l_return_status
24637                           ||' '||SQLERRM
24638                           );
24639          END IF;
24640         END IF;
24641 
24642       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24643           RAISE G_EXCEPTION_HALT_VALIDATION;
24644       End If;
24645   End;
24646  END IF;
24647 
24648  --------------------------------------------------------------------------------------
24649  -----------Copy of OKC_PARTY_ROLES_B------------------------------------------------
24650  IF (P_Lines_Tbl.COUNT > 0) then
24651   Begin
24652         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24653          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24654           FND_LOG.string(FND_LOG.level_statement
24655                          ,l_module_name||'.copy_okc_k_party_roles_b'
24656                          ,'Before call to copy_okc_k_party_roles_b'
24657                           );
24658          END IF;
24659         END IF;
24660 
24661    copy_okc_k_party_roles_b(P_From_Chr_ID => P_From_Chr_ID
24662                          ,P_To_Chr_ID   => P_To_Chr_ID
24663                          ,P_Partial_Copy_YN => 'Y'
24664    			 ,P_Lines_Count => P_Lines_Tbl.COUNT
24665                          ,x_return_status => l_return_status);
24666 
24667         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24668          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24669           FND_LOG.string(FND_LOG.level_statement
24670                          ,l_module_name||'.copy_okc_k_party_roles_b'
24671                          ,'After call to copy_okc_k_party_roles_b: x_return_status:'||l_return_status
24672                           ||' '||SQLERRM
24673                           );
24674          END IF;
24675         END IF;
24676 
24677      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24678          RAISE G_EXCEPTION_HALT_VALIDATION;
24679      End If;
24680   End;
24681  END IF;
24682 -------------------------------------------------------------------------------------
24683 ------------Copy of OKC_PARTY_ROLES_TL------------------------------
24684  IF (P_Lines_Tbl.COUNT > 0) then
24685   Begin
24686         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24687          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24688           FND_LOG.string(FND_LOG.level_statement
24689                          ,l_module_name||'.copy_okc_k_party_roles_tl'
24690                          ,'Before call to copy_okc_k_party_roles_tl'
24691                           );
24692          END IF;
24693         END IF;
24694    copy_okc_k_party_roles_tl(P_From_Chr_ID => P_From_Chr_ID
24695                          ,P_To_Chr_ID   => P_To_Chr_ID
24696                          ,P_Partial_Copy_YN => 'Y'
24697  			 ,P_Lines_Count => P_Lines_Tbl.COUNT
24698                          ,x_return_status => l_return_status);
24699 
24700        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24701         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24702          FND_LOG.string(FND_LOG.level_statement
24703                         ,l_module_name||'.copy_okc_k_party_roles_tl'
24704                         ,'After call to copy_okc_k_party_roles_tl: x_return_status:'||l_return_status
24705                          ||' '||SQLERRM
24706                          );
24707         END IF;
24708        END IF;
24709 
24710      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24711          RAISE G_EXCEPTION_HALT_VALIDATION;
24712      End If;
24713   End;
24714  END IF;
24715 ----------------------------------------------------------------------
24716 ------------Copy of OKC_CONTACTS--------------------------------------
24717  IF (P_Lines_Tbl.COUNT > 0) then
24718   Begin
24719         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24720          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24721           FND_LOG.string(FND_LOG.level_statement
24722                          ,l_module_name||'.copy_okc_contacts'
24723                          ,'Before call to copy_okc_contacts'
24724                           );
24725          END IF;
24726         END IF;
24727    copy_okc_contacts(P_From_Chr_ID => P_From_Chr_ID
24728                          ,P_To_Chr_ID   => P_To_Chr_ID
24729                          ,P_Partial_Copy_YN => 'Y'
24730  			,P_Lines_Count => P_Lines_Tbl.COUNT
24731                          ,x_return_status => l_return_status);
24732 
24733         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24734          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24735           FND_LOG.string(FND_LOG.level_statement
24736                          ,l_module_name||'.copy_okc_contacts'
24737                          ,'After call to copy_okc_contacts: x_return_status:'||l_return_status
24738                           ||' '||SQLERRM
24739                           );
24740          END IF;
24741         END IF;
24742       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24743           RAISE G_EXCEPTION_HALT_VALIDATION;
24744       End If;
24745   End;
24746  END IF;
24747 -------------------------------------------------------------------------
24748 ------------Copy of OKC_PRICE_ATT_VALUES-----------------------------
24749  Begin
24750        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24751         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24752          FND_LOG.string(FND_LOG.level_statement
24753                         ,l_module_name||'.copy_okc_price_att_values'
24754                         ,'Before call to copy_okc_price_att_values'
24755                          );
24756         END IF;
24757        END IF;
24758   copy_okc_price_att_values(P_From_Chr_ID => P_From_Chr_ID
24759                             ,P_To_Chr_ID  => P_To_Chr_ID
24760                             ,P_Partial_Copy_YN => 'Y'
24761                             ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24762                             ,P_Lines_Count => P_Lines_Tbl.COUNT
24763                             ,x_return_status => l_return_status) ;
24764 
24765        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24766         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24767          FND_LOG.string(FND_LOG.level_statement
24768                         ,l_module_name||'.copy_okc_price_att_values'
24769                         ,'After call to copy_okc_price_att_values: x_return_status:'||l_return_status
24770                          ||' '||SQLERRM
24771                          );
24772         END IF;
24773        END IF;
24774 
24775      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24776          RAISE G_EXCEPTION_HALT_VALIDATION;
24777      End If;
24778  End;
24779 ---------------------------------------------------------------------
24780 -----------Copy of OKC_PRICE_ADJUSTMENTS---------------------------
24781  Begin
24782        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24783         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24784          FND_LOG.string(FND_LOG.level_statement
24785                         ,l_module_name||'.copy_okc_price_adjustments'
24786                         ,'Before call to copy_okc_price_adjustments'
24787                          );
24788         END IF;
24789        END IF;
24790 
24791    copy_okc_price_adjustments(P_From_Chr_ID => P_From_Chr_ID
24792                         ,P_To_Chr_ID   => P_To_Chr_ID
24793                         ,P_Partial_Copy_YN => 'Y'
24794 			,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24795                         ,P_Lines_Count => P_Lines_Tbl.COUNT
24796                         ,x_return_status => l_return_status);
24797 
24798        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24799         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24800          FND_LOG.string(FND_LOG.level_statement
24801                         ,l_module_name||'.copy_okc_price_adjustments'
24802                         ,'After call to copy_okc_price_adjustments: x_return_status:'||l_return_status
24803                          ||' '||SQLERRM
24804                          );
24805         END IF;
24806        END IF;
24807 
24808      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24809          RAISE G_EXCEPTION_HALT_VALIDATION;
24810      End If;
24811  End;
24812 --------------------------------------------------------------------
24813 ------------Copy of OKS_K_LINES_TL---------------------------------
24814  IF (P_Lines_Tbl.COUNT > 0) then
24815   Begin
24816         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24817          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24818           FND_LOG.string(FND_LOG.level_statement
24819                          ,l_module_name||'.copy_oks_k_lines_tl'
24820                          ,'Before call to copy_oks_k_lines_tl'
24821                           );
24822          END IF;
24823         END IF;
24824    copy_oks_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
24825                          ,P_To_Chr_ID   => P_To_Chr_ID
24826                          ,P_Partial_Copy_YN => 'Y'
24827  			,P_Lines_Count => P_Lines_Tbl.COUNT
24828                          ,x_return_status => l_return_status);
24829 
24830         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24831          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24832           FND_LOG.string(FND_LOG.level_statement
24833                          ,l_module_name||'.copy_oks_k_lines_tl'
24834                          ,'After call to copy_oks_k_lines_tl: x_return_status:'||l_return_status
24835                           ||' '||SQLERRM
24836                           );
24837          END IF;
24838         END IF;
24839 
24840       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24841           RAISE G_EXCEPTION_HALT_VALIDATION;
24842       End If;
24843   End;
24844  END IF;
24845 ---------------------------------------------------------------------
24846 ------------Copy of OKS_REV_DISTRIBUTIONS--------------------------
24847  IF (P_Lines_Tbl.COUNT > 0) then
24848   Begin
24849         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24850          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24851           FND_LOG.string(FND_LOG.level_statement
24852                          ,l_module_name||'.copy_oks_rev_distributions'
24853                          ,'Before call to copy_oks_rev_distributions'
24854                           );
24855          END IF;
24856        END IF;
24857 
24858    copy_oks_rev_distributions(P_From_Chr_ID => P_From_Chr_ID
24859                          ,P_To_Chr_ID   => P_To_Chr_ID
24860                          ,P_Partial_Copy_YN => 'Y'
24861  			,P_Lines_Count => P_Lines_Tbl.COUNT
24862                          ,x_return_status => l_return_status);
24863 
24864         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24865          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24866           FND_LOG.string(FND_LOG.level_statement
24867                          ,l_module_name||'.copy_oks_rev_distributions'
24868                          ,'After call to copy_oks_rev_distributions: x_return_status:'||l_return_status
24869                           ||' '||SQLERRM
24870                           );
24871          END IF;
24872         END IF;
24873 
24874       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24875           RAISE G_EXCEPTION_HALT_VALIDATION;
24876       End If;
24877   End;
24878  END IF;
24879 ---------------------------------------------------------------------
24880 -------------Copy of OKS_QUALIFIERS----------------------------------
24881  IF (P_Lines_Tbl.COUNT > 0) then
24882   Begin
24883         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24884          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24885           FND_LOG.string(FND_LOG.level_statement
24886                          ,l_module_name||'.copy_oks_qualifiers'
24887                          ,'Before call to copy_oks_qualifiers'
24888                           );
24889          END IF;
24890         END IF;
24891 
24892    copy_oks_qualifiers(P_From_Chr_ID => P_From_Chr_ID
24893                          ,P_To_Chr_ID   => P_To_Chr_ID
24894                          ,P_Partial_Copy_YN => 'Y'
24895  			,P_Lines_Count => P_Lines_Tbl.COUNT
24896                          ,x_return_status => l_return_status);
24897 
24898         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24899          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24900           FND_LOG.string(FND_LOG.level_statement
24901                          ,l_module_name||'.copy_oks_qualifiers'
24902                          ,'After call to copy_oks_qualifiers: x_return_status:'||l_return_status
24903                           ||' '||SQLERRM
24904                           );
24905          END IF;
24906         END IF;
24907 
24908       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24909           RAISE G_EXCEPTION_HALT_VALIDATION;
24910       End If;
24911   End;
24912  END IF;
24913 ----------------------------------------------------------------------
24914 
24915 --------------Update Invoice Rule ID and Accounting Rule ID on all copied top lines (if NULL)----
24916 --------------with that on header. This routine at the same populates the Package variables for
24917 --------------Header Billing attributes
24918   IF (P_Lines_Tbl.COUNT > 0) then
24919     update_line_inv_and_acct_rule(P_To_Chr_ID => P_To_Chr_ID
24920    			         ,P_Partial_Copy_YN => 'Y'
24921 			         ,x_return_status => l_return_status
24922                                  );
24923   END IF;
24924 -------------------------------------------------------------------------------------------------
24925 --errorout_hk('Copy Line Components, P_Target_Contract_New_YN-'||P_Target_Contract_New_YN||',l_SrcContractPPSetupExists_YN-'||l_SrcContractPPSetupExists_YN);
24926 --errorout_hk('Copy Line Components, l_GCDPPSetupExists_YN-'||l_GCDPPSetupExists_YN);
24927   --================Start of Billing Schedule copy for Header and Lines==========
24928   IF (P_Target_Contract_New_YN = 'Y') then
24929    IF ( (l_SrcContractPPSetupExists_YN = 'Y') OR (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'N')) THEN
24930         -- Bulk Copy of Billing Schedule can be done from Source
24931 --errorout_hk('Copy Line Components, Copy of bill sch');
24932    -------------Copy of OKS_STREAM_LEVELS_B---------------------------
24933     Begin
24934        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24935         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24936          FND_LOG.string(FND_LOG.level_statement
24937                         ,l_module_name||'.copy_oks_stream_levels_b'
24938                         ,'Before call to copy_oks_stream_levels_b'
24939                          );
24940         END IF;
24941        END IF;
24942 
24943       copy_oks_stream_levels_b(P_From_Chr_ID => P_From_Chr_ID
24944                               ,P_To_Chr_ID   => P_To_Chr_ID
24945                               ,P_Partial_Copy_YN => 'Y'
24946   	                      ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24947                               ,P_Lines_Count => P_Lines_Tbl.COUNT
24948                               ,x_return_status => l_return_status);
24949 
24950        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24951         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24952          FND_LOG.string(FND_LOG.level_statement
24953                         ,l_module_name||'.copy_oks_stream_levels_b'
24954                         ,'After call to copy_oks_stream_levels_b: x_return_status:'||l_return_status
24955                          ||' '||SQLERRM
24956                          );
24957         END IF;
24958        END IF;
24959 
24960      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24961          RAISE G_EXCEPTION_HALT_VALIDATION;
24962      End If;
24963    End;
24964   -------------------------------------------------------------------
24965 
24966     -------------Copy of OKS_LEVEL_ELEMENTS---------------------------
24967    Begin
24968        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24969         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24970          FND_LOG.string(FND_LOG.level_statement
24971                         ,l_module_name||'.copy_oks_level_elements'
24972                         ,'Before call to copy_oks_level_elements'
24973                          );
24974         END IF;
24975        END IF;
24976 
24977     copy_oks_level_elements(P_From_Chr_ID => P_From_Chr_ID
24978                           ,P_To_Chr_ID   => P_To_Chr_ID
24979                           ,P_Partial_Copy_YN => 'Y'
24980                           ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24981                           ,P_Lines_Count => P_Lines_Tbl.COUNT
24982                           ,x_return_status => l_return_status);
24983 
24984        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24985         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24986          FND_LOG.string(FND_LOG.level_statement
24987                         ,l_module_name||'.copy_oks_level_elements'
24988                         ,'After call to copy_oks_level_elements: x_return_status:'||l_return_status
24989                          ||' '||SQLERRM
24990                          );
24991         END IF;
24992        END IF;
24993 
24994      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24995          RAISE G_EXCEPTION_HALT_VALIDATION;
24996      End If;
24997    End;
24998   --------------------------------------------------------------------
24999   --------------Copy of Billing schedules for Skipped Lines-----------
25000    Begin
25001       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25002        IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25003         FND_LOG.string(FND_LOG.level_statement
25004                        ,l_module_name||'.copy_bsch_for_SkippedLines'
25005                        ,'Before call to copy_bsch_for_SkippedLines'
25006                         );
25007        END IF;
25008       END IF;
25009 
25010     copy_bsch_for_SkippedLines(P_To_Chr_ID  => P_To_Chr_ID
25011             			     ,P_From_Chr_ID => P_From_Chr_ID
25012        			     ,P_Partial_Copy_YN => 'Y'
25013                              ,p_init_msg_list => p_init_msg_list
25014                              ,x_return_status => l_return_status
25015                              ,x_msg_count => x_msg_count
25016                              ,x_msg_data => x_msg_data);
25017         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25018          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25019           FND_LOG.string(FND_LOG.level_statement
25020                         ,l_module_name||'.copy_bsch_for_SkippedLines'
25021                         ,'After call to copy_bsch_for_SkippedLines: x_return_status:'||l_return_status
25022                          ||' '||SQLERRM
25023                          );
25024          END IF;
25025         END IF;
25026 
25027 
25028 
25029       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25030           RAISE G_EXCEPTION_HALT_VALIDATION;
25031       End If;
25032 
25033    End;
25034   --------------------------------------------------------------------
25035   ELSIF (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'Y') THEN
25036   --errorout_hk('Copy Line Components, SRC PP Setup  N and GCD exists, calling create_bsch_using_ppsetup');
25037         create_bsch_using_PPSetup(P_To_Chr_ID        => P_To_Chr_ID
25038                                 ,P_From_Chr_ID      => P_From_Chr_ID
25039                                 ,P_Partial_Copy_YN  => 'Y'
25040                                 ,P_Target_Contract_New_YN => 'Y'
25041                                 ,p_init_msg_list    => p_init_msg_list
25042                                 ,x_return_status    => l_return_status
25043                                 ,x_msg_count        => x_msg_count
25044                                 ,x_msg_data         => x_msg_data);
25045 
25046       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25047           RAISE G_EXCEPTION_HALT_VALIDATION;
25048       End If;
25049 
25050 
25051   END IF; -- End of l_SrcContractPPSetupExists_YN check
25052 
25053  ELSIF (P_Target_Contract_New_YN = 'N') THEN
25054 
25055   IF (P_Lines_Tbl.COUNT > 0) then
25056   --errorout_hk('Copy Line Components, Target is Existing, calling create_bsch_using_ppsetup');
25057         create_bsch_using_PPSetup(P_To_Chr_ID        => P_To_Chr_ID
25058                                  ,P_From_Chr_ID      => P_From_Chr_ID
25059 				 ,P_Partial_Copy_YN  => 'Y'
25060 				 ,P_Target_Contract_New_YN => 'N'
25061 				 ,p_init_msg_list    => p_init_msg_list
25062 				 ,x_return_status    => l_return_status
25063 				 ,x_msg_count        => x_msg_count
25064 				 ,x_msg_data         => x_msg_data);
25065 
25066       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25067           RAISE G_EXCEPTION_HALT_VALIDATION;
25068       End If;
25069   END IF;
25070 
25071  END IF; --End of P_Target_Contract_New_YN check
25072  --================End of Billing Schedule copy===============================
25073 
25074  --================Start of Coverage Schedule copy for Lines==================
25075 
25076  IF (P_Lines_Tbl.COUNT > 0) then
25077    -------------Copy of OKS_COVERAGE_TIMEZONES------------------------
25078    Begin
25079        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25080         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25081          FND_LOG.string(FND_LOG.level_statement
25082                         ,l_module_name||'.copy_oks_coverage_timezones'
25083                         ,'Before call to copy_oks_coverage_timezones'
25084                          );
25085         END IF;
25086        END IF;
25087 
25088    copy_oks_coverage_timezones(P_From_Chr_ID => P_From_Chr_ID
25089                               ,P_To_Chr_ID   => P_To_Chr_ID
25090                               ,P_Partial_Copy_YN => 'Y'
25091 			      ,P_Lines_Count => P_Lines_Tbl.COUNT
25092                               ,x_return_status => l_return_status);
25093 
25094        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25095         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25096          FND_LOG.string(FND_LOG.level_statement
25097                         ,l_module_name||'.copy_oks_coverage_timezones'
25098                         ,'After call to copy_oks_coverage_timezones: x_return_status:'||l_return_status
25099                          ||' '||SQLERRM
25100                          );
25101         END IF;
25102        END IF;
25103 
25104      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25105          RAISE G_EXCEPTION_HALT_VALIDATION;
25106      End If;
25107    End;
25108   ---------------------------------------------------------------------
25109    -------------Copy of OKS_COVERAGE_TIMES-----------------------------
25110    Begin
25111        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25112         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25113          FND_LOG.string(FND_LOG.level_statement
25114                         ,l_module_name||'.copy_oks_coverage_times'
25115                         ,'Before call to copy_oks_coverage_times'
25116                          );
25117         END IF;
25118        END IF;
25119 
25120    copy_oks_coverage_times(P_From_Chr_ID => P_From_Chr_ID
25121                               ,P_To_Chr_ID   => P_To_Chr_ID
25122                               ,P_Partial_Copy_YN => 'Y'
25123 	          	      ,P_Lines_Count => P_Lines_Tbl.COUNT
25124                               ,x_return_status => l_return_status);
25125 
25126        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25127         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25128          FND_LOG.string(FND_LOG.level_statement
25129                         ,l_module_name||'.copy_oks_coverage_times'
25130                         ,'After call to copy_oks_coverage_times: x_return_status:'||l_return_status
25131                          ||' '||SQLERRM
25132                          );
25133         END IF;
25134        END IF;
25135 
25136      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25137          RAISE G_EXCEPTION_HALT_VALIDATION;
25138      End If;
25139    End;
25140   ---------------------------------------------------------------------
25141  END IF;
25142   --=======================End of Coverage Schedule copy==========================
25143 
25144  --=======================Start of PM Schedule Copy for Line=====================
25145 
25146  IF (P_Lines_Tbl.COUNT > 0) then
25147   -------------Copy of OKS_PM_ACTIVITIES-------------------------------
25148    Begin
25149        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25150         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25151          FND_LOG.string(FND_LOG.level_statement
25152                         ,l_module_name||'.copy_oks_pm_activities'
25153                         ,'Before call to copy_oks_pm_activities'
25154                          );
25155         END IF;
25156        END IF;
25157 
25158    copy_oks_pm_activities(P_From_Chr_ID => P_From_Chr_ID
25159                          ,P_To_Chr_ID   => P_To_Chr_ID
25160                          ,P_Partial_Copy_YN => 'Y'
25161 			 ,P_Lines_Count => P_Lines_Tbl.COUNT
25162                          ,x_return_status => l_return_status);
25163 
25164        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25165         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25166          FND_LOG.string(FND_LOG.level_statement
25167                         ,l_module_name||'.copy_oks_pm_activities'
25168                         ,'After call to copy_oks_pm_activities: x_return_status:'||l_return_status
25169                          ||' '||SQLERRM
25170                          );
25171         END IF;
25172        END IF;
25173 
25174      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25175          RAISE G_EXCEPTION_HALT_VALIDATION;
25176      End If;
25177    End;
25178   ---------------------------------------------------------------------
25179   --------------Copy of OKS_PM_STREAM_LEVELS---------------------------
25180    Begin
25181        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25182         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25183          FND_LOG.string(FND_LOG.level_statement
25184                         ,l_module_name||'.copy_oks_pm_stream_levels'
25185                         ,'Before call to copy_oks_pm_stream_levels'
25186                          );
25187         END IF;
25188        END IF;
25189 
25190    copy_oks_pm_stream_levels(P_From_Chr_ID => P_From_Chr_ID
25191                          ,P_To_Chr_ID   => P_To_Chr_ID
25192                          ,P_Partial_Copy_YN => 'Y'
25193 			 ,P_Lines_Count => P_Lines_Tbl.COUNT
25194                          ,x_return_status => l_return_status);
25195 
25196        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25197         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25198          FND_LOG.string(FND_LOG.level_statement
25199                         ,l_module_name||'.copy_oks_pm_stream_levels'
25200                         ,'After call to copy_oks_pm_stream_levels: x_return_status:'||l_return_status
25201                          ||' '||SQLERRM
25202                          );
25203         END IF;
25204        END IF;
25205 
25206      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25207          RAISE G_EXCEPTION_HALT_VALIDATION;
25208      End If;
25209    End;
25210 
25211   ---------------------------------------------------------------------
25212   -------------Copy of OKS_PM_SCHEDULES--------------------------------
25213    Begin
25214        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25215         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25216          FND_LOG.string(FND_LOG.level_statement
25217                         ,l_module_name||'.copy_oks_pm_schedules'
25218                         ,'Before call to copy_oks_pm_schedules'
25219                          );
25220         END IF;
25221        END IF;
25222 
25223    copy_oks_pm_schedules(P_From_Chr_ID => P_From_Chr_ID
25224                          ,P_To_Chr_ID   => P_To_Chr_ID
25225                          ,P_Partial_Copy_YN => 'Y'
25226 			 ,P_Lines_Count => P_Lines_Tbl.COUNT
25227                          ,x_return_status => l_return_status);
25228 
25229        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25230         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25231          FND_LOG.string(FND_LOG.level_statement
25232                         ,l_module_name||'.copy_oks_pm_schedules'
25233                         ,'After call to copy_oks_pm_schedules: x_return_status:'||l_return_status
25234                          ||' '||SQLERRM
25235                          );
25236         END IF;
25237        END IF;
25238 
25239      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25240          RAISE G_EXCEPTION_HALT_VALIDATION;
25241      End If;
25242    End;
25243   ---------------------------------------------------------------------
25244   --------Creation of PM Stream Levels and PM Schedules for those lines whose dates were changed to fit the target-----
25245   Begin
25246   copy_pm_for_SkippedLines(p_api_version  => p_api_version
25247 			      ,p_init_msg_list => p_init_msg_list
25248 			      ,P_To_Chr_ID => P_To_Chr_ID
25249                               ,x_return_status => l_return_status
25250                               ,x_msg_count  => x_msg_count
25251                               ,x_msg_data   => x_msg_data);
25252 
25253      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25254          RAISE G_EXCEPTION_HALT_VALIDATION;
25255      End If;
25256   End;
25257  ----------------------------------------------------------------------
25258 
25259  END IF;
25260  --=====================End of PM Schedule Copy=================================
25261 
25262  --=====================Start of Action Times copy for Lines====================
25263 
25264  IF (P_Lines_Tbl.COUNT > 0) then
25265   --------------Copy of OKS_ACTION_TIME_TYPES-------------------------
25266    Begin
25267        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25268         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25269          FND_LOG.string(FND_LOG.level_statement
25270                         ,l_module_name||'.copy_oks_action_time_types'
25271                         ,'Before call to copy_oks_action_time_types'
25272                          );
25273         END IF;
25274        END IF;
25275 
25276 
25277    copy_oks_action_time_types(P_From_Chr_ID => P_From_Chr_ID
25278                              ,P_To_Chr_ID   => P_To_Chr_ID
25279                              ,P_Partial_Copy_YN => 'Y'
25280 			     ,P_Lines_Count => P_Lines_Tbl.COUNT
25281                              ,x_return_status => l_return_status);
25282 
25283        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25284         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25285          FND_LOG.string(FND_LOG.level_statement
25286                         ,l_module_name||'.copy_oks_action_time_types'
25287                         ,'After call to copy_oks_action_time_types: x_return_status:'||l_return_status
25288                          ||' '||SQLERRM
25289                          );
25290         END IF;
25291        END IF;
25292 
25293      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25294          RAISE G_EXCEPTION_HALT_VALIDATION;
25295      End If;
25296    End;
25297   ---------------------------------------------------------------------
25298   --------------Copy of OKS_ACTION_TIMES-------------------------------
25299    Begin
25300        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25301         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25302          FND_LOG.string(FND_LOG.level_statement
25303                         ,l_module_name||'.copy_oks_action_times'
25304                         ,'Before call to copy_oks_action_times'
25305                          );
25306         END IF;
25307        END IF;
25308 
25309    copy_oks_action_times(P_From_Chr_ID => P_From_Chr_ID
25310                         ,P_To_Chr_ID   => P_To_Chr_ID
25311                         ,P_Partial_Copy_YN => 'Y'
25312 			,P_Lines_Count => P_Lines_Tbl.COUNT
25313                         ,x_return_status => l_return_status);
25314 
25315        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25316         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25317          FND_LOG.string(FND_LOG.level_statement
25318                         ,l_module_name||'.copy_oks_action_times'
25319                         ,'After call to copy_oks_action_times: x_return_status:'||l_return_status
25320                          ||' '||SQLERRM
25321                          );
25322         END IF;
25323        END IF;
25324 
25325      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25326          RAISE G_EXCEPTION_HALT_VALIDATION;
25327      End If;
25328    End;
25329   ---------------------------------------------------------------------
25330  END IF;
25331 
25332  --=====================End of Action Times copy================================
25333 
25334  --=====================Start of BillRate Schedule copy for Lines===============
25335 
25336  IF (P_Lines_Tbl.COUNT > 0) then
25337   --------------Copy of OKS_BILLRATE_SCHEDULES-------------------------------
25338    Begin
25339        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25340         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25341          FND_LOG.string(FND_LOG.level_statement
25342                         ,l_module_name||'.copy_oks_bill_rate_schedules'
25343                         ,'Before call to copy_oks_bill_rate_schedules'
25344                          );
25345         END IF;
25346        END IF;
25347 
25348    copy_oks_billrate_schedules(P_From_Chr_ID => P_From_Chr_ID
25349                               ,P_To_Chr_ID   => P_To_Chr_ID
25350                               ,P_Partial_Copy_YN => 'Y'
25351 			      ,P_Lines_Count => P_Lines_Tbl.COUNT
25352                               ,x_return_status => l_return_status);
25353 
25354        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25355         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25356          FND_LOG.string(FND_LOG.level_statement
25357                         ,l_module_name||'.copy_oks_bill_rate_schedules'
25358                         ,'After call to copy_oks_bill_rate_schedules: x_return_status:'||l_return_status
25359                          ||' '||SQLERRM
25360                          );
25361         END IF;
25362        END IF;
25363 
25364      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25365          RAISE G_EXCEPTION_HALT_VALIDATION;
25366      End If;
25367    End;
25368 
25369   ---------------------------------------------------------------------
25370  END IF;
25371 
25372  --=====================End of BillRate Schedule copy============================
25373 
25374 
25375    ---------------Copy of OKS_K_SALES_CREDITS---------------------------
25376    Begin
25377        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25378         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25379          FND_LOG.string(FND_LOG.level_statement
25380                         ,l_module_name||'.copy_oks_k_sales_credits'
25381                         ,'Before call to copy_oks_k_sales_credits'
25382                          );
25383         END IF;
25384        END IF;
25385 
25386    copy_oks_k_sales_credits(P_From_Chr_ID => P_From_Chr_ID
25387                            ,P_To_Chr_ID   => P_To_Chr_ID
25388                            ,P_Partial_Copy_YN => 'Y'
25389 			   ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
25390                            ,P_Lines_Count => P_Lines_Tbl.COUNT
25391                            ,x_return_status => l_return_status);
25392 
25393        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25394         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25395          FND_LOG.string(FND_LOG.level_statement
25396                         ,l_module_name||'.copy_oks_k_sales_credits'
25397                         ,'After call to copy_oks_k_sales_credits: x_return_status:'||l_return_status
25398                          ||' '||SQLERRM
25399                          );
25400         END IF;
25401        END IF;
25402 
25403      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25404          RAISE G_EXCEPTION_HALT_VALIDATION;
25405      End If;
25406    End;
25407   ---------------------------------------------------------------------
25408 
25409 
25410     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25411       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25412          FND_LOG.string(FND_LOG.level_procedure
25413                         ,l_module_name||'.End'
25414                         ,',x_return_status='||x_return_status
25415 			||', P_To_Chr_ID ='||P_To_Chr_ID
25416                          );
25417       END IF;
25418     END IF;
25419 
25420 
25421 
25422   EXCEPTION
25423   WHEN G_EXCEPTION_HALT_VALIDATION then
25424     x_return_status := l_return_status;
25425       IF GetOKCOKSLinesB_Temp%ISOPEN THEN
25426         CLOSE GetOKCOKSLinesB_Temp;
25427       ELSIF GetOKCOKSLinesB_Temp_termn%ISOPEN THEN
25428         CLOSE GetOKCOKSLinesB_Temp_termn;
25429       ELSIF GetOKCOKSLinesB_Temp_cancel%ISOPEN THEN
25430         CLOSE GetOKCOKSLinesB_Temp_cancel;
25431       ELSIF GetOKCOKSLinesB_Temp_exclude%ISOPEN THEN
25432         CLOSE GetOKCOKSLinesB_Temp_exclude;
25433       END IF;
25434 
25435     OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
25436     RETURN;
25437 
25438 End copy_line_components;
25439 
25440 --=================================End Copy_Line_Components=========================================
25441 
25442 --===================================Start COPY_CONTRACT===========================================
25443   ----------------------------------------------------------------------------
25444   --Proceudre copy_contract. Copies the contract header and all its components.
25445   ----------------------------------------------------------------------------
25446   PROCEDURE copy_contract(
25447     p_api_version                  IN NUMBER,
25448     p_init_msg_list                IN VARCHAR2 ,
25449     x_return_status                OUT NOCOPY VARCHAR2,
25450     x_msg_count                    OUT NOCOPY NUMBER,
25451     x_msg_data                     OUT NOCOPY VARCHAR2,
25452     p_commit			          IN VARCHAR2 ,
25453     p_chr_id                  	   IN NUMBER,
25454     p_contract_number		   IN VARCHAR2,
25455     p_contract_number_modifier     IN VARCHAR2,
25456     p_to_template_yn			   IN VARCHAR2,
25457     P_renew_ref_yn                 IN VARCHAR2,
25458     x_to_chr_id                       OUT NOCOPY NUMBER,
25459     p_include_cancelled_lines  IN VARCHAR2 DEFAULT 'Y',
25460     p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
25461 
25462     l_api_name        CONSTANT VARCHAR2(30) := 'COPY_CONTRACT';
25463     l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
25464 
25465     l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
25466     --l_old_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
25467     l_to_chr_id			NUMBER;
25468     l_cle_id_out		NUMBER;
25469     l_rgp_id			NUMBER;
25470     l_cat_id			NUMBER;
25471     l_cpl_id			NUMBER;
25472     l_cnh_id			NUMBER;
25473     l_result			BOOLEAN;
25474     l_category          VARCHAR2(200); --added for bug 3672759
25475 
25476     --11510
25477     l_source_doc_type VARCHAR2(60);
25478     l_source_doc_ID   NUMBER;
25479     l_target_doc_type VARCHAR2(60);
25480     l_target_doc_id   NUMBER;
25481     l_keep_version VARCHAR2(1);
25482     l_eff_date DATE;
25483 
25484 
25485     -- 11510 get chr start date for effective date for copy_doc
25486     CURSOR c_art_eff_date (p_doc_type VARCHAR2,p_doc_id NUMBER) IS
25487     SELECT article_effective_date
25488      FROM okc_template_usages_v
25489      WHERE document_type=p_doc_type AND document_id=p_doc_id;
25490 ---------------------------------------------------
25491     CURSOR GetHdrTrxnInfo IS
25492     SELECT
25493      oks.TRXN_EXTENSION_ID
25494     ,okc.BILL_TO_SITE_USE_ID
25495     FROM
25496      OKC_K_HEADERS_ALL_B okc
25497     ,OKS_K_HEADERS_B oks
25498     WHERE
25499     okc.id = oks.chr_id
25500     and okc.id = p_chr_id;
25501 
25502     l_Hdr_Bill_To_Site_Use_ID NUMBER;
25503     l_Hdr_Old_Trxn_Extn_ID NUMBER;
25504     l_Hdr_New_Trxn_Extn_ID NUMBER;
25505 
25506 
25507 ---------------------------------------------------
25508 
25509   BEGIN
25510 
25511 
25512     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25513       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25514          FND_LOG.string(FND_LOG.level_procedure
25515 			,l_module_name||'.Begin'
25516 			,'p_chr_id='|| p_chr_id
25517 			 ||',p_contract_number='||p_contract_number
25518 			 ||',p_contract_number_modifier='||p_contract_number_modifier
25519 			 ||',p_renew_ref_yn='||p_renew_ref_yn
25520 			 ||',p_to_template_yn='||p_to_template_yn
25521 			 ||',p_commit='||p_commit);
25522       END IF;
25523     END IF;
25524 
25525     SAVEPOINT copy_contract;
25526 
25527 
25528 ----------------------------------------------------
25529     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
25530       FND_LOG.string(FND_LOG.level_statement
25531                     ,l_module_name
25532                     ,'Before Is_Copy_Allowed'
25533                     );
25534     End If;
25535 
25536     l_result := IS_COPY_ALLOWED(p_chr_id, NULL);
25537 
25538     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
25539       FND_LOG.string(FND_LOG.level_statement
25540                     ,l_module_name
25541                     ,'After Is_Copy_Allowed'
25542                     );
25543     End If;
25544 
25545     IF NOT l_result Then
25546 	 -- notify caller of an UNEXPECTED error
25547       x_return_status := FND_API.G_RET_STS_ERROR;
25548       RAISE G_EXCEPTION_HALT_VALIDATION;
25549     END IF;
25550 
25551     -- Intitialize globals.
25552     /***
25553     IF g_events.COUNT > 0 THEN
25554        g_events.DELETE;
25555     END IF;
25556     ***/
25557 
25558     IF g_op_lines.COUNT > 0 THEN
25559 	  g_op_lines.DELETE;
25560     END IF;
25561 
25562 
25563 
25564     x_return_status := l_return_status;
25565 
25566      IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25567       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25568          FND_LOG.string(FND_LOG.level_procedure
25569                         ,l_module_name||'.Copy_Contract_Header'
25570                         ,'Before call to Copy_Contract_Header'
25571                          );
25572       END IF;
25573     END IF;
25574 
25575     copy_contract_header(
25576 	      p_api_version		     => p_api_version,
25577            p_init_msg_list		=> p_init_msg_list,
25578            x_return_status 		=> l_return_status,
25579            x_msg_count     		=> x_msg_count,
25580            x_msg_data      		=> x_msg_data,
25581            p_from_chr_id	        => p_chr_id,
25582            p_contract_number		=> p_contract_number,
25583            p_contract_number_modifier	=> p_contract_number_modifier,
25584 	      p_to_template_yn        => p_to_template_yn,
25585 	      p_renew_ref_yn          => p_renew_ref_yn,
25586            x_to_chr_id	           => l_to_chr_id);
25587 
25588     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25589       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25590          FND_LOG.string(FND_LOG.level_procedure
25591                         ,l_module_name||'.Copy_Contract_Header'
25592                         ,'After call to Copy_Contract_Header x_return_status='||l_return_status
25593                          );
25594       END IF;
25595     END IF;
25596 
25597     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25598         x_return_status := l_return_status;
25599         RAISE G_EXCEPTION_HALT_VALIDATION;
25600     END IF;
25601 
25602     x_to_chr_id := l_to_chr_id; --the new contract header id is passed out.
25603 
25604 --===================================Start of Copy Events========================================
25605  --Header Level condition copy no longer supported
25606 --=================================End of Copy Events============================================
25607 
25608 --=================================Start of Copy Contract Document===============================
25609     l_keep_version := 'Y';
25610      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
25611         p_api_version   => p_api_version,
25612         x_return_status => l_return_status,
25613         x_msg_data      => x_msg_data,
25614         x_msg_count     => x_msg_count,
25615         p_chr_id        => p_chr_id,
25616         x_doc_id        => l_source_doc_id,
25617         x_doc_type      => l_source_doc_type
25618     );
25619 
25620         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25621         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
25622             x_return_status := l_return_status;
25623             RAISE G_EXCEPTION_HALT_VALIDATION;
25624         --  ELSE
25625         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
25626         --      x_return_status := l_return_status;
25627         --    END IF;
25628         --  END IF;
25629         END IF;
25630 
25631      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
25632         p_api_version   => p_api_version,
25633         x_return_status => l_return_status,
25634         x_msg_data      => x_msg_data,
25635         x_msg_count     => x_msg_count,
25636         p_chr_id        => l_to_chr_id,
25637         x_doc_id        => l_target_doc_id,
25638         x_doc_type      => l_target_doc_type);
25639 
25640         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25641         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
25642             x_return_status := l_return_status;
25643             RAISE G_EXCEPTION_HALT_VALIDATION;
25644         --  ELSE
25645         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
25646         --      x_return_status := l_return_status;
25647         --    END IF;
25648         --  END IF;
25649         END IF;
25650     OPEN c_art_eff_date(l_source_doc_type, l_source_doc_id);
25651     FETCH c_art_eff_date INTO l_eff_date;
25652     CLOSE c_art_eff_date;
25653 
25654       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25655        IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25656          FND_LOG.string(FND_LOG.level_statement
25657                        ,l_module_name||'.OKC_TERMS_COPY_GRP.copy_doc'
25658                        ,'Before call to OKC_TERMS_COPY_GRP.copy_doc'
25659 		        );
25660        END IF;
25661       END IF;
25662 
25663       OKC_TERMS_COPY_GRP.copy_doc(
25664         p_api_version	     => p_api_version,
25665         x_return_status 	     => l_return_status,
25666         x_msg_count     	     => x_msg_count,
25667         x_msg_data      	     => x_msg_data,
25668         p_source_doc_type      => l_source_doc_type,
25669         p_source_doc_id        => l_source_doc_id,
25670         p_target_doc_type      => l_target_doc_type,
25671         p_target_doc_id        => l_target_doc_id,
25672         p_keep_version         => l_keep_version,
25673         p_article_effective_date => Nvl(l_eff_date,Sysdate),
25674         p_document_number      => p_contract_number,
25675         p_allow_duplicate_terms=>'Y');
25676 
25677        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25678         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25679          FND_LOG.string(FND_LOG.level_statement
25680                         ,l_module_name||'.OKC_TERMS_COPY_GRP.copy_doc'
25681                         ,'After call to OKC_TERMS_COPY_GRP.copy_doc: x_return_status:'||l_return_status
25682                          ||' '||SQLERRM
25683                          );
25684         END IF;
25685        END IF;
25686 
25687         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25688         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
25689             x_return_status := l_return_status;
25690             RAISE G_EXCEPTION_HALT_VALIDATION;
25691         --  ELSE
25692         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
25693         --      x_return_status := l_return_status;
25694         --    END IF;
25695         --  END IF;
25696         END IF;
25697 --================================End of Copy Contract Document===================================
25698 
25699 --===================-Start of Copy OKS Header attributes ========================================
25700       /*--Call to copy source contract record in OKS_K_HEADERS_B */
25701 	  IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25702 	    IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25703 	      FND_LOG.string(FND_LOG.level_statement
25704 	          ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
25705 	          ,'Before call to oks_setup_util_pub.copy_hdr_attr'
25706 	        	 ||' P_From_Chr_ID = '||p_chr_id
25707 			 ||',P_To_Chr_ID = '||l_to_chr_id
25708 			       );
25709 	    END IF;
25710 	  END IF;
25711 
25712        OKS_SETUP_UTIL_PUB.copy_hdr_attr
25713 	                       (p_chr_id        => p_chr_id --Source Contract Header ID
25714 			       ,p_new_chr_id    => l_to_chr_id --Target Contract Header ID
25715 			       ,p_duration_match => NULL
25716 			       ,p_renew_ref_YN => P_Renew_Ref_YN
25717 			       ,x_return_status => l_return_status);
25718        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25719         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25720          FND_LOG.string(FND_LOG.level_statement
25721                         ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
25722                         ,'After call to oks_setup_util_pub.copy_hdr_attr: x_return_status:'||l_return_status
25723                          ||' '||SQLERRM
25724                          );
25725         END IF;
25726        END IF;
25727 
25728 	  IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25729 	      x_return_status := l_return_status;
25730 	      RAISE G_EXCEPTION_HALT_VALIDATION;
25731 	  END IF;
25732 --===================End of Copy OKS Header attributes===========================================
25733 
25734 --==================Generate new transaction extension for Header================================
25735 
25736    Begin
25737    --Get Header Trxn ID and Bill_To_Site_Use_ID--
25738 
25739    OPEN GetHdrTrxnInfo;
25740    FETCH GetHdrTrxnInfo into l_Hdr_Old_Trxn_Extn_ID,l_Hdr_Bill_To_Site_Use_ID;
25741    CLOSE GetHdrTrxnInfo;
25742 
25743     If (l_Hdr_Old_Trxn_Extn_ID IS NOT NULL AND l_Hdr_Bill_To_Site_Use_ID IS NOT NULL) then
25744 
25745        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25746         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25747          FND_LOG.string(FND_LOG.level_statement
25748                         ,l_module_name||'.Create_Transaction_Extension'
25749                         ,'Before call to Create_Transaction_Extension for Header in COPY_CONTRACT'
25750 			||'Bill to site use id='||l_Hdr_Bill_To_Site_Use_ID
25751                         ||'Old Trxn ID='||l_Hdr_Old_Trxn_Extn_ID
25752                          );
25753         END IF;
25754        END IF;
25755 
25756         OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
25757                                       ,P_Init_Msg_List => p_init_msg_list
25758                                       ,P_Header_ID => l_to_chr_id
25759                                       ,P_Line_ID => NULL
25760                                       ,P_Source_Trx_Ext_ID => l_Hdr_Old_Trxn_Extn_ID
25761 				      ,P_Cust_Acct_ID => NULL
25762                                       ,P_Bill_To_Site_Use_ID => l_Hdr_Bill_To_Site_Use_ID
25763                                       ,x_entity_id => l_Hdr_New_Trxn_Extn_ID
25764                                       ,x_msg_data => x_msg_data
25765                                       ,x_msg_count => x_msg_count
25766                                       ,x_return_status => l_return_status) ;
25767 
25768 
25769        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25770         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25771          FND_LOG.string(FND_LOG.level_statement
25772                         ,l_module_name||'.Create_Transaction_Extension'
25773                         ,'After call to Create_Transaction_Extension for Header: x_return_status :'||l_return_status
25774                         ||'New Trxn ID='||l_Hdr_New_Trxn_Extn_ID
25775                          );
25776         END IF;
25777        END IF;
25778 
25779        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25780         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
25781               x_return_status := l_return_status;
25782               RAISE G_EXCEPTION_HALT_VALIDATION;
25783         END IF;
25784        END IF;
25785 
25786        UPDATE OKS_K_HEADERS_B
25787        SET TRXN_EXTENSION_ID = l_Hdr_New_Trxn_Extn_ID
25788        WHERE CHR_ID = l_to_chr_id;
25789 
25790         If SQL%NOTFOUND then
25791           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25792            FND_LOG.string(FND_LOG.level_statement
25793                         ,l_module_name||'.Create_Transaction_Extension'
25794                         ,'Error in Update OKS_K_HEADERS_B, row not found for update'
25795                          );
25796           END IF;
25797          l_return_status := FND_API.G_RET_STS_ERROR;
25798          RAISE G_EXCEPTION_HALT_VALIDATION;
25799         End If;
25800 
25801 
25802    End If;
25803   End;
25804 
25805 --==================End of Generate new transaction extension for Header=========================
25806 
25807 --===================Start of Copy OKS Header Notes=============================================
25808      /*--Call to copy Header notes -----*/
25809 	IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25810 	 IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25811 	  FND_LOG.string(FND_LOG.level_statement
25812 	  		     ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
25813 				,'Before call to oks_coverages_pvt.copy_k_hdr_notes'
25814 				);
25815 	 END IF;
25816 	END IF;
25817 
25818      OKS_COVERAGES_PVT.COPY_K_HDR_NOTES(
25819 	     p_api_version           => p_api_version,
25820 		p_init_msg_list         => p_init_msg_list,
25821 		p_chr_id                => l_to_chr_id, --Target Contract Header ID
25822 		x_return_status         => l_return_status,
25823 		x_msg_count             => x_msg_count,
25824 		x_msg_data              => x_msg_data);
25825 
25826        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25827         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25828          FND_LOG.string(FND_LOG.level_statement
25829                         ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
25830                         ,'After call to oks_coverages_pvt.copy_k_hdr_notes: x_return_status:'||l_return_status
25831                          ||' '||SQLERRM
25832                          );
25833         END IF;
25834        END IF;
25835 
25836        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25837         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR OR
25838             l_return_status = FND_API.G_RET_STS_ERROR) THEN
25839          x_return_status := l_return_status;
25840          RAISE G_EXCEPTION_HALT_VALIDATION;
25841         ELSE
25842 	     x_return_status := l_return_status; -- donot raise exception if l_return_status = 'W'
25843 	END IF;
25844        END IF;
25845 --=====================End of Copy OKS Header Notes=============================================
25846 
25847 --=====================Start of Copy Lines=====================================================
25848        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25849         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25850          FND_LOG.string(FND_LOG.level_statement
25851                         ,l_module_name||'.copy_lines'
25852                         ,'Before call to copy_lines , P_From_Chr_ID='||p_chr_id
25853                        ||' P_To_Chr_ID='||l_to_chr_id
25854 		       ||' P_Renew_Ref_YN='||P_Renew_Ref_YN
25855 		       ||'x_return_status ='||x_return_status
25856  		       ||'Time Stamp before copy_lines :'||to_char(sysdate,'DD-MON-YYYY HH:MI:SS')
25857                          );
25858         END IF;
25859        END IF;
25860        copy_lines(
25861           p_api_version      => p_api_version
25862          ,p_init_msg_list    => p_init_msg_list
25863          ,x_return_status    => l_return_status
25864          ,x_msg_count        => x_msg_count
25865          ,x_msg_data         => x_msg_data
25866          ,P_From_Chr_ID      => p_chr_id
25867          ,P_To_Chr_ID        => l_to_chr_id
25868          ,P_Renew_Ref_YN     => P_Renew_Ref_YN
25869 	 ,p_include_cancelled_lines => p_include_cancelled_lines
25870 	 ,p_include_terminated_lines => p_include_terminated_lines) ;
25871 
25872        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25873         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25874          FND_LOG.string(FND_LOG.level_statement
25875                         ,l_module_name||'.copy_lines'
25876                         ,'After call to copy_lines: x_return_status:'||l_return_status
25877                          ||' '||SQLERRM
25878  		         ||'Time Stamp after copy_lines:'||to_char(sysdate,'DD-MON-YYYY HH:MI:SS')
25879                          );
25880         END IF;
25881        END IF;
25882 
25883        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25884         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR OR
25885             l_return_status = FND_API.G_RET_STS_ERROR) THEN
25886          x_return_status := l_return_status;
25887          RAISE G_EXCEPTION_HALT_VALIDATION;
25888         ELSE
25889              x_return_status := l_return_status; -- donot raise exception if l_return_status = 'W'
25890         END IF;
25891        END IF;
25892 --=====================End of Copy Lines======================================================
25893 
25894 
25895   IF (l_debug = 'Y') THEN
25896      OKC_DEBUG.log('10000 : Exiting Copy_contract ', 2);
25897      OKC_DEBUG.ReSet_Indentation;
25898   END IF;
25899 
25900 /*
25901  IF FND_API.to_boolean(p_commit) THEN
25902                     COMMIT;
25903  END IF;
25904 */
25905 
25906 
25907 
25908   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25909     IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25910          FND_LOG.string(FND_LOG.level_procedure
25911                         ,l_module_name||'.End'
25912                         ,'x_to_chr_id='||x_to_chr_id
25913                         ||',x_return_status='||x_return_status);
25914     END IF;
25915   END IF;
25916 
25917   EXCEPTION
25918     WHEN G_EXCEPTION_HALT_VALIDATION THEN
25919             ROLLBACK to copy_contract;
25920 	    IF (l_debug = 'Y') THEN
25921               null;
25922    	    OKC_DEBUG.ReSet_Indentation;
25923 	    END IF;
25924 
25925     WHEN OTHERS THEN
25926       ROLLBACK to copy_contract;
25927       -- store SQL error message on message stack for caller
25928       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
25929       -- notify caller of an UNEXPECTED error
25930       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
25931 	 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
25932 
25933   END COPY_CONTRACT;
25934 --=========================================End COPY_CONTRACT=============================================
25935 
25936 --====================================================================
25937 --Function StatusFitsQAHoldCriteria(p_current_status IN VARCHAR2)
25938 --Function to check to see if the current status of the contract fits the criteria to be changed to QA_HOLD
25939 --===================================================================
25940  Function SeedStatus(p_current_status IN VARCHAR2) RETURN VARCHAR2 IS
25941 l_result OKC_STATUSES_B.STE_CODE%TYPE;
25942  Begin
25943    select ste_code
25944    into l_result
25945    from okc_statuses_b
25946    where code = p_current_status;
25947 
25948       RETURN l_result;
25949 
25950         EXCEPTION
25951           WHEN OTHERS THEN
25952 	   l_result := NULL;
25953 	   FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Error in SeedStatus' , substr(SQLERRM,1,240));
25954            IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
25955             FND_LOG.string(FND_LOG.level_unexpected
25956                    ,'SeedStatus.EXCEPTION'
25957                    ,'Exception in call to SeedStatus : SQLERRM ='||SQLERRM
25958                          );
25959            END IF;
25960  End SeedStatus;
25961 
25962 ------------------------------------------------------------------------------
25963 
25964 --=======================================================================================
25965 --Procedure Party_Cleanup(P_To_Chr_ID IN NUMBER
25966 --			 ,x_return_status OUT NOCOPY VARCHAR2)
25967 --Nulls out all the accounts and other party related information at the Header and Line levels if no parties exist
25968 --at the Contract Header level
25969 --======================================================================================
25970   PROCEDURE Party_Cleanup(P_To_Chr_ID IN NUMBER
25971                          --npalepu added on 5/8/2006 for bug # 5116858
25972                          ,P_From_Chr_ID IN NUMBER
25973                          --end npalepu
25974 		         ,P_Target_Contract_New_YN IN VARCHAR2
25975 			 ,x_return_status OUT NOCOPY VARCHAR2) IS
25976 
25977    l_stage VARCHAR2(100);
25978    CURSOR l_party_csr(P_To_Chr_ID IN  NUMBER) IS
25979    SELECT count(ID)
25980    FROM okc_k_party_roles_b
25981    WHERE dnz_chr_id = P_To_Chr_ID
25982    AND jtot_object1_code = 'OKX_PARTY'
25983    --npalepu added on  for bug # 5116858
25984    AND RLE_CODE in ('CUSTOMER','SUBSCRIBER')
25985    --end npalepu
25986    AND cle_id is null;
25987 
25988    --npalepu added on 5/8/2006 for bug # 5116858
25989    CURSOR l_party_comp_csr IS
25990    SELECT COUNT(*) FROM
25991    (SELECT RLE_CODE,jtot_object1_code
25992    FROM okc_k_party_roles_b
25993    WHERE dnz_chr_id = P_From_Chr_ID
25994    AND cle_id is null
25995    MINUS
25996    SELECT RLE_CODE,jtot_object1_code
25997    FROM okc_k_party_roles_b
25998    WHERE dnz_chr_id = P_To_Chr_ID
25999    AND cle_id is null);
26000 
26001    l_party_comp_count NUMBER;
26002    --end npalepu
26003 
26004    l_api_name        CONSTANT VARCHAR2(30) := 'Party_Cleanup';
26005    l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
26006    l_party_count NUMBER;
26007 
26008   Begin
26009   x_return_status := FND_API.G_RET_STS_SUCCESS;
26010 
26011   OPEN l_party_csr(P_To_Chr_ID);
26012   FETCH l_party_csr into l_party_count;
26013   CLOSE l_party_csr;
26014 
26015   If l_party_count = 0 then
26016    Begin
26017    --Update OKC_K_HEADERS--
26018 
26019     l_stage := 'Updating OKC_K_HEADERS_ALL_B';
26020 
26021     UPDATE OKC_K_HEADERS_ALL_B
26022     SET
26023      CUST_ACCT_ID = NULL
26024     ,BILL_TO_SITE_USE_ID = NULL
26025     ,SHIP_TO_SITE_USE_ID = NULL
26026     ,CUST_PO_NUMBER = NULL
26027     ,CUST_PO_NUMBER_REQ_YN = NULL
26028     ,OBJECT_VERSION_NUMBER = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26029     --npalepu added on 5/17/2006 for bug # 5116858
26030     ,PAYMENT_INSTRUCTION_TYPE = NULL
26031     --end npalepu
26032     WHERE ID = P_To_Chr_ID;
26033 
26034     --Update OKS_K_HEADERS--
26035     l_stage := 'Updating OKS_K_HEADERS_B';
26036     UPDATE OKS_K_HEADERS_B
26037     SET
26038      quote_to_contact_id = NULL
26039     ,quote_to_site_id = NULL
26040     ,quote_to_email_id = NULL
26041     ,quote_to_phone_id = NULL
26042     ,quote_to_fax_id = NULL
26043     ,commitment_id = NULL
26044     ,payment_type = NULL
26045     --npalepu added on 23-may-2006 for bug # 5116858
26046     ,TRXN_EXTENSION_ID = NULL
26047     --end npalepu
26048     ,service_po_number = NULL
26049     ,service_po_required = NULL
26050     ,renewal_po_number = NULL
26051     ,renewal_po_required = NULL
26052     ,renewal_po_used = NULL
26053     ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26054     WHERE CHR_ID = P_To_Chr_ID;
26055 
26056    --Update OKC_K_LINES_B--
26057     l_stage := 'Updating OKC_K_LINES_B';
26058     UPDATE OKC_K_LINES_B
26059     SET
26060      cust_acct_id = NULL
26061     ,bill_to_site_use_id = NULL
26062     ,ship_to_site_use_id = NULL
26063     ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26064     --npalepu added on 5/17/2006 for bug # 5116858
26065     ,PAYMENT_INSTRUCTION_TYPE = NULL
26066     --end npalepu
26067     WHERE DNZ_CHR_ID = P_To_Chr_ID
26068     AND CLE_ID IS NULL;
26069 
26070    --Update OKS_K_LINES_B--
26071     l_stage := 'Updating OKS_K_LINES_B';
26072     UPDATE OKS_K_LINES_B
26073     SET
26074      commitment_id = null
26075     ,cust_po_number = null
26076     ,cust_po_number_req_yn = null
26077     ,payment_type = null
26078     ,CC_NO = null
26079     ,CC_EXPIRY_DATE = null
26080     ,CC_BANK_ACCT_ID = null
26081     ,CC_AUTH_CODE = null
26082     ,TRXN_EXTENSION_ID = null
26083     ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26084     WHERE DNZ_CHR_ID = P_To_Chr_ID
26085     AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL);
26086 
26087    --Delete line level party contacts--
26088     l_stage := 'Deleting from OKC_CONTACTS';
26089     DELETE from okc_contacts
26090     where cpl_id in (SELECT ID from OKC_K_PARTY_ROLES_B WHERE DNZ_CHR_ID = P_To_Chr_ID
26091                      --npalepu removed the condition on 5/8/2006 for bug # 5116858
26092                      /* and JTOT_OBJECT1_CODE = 'OKX_PARTY'  */
26093                      --end npalepu
26094                      and CLE_ID is NOT NULL);
26095 
26096    --Delete line level party roles--
26097     l_stage := 'Deleting from OKC_K_PARTY_ROLES_B';
26098     DELETE from okc_k_party_roles_b
26099     where dnz_chr_id = P_To_Chr_ID
26100     --npalepu removed the condition on 5/8/2006 for bug # 5116858
26101     /* and jtot_object1_code = 'OKX_PARTY' */
26102     --end npalepu
26103     and cle_id is not null;
26104 
26105    End;
26106 
26107   --npalepu added on 5/8/2006 for bug # 5116858
26108   ELSE
26109         OPEN l_party_comp_csr;
26110         FETCH l_party_comp_csr INTO l_party_comp_count;
26111         CLOSE l_party_comp_csr;
26112 
26113         IF l_party_comp_count > 0 THEN
26114           Begin
26115                 --Update OKC_K_LINES_B--
26116                 l_stage := 'Updating OKC_K_LINES_B';
26117                 UPDATE OKC_K_LINES_B
26118                 SET
26119                 cust_acct_id = NULL
26120                 ,bill_to_site_use_id = NULL
26121                 ,ship_to_site_use_id = NULL
26122                 ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26123                 ,PAYMENT_INSTRUCTION_TYPE = NULL
26124                 WHERE DNZ_CHR_ID = P_To_Chr_ID
26125                 AND CLE_ID IS NULL
26126                 AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP);
26127 
26128                 --Update OKS_K_LINES_B--
26129                 l_stage := 'Updating OKS_K_LINES_B';
26130                 UPDATE OKS_K_LINES_B
26131                 SET
26132                 commitment_id = null
26133                 ,cust_po_number = null
26134                 ,cust_po_number_req_yn = null
26135                 ,payment_type = null
26136                 ,CC_NO = null
26137                 ,CC_EXPIRY_DATE = null
26138                 ,CC_BANK_ACCT_ID = null
26139                 ,CC_AUTH_CODE = null
26140                 ,TRXN_EXTENSION_ID = null
26141                 ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26142                 WHERE DNZ_CHR_ID = P_To_Chr_ID
26143                 AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL
26144                                AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP));
26145 
26146                 --Delete line level party contacts--
26147                 l_stage := 'Deleting from OKC_CONTACTS';
26148                 DELETE from okc_contacts
26149                 where cpl_id in (SELECT ID from OKC_K_PARTY_ROLES_B WHERE DNZ_CHR_ID = P_To_Chr_ID
26150                                 and CLE_ID is NOT NULL
26151                                 AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL
26152                                                AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP)));
26153 
26154                 --Delete line level party roles--
26155                 l_stage := 'Deleting from OKC_K_PARTY_ROLES_B';
26156                 DELETE from okc_k_party_roles_b
26157                 where dnz_chr_id = P_To_Chr_ID
26158                 and cle_id is not null
26159                 AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL
26160                                AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP));
26161           End;
26162         END IF;
26163   --end npalepu
26164   End If;
26165     EXCEPTION WHEN OTHERS THEN
26166      If (l_party_csr%ISOPEN) then
26167        CLOSE l_party_csr;
26168      End If;
26169      --npalepu added on 5/8/2006 for bug # 5116858
26170      If (l_party_comp_csr%ISOPEN) then
26171        CLOSE l_party_comp_csr;
26172      End If;
26173      --end npalepu
26174      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
26175      FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name||':'||l_stage, substr(SQLERRM,1,240));
26176 
26177 END Party_Cleanup;
26178 
26179 --==============================================================================
26180 --Procedure PURGE_OKC_K_LINES_B_TEMP
26181 --==============================================================================
26182   Procedure PURGE_OKC_K_LINES_B_TEMP IS PRAGMA AUTONOMOUS_TRANSACTION;
26183   l_api_name VARCHAR2(30) := 'PURGE_OKC_K_LINES_B_TEMP';
26184   l_schema_name VARCHAR2(3) := 'OKC';
26185   l_statement VARCHAR2(200) := 'TRUNCATE TABLE '
26186                             ||l_schema_name
26187                             ||'.'
26188                             ||'OKC_K_LINES_B_TEMP';
26189 
26190   Begin
26191    EXECUTE IMMEDIATE l_statement;
26192      EXCEPTION
26193        WHEN OTHERS THEN
26194           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
26195           RAISE;
26196 
26197   End PURGE_OKC_K_LINES_B_TEMP;
26198 
26199 --=====================================================================================
26200 --Procedure COPY_COMPONENTS
26201 --====================================================================================
26202 
26203  PROCEDURE copy_components(
26204     p_api_version                  IN NUMBER,
26205     p_init_msg_list                IN VARCHAR2 ,
26206     x_return_status                OUT NOCOPY VARCHAR2,
26207     x_msg_count                    OUT NOCOPY NUMBER,
26208     x_msg_data                     OUT NOCOPY VARCHAR2,
26209     p_from_chr_id                  IN NUMBER,
26210     p_to_chr_id                  IN NUMBER,
26211     p_contract_number		     IN VARCHAR2,
26212     p_contract_number_modifier     IN VARCHAR2,
26213     p_to_template_yn			IN VARCHAR2 ,
26214     p_components_tbl			IN api_components_tbl,
26215     p_lines_tbl				IN api_lines_tbl,
26216     p_change_status_YN                IN VARCHAR2 ,--Added for Update_Service requirement(Bug 4747648)
26217                                                            --If 'Y', status of new line is default status(DEFAULT value)
26218                                                            --If 'N', status from Source Line is retained
26219     p_return_new_top_line_ID_YN    IN VARCHAR2 , --Added for Update_Service requirement(Bug 4747648)
26220                                                            --If 'Y' then the new line IDs of the copied top lines need to be
26221                                                            --published
26222  							   --If 'N', then dont need to be published (DEFAULT value)
26223     x_to_chr_id                    OUT NOCOPY NUMBER,
26224     p_published_line_ids_tbl       OUT  NOCOPY published_line_ids_tbl,
26225     p_include_cancelled_lines IN VARCHAR2 DEFAULT 'Y',
26226     p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
26227 
26228     l_components_tbl  api_components_tbl := p_components_tbl;
26229     l_lines_tbl       api_lines_tbl := p_lines_tbl;
26230     l_return_status	  VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
26231     l_old_return_status	  VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
26232     l_cle_id_out      NUMBER;
26233     l_to_chr_id          NUMBER;
26234     l_cnh_id          NUMBER;
26235     l_rgp_id          NUMBER;
26236     l_cat_id          NUMBER;
26237     l_cpl_id          NUMBER;
26238     l_from_cle_id     NUMBER;
26239     l_to_cle_id       NUMBER;
26240     i                 NUMBER := 0;
26241     j                 NUMBER := 0;
26242     l_old_lse_id      NUMBER;
26243     l_result		  BOOLEAN;
26244 
26245     --11510
26246     l_source_doc_type VARCHAR2(60);
26247     l_source_doc_ID   NUMBER;
26248     l_target_doc_type VARCHAR2(60);
26249     l_target_doc_ID   NUMBER;
26250     l_keep_version VARCHAR2(1);
26251     l_eff_date DATE;
26252     l_category          VARCHAR2(200); --added for bug 3764231
26253 
26254     -- 11510 get chr start date for effective date for copy_doc
26255     CURSOR c_art_eff_date (p_doc_type VARCHAR2,p_doc_id NUMBER) IS
26256     SELECT article_effective_date
26257      FROM okc_template_usages_v
26258      WHERE document_type=p_doc_type AND document_id=p_doc_id;
26259 
26260 
26261 
26262     CURSOR GetHdrTrxnInfo IS
26263     SELECT
26264      oks.TRXN_EXTENSION_ID
26265     ,okc.BILL_TO_SITE_USE_ID
26266     FROM
26267      OKC_K_HEADERS_ALL_B okc
26268     ,OKS_K_HEADERS_B oks
26269     WHERE
26270     okc.id = oks.chr_id
26271     and okc.id = p_from_chr_id;
26272 
26273     l_Hdr_Bill_To_Site_Use_ID NUMBER;
26274     l_Hdr_Old_Trxn_Extn_ID NUMBER;
26275     l_Hdr_New_Trxn_Extn_ID NUMBER;
26276 
26277 
26278     --Added for Update_Service requirement(Bug 4747648)
26279     --This cursor gets the IDs of the newly copied top lines along with its source line ids
26280     CURSOR GetTopLinesFromTemp IS
26281     SELECT
26282     ID      as NEW_LINE_ID
26283     ,ORIG_SYSTEM_ID1 as OLD_LINE_ID
26284     FROM
26285     OKC_K_LINES_B_TEMP
26286     where
26287     CLE_ID IS NULL;
26288 
26289     l_old_line_id number;
26290     l_new_line_id number;
26291     p_published_line_ids_ctr NUMBER := 0;
26292 
26293     l_Target_Contract_New_YN VARCHAR2(1):= 'N' ;
26294 
26295     l_api_name        CONSTANT VARCHAR2(30) := 'COPY_COMPONENTS';
26296     l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
26297 
26298 --npalepu added on 01-AUG-2006 for bug # 5402978
26299 l_msg_count         NUMBER;
26300 l_msg_data          VARCHAR2(2000):=null;
26301 --end npalepu
26302 
26303   BEGIN
26304 
26305   SAVEPOINT copy_components;
26306 
26307 --added for bug 2950549
26308  fnd_msg_pub.initialize;
26309 IF (l_debug = 'Y') THEN
26310    OKC_DEBUG.log('200 : Calling IS_COPY_ALLOWED');
26311 END IF;
26312 
26313     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
26314       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
26315          FND_LOG.string(FND_LOG.level_procedure
26316                         ,l_module_name||'.Begin'
26317                         ,'p_from_chr_id='|| p_from_chr_id
26318                          ||',p_contract_number='||p_contract_number
26319                          ||',p_contract_number_modifier='||p_contract_number_modifier
26320                          ||',p_to_template_yn='||p_to_template_yn);
26321       END IF;
26322     END IF;
26323 
26324     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
26325       FND_LOG.string(FND_LOG.level_statement
26326                     ,l_module_name
26327                     ,'Before Is_Copy_Allowed'
26328                     );
26329     End If;
26330 
26331 	l_result := IS_COPY_ALLOWED(p_from_chr_id, NULL);
26332 
26333 
26334     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
26335       FND_LOG.string(FND_LOG.level_statement
26336                     ,l_module_name
26337                     ,'After Is_Copy_Allowed'
26338                     );
26339     End If;
26340 
26341 
26342 	If NOT l_result Then
26343 	  -- notify caller of an UNEXPECTED error
26344 	  x_return_status := FND_API.G_RET_STS_ERROR;
26345 	  raise G_EXCEPTION_HALT_VALIDATION;
26346 	End If;
26347 
26348     -- Intitialize globals.
26349    /***
26350     IF g_events.COUNT > 0 THEN
26351        g_events.DELETE;
26352     END IF;
26353    ***/
26354 
26355     IF g_party.COUNT > 0 THEN
26356        g_party.DELETE;
26357     END IF;
26358 
26359 
26360     x_return_status := l_return_status;
26361 
26362 IF (l_debug = 'Y') THEN
26363    OKC_DEBUG.log('250 : x_return_status : '||x_return_status);
26364    OKC_DEBUG.log('250 : p_to_chr_id : '||p_to_chr_id);
26365 END IF;
26366 
26367     IF p_to_chr_id IS NULL THEN
26368       l_Target_Contract_New_YN := 'Y'; --Indicates to copy_lines API
26369 				       --whether the Target Contract being copied to
26370 				       --was pre-existing or was created as part of Copy
26371 
26372     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
26373       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
26374          FND_LOG.string(FND_LOG.level_procedure
26375                         ,l_module_name||'.Copy_Contract_Header'
26376                         ,'Before call to Copy_Contract_Header'
26377                          );
26378       END IF;
26379     END IF;
26380 
26381       copy_contract_header(
26382 	   p_api_version		=> p_api_version,
26383            p_init_msg_list		=> p_init_msg_list,
26384            x_return_status 		=> l_return_status,
26385            x_msg_count     		=> x_msg_count,
26386            x_msg_data      		=> x_msg_data,
26387            p_from_chr_id		=> p_from_chr_id,
26388            p_contract_number		=> p_contract_number,
26389            p_contract_number_modifier	=> p_contract_number_modifier,
26390 	   p_to_template_yn             => p_to_template_yn,
26391 	   p_renew_ref_yn               => 'N',
26392            x_to_chr_id			=> l_to_chr_id);
26393 
26394      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26395       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26396          FND_LOG.string(FND_LOG.level_statement
26397                         ,l_module_name||'.copy_contract_header'
26398                         ,'After call to copy_contract_header: x_return_status:'||l_return_status
26399                          ||' '||SQLERRM
26400                          );
26401       END IF;
26402      END IF;
26403 
26404       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26405           x_return_status := l_return_status;
26406           RAISE G_EXCEPTION_HALT_VALIDATION;
26407       END IF;
26408 
26409     ELSE
26410       l_return_status := get_chrv_rec(p_to_chr_id,g_chrv_rec);
26411       l_to_chr_id := p_to_chr_id;
26412     END IF;
26413 
26414     x_to_chr_id := l_to_chr_id;
26415 
26416 IF (l_debug = 'Y') THEN
26417    OKC_DEBUG.log('300 : After copy_contract_header  ');
26418    OKC_DEBUG.log('300 : x_to_chr_id : '||x_to_chr_id);
26419    OKC_DEBUG.log('300 : x_return_status : '||l_return_status);
26420 END IF;
26421 -------------------------------------End of Copy Contract Header--------------------
26422 
26423   IF l_components_tbl.COUNT >0 THEN
26424 
26425 -------------------------------------Start of Copy Events--------------------------
26426 --Header level condition copy no longer supported
26427 -------------------------------End of Copy Events---------------------------------
26428 
26429 -------------------------------Start of Copy Party Roles-------------------------
26430     i := l_components_tbl.FIRST;
26431     LOOP
26432         -- IF l_components_tbl(i).component_type = 'Parties' THEN
26433         -- skekkar bug 2802203 ( base bug 2794662 )
26434         IF l_components_tbl(i).component_type = 'PARTIES' THEN
26435           l_old_return_status := l_return_status;
26436           copy_party_roles (
26437                p_api_version    => p_api_version,
26438                p_init_msg_list  => p_init_msg_list,
26439                x_return_status  => l_return_status,
26440                x_msg_count      => x_msg_count,
26441                x_msg_data       => x_msg_data,
26442                p_cpl_id         => l_components_tbl(i).id,
26443                p_cle_id         => NULL,
26444                p_chr_id         => l_to_chr_id,
26445                p_rle_code       => l_components_tbl(i).attribute1,
26446                x_cpl_id         => l_cpl_id);
26447 
26448           IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26449           --IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26450               x_return_status := l_return_status;
26451               RAISE G_EXCEPTION_HALT_VALIDATION;
26452           --  ELSE
26453           --    IF l_old_return_status <> OKC_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26454           --      x_return_status := l_return_status;
26455           --    END IF;
26456           --  END IF;
26457           END IF;
26458 
26459         END IF;
26460         EXIT WHEN i = l_components_tbl.LAST;
26461         i := l_components_tbl.NEXT(i);
26462     END LOOP;
26463 
26464 -------------------------------End of Copy Party Roles---------------------------
26465 -------------------------------Start of Copy Doc----------------------------------
26466     --
26467     -- new 11510 code
26468     i := l_components_tbl.FIRST;
26469     l_old_return_status := l_return_status;
26470     LOOP
26471 	IF l_components_tbl(i).component_type = 'ARTICLES' THEN
26472 -- temporary: copy all document articles after one article component to copy found
26473 
26474     l_keep_version := 'Y'; -- keep version as was doing before
26475 
26476      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
26477         p_api_version   => p_api_version,
26478         x_return_status => l_return_status,
26479         x_msg_data      => x_msg_data,
26480         x_msg_count     => x_msg_count,
26481         p_chr_id        => p_from_chr_id,
26482         x_doc_type      => l_source_doc_type,
26483         x_doc_id        => l_source_doc_id
26484     );
26485 
26486         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26487         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26488             x_return_status := l_return_status;
26489             RAISE G_EXCEPTION_HALT_VALIDATION;
26490         --  ELSE
26491         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26492         --      x_return_status := l_return_status;
26493         --    END IF;
26494         --  END IF;
26495         END IF;
26496      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
26497         p_api_version   => p_api_version,
26498         x_return_status => l_return_status,
26499         x_msg_data      => x_msg_data,
26500         x_msg_count     => x_msg_count,
26501         p_chr_id        => x_to_chr_id,
26502         x_doc_type      => l_target_doc_type,
26503         x_doc_id        => l_target_doc_id
26504     );
26505 
26506         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26507         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26508             x_return_status := l_return_status;
26509             RAISE G_EXCEPTION_HALT_VALIDATION;
26510         --  ELSE
26511         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26512         --      x_return_status := l_return_status;
26513         --    END IF;
26514         --  END IF;
26515         END IF;
26516     OPEN c_art_eff_date(l_source_doc_type, l_source_doc_id);
26517     FETCH c_art_eff_date INTO l_eff_date;
26518     CLOSE c_art_eff_date;
26519 
26520 
26521     OKC_TERMS_COPY_GRP.copy_doc(
26522         p_api_version	     => p_api_version,
26523         x_return_status	     => l_return_status,
26524         x_msg_count    	     => x_msg_count,
26525         x_msg_data     	     => x_msg_data,
26526         p_source_doc_type    => l_source_doc_type,
26527         p_source_doc_id      => l_source_doc_id,
26528         p_target_doc_type    => l_target_doc_type,
26529         p_target_doc_id      => l_target_doc_id,
26530         p_keep_version       => l_keep_version,
26531         p_article_effective_date => Nvl(l_eff_date,Sysdate),
26532         p_document_number    => p_contract_number,
26533         p_allow_duplicate_terms=>'Y'
26534     );
26535 
26536         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26537         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26538             x_return_status := l_return_status;
26539             RAISE G_EXCEPTION_HALT_VALIDATION;
26540         --  ELSE
26541         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26542         --      x_return_status := l_return_status;
26543         --    END IF;
26544         --  END IF;
26545         END IF;
26546 
26547        EXIT; -- exit after one article component to copy found
26548       ELSE
26549        EXIT WHEN i = l_components_tbl.LAST;
26550   	   i := l_components_tbl.NEXT(i);
26551 	   END IF;
26552     END LOOP;
26553 -- end of new 11510 code
26554 
26555   END IF; -- End of Check for l_components_tbl.COUNT > 0
26556 
26557 ----------------------------------End of Copy Doc----------------------------------
26558 
26559 -------------------------------Start of Create Vendor if missing-----------------
26560    Begin
26561        create_vendor_if_missing(P_From_Chr_ID => P_From_Chr_ID
26562                                ,P_To_Chr_ID => l_to_chr_id
26563                                ,p_api_version => p_api_version
26564                                ,p_init_msg_list => p_init_msg_list
26565                                ,x_msg_count => x_msg_count
26566                                ,x_msg_data => x_msg_data
26567                                ,x_return_status => l_return_status);
26568 
26569        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26570               x_return_status := l_return_status;
26571               RAISE G_EXCEPTION_HALT_VALIDATION;
26572        END IF;
26573    End;
26574 
26575 -------------------------------End of Create Vendor if missing-------------------
26576 
26577 -------------Copy of OKS Hdr Attributes and its components-----------------------
26578 ---This should happen only if new header is being created
26579  IF (l_Target_Contract_New_YN = 'Y') then
26580 
26581  --===================-Start of Copy OKS Header attributes ========================================
26582   Begin
26583       /*--Call to copy source contract record in OKS_K_HEADERS_B */
26584           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26585            IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26586                  FND_LOG.string(FND_LOG.level_statement
26587                           ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
26588                           ,'Before call to oks_setup_util_pub.copy_hdr_attr'
26589 			 ||' P_From_Chr_ID = '||p_from_chr_id
26590 			 ||',P_To_Chr_ID = '||l_to_chr_id
26591                           );
26592            END IF;
26593           END IF;
26594 
26595        OKS_SETUP_UTIL_PUB.copy_hdr_attr
26596                                (p_chr_id        => p_from_chr_id --Source Contract Header ID
26597                                ,p_new_chr_id    => l_to_chr_id --Target Contract Header ID
26598                                ,p_duration_match => NULL
26599 			       ,p_renew_ref_YN => 'N'
26600                                ,x_return_status => l_return_status);
26601        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26602         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26603          FND_LOG.string(FND_LOG.level_statement
26604                         ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
26605                         ,'After call to oks_setup_util_pub.copy_hdr_attr: x_return_status:'||l_return_status
26606                          ||' '||SQLERRM
26607                          );
26608         END IF;
26609        END IF;
26610 
26611        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26612               x_return_status := l_return_status;
26613               RAISE G_EXCEPTION_HALT_VALIDATION;
26614        END IF;
26615   End;
26616  --===================End of Copy OKS Header attributes===========================================
26617 
26618 
26619  --==================Generate new transaction extension for Header================================
26620 
26621   Begin
26622    --Get Header Trxn ID and Bill_To_Site_Use_ID--
26623 
26624    OPEN GetHdrTrxnInfo;
26625    FETCH GetHdrTrxnInfo into l_Hdr_Old_Trxn_Extn_ID,l_Hdr_Bill_To_Site_Use_ID;
26626    CLOSE GetHdrTrxnInfo;
26627 
26628     If (l_Hdr_Old_Trxn_Extn_ID IS NOT NULL AND l_Hdr_Bill_To_Site_Use_ID IS NOT NULL) then
26629 
26630        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26631         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26632          FND_LOG.string(FND_LOG.level_statement
26633                         ,l_module_name||'.Create_Transaction_Extension'
26634                         ,'Before call to Create_Transaction_Extension for Header in COPY_COMPONENTS'
26635                         ||'Bill to site use id='||l_Hdr_Bill_To_Site_Use_ID
26636                         ||'Old Trxn ID='||l_Hdr_Old_Trxn_Extn_ID
26637                          );
26638         END IF;
26639        END IF;
26640 
26641         OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
26642                                       ,P_Init_Msg_List => p_init_msg_list
26643                                       ,P_Header_ID => l_to_chr_id
26644                                       ,P_Line_ID => NULL
26645                                       ,P_Source_Trx_Ext_ID => l_Hdr_Old_Trxn_Extn_ID
26646 				      ,P_Cust_Acct_ID => NULL
26647                                       ,P_Bill_To_Site_Use_ID => l_Hdr_Bill_To_Site_Use_ID
26648                                       ,x_entity_id => l_Hdr_New_Trxn_Extn_ID
26649                                       ,x_msg_data => x_msg_data
26650                                       ,x_msg_count => x_msg_count
26651                                       ,x_return_status => l_return_status) ;
26652 
26653 
26654        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26655         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26656          FND_LOG.string(FND_LOG.level_statement
26657                         ,l_module_name||'.Create_Transaction_Extension'
26658                         ,'After call to Create_Transaction_Extension for Header: x_return_status :'||l_return_status
26659                         ||'New Trxn ID='||l_Hdr_New_Trxn_Extn_ID
26660                          );
26661         END IF;
26662        END IF;
26663 
26664        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26665         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
26666               x_return_status := l_return_status;
26667               RAISE G_EXCEPTION_HALT_VALIDATION;
26668         END IF;
26669        END IF;
26670 
26671        UPDATE OKS_K_HEADERS_B
26672        SET TRXN_EXTENSION_ID = l_Hdr_New_Trxn_Extn_ID
26673        WHERE CHR_ID = l_to_chr_id;
26674 
26675         If SQL%NOTFOUND then
26676           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26677            FND_LOG.string(FND_LOG.level_statement
26678                         ,l_module_name||'.Create_Transaction_Extension'
26679                         ,'Error in Update OKS_K_HEADERS_B, row not found for update'
26680                          );
26681           END IF;
26682          l_return_status := FND_API.G_RET_STS_ERROR;
26683          RAISE G_EXCEPTION_HALT_VALIDATION;
26684         End If;
26685 
26686 
26687    End If;
26688   End;
26689 
26690 --==================End of Generate new transaction extension for Header=========================
26691 
26692 
26693  --===================Start of Copy OKS Header Notes=============================================
26694   Begin
26695      /*--Call to copy Header notes -----*/
26696         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26697          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26698           FND_LOG.string(FND_LOG.level_statement
26699                              ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
26700                                 ,'Before call to oks_coverages_pvt.copy_k_hdr_notes'
26701                                 );
26702          END IF;
26703         END IF;
26704 
26705      OKS_COVERAGES_PVT.COPY_K_HDR_NOTES(
26706              p_api_version           => p_api_version,
26707                 p_init_msg_list         => p_init_msg_list,
26708                 p_chr_id                => l_to_chr_id, --Target Contract Header ID
26709                 x_return_status         => l_return_status,
26710                 x_msg_count             => x_msg_count,
26711                 x_msg_data              => x_msg_data);
26712 
26713        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26714         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26715          FND_LOG.string(FND_LOG.level_statement
26716                         ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
26717                         ,'After call to oks_coverages_pvt.copy_k_hdr_notes: x_return_status:'||l_return_status
26718                          ||' '||SQLERRM
26719                          );
26720         END IF;
26721        END IF;
26722 
26723        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26724         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR OR
26725             l_return_status = FND_API.G_RET_STS_ERROR) THEN
26726          x_return_status := l_return_status;
26727          RAISE G_EXCEPTION_HALT_VALIDATION;
26728         ELSE
26729              x_return_status := l_return_status; -- donot raise exception if l_return_status = 'W'
26730         END IF;
26731        END IF;
26732   End;
26733 --=====================End of Copy OKS Header Notes=============================================
26734 
26735  End If; -- End of check for l_Target_Contract_New_YN = 'Y'
26736 
26737 
26738 ------------End of Copy of OKS Hdr Attributes and its components------------------
26739 
26740  ------------If copying to an existing contract and status of contract is------------------
26741  ------------'Active','Signed', or 'Expired' change status to------------------
26742  ------------'QA_Hold'---------------------------------------------------------------------
26743  Begin
26744   IF (
26745       l_Target_Contract_New_YN <> 'Y' AND
26746       (l_lines_tbl.COUNT > 0 OR l_components_tbl.COUNT > 0)
26747      ) THEN
26748    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26749      FND_LOG.string(FND_LOG.level_statement
26750                     ,l_module_name
26751                     ,'Current Target Contract Status : '||g_chrv_rec.sts_code
26752                     );
26753    END IF;
26754    --npalepu modified below on 01-AUG-2006 for bug # 5402978. Added Hold status also.
26755    /* IF SeedStatus(p_current_status => g_chrv_rec.sts_code) in ('ACTIVE','SIGNED','EXPIRED') then */
26756    IF SeedStatus(p_current_status => g_chrv_rec.sts_code) in ('ACTIVE','SIGNED','EXPIRED','HOLD') then
26757     --npalepu added on 01-AUG-2006 for bug # 5402978
26758        BEGIN
26759                 okc_version_pub.save_version
26760                         (p_chr_id         => P_To_Chr_ID,
26761                          p_api_version    => 1.0,
26762                          p_init_msg_list  => 'T',
26763                          x_return_status  => l_return_status,
26764                          x_msg_count      => l_msg_count,
26765                          x_msg_data       => l_msg_data,
26766                          p_commit         => 'F'
26767                         );
26768 
26769                 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26770                         x_return_status := l_return_status;
26771                         RAISE G_EXCEPTION_HALT_VALIDATION;
26772                 End If;
26773 
26774                 oks_contract_hdr_pub.save_version
26775                                (p_api_version   => 1.0,
26776                                 p_init_msg_list => 'T',
26777                                 x_return_status => l_return_status,
26778                                 x_msg_count     => l_msg_count,
26779                                 x_msg_data      => l_msg_data,
26780                                 p_chr_id        => P_To_Chr_ID);
26781 
26782                 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26783                         x_return_status := l_return_status;
26784                         RAISE G_EXCEPTION_HALT_VALIDATION;
26785                 End If;
26786        END;
26787      --end npalepu
26788 
26789     update okc_k_headers_all_b
26790     set sts_code = 'QA_HOLD'
26791    ,object_version_number = decode(l_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26792     where id = l_to_chr_id;
26793    End If;
26794 
26795   End If;
26796  End;
26797 -------------------------------------------------------------------------------------------
26798 ------------------------Copy Lines starts here -------------------------
26799  Begin
26800      copy_line_components(
26801       p_api_version   => p_api_version
26802      ,p_init_msg_list => p_init_msg_list
26803      ,x_return_status => l_return_status
26804      ,x_msg_count     => x_msg_count
26805      ,x_msg_data      => x_msg_data
26806      ,P_From_Chr_ID   => P_From_Chr_ID
26807      ,P_To_Chr_ID     => l_to_chr_id
26808      ,P_Target_Contract_New_YN => l_Target_Contract_New_YN
26809      ,P_Lines_Tbl     => l_lines_tbl
26810      ,p_change_status_YN => p_change_status_YN --Added for Update_Service requirement(Bug 4747648)
26811                                                            --If 'Y', status of new line is default status
26812                                                            --If 'N', status from Source Line is retained
26813      ,p_return_new_top_line_ID_YN => p_return_new_top_line_ID_YN --Added for Update_Service requirement(Bug 4747648)
26814 								 --If 'Y', the new line IDs of copied Top Lines need to be
26815 								 --published
26816       ,p_include_cancelled_lines => p_include_cancelled_lines
26817       ,p_include_terminated_lines => p_include_terminated_lines);
26818 
26819         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26820           x_return_status := l_return_status;
26821           RAISE G_EXCEPTION_HALT_VALIDATION;
26822         End If;
26823 
26824  End;
26825 -----------------------Copy Lines ends here--------------------------
26826 -----------------------Party Cleanup---------------------------------
26827 
26828  Begin
26829      Party_Cleanup(P_To_Chr_ID => l_to_chr_id
26830                   --npalepu added on 5/8/2006 for bug # 5116858
26831                   ,P_From_Chr_ID   => P_From_Chr_ID
26832                   --end npalepu
26833                   ,P_Target_Contract_New_YN => l_Target_Contract_New_YN
26834                   ,x_return_status => l_return_status);
26835 
26836         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26837           x_return_status := l_return_status;
26838           RAISE G_EXCEPTION_HALT_VALIDATION;
26839         End If;
26840 
26841  End;
26842 
26843 ---------------------------------------------------------------------
26844 -----------------------Returning New Top Line IDs--------------------
26845 --Added for Update_Service requirement(Bug 4747648)
26846 
26847  IF p_return_new_top_line_ID_YN = 'Y' then
26848    Begin
26849     OPEN GetTopLinesFromTemp;
26850     LOOP
26851     FETCH GetTopLinesFromTemp into
26852      l_New_Line_ID
26853     ,l_Old_Line_ID;
26854        EXIT WHEN GetTopLinesFromTemp%NOTFOUND;
26855        p_published_line_ids_tbl(p_published_line_ids_ctr).OLD_LINE_ID := l_Old_Line_ID;
26856        p_published_line_ids_tbl(p_published_line_ids_ctr).NEW_LINE_ID := l_New_Line_ID;
26857        p_published_line_ids_ctr := p_published_line_ids_ctr + 1;
26858     END LOOP;
26859      /*fix for bug6959607*/
26860      If (GetTopLinesFromTemp%ISOPEN) then
26861        CLOSE GetTopLinesFromTemp;
26862      End If;
26863    End;
26864 
26865    --Purge Global Temporary Table when called from Update Service
26866    --This is to support splitting of line into more than 2 lines
26867    --so that Update of CLE_ID in OKC_K_LINES_B_TEMP doesn't run into
26868    --multiple rows with same orig_system_id1
26869    Begin
26870     /*delete from okc_k_lines_b_temp;*/
26871     PURGE_OKC_K_LINES_B_TEMP;
26872    End;
26873 
26874  END IF;
26875 
26876 --------------------------------------------------------------------
26877   IF (l_debug = 'Y') THEN
26878      OKC_DEBUG.log('10000 : Exiting Procedure OKS_COPY_CONTRACT_PVT.copy_components ', 2);
26879      OKC_DEBUG.ReSet_Indentation;
26880   END IF;
26881 
26882   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
26883    FND_LOG.string(FND_LOG.level_procedure
26884      ,l_module_name||'.END'
26885      ,'Exiting copy_components '
26886     ||', x_return_status='||x_return_status
26887     ||', x_to_chr_id = '||x_to_chr_id
26888       );
26889   END IF;
26890 
26891 
26892   EXCEPTION
26893     WHEN G_EXCEPTION_HALT_VALIDATION THEN
26894       ROLLBACK to copy_components;
26895 
26896     WHEN OTHERS THEN
26897       -- store SQL error message on message stack for caller
26898       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
26899       ROLLBACK to copy_components;
26900      FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
26901 
26902   END copy_components;
26903 
26904 --===============================End Copy_Components=====================================
26905 
26906 
26907 END OKS_COPY_CONTRACT_PVT;