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.125.12020000.3 2013/04/05 11:52:49 vgujarat 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 ---Commented the plsql table definition in package body and added in package spec for bug 14387486
34 /*
35   ----------------------------------------------------------------------------
36   --PL/SQL Table to check the party has already copied.
37   --If Yes give the new cpl_id ----Begins
38   ----------------------------------------------------------------------------
39   TYPE party_rec_type IS RECORD (
40     old_cpl_id          NUMBER := OKC_API.G_MISS_NUM,
41     new_cpl_id          NUMBER := OKC_API.G_MISS_NUM);
42   TYPE  party_tbl_type IS TABLE OF party_rec_type
43   INDEX BY BINARY_INTEGER;
44   g_party       party_tbl_type;   */
45 
46 
47 /******************************
48   ----------------------------------------------------------------------------
49   --Logic to check the event has already copied.
50   --If Yes give the new cnh_id ----Begins
51   ----------------------------------------------------------------------------
52   TYPE events_rec_type IS RECORD (
53     old_cnh_id		NUMBER := OKC_API.G_MISS_NUM,
54     new_cnh_id		NUMBER := OKC_API.G_MISS_NUM);
55   TYPE	events_tbl_type IS TABLE OF events_rec_type
56   INDEX	BY BINARY_INTEGER;
57   g_events	events_tbl_type;
58 *********************************/
59 
60 
61   ----------------------------------------------------------------------------
62   -- PL/SQL table to keep line/header id and corresponding ole_id
63   -- This table will store the following combinations
64   --                 Header Id  - OLE_ID for Header
65   --                 Line ID    - OLE_ID for the Line
66   -- To get PARENT_OLE_ID for top line, search for ID = header_id
67   --                      for sub line, search for ID = Parent Line Id
68   ----------------------------------------------------------------------------
69   TYPE line_op_rec_type IS RECORD (
70     id                           NUMBER := OKC_API.G_MISS_NUM,
71     ole_id                       NUMBER := OKC_API.G_MISS_NUM);
72 
73   TYPE line_op_tbl_type IS TABLE OF line_op_rec_type
74     INDEX BY BINARY_INTEGER;
75 
76   g_op_lines line_op_tbl_type;
77 
78  -------------------------------------------------------
79    TYPE price_adjustments_rec_type IS RECORD (
80     old_pat_id          NUMBER := OKC_API.G_MISS_NUM,
81     new_pat_id          NUMBER := OKC_API.G_MISS_NUM);
82   TYPE price_adjustments_tbl_type IS TABLE OF price_adjustments_rec_type
83   INDEX BY BINARY_INTEGER;
84   g_price_adjustments    price_adjustments_tbl_type;
85   ----------------------------------------------------------------------------
86 
87 -------------------------------------------------------------------------------
88 -- Procedure:           chk_line_effectivity
89 -- Purpose:             This procedure checks the effectivity dates of source
90 --                      contract line and target contract line
91 -- In Parameters:       p_new_cle_id        Target contract line id
92 -- Out Parameters:      x_return_status     standard return status
93 --                      x_flag              yes no flag
94 -----------------------------------------------------------------------------
95 
96  PROCEDURE chk_line_effectivity
97 (
98 p_new_cle_id 	      IN NUMBER,
99 x_flag                OUT NOCOPY VARCHAR2,
100 x_return_status       OUT NOCOPY VARCHAR2
101 )
102 IS
103 
104 CURSOR l_target_line_csr (l_target_line_id NUMBER) IS
105        SELECT start_date,end_date,orig_system_id1
106        FROM   okc_k_lines_b
107        WHERE  id = l_target_line_id;
108 
109 l_target_line_rec    l_target_line_csr%ROWTYPE;
110 
111 CURSOR l_source_line_csr (l_source_line_id NUMBER) IS
112        SELECT start_date,end_date
113        FROM   okc_k_lines_b
114        WHERE  id = l_source_line_id;
115 
116 
117 l_source_line_rec    l_source_line_csr%ROWTYPE;
118 l_source_line_id               NUMBER;
119 l_source_line_duration		   NUMBER := 0;
120 l_source_line_time  	 	   VARCHAR2(450) ;
121 l_target_line_duration	   NUMBER := 0;
122 l_target_line_time  	 	   VARCHAR2(450) ;
123 l_return_status 	   VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
124 
125  BEGIN
126                     x_flag   := 'T';
127                     OPEN l_target_line_csr (p_new_cle_id);
128                     FETCH l_target_line_csr INTO l_target_line_rec;
129                     CLOSE l_target_line_csr;
130 
131                     l_source_line_id := l_target_line_rec.orig_system_id1;
132 
133                     If l_source_line_id is null Then
134                         x_return_status := l_return_status;
135                         oks_renew_pvt.Debug_Log(p_program_name => 'OKS_COPY_CONTRACT_PVT',
136                         p_perf_msg   => 'Exiting chk_line_effectivity because orig_system_id1 was null');
137                         return;
138                     End If;
139 
140                     OPEN l_source_line_csr(l_source_line_id);
141                     FETCH l_source_line_csr INTO l_source_line_rec;
142                     CLOSE l_source_line_csr;
143 
144                     OKC_TIME_UTIL_PUB.get_duration(
145                                   l_source_line_rec.start_date
146                                   ,l_source_line_rec.end_date
147                                   ,l_source_line_duration
148                                   ,l_source_line_time
149                                   ,l_return_status
150 			        );
151 
152                     IF l_return_status = 'S' Then
153 
154                          OKC_TIME_UTIL_PUB.get_duration(
155                                   l_target_line_rec.start_date
156                                   ,l_target_line_rec.end_date
157                                   ,l_target_line_duration
158                                   ,l_target_line_time
159                                   ,l_return_status
160 			              );
161 
162                           IF l_return_status = 'S'
163                           THEN
164                                IF ((l_source_line_duration <> l_target_line_duration) OR
165                                    (l_source_line_time <> l_target_line_time))
166                                THEN
167                                     x_flag := 'F';
168                                 ELSE
169                                     x_flag := 'T';
170                                END IF; -- IF ((l_source_line_time <> l_target_line_time) OR
171                           END IF;
172                     END IF;
173                     x_return_status := l_return_status;
174     Exception
175         WHEN  Others  THEN
176                   x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
177                   OKC_API.set_message(
178                                     G_APP_NAME,
179                                     G_UNEXPECTED_ERROR,
180                                     G_SQLCODE_TOKEN,
181                                     SQLCODE,
182 			            G_SQLERRM_TOKEN,
183                                     SQLERRM
184                                     );
185 
186  END chk_line_effectivity;
187 
188  Procedure printTemptable IS
189  cursor gettemptablelines is
190  select id,cle_id,lse_id,orig_system_id1
191  from okc_k_lines_b_temp;
192  l_id NUMBER;
193  l_cle_id NUMBER;
194  l_lse_id NUMBER;
195  l_orig_system_id1 NUMBER;
196  Begin
197   OPEN gettemptablelines;
198   LOOP
199   FETCH gettemptablelines into
200    l_id
201   ,l_cle_id
202   ,l_lse_id
203   ,l_orig_system_id1;
204     EXIT WHEN gettemptablelines%NOTFOUND;
205       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
206 	   FND_LOG.string(FND_LOG.level_statement
207 	                ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.printtemptable'
208 				 ,'ID:'||l_id||' : CLE_ID:'||l_cle_id||' : LSE_ID:'||l_lse_id||' : ORIG ID:'||l_orig_system_id1
209 				 );
210 	 END IF;
211   END LOOP;
212 
213  End printTemptable;
214 
215  -----------------------------------------------------------------------------
216   FUNCTION Is_Number(p_string VARCHAR2) Return BOOLEAN IS
217     n NUMBER;
218   BEGIN
219     n := to_number(p_string);
220     return TRUE;
221   EXCEPTION
222     WHEN OTHERS THEN
223          return FALSE;
224   END;
225 
226 /**************************
227   PROCEDURE add_events(	p_old_cnh_id IN NUMBER,
228 			p_new_cnh_id IN NUMBER) IS
229     i 		NUMBER := 0;
230   BEGIN
231     IF g_events.COUNT > 0 THEN
232       i := g_events.LAST;
233     END IF;
234     g_events(i+1).old_cnh_id	:= p_old_cnh_id;
235     g_events(i+1).new_cnh_id	:= p_new_cnh_id;
236   END add_events;
237 
238   FUNCTION get_new_cnh_id(	p_old_cnh_id IN NUMBER,
239 				p_new_cnh_id OUT NOCOPY NUMBER) RETURN BOOLEAN IS
240     i 		NUMBER := 0;
241   BEGIN
242     IF g_events.COUNT > 0 THEN
243       i := g_events.FIRST;
244       LOOP
245         IF g_events(i).old_cnh_id = p_old_cnh_id THEN
246           p_new_cnh_id := g_events(i).new_cnh_id;
247           RETURN TRUE;
248         END IF;
249         EXIT WHEN (i = g_events.LAST);
250         i := g_events.NEXT(i);
251       END LOOP;
252       RETURN FALSE;
253     END IF;
254     RETURN FALSE;
255   END get_new_cnh_id;
256 
257 **************************/
258 
259 /***************************************
260   PROCEDURE add_price_adjustments(       p_old_pat_id IN NUMBER,
261                         p_new_pat_id IN NUMBER) IS
262     i           NUMBER := 0;
263   BEGIN
264     IF g_price_adjustments.COUNT > 0 THEN
265       i := g_price_adjustments.LAST;
266     END IF;
267     g_price_adjustments(i+1).old_pat_id  := p_old_pat_id;
268     g_price_adjustments(i+1).new_pat_id  := p_new_pat_id;
269   END add_price_adjustments;
270 
271   FUNCTION get_new_pat_id(      p_old_pat_id IN NUMBER,
272                                 p_new_pat_id OUT NOCOPY NUMBER) RETURN BOOLEAN IS
273     i           NUMBER := 0;
274   BEGIN
275     IF g_price_adjustments.COUNT > 0 THEN
276       i := g_price_adjustments.FIRST;
277       LOOP
278         IF g_price_adjustments(i).old_pat_id = p_old_pat_id THEN
279           p_new_pat_id := g_price_adjustments(i).new_pat_id;
280           RETURN TRUE;
281         END IF;
282         EXIT WHEN (i = g_price_adjustments.LAST);
283         i := g_price_adjustments.NEXT(i);
284       END LOOP;
285       RETURN FALSE;
286     END IF;
287     RETURN FALSE;
288   END get_new_pat_id;
289 **************************************/
290 
291    ----------------------------------------------------------------------------
292   --Logic to check the party has already copied.
293   --If Yes give the new cpl_id ----Begins
294   ----------------------------------------------------------------------------
295 
296   PROCEDURE add_party(  p_old_cpl_id IN NUMBER,
297                         p_new_cpl_id IN NUMBER) IS
298     i           NUMBER := 0;
299   BEGIN
300     IF g_party.COUNT > 0 THEN
301       i := g_party.LAST;
302     END IF;
303     g_party(i+1).old_cpl_id     := p_old_cpl_id;
304     g_party(i+1).new_cpl_id     := p_new_cpl_id;
305   END add_party;
306 
307   FUNCTION get_new_cpl_id(      p_old_cpl_id IN NUMBER,
308                                 p_new_cpl_id OUT NOCOPY NUMBER) RETURN BOOLEAN IS
309     i           NUMBER := 0;
310   BEGIN
311     IF g_party.COUNT > 0 THEN
312       i := g_party.FIRST;
313       LOOP
314         IF g_party(i).old_cpl_id = p_old_cpl_id THEN
315           p_new_cpl_id := g_party(i).new_cpl_id;
316           RETURN TRUE;
317         END IF;
318         EXIT WHEN (i = g_party.LAST);
319         i := g_party.NEXT(i);
320       END LOOP;
321       RETURN FALSE;
322     END IF;
323     RETURN FALSE;
324   END get_new_cpl_id;
325 
326   ----------------------------------------------------------------------------
327   --Logic to check the event has already copied.
328   --If Yes give the new cnh_id ----Ends.
329   ----------------------------------------------------------------------------
330   ----------------------------------------------------------------------------
331   --Function specs  to populate pl/sql record with database values begins
332   ----------------------------------------------------------------------------
333     FUNCTION    get_cimv_rec(p_cim_id IN NUMBER,
334 				x_cimv_rec OUT NOCOPY cimv_rec_type) RETURN  VARCHAR2;
335     FUNCTION    get_cacv_rec(p_cac_id IN NUMBER,
336 				x_cacv_rec OUT NOCOPY cacv_rec_type) RETURN  VARCHAR2;
337     FUNCTION    get_cplv_rec(p_cpl_id IN NUMBER,
338                                 x_cplv_rec OUT NOCOPY cplv_rec_type) RETURN  VARCHAR2;
339     FUNCTION    get_cpsv_rec(p_cps_id IN NUMBER,
340 				x_cpsv_rec OUT NOCOPY cpsv_rec_type) RETURN  VARCHAR2;
341     FUNCTION    get_cgcv_rec(p_cgc_id IN NUMBER,
342 				x_cgcv_rec OUT NOCOPY cgcv_rec_type) RETURN  VARCHAR2;
343     FUNCTION    get_cnhv_rec(p_cnh_id IN NUMBER,
344 				x_cnhv_rec OUT NOCOPY cnhv_rec_type) RETURN  VARCHAR2;
345     FUNCTION    get_cnlv_rec(p_cnl_id IN NUMBER,
346 				x_cnlv_rec OUT NOCOPY cnlv_rec_type) RETURN  VARCHAR2;
347     FUNCTION    get_chrv_rec(p_chr_id IN NUMBER,
348 				x_chrv_rec OUT NOCOPY chrv_rec_type) RETURN  VARCHAR2;
349     FUNCTION    get_ocev_rec(p_oce_id IN NUMBER,
350 				x_ocev_rec OUT NOCOPY ocev_rec_type) RETURN  VARCHAR2;
351     FUNCTION    get_oatv_rec(p_oat_id IN NUMBER,
352 				x_oatv_rec OUT NOCOPY oatv_rec_type) RETURN  VARCHAR2;
353     FUNCTION    get_pavv_rec(p_pav_id IN NUMBER,
354                                 x_pavv_rec OUT NOCOPY pavv_rec_type) RETURN  VARCHAR2;
355     FUNCTION    get_patv_rec(p_pat_id IN NUMBER,
356                                 x_patv_rec OUT NOCOPY patv_rec_type) RETURN  VARCHAR2;
357     FUNCTION    get_ctcv_rec(p_ctc_id IN NUMBER,
358                                 x_ctcv_rec OUT NOCOPY ctcv_rec_type) RETURN  VARCHAR2;
359 
360   ----------------------------------------------------------------------------
361   --Function specs  to populate pl/sql record with database values ends
362   ----------------------------------------------------------------------------
363   ----------------------------------------------------------------------------
364   --Procedure  desides whether target contract is updateable or not
365   ----------------------------------------------------------------------------
366 
367   FUNCTION is_copy_allowed(p_chr_id IN NUMBER,p_sts_code IN VARCHAR2 ) RETURN BOOLEAN IS
368     l_count             NUMBER;
369     l_dummy         VARCHAR2(1) := '?';
370     l_template_yn       VARCHAR2(3);
371 
372     CURSOR c_template IS
373     SELECT template_yn
374     FROM okc_k_headers_b
375     WHERE id = p_chr_id;
376 
377     CURSOR invalid_template IS
378     SELECT '1'
379     FROM okc_k_headers_b
380     WHERE template_yn = 'Y'
381         AND nvl(end_date, sysdate+1) >= trunc(sysdate)
382         AND id = p_chr_id;
383   BEGIN
384 
385     OPEN c_template;
386     FETCH c_template INTO l_template_yn;
387     CLOSE c_template;
388 
389     If l_template_yn = 'Y' Then
390       OPEN invalid_template;
391       FETCH invalid_template INTO l_dummy;
392       CLOSE invalid_template;
393 
394       If l_dummy = '1' Then
395            IF (l_debug = 'Y') THEN
396            OKC_DEBUG.ReSet_Indentation;
397            END IF;
398            RETURN(TRUE);
399       Else
400            OKC_API.SET_MESSAGE('OKC', 'OKC_INVALID_TEMPLATE');
401            IF (l_debug = 'Y') THEN
402            OKC_DEBUG.ReSet_Indentation;
403            END IF;
404         RETURN(FALSE);
405       End If;
406     Else
407          IF (l_debug = 'Y') THEN
408          OKC_DEBUG.ReSet_Indentation;
409          END IF;
410          RETURN(TRUE);
411     End If;
412 
413 
414   END is_copy_allowed;
415 ----------------------------------
416 
417 
418   --------------------------------------------------------------------------
419   --Proceudre copy_accesses - Makes a copy of the okc_k_accesses.
420   --------------------------------------------------------------------------
421   PROCEDURE copy_accesses(
422     p_api_version                  IN NUMBER,
423     p_init_msg_list                IN VARCHAR2 ,
424     x_return_status                OUT NOCOPY VARCHAR2,
425     x_msg_count                    OUT NOCOPY NUMBER,
426     x_msg_data                     OUT NOCOPY VARCHAR2,
427     p_from_chr_id                  IN NUMBER,
428     p_to_chr_id                    IN NUMBER) IS
429 
430     l_cacv_rec  cacv_rec_type;
431     x_cacv_rec  cacv_rec_type;
432     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
433 
434     CURSOR      c_access IS
435     SELECT      id
436     FROM        okc_k_accesses_v
437     WHERE       chr_id = p_from_chr_id;
438 
439   BEGIN
440     x_return_status := l_return_status;
441     FOR l_c_access IN c_access LOOP
442       l_return_status := get_cacv_rec(  p_cac_id        => l_c_access.id,
443                                         x_cacv_rec      => l_cacv_rec);
444       l_cacv_rec.chr_id := p_to_chr_id;
445 
446       OKC_CONTRACT_PUB.create_contract_access(
447            p_api_version        => p_api_version,
448            p_init_msg_list      => p_init_msg_list,
449            x_return_status      => l_return_status,
450            x_msg_count          => x_msg_count,
451            x_msg_data           => x_msg_data,
452            p_cacv_rec           => l_cacv_rec,
453            x_cacv_rec           => x_cacv_rec);
454 
455       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
456         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
457           x_return_status := l_return_status;
458           RAISE G_EXCEPTION_HALT_VALIDATION;
459         ELSE
460              x_return_status := l_return_status;
461         END IF;
462       END IF;
463     END LOOP;
464 
465   EXCEPTION
466     WHEN G_EXCEPTION_HALT_VALIDATION THEN
467       NULL;
468     WHEN OTHERS THEN
469       -- store SQL error message on message stack for caller
470       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
471       -- notify caller of an UNEXPECTED error
472       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
473 
474   END copy_accesses;
475 
476   ----------------------------------------------------------------------------
477   --Proceudre copy_processes - Makes a copy of the okc_k_processes.
478   ----------------------------------------------------------------------------
479   PROCEDURE copy_processes(
480     p_api_version                  IN NUMBER,
481     p_init_msg_list                IN VARCHAR2 ,
482     x_return_status                OUT NOCOPY VARCHAR2,
483     x_msg_count                    OUT NOCOPY NUMBER,
484     x_msg_data                     OUT NOCOPY VARCHAR2,
485     p_from_chr_id                  IN NUMBER,
486     p_to_chr_id                    IN NUMBER) IS
487 
488     l_cpsv_rec  cpsv_rec_type;
489     x_cpsv_rec  cpsv_rec_type;
490     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
491 
492     CURSOR      c_process IS
493     SELECT      id
494     FROM        okc_k_processes_v
495     WHERE       chr_id = p_from_chr_id;
496 
497   BEGIN
498     x_return_status := l_return_status;
499     FOR l_c_process IN c_process LOOP
500       l_return_status := get_cpsv_rec(  p_cps_id        => l_c_process.id,
501                                         x_cpsv_rec      => l_cpsv_rec);
502       l_cpsv_rec.chr_id := p_to_chr_id;
503       l_cpsv_rec.process_id := NULL;
504 
505       OKC_CONTRACT_PUB.create_contract_process(
506            p_api_version        => p_api_version,
507            p_init_msg_list      => p_init_msg_list,
508            x_return_status      => l_return_status,
509            x_msg_count          => x_msg_count,
510            x_msg_data           => x_msg_data,
511            p_cpsv_rec           => l_cpsv_rec,
512            x_cpsv_rec           => x_cpsv_rec);
513 
514       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
515         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
516           x_return_status := l_return_status;
517           RAISE G_EXCEPTION_HALT_VALIDATION;
518         ELSE
519              x_return_status := l_return_status;
520         END IF;
521       END IF;
522     END LOOP;
523 
524   EXCEPTION
525     WHEN G_EXCEPTION_HALT_VALIDATION THEN
526       NULL;
527     WHEN OTHERS THEN
528       -- store SQL error message on message stack for caller
529       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
530       -- notify caller of an UNEXPECTED error
531       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
532 
533   END copy_processes;
534 
535  ----------------------------------------------------------------------------
536   --Proceudre copy_grpings - Makes a copy of the okc_k_grpings.
537   ----------------------------------------------------------------------------
538   PROCEDURE copy_grpings(
539     p_api_version                  IN NUMBER,
540     p_init_msg_list                IN VARCHAR2 ,
541     x_return_status                OUT NOCOPY VARCHAR2,
542     x_msg_count                    OUT NOCOPY NUMBER,
543     x_msg_data                     OUT NOCOPY VARCHAR2,
544     p_from_chr_id                  IN NUMBER,
545     p_to_chr_id                    IN NUMBER) IS
546 
547     l_cgcv_rec  cgcv_rec_type;
548     x_cgcv_rec  cgcv_rec_type;
549     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
550 
551     CURSOR      c_grpings IS
552     SELECT      cgcv.id
553     FROM             okc_k_grpings_v cgcv,
554                okc_k_groups_b cgpv
555     WHERE       cgcv.included_chr_id = p_from_chr_id
556     AND        cgcv.cgp_parent_id = cgpv.id
557     AND        (cgpv.public_yn = 'Y' OR cgpv.user_id = fnd_global.user_id);
558 
559   BEGIN
560     x_return_status := l_return_status;
561     FOR l_c_grpings IN c_grpings LOOP
562       l_return_status := get_cgcv_rec(  p_cgc_id        => l_c_grpings.id,
563                                         x_cgcv_rec      => l_cgcv_rec);
564       l_cgcv_rec.included_chr_id := p_to_chr_id;
565 
566       OKC_CONTRACT_GROUP_PUB.create_contract_grpngs(
567            p_api_version        => p_api_version,
568            p_init_msg_list      => p_init_msg_list,
569            x_return_status      => l_return_status,
570            x_msg_count          => x_msg_count,
571            x_msg_data           => x_msg_data,
572            p_cgcv_rec           => l_cgcv_rec,
573            x_cgcv_rec           => x_cgcv_rec);
574 
575       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
576         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
577           x_return_status := l_return_status;
578           RAISE G_EXCEPTION_HALT_VALIDATION;
579         ELSE
580              x_return_status := l_return_status;
581         END IF;
582       END IF;
583     END LOOP;
584 
585   EXCEPTION
586     WHEN G_EXCEPTION_HALT_VALIDATION THEN
587       NULL;
588     WHEN OTHERS THEN
589       -- store SQL error message on message stack for caller
590       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
591       -- notify caller of an UNEXPECTED error
592       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
593 
594   END copy_grpings;
595 
596 /******
597   ----------------------------------------------------------------------------
598   --Proceudre copy_price_att_values - Makes a copy of the price attribute values.
599   ----------------------------------------------------------------------------
600   PROCEDURE copy_price_att_values(
601     p_api_version                  IN NUMBER,
602     p_init_msg_list                IN VARCHAR2 ,
603     x_return_status                OUT NOCOPY VARCHAR2,
604     x_msg_count                    OUT NOCOPY NUMBER,
605     x_msg_data                     OUT NOCOPY VARCHAR2,
606     p_pav_id                       IN NUMBER,
607     p_cle_id                       IN NUMBER ,
608     p_chr_id                       IN NUMBER ,
609     x_pav_id                       OUT NOCOPY NUMBER) IS
610 
611     l_pavv_rec  pavv_rec_type;
612     x_pavv_rec  pavv_rec_type;
613 
614     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
615     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
616 
617   BEGIN
618     x_return_status := l_return_status;
619     l_return_status := get_pavv_rec(    p_pav_id        => p_pav_id,
620                                         x_pavv_rec      => l_pavv_rec);
621 
622     l_pavv_rec.chr_id := p_chr_id;
623     l_pavv_rec.cle_id := p_cle_id;
624 
625     OKC_PRICE_ADJUSTMENT_PUB.create_price_att_value(
626            p_api_version        => p_api_version,
627            p_init_msg_list      => p_init_msg_list,
628            x_return_status      => l_return_status,
629            x_msg_count          => x_msg_count,
630            x_msg_data           => x_msg_data,
631            p_pavv_rec           => l_pavv_rec,
632            x_pavv_rec           => x_pavv_rec);
633 
634       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
635         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
636           x_return_status := l_return_status;
637           RAISE G_EXCEPTION_HALT_VALIDATION;
638         ELSE
639              x_return_status := l_return_status;
640         END IF;
641       END IF;
642 
643     x_pav_id := x_pavv_rec.id; -- passes the new generated id to the caller.
644 
645   EXCEPTION
646     WHEN G_EXCEPTION_HALT_VALIDATION THEN
647       NULL;
648     WHEN OTHERS THEN
649       -- store SQL error message on message stack for caller
650       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
651       -- notify caller of an UNEXPECTED error
652       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
653 
654   END copy_price_att_values;
655 
656 *****************************/
657 
658 /*******************
659   -------------------------------------------
660 --------copy price adjustments
661 ------------------------------------
662    PROCEDURE copy_price_adjustments(
663     p_api_version                  IN NUMBER,
664     p_init_msg_list                IN VARCHAR2 ,
665     x_return_status                OUT NOCOPY VARCHAR2,
666     x_msg_count                    OUT NOCOPY NUMBER,
667     x_msg_data                     OUT NOCOPY VARCHAR2,
668     p_pat_id                       IN NUMBER,
669     p_cle_id                       IN NUMBER ,
670     p_chr_id                       IN NUMBER ,
671     x_pat_id                       OUT NOCOPY NUMBER) IS
672 
673     l_patv_rec  patv_rec_type;
674     x_patv_rec  patv_rec_type;
675 
676     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
677     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
678 
679     l_new_pat_id  NUMBER;
680   BEGIN
681     x_return_status := l_return_status;
682     l_return_status := get_patv_rec(    p_pat_id        => p_pat_id,
683                                         x_patv_rec      => l_patv_rec);
684 
685     l_patv_rec.chr_id := p_chr_id;
686     l_patv_rec.cle_id := p_cle_id;
687     l_patv_rec.id := NULL;
688 
689    IF get_new_pat_id(l_patv_rec.pat_id,l_new_pat_id) THEN
690         l_patv_rec.pat_id := l_new_pat_id;
691    END IF;
692     OKC_PRICE_ADJUSTMENT_PUB.create_price_adjustment(
693            p_api_version        => p_api_version,
694            p_init_msg_list      => p_init_msg_list,
695            x_return_status      => l_return_status,
696            x_msg_count          => x_msg_count,
697            x_msg_data           => x_msg_data,
698            p_patv_rec           => l_patv_rec,
699            x_patv_rec           => x_patv_rec);
700 
701 
702            IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
703         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
704           x_return_status := l_return_status;
705           RAISE G_EXCEPTION_HALT_VALIDATION;
706         ELSE
707              x_return_status := l_return_status;
708         END IF;
709       END IF;
710 
711     x_pat_id := x_patv_rec.id; -- passes the new generated id to the caller.
712    add_price_adjustments(p_pat_id,x_patv_rec.id);
713 
714   EXCEPTION
715     WHEN G_EXCEPTION_HALT_VALIDATION THEN
716       NULL;
717     WHEN OTHERS THEN
718       -- store SQL error message on message stack for caller
719       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
720       -- notify caller of an UNEXPECTED error
721       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
722 
723   END copy_price_adjustments;
724 ************************************/
725 ---------------------------------------------------------------------------------------------------
726 
727   ----------------------------------------------------------------------------
728   --Function to populate the contract governance record to be copied.
729   ----------------------------------------------------------------------------
730     FUNCTION get_gvev_rec(p_gve_id IN NUMBER,
731 				      x_gvev_rec OUT NOCOPY gvev_rec_type)
732     RETURN  VARCHAR2 IS
733       l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
734       l_no_data_found BOOLEAN := TRUE;
735 
736       CURSOR c_gvev_rec IS
737       SELECT
738 	    DNZ_CHR_ID,
739 	    ISA_AGREEMENT_ID,
740 	    CHR_ID,
741 	    CLE_ID,
742 	    CHR_ID_REFERRED,
743 	    CLE_ID_REFERRED,
744 	    COPIED_ONLY_YN
745 	 FROM    OKC_GOVERNANCES
746 	 WHERE 	ID = p_gve_id;
747     BEGIN
748       OPEN c_gvev_rec;
749       FETCH c_gvev_rec
750       INTO x_gvev_rec.DNZ_CHR_ID,
751 		x_gvev_rec.ISA_AGREEMENT_ID,
752 		x_gvev_rec.CHR_ID,
753 		x_gvev_rec.CLE_ID,
754 		x_gvev_rec.CHR_ID_REFERRED,
755 		x_gvev_rec.CLE_ID_REFERRED,
756 		x_gvev_rec.COPIED_ONLY_YN;
757 
758       l_no_data_found := c_gvev_rec%NOTFOUND;
759       CLOSE c_gvev_rec;
760       IF l_no_data_found THEN
761         l_return_status := FND_API.G_RET_STS_ERROR;
762         return(l_return_status);
763       ELSE
764         return(l_return_status);
765       END IF;
766     EXCEPTION
767       WHEN OTHERS THEN
768         -- store SQL error message on message stack for caller
769         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
770         -- notify caller of an UNEXPECTED error
771         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
772         return(l_return_status);
773 
774     END get_gvev_rec;
775 
776   --------------------------------------------------------------------------
777   --Procedure copy_governances - Makes a copy of the okc_governances
778   --------------------------------------------------------------------------
779   PROCEDURE copy_governances(
780     p_api_version                  IN NUMBER,
781     p_init_msg_list                IN VARCHAR2 ,
782     x_return_status                OUT NOCOPY VARCHAR2,
783     x_msg_count                    OUT NOCOPY NUMBER,
784     x_msg_data                     OUT NOCOPY VARCHAR2,
785     p_gvev_id                      IN NUMBER,
786     p_cle_id                       IN NUMBER ,
787     p_chr_id                       IN NUMBER ,
788     x_gvev_id                      OUT NOCOPY NUMBER) IS
789 
790 
791     l_gvev_rec  gvev_rec_type;
792     x_gvev_rec  gvev_rec_type;
793 
794     l_return_status     VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
795 
796   BEGIN
797 
798     x_return_status := l_return_status;
799 
800     l_return_status := get_gvev_rec(p_gve_id   => p_gvev_id,
801                                     x_gvev_rec => l_gvev_rec);
802 
803     IF p_cle_id IS NOT NULL AND p_cle_id <> OKC_API.G_MISS_NUM THEN
804        --we are copying at line level so chr_id should be null
805        l_gvev_rec.chr_id        :=   NULL;
806     ELSE
807        --we are copying at header level
808        l_gvev_rec.chr_id        :=   p_chr_id;
809     END IF;
810 
811     l_gvev_rec.dnz_chr_id    :=   p_chr_id;
812     l_gvev_rec.cle_id        :=   p_cle_id;   --p_cle_id will be passed here as null if we are copying at header level
813 
814 
815     OKC_CONTRACT_PUB.create_governance(
816            p_api_version        => p_api_version,
817            p_init_msg_list      => p_init_msg_list,
818            x_return_status      => l_return_status,
819            x_msg_count          => x_msg_count,
820            x_msg_data           => x_msg_data,
821            p_gvev_rec           => l_gvev_rec,
822            x_gvev_rec           => x_gvev_rec);
823 
824     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
825         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
826             x_return_status := l_return_status;
827             RAISE G_EXCEPTION_HALT_VALIDATION;
828         ELSE
829             x_return_status := l_return_status;
830         END IF;
831     END IF;
832 
833     x_gvev_id := x_gvev_rec.id; -- passes the new generated id to the caller.
834 
835   EXCEPTION
836     WHEN G_EXCEPTION_HALT_VALIDATION THEN
837       NULL;
838     WHEN OTHERS THEN
839       -- store SQL error message on message stack for caller
840       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
841       -- notify caller of an UNEXPECTED error
842       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
843 
844   END copy_governances;
845 
846  ----------------------------------------------------------------------------
847   --Proceudre copy_party_roles - Makes a copy of the party_roles.
848   ----------------------------------------------------------------------------
849   PROCEDURE copy_party_roles(
850     p_api_version                  IN NUMBER,
851     p_init_msg_list                IN VARCHAR2 ,
852     x_return_status                OUT NOCOPY VARCHAR2,
853     x_msg_count                    OUT NOCOPY NUMBER,
854     x_msg_data                     OUT NOCOPY VARCHAR2,
855     p_cpl_id                       IN NUMBER,
856     p_cle_id                       IN NUMBER ,
857     p_chr_id                       IN NUMBER ,
858     P_rle_code                     IN VARCHAR2,
859     x_cpl_id                       OUT NOCOPY NUMBER) IS
860 
861     l_cplv_rec  cplv_rec_type;
862     x_cplv_rec  cplv_rec_type;
863     l_ctcv_rec  ctcv_rec_type;
864     x_ctcv_rec  ctcv_rec_type;
865 
866     l_party_name                VARCHAR2(200);
867     l_party_desc                VARCHAR2(2000);
868     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
869     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
870 
871     CURSOR c_dnz_chr_id(p_id IN NUMBER) IS
872     SELECT dnz_chr_id
873     FROM okc_k_lines_b
874     WHERE id = p_id;
875 
876     CURSOR c_ctcv IS
877     SELECT id
878     FROM okc_contacts_v
879     WHERE cpl_id = p_cpl_id;
880 
881   BEGIN
882     x_return_status := l_return_status;
883     l_return_status := get_cplv_rec(    p_cpl_id        => p_cpl_id,
884                                         x_cplv_rec      => l_cplv_rec);
885 
886     IF p_chr_id IS NULL OR p_chr_id = OKC_API.G_MISS_NUM THEN
887       OPEN c_dnz_chr_id(p_cle_id);
888       FETCH c_dnz_chr_id INTO l_cplv_rec.dnz_chr_id;
889       CLOSE c_dnz_chr_id;
890     ELSE
891       l_cplv_rec.dnz_chr_id := p_chr_id;
892     END IF;
893 
894     l_cplv_rec.chr_id := p_chr_id;
895     l_cplv_rec.cle_id := p_cle_id;
896     IF p_rle_code IS NOT NULL THEN
897       l_cplv_rec.rle_code := p_rle_code;
898     END IF;
899 
900     OKC_CONTRACT_PARTY_PUB.create_k_party_role(
901            p_api_version        => p_api_version,
902            p_init_msg_list      => p_init_msg_list,
903            x_return_status      => l_return_status,
904            x_msg_count          => x_msg_count,
905            x_msg_data           => x_msg_data,
906            p_cplv_rec           => l_cplv_rec,
907            x_cplv_rec           => x_cplv_rec);
908 
909       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
910           x_return_status := l_return_status;
911           RAISE G_EXCEPTION_HALT_VALIDATION;
912       END IF;
913 
914     x_cpl_id := x_cplv_rec.id; -- passes the new generated id to the caller.
915 
916      --stores the new rul_id in a global pl/sql table.
917      add_party(l_cplv_rec.id,x_cplv_rec.id);
918 
919 
920     FOR l_c_ctcv IN c_ctcv LOOP
921       l_return_status := get_ctcv_rec(  p_ctc_id        => l_c_ctcv.id,
922                                         x_ctcv_rec      => l_ctcv_rec);
923 
924       l_ctcv_rec.dnz_chr_id := l_cplv_rec.dnz_chr_id;
925       l_ctcv_rec.cpl_id := x_cplv_rec.id;
926 
927       OKC_CONTRACT_PARTY_PUB.create_contact(
928            p_api_version        => p_api_version,
929            p_init_msg_list      => p_init_msg_list,
930            x_return_status      => l_return_status,
931            x_msg_count          => x_msg_count,
932            x_msg_data           => x_msg_data,
933            p_ctcv_rec           => l_ctcv_rec,
934            x_ctcv_rec           => x_ctcv_rec);
935 
936      IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
937         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
938           x_return_status := l_return_status;
939           RAISE G_EXCEPTION_HALT_VALIDATION;
940         ELSE
941           x_return_status := OKC_API.G_RET_STS_WARNING;
942           okc_util.get_name_desc_from_jtfv( p_object_code  => x_cplv_rec.jtot_object1_code,
943                                         p_id1          => x_cplv_rec.object1_id1,
944                                         p_id2          => x_cplv_rec.object1_id2,
945                                         x_name         => l_party_name,
946                                         x_description  => l_party_desc);
947 
948           OKC_API.set_message(G_APP_NAME,'OKC_CONTACT_NOT_COPIED','PARTY_NAME',l_party_name);
949         END IF;
950       END IF;
951     END LOOP;
952 
953   EXCEPTION
954     WHEN G_EXCEPTION_HALT_VALIDATION THEN
955       NULL;
956     WHEN OTHERS THEN
957       -- store SQL error message on message stack for caller
958       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
959       -- notify caller of an UNEXPECTED error
960       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
961 
962   END copy_party_roles;
963 
964 /****************************
965 ----------------------------------------------------------------------------
966   --Proceudre copy_events - Makes a copy of the condition header and all condition lines under the header.
967   ----------------------------------------------------------------------------
968   PROCEDURE copy_events(
969     p_api_version                  IN NUMBER,
970     p_init_msg_list                IN VARCHAR2 ,
971     x_return_status                OUT NOCOPY VARCHAR2,
972     x_msg_count                    OUT NOCOPY NUMBER,
973     x_msg_data                     OUT NOCOPY VARCHAR2,
974     p_cnh_id                       IN NUMBER,
975     p_chr_id                       IN NUMBER ,
976     p_to_template_yn               IN VARCHAR2,
977     x_cnh_id                       OUT NOCOPY NUMBER) IS
978 
979     l_cnhv_rec  cnhv_rec_type;
980     x_cnhv_rec  cnhv_rec_type;
981     l_cnlv_rec  cnlv_rec_type;
982     x_cnlv_rec  cnlv_rec_type;
983     l_ocev_rec  ocev_rec_type;
984     x_ocev_rec  ocev_rec_type;
985     l_oatv_rec  oatv_rec_type;
986     x_oatv_rec  oatv_rec_type;
987 
988     l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
989     l_cle_id                    NUMBER := OKC_API.G_MISS_NUM;
990     l_new_cnh_id                NUMBER;
991 
992     CURSOR      c_cnlv IS
993     SELECT      id
994     FROM        okc_condition_lines_b
995     WHERE       cnh_id = p_cnh_id;
996 
997     CURSOR      c_ocev IS
998     SELECT      id
999     FROM        okc_outcomes_b
1000     WHERE       cnh_id = p_cnh_id;
1001 
1002     CURSOR      c_oatv(p_oce_id IN NUMBER) IS
1003     SELECT      id
1004     FROM        okc_outcome_arguments_v
1005     WHERE       oce_id = p_oce_id;
1006 
1007   BEGIN
1008     x_return_status := l_return_status;
1009     IF get_new_cnh_id(p_cnh_id,l_new_cnh_id) THEN --If the events is already copied then return.
1010       x_cnh_id := l_new_cnh_id;
1011       RAISE G_EXCEPTION_HALT_VALIDATION;
1012     END IF;
1013     l_return_status := get_cnhv_rec(    p_cnh_id        => p_cnh_id,
1014                                         x_cnhv_rec      => l_cnhv_rec);
1015 
1016     l_cnhv_rec.dnz_chr_id := p_chr_id;
1017     l_cnhv_rec.object_id  := p_chr_id;
1018     l_cnhv_rec.jtot_object_code  := 'OKC_K_HEADER';
1019     IF p_to_template_yn = 'Y' THEN
1020       l_cnhv_rec.template_yn := 'Y';
1021     ELSIF p_to_template_yn = 'N' THEN
1022       l_cnhv_rec.template_yn := 'N';
1023     END IF;
1024     If (l_cnhv_rec.date_active < g_chrv_rec.start_date OR
1025            l_cnhv_rec.date_active > g_chrv_rec.end_date)
1026     Then
1027         l_cnhv_rec.date_active := g_chrv_rec.start_date;
1028     End If;
1029     If (l_cnhv_rec.date_inactive > g_chrv_rec.end_date OR
1030            l_cnhv_rec.date_inactive < g_chrv_rec.start_date)
1031     Then
1032         l_cnhv_rec.date_inactive := g_chrv_rec.end_date;
1033     End If;
1034 
1035     OKC_CONDITIONS_PUB.create_cond_hdrs(
1036            p_api_version        => p_api_version,
1037            p_init_msg_list      => p_init_msg_list,
1038            x_return_status      => l_return_status,
1039            x_msg_count          => x_msg_count,
1040            x_msg_data           => x_msg_data,
1041            p_cnhv_rec           => l_cnhv_rec,
1042            x_cnhv_rec           => x_cnhv_rec);
1043 
1044 
1045       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1046         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1047           x_return_status := l_return_status;
1048           RAISE G_EXCEPTION_HALT_VALIDATION;
1049         ELSE
1050              x_return_status := OKC_API.G_RET_STS_WARNING;
1051              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1052                FND_LOG.string(FND_LOG.level_statement
1053                         ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.copy_events'
1054                         ,'After call to OKC_CONDITIONS_PUB.create_cond_hdrs'
1055                          ||' x_return_status:'||l_return_status
1056                          ||' x_err_msg='||fnd_msg_pub.get(p_encoded=>'F')
1057                          );
1058              END IF;
1059 
1060 
1061 
1062           OKC_API.set_message(G_APP_NAME,'OKC_CONDITION_NOT_COPIED','CONDITION',l_cnhv_rec.name);
1063           RAISE G_EXCEPTION_HALT_VALIDATION;
1064         END IF;
1065       END IF;
1066 
1067     x_cnh_id := x_cnhv_rec.id; -- passes the new generated id to the caller.
1068 
1069     FOR l_c_cnlv IN c_cnlv LOOP
1070       l_return_status := get_cnlv_rec(  p_cnl_id        => l_c_cnlv.id,
1071                                         x_cnlv_rec      => l_cnlv_rec);
1072 
1073       l_cnlv_rec.dnz_chr_id := l_cnhv_rec.dnz_chr_id;
1074       l_cnlv_rec.cnh_id := x_cnhv_rec.id;
1075 
1076       OKC_CONDITIONS_PUB.create_cond_lines(
1077            p_api_version        => p_api_version,
1078            p_init_msg_list      => p_init_msg_list,
1079            x_return_status      => l_return_status,
1080            x_msg_count          => x_msg_count,
1081            x_msg_data           => x_msg_data,
1082            p_cnlv_rec           => l_cnlv_rec,
1083            x_cnlv_rec           => x_cnlv_rec);
1084 
1085       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1086         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1087           x_return_status := l_return_status;
1088           RAISE G_EXCEPTION_HALT_VALIDATION;
1089         ELSE
1090              x_return_status := l_return_status;
1091         END IF;
1092       END IF;
1093     END LOOP;
1094 
1095    FOR l_c_ocev IN c_ocev LOOP
1096       l_return_status := get_ocev_rec(  p_oce_id        => l_c_ocev.id,
1097                                         x_ocev_rec      => l_ocev_rec);
1098 
1099       l_ocev_rec.dnz_chr_id := l_cnhv_rec.dnz_chr_id;
1100       l_ocev_rec.cnh_id := x_cnhv_rec.id;
1101 
1102       OKC_OUTCOME_PUB.create_outcome(
1103            p_api_version        => p_api_version,
1104            p_init_msg_list      => p_init_msg_list,
1105            x_return_status      => l_return_status,
1106            x_msg_count          => x_msg_count,
1107            x_msg_data           => x_msg_data,
1108            p_ocev_rec           => l_ocev_rec,
1109            x_ocev_rec           => x_ocev_rec);
1110 
1111       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1112         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1113           x_return_status := l_return_status;
1114           RAISE G_EXCEPTION_HALT_VALIDATION;
1115         ELSE
1116              x_return_status := l_return_status;
1117         END IF;
1118       END IF;
1119 
1120       FOR l_c_oatv IN c_oatv(l_ocev_rec.id) LOOP
1121         l_return_status := get_oatv_rec(        p_oat_id        => l_c_oatv.id,
1122                                         x_oatv_rec      => l_oatv_rec);
1123 
1124         l_oatv_rec.dnz_chr_id := l_cnhv_rec.dnz_chr_id;
1125         l_oatv_rec.oce_id := x_ocev_rec.id;
1126 
1127         OKC_OUTCOME_PUB.create_out_arg(
1128            p_api_version        => p_api_version,
1129            p_init_msg_list      => p_init_msg_list,
1130            x_return_status      => l_return_status,
1131            x_msg_count          => x_msg_count,
1132            x_msg_data           => x_msg_data,
1133            p_oatv_rec           => l_oatv_rec,
1134            x_oatv_rec           => x_oatv_rec);
1135 
1136         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1137           IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1138             x_return_status := l_return_status;
1139             RAISE G_EXCEPTION_HALT_VALIDATION;
1140           ELSE
1141              x_return_status := l_return_status;
1142           END IF;
1143         END IF;
1144       END LOOP;
1145 
1146     END LOOP;
1147 
1148     add_events(p_cnh_id,x_cnhv_rec.id); --adds the new event id in the global PL/SQL table.
1149 
1150   EXCEPTION
1151     WHEN G_EXCEPTION_HALT_VALIDATION THEN
1152       NULL;
1153     WHEN OTHERS THEN
1154       -- store SQL error message on message stack for caller
1155       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1156       -- notify caller of an UNEXPECTED error
1157       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1158 
1159   END copy_events;
1160 ***************************/
1161   ----------------------------------------------------------------------------
1162   --
1163   -- Procedure to set attachement session variables if they are null
1164   -- Currently set only set for OKCAUDET and OKSAUDET
1165   --
1166   -- If want to get rid of this hard coding, COPY should add
1167   -- parameters and user should pass attachement_funtion_name
1168   -- and attachment_funtion_type
1169   --
1170   PROCEDURE Set_Attach_Session_Vars(p_chr_id NUMBER) IS
1171     l_app_id NUMBER;
1172     Cursor l_chr_csr Is
1173 	      SELECT application_id
1174 	      FROM okc_k_headers_b
1175 	      WHERE id = p_chr_id;
1176   BEGIN
1177     If (p_chr_id IS NOT NULL AND
1178 	   FND_ATTACHMENT_UTIL_PKG.function_name IS NULL
1179 	  )
1180     Then
1181       open l_chr_csr;
1182       fetch l_chr_csr into l_app_id;
1183       close l_chr_csr;
1184 
1185        -- Added for Bug 2384423
1186       If (l_app_id = 515) Then
1187 	    FND_ATTACHMENT_UTIL_PKG.function_name := 'OKSAUDET';
1188 	    FND_ATTACHMENT_UTIL_PKG.function_type := 'O';
1189       Else
1190 	    FND_ATTACHMENT_UTIL_PKG.function_name := 'OKCAUDET';
1191 	    FND_ATTACHMENT_UTIL_PKG.function_type := 'O';
1192       End If;
1193 
1194     End If;
1195   END;
1196 
1197   ----------------------------------------------------------------------------
1198   -- Function to return the major version of the contract
1199   -- Major version is required to while copying attachments for
1200   -- header and line
1201   ----------------------------------------------------------------------------
1202   FUNCTION Get_Major_Version(p_chr_id NUMBER) RETURN VARCHAR2 IS
1203 
1204     CURSOR l_cvm_csr IS
1205     SELECT to_char(major_version)
1206     FROM okc_k_vers_numbers
1207     WHERE chr_id = p_chr_id;
1208 
1209     x_from_version  FND_ATTACHED_DOCUMENTS.PK2_VALUE%TYPE := NULL;
1210 
1211   BEGIN
1212     open l_cvm_csr;
1213     fetch l_cvm_csr into x_from_version;
1214     close l_cvm_csr;
1215 
1216     return x_from_version;
1217   EXCEPTION
1218     WHEN OTHERS THEN
1219          OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1220 	    return FND_API.G_RET_STS_UNEXP_ERROR;
1221 
1222   END Get_Major_Version;
1223 
1224   PROCEDURE get_priced_line_rec(p_api_version    IN NUMBER
1225   						,p_init_msg_list   IN VARCHAR2
1226 						,x_msg_count       OUT NOCOPY NUMBER
1227 						,x_msg_data        OUT NOCOPY VARCHAR2
1228   						,p_clev_rec  IN clev_rec_type
1229                               ,x_clev_rec  OUT NOCOPY clev_rec_type) IS
1230       l_priced_yn VARCHAR2(3);
1231       l_cim_id    NUMBER;
1232       l_lty_code  VARCHAR2(90);
1233       l_clev_rec  clev_rec_type := p_clev_rec;
1234       l_cimv_rec 	cimv_rec_type;
1235 
1236       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1237 
1238       CURSOR c_lse(p_id IN NUMBER) IS
1239       SELECT lty_code,
1240              priced_yn
1241       FROM   okc_line_styles_b
1242       WHERE  id = p_id;
1243 
1244       CURSOR c_cim(p_cle_id IN NUMBER) IS
1245       SELECT id
1246       FROM   okc_k_items_v
1247       WHERE  cle_id = p_cle_id
1248       AND    priced_item_yn = 'Y';
1249 
1250     BEGIN
1251       OPEN c_lse(l_clev_rec.lse_id);
1252       FETCH c_lse INTO l_lty_code,l_priced_yn;
1253       CLOSE c_lse;
1254 
1255       IF l_clev_rec.price_level_ind = 'N' THEN
1256         IF l_priced_yn = 'N' THEN
1257           l_clev_rec.price_negotiated := NULL;
1258         ELSE
1259           l_clev_rec.price_negotiated := NULL;
1260           IF l_lty_code <> 'FREE_FORM' THEN
1261             l_clev_rec.name := NULL;
1262           END IF;
1263         END IF;
1264       ELSE
1265         IF l_priced_yn = 'N' THEN
1266           l_clev_rec.price_negotiated := NULL;
1267           l_clev_rec.PRICE_UNIT := NULL;
1268           IF l_lty_code <> 'FREE_FORM' THEN
1269             l_clev_rec.name := NULL;
1270           END IF;
1271         ELSE
1272           OPEN c_cim(l_clev_rec.id);
1273           FETCH c_cim INTO l_cim_id;
1274           CLOSE c_cim;
1275 
1276           IF l_cim_id IS NOT NULL THEN
1277             l_return_status := get_cimv_rec(	p_cim_id 	=> l_cim_id,
1278     					x_cimv_rec 	=> l_cimv_rec);
1279             OKC_CONTRACT_ITEM_PUB.validate_contract_item(
1280       	          p_api_version	=> p_api_version,
1281                  p_init_msg_list	=> p_init_msg_list,
1282                  x_return_status 	=> l_return_status,
1283                  x_msg_count     	=> x_msg_count,
1284                  x_msg_data      	=> x_msg_data,
1285                  p_cimv_rec		=> l_cimv_rec);
1286 
1287              IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1288                l_clev_rec.price_negotiated := NULL;
1289                l_clev_rec.PRICE_UNIT := NULL;
1290                l_clev_rec.name := NULL;
1291              END IF;
1292            END IF;
1293          END IF;
1294       END IF;
1295       x_clev_rec := l_clev_rec;
1296     exception when others then
1297       x_clev_rec := l_clev_rec;
1298     END get_priced_line_rec;
1299 
1300     PROCEDURE instantiate_counters_events (
1301          p_api_version    IN NUMBER,
1302          p_init_msg_list  IN VARCHAR2 ,
1303          x_return_status  OUT NOCOPY VARCHAR2,
1304          x_msg_count      OUT NOCOPY NUMBER,
1305          x_msg_data       OUT NOCOPY VARCHAR2,
1306          p_old_cle_id     IN  NUMBER,
1307          p_old_lse_id     IN  NUMBER,
1308          p_start_date     IN  DATE,
1309          p_end_date       IN  DATE,
1310          p_new_cle_id     IN  NUMBER,
1311          --npalepu added on 20-mar-2006 for bug # 5102052
1312          p_new_chr_id     IN  NUMBER
1313          ---end npalepu
1314          ) IS
1315 
1316       l_item_id             VARCHAR2(40);
1317       l_counter_grp_id	   NUMBER;
1318       l_found               BOOLEAN;
1319       l_return_status	   VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1320       l_ctr_grp_id_template NUMBER;
1321       l_ctr_grp_id_instance NUMBER;
1322       l_instcnd_inp_rec     OKC_INST_CND_PUB.instcnd_inp_rec;
1323       l_ac_rec OKS_COVERAGES_PUB.ac_rec_type;
1324       l_actual_coverage_id NUMBER;
1325 
1326       CURSOR c_item IS
1327       SELECT object1_id1
1328       FROM   okc_k_items
1329       WHERE  cle_id = p_old_cle_id;
1330 
1331       Cursor l_ctr_csr (p_id Number) Is
1332 	 Select Counter_Group_id
1333 	 From   CS_CTR_ASSOCIATIONS --OKX_CTR_ASSOCIATIONS_V
1334 	 Where  Source_Object_Id = p_id;
1335 
1336     BEGIN
1337       x_return_status := l_return_status;
1338 
1339       OPEN c_item;
1340       FETCH c_item INTO l_item_id;
1341       CLOSE c_item;
1342 
1343       IF l_item_id IS NOT NULL AND Is_Number(l_item_id) THEN
1344 
1345 	    -- Check whether counters are attached to the item
1346 	    OPEN l_ctr_csr(l_item_id);
1347 	    FETCH l_ctr_csr INTO l_counter_grp_id;
1348          l_found := l_ctr_csr%FOUND;
1349 	    CLOSE l_ctr_csr;
1350 
1351         If (l_found) Then
1352 		   CS_COUNTERS_PUB.AUTOINSTANTIATE_COUNTERS(
1353 			 p_api_version               => p_api_version,
1354 			 p_init_msg_list             => p_init_msg_list,
1355 			 x_return_status             => l_return_status,
1356 			 x_msg_count                 => x_msg_count,
1357 			 x_msg_data             	    => x_msg_data,
1358 			 p_commit                    => 'F',
1359 			 p_source_object_id_template => l_item_id, --474 from c_item for old line
1360 			 p_source_object_id_instance => p_new_cle_id,--new line id
1361 			 x_ctr_grp_id_template       => l_ctr_grp_id_template,
1362 			 x_ctr_grp_id_instance       => l_ctr_grp_id_instance);
1363 
1364     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1365       FND_LOG.string(FND_LOG.level_statement
1366                         ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.instantiate_counters'
1367                         ,'After call to CS_COUNTERS_PUB.AUTOINSTANTIATE_COUNTERS'
1368 		       ||'p_new_cle_id='||p_new_cle_id
1369                        ||'x_ctr_grp_id_template='||l_ctr_grp_id_template
1370                        ||'x_ctr_grp_id_instance='||l_ctr_grp_id_instance
1371                          );
1372     END IF;
1373 
1374 
1375 		   IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1376 			x_return_status := l_return_status;
1377 			RAISE G_EXCEPTION_HALT_VALIDATION;
1378 		   END IF;
1379 
1380 		   l_instcnd_inp_rec.ins_ctr_grp_id   := l_ctr_grp_id_instance;
1381 		   l_instcnd_inp_rec.tmp_ctr_grp_id   := l_ctr_grp_id_template;
1382 		   l_instcnd_inp_rec.jtot_object_code := 'OKC_K_LINE';
1383 		   l_instcnd_inp_rec.cle_id           := p_new_cle_id;
1384 		   l_instcnd_inp_rec.inv_item_id      := l_item_id;
1385                    --npalepu added on 20-mar-2006 for bug # 5102052
1386                    l_instcnd_inp_rec.chr_id           := p_new_chr_id;
1387                    --end npalepu
1388 
1389 		   OKC_INST_CND_PUB.INST_CONDITION(
1390 			 p_api_version               => p_api_version,
1391 			 p_init_msg_list             => p_init_msg_list,
1392 			 x_return_status             => l_return_status,
1393 			 x_msg_count                 => x_msg_count,
1394 			 x_msg_data             	    => x_msg_data,
1395 			 p_instcnd_inp_rec           => l_instcnd_inp_rec);
1396 
1397 		   IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1398 			x_return_status := l_return_status;
1399 			RAISE G_EXCEPTION_HALT_VALIDATION;
1400 		   END IF;
1401           End If;
1402       END IF;
1403 
1404     EXCEPTION
1405       WHEN G_EXCEPTION_HALT_VALIDATION THEN
1406         NULL;
1407       WHEN OTHERS THEN
1408         -- store SQL error message on message stack for caller
1409         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1410         -- notify caller of an UNEXPECTED error
1411         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1412     END instantiate_counters_events;
1413 
1414     FUNCTION get_parent_date(p_from_start_date IN DATE,
1415                              p_from_end_date   IN DATE,
1416                              p_to_cle_id       IN NUMBER,
1417                              p_to_chr_id       IN NUMBER,
1418                              x_start_date      OUT NOCOPY DATE,
1419                              x_end_date        OUT NOCOPY DATE) RETURN BOOLEAN IS
1420 
1421       l_parent_start_date      DATE;
1422       l_parent_end_date        DATE;
1423 
1424 	 CURSOR  c_cle IS
1425       SELECT  start_date,end_date
1426       FROM    okc_k_lines_b
1427       WHERE   id = p_to_cle_id;
1428 
1429 	 CURSOR  c_chr IS
1430       SELECT  start_date,end_date
1431       FROM    okc_k_headers_b
1432       WHERE   id = p_to_chr_id;
1433 
1434     BEGIN
1435       IF (p_to_chr_id IS NULL OR p_to_chr_id = OKC_API.G_MISS_NUM) THEN
1436         OPEN c_cle;
1437         FETCH c_cle INTO l_parent_start_date,l_parent_end_date;
1438         CLOSE c_cle;
1439         IF (NVL(p_from_start_date,sysdate)
1440            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) AND
1441            (NVL(p_from_end_date,sysdate)
1442            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) THEN
1443            RETURN(TRUE);
1444         ELSE
1445            x_start_date := l_parent_start_date;
1446            x_end_date := l_parent_end_date;
1447            RETURN(FALSE);
1448         END IF;
1449       ELSE
1450         OPEN c_chr;
1451         FETCH c_chr INTO l_parent_start_date,l_parent_end_date;
1452         CLOSE c_chr;
1453         IF (NVL(p_from_start_date,sysdate)
1454            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) AND
1455            (NVL(p_from_end_date,sysdate)
1456            BETWEEN NVL(l_parent_start_date,sysdate) AND NVL(l_parent_end_date,sysdate)) THEN
1457            RETURN(TRUE);
1458         ELSE
1459            x_start_date := l_parent_start_date;
1460            x_end_date := l_parent_end_date;
1461            RETURN(FALSE);
1462        END IF;
1463      END IF;
1464      RETURN(TRUE);
1465     END get_parent_date;
1466 
1467   ----------------------------------------------------------------------------
1468 ----------------------------------------------------------------------------
1469   -- Proceduere to create operation instance and operation lines for
1470   -- contract header in case of RENEW
1471   -- Parameters: p_chrv_rec    - in header record for object_chr_id and scs_code
1472   --             p_to_chr_id   - subject_chr_id
1473 ----------------------------------------------------------------------------
1474   PROCEDURE Create_Renewal_Header_Link (
1475     p_api_version                  IN NUMBER,
1476     p_init_msg_list                IN VARCHAR2 ,
1477     x_return_status                OUT NOCOPY VARCHAR2,
1478     x_msg_count                    OUT NOCOPY NUMBER,
1479     x_msg_data                     OUT NOCOPY VARCHAR2,
1480     p_chrv_rec                     IN OKC_CONTRACT_PUB.chrv_rec_type,
1481     p_to_chr_id                    IN NUMBER)
1482   IS
1483     -- Cursor to get class operation id
1484     Cursor cop_csr Is
1485 		 SELECT id
1486 		 FROM okc_class_operations
1487 		 WHERE cls_code = ( SELECT cls_code
1488 						FROM okc_subclasses_b
1489 						WHERE code = p_chrv_rec.scs_code )
1490            AND opn_code = 'RENEWAL';
1491 
1492     l_cop_id        NUMBER;
1493     l_oiev_rec      OKC_OPER_INST_PUB.oiev_rec_type;
1494     lx_oiev_rec     OKC_OPER_INST_PUB.oiev_rec_type;
1495     l_olev_rec      OKC_OPER_INST_PUB.olev_rec_type;
1496     lx_olev_rec     OKC_OPER_INST_PUB.olev_rec_type;
1497     l_count         NUMBER := 0;
1498   BEGIN
1499     -- get class operation id
1500     open cop_csr;
1501     fetch cop_csr into l_cop_id;
1502     close cop_csr;
1503 
1504     l_oiev_rec.cop_id := l_cop_id;
1505     l_oiev_rec.target_chr_id := p_to_chr_id;
1506     --l_oiev_rec.status_code := 'ENTERED';
1507     l_oiev_rec.status_code := 'PROCESSED';
1508 
1509     OKC_OPER_INST_PUB.Create_Operation_Instance (
1510 	 p_api_version		=> p_api_version,
1511 	 p_init_msg_list	=> p_init_msg_list,
1512       x_return_status 	=> x_return_status,
1513       x_msg_count     	=> x_msg_count,
1514       x_msg_data      	=> x_msg_data,
1515       p_oiev_rec		=> l_oiev_rec,
1516       x_oiev_rec		=> lx_oiev_rec);
1517 
1518    If (x_return_status = FND_API.G_RET_STS_SUCCESS) Then
1519        l_olev_rec.SELECT_YN      := NULL;
1520        l_olev_rec.ACTIVE_YN      := 'Y';
1521        l_olev_rec.PROCESS_FLAG   := 'P';
1522 	  l_olev_rec.OIE_ID         := lx_oiev_rec.id;
1523 	  l_olev_rec.SUBJECT_CHR_ID := p_to_chr_id;
1524 	  l_olev_rec.OBJECT_CHR_ID  := p_chrv_rec.id;
1525 
1526        OKC_OPER_INST_PUB.Create_Operation_Line (
1527 	       p_api_version	=> p_api_version,
1528 	       p_init_msg_list	=> p_init_msg_list,
1529             x_return_status 	=> x_return_status,
1530             x_msg_count     	=> x_msg_count,
1531             x_msg_data      	=> x_msg_data,
1532             p_olev_rec		=> l_olev_rec,
1533             x_olev_rec		=> lx_olev_rec);
1534 	  If (x_return_status = FND_API.G_RET_STS_SUCCESS) Then
1535            -- set g_op_lines table
1536            l_count := g_op_lines.COUNT + 1;
1537            g_op_lines(l_count).id     := p_chrv_rec.ID;
1538            g_op_lines(l_count).ole_id := lx_olev_rec.ID;
1539        End if;
1540    End If;
1541 
1542   EXCEPTION
1543     when NO_DATA_FOUND then
1544 	  -- store SQL error message on message stack
1545 	  x_return_status := FND_API.G_RET_STS_ERROR;
1546   	  OKC_API.SET_MESSAGE(p_app_name		=> g_app_name,
1547 					  p_msg_name		=> 'OKC_NOT_FOUND',
1548 					  p_token1		=> 'VALUE1',
1549 					  p_token1_value	=> 'Status Code',
1550 					  p_token2		=> 'VALUE2',
1551 					  p_token2_value	=> 'OKC_CLASS_OPERATIONS_V');
1552     when OTHERS then
1553 	  -- store SQL error message on message stack
1554   	  OKC_API.SET_MESSAGE(p_app_name		=> g_app_name,
1555 					  p_msg_name		=> g_unexpected_error,
1556 					  p_token1		=> g_sqlcode_token,
1557 					  p_token1_value	=> sqlcode,
1558 					  p_token2		=> g_sqlerrm_token,
1559 					  p_token2_value	=> sqlerrm);
1560 	   -- notify caller of an error as UNEXPECTED error
1561         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1562   END Create_Renewal_Header_Link;
1563 
1564   ----------------------------------------------------------------------------
1565   --Proceudre copy_contract_header
1566   ----------------------------------------------------------------------------
1567   PROCEDURE copy_contract_header(
1568     p_api_version                  IN NUMBER,
1569     p_init_msg_list                IN VARCHAR2 ,
1570     x_return_status                OUT NOCOPY VARCHAR2,
1571     x_msg_count                    OUT NOCOPY NUMBER,
1572     x_msg_data                     OUT NOCOPY VARCHAR2,
1573     p_from_chr_id                  IN NUMBER,
1574     p_contract_number		   IN VARCHAR2,
1575     p_contract_number_modifier     IN VARCHAR2,
1576     p_to_template_yn     	   IN VARCHAR2,
1577     p_renew_ref_yn                 IN VARCHAR2,
1578     x_to_chr_id		           OUT NOCOPY NUMBER) IS
1579 
1580     l_api_name        CONSTANT VARCHAR2(30) := 'COPY_CONTRACT_HEADER';
1581     l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
1582 
1583 
1584     l_chrv_rec 	chrv_rec_type;
1585     x_chrv_rec 	chrv_rec_type;
1586 
1587     l_pat_id        NUMBER;
1588     l_pav_id        NUMBER;
1589     l_pac_id        NUMBER;
1590     l_paa_id        NUMBER;
1591     l_sts_code      VARCHAR2(30);
1592     l_status_type   VARCHAR2(30) := 'ENTERED';
1593     l_orig_system_source_code   VARCHAR2(30) := 'OKC_HDR';
1594     l_return_status	VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1595     l_from_version  FND_ATTACHED_DOCUMENTS.PK2_VALUE%TYPE;
1596 
1597     l_euro_currency          varchar2(15) := NULL; /* For Euro Conversion - Bug 2155930 */
1598     l_converted_amount       number := NULL; /* For Euro Conversion - Bug 2155930 */
1599 
1600     l_scrv_id       NUMBER;
1601     l_history_id    NUMBER;
1602 
1603     l_gvev_id       NUMBER;
1604     l_entity_name     VARCHAR2(30);
1605     l_from_entity_name VARCHAR2(30);
1606     l_to_entity_name   VARCHAR2(30);
1607     --variables created for bug 8361496
1608     l_conversion_rate  NUMBER;
1609     l_euro_rate     NUMBER;
1610     l_from_currency VARCHAR2(50);
1611     l_to_currency VARCHAR2(50);
1612 
1613     CURSOR c_pavv IS
1614     SELECT id
1615     FROM okc_price_att_values_V
1616     WHERE chr_id = p_from_chr_id;
1617 
1618     CURSOR c_patv IS
1619     SELECT id
1620     FROM okc_price_adjustments_V
1621     WHERE chr_id = p_from_chr_id
1622     AND  cle_id IS NULL; -- Added for Bug 2027165
1623 
1624     -- cursor for goverances
1625     CURSOR  c_governances IS
1626     SELECT  id
1627     FROM    okc_governances_v
1628     WHERE   dnz_chr_id = p_from_chr_id
1629     AND	    cle_id is null;
1630 ------------------------------------------
1631 -- Cursor for status change history
1632    CURSOR history_csr(p_chr_id NUMBER) IS
1633    SELECT id
1634    FROM okc_k_history_b
1635    WHERE TO_CHAR(CREATION_DATE, 'DD-MON-YYYY HH:MI:SS') =
1636        (SELECT MAX(TO_CHAR(CREATION_DATE, 'DD-MON-YYYY HH:MI:SS'))
1637         FROM OKC_K_HISTORY_B
1638         WHERE CHR_ID = p_chr_id)
1639    AND CHR_ID = p_chr_id;
1640 
1641 
1642   BEGIN
1643 
1644     x_return_status := l_return_status;
1645     l_return_status := get_chrv_rec(	p_chr_id 	=> p_from_chr_id,
1646 					x_chrv_rec 	=> l_chrv_rec);
1647 
1648      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1649          FND_LOG.string(FND_LOG.level_statement
1650                         ,l_module_name||'.get_chrv_rec'
1651                         ,'Contract ID='||l_chrv_rec.ID||', Contract Number='||l_chrv_rec.contract_number
1652                          );
1653      END IF;
1654 
1655     /* The following logic of setting the context has been moved here from below becasue of the requirement of Euro Conversion - Bug 2155930 */
1656     -- Sets the context.
1657       okc_context.set_okc_org_context(l_chrv_rec.authoring_org_id,l_chrv_rec.inv_organization_id);
1658     --END IF;
1659 
1660     IF l_chrv_rec.authoring_org_id <> okc_context.get_okc_org_id OR
1661        l_chrv_rec.inv_organization_id <> okc_context.get_okc_organization_id THEN
1662       OKC_API.SET_MESSAGE('OKC','OKC_INCOMPATIBLE_ORG');
1663       x_return_status := OKC_API.G_RET_STS_ERROR;
1664       RAISE G_EXCEPTION_HALT_VALIDATION;
1665     END IF;
1666 
1667    --moving the initialization of g_application_id up for Bug 3693912
1668    --  g_application_id := l_chrv_rec.application_id;
1669 
1670 
1671     /* Fixing Renewal for Euro Conversion - at Header Level - Bug 2155930 */
1672     if (p_renew_ref_yn = 'Y') then
1673 
1674        l_euro_currency := OKC_CURRENCY_API.GET_EURO_CURRENCY_CODE(l_chrv_rec.currency_code);
1675 
1676        if (l_euro_currency <> l_chrv_rec.currency_code) then
1677              If l_chrv_rec.application_id in (510,871) Then
1678                select CONVERSION_TYPE, CONVERSION_RATE, CONVERSION_DATE
1679                into   g_conversion_type, g_conversion_rate, g_conversion_date
1680                from   okc_conversion_attribs_v
1681                where  DNZ_CHR_ID = l_chrv_rec.id
1682                and    chr_id = l_chrv_rec.id;
1683              Else
1684             -- /Rules migration/
1685             --FOr other contracts classes, conversion data is now stored at the header level
1686              select CONVERSION_TYPE, CONVERSION_RATE, CONVERSION_rate_DATE
1687              into   g_conversion_type, g_conversion_rate, g_conversion_date
1688              from okc_k_headers_b
1689              where id = l_chrv_rec.id;
1690              End If;
1691 
1692            fnd_profile.get('OKC_EURO_DEFAULT_PRICELIST', g_pricelist);
1693 
1694            if (g_pricelist is NULL) then
1695               fnd_message.set_name('OKC','OKC_PROFILE_CHECK');
1696               fnd_message.set_token('PROFILE','OKC_EURO_DEFAULT_PRICELIST');
1697               FND_MSG_PUB.add;
1698               x_return_status := FND_API.G_RET_STS_ERROR;
1699               RAISE G_EXCEPTION_HALT_VALIDATION;
1700            end if;
1701 
1702    --/Rule Migration/
1703    --Update price list on the header instead of price rule
1704            If l_chrv_rec.application_id not in (510,871) Then
1705               l_chrv_rec.price_list_id := g_pricelist;
1706            End If;
1707 
1708 
1709            OKC_CURRENCY_API.CONVERT_AMOUNT
1710                          (p_FROM_CURRENCY => l_chrv_rec.currency_code,
1711                           p_TO_CURRENCY => l_euro_currency,
1712                           p_CONVERSION_DATE => g_conversion_date,
1713                           p_CONVERSION_TYPE => g_conversion_type,
1714                           p_AMOUNT => l_chrv_rec.estimated_amount,
1715                           x_CONVERSION_RATE => g_conversion_rate,
1716                           x_CONVERTED_AMOUNT => l_converted_amount
1717                          );
1718            l_chrv_rec.estimated_amount := l_converted_amount;
1719            l_chrv_rec.currency_code := l_euro_currency;
1720 
1721        end if;
1722     end if;
1723 
1724     l_chrv_rec.chr_id_response    		:= NULL;
1725     l_chrv_rec.chr_id_award       		:= NULL;
1726     l_chrv_rec.archived_yn        		:= 'N';
1727     l_chrv_rec.deleted_yn         		:= 'N';
1728 
1729     okc_assent_pub.get_default_status( x_return_status => l_return_status,
1730 							    p_status_type  => l_status_type,
1731 							    x_status_code  => l_sts_code);
1732     l_chrv_rec.sts_code                         := l_sts_code;
1733     l_chrv_rec.date_approved    		:= NULL;
1734     l_chrv_rec.datetime_cancelled    		:= NULL;
1735     l_chrv_rec.date_issued	    		:= NULL;
1736     l_chrv_rec.datetime_responded    		:= NULL;
1737     l_chrv_rec.non_response_reason    		:= NULL;
1738     l_chrv_rec.non_response_explain    		:= NULL;
1739     l_chrv_rec.rfp_type		    		:= NULL;
1740     l_chrv_rec.set_aside_reason    		:= NULL;
1741     l_chrv_rec.set_aside_percent    		:= NULL;
1742     l_chrv_rec.response_copies_req    		:= NULL;
1743     l_chrv_rec.date_close_projected    		:= NULL;
1744     l_chrv_rec.datetime_proposed    		:= NULL;
1745     l_chrv_rec.date_signed	    		:= NULL;
1746     l_chrv_rec.date_terminated    		:= NULL;
1747     -- Bug 1975070 - Date Approved should be Null after Copy
1748     l_chrv_rec.date_approved    		:= NULL;
1749     -- Bug 1975070
1750     l_chrv_rec.date_renewed	    		:= NULL;
1751     l_chrv_rec.trn_code    			:= NULL;
1752     l_chrv_rec.orig_system_source_code          := l_orig_system_source_code;
1753     l_chrv_rec.orig_system_id1 			:= p_from_chr_id;
1754     l_chrv_rec.orig_system_reference1           := NULL;
1755     l_chrv_rec.term_cancel_source 		:= NULL; -- Bug 4641561
1756 
1757     IF p_to_template_yn = 'Y' THEN
1758       IF l_chrv_rec.template_yn = 'N' THEN
1759         l_chrv_rec.template_yn := 'Y';
1760         l_chrv_rec.template_used := NULL;
1761       END IF;
1762     ELSIF p_to_template_yn = 'N' THEN
1763       IF l_chrv_rec.template_yn = 'Y' THEN
1764         l_chrv_rec.template_yn := 'N';
1765         l_chrv_rec.template_used := l_chrv_rec.contract_number;
1766       END IF;
1767     END IF;
1768 
1769     -- this needs to be assigned after the template used is assigned from the old contract number
1770     l_chrv_rec.contract_number			:= p_contract_number;
1771     l_chrv_rec.contract_number_modifier		:= p_contract_number_modifier;
1772 
1773     IF p_renew_ref_yn = 'Y' THEN
1774 	  l_chrv_rec.ESTIMATED_AMOUNT_RENEWED := l_chrv_rec.ESTIMATED_AMOUNT;
1775 	  l_chrv_rec.CURRENCY_CODE_RENEWED    := l_chrv_rec.CURRENCY_CODE;
1776     END IF;
1777     --l_chrv_rec.estimated_amount		:= NULL;
1778     -- Bug 2069569 When Copy called from renew donot nullify estimated amount
1779     --             Otherwise nullify estimated amount
1780 -- Bug 2836000 start  commented out as copy api should copy header amoutn as well in all the cases
1781 /*
1782     IF p_renew_ref_yn <> 'Y'  THEN
1783        l_chrv_rec.estimated_amount		:= NULL;
1784     END IF;
1785 */
1786 -- Bug 2836000 end  commented out as copy api should copy header amoutn as well in all the cases
1787     -- Bug 2027165 - Added user_estimated amount as this is new column
1788     l_chrv_rec.user_estimated_amount	:= NULL;
1789 
1790      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1791       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1792          FND_LOG.string(FND_LOG.level_statement
1793                         ,l_module_name||'.okc_contract_pub.create_contract_header'
1794                         ,'Before call to okc_contract_pub.create_contract_header:'
1795                          ||'l_Chrv_rec.ID='||l_chrv_rec.id
1796                          );
1797       END IF;
1798      END IF;
1799 
1800      /*cgopinee bugfix for 8361496*/
1801      IF p_renew_ref_yn = 'Y' then
1802        IF ((l_chrv_rec.conversion_type is not null)  and (upper(l_chrv_rec.conversion_type) <>'USER')) THEN
1803          IF FND_PROFILE.VALUE('OKS_CURR_CONV_DATE')='SYSDATE' then
1804             l_from_currency :=l_chrv_rec.currency_code;
1805             l_to_currency := OKC_CURRENCY_API.GET_OU_CURRENCY(l_chrv_rec.authoring_org_id);
1806             l_chrv_rec.conversion_rate_date := SYSDATE;
1807             okc_currency_api.get_rate
1808 	               (P_FROM_CURRENCY => l_from_currency,
1809 	                P_TO_CURRENCY  => l_to_currency,
1810 	                P_CONVERSION_DATE => SYSDATE,
1811 	                P_CONVERSION_TYPE => l_chrv_rec.conversion_type,
1812 	                X_CONVERSION_RATE => l_conversion_rate,
1813 	                X_EURO_RATE    => l_euro_rate ,
1814 	                X_return_status => l_return_status);
1815 
1816              IF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
1817 	       l_chrv_rec.conversion_rate := l_conversion_rate;
1818 	     ELSE
1819 	       l_chrv_rec.conversion_rate := NULL;
1820              END IF;
1821 
1822         END IF;--END PROFILE
1823       END IF;--END CONVERSION TYPE
1824     END IF;
1825     /*The profile value is not checked for 'CONTRACT'since the current logic by default copies it from old contract*/
1826 
1827     /* end of bugfix for 8361496*/
1828 
1829 
1830     OKC_CONTRACT_PUB.create_contract_header(
1831 	   p_api_version	     => p_api_version,
1832            p_init_msg_list	=> p_init_msg_list,
1833            x_return_status 	=> l_return_status,
1834            x_msg_count     	=> x_msg_count,
1835            x_msg_data      	=> x_msg_data,
1836            p_chrv_rec		=> l_chrv_rec,
1837            x_chrv_rec		=> x_chrv_rec);
1838 
1839 
1840      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1841       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1842          FND_LOG.string(FND_LOG.level_statement
1843                         ,l_module_name||'.okc_contract_pub.create_contract_header'
1844                         ,'After call to okc_contract_pub.create_contract_header: x_return_status:'||l_return_status
1845                          ||' '||SQLERRM
1846                          );
1847       END IF;
1848      END IF;
1849 
1850     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1851         x_return_status := l_return_status;
1852         RAISE G_EXCEPTION_HALT_VALIDATION;
1853     END IF;
1854 
1855     g_chrv_rec := x_chrv_rec;
1856     x_to_chr_id := x_chrv_rec.id; -- passes the new generated id to the caller.
1857 
1858     IF p_renew_ref_yn = 'Y' THEN
1859        --if the copy is for RENEW, create operation instance and operation lines
1860        Create_Renewal_Header_Link(
1861 	      p_api_version	     => p_api_version,
1862            p_init_msg_list	=> p_init_msg_list,
1863            x_return_status 	=> l_return_status,
1864            x_msg_count     	=> x_msg_count,
1865            x_msg_data      	=> x_msg_data,
1866            p_chrv_rec		=> l_chrv_rec,
1867            p_to_chr_id		=> x_to_chr_id);
1868        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1869         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1870          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1871           FND_LOG.string(FND_LOG.level_statement
1872                         ,l_module_name||'.create_renewal_header_link'
1873                         ,'After call to Create_Renewal_Header_Link: x_return_status:'||l_return_status
1874                          ||' '||SQLERRM
1875                          );
1876          END IF;
1877         END IF;
1878            x_return_status := l_return_status;
1879            RAISE G_EXCEPTION_HALT_VALIDATION;
1880        END IF;
1881 
1882     END IF;
1883 /* 27-Apr-2006 hkamdar Commented code for copy attachment for bug #5173429.
1884     -- copy associated attachments
1885     l_from_version := Get_Major_Version(p_from_chr_id);
1886 
1887     IF (l_from_version = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1888         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1889         RAISE G_EXCEPTION_HALT_VALIDATION;
1890     END IF;
1891 
1892     -- set attachement session variables
1893     -- before calling fnd_attachment_util_pkg.get_atchmt_exists
1894     Set_Attach_Session_Vars(p_from_chr_id);
1895 
1896      l_entity_name := 'OKC_K_HEADERS_V';
1897      l_from_entity_name := 'OKC_K_HEADERS_V';
1898      l_to_entity_name := 'OKC_K_HEADERS_V';
1899 
1900        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1901         FND_LOG.string(FND_LOG.level_statement
1902          ,l_module_name||'.fnd_attachment_util_pkg.get_atchmt_exists'
1903          ,'Before call to fnd_attachment_util_pkg.get_atchmt_exists'
1904         	||' l_entity_name='||l_entity_name
1905         	||',l_pkey1='||p_from_chr_id
1906         	||',l_peky2='||l_from_version
1907 		||',x_to_chr_id='||x_to_chr_id
1908 		||',12_function_type='||FND_ATTACHMENT_UTIL_PKG.function_type
1909 		||',12_function_name='||FND_ATTACHMENT_UTIL_PKG.function_name
1910           );
1911        END IF;
1912     If (fnd_attachment_util_pkg.get_atchmt_exists (
1913 			  l_entity_name => l_entity_name,
1914 			  l_pkey1 => p_from_chr_id
1915 			  --l_pkey2 => l_from_version
1916 			  ) = 'Y') then
1917 
1918 			  -- The following line to be added to the code once
1919 			  -- bug 1553916 completes
1920 			  -- ,l_pkey2 => l_from_version) = 'Y')
1921 			  -- also below remove the comments
1922 			  -- in fnd_attached_documents2_pkg.copy_attachments call
1923        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1924         FND_LOG.string(FND_LOG.level_statement
1925          ,l_module_name
1926          ,'After call to fnd_attachment_util_pkg.get_atchmt_exists'
1927           );
1928        END IF;
1929 
1930       Begin
1931         fnd_attached_documents2_pkg.copy_attachments(
1932                           x_from_entity_name => l_from_entity_name,
1933                           x_from_pk1_value   => p_from_chr_id,
1934                           --x_from_pk2_value   => l_from_version,
1935                           x_to_entity_name => l_to_entity_name,
1936                           x_to_pk1_value   => x_to_chr_id
1937                           --x_to_pk2_value   => '0'
1938 					 );
1939 		IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1940 		    FND_LOG.string(FND_LOG.level_statement
1941 		   	            ,l_module_name
1942 					  ,'After call to fnd_attached_documents2_pkg.copy_attachments'
1943 					   );
1944 		END IF;
1945 
1946             EXCEPTION
1947                WHEN OTHERS THEN
1948                  IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
1949                   IF (FND_LOG.test(FND_LOG.level_unexpected, l_module_name)) THEN
1950                     FND_LOG.string(FND_LOG.level_unexpected
1951                         ,l_module_name||'.fnd_attached_documents2_pkg.copy_attachments'
1952                         ,'After call to fnd_attached_documents2_pkg.copy_attachments'
1953                          ||' '||SQLERRM
1954                          );
1955                   END IF;
1956                  END IF;
1957 			  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1958       End;
1959     End if;
1960 End 27-Apr-2006 hkamdar Commented code for copy attachment for bug #5173429.*/
1961     copy_accesses(
1962 	   p_api_version	=> p_api_version,
1963            p_init_msg_list	=> p_init_msg_list,
1964            x_return_status 	=> l_return_status,
1965            x_msg_count     	=> x_msg_count,
1966            x_msg_data      	=> x_msg_data,
1967            p_from_chr_id	=> p_from_chr_id,
1968 	   p_to_chr_id 		=> x_chrv_rec.id);
1969 
1970     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1971      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1972       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
1973          FND_LOG.string(FND_LOG.level_statement
1974                         ,l_module_name||'.copy_accesses'
1975                         ,'After call to copy_acceses: x_return_status:'||l_return_status
1976                          ||' '||SQLERRM
1977                          );
1978       END IF;
1979      END IF;
1980       IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1981         x_return_status := l_return_status;
1982         RAISE G_EXCEPTION_HALT_VALIDATION;
1983       ELSE
1984         x_return_status := l_return_status;
1985       END IF;
1986     END IF;
1987 
1988     copy_processes(
1989 	   p_api_version	=> p_api_version,
1990            p_init_msg_list	=> p_init_msg_list,
1991            x_return_status 	=> l_return_status,
1992            x_msg_count     	=> x_msg_count,
1993            x_msg_data      	=> x_msg_data,
1994            p_from_chr_id	=> p_from_chr_id,
1995 	   p_to_chr_id 		=> x_chrv_rec.id);
1996 
1997     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1998      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
1999       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
2000          FND_LOG.string(FND_LOG.level_statement
2001                         ,l_module_name||'.copy_processes'
2002                         ,'After call to copy_processes : x_return_status:'||l_return_status
2003                          ||' '||SQLERRM
2004                          );
2005       END IF;
2006      END IF;
2007       IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2008         x_return_status := l_return_status;
2009         RAISE G_EXCEPTION_HALT_VALIDATION;
2010       ELSE
2011         x_return_status := l_return_status;
2012       END IF;
2013     END IF;
2014 
2015     copy_grpings(
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_from_chr_id	=> p_from_chr_id,
2022 	   p_to_chr_id 		=> x_chrv_rec.id);
2023 
2024     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2025      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
2026       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
2027          FND_LOG.string(FND_LOG.level_statement
2028                         ,l_module_name||'.copy_grpings'
2029                         ,'After call to copy_grpings: x_return_status:'||l_return_status
2030                          ||' '||SQLERRM
2031                          );
2032       END IF;
2033      END IF;
2034       IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2035         x_return_status := l_return_status;
2036         RAISE G_EXCEPTION_HALT_VALIDATION;
2037       ELSE
2038         x_return_status := l_return_status;
2039       END IF;
2040     END IF;
2041 
2042 /****** For Bug#3052910 ***********************************************************
2043 --Following condn is added .IF (p_renew_ref_yn = 'Y') THEN before the loop.
2044 --The condition " IF (p_renew_ref_yn = 'Y') THEN " is removed for price hold change
2045 --Price hold changes are obsoleted hence reverting the changes.
2046 ******* For Bug#3052910 ***********************************************************/
2047 
2048    IF (p_renew_ref_yn = 'Y') THEN --Added for Bug#3052910
2049 
2050     FOR l_c_governances IN c_governances LOOP
2051 
2052       copy_governances (
2053 	   p_api_version	=> p_api_version,
2054            p_init_msg_list	=> p_init_msg_list,
2055            x_return_status 	=> l_return_status,
2056            x_msg_count     	=> x_msg_count,
2057            x_msg_data      	=> x_msg_data,
2058            p_gvev_id            => l_c_governances.id,
2059            p_cle_id		=> NULL,
2060            p_chr_id		=> x_chrv_rec.id,
2061            x_gvev_id		=> l_gvev_id);
2062 
2063 
2064       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2065          IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2066              x_return_status := l_return_status;
2067              RAISE G_EXCEPTION_HALT_VALIDATION;
2068          ELSE
2069 	     x_return_status := l_return_status;
2070          END IF;
2071       END IF;
2072     END LOOP;
2073 
2074   END IF; -- IF (p_renew_ref_yn = 'Y') THEN
2075 
2076 /*
2077   FOR l_c_pavv IN c_pavv LOOP
2078       copy_price_att_values (
2079            p_api_version        => p_api_version,
2080            p_init_msg_list      => p_init_msg_list,
2081            x_return_status      => l_return_status,
2082            x_msg_count          => x_msg_count,
2083            x_msg_data           => x_msg_data,
2084            p_pav_id             => l_c_pavv.id,
2085            p_cle_id             => NULL,
2086            p_chr_id             => x_chrv_rec.id,
2087            x_pav_id             => l_pav_id);
2088 
2089       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2090         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2091           x_return_status := l_return_status;
2092           RAISE G_EXCEPTION_HALT_VALIDATION;
2093         ELSE
2094              x_return_status := l_return_status;
2095         END IF;
2096       END IF;
2097   END LOOP;
2098 
2099   FOR l_c_patv IN c_patv LOOP
2100       copy_price_adjustments (
2101            p_api_version        => p_api_version,
2102            p_init_msg_list      => p_init_msg_list,
2103            x_return_status      => l_return_status,
2104            x_msg_count          => x_msg_count,
2105            x_msg_data           => x_msg_data,
2106            p_pat_id             => l_c_patv.id,
2107            p_cle_id             => NULL,
2108            p_chr_id             => x_chrv_rec.id,
2109            x_pat_id             => l_pat_id);
2110 
2111       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2112         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
2113           x_return_status := l_return_status;
2114           RAISE G_EXCEPTION_HALT_VALIDATION;
2115         ELSE
2116              x_return_status := l_return_status;
2117         END IF;
2118       END IF;
2119 
2120  END LOOP;
2121  */
2122 
2123 
2124 
2125   EXCEPTION
2126     WHEN G_EXCEPTION_HALT_VALIDATION THEN
2127       NULL;
2128     WHEN OTHERS THEN
2129       -- store SQL error message on message stack for caller
2130       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2131       -- notify caller of an UNEXPECTED error
2132       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2133 
2134   END copy_contract_header;
2135 
2136 
2137   ----------------------------------------------------------------------------
2138   --Function to populate the contract items record to be copied.
2139   ----------------------------------------------------------------------------
2140     FUNCTION    get_cimv_rec(p_cim_id IN NUMBER,
2141 				x_cimv_rec OUT NOCOPY cimv_rec_type) RETURN  VARCHAR2 IS
2142       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2143       l_no_data_found BOOLEAN := TRUE;
2144 
2145       CURSOR c_cimv_rec IS
2146       SELECT	ID,
2147 		CLE_ID,
2148 		CHR_ID,
2149 		CLE_ID_FOR,
2150 		DNZ_CHR_ID,
2151 		OBJECT1_ID1,
2152 		OBJECT1_ID2,
2153 		JTOT_OBJECT1_CODE,
2154 		UOM_CODE,
2155 		EXCEPTION_YN,
2156 		NUMBER_OF_ITEMS,
2157                 PRICED_ITEM_YN
2158 	FROM    OKC_K_ITEMS_V
2159 	WHERE 	ID = p_cim_id;
2160     BEGIN
2161       OPEN c_cimv_rec;
2162       FETCH c_cimv_rec
2163       INTO	x_cimv_rec.ID,
2164 		x_cimv_rec.CLE_ID,
2165 		x_cimv_rec.CHR_ID,
2166 		x_cimv_rec.CLE_ID_FOR,
2167 		x_cimv_rec.DNZ_CHR_ID,
2168 		x_cimv_rec.OBJECT1_ID1,
2169 		x_cimv_rec.OBJECT1_ID2,
2170 		x_cimv_rec.JTOT_OBJECT1_CODE,
2171 		x_cimv_rec.UOM_CODE,
2172 		x_cimv_rec.EXCEPTION_YN,
2173 		x_cimv_rec.NUMBER_OF_ITEMS,
2174 		x_cimv_rec.PRICED_ITEM_YN;
2175 
2176 
2177       l_no_data_found := c_cimv_rec%NOTFOUND;
2178       CLOSE c_cimv_rec;
2179       IF l_no_data_found THEN
2180         l_return_status := FND_API.G_RET_STS_ERROR;
2181         return(l_return_status);
2182       ELSE
2183         return(l_return_status);
2184       END IF;
2185     EXCEPTION
2186       WHEN OTHERS THEN
2187         -- store SQL error message on message stack for caller
2188         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2189         -- notify caller of an UNEXPECTED error
2190         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2191         return(l_return_status);
2192 
2193     END get_cimv_rec;
2194   ----------------------------------------------------------------------------
2195   --Function to populate the contract access record to be copied.
2196   ----------------------------------------------------------------------------
2197     FUNCTION    get_cacv_rec(p_cac_id IN NUMBER,
2198 				x_cacv_rec OUT NOCOPY cacv_rec_type) RETURN  VARCHAR2 IS
2199       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2200       l_no_data_found BOOLEAN := TRUE;
2201 
2202       CURSOR c_cacv_rec IS
2203       SELECT	ID,
2204 		GROUP_ID,
2205 		CHR_ID,
2206 		RESOURCE_ID,
2207 		ACCESS_LEVEL
2208 	FROM    OKC_K_ACCESSES_V
2209 	WHERE 	ID = p_cac_id;
2210 
2211     BEGIN
2212       OPEN c_cacv_rec;
2213       FETCH c_cacv_rec
2214       INTO	x_cacv_rec.ID,
2215 		x_cacv_rec.GROUP_ID,
2216 		x_cacv_rec.CHR_ID,
2217 		x_cacv_rec.RESOURCE_ID,
2218 		x_cacv_rec.ACCESS_LEVEL;
2219 
2220       l_no_data_found := c_cacv_rec%NOTFOUND;
2221       CLOSE c_cacv_rec;
2222       IF l_no_data_found THEN
2223         l_return_status := FND_API.G_RET_STS_ERROR;
2224         return(l_return_status);
2225       ELSE
2226         return(l_return_status);
2227       END IF;
2228     EXCEPTION
2229       WHEN OTHERS THEN
2230         -- store SQL error message on message stack for caller
2231         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2232         -- notify caller of an UNEXPECTED error
2233         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2234         return(l_return_status);
2235 
2236     END get_cacv_rec;
2237 
2238   ----------------------------------------------------------------------------
2239   --Function to populate the contract party roles record to be copied.
2240   ----------------------------------------------------------------------------
2241     FUNCTION    get_cplv_rec(p_cpl_id IN NUMBER,
2242                                 x_cplv_rec OUT NOCOPY cplv_rec_type) RETURN  VARCHAR2 IS
2243       l_return_status           VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2244       l_no_data_found BOOLEAN := TRUE;
2245 
2246       CURSOR c_cplv_rec IS
2247       SELECT    ID,
2248                 SFWT_FLAG,
2249                 CHR_ID,
2250                 CLE_ID,
2251                 RLE_CODE,
2252                 DNZ_CHR_ID,
2253                 OBJECT1_ID1,
2254                 OBJECT1_ID2,
2255                 JTOT_OBJECT1_CODE,
2256                 COGNOMEN,
2257                 CODE,
2258                 FACILITY,
2259                 MINORITY_GROUP_LOOKUP_CODE,
2260                 SMALL_BUSINESS_FLAG,
2261                 WOMEN_OWNED_FLAG,
2262                 ALIAS,
2263                 ATTRIBUTE_CATEGORY,
2264                 ATTRIBUTE1,
2265                 ATTRIBUTE2,
2266                 ATTRIBUTE3,
2267                 ATTRIBUTE4,
2268                 ATTRIBUTE5,
2269                 ATTRIBUTE6,
2270                 ATTRIBUTE7,
2271                 ATTRIBUTE8,
2272                 ATTRIBUTE9,
2273                 ATTRIBUTE10,
2274                 ATTRIBUTE11,
2275                 ATTRIBUTE12,
2276                 ATTRIBUTE13,
2277                 ATTRIBUTE14,
2278                 ATTRIBUTE15,
2279           PRIMARY_YN,    -- Bug 2374325
2280            --- new columns to replace rules
2281           CUST_ACCT_ID,
2282           BILL_TO_SITE_USE_ID
2283 
2284         FROM    OKC_K_PARTY_ROLES_V
2285         WHERE   ID = p_cpl_id;
2286 /*          AND   G_COPY_HISTORY_YN = 'N'
2287   UNION ALL
2288      SELECT    ID,
2289                 SFWT_FLAG,
2290                 CHR_ID,
2291                 CLE_ID,
2292                 RLE_CODE,
2293                 DNZ_CHR_ID,
2294                 OBJECT1_ID1,
2295                 OBJECT1_ID2,
2296                 JTOT_OBJECT1_CODE,
2297                 COGNOMEN,
2298                 CODE,
2299                 FACILITY,
2300                 MINORITY_GROUP_LOOKUP_CODE,
2301                 SMALL_BUSINESS_FLAG,
2302                 WOMEN_OWNED_FLAG,
2303                 ALIAS,
2304                 ATTRIBUTE_CATEGORY,
2305                 ATTRIBUTE1,
2306                 ATTRIBUTE2,
2307                 ATTRIBUTE3,
2308                 ATTRIBUTE4,
2309                 ATTRIBUTE5,
2310                 ATTRIBUTE6,
2311                 ATTRIBUTE7,
2312                 ATTRIBUTE8,
2313                 ATTRIBUTE9,
2314                 ATTRIBUTE10,
2315                 ATTRIBUTE11,
2316                 ATTRIBUTE12,
2317                 ATTRIBUTE13,
2318                 ATTRIBUTE14,
2319                 ATTRIBUTE15,
2320           PRIMARY_YN,    -- Bug 2374325
2321            --- new columns to replace rules
2322           CUST_ACCT_ID,
2323           BILL_TO_SITE_USE_ID
2324 
2325         FROM    OKC_K_PARTY_ROLES_HV
2326         WHERE   ID = p_cpl_id
2327           AND   major_version = G_FROM_VERSION_NUMBER
2328           AND   G_COPY_HISTORY_YN = 'Y';
2329 */
2330    BEGIN
2331       OPEN c_cplv_rec;
2332       FETCH c_cplv_rec
2333       INTO      x_cplv_rec.ID,
2334                 x_cplv_rec.SFWT_FLAG,
2335                 x_cplv_rec.CHR_ID,
2336                 x_cplv_rec.CLE_ID,
2337                 x_cplv_rec.RLE_CODE,
2338                 x_cplv_rec.DNZ_CHR_ID,
2339                 x_cplv_rec.OBJECT1_ID1,
2340                 x_cplv_rec.OBJECT1_ID2,
2341                 x_cplv_rec.JTOT_OBJECT1_CODE,
2342                 x_cplv_rec.COGNOMEN,
2343                 x_cplv_rec.CODE,
2344                 x_cplv_rec.FACILITY,
2345                 x_cplv_rec.MINORITY_GROUP_LOOKUP_CODE,
2346                 x_cplv_rec.SMALL_BUSINESS_FLAG,
2347                 x_cplv_rec.WOMEN_OWNED_FLAG,
2348                 x_cplv_rec.ALIAS,
2349                 x_cplv_rec.ATTRIBUTE_CATEGORY,
2350                 x_cplv_rec.ATTRIBUTE1,
2351                 x_cplv_rec.ATTRIBUTE2,
2352                 x_cplv_rec.ATTRIBUTE3,
2353                 x_cplv_rec.ATTRIBUTE4,
2354                 x_cplv_rec.ATTRIBUTE5,
2355                 x_cplv_rec.ATTRIBUTE6,
2356                 x_cplv_rec.ATTRIBUTE7,
2357                 x_cplv_rec.ATTRIBUTE8,
2358                 x_cplv_rec.ATTRIBUTE9,
2359                 x_cplv_rec.ATTRIBUTE10,
2360                 x_cplv_rec.ATTRIBUTE11,
2361                 x_cplv_rec.ATTRIBUTE12,
2362                 x_cplv_rec.ATTRIBUTE13,
2363                 x_cplv_rec.ATTRIBUTE14,
2364                 x_cplv_rec.ATTRIBUTE15,
2365           x_cplv_rec.PRIMARY_YN,
2366           --new columns to replace rules
2367           x_cplv_rec.CUST_ACCT_ID,
2368           x_cplv_rec.BILL_TO_SITE_USE_ID;
2369 
2370       l_no_data_found := c_cplv_rec%NOTFOUND;
2371       CLOSE c_cplv_rec;
2372       IF l_no_data_found THEN
2373         l_return_status := OKC_API.G_RET_STS_ERROR;
2374         return(l_return_status);
2375       ELSE
2376         return(l_return_status);
2377       END IF;
2378     EXCEPTION
2379       WHEN OTHERS THEN
2380         -- store SQL error message on message stack for caller
2381         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2382         -- notify caller of an UNEXPECTED error
2383         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2384         return(l_return_status);
2385 
2386     END get_cplv_rec;
2387 
2388 
2389   ----------------------------------------------------------------------------
2390   --Function to populate the contract process record to be copied.
2391   ----------------------------------------------------------------------------
2392     FUNCTION    get_cpsv_rec(p_cps_id IN NUMBER,
2393 				x_cpsv_rec OUT NOCOPY cpsv_rec_type) RETURN  VARCHAR2 IS
2394       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2395       l_no_data_found BOOLEAN := TRUE;
2396 
2397       CURSOR c_cpsv_rec IS
2398       SELECT	ID,
2399 		PDF_ID,
2400 		CHR_ID,
2401 		USER_ID,
2402 		CRT_ID,
2403 		PROCESS_ID,
2404 		IN_PROCESS_YN,
2405 		ATTRIBUTE_CATEGORY,
2406 		ATTRIBUTE1,
2407 		ATTRIBUTE2,
2408 		ATTRIBUTE3,
2409 		ATTRIBUTE4,
2410 		ATTRIBUTE5,
2411 		ATTRIBUTE6,
2412 		ATTRIBUTE7,
2413 		ATTRIBUTE8,
2414 		ATTRIBUTE9,
2415 		ATTRIBUTE10,
2416 		ATTRIBUTE11,
2417 		ATTRIBUTE12,
2418 		ATTRIBUTE13,
2419 		ATTRIBUTE14,
2420 		ATTRIBUTE15
2421 	FROM    OKC_K_PROCESSES_V
2422 	WHERE 	ID = p_cps_id;
2423     BEGIN
2424       OPEN c_cpsv_rec;
2425       FETCH c_cpsv_rec
2426       INTO	x_cpsv_rec.ID,
2427 		x_cpsv_rec.PDF_ID,
2428 		x_cpsv_rec.CHR_ID,
2429 		x_cpsv_rec.USER_ID,
2430 		x_cpsv_rec.CRT_ID,
2431 		x_cpsv_rec.PROCESS_ID,
2432 		x_cpsv_rec.IN_PROCESS_YN,
2433 		x_cpsv_rec.ATTRIBUTE_CATEGORY,
2434 		x_cpsv_rec.ATTRIBUTE1,
2435 		x_cpsv_rec.ATTRIBUTE2,
2436 		x_cpsv_rec.ATTRIBUTE3,
2437 		x_cpsv_rec.ATTRIBUTE4,
2438 		x_cpsv_rec.ATTRIBUTE5,
2439 		x_cpsv_rec.ATTRIBUTE6,
2440 		x_cpsv_rec.ATTRIBUTE7,
2441 		x_cpsv_rec.ATTRIBUTE8,
2442 		x_cpsv_rec.ATTRIBUTE9,
2443 		x_cpsv_rec.ATTRIBUTE10,
2444 		x_cpsv_rec.ATTRIBUTE11,
2445 		x_cpsv_rec.ATTRIBUTE12,
2446 		x_cpsv_rec.ATTRIBUTE13,
2447 		x_cpsv_rec.ATTRIBUTE14,
2448 		x_cpsv_rec.ATTRIBUTE15;
2449 
2450       l_no_data_found := c_cpsv_rec%NOTFOUND;
2451       CLOSE c_cpsv_rec;
2452       IF l_no_data_found THEN
2453         l_return_status := FND_API.G_RET_STS_ERROR;
2454         return(l_return_status);
2455       ELSE
2456         return(l_return_status);
2457       END IF;
2458     EXCEPTION
2459       WHEN OTHERS THEN
2460         -- store SQL error message on message stack for caller
2461         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2462         -- notify caller of an UNEXPECTED error
2463         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2464         return(l_return_status);
2465 
2466     END get_cpsv_rec;
2467   ----------------------------------------------------------------------------
2468   --Function to populate the contract group record to be copied.
2469   ----------------------------------------------------------------------------
2470     FUNCTION    get_cgcv_rec(p_cgc_id IN NUMBER,
2471 				x_cgcv_rec OUT NOCOPY cgcv_rec_type) RETURN  VARCHAR2 IS
2472       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2473       l_no_data_found BOOLEAN := TRUE;
2474 
2475       CURSOR c_cgcv_rec IS
2476       SELECT	ID,
2477 		CGP_PARENT_ID,
2478 		INCLUDED_CHR_ID,
2479 		INCLUDED_CGP_ID
2480 	FROM    OKC_K_GRPINGS_V
2481 	WHERE 	ID = p_cgc_id;
2482 
2483     BEGIN
2484       OPEN c_cgcv_rec;
2485       FETCH c_cgcv_rec
2486       INTO	x_cgcv_rec.ID,
2487 		x_cgcv_rec.CGP_PARENT_ID,
2488 		x_cgcv_rec.INCLUDED_CHR_ID,
2489 		x_cgcv_rec.INCLUDED_CGP_ID;
2490       l_no_data_found := c_cgcv_rec%NOTFOUND;
2491       CLOSE c_cgcv_rec;
2492       IF l_no_data_found THEN
2493         l_return_status := FND_API.G_RET_STS_ERROR;
2494         return(l_return_status);
2495       ELSE
2496         return(l_return_status);
2497       END IF;
2498     EXCEPTION
2499       WHEN OTHERS THEN
2500         -- store SQL error message on message stack for caller
2501         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2502         -- notify caller of an UNEXPECTED error
2503         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2504         return(l_return_status);
2505 
2506     END get_cgcv_rec;
2507   ----------------------------------------------------------------------------
2508   --Function to populate the condition headers record to be copied.
2509   ----------------------------------------------------------------------------
2510     FUNCTION    get_cnhv_rec(p_cnh_id IN NUMBER,
2511 				x_cnhv_rec OUT NOCOPY cnhv_rec_type) RETURN  VARCHAR2 IS
2512       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2513       l_no_data_found BOOLEAN := TRUE;
2514 
2515       CURSOR c_cnhv_rec IS
2516       SELECT	ID,
2517 		SFWT_FLAG,
2518 		ACN_ID,
2519 		COUNTER_GROUP_ID,
2520 		DESCRIPTION,
2521 		SHORT_DESCRIPTION,
2522 		COMMENTS,
2523 		ONE_TIME_YN,
2524 		NAME,
2525 		CONDITION_VALID_YN,
2526 		BEFORE_AFTER,
2527 		TRACKED_YN,
2528 		CNH_VARIANCE,
2529 		DNZ_CHR_ID,
2530 		TEMPLATE_YN,
2531 		DATE_ACTIVE,
2532 		OBJECT_ID,
2533 		DATE_INACTIVE,
2534 		JTOT_OBJECT_CODE,
2535 		TASK_OWNER_ID,
2536 		CNH_TYPE,
2537 	        ATTRIBUTE_CATEGORY,
2538 		ATTRIBUTE1,
2539 		ATTRIBUTE2,
2540 		ATTRIBUTE3,
2541 		ATTRIBUTE4,
2542 		ATTRIBUTE5,
2543 		ATTRIBUTE6,
2544 		ATTRIBUTE7,
2545 		ATTRIBUTE8,
2546 		ATTRIBUTE9,
2547 		ATTRIBUTE10,
2548 		ATTRIBUTE11,
2549 		ATTRIBUTE12,
2550 		ATTRIBUTE13,
2551 		ATTRIBUTE14,
2552 		ATTRIBUTE15
2553 	FROM    OKC_CONDITION_HEADERS_V
2554 	WHERE 	ID = p_cnh_id;
2555 
2556     BEGIN
2557       OPEN c_cnhv_rec;
2558       FETCH c_cnhv_rec
2559       INTO	x_cnhv_rec.ID,
2560 		x_cnhv_rec.SFWT_FLAG,
2561 		x_cnhv_rec.ACN_ID,
2562 		x_cnhv_rec.COUNTER_GROUP_ID,
2563 		x_cnhv_rec.DESCRIPTION,
2564 		x_cnhv_rec.SHORT_DESCRIPTION,
2565 		x_cnhv_rec.COMMENTS,
2566 		x_cnhv_rec.ONE_TIME_YN,
2567 		x_cnhv_rec.NAME,
2568 		x_cnhv_rec.CONDITION_VALID_YN,
2569 		x_cnhv_rec.BEFORE_AFTER,
2570 		x_cnhv_rec.TRACKED_YN,
2571 		x_cnhv_rec.CNH_VARIANCE,
2572 		x_cnhv_rec.DNZ_CHR_ID,
2573 		x_cnhv_rec.TEMPLATE_YN,
2574 		x_cnhv_rec.DATE_ACTIVE,
2575 		x_cnhv_rec.OBJECT_ID,
2576 		x_cnhv_rec.DATE_INACTIVE,
2577 		x_cnhv_rec.JTOT_OBJECT_CODE,
2578 		x_cnhv_rec.TASK_OWNER_ID,
2579 		x_cnhv_rec.CNH_TYPE,
2580 		x_cnhv_rec.ATTRIBUTE_CATEGORY,
2581 		x_cnhv_rec.ATTRIBUTE1,
2582 		x_cnhv_rec.ATTRIBUTE2,
2583 		x_cnhv_rec.ATTRIBUTE3,
2584 		x_cnhv_rec.ATTRIBUTE4,
2585 		x_cnhv_rec.ATTRIBUTE5,
2586 		x_cnhv_rec.ATTRIBUTE6,
2587 		x_cnhv_rec.ATTRIBUTE7,
2588 		x_cnhv_rec.ATTRIBUTE8,
2589 		x_cnhv_rec.ATTRIBUTE9,
2590 		x_cnhv_rec.ATTRIBUTE10,
2591 		x_cnhv_rec.ATTRIBUTE11,
2592 		x_cnhv_rec.ATTRIBUTE12,
2593 		x_cnhv_rec.ATTRIBUTE13,
2594 		x_cnhv_rec.ATTRIBUTE14,
2595 		x_cnhv_rec.ATTRIBUTE15;
2596 
2597       l_no_data_found := c_cnhv_rec%NOTFOUND;
2598       CLOSE c_cnhv_rec;
2599       IF l_no_data_found THEN
2600         l_return_status := FND_API.G_RET_STS_ERROR;
2601         return(l_return_status);
2602       ELSE
2603         return(l_return_status);
2604       END IF;
2605     EXCEPTION
2606       WHEN OTHERS THEN
2607         -- store SQL error message on message stack for caller
2608         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2609         -- notify caller of an UNEXPECTED error
2610         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2611         return(l_return_status);
2612 
2613     END get_cnhv_rec;
2614   ----------------------------------------------------------------------------
2615   --Function to populate the condition lines record to be copied.
2616   ----------------------------------------------------------------------------
2617     FUNCTION    get_cnlv_rec(p_cnl_id IN NUMBER,
2618 				x_cnlv_rec OUT NOCOPY cnlv_rec_type) RETURN  VARCHAR2 IS
2619       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2620       l_no_data_found BOOLEAN := TRUE;
2621 
2622       CURSOR c_cnlv_rec IS
2623       SELECT	ID,
2624 		SFWT_FLAG,
2625 		START_AT,
2626 		CNH_ID,
2627 		PDF_ID,
2628 		AAE_ID,
2629 		LEFT_CTR_MASTER_ID,
2630 		RIGHT_CTR_MASTER_ID,
2631 		LEFT_COUNTER_ID,
2632 		RIGHT_COUNTER_ID,
2633 		DNZ_CHR_ID,
2634 		SORTSEQ,
2635 		CNL_TYPE,
2636 		DESCRIPTION,
2637 		LEFT_PARENTHESIS,
2638 		RELATIONAL_OPERATOR,
2639 		RIGHT_PARENTHESIS,
2640 		LOGICAL_OPERATOR,
2641 		TOLERANCE,
2642 		RIGHT_OPERAND,
2643 		ATTRIBUTE_CATEGORY,
2644 		ATTRIBUTE1,
2645 		ATTRIBUTE2,
2646 		ATTRIBUTE3,
2647 		ATTRIBUTE4,
2648 		ATTRIBUTE5,
2649 		ATTRIBUTE6,
2650 		ATTRIBUTE7,
2651 		ATTRIBUTE8,
2652 		ATTRIBUTE9,
2653 		ATTRIBUTE10,
2654 		ATTRIBUTE11,
2655 		ATTRIBUTE12,
2656 		ATTRIBUTE13,
2657 		ATTRIBUTE14,
2658 		ATTRIBUTE15
2659 	FROM    OKC_CONDITION_LINES_V
2660 	WHERE 	ID = p_cnl_id;
2661     BEGIN
2662       OPEN c_cnlv_rec;
2663       FETCH c_cnlv_rec
2664       INTO	x_cnlv_rec.ID,
2665 		x_cnlv_rec.SFWT_FLAG,
2666 		x_cnlv_rec.START_AT,
2667 		x_cnlv_rec.CNH_ID,
2668 		x_cnlv_rec.PDF_ID,
2669 		x_cnlv_rec.AAE_ID,
2670 		x_cnlv_rec.LEFT_CTR_MASTER_ID,
2671 		x_cnlv_rec.RIGHT_CTR_MASTER_ID,
2672 		x_cnlv_rec.LEFT_COUNTER_ID,
2673 		x_cnlv_rec.RIGHT_COUNTER_ID,
2674 		x_cnlv_rec.DNZ_CHR_ID,
2675 		x_cnlv_rec.SORTSEQ,
2676 		x_cnlv_rec.CNL_TYPE,
2677 		x_cnlv_rec.DESCRIPTION,
2678 		x_cnlv_rec.LEFT_PARENTHESIS,
2679 		x_cnlv_rec.RELATIONAL_OPERATOR,
2680 		x_cnlv_rec.RIGHT_PARENTHESIS,
2681 		x_cnlv_rec.LOGICAL_OPERATOR,
2682 		x_cnlv_rec.TOLERANCE,
2683 		x_cnlv_rec.RIGHT_OPERAND,
2684 		x_cnlv_rec.ATTRIBUTE_CATEGORY,
2685 		x_cnlv_rec.ATTRIBUTE1,
2686 		x_cnlv_rec.ATTRIBUTE2,
2687 		x_cnlv_rec.ATTRIBUTE3,
2688 		x_cnlv_rec.ATTRIBUTE4,
2689 		x_cnlv_rec.ATTRIBUTE5,
2690 		x_cnlv_rec.ATTRIBUTE6,
2691 		x_cnlv_rec.ATTRIBUTE7,
2692 		x_cnlv_rec.ATTRIBUTE8,
2693 		x_cnlv_rec.ATTRIBUTE9,
2694 		x_cnlv_rec.ATTRIBUTE10,
2695 		x_cnlv_rec.ATTRIBUTE11,
2696 		x_cnlv_rec.ATTRIBUTE12,
2697 		x_cnlv_rec.ATTRIBUTE13,
2698 		x_cnlv_rec.ATTRIBUTE14,
2699 		x_cnlv_rec.ATTRIBUTE15;
2700 
2701       l_no_data_found := c_cnlv_rec%NOTFOUND;
2702       CLOSE c_cnlv_rec;
2703       IF l_no_data_found THEN
2704         l_return_status := FND_API.G_RET_STS_ERROR;
2705         return(l_return_status);
2706       ELSE
2707         return(l_return_status);
2708       END IF;
2709     EXCEPTION
2710       WHEN OTHERS THEN
2711         -- store SQL error message on message stack for caller
2712         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2713         -- notify caller of an UNEXPECTED error
2714         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2715         return(l_return_status);
2716 
2717     END get_cnlv_rec;
2718   ----------------------------------------------------------------------------
2719   --Function to populate the contacts record to be copied.
2720   ----------------------------------------------------------------------------
2721 
2722     FUNCTION    get_ctcv_rec(p_ctc_id IN NUMBER,
2723 				x_ctcv_rec OUT NOCOPY ctcv_rec_type) RETURN  VARCHAR2 IS
2724 
2725       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2726       l_no_data_found BOOLEAN := TRUE;
2727 
2728       CURSOR c_ctcv_rec IS
2729       SELECT	ID,
2730                 CPL_ID,
2731                 CRO_CODE,
2732                 DNZ_CHR_ID,
2733                 CONTACT_SEQUENCE,
2734                 OBJECT1_ID1,
2735                 OBJECT1_ID2,
2736                 JTOT_OBJECT1_CODE,
2737 			 RESOURCE_CLASS,--Bug#3038104
2738 			 SALES_GROUP_ID, --Bug#2882737
2739                 ATTRIBUTE_CATEGORY,
2740                 ATTRIBUTE1,
2741                 ATTRIBUTE2,
2742                 ATTRIBUTE3,
2743                 ATTRIBUTE4,
2744                 ATTRIBUTE5,
2745                 ATTRIBUTE6,
2746                 ATTRIBUTE7,
2747                 ATTRIBUTE8,
2748                 ATTRIBUTE9,
2749                 ATTRIBUTE10,
2750                 ATTRIBUTE11,
2751                 ATTRIBUTE12,
2752                 ATTRIBUTE13,
2753                 ATTRIBUTE14,
2754                 ATTRIBUTE15,
2755                 START_DATE,
2756                 END_DATE,
2757                 PRIMARY_YN  -- Bug 2374325
2758 
2759 	FROM    OKC_CONTACTS_V
2760 	WHERE 	ID = p_ctc_id;
2761 
2762     BEGIN
2763       OPEN c_ctcv_rec;
2764       FETCH c_ctcv_rec
2765       INTO	x_ctcv_rec.ID,
2766                 x_ctcv_rec.CPL_ID,
2767                 x_ctcv_rec.CRO_CODE,
2768                 x_ctcv_rec.DNZ_CHR_ID,
2769                 x_ctcv_rec.CONTACT_SEQUENCE,
2770                 x_ctcv_rec.OBJECT1_ID1,
2771                 x_ctcv_rec.OBJECT1_ID2,
2772                 x_ctcv_rec.JTOT_OBJECT1_CODE,
2773 			 x_ctcv_rec.resource_class,--Bug#3038104
2774 			 x_ctcv_rec.SALES_GROUP_ID, --Bug#2882737
2775                 x_ctcv_rec.ATTRIBUTE_CATEGORY,
2776                 x_ctcv_rec.ATTRIBUTE1,
2777                 x_ctcv_rec.ATTRIBUTE2,
2778                 x_ctcv_rec.ATTRIBUTE3,
2779                 x_ctcv_rec.ATTRIBUTE4,
2780                 x_ctcv_rec.ATTRIBUTE5,
2781                 x_ctcv_rec.ATTRIBUTE6,
2782                 x_ctcv_rec.ATTRIBUTE7,
2783                 x_ctcv_rec.ATTRIBUTE8,
2784                 x_ctcv_rec.ATTRIBUTE9,
2785                 x_ctcv_rec.ATTRIBUTE10,
2786                 x_ctcv_rec.ATTRIBUTE11,
2787                 x_ctcv_rec.ATTRIBUTE12,
2788                 x_ctcv_rec.ATTRIBUTE13,
2789                 x_ctcv_rec.ATTRIBUTE14,
2790                 x_ctcv_rec.ATTRIBUTE15,
2791                 x_ctcv_rec.START_DATE,
2792                 x_ctcv_rec.END_DATE,
2793                 x_ctcv_rec.PRIMARY_YN;
2794       l_no_data_found := c_ctcv_rec%NOTFOUND;
2795       CLOSE c_ctcv_rec;
2796       IF l_no_data_found THEN
2797         l_return_status := FND_API.G_RET_STS_ERROR;
2798         return(l_return_status);
2799       ELSE
2800         return(l_return_status);
2801       END IF;
2802     EXCEPTION
2803       WHEN OTHERS THEN
2804         -- store SQL error message on message stack for caller
2805         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
2806         -- notify caller of an UNEXPECTED error
2807         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2808         return(l_return_status);
2809 
2810     END get_ctcv_rec;
2811 
2812   ----------------------------------------------------------------------------
2813   --Function to populate the Header record to be copied.
2814   ----------------------------------------------------------------------------
2815     FUNCTION    get_chrv_rec(p_chr_id IN NUMBER,
2816 				x_chrv_rec OUT NOCOPY chrv_rec_type)
2817     				RETURN  VARCHAR2 IS
2818       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2819       l_no_data_found BOOLEAN := TRUE;
2820 
2821 -- Bug 1922121: Compilation errors on ktst115. Problem occurred
2822 -- because application_id is defined as varchar2(240) in
2823 -- okc_k_headers_bh/hv and as NUMBER in okc_k_headers_b/v. This gives
2824 -- problems in the UNION ALL because it tries to combine datatypes
2825 -- Fix: Put a to_char() around application_id in the first cursor
2826 
2827       CURSOR c_chrv_rec IS
2828       SELECT 	ID,
2829 		SFWT_FLAG,
2830 		CHR_ID_RESPONSE,
2831 		CHR_ID_AWARD,
2832 		INV_ORGANIZATION_ID,
2833 		to_char(APPLICATION_ID),
2834 		STS_CODE,
2835 		QCL_ID,
2836 		SCS_CODE,
2837 		CONTRACT_NUMBER,
2838 		CURRENCY_CODE,
2839 		CONTRACT_NUMBER_MODIFIER,
2840 		ARCHIVED_YN,
2841 		DELETED_YN,
2842 		CUST_PO_NUMBER_REQ_YN,
2843 		PRE_PAY_REQ_YN,
2844 		CUST_PO_NUMBER,
2845 		SHORT_DESCRIPTION,
2846 		COMMENTS,
2847 		DESCRIPTION,
2848 		DPAS_RATING,
2849 		COGNOMEN,
2850 		TEMPLATE_YN,
2851 		TEMPLATE_USED,
2852 		DATE_APPROVED,
2853 		DATETIME_CANCELLED,
2854 		AUTO_RENEW_DAYS,
2855 		DATE_ISSUED,
2856 		DATETIME_RESPONDED,
2857 		NON_RESPONSE_REASON,
2858 		NON_RESPONSE_EXPLAIN,
2859 		RFP_TYPE,
2860 		CHR_TYPE,
2861 		KEEP_ON_MAIL_LIST,
2862 		SET_ASIDE_REASON,
2863 		SET_ASIDE_PERCENT,
2864 		RESPONSE_COPIES_REQ,
2865 		DATE_CLOSE_PROJECTED,
2866 		DATETIME_PROPOSED,
2867 		DATE_SIGNED,
2868 		DATE_TERMINATED,
2869 		DATE_RENEWED,
2870 		TRN_CODE,
2871 		START_DATE,
2872 		END_DATE,
2873 		AUTHORING_ORG_ID,
2874 		BUY_OR_SELL,
2875 		ISSUE_OR_RECEIVE,
2876 		ESTIMATED_AMOUNT,
2877 		PROGRAM_ID,
2878                 REQUEST_ID,
2879                 PRICE_LIST_ID,
2880                 PRICING_DATE,
2881                 SIGN_BY_DATE,
2882                 PROGRAM_UPDATE_DATE,
2883                 TOTAL_LINE_LIST_PRICE,
2884                 PROGRAM_APPLICATION_ID,
2885 		ATTRIBUTE_CATEGORY,
2886 		ATTRIBUTE1,
2887 		ATTRIBUTE2,
2888 		ATTRIBUTE3,
2889 		ATTRIBUTE4,
2890 		ATTRIBUTE5,
2891 		ATTRIBUTE6,
2892 		ATTRIBUTE7,
2893 		ATTRIBUTE8,
2894 		ATTRIBUTE9,
2895 		ATTRIBUTE10,
2896 		ATTRIBUTE11,
2897 		ATTRIBUTE12,
2898 		ATTRIBUTE13,
2899 		ATTRIBUTE14,
2900 		ATTRIBUTE15,
2901           GOVERNING_CONTRACT_YN,
2902        -- new colums to replace rules
2903           CONVERSION_TYPE,
2904           CONVERSION_RATE,
2905           CONVERSION_RATE_DATE,
2906           CONVERSION_EURO_RATE,
2907           CUST_ACCT_ID,
2908           BILL_TO_SITE_USE_ID,
2909           INV_RULE_ID,
2910           RENEWAL_TYPE_CODE,
2911           RENEWAL_NOTIFY_TO,
2912           RENEWAL_END_DATE,
2913           SHIP_TO_SITE_USE_ID,
2914           PAYMENT_TERM_ID,
2915           APPROVAL_TYPE,
2916           TERM_CANCEL_SOURCE,
2917           PAYMENT_INSTRUCTION_TYPE,
2918           ORG_ID
2919 
2920       /*npalepu modified on 12-JUL-2007 for bug # 6085917 */
2921       /* FROM   OKC_K_HEADERS_V */
2922       FROM      OKC_K_HEADERS_ALL_V
2923       /*end bug # 6085917 */
2924       WHERE	id = p_chr_id;
2925 
2926     BEGIN
2927       OPEN c_chrv_rec;
2928       FETCH c_chrv_rec
2929       INTO	x_chrv_rec.ID,
2930 		x_chrv_rec.SFWT_FLAG,
2931 		x_chrv_rec.CHR_ID_RESPONSE,
2932 		x_chrv_rec.CHR_ID_AWARD,
2933 		x_chrv_rec.INV_ORGANIZATION_ID,
2934 		x_chrv_rec.APPLICATION_ID,
2935 		x_chrv_rec.STS_CODE,
2936 		x_chrv_rec.QCL_ID,
2937 		x_chrv_rec.SCS_CODE,
2938 		x_chrv_rec.CONTRACT_NUMBER,
2939 		x_chrv_rec.CURRENCY_CODE,
2940 		x_chrv_rec.CONTRACT_NUMBER_MODIFIER,
2941 		x_chrv_rec.ARCHIVED_YN,
2942 		x_chrv_rec.DELETED_YN,
2943 		x_chrv_rec.CUST_PO_NUMBER_REQ_YN,
2944 		x_chrv_rec.PRE_PAY_REQ_YN,
2945 		x_chrv_rec.CUST_PO_NUMBER,
2946 		x_chrv_rec.SHORT_DESCRIPTION,
2947 		x_chrv_rec.COMMENTS,
2948 		x_chrv_rec.DESCRIPTION,
2949 		x_chrv_rec.DPAS_RATING,
2950 		x_chrv_rec.COGNOMEN,
2951 		x_chrv_rec.TEMPLATE_YN,
2952 		x_chrv_rec.TEMPLATE_USED,
2953 		x_chrv_rec.DATE_APPROVED,
2954 		x_chrv_rec.DATETIME_CANCELLED,
2955 		x_chrv_rec.AUTO_RENEW_DAYS,
2956 		x_chrv_rec.DATE_ISSUED,
2957 		x_chrv_rec.DATETIME_RESPONDED,
2958 		x_chrv_rec.NON_RESPONSE_REASON,
2959 		x_chrv_rec.NON_RESPONSE_EXPLAIN,
2960 		x_chrv_rec.RFP_TYPE,
2961 		x_chrv_rec.CHR_TYPE,
2962 		x_chrv_rec.KEEP_ON_MAIL_LIST,
2963 		x_chrv_rec.SET_ASIDE_REASON,
2964 		x_chrv_rec.SET_ASIDE_PERCENT,
2965 		x_chrv_rec.RESPONSE_COPIES_REQ,
2966 		x_chrv_rec.DATE_CLOSE_PROJECTED,
2967 		x_chrv_rec.DATETIME_PROPOSED,
2968 		x_chrv_rec.DATE_SIGNED,
2969 		x_chrv_rec.DATE_TERMINATED,
2970 		x_chrv_rec.DATE_RENEWED,
2971 		x_chrv_rec.TRN_CODE,
2972 		x_chrv_rec.START_DATE,
2973 		x_chrv_rec.END_DATE,
2974 		x_chrv_rec.AUTHORING_ORG_ID,
2975 		x_chrv_rec.BUY_OR_SELL,
2976 		x_chrv_rec.ISSUE_OR_RECEIVE,
2977 		x_chrv_rec.ESTIMATED_AMOUNT,
2978 		x_chrv_rec.PROGRAM_ID,
2979                 x_chrv_rec.REQUEST_ID,
2980                 x_chrv_rec.PRICE_LIST_ID,
2981                 x_chrv_rec.PRICING_DATE,
2982                 x_chrv_rec.SIGN_BY_DATE,
2983                 x_chrv_rec.PROGRAM_UPDATE_DATE,
2984                 x_chrv_rec.TOTAL_LINE_LIST_PRICE,
2985                 x_chrv_rec.PROGRAM_APPLICATION_ID,
2986 		x_chrv_rec.ATTRIBUTE_CATEGORY,
2987 		x_chrv_rec.ATTRIBUTE1,
2988 		x_chrv_rec.ATTRIBUTE2,
2989 		x_chrv_rec.ATTRIBUTE3,
2990 		x_chrv_rec.ATTRIBUTE4,
2991 		x_chrv_rec.ATTRIBUTE5,
2992 		x_chrv_rec.ATTRIBUTE6,
2993 		x_chrv_rec.ATTRIBUTE7,
2994 		x_chrv_rec.ATTRIBUTE8,
2995 		x_chrv_rec.ATTRIBUTE9,
2996 		x_chrv_rec.ATTRIBUTE10,
2997 		x_chrv_rec.ATTRIBUTE11,
2998 		x_chrv_rec.ATTRIBUTE12,
2999 		x_chrv_rec.ATTRIBUTE13,
3000 		x_chrv_rec.ATTRIBUTE14,
3001 		x_chrv_rec.ATTRIBUTE15,
3002           x_chrv_rec.GOVERNING_CONTRACT_YN,
3003                -- new colums to replace rules
3004           x_chrv_rec.CONVERSION_TYPE,
3005           x_chrv_rec.CONVERSION_RATE,
3006           x_chrv_rec.CONVERSION_RATE_DATE,
3007           x_chrv_rec.CONVERSION_EURO_RATE,
3008           x_chrv_rec.CUST_ACCT_ID,
3009           x_chrv_rec.BILL_TO_SITE_USE_ID,
3010           x_chrv_rec.INV_RULE_ID,
3011           x_chrv_rec.RENEWAL_TYPE_CODE,
3012           x_chrv_rec.RENEWAL_NOTIFY_TO,
3013           x_chrv_rec.RENEWAL_END_DATE,
3014           x_chrv_rec.SHIP_TO_SITE_USE_ID,
3015           x_chrv_rec.PAYMENT_TERM_ID,
3016           x_chrv_rec.APPROVAL_TYPE,
3017           x_chrv_rec.TERM_CANCEL_SOURCE,
3018           x_chrv_rec.PAYMENT_INSTRUCTION_TYPE,
3019           x_chrv_rec.ORG_ID;
3020 
3021       l_no_data_found := c_chrv_rec%NOTFOUND;
3022       CLOSE c_chrv_rec;
3023       IF l_no_data_found THEN
3024          l_return_status := FND_API.G_RET_STS_ERROR;
3025          return(l_return_status);
3026       ELSE
3027          return(l_return_status);
3028       END IF;
3029      EXCEPTION
3030       WHEN OTHERS THEN
3031         -- store SQL error message on message stack for caller
3032         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3033         -- notify caller of an UNEXPECTED error
3034         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3035         return(l_return_status);
3036     END get_chrv_rec;
3037 
3038   ----------------------------------------------------------------------------
3039   --Function to populate the outcome record to be copied.
3040   ----------------------------------------------------------------------------
3041 
3042     FUNCTION    get_ocev_rec(p_oce_id IN NUMBER,
3043 				x_ocev_rec OUT NOCOPY ocev_rec_type) RETURN  VARCHAR2 IS
3044 
3045       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3046       l_no_data_found BOOLEAN := TRUE;
3047 
3048       CURSOR c_ocev_rec IS
3049       SELECT	ID,
3050                 SFWT_FLAG,
3051                 PDF_ID,
3052                 CNH_ID,
3053                 DNZ_CHR_ID,
3054                 ENABLED_YN,
3055                 COMMENTS,
3056                 ATTRIBUTE_CATEGORY,
3057                 ATTRIBUTE1,
3058                 ATTRIBUTE2,
3059                 ATTRIBUTE3,
3060                 ATTRIBUTE4,
3061                 ATTRIBUTE5,
3062                 ATTRIBUTE6,
3063                 ATTRIBUTE7,
3064                 ATTRIBUTE8,
3065                 ATTRIBUTE9,
3066                 ATTRIBUTE10,
3067                 ATTRIBUTE11,
3068                 ATTRIBUTE12,
3069                 ATTRIBUTE13,
3070                 ATTRIBUTE14,
3071                 ATTRIBUTE15
3072 	FROM    OKC_OUTCOMES_V
3073 	WHERE 	ID = p_oce_id;
3074     BEGIN
3075       OPEN c_ocev_rec;
3076       FETCH c_ocev_rec
3077       INTO	x_ocev_rec.ID,
3078                 x_ocev_rec.SFWT_FLAG,
3079                 x_ocev_rec.PDF_ID,
3080                 x_ocev_rec.CNH_ID,
3081                 x_ocev_rec.DNZ_CHR_ID,
3082                 x_ocev_rec.ENABLED_YN,
3083                 x_ocev_rec.COMMENTS,
3084                 x_ocev_rec.ATTRIBUTE_CATEGORY,
3085                 x_ocev_rec.ATTRIBUTE1,
3086                 x_ocev_rec.ATTRIBUTE2,
3087                 x_ocev_rec.ATTRIBUTE3,
3088                 x_ocev_rec.ATTRIBUTE4,
3089                 x_ocev_rec.ATTRIBUTE5,
3090                 x_ocev_rec.ATTRIBUTE6,
3091                 x_ocev_rec.ATTRIBUTE7,
3092                 x_ocev_rec.ATTRIBUTE8,
3093                 x_ocev_rec.ATTRIBUTE9,
3094                 x_ocev_rec.ATTRIBUTE10,
3095                 x_ocev_rec.ATTRIBUTE11,
3096                 x_ocev_rec.ATTRIBUTE12,
3097                 x_ocev_rec.ATTRIBUTE13,
3098                 x_ocev_rec.ATTRIBUTE14,
3099                 x_ocev_rec.ATTRIBUTE15;
3100 
3101       l_no_data_found := c_ocev_rec%NOTFOUND;
3102       CLOSE c_ocev_rec;
3103       IF l_no_data_found THEN
3104         l_return_status := FND_API.G_RET_STS_ERROR;
3105         return(l_return_status);
3106       ELSE
3107         return(l_return_status);
3108       END IF;
3109     EXCEPTION
3110       WHEN OTHERS THEN
3111         -- store SQL error message on message stack for caller
3112         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3113         -- notify caller of an UNEXPECTED error
3114         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3115         return(l_return_status);
3116     END get_ocev_rec;
3117 
3118   ----------------------------------------------------------------------------
3119   --Function to populate the outcome arguments record to be copied.
3120   ----------------------------------------------------------------------------
3121     FUNCTION    get_oatv_rec(p_oat_id IN NUMBER,
3122 				x_oatv_rec OUT NOCOPY oatv_rec_type) RETURN  VARCHAR2 IS
3123 
3124       l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3125       l_no_data_found BOOLEAN := TRUE;
3126 
3127       CURSOR c_oatv_rec IS
3128       SELECT	ID,
3129                 PDP_ID,
3130                 OCE_ID,
3131                 AAE_ID,
3132                 DNZ_CHR_ID,
3133                 VALUE
3134 	FROM    OKC_OUTCOME_ARGUMENTS_V
3135 	WHERE 	ID = p_oat_id;
3136 
3137     BEGIN
3138       OPEN c_oatv_rec;
3139       FETCH c_oatv_rec
3140       INTO	x_oatv_rec.ID,
3141                 x_oatv_rec.PDP_ID,
3142                 x_oatv_rec.OCE_ID,
3143                 x_oatv_rec.AAE_ID,
3144                 x_oatv_rec.DNZ_CHR_ID,
3145                 x_oatv_rec.VALUE;
3146 
3147       l_no_data_found := c_oatv_rec%NOTFOUND;
3148       CLOSE c_oatv_rec;
3149       IF l_no_data_found THEN
3150         l_return_status := FND_API.G_RET_STS_ERROR;
3151         return(l_return_status);
3152       ELSE
3153         return(l_return_status);
3154       END IF;
3155     EXCEPTION
3156       WHEN OTHERS THEN
3157         -- store SQL error message on message stack for caller
3158         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3159         -- notify caller of an UNEXPECTED error
3160         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3161         return(l_return_status);
3162 
3163     END get_oatv_rec;
3164 
3165 --------------------------------------------------------------------------------------------------
3166 -----------------------------------------------------------------------------------------------
3167     FUNCTION    get_pavv_rec(p_pav_id IN NUMBER,
3168                                 x_pavv_rec OUT NOCOPY pavv_rec_type) RETURN  VARCHAR2 IS
3169 
3170       l_return_status           VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3171       l_no_data_found BOOLEAN := TRUE;
3172 
3173       CURSOR c_pavv_rec IS
3174       SELECT    ID,
3175                 CHR_ID,
3176                 CLE_ID,
3177                 FLEX_TITLE,
3178                 PRICING_CONTEXT,
3179                 PRICING_ATTRIBUTE1,
3180                 PRICING_ATTRIBUTE2,
3181                 PRICING_ATTRIBUTE3,
3182                 PRICING_ATTRIBUTE4,
3183                 PRICING_ATTRIBUTE5,
3184                 PRICING_ATTRIBUTE6,
3185                 PRICING_ATTRIBUTE7,
3186                 PRICING_ATTRIBUTE8,
3187                 PRICING_ATTRIBUTE9,
3188                 PRICING_ATTRIBUTE10,
3189                 PRICING_ATTRIBUTE11,
3190                 PRICING_ATTRIBUTE12,
3191                 PRICING_ATTRIBUTE13,
3192                 PRICING_ATTRIBUTE14,
3193                 PRICING_ATTRIBUTE15,
3194                 PRICING_ATTRIBUTE16,
3195                 PRICING_ATTRIBUTE17,
3196                 PRICING_ATTRIBUTE18,
3197                 PRICING_ATTRIBUTE19,
3198                 PRICING_ATTRIBUTE20,
3199                 PRICING_ATTRIBUTE21,
3200                 PRICING_ATTRIBUTE22,
3201                 PRICING_ATTRIBUTE23,
3202                 PRICING_ATTRIBUTE24,
3203                 PRICING_ATTRIBUTE25,
3204                 PRICING_ATTRIBUTE26,
3205                 PRICING_ATTRIBUTE27,
3206                 PRICING_ATTRIBUTE28,
3207                 PRICING_ATTRIBUTE29,
3208                 PRICING_ATTRIBUTE30,
3209                 PRICING_ATTRIBUTE31,
3210                 PRICING_ATTRIBUTE32,
3211                 PRICING_ATTRIBUTE33,
3212                 PRICING_ATTRIBUTE34,
3213                 PRICING_ATTRIBUTE35,
3214                 PRICING_ATTRIBUTE36,
3215                 PRICING_ATTRIBUTE37,
3216                 PRICING_ATTRIBUTE38,
3217                 PRICING_ATTRIBUTE39,
3218                 PRICING_ATTRIBUTE40,
3219                 PRICING_ATTRIBUTE41,
3220                 PRICING_ATTRIBUTE42,
3221                 PRICING_ATTRIBUTE43,
3222                 PRICING_ATTRIBUTE44,
3223                 PRICING_ATTRIBUTE45,
3224                 PRICING_ATTRIBUTE46,
3225                 PRICING_ATTRIBUTE47,
3226                 PRICING_ATTRIBUTE48,
3227                 PRICING_ATTRIBUTE49,
3228                 PRICING_ATTRIBUTE50,
3229                 PRICING_ATTRIBUTE51,
3230                 PRICING_ATTRIBUTE52,
3231                 PRICING_ATTRIBUTE53,
3232                 PRICING_ATTRIBUTE54,
3233                 PRICING_ATTRIBUTE55,
3234                 PRICING_ATTRIBUTE56,
3235                 PRICING_ATTRIBUTE57,
3236                 PRICING_ATTRIBUTE58,
3237                 PRICING_ATTRIBUTE59,
3238                 PRICING_ATTRIBUTE60,
3239                 PRICING_ATTRIBUTE61,
3240                 PRICING_ATTRIBUTE62,
3241                 PRICING_ATTRIBUTE63,
3242                 PRICING_ATTRIBUTE64,
3243                 PRICING_ATTRIBUTE65,
3244                 PRICING_ATTRIBUTE66,
3245                 PRICING_ATTRIBUTE67,
3246                 PRICING_ATTRIBUTE68,
3247                 PRICING_ATTRIBUTE69,
3248                 PRICING_ATTRIBUTE70,
3249                 PRICING_ATTRIBUTE71,
3250                 PRICING_ATTRIBUTE72,
3251                 PRICING_ATTRIBUTE73,
3252                 PRICING_ATTRIBUTE74,
3253                 PRICING_ATTRIBUTE75,
3254                 PRICING_ATTRIBUTE76,
3255                 PRICING_ATTRIBUTE77,
3256                 PRICING_ATTRIBUTE78,
3257                 PRICING_ATTRIBUTE79,
3258                 PRICING_ATTRIBUTE80,
3259                 PRICING_ATTRIBUTE81,
3260                 PRICING_ATTRIBUTE82,
3261                 PRICING_ATTRIBUTE83,
3262                 PRICING_ATTRIBUTE84,
3263                 PRICING_ATTRIBUTE85,
3264                 PRICING_ATTRIBUTE86,
3265                 PRICING_ATTRIBUTE87,
3266                 PRICING_ATTRIBUTE88,
3267                 PRICING_ATTRIBUTE89,
3268                 PRICING_ATTRIBUTE90,
3269                 PRICING_ATTRIBUTE91,
3270                 PRICING_ATTRIBUTE92,
3271                 PRICING_ATTRIBUTE93,
3272                 PRICING_ATTRIBUTE94,
3273                 PRICING_ATTRIBUTE95,
3274                 PRICING_ATTRIBUTE96,
3275                 PRICING_ATTRIBUTE97,
3276                 PRICING_ATTRIBUTE98,
3277                 PRICING_ATTRIBUTE99,
3278                 PRICING_ATTRIBUTE100,
3279                 QUALIFIER_CONTEXT,
3280                 QUALIFIER_ATTRIBUTE1,
3281                 QUALIFIER_ATTRIBUTE2,
3282                 QUALIFIER_ATTRIBUTE3,
3283                 QUALIFIER_ATTRIBUTE4,
3284                 QUALIFIER_ATTRIBUTE5,
3285                 QUALIFIER_ATTRIBUTE6,
3286                 QUALIFIER_ATTRIBUTE7,
3287                 QUALIFIER_ATTRIBUTE8,
3288                 QUALIFIER_ATTRIBUTE9,
3289                 QUALIFIER_ATTRIBUTE10,
3290                 QUALIFIER_ATTRIBUTE11,
3291                 QUALIFIER_ATTRIBUTE12,
3292                 QUALIFIER_ATTRIBUTE13,
3293                 QUALIFIER_ATTRIBUTE14,
3294                 QUALIFIER_ATTRIBUTE15,
3295                 QUALIFIER_ATTRIBUTE16,
3296                 QUALIFIER_ATTRIBUTE17,
3297                 QUALIFIER_ATTRIBUTE18,
3298                 QUALIFIER_ATTRIBUTE19,
3299                 QUALIFIER_ATTRIBUTE20,
3300                 QUALIFIER_ATTRIBUTE21,
3301                 QUALIFIER_ATTRIBUTE22,
3302                 QUALIFIER_ATTRIBUTE23,
3303                 QUALIFIER_ATTRIBUTE24,
3304                 QUALIFIER_ATTRIBUTE25,
3305                 QUALIFIER_ATTRIBUTE26,
3306                 QUALIFIER_ATTRIBUTE27,
3307                 QUALIFIER_ATTRIBUTE28,
3308                 QUALIFIER_ATTRIBUTE29,
3309                 QUALIFIER_ATTRIBUTE30,
3310                 QUALIFIER_ATTRIBUTE31,
3311                 QUALIFIER_ATTRIBUTE32,
3312                 QUALIFIER_ATTRIBUTE33,
3313                 QUALIFIER_ATTRIBUTE34,
3314                 QUALIFIER_ATTRIBUTE35,
3315                 QUALIFIER_ATTRIBUTE36,
3316                 QUALIFIER_ATTRIBUTE37,
3317                 QUALIFIER_ATTRIBUTE38,
3318                 QUALIFIER_ATTRIBUTE39,
3319                 QUALIFIER_ATTRIBUTE40,
3320                 QUALIFIER_ATTRIBUTE41,
3321                 QUALIFIER_ATTRIBUTE42,
3322                 QUALIFIER_ATTRIBUTE43,
3323                 QUALIFIER_ATTRIBUTE44,
3324                 QUALIFIER_ATTRIBUTE45,
3325                 QUALIFIER_ATTRIBUTE46,
3326                 QUALIFIER_ATTRIBUTE47,
3327                 QUALIFIER_ATTRIBUTE48,
3328                 QUALIFIER_ATTRIBUTE49,
3329                 QUALIFIER_ATTRIBUTE50,
3330                 QUALIFIER_ATTRIBUTE51,
3331                 QUALIFIER_ATTRIBUTE52,
3332                 QUALIFIER_ATTRIBUTE53,
3333                 QUALIFIER_ATTRIBUTE54,
3334                 QUALIFIER_ATTRIBUTE55,
3335                 QUALIFIER_ATTRIBUTE56,
3336                 QUALIFIER_ATTRIBUTE57,
3337                 QUALIFIER_ATTRIBUTE58,
3338                 QUALIFIER_ATTRIBUTE59,
3339                 QUALIFIER_ATTRIBUTE60,
3340                 QUALIFIER_ATTRIBUTE61,
3341                 QUALIFIER_ATTRIBUTE62,
3342                 QUALIFIER_ATTRIBUTE63,
3343                 QUALIFIER_ATTRIBUTE64,
3344                 QUALIFIER_ATTRIBUTE65,
3345                 QUALIFIER_ATTRIBUTE66,
3346                 QUALIFIER_ATTRIBUTE67,
3347                 QUALIFIER_ATTRIBUTE68,
3348                 QUALIFIER_ATTRIBUTE69,
3349                 QUALIFIER_ATTRIBUTE70,
3350                 QUALIFIER_ATTRIBUTE71,
3351                 QUALIFIER_ATTRIBUTE72,
3352                 QUALIFIER_ATTRIBUTE73,
3353                 QUALIFIER_ATTRIBUTE74,
3354                 QUALIFIER_ATTRIBUTE75,
3355                 QUALIFIER_ATTRIBUTE76,
3356                 QUALIFIER_ATTRIBUTE77,
3357                 QUALIFIER_ATTRIBUTE78,
3358                 QUALIFIER_ATTRIBUTE79,
3359                 QUALIFIER_ATTRIBUTE80,
3360                 QUALIFIER_ATTRIBUTE81,
3361                 QUALIFIER_ATTRIBUTE82,
3362                 QUALIFIER_ATTRIBUTE83,
3363                 QUALIFIER_ATTRIBUTE84,
3364                 QUALIFIER_ATTRIBUTE85,
3365                 QUALIFIER_ATTRIBUTE86,
3366                 QUALIFIER_ATTRIBUTE87,
3367                 QUALIFIER_ATTRIBUTE88,
3368                 QUALIFIER_ATTRIBUTE89,
3369                 QUALIFIER_ATTRIBUTE90,
3370                 QUALIFIER_ATTRIBUTE91,
3371                 QUALIFIER_ATTRIBUTE92,
3372                 QUALIFIER_ATTRIBUTE93,
3373                 QUALIFIER_ATTRIBUTE94,
3374                 QUALIFIER_ATTRIBUTE95,
3375                 QUALIFIER_ATTRIBUTE96,
3376                 QUALIFIER_ATTRIBUTE97,
3377                 QUALIFIER_ATTRIBUTE98,
3378                 QUALIFIER_ATTRIBUTE99,
3379                 QUALIFIER_ATTRIBUTE100
3380         FROM    OKC_PRICE_ATT_VALUES_V
3381         WHERE   ID = p_pav_id;
3382     BEGIN
3383       OPEN c_pavv_rec;
3384       FETCH c_pavv_rec
3385       INTO      x_pavv_rec.ID,
3386                 x_pavv_rec.CHR_ID,
3387                 x_pavv_rec.CLE_ID,
3388                 x_pavv_rec.FLEX_TITLE,
3389                 x_pavv_rec.PRICING_CONTEXT,
3390                 x_pavv_rec.PRICING_ATTRIBUTE1,
3391                 x_pavv_rec.PRICING_ATTRIBUTE2,
3392                 x_pavv_rec.PRICING_ATTRIBUTE3,
3393                 x_pavv_rec.PRICING_ATTRIBUTE4,
3394                 x_pavv_rec.PRICING_ATTRIBUTE5,
3395                 x_pavv_rec.PRICING_ATTRIBUTE6,
3396                 x_pavv_rec.PRICING_ATTRIBUTE7,
3397                 x_pavv_rec.PRICING_ATTRIBUTE8,
3398                 x_pavv_rec.PRICING_ATTRIBUTE9,
3399                 x_pavv_rec.PRICING_ATTRIBUTE10,
3400                 x_pavv_rec.PRICING_ATTRIBUTE11,
3401                 x_pavv_rec.PRICING_ATTRIBUTE12,
3402                 x_pavv_rec.PRICING_ATTRIBUTE13,
3403                 x_pavv_rec.PRICING_ATTRIBUTE14,
3404                 x_pavv_rec.PRICING_ATTRIBUTE15,
3405                 x_pavv_rec.PRICING_ATTRIBUTE16,
3406                 x_pavv_rec.PRICING_ATTRIBUTE17,
3407                 x_pavv_rec.PRICING_ATTRIBUTE18,
3408                 x_pavv_rec.PRICING_ATTRIBUTE19,
3409                 x_pavv_rec.PRICING_ATTRIBUTE20,
3410                 x_pavv_rec.PRICING_ATTRIBUTE21,
3411                 x_pavv_rec.PRICING_ATTRIBUTE22,
3412                 x_pavv_rec.PRICING_ATTRIBUTE23,
3413                 x_pavv_rec.PRICING_ATTRIBUTE24,
3414                 x_pavv_rec.PRICING_ATTRIBUTE25,
3415                 x_pavv_rec.PRICING_ATTRIBUTE26,
3416                 x_pavv_rec.PRICING_ATTRIBUTE27,
3417                 x_pavv_rec.PRICING_ATTRIBUTE28,
3418                 x_pavv_rec.PRICING_ATTRIBUTE29,
3419                 x_pavv_rec.PRICING_ATTRIBUTE30,
3420                 x_pavv_rec.PRICING_ATTRIBUTE31,
3421                 x_pavv_rec.PRICING_ATTRIBUTE32,
3422                 x_pavv_rec.PRICING_ATTRIBUTE33,
3423                 x_pavv_rec.PRICING_ATTRIBUTE34,
3424                 x_pavv_rec.PRICING_ATTRIBUTE35,
3425                 x_pavv_rec.PRICING_ATTRIBUTE36,
3426                 x_pavv_rec.PRICING_ATTRIBUTE37,
3427                 x_pavv_rec.PRICING_ATTRIBUTE38,
3428                 x_pavv_rec.PRICING_ATTRIBUTE39,
3429                 x_pavv_rec.PRICING_ATTRIBUTE40,
3430                 x_pavv_rec.PRICING_ATTRIBUTE41,
3431                 x_pavv_rec.PRICING_ATTRIBUTE42,
3432                 x_pavv_rec.PRICING_ATTRIBUTE43,
3433                 x_pavv_rec.PRICING_ATTRIBUTE44,
3434                 x_pavv_rec.PRICING_ATTRIBUTE45,
3435                 x_pavv_rec.PRICING_ATTRIBUTE46,
3436                 x_pavv_rec.PRICING_ATTRIBUTE47,
3437                 x_pavv_rec.PRICING_ATTRIBUTE48,
3438                 x_pavv_rec.PRICING_ATTRIBUTE49,
3439                 x_pavv_rec.PRICING_ATTRIBUTE50,
3440                 x_pavv_rec.PRICING_ATTRIBUTE51,
3441                 x_pavv_rec.PRICING_ATTRIBUTE52,
3442                 x_pavv_rec.PRICING_ATTRIBUTE53,
3443                 x_pavv_rec.PRICING_ATTRIBUTE54,
3444                 x_pavv_rec.PRICING_ATTRIBUTE55,
3445                 x_pavv_rec.PRICING_ATTRIBUTE56,
3446                 x_pavv_rec.PRICING_ATTRIBUTE57,
3447                 x_pavv_rec.PRICING_ATTRIBUTE58,
3448                 x_pavv_rec.PRICING_ATTRIBUTE59,
3449                 x_pavv_rec.PRICING_ATTRIBUTE60,
3450                 x_pavv_rec.PRICING_ATTRIBUTE61,
3451                 x_pavv_rec.PRICING_ATTRIBUTE62,
3452                 x_pavv_rec.PRICING_ATTRIBUTE63,
3453                 x_pavv_rec.PRICING_ATTRIBUTE64,
3454                 x_pavv_rec.PRICING_ATTRIBUTE65,
3455                 x_pavv_rec.PRICING_ATTRIBUTE66,
3456                 x_pavv_rec.PRICING_ATTRIBUTE67,
3457                 x_pavv_rec.PRICING_ATTRIBUTE68,
3458                 x_pavv_rec.PRICING_ATTRIBUTE69,
3459                 x_pavv_rec.PRICING_ATTRIBUTE70,
3460                 x_pavv_rec.PRICING_ATTRIBUTE71,
3461                 x_pavv_rec.PRICING_ATTRIBUTE72,
3462                 x_pavv_rec.PRICING_ATTRIBUTE73,
3463                 x_pavv_rec.PRICING_ATTRIBUTE74,
3464                 x_pavv_rec.PRICING_ATTRIBUTE75,
3465                 x_pavv_rec.PRICING_ATTRIBUTE76,
3466                 x_pavv_rec.PRICING_ATTRIBUTE77,
3467                 x_pavv_rec.PRICING_ATTRIBUTE78,
3468                 x_pavv_rec.PRICING_ATTRIBUTE79,
3469                 x_pavv_rec.PRICING_ATTRIBUTE80,
3470                 x_pavv_rec.PRICING_ATTRIBUTE81,
3471                 x_pavv_rec.PRICING_ATTRIBUTE82,
3472                 x_pavv_rec.PRICING_ATTRIBUTE83,
3473                 x_pavv_rec.PRICING_ATTRIBUTE84,
3474                 x_pavv_rec.PRICING_ATTRIBUTE85,
3475                 x_pavv_rec.PRICING_ATTRIBUTE86,
3476                 x_pavv_rec.PRICING_ATTRIBUTE87,
3477                 x_pavv_rec.PRICING_ATTRIBUTE88,
3478                 x_pavv_rec.PRICING_ATTRIBUTE89,
3479                 x_pavv_rec.PRICING_ATTRIBUTE90,
3480                 x_pavv_rec.PRICING_ATTRIBUTE91,
3481                 x_pavv_rec.PRICING_ATTRIBUTE92,
3482                 x_pavv_rec.PRICING_ATTRIBUTE93,
3483                 x_pavv_rec.PRICING_ATTRIBUTE94,
3484                 x_pavv_rec.PRICING_ATTRIBUTE95,
3485                 x_pavv_rec.PRICING_ATTRIBUTE96,
3486                 x_pavv_rec.PRICING_ATTRIBUTE97,
3487                 x_pavv_rec.PRICING_ATTRIBUTE98,
3488                 x_pavv_rec.PRICING_ATTRIBUTE99,
3489                 x_pavv_rec.PRICING_ATTRIBUTE100,
3490                 x_pavv_rec.QUALIFIER_CONTEXT,
3491                 x_pavv_rec.QUALIFIER_ATTRIBUTE1,
3492                 x_pavv_rec.QUALIFIER_ATTRIBUTE2,
3493                 x_pavv_rec.QUALIFIER_ATTRIBUTE3,
3494                 x_pavv_rec.QUALIFIER_ATTRIBUTE4,
3495                 x_pavv_rec.QUALIFIER_ATTRIBUTE5,
3496                 x_pavv_rec.QUALIFIER_ATTRIBUTE6,
3497                 x_pavv_rec.QUALIFIER_ATTRIBUTE7,
3498                 x_pavv_rec.QUALIFIER_ATTRIBUTE8,
3499                 x_pavv_rec.QUALIFIER_ATTRIBUTE9,
3500                 x_pavv_rec.QUALIFIER_ATTRIBUTE10,
3501                 x_pavv_rec.QUALIFIER_ATTRIBUTE11,
3502                 x_pavv_rec.QUALIFIER_ATTRIBUTE12,
3503                 x_pavv_rec.QUALIFIER_ATTRIBUTE13,
3504                 x_pavv_rec.QUALIFIER_ATTRIBUTE14,
3505                 x_pavv_rec.QUALIFIER_ATTRIBUTE15,
3506                 x_pavv_rec.QUALIFIER_ATTRIBUTE16,
3507                 x_pavv_rec.QUALIFIER_ATTRIBUTE17,
3508                 x_pavv_rec.QUALIFIER_ATTRIBUTE18,
3509                 x_pavv_rec.QUALIFIER_ATTRIBUTE19,
3510                 x_pavv_rec.QUALIFIER_ATTRIBUTE20,
3511                 x_pavv_rec.QUALIFIER_ATTRIBUTE21,
3512                 x_pavv_rec.QUALIFIER_ATTRIBUTE22,
3513                 x_pavv_rec.QUALIFIER_ATTRIBUTE23,
3514                 x_pavv_rec.QUALIFIER_ATTRIBUTE24,
3515                 x_pavv_rec.QUALIFIER_ATTRIBUTE25,
3516                 x_pavv_rec.QUALIFIER_ATTRIBUTE26,
3517                 x_pavv_rec.QUALIFIER_ATTRIBUTE27,
3518                 x_pavv_rec.QUALIFIER_ATTRIBUTE28,
3519                 x_pavv_rec.QUALIFIER_ATTRIBUTE29,
3520                 x_pavv_rec.QUALIFIER_ATTRIBUTE30,
3521                 x_pavv_rec.QUALIFIER_ATTRIBUTE31,
3522                 x_pavv_rec.QUALIFIER_ATTRIBUTE32,
3523                 x_pavv_rec.QUALIFIER_ATTRIBUTE33,
3524                 x_pavv_rec.QUALIFIER_ATTRIBUTE34,
3525                 x_pavv_rec.QUALIFIER_ATTRIBUTE35,
3526                 x_pavv_rec.QUALIFIER_ATTRIBUTE36,
3527                 x_pavv_rec.QUALIFIER_ATTRIBUTE37,
3528                 x_pavv_rec.QUALIFIER_ATTRIBUTE38,
3529                 x_pavv_rec.QUALIFIER_ATTRIBUTE39,
3530                 x_pavv_rec.QUALIFIER_ATTRIBUTE40,
3531                 x_pavv_rec.QUALIFIER_ATTRIBUTE41,
3532                 x_pavv_rec.QUALIFIER_ATTRIBUTE42,
3533                 x_pavv_rec.QUALIFIER_ATTRIBUTE43,
3534                 x_pavv_rec.QUALIFIER_ATTRIBUTE44,
3535                 x_pavv_rec.QUALIFIER_ATTRIBUTE45,
3536                 x_pavv_rec.QUALIFIER_ATTRIBUTE46,
3537                 x_pavv_rec.QUALIFIER_ATTRIBUTE47,
3538                 x_pavv_rec.QUALIFIER_ATTRIBUTE48,
3539                 x_pavv_rec.QUALIFIER_ATTRIBUTE49,
3540                 x_pavv_rec.QUALIFIER_ATTRIBUTE50,
3541                 x_pavv_rec.QUALIFIER_ATTRIBUTE51,
3542                 x_pavv_rec.QUALIFIER_ATTRIBUTE52,
3543                 x_pavv_rec.QUALIFIER_ATTRIBUTE53,
3544                 x_pavv_rec.QUALIFIER_ATTRIBUTE54,
3545                 x_pavv_rec.QUALIFIER_ATTRIBUTE55,
3546                 x_pavv_rec.QUALIFIER_ATTRIBUTE56,
3547                 x_pavv_rec.QUALIFIER_ATTRIBUTE57,
3548                 x_pavv_rec.QUALIFIER_ATTRIBUTE58,
3549                 x_pavv_rec.QUALIFIER_ATTRIBUTE59,
3550                 x_pavv_rec.QUALIFIER_ATTRIBUTE60,
3551                 x_pavv_rec.QUALIFIER_ATTRIBUTE61,
3552                 x_pavv_rec.QUALIFIER_ATTRIBUTE62,
3553                 x_pavv_rec.QUALIFIER_ATTRIBUTE63,
3554                 x_pavv_rec.QUALIFIER_ATTRIBUTE64,
3555                 x_pavv_rec.QUALIFIER_ATTRIBUTE65,
3556                 x_pavv_rec.QUALIFIER_ATTRIBUTE66,
3557                 x_pavv_rec.QUALIFIER_ATTRIBUTE67,
3558                 x_pavv_rec.QUALIFIER_ATTRIBUTE68,
3559                 x_pavv_rec.QUALIFIER_ATTRIBUTE69,
3560                 x_pavv_rec.QUALIFIER_ATTRIBUTE70,
3561                 x_pavv_rec.QUALIFIER_ATTRIBUTE71,
3562                 x_pavv_rec.QUALIFIER_ATTRIBUTE72,
3563                 x_pavv_rec.QUALIFIER_ATTRIBUTE73,
3564                 x_pavv_rec.QUALIFIER_ATTRIBUTE74,
3565                 x_pavv_rec.QUALIFIER_ATTRIBUTE75,
3566                 x_pavv_rec.QUALIFIER_ATTRIBUTE76,
3567                 x_pavv_rec.QUALIFIER_ATTRIBUTE77,
3568                 x_pavv_rec.QUALIFIER_ATTRIBUTE78,
3569                 x_pavv_rec.QUALIFIER_ATTRIBUTE79,
3570                 x_pavv_rec.QUALIFIER_ATTRIBUTE80,
3571                 x_pavv_rec.QUALIFIER_ATTRIBUTE81,
3572                 x_pavv_rec.QUALIFIER_ATTRIBUTE82,
3573                 x_pavv_rec.QUALIFIER_ATTRIBUTE83,
3574                 x_pavv_rec.QUALIFIER_ATTRIBUTE84,
3575                 x_pavv_rec.QUALIFIER_ATTRIBUTE85,
3576                 x_pavv_rec.QUALIFIER_ATTRIBUTE86,
3577                 x_pavv_rec.QUALIFIER_ATTRIBUTE87,
3578                 x_pavv_rec.QUALIFIER_ATTRIBUTE88,
3579                 x_pavv_rec.QUALIFIER_ATTRIBUTE89,
3580                 x_pavv_rec.QUALIFIER_ATTRIBUTE90,
3581                 x_pavv_rec.QUALIFIER_ATTRIBUTE91,
3582                 x_pavv_rec.QUALIFIER_ATTRIBUTE92,
3583                 x_pavv_rec.QUALIFIER_ATTRIBUTE93,
3584                 x_pavv_rec.QUALIFIER_ATTRIBUTE94,
3585                 x_pavv_rec.QUALIFIER_ATTRIBUTE95,
3586                 x_pavv_rec.QUALIFIER_ATTRIBUTE96,
3587                 x_pavv_rec.QUALIFIER_ATTRIBUTE97,
3588                 x_pavv_rec.QUALIFIER_ATTRIBUTE98,
3589                 x_pavv_rec.QUALIFIER_ATTRIBUTE99,
3590                 x_pavv_rec.QUALIFIER_ATTRIBUTE100;
3591 
3592       l_no_data_found := c_pavv_rec%NOTFOUND;
3593       CLOSE c_pavv_rec;
3594       IF l_no_data_found THEN
3595         l_return_status := OKC_API.G_RET_STS_ERROR;
3596         return(l_return_status);
3597       ELSE
3598         return(l_return_status);
3599       END IF;
3600     EXCEPTION
3601       WHEN OTHERS THEN
3602         -- store SQL error message on message stack for caller
3603         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3604         -- notify caller of an UNEXPECTED error
3605         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3606         return(l_return_status);
3607 
3608     END get_pavv_rec;
3609 
3610   ----------------------------------------------------------------------------
3611   --Function to populate the price_attributes record to be copied.
3612   ----------------------------------------------------------------------------
3613      FUNCTION    get_patv_rec(p_pat_id IN NUMBER,
3614                                 x_patv_rec OUT NOCOPY patv_rec_type) RETURN  VARCHAR2 IS
3615 
3616       l_return_status           VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3617       l_no_data_found BOOLEAN := TRUE;
3618 
3619       CURSOR c_patv_rec IS
3620       SELECT
3621               --ID,
3622             PAT_ID,
3623             CHR_ID,
3624             CLE_ID,
3625             BSL_ID,
3626             BCL_ID,
3627             CREATED_BY,
3628             CREATION_DATE,
3629             LAST_UPDATED_BY,
3630             LAST_UPDATE_DATE,
3631             MODIFIED_FROM,
3632             MODIFIED_TO,
3633             MODIFIER_MECHANISM_TYPE_CODE,
3634             OPERAND,
3635             ARITHMETIC_OPERATOR,
3636             AUTOMATIC_FLAG,
3637             UPDATE_ALLOWED,
3638             UPDATED_FLAG,
3639             APPLIED_FLAG,
3640             ON_INVOICE_FLAG,
3641             PRICING_PHASE_ID,
3642            CONTEXT,
3643             PROGRAM_APPLICATION_ID,
3644             PROGRAM_ID,
3645             PROGRAM_UPDATE_DATE,
3646             REQUEST_ID,
3647             LIST_HEADER_ID,
3648             LIST_LINE_ID,
3649             LIST_LINE_TYPE_CODE,
3650             CHANGE_REASON_CODE,
3651             CHANGE_REASON_TEXT,
3652             ESTIMATED_FLAG,
3653             ADJUSTED_AMOUNT,
3654            CHARGE_TYPE_CODE,
3655            CHARGE_SUBTYPE_CODE,
3656            RANGE_BREAK_QUANTITY,
3657            ACCRUAL_CONVERSION_RATE,
3658            PRICING_GROUP_SEQUENCE,
3659            ACCRUAL_FLAG,
3660            LIST_LINE_NO,
3661            SOURCE_SYSTEM_CODE,
3662            BENEFIT_QTY,
3663            BENEFIT_UOM_CODE,
3664            EXPIRATION_DATE,
3665            MODIFIER_LEVEL_CODE,
3666            PRICE_BREAK_TYPE_CODE,
3667            SUBSTITUTION_ATTRIBUTE,
3668            PRORATION_TYPE_CODE,
3669            INCLUDE_ON_RETURNS_FLAG,
3670            OBJECT_VERSION_NUMBER,
3671             ATTRIBUTE1,
3672             ATTRIBUTE2,
3673             ATTRIBUTE3,
3674             ATTRIBUTE4,
3675             ATTRIBUTE5,
3676             ATTRIBUTE6,
3677             ATTRIBUTE7,
3678             ATTRIBUTE8,
3679             ATTRIBUTE9,
3680             ATTRIBUTE10,
3681             ATTRIBUTE11,
3682             ATTRIBUTE12,
3683             ATTRIBUTE13,
3684             ATTRIBUTE14,
3685             ATTRIBUTE15,
3686             LAST_UPDATE_LOGIN,
3687             REBATE_TRANSACTION_TYPE_CODE
3688              FROM    OKC_PRICE_ADJUSTMENTS_V
3689         WHERE   ID = p_pat_id;
3690     BEGIN
3691       OPEN c_patv_rec;
3692       FETCH c_patv_rec
3693       INTO
3694             --- x_patv_rec.ID,
3695               x_patv_rec.PAT_ID,
3696               x_patv_rec.CHR_ID,
3697               x_patv_rec.CLE_ID,
3698               x_patv_rec.BSL_ID,
3699               x_patv_rec.BCL_ID,
3700               x_patv_rec.CREATED_BY,
3701               x_patv_rec.CREATION_DATE,
3702               x_patv_rec.LAST_UPDATED_BY,
3703               x_patv_rec.LAST_UPDATE_DATE,
3704               x_patv_rec.MODIFIED_FROM,
3705               x_patv_rec.MODIFIED_TO,
3706               x_patv_rec.MODIFIER_MECHANISM_TYPE_CODE,
3707               x_patv_rec.OPERAND,
3708               x_patv_rec.ARITHMETIC_OPERATOR,
3709               x_patv_rec.AUTOMATIC_FLAG,
3710               x_patv_rec.UPDATE_ALLOWED,
3711               x_patv_rec.UPDATED_FLAG,
3712               x_patv_rec.APPLIED_FLAG,
3713               x_patv_rec.ON_INVOICE_FLAG,
3714               x_patv_rec.PRICING_PHASE_ID,
3715               x_patv_rec.CONTEXT,
3716            x_patv_rec.PROGRAM_APPLICATION_ID,
3717            x_patv_rec.PROGRAM_ID,
3718            x_patv_rec.PROGRAM_UPDATE_DATE,
3719            x_patv_rec.REQUEST_ID,
3720             x_patv_rec.LIST_HEADER_ID,
3721             x_patv_rec.LIST_LINE_ID,
3722            x_patv_rec.LIST_LINE_TYPE_CODE,
3723             x_patv_rec.CHANGE_REASON_CODE,
3724             x_patv_rec.CHANGE_REASON_TEXT,
3725             x_patv_rec.ESTIMATED_FLAG,
3726             x_patv_rec.ADJUSTED_AMOUNT,
3727            x_patv_rec.CHARGE_TYPE_CODE,
3728            x_patv_rec.CHARGE_SUBTYPE_CODE,
3729            x_patv_rec.RANGE_BREAK_QUANTITY,
3730            x_patv_rec.ACCRUAL_CONVERSION_RATE,
3731            x_patv_rec.PRICING_GROUP_SEQUENCE,
3732            x_patv_rec.ACCRUAL_FLAG,
3733             x_patv_rec.LIST_LINE_NO,
3734            x_patv_rec.SOURCE_SYSTEM_CODE,
3735            x_patv_rec.BENEFIT_QTY,
3736            x_patv_rec.BENEFIT_UOM_CODE,
3737            x_patv_rec.EXPIRATION_DATE,
3738            x_patv_rec.MODIFIER_LEVEL_CODE,
3739            x_patv_rec.PRICE_BREAK_TYPE_CODE,
3740            x_patv_rec.SUBSTITUTION_ATTRIBUTE,
3741            x_patv_rec.PRORATION_TYPE_CODE,
3742            x_patv_rec.INCLUDE_ON_RETURNS_FLAG,
3743            x_patv_rec.OBJECT_VERSION_NUMBER,
3744               x_patv_rec.ATTRIBUTE1,
3745               x_patv_rec.ATTRIBUTE2,
3746               x_patv_rec.ATTRIBUTE3,
3747               x_patv_rec.ATTRIBUTE4,
3748               x_patv_rec.ATTRIBUTE5,
3749               x_patv_rec.ATTRIBUTE6,
3750               x_patv_rec.ATTRIBUTE7,
3751               x_patv_rec.ATTRIBUTE8,
3752               x_patv_rec.ATTRIBUTE9,
3753               x_patv_rec.ATTRIBUTE10,
3754               x_patv_rec.ATTRIBUTE11,
3755               x_patv_rec.ATTRIBUTE12,
3756               x_patv_rec.ATTRIBUTE13,
3757               x_patv_rec.ATTRIBUTE14,
3758               x_patv_rec.ATTRIBUTE15,
3759               x_patv_rec.LAST_UPDATE_LOGIN,
3760               x_patv_rec.REBATE_TRANSACTION_TYPE_CODE;
3761 
3762                l_no_data_found := c_patv_rec%NOTFOUND;
3763       CLOSE c_patv_rec;
3764       IF l_no_data_found THEN
3765         l_return_status := OKC_API.G_RET_STS_ERROR;
3766         return(l_return_status);
3767       ELSE
3768         return(l_return_status);
3769       END IF;
3770     EXCEPTION
3771       WHEN OTHERS THEN
3772         -- store SQL error message on message stack for caller
3773         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3774         -- notify caller of an UNEXPECTED error
3775         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3776         return(l_return_status);
3777 
3778     END get_patv_rec;
3779 --------------------------------------------------------------------------------------------------
3780 
3781 /*---------------------------------------------------------------------------------------*/
3782 -- Procedure GenerateNewLineNumber: Used to generate line numbers for all lines and sublines
3783 --                                  in the newly created contract in the same sequence as the
3784 --                                  lines in the source contract
3785 /*---------------------------------------------------------------------------------------*/
3786 
3787  Procedure GenerateNewLineNumber(P_To_Chr_ID IN NUMBER
3788 			        ,P_Partial_Copy_YN IN VARCHAR2
3789 				,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
3790  			        ,x_return_status OUT NOCOPY VARCHAR2) IS
3791  l_api_name        CONSTANT VARCHAR2(30) := 'GenerateNewLineNumber';
3792  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
3793 
3794  cursor allLines IS
3795  select
3796   id
3797  ,line_number
3798  ,cle_id
3799  from okc_k_lines_b
3800  where dnz_chr_id = P_To_Chr_ID
3801  and (
3802       (cle_id is NOT NULL and lse_id in (7,8,9,10,11,13,25,35))
3803      OR
3804       (cle_id is NULL)
3805      )
3806  order by cle_id,to_number(line_number);
3807 
3808  cursor partialLines IS
3809  select
3810   b.id
3811  ,b.line_number
3812  ,b.cle_id
3813  from
3814   okc_k_lines_b_temp bt
3815  ,okc_k_lines_b b
3816  where b.dnz_chr_id = P_To_Chr_ID
3817  and (
3818       (b.cle_id is NOT NULL and b.lse_id in (7,8,9,10,11,13,25,35))
3819        OR
3820       (b.cle_id is NULL)
3821      )
3822  and b.id = bt.id
3823  order by bt.cle_id,to_number(bt.line_number);
3824 
3825  l_id NUMBER;
3826  l_line_number NUMBER;
3827  l_cle_id NUMBER;
3828 
3829  l_current_cle_id NUMBER := -99;
3830  l_subline_num_initialized VARCHAR2(1) := 'N';
3831  l_subline_no NUMBER := -99;
3832 
3833  l_topline_num_initialized VARCHAR2(1) := 'N';
3834  l_topline_no NUMBER := -99;
3835 
3836  BEGIN
3837   x_return_status := FND_API.G_RET_STS_SUCCESS;
3838 
3839   If (P_Partial_Copy_YN = 'N') then
3840    OPEN allLines;
3841   Elsif (P_Partial_Copy_YN = 'Y') then
3842    OPEN partialLines;
3843   End If;
3844 
3845   LOOP
3846   If (P_Partial_Copy_YN = 'N') then
3847 /*
3848    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
3849       FND_LOG.string(FND_LOG.level_statement
3850                         ,l_module_name
3851                         ,'Inside GenerateNewLineNumber, FETCHing from allLines'
3852 		    );
3853    End If;
3854 */
3855     FETCH allLines into l_id,l_line_number,l_cle_id;
3856   Elsif (P_Partial_Copy_YN = 'Y') then
3857 /*
3858    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
3859       FND_LOG.string(FND_LOG.level_statement
3860                         ,l_module_name
3861                         ,'Inside GenerateNewLineNumber, FETCHing from partialLines'
3862 		    );
3863    End If;
3864 */
3865     FETCH partialLines into l_id,l_line_number,l_cle_id;
3866   End If;
3867 
3868   If (P_Partial_Copy_YN = 'N') then
3869    EXIT WHEN allLines%NOTFOUND;
3870   Elsif (P_Partial_Copy_YN = 'Y') then
3871    EXIT WHEN partialLines%NOTFOUND;
3872   End If;
3873 
3874    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
3875       FND_LOG.string(FND_LOG.level_statement
3876                         ,l_module_name
3877                         ,'ID='||l_id||',Line Num='||l_line_number||', Cle ID='||l_cle_id
3878                     );
3879    End If;
3880 
3881   IF (l_cle_id IS NULL) then
3882     IF (l_topline_num_initialized = 'N') then
3883      IF (P_Partial_Copy_YN = 'N') then
3884        l_topline_no := 1;
3885      ELSIF (P_Partial_Copy_YN = 'Y') then
3886       IF (P_Target_Contract_New_YN = 'Y') then
3887        l_topline_no := 1;
3888       ELSIF (P_Target_Contract_New_YN = 'N') then
3889         Begin
3890          SELECT nvl(max(to_number(line_number)),0)
3891          INTO
3892          l_topline_no
3893          FROM
3894          OKC_K_LINES_B
3895          WHERE CLE_ID IS NULL
3896          AND DNZ_CHR_ID = P_To_Chr_ID
3897 	 AND ID NOT IN (Select a.id from OKC_K_LINES_B_TEMP a);
3898         End;
3899         l_topline_no := l_topline_no + 1;
3900       END IF;
3901      END IF;
3902      l_topline_num_initialized := 'Y';
3903     END IF;
3904 
3905     update okc_k_lines_b
3906     set line_number = l_topline_no
3907     where id = l_id;
3908 
3909      l_topline_no := l_topline_no + 1;
3910 
3911   ELSIF (l_cle_id IS NOT NULL) then
3912     IF (l_current_cle_id <> l_cle_id) then
3913       l_current_cle_id := l_cle_id;
3914       l_subline_num_initialized := 'N';
3915      IF (l_subline_num_initialized = 'N') then
3916       IF (P_Partial_Copy_YN = 'N') then
3917        l_subline_no := 1;
3918       ELSIF (P_Partial_Copy_YN = 'Y') then
3919        IF (P_Target_Contract_New_YN = 'Y') then
3920          l_subline_no := 1;
3921        ELSIF (P_Target_Contract_New_YN = 'N') then
3922          Begin
3923           SELECT nvl(max(to_number(line_number)),0)
3924           INTO
3925           l_subline_no
3926           FROM
3927           OKC_K_LINES_B
3928           WHERE CLE_ID = l_cle_id
3929           AND LSE_ID in (7,8,9,10,11,13,25,35)
3930           AND ID NOT IN (Select a.id from OKC_K_LINES_B_TEMP a);
3931          End;
3932          l_subline_no := l_subline_no + 1;
3933        END IF;
3934       END IF;
3935       l_subline_num_initialized := 'Y';
3936      END IF;
3937     END IF;
3938 
3939     update okc_k_lines_b
3940     set line_number = l_subline_no
3941     where id = l_id;
3942 
3943     l_subline_no := l_subline_no + 1;
3944 
3945   END IF;
3946 
3947   END LOOP;
3948   If (allLines%ISOPEN) then
3949    CLOSE allLines;
3950   Elsif (partialLines%ISOPEN) then
3951    CLOSE partialLines;
3952   End If;
3953 
3954     EXCEPTION
3955       WHEN OTHERS THEN
3956 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3957        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
3958         IF (FND_LOG.test(FND_LOG.level_unexpected, l_module_name)) THEN
3959          FND_LOG.string(FND_LOG.level_unexpected
3960                         ,l_module_name||'.GenerateNewLineNumber'
3961                         ,'EXCEPTION in GenerateNewLineNumber '||SQLERRM
3962                          );
3963         END IF;
3964       END IF;
3965 
3966 	  IF allLines%ISOPEN THEN
3967 	    CLOSE allLines;
3968           Elsif partialLines%ISOPEN THEN
3969             CLOSE partialLines;
3970 	  End If;
3971        OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
3972 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3973 
3974  End GenerateNewLineNumber;
3975 
3976  --===================================================
3977  -- copy_okc_k_lines_tl
3978  -- Parameters: P_From_Chr_ID : Header ID of source contract
3979  --  	      P_To_Chr_ID   : Header ID of target contract
3980  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
3981  --				    or as part of component copy from UI (value = 'Y')
3982   --====================================================
3983  PROCEDURE copy_okc_k_lines_tl(P_From_Chr_ID IN NUMBER
3984 			    ,P_To_Chr_ID   IN NUMBER
3985 			    ,P_Partial_Copy_YN IN VARCHAR2
3986 			    ,P_Lines_Count IN NUMBER DEFAULT 0
3987 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
3988 
3989  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_K_LINES_TL';
3990  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
3991 
3992  l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
3993 
3994  CURSOR GetOkcLinesTLFull(P_To_Chr_ID IN NUMBER) IS
3995  SELECT
3996    OkcTL.ID		AS OkcTL_OldID
3997   ,OkcB.ID		AS OkcTL_NewID
3998   ,OkcTL.LANGUAGE	AS OkcTL_LANGUAGE
3999   ,OkcTL.SOURCE_LANG	AS OkcTL_SOURCE_LANG
4000   ,OkcTL.SFWT_FLAG	AS OkcTL_SFWT_FLAG
4001   ,OkcTL.NAME		AS OkcTL_NAME
4002   ,OkcTL.COMMENTS	AS OkcTL_COMMENTS
4003   ,OkcTL.ITEM_DESCRIPTION AS OkcTL_ITEM_DESCRIPTION
4004   ,OkcTL.BLOCK23TEXT	AS OkcTL_BLOCK23TEXT
4005   ,OkcTL.SECURITY_GROUP_ID AS OkcTL_SECURITY_GROUP_ID
4006   ,OkcTL.OKE_BOE_DESCRIPTION AS OkcTL_OKE_BOE_DESCRIPTION
4007   ,OkcTL.COGNOMEN	AS OkcTL_COGNOMEN
4008  FROM
4009   OKC_K_LINES_TL okcTL
4010  ,OKC_K_LINES_B okcB
4011  where
4012  okcB.ORIG_SYSTEM_ID1 = okcTL.ID
4013  AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
4014 
4015  CURSOR GetOkcLinesTLPartial(P_To_Chr_ID IN NUMBER) IS
4016   SELECT
4017    OkcTL.ID             AS OkcTL_OldID
4018   ,OkcBT.ID              AS OkcTL_NewID
4019   ,OkcTL.LANGUAGE       AS OkcTL_LANGUAGE
4020   ,OkcTL.SOURCE_LANG    AS OkcTL_SOURCE_LANG
4021   ,OkcTL.SFWT_FLAG      AS OkcTL_SFWT_FLAG
4022   ,OkcTL.NAME           AS OkcTL_NAME
4023   ,OkcTL.COMMENTS       AS OkcTL_COMMENTS
4024   ,OkcTL.ITEM_DESCRIPTION AS OkcTL_ITEM_DESCRIPTION
4025   ,OkcTL.BLOCK23TEXT    AS OkcTL_BLOCK23TEXT
4026   ,OkcTL.SECURITY_GROUP_ID AS OkcTL_SECURITY_GROUP_ID
4027   ,OkcTL.OKE_BOE_DESCRIPTION AS OkcTL_OKE_BOE_DESCRIPTION
4028   ,OkcTL.COGNOMEN       AS OkcTL_COGNOMEN
4029  FROM
4030   OKC_K_LINES_TL okcTL
4031  ,OKC_K_LINES_B_TEMP okcBT
4032  where
4033  okcBT.ORIG_SYSTEM_ID1 = okcTL.ID
4034  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
4035 
4036 
4037  Begin
4038   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
4039       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
4040          FND_LOG.string(FND_LOG.level_procedure
4041                         ,l_module_name
4042                         ,'begin: '
4043                          ||',P_From_Chr_ID='||P_From_Chr_ID
4044                          ||',P_To_Chr_ID='||P_To_Chr_ID
4045                          ||',P_Partial_Copy_YN='||P_Partial_Copy_YN
4046                          );
4047       END IF;
4048   END IF;
4049   x_return_status := l_return_status;
4050 
4051   IF (P_Partial_Copy_YN = 'N') THEN
4052    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4053      FND_LOG.string(FND_LOG.level_statement,l_module_name,'Opening GetOkcLinesTLFull');
4054    End If;
4055    OPEN GetOkcLinesTLFull(P_To_Chr_ID => P_To_Chr_ID);
4056   ELSIF (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) THEN
4057    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4058      FND_LOG.string(FND_LOG.level_statement,l_module_name,'Opening GetOkcLinesTLPartial');
4059    End If;
4060    OPEN GetOkcLinesTLPartial(P_To_Chr_ID => P_To_Chr_ID);
4061   END IF;
4062 
4063   LOOP
4064   IF (P_Partial_Copy_YN = 'N') THEN
4065    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4066      FND_LOG.string(FND_LOG.level_statement,l_module_name,'FETCHing from GetOkcLinesTLFull');
4067    End If;
4068    FETCH GetOkcLinesTLFull BULK COLLECT INTO
4069    OKCLinesTLRecTab.OkcTL_OldID
4070   ,OKCLinesTLRecTab.OkcTL_NewID
4071   ,OKCLinesTLRecTab.OkcTL_LANGUAGE
4072   ,OkcLinesTLRecTab.OkcTL_SFWT_FLAG
4073   ,OKCLinesTLRecTab.OkcTL_SOURCE_LANG
4074   ,OKCLinesTLRecTab.OkcTL_NAME
4075   ,OKCLinesTLRecTab.OkcTL_COMMENTS
4076   ,OKCLinesTLRecTab.OkcTL_ITEM_DESCRIPTION
4077   ,OKCLinesTLRecTab.OkcTL_BLOCK23TEXT
4078   ,OKCLinesTLRecTab.OkcTL_SECURITY_GROUP_ID
4079   ,OKCLinesTLRecTab.OkcTL_OKE_BOE_DESCRIPTION
4080   ,OKCLinesTLRecTab.OkcTL_COGNOMEN LIMIT G_BULK_FETCH_LIMIT;
4081   ELSIF (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
4082    If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
4083      FND_LOG.string(FND_LOG.level_statement,l_module_name,'FETCHing from GetOkcLinesTLPartial');
4084    End If;
4085    FETCH GetOkcLinesTLPartial BULK COLLECT INTO
4086    OKCLinesTLRecTab.OkcTL_OldID
4087   ,OKCLinesTLRecTab.OkcTL_NewID
4088   ,OKCLinesTLRecTab.OkcTL_LANGUAGE
4089   ,OkcLinesTLRecTab.OkcTL_SFWT_FLAG
4090   ,OKCLinesTLRecTab.OkcTL_SOURCE_LANG
4091   ,OKCLinesTLRecTab.OkcTL_NAME
4092   ,OKCLinesTLRecTab.OkcTL_COMMENTS
4093   ,OKCLinesTLRecTab.OkcTL_ITEM_DESCRIPTION
4094   ,OKCLinesTLRecTab.OkcTL_BLOCK23TEXT
4095   ,OKCLinesTLRecTab.OkcTL_SECURITY_GROUP_ID
4096   ,OKCLinesTLRecTab.OkcTL_OKE_BOE_DESCRIPTION
4097   ,OKCLinesTLRecTab.OkcTL_COGNOMEN LIMIT G_BULK_FETCH_LIMIT;
4098   END IF;
4099 
4100   FORALL i IN OKCLinesTLRecTab.OkcTL_NewID.FIRST .. OKCLinesTLRecTab.OkcTL_NewID.LAST
4101   INSERT INTO OKC_K_LINES_TL
4102   (
4103     ID
4104    ,LANGUAGE
4105    ,SOURCE_LANG
4106    ,SFWT_FLAG
4107    ,NAME
4108    ,COMMENTS
4109    ,ITEM_DESCRIPTION
4110    ,BLOCK23TEXT
4111    ,CREATED_BY
4112    ,CREATION_DATE
4113    ,LAST_UPDATED_BY
4114    ,LAST_UPDATE_DATE
4115    ,LAST_UPDATE_LOGIN
4116    ,SECURITY_GROUP_ID
4117    ,OKE_BOE_DESCRIPTION
4118    ,COGNOMEN
4119    )
4120   SELECT
4121   OKCLinesTLRecTab.OkcTL_NewID(i)
4122  ,OKCLinesTLRecTab.OkcTL_LANGUAGE(i)
4123  ,OKCLinesTLRecTab.OkcTL_SOURCE_LANG(i)
4124  ,OKCLinesTLRecTab.OkcTL_SFWT_FLAG(i)
4125  ,OKCLinesTLRecTab.OkcTL_NAME(i)
4126  ,OKCLinesTLRecTab.OkcTL_COMMENTS(i)
4127  ,OKCLinesTLRecTab.OkcTL_ITEM_DESCRIPTION(i)
4128  ,OKCLinesTLRecTab.OkcTL_BLOCK23TEXT(i)
4129  ,FND_GLOBAL.USER_ID
4130  ,SYSDATE
4131  ,FND_GLOBAL.USER_ID
4132  ,SYSDATE
4133  ,FND_GLOBAL.LOGIN_ID
4134  ,OKCLinesTLRecTab.OkcTL_SECURITY_GROUP_ID(i)
4135  ,OKCLinesTLRecTab.OkcTL_OKE_BOE_DESCRIPTION(i)
4136  ,OKCLinesTLRecTab.OkcTL_COGNOMEN(i)
4137   FROM DUAL;
4138 
4139    IF (P_Partial_Copy_YN = 'N') THEN
4140      EXIT WHEN GetOkcLinesTLFull%NOTFOUND;
4141    ELSIF (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) THEN
4142      EXIT WHEN GetOkcLinesTLPartial%NOTFOUND;
4143    END IF;
4144 
4145   END LOOP;
4146 
4147     IF GetOkcLinesTLFull%ISOPEN THEN
4148        CLOSE GetOkcLinesTLFull;
4149     ELSIF GetOkcLinesTLPartial%ISOPEN THEN
4150        CLOSE GetOkcLinesTLPartial;
4151     END IF;
4152 
4153       EXCEPTION
4154         WHEN OTHERS THEN
4155           IF GetOkcLinesTLFull%ISOPEN THEN
4156            CLOSE GetOkcLinesTLFull;
4157           ELSIF GetOkcLinesTLPartial%ISOPEN THEN
4158            CLOSE GetOkcLinesTLPartial;
4159           END IF;
4160           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4161           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
4162 	  RAISE;
4163 
4164  End copy_okc_k_lines_tl;
4165 
4166 
4167 --===================================================
4168 --  copy_okc_price_att_values
4169 --  Parameters: P_From_Chr_ID : Header ID of source contract
4170 --   	      P_To_Chr_ID   : Header ID of target contract
4171 --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
4172 --				    or as part of component copy from UI (value = 'Y')
4173 --	      P_Target_Contract_New_YN : Flag to indicate if copy process was copying to an existing contract (value = 'N')
4174 --					 or if a new contract header was created as part of the copy process (value = 'Y'). This
4175 --					 flag gets set to 'Y' just before the call to copy_contract_header procedure in
4176 --					 copy_components
4177 --	      If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
4178 --		 use cursor GetOkcPAVFull
4179 --	      If (P_Partial_Copy_YN = 'Y') then
4180 --		If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
4181 --		  Only rows for only Header , use cursor GetOkcPAVPartial_H
4182 --		Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
4183 --		  Both rows for both Header and Lines need to be copied, use cursor GetOkcPAVPartial_HNL
4184 --		Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
4185 --		  Only rows for chosen Lines are copied, use cursor GetOkcPAVPartial_L
4186 --		Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
4187 --		  nothing needs to be copied, no copy needed
4188 --		End If
4189 --            End If
4190 --====================================================
4191  PROCEDURE copy_okc_price_att_values(P_From_Chr_ID IN NUMBER
4192 			    ,P_To_Chr_ID   IN NUMBER
4193 			    ,P_Partial_Copy_YN IN VARCHAR2
4194 			    ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
4195 			    ,P_Lines_Count IN NUMBER DEFAULT 0
4196 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
4197 
4198  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PRICE_ATT_VALUES';
4199  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
4200 
4201  l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
4202  CURSOR GetOkcPAVFull IS
4203  SELECT
4204   okcPAV.ID AS okcPAV_OldID
4205  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4206  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4207  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4208  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4209  ,okcH.ID AS okcPAV_NewChrID
4210  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4211  ,NULL AS okcPAV_NewCleID
4212  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4213  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4214  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4215  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4216  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4217  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4218  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4219  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4220  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4221  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4222  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4223  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4224  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4225  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4226  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4227  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4228  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4229  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4230  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4231  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4232  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4233  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4234  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4235  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4236  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4237  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4238  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4239  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4240  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4241  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4242  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4243  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4244  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4245  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4246  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4247  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4248  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4249  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4250  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4251  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4252  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4253  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4254  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4255  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4256  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4257  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4258  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4259  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4260  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4261  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4262  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4263  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4264  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4265  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4266  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4267  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4268  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4269  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4270  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4271  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4272  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4273  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4274  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4275  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4276  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4277  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4278  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4279  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4280  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4281  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4282  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4283  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4284  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4285  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4286  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4287  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4288  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4289  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4290  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4291  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4292  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4293  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4294  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4295  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4296  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4297  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4298  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4299  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4300  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4301  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4302  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4303  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4304  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4305  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4306  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4307  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4308  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4309  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4310  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4311  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4312  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4313  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4314  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4315  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4316  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4317  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4318  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4319  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4320  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4321  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4322  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4323  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4324  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4325  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4326  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4327  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4328  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4329  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4330  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4331  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4332  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4333  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4334  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4335  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4336  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4337  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4338  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4339  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4340  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4341  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4342  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4343  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4344  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4345  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4346  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4347  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4348  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4349  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4350  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4351  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4352  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4353  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4354  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4355  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4356  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4357  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4358  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4359  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4360  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4361  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4362  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4363  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4364  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4365  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4366  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4367  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4368  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
4369  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
4370  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
4371  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
4372  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
4373  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
4374  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
4375  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
4376  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
4377  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
4378  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
4379  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
4380  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
4381  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
4382  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
4383  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
4384  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
4385  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
4386  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
4387  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
4388  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
4389  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
4390  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
4391  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
4392  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
4393  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
4394  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
4395  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
4396  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
4397  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
4398  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
4399  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
4400  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
4401  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
4402  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
4403  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
4404  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
4405  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
4406  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
4407  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
4408  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
4409  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
4410  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
4411  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
4412  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
4413  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
4414  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
4415  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
4416  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
4417  FROM
4418   OKC_PRICE_ATT_VALUES okcPAV
4419  ,OKC_K_HEADERS_B okcH
4420   WHERE okcPAV.CHR_ID = okcH.ORIG_SYSTEM_ID1
4421   and okcH.ID = P_To_Chr_ID
4422   and okcPAV.CLE_ID is NULL
4423   and okcPAV.CHR_ID = P_From_Chr_ID
4424   UNION
4425   SELECT
4426   okcPAV.ID AS okcPAV_OldID
4427  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4428  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4429  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4430  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4431  ,to_number(decode(okcPAV.CHR_ID,NULL,NULL,okcB.DNZ_CHR_ID)) AS okcPAV_NewChrID
4432  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4433  ,okcB.ID AS okcPAV_NewCleID
4434  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4435  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4436  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4437  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4438  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4439  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4440  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4441  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4442  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4443  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4444  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4445  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4446  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4447  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4448  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4449  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4450  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4451  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4452  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4453  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4454  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4455  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4456  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4457  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4458  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4459  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4460  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4461  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4462  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4463  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4464  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4465  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4466  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4467  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4468  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4469  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4470  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4471  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4472  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4473  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4474  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4475  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4476  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4477  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4478  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4479  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4480  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4481  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4482  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4483  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4484  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4485  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4486  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4487  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4488  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4489  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4490  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4491  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4492  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4493  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4494  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4495  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4496  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4497  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4498  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4499  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4500  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4501  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4502  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4503  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4504  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4505  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4506  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4507  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4508  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4509  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4510  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4511  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4512  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4513  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4514  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4515  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4516  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4517  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4518  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4519  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4520  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4521  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4522  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4523  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4524  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4525  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4526  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4527  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4528  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4529  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4530  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4531  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4532  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4533  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4534  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4535  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4536  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4537  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4538  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4539  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4540  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4541  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4542  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4543  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4544  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4545  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4546  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4547  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4548  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4549  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4550  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4551  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4552  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4553  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4554  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4555  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4556  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4557  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4558  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4559  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4560  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4561  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4562  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4563  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4564  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4565  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4566  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4567  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4568  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4569  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4570  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4571  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4572  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4573  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4574  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4575  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4576  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4577  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4578  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4579  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4580  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4581  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4582  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4583  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4584  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4585  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4586  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4587  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4588  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4589  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4590  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
4591  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
4592  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
4593  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
4594  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
4595  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
4596  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
4597  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
4598  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
4599  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
4600  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
4601  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
4602  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
4603  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
4604  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
4605  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
4606  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
4607  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
4608  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
4609  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
4610  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
4611  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
4612  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
4613  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
4614  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
4615  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
4616  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
4617  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
4618  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
4619  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
4620  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
4621  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
4622  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
4623  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
4624  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
4625  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
4626  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
4627  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
4628  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
4629  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
4630  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
4631  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
4632  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
4633  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
4634  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
4635  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
4636  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
4637  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
4638  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
4639  FROM
4640   OKC_PRICE_ATT_VALUES okcPAV
4641  ,OKC_K_LINES_B okcB
4642   WHERE okcPAV.CLE_ID = okcB.ORIG_SYSTEM_ID1
4643   AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
4644 
4645 --------------------------------------------------------------------------
4646 --Cursor used during Component Copy to copy rows for both Header and Lines
4647 --------------------------------------------------------------------------
4648  CURSOR GetOkcPAVPartial_HNL IS
4649  SELECT
4650   okcPAV.ID AS okcPAV_OldID
4651  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4652  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4653  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4654  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4655  ,okcH.ID AS okcPAV_NewChrID
4656  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4657  ,NULL AS okcPAV_NewCleID
4658  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4659  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4660  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4661  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4662  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4663  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4664  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4665  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4666  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4667  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4668  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4669  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4670  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4671  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4672  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4673  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4674  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4675  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4676  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4677  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4678  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4679  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4680  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4681  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4682  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4683  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4684  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4685  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4686  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4687  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4688  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4689  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4690  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4691  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4692  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4693  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4694  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4695  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4696  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4697  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4698  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4699  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4700  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4701  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4702  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4703  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4704  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4705  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4706  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4707  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4708  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4709  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4710  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4711  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4712  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4713  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4714  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4715  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4716  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4717  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4718  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4719  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4720  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4721  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4722  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4723  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4724  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4725  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4726  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4727  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4728  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4729  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4730  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4731  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4732  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4733  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4734  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4735  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4736  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4737  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4738  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4739  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4740  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4741  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4742  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4743  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4744  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4745  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4746  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4747  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4748  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4749  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4750  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4751  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4752  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4753  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4754  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4755  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4756  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4757  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4758  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4759  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4760  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4761  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4762  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4763  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4764  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4765  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4766  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4767  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4768  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4769  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4770  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4771  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4772  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4773  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4774  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4775  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4776  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4777  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
4778  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
4779  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
4780  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
4781  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
4782  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
4783  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
4784  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
4785  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
4786  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
4787  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
4788  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
4789  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
4790  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
4791  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
4792  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
4793  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
4794  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
4795  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
4796  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
4797  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
4798  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
4799  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
4800  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
4801  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
4802  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
4803  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
4804  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
4805  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
4806  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
4807  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
4808  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
4809  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
4810  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
4811  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
4812  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
4813  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
4814  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
4815  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
4816  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
4817  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
4818  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
4819  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
4820  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
4821  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
4822  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
4823  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
4824  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
4825  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
4826  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
4827  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
4828  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
4829  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
4830  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
4831  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
4832  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
4833  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
4834  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
4835  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
4836  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
4837  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
4838  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
4839  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
4840  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
4841  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
4842  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
4843  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
4844  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
4845  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
4846  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
4847  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
4848  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
4849  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
4850  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
4851  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
4852  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
4853  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
4854  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
4855  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
4856  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
4857  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
4858  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
4859  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
4860  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
4861  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
4862  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
4863  FROM
4864   OKC_PRICE_ATT_VALUES okcPAV
4865  ,OKC_K_HEADERS_B okcH
4866   WHERE okcPAV.CHR_ID = okcH.ORIG_SYSTEM_ID1
4867   and okcH.ID = P_To_Chr_ID
4868   and okcPAV.CLE_ID is NULL
4869   and okcPAV.CHR_ID = P_From_Chr_ID
4870   UNION
4871   SELECT
4872   okcPAV.ID AS okcPAV_OldID
4873  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
4874  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
4875  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
4876  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
4877  ,to_number(decode(okcPAV.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPAV_NewChrID
4878  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
4879  ,okcBT.ID AS okcPAV_NewCleID
4880  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
4881  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
4882  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
4883  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
4884  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
4885  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
4886  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
4887  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
4888  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
4889  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
4890  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
4891  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
4892  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
4893  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
4894  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
4895  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
4896  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
4897  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
4898  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
4899  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
4900  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
4901  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
4902  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
4903  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
4904  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
4905  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
4906  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
4907  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
4908  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
4909  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
4910  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
4911  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
4912  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
4913  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
4914  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
4915  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
4916  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
4917  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
4918  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
4919  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
4920  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
4921  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
4922  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
4923  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
4924  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
4925  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
4926  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
4927  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
4928  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
4929  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
4930  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
4931  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
4932  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
4933  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
4934  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
4935  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
4936  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
4937  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
4938  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
4939  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
4940  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
4941  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
4942  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
4943  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
4944  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
4945  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
4946  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
4947  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
4948  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
4949  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
4950  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
4951  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
4952  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
4953  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
4954  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
4955  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
4956  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
4957  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
4958  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
4959  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
4960  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
4961  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
4962  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
4963  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
4964  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
4965  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
4966  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
4967  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
4968  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
4969  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
4970  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
4971  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
4972  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
4973  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
4974  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
4975  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
4976  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
4977  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
4978  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
4979  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
4980  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
4981  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
4982  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
4983  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
4984  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
4985  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
4986  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
4987  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
4988  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
4989  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
4990  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
4991  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
4992  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
4993  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
4994  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
4995  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
4996  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
4997  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
4998  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
4999  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
5000  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
5001  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
5002  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
5003  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
5004  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
5005  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
5006  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
5007  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
5008  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
5009  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
5010  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
5011  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
5012  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
5013  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
5014  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
5015  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
5016  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
5017  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
5018  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
5019  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
5020  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
5021  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
5022  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
5023  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
5024  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
5025  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
5026  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
5027  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
5028  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
5029  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
5030  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
5031  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
5032  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
5033  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
5034  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
5035  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
5036  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
5037  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
5038  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
5039  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
5040  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
5041  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
5042  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
5043  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
5044  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
5045  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
5046  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
5047  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
5048  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
5049  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
5050  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
5051  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
5052  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
5053  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
5054  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
5055  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
5056  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
5057  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
5058  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
5059  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
5060  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
5061  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
5062  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
5063  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
5064  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
5065  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
5066  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
5067  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
5068  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
5069  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
5070  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
5071  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
5072  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
5073  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
5074  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
5075  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
5076  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
5077  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
5078  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
5079  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
5080  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
5081  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
5082  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
5083  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
5084  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
5085  FROM
5086   OKC_PRICE_ATT_VALUES okcPAV
5087  ,OKC_K_LINES_B_TEMP okcBT
5088   WHERE okcPAV.CLE_ID = okcBT.ORIG_SYSTEM_ID1
5089   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
5090 
5091 
5092 --------------------------------------------------------------------------
5093 --Cursor used during Component Copy to copy rows only for Header
5094 --------------------------------------------------------------------------
5095  CURSOR GetOkcPAVPartial_H IS
5096  SELECT
5097   okcPAV.ID AS okcPAV_OldID
5098  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
5099  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
5100  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
5101  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
5102  ,okcH.ID AS okcPAV_NewChrID
5103  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
5104  ,NULL AS okcPAV_NewCleID
5105  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
5106  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
5107  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
5108  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
5109  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
5110  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
5111  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
5112  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
5113  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
5114  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
5115  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
5116  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
5117  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
5118  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
5119  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
5120  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
5121  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
5122  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
5123  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
5124  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
5125  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
5126  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
5127  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
5128  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
5129  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
5130  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
5131  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
5132  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
5133  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
5134  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
5135  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
5136  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
5137  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
5138  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
5139  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
5140  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
5141  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
5142  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
5143  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
5144  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
5145  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
5146  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
5147  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
5148  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
5149  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
5150  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
5151  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
5152  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
5153  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
5154  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
5155  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
5156  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
5157  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
5158  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
5159  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
5160  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
5161  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
5162  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
5163  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
5164  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
5165  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
5166  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
5167  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
5168  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
5169  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
5170  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
5171  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
5172  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
5173  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
5174  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
5175  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
5176  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
5177  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
5178  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
5179  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
5180  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
5181  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
5182  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
5183  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
5184  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
5185  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
5186  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
5187  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
5188  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
5189  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
5190  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
5191  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
5192  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
5193  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
5194  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
5195  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
5196  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
5197  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
5198  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
5199  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
5200  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
5201  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
5202  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
5203  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
5204  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
5205  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
5206  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
5207  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
5208  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
5209  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
5210  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
5211  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
5212  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
5213  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
5214  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
5215  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
5216  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
5217  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
5218  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
5219  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
5220  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
5221  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
5222  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
5223  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
5224  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
5225  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
5226  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
5227  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
5228  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
5229  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
5230  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
5231  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
5232  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
5233  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
5234  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
5235  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
5236  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
5237  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
5238  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
5239  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
5240  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
5241  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
5242  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
5243  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
5244  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
5245  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
5246  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
5247  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
5248  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
5249  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
5250  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
5251  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
5252  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
5253  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
5254  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
5255  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
5256  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
5257  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
5258  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
5259  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
5260  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
5261  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
5262  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
5263  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
5264  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
5265  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
5266  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
5267  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
5268  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
5269  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
5270  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
5271  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
5272  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
5273  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
5274  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
5275  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
5276  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
5277  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
5278  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
5279  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
5280  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
5281  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
5282  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
5283  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
5284  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
5285  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
5286  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
5287  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
5288  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
5289  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
5290  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
5291  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
5292  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
5293  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
5294  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
5295  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
5296  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
5297  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
5298  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
5299  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
5300  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
5301  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
5302  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
5303  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
5304  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
5305  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
5306  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
5307  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
5308  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
5309  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
5310  FROM
5311   OKC_PRICE_ATT_VALUES okcPAV
5312  ,OKC_K_HEADERS_B okcH
5313   WHERE okcPAV.CHR_ID = okcH.ORIG_SYSTEM_ID1
5314   and okcH.ID = P_To_Chr_ID
5315   and okcPAV.CLE_ID is NULL
5316   and okcPAV.CHR_ID = P_From_Chr_ID;
5317 
5318 
5319 
5320 --------------------------------------------------------------------------
5321 --Cursor used during Component Copy to copy rows only for Lines
5322 --------------------------------------------------------------------------
5323   CURSOR GetOkcPAVPartial_L IS
5324   SELECT
5325   okcPAV.ID AS okcPAV_OldID
5326  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPAV_NewID
5327  ,okcPAV.FLEX_TITLE AS okcPAV_FLEX_TITLE
5328  ,okcPAV.PRICING_CONTEXT AS okcPAV_PRICING_CONTEXT
5329  ,okcPAV.PRICING_ATTRIBUTE1 AS okcPAV_PRICING_ATTRIBUTE1
5330  ,to_number(decode(okcPAV.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPAV_NewChrID
5331  ,okcPAV.PRICING_ATTRIBUTE2 AS okcPAV_PRICING_ATTRIBUTE2
5332  ,okcBT.ID AS okcPAV_NewCleID
5333  ,okcPAV.PRICING_ATTRIBUTE3 AS okcPAV_PRICING_ATTRIBUTE3
5334  ,okcPAV.PRICING_ATTRIBUTE4 AS okcPAV_PRICING_ATTRIBUTE4
5335  ,okcPAV.PRICING_ATTRIBUTE5 AS okcPAV_PRICING_ATTRIBUTE5
5336  ,okcPAV.PRICING_ATTRIBUTE6 AS okcPAV_PRICING_ATTRIBUTE6
5337  ,okcPAV.PRICING_ATTRIBUTE7 AS okcPAV_PRICING_ATTRIBUTE7
5338  ,okcPAV.PRICING_ATTRIBUTE8 AS okcPAV_PRICING_ATTRIBUTE8
5339  ,okcPAV.PRICING_ATTRIBUTE9 AS okcPAV_PRICING_ATTRIBUTE9
5340  ,okcPAV.PRICING_ATTRIBUTE10 AS okcPAV_PRICING_ATTRIBUTE10
5341  ,okcPAV.PRICING_ATTRIBUTE11 AS okcPAV_PRICING_ATTRIBUTE11
5342  ,okcPAV.PRICING_ATTRIBUTE12 AS okcPAV_PRICING_ATTRIBUTE12
5343  ,okcPAV.PRICING_ATTRIBUTE13 AS okcPAV_PRICING_ATTRIBUTE13
5344  ,okcPAV.PRICING_ATTRIBUTE14 AS okcPAV_PRICING_ATTRIBUTE14
5345  ,okcPAV.PRICING_ATTRIBUTE15 AS okcPAV_PRICING_ATTRIBUTE15
5346  ,okcPAV.PRICING_ATTRIBUTE16 AS okcPAV_PRICING_ATTRIBUTE16
5347  ,okcPAV.PRICING_ATTRIBUTE17 AS okcPAV_PRICING_ATTRIBUTE17
5348  ,okcPAV.PRICING_ATTRIBUTE18 AS okcPAV_PRICING_ATTRIBUTE18
5349  ,okcPAV.PRICING_ATTRIBUTE19 AS okcPAV_PRICING_ATTRIBUTE19
5350  ,okcPAV.PRICING_ATTRIBUTE20 AS okcPAV_PRICING_ATTRIBUTE20
5351  ,okcPAV.PRICING_ATTRIBUTE21 AS okcPAV_PRICING_ATTRIBUTE21
5352  ,okcPAV.PRICING_ATTRIBUTE22 AS okcPAV_PRICING_ATTRIBUTE22
5353  ,okcPAV.PRICING_ATTRIBUTE23 AS okcPAV_PRICING_ATTRIBUTE23
5354  ,okcPAV.PRICING_ATTRIBUTE24 AS okcPAV_PRICING_ATTRIBUTE24
5355  ,okcPAV.PRICING_ATTRIBUTE25 AS okcPAV_PRICING_ATTRIBUTE25
5356  ,okcPAV.PRICING_ATTRIBUTE26 AS okcPAV_PRICING_ATTRIBUTE26
5357  ,okcPAV.PRICING_ATTRIBUTE27 AS okcPAV_PRICING_ATTRIBUTE27
5358  ,okcPAV.PRICING_ATTRIBUTE28 AS okcPAV_PRICING_ATTRIBUTE28
5359  ,okcPAV.PRICING_ATTRIBUTE29 AS okcPAV_PRICING_ATTRIBUTE29
5360  ,okcPAV.PRICING_ATTRIBUTE30 AS okcPAV_PRICING_ATTRIBUTE30
5361  ,okcPAV.PRICING_ATTRIBUTE31 AS okcPAV_PRICING_ATTRIBUTE31
5362  ,okcPAV.PRICING_ATTRIBUTE32 AS okcPAV_PRICING_ATTRIBUTE32
5363  ,okcPAV.PRICING_ATTRIBUTE33 AS okcPAV_PRICING_ATTRIBUTE33
5364  ,okcPAV.PRICING_ATTRIBUTE34 AS okcPAV_PRICING_ATTRIBUTE34
5365  ,okcPAV.PRICING_ATTRIBUTE35 AS okcPAV_PRICING_ATTRIBUTE35
5366  ,okcPAV.PRICING_ATTRIBUTE36 AS okcPAV_PRICING_ATTRIBUTE36
5367  ,okcPAV.PRICING_ATTRIBUTE37 AS okcPAV_PRICING_ATTRIBUTE37
5368  ,okcPAV.PRICING_ATTRIBUTE38 AS okcPAV_PRICING_ATTRIBUTE38
5369  ,okcPAV.PRICING_ATTRIBUTE39 AS okcPAV_PRICING_ATTRIBUTE39
5370  ,okcPAV.PRICING_ATTRIBUTE40 AS okcPAV_PRICING_ATTRIBUTE40
5371  ,okcPAV.PRICING_ATTRIBUTE41 AS okcPAV_PRICING_ATTRIBUTE41
5372  ,okcPAV.PRICING_ATTRIBUTE42 AS okcPAV_PRICING_ATTRIBUTE42
5373  ,okcPAV.PRICING_ATTRIBUTE43 AS okcPAV_PRICING_ATTRIBUTE43
5374  ,okcPAV.PRICING_ATTRIBUTE44 AS okcPAV_PRICING_ATTRIBUTE44
5375  ,okcPAV.PRICING_ATTRIBUTE45 AS okcPAV_PRICING_ATTRIBUTE45
5376  ,okcPAV.PRICING_ATTRIBUTE46 AS okcPAV_PRICING_ATTRIBUTE46
5377  ,okcPAV.PRICING_ATTRIBUTE47 AS okcPAV_PRICING_ATTRIBUTE47
5378  ,okcPAV.PRICING_ATTRIBUTE48 AS okcPAV_PRICING_ATTRIBUTE48
5379  ,okcPAV.PRICING_ATTRIBUTE49 AS okcPAV_PRICING_ATTRIBUTE49
5380  ,okcPAV.PRICING_ATTRIBUTE50 AS okcPAV_PRICING_ATTRIBUTE50
5381  ,okcPAV.PRICING_ATTRIBUTE51 AS okcPAV_PRICING_ATTRIBUTE51
5382  ,okcPAV.PRICING_ATTRIBUTE52 AS okcPAV_PRICING_ATTRIBUTE52
5383  ,okcPAV.PRICING_ATTRIBUTE53 AS okcPAV_PRICING_ATTRIBUTE53
5384  ,okcPAV.PRICING_ATTRIBUTE54 AS okcPAV_PRICING_ATTRIBUTE54
5385  ,okcPAV.PRICING_ATTRIBUTE55 AS okcPAV_PRICING_ATTRIBUTE55
5386  ,okcPAV.PRICING_ATTRIBUTE56 AS okcPAV_PRICING_ATTRIBUTE56
5387  ,okcPAV.PRICING_ATTRIBUTE57 AS okcPAV_PRICING_ATTRIBUTE57
5388  ,okcPAV.PRICING_ATTRIBUTE58 AS okcPAV_PRICING_ATTRIBUTE58
5389  ,okcPAV.PRICING_ATTRIBUTE59 AS okcPAV_PRICING_ATTRIBUTE59
5390  ,okcPAV.PRICING_ATTRIBUTE60 AS okcPAV_PRICING_ATTRIBUTE60
5391  ,okcPAV.PRICING_ATTRIBUTE61 AS okcPAV_PRICING_ATTRIBUTE61
5392  ,okcPAV.PRICING_ATTRIBUTE62 AS okcPAV_PRICING_ATTRIBUTE62
5393  ,okcPAV.PRICING_ATTRIBUTE63 AS okcPAV_PRICING_ATTRIBUTE63
5394  ,okcPAV.PRICING_ATTRIBUTE64 AS okcPAV_PRICING_ATTRIBUTE64
5395  ,okcPAV.PRICING_ATTRIBUTE65 AS okcPAV_PRICING_ATTRIBUTE65
5396  ,okcPAV.PRICING_ATTRIBUTE66 AS okcPAV_PRICING_ATTRIBUTE66
5397  ,okcPAV.PRICING_ATTRIBUTE67 AS okcPAV_PRICING_ATTRIBUTE67
5398  ,okcPAV.PRICING_ATTRIBUTE68 AS okcPAV_PRICING_ATTRIBUTE68
5399  ,okcPAV.PRICING_ATTRIBUTE69 AS okcPAV_PRICING_ATTRIBUTE69
5400  ,okcPAV.PRICING_ATTRIBUTE70 AS okcPAV_PRICING_ATTRIBUTE70
5401  ,okcPAV.PRICING_ATTRIBUTE71 AS okcPAV_PRICING_ATTRIBUTE71
5402  ,okcPAV.PRICING_ATTRIBUTE72 AS okcPAV_PRICING_ATTRIBUTE72
5403  ,okcPAV.PRICING_ATTRIBUTE73 AS okcPAV_PRICING_ATTRIBUTE73
5404  ,okcPAV.PRICING_ATTRIBUTE74 AS okcPAV_PRICING_ATTRIBUTE74
5405  ,okcPAV.PRICING_ATTRIBUTE75 AS okcPAV_PRICING_ATTRIBUTE75
5406  ,okcPAV.PRICING_ATTRIBUTE76 AS okcPAV_PRICING_ATTRIBUTE76
5407  ,okcPAV.PRICING_ATTRIBUTE77 AS okcPAV_PRICING_ATTRIBUTE77
5408  ,okcPAV.PRICING_ATTRIBUTE78 AS okcPAV_PRICING_ATTRIBUTE78
5409  ,okcPAV.PRICING_ATTRIBUTE79 AS okcPAV_PRICING_ATTRIBUTE79
5410  ,okcPAV.PRICING_ATTRIBUTE80 AS okcPAV_PRICING_ATTRIBUTE80
5411  ,okcPAV.PRICING_ATTRIBUTE81 AS okcPAV_PRICING_ATTRIBUTE81
5412  ,okcPAV.PRICING_ATTRIBUTE82 AS okcPAV_PRICING_ATTRIBUTE82
5413  ,okcPAV.PRICING_ATTRIBUTE83 AS okcPAV_PRICING_ATTRIBUTE83
5414  ,okcPAV.PRICING_ATTRIBUTE84 AS okcPAV_PRICING_ATTRIBUTE84
5415  ,okcPAV.PRICING_ATTRIBUTE85 AS okcPAV_PRICING_ATTRIBUTE85
5416  ,okcPAV.PRICING_ATTRIBUTE86 AS okcPAV_PRICING_ATTRIBUTE86
5417  ,okcPAV.PRICING_ATTRIBUTE87 AS okcPAV_PRICING_ATTRIBUTE87
5418  ,okcPAV.PRICING_ATTRIBUTE88 AS okcPAV_PRICING_ATTRIBUTE88
5419  ,okcPAV.PRICING_ATTRIBUTE89 AS okcPAV_PRICING_ATTRIBUTE89
5420  ,okcPAV.PRICING_ATTRIBUTE90 AS okcPAV_PRICING_ATTRIBUTE90
5421  ,okcPAV.PRICING_ATTRIBUTE91 AS okcPAV_PRICING_ATTRIBUTE91
5422  ,okcPAV.PRICING_ATTRIBUTE92 AS okcPAV_PRICING_ATTRIBUTE92
5423  ,okcPAV.PRICING_ATTRIBUTE93 AS okcPAV_PRICING_ATTRIBUTE93
5424  ,okcPAV.PRICING_ATTRIBUTE94 AS okcPAV_PRICING_ATTRIBUTE94
5425  ,okcPAV.PRICING_ATTRIBUTE95 AS okcPAV_PRICING_ATTRIBUTE95
5426  ,okcPAV.PRICING_ATTRIBUTE96 AS okcPAV_PRICING_ATTRIBUTE96
5427  ,okcPAV.PRICING_ATTRIBUTE97 AS okcPAV_PRICING_ATTRIBUTE97
5428  ,okcPAV.PRICING_ATTRIBUTE98 AS okcPAV_PRICING_ATTRIBUTE98
5429  ,okcPAV.PRICING_ATTRIBUTE99 AS okcPAV_PRICING_ATTRIBUTE99
5430  ,okcPAV.PRICING_ATTRIBUTE100 AS okcPAV_PRICING_ATTRIBUTE100
5431  ,okcPAV.QUALIFIER_CONTEXT AS okcPAV_QUALIFIER_CONTEXT
5432  ,okcPAV.QUALIFIER_ATTRIBUTE1 AS okcPAV_QUALIFIER_ATTRIBUTE1
5433  ,okcPAV.QUALIFIER_ATTRIBUTE2 AS okcPAV_QUALIFIER_ATTRIBUTE2
5434  ,okcPAV.QUALIFIER_ATTRIBUTE3 AS okcPAV_QUALIFIER_ATTRIBUTE3
5435  ,okcPAV.QUALIFIER_ATTRIBUTE4 AS okcPAV_QUALIFIER_ATTRIBUTE4
5436  ,okcPAV.QUALIFIER_ATTRIBUTE5 AS okcPAV_QUALIFIER_ATTRIBUTE5
5437  ,okcPAV.QUALIFIER_ATTRIBUTE6 AS okcPAV_QUALIFIER_ATTRIBUTE6
5438  ,okcPAV.QUALIFIER_ATTRIBUTE7 AS okcPAV_QUALIFIER_ATTRIBUTE7
5439  ,okcPAV.QUALIFIER_ATTRIBUTE8 AS okcPAV_QUALIFIER_ATTRIBUTE8
5440  ,okcPAV.QUALIFIER_ATTRIBUTE9 AS okcPAV_QUALIFIER_ATTRIBUTE9
5441  ,okcPAV.QUALIFIER_ATTRIBUTE10 AS okcPAV_QUALIFIER_ATTRIBUTE10
5442  ,okcPAV.QUALIFIER_ATTRIBUTE11 AS okcPAV_QUALIFIER_ATTRIBUTE11
5443  ,okcPAV.QUALIFIER_ATTRIBUTE12 AS okcPAV_QUALIFIER_ATTRIBUTE12
5444  ,okcPAV.QUALIFIER_ATTRIBUTE13 AS okcPAV_QUALIFIER_ATTRIBUTE13
5445  ,okcPAV.QUALIFIER_ATTRIBUTE14 AS okcPAV_QUALIFIER_ATTRIBUTE14
5446  ,okcPAV.QUALIFIER_ATTRIBUTE15 AS okcPAV_QUALIFIER_ATTRIBUTE15
5447  ,okcPAV.QUALIFIER_ATTRIBUTE16 AS okcPAV_QUALIFIER_ATTRIBUTE16
5448  ,okcPAV.QUALIFIER_ATTRIBUTE17 AS okcPAV_QUALIFIER_ATTRIBUTE17
5449  ,okcPAV.QUALIFIER_ATTRIBUTE18 AS okcPAV_QUALIFIER_ATTRIBUTE18
5450  ,okcPAV.QUALIFIER_ATTRIBUTE19 AS okcPAV_QUALIFIER_ATTRIBUTE19
5451  ,okcPAV.QUALIFIER_ATTRIBUTE20 AS okcPAV_QUALIFIER_ATTRIBUTE20
5452  ,okcPAV.QUALIFIER_ATTRIBUTE21 AS okcPAV_QUALIFIER_ATTRIBUTE21
5453  ,okcPAV.QUALIFIER_ATTRIBUTE22 AS okcPAV_QUALIFIER_ATTRIBUTE22
5454  ,okcPAV.QUALIFIER_ATTRIBUTE23 AS okcPAV_QUALIFIER_ATTRIBUTE23
5455  ,okcPAV.QUALIFIER_ATTRIBUTE24 AS okcPAV_QUALIFIER_ATTRIBUTE24
5456  ,okcPAV.QUALIFIER_ATTRIBUTE25 AS okcPAV_QUALIFIER_ATTRIBUTE25
5457  ,okcPAV.QUALIFIER_ATTRIBUTE26 AS okcPAV_QUALIFIER_ATTRIBUTE26
5458  ,okcPAV.QUALIFIER_ATTRIBUTE27 AS okcPAV_QUALIFIER_ATTRIBUTE27
5459  ,okcPAV.QUALIFIER_ATTRIBUTE28 AS okcPAV_QUALIFIER_ATTRIBUTE28
5460  ,okcPAV.QUALIFIER_ATTRIBUTE29 AS okcPAV_QUALIFIER_ATTRIBUTE29
5461  ,okcPAV.QUALIFIER_ATTRIBUTE30 AS okcPAV_QUALIFIER_ATTRIBUTE30
5462  ,okcPAV.QUALIFIER_ATTRIBUTE31 AS okcPAV_QUALIFIER_ATTRIBUTE31
5463  ,okcPAV.QUALIFIER_ATTRIBUTE32 AS okcPAV_QUALIFIER_ATTRIBUTE32
5464  ,okcPAV.QUALIFIER_ATTRIBUTE33 AS okcPAV_QUALIFIER_ATTRIBUTE33
5465  ,okcPAV.QUALIFIER_ATTRIBUTE34 AS okcPAV_QUALIFIER_ATTRIBUTE34
5466  ,okcPAV.QUALIFIER_ATTRIBUTE35 AS okcPAV_QUALIFIER_ATTRIBUTE35
5467  ,okcPAV.QUALIFIER_ATTRIBUTE36 AS okcPAV_QUALIFIER_ATTRIBUTE36
5468  ,okcPAV.QUALIFIER_ATTRIBUTE37 AS okcPAV_QUALIFIER_ATTRIBUTE37
5469  ,okcPAV.QUALIFIER_ATTRIBUTE38 AS okcPAV_QUALIFIER_ATTRIBUTE38
5470  ,okcPAV.QUALIFIER_ATTRIBUTE39 AS okcPAV_QUALIFIER_ATTRIBUTE39
5471  ,okcPAV.QUALIFIER_ATTRIBUTE40 AS okcPAV_QUALIFIER_ATTRIBUTE40
5472  ,okcPAV.QUALIFIER_ATTRIBUTE41 AS okcPAV_QUALIFIER_ATTRIBUTE41
5473  ,okcPAV.QUALIFIER_ATTRIBUTE42 AS okcPAV_QUALIFIER_ATTRIBUTE42
5474  ,okcPAV.QUALIFIER_ATTRIBUTE43 AS okcPAV_QUALIFIER_ATTRIBUTE43
5475  ,okcPAV.QUALIFIER_ATTRIBUTE44 AS okcPAV_QUALIFIER_ATTRIBUTE44
5476  ,okcPAV.QUALIFIER_ATTRIBUTE45 AS okcPAV_QUALIFIER_ATTRIBUTE45
5477  ,okcPAV.QUALIFIER_ATTRIBUTE46 AS okcPAV_QUALIFIER_ATTRIBUTE46
5478  ,okcPAV.QUALIFIER_ATTRIBUTE47 AS okcPAV_QUALIFIER_ATTRIBUTE47
5479  ,okcPAV.QUALIFIER_ATTRIBUTE48 AS okcPAV_QUALIFIER_ATTRIBUTE48
5480  ,okcPAV.QUALIFIER_ATTRIBUTE49 AS okcPAV_QUALIFIER_ATTRIBUTE49
5481  ,okcPAV.QUALIFIER_ATTRIBUTE50 AS okcPAV_QUALIFIER_ATTRIBUTE50
5482  ,okcPAV.QUALIFIER_ATTRIBUTE51 AS okcPAV_QUALIFIER_ATTRIBUTE51
5483  ,okcPAV.QUALIFIER_ATTRIBUTE52 AS okcPAV_QUALIFIER_ATTRIBUTE52
5484  ,okcPAV.QUALIFIER_ATTRIBUTE53 AS okcPAV_QUALIFIER_ATTRIBUTE53
5485  ,okcPAV.QUALIFIER_ATTRIBUTE54 AS okcPAV_QUALIFIER_ATTRIBUTE54
5486  ,okcPAV.QUALIFIER_ATTRIBUTE55 AS okcPAV_QUALIFIER_ATTRIBUTE55
5487  ,okcPAV.QUALIFIER_ATTRIBUTE56 AS okcPAV_QUALIFIER_ATTRIBUTE56
5488  ,okcPAV.QUALIFIER_ATTRIBUTE57 AS okcPAV_QUALIFIER_ATTRIBUTE57
5489  ,okcPAV.QUALIFIER_ATTRIBUTE58 AS okcPAV_QUALIFIER_ATTRIBUTE58
5490  ,okcPAV.QUALIFIER_ATTRIBUTE59 AS okcPAV_QUALIFIER_ATTRIBUTE59
5491  ,okcPAV.QUALIFIER_ATTRIBUTE60 AS okcPAV_QUALIFIER_ATTRIBUTE60
5492  ,okcPAV.QUALIFIER_ATTRIBUTE61 AS okcPAV_QUALIFIER_ATTRIBUTE61
5493  ,okcPAV.QUALIFIER_ATTRIBUTE62 AS okcPAV_QUALIFIER_ATTRIBUTE62
5494  ,okcPAV.QUALIFIER_ATTRIBUTE63 AS okcPAV_QUALIFIER_ATTRIBUTE63
5495  ,okcPAV.QUALIFIER_ATTRIBUTE64 AS okcPAV_QUALIFIER_ATTRIBUTE64
5496  ,okcPAV.QUALIFIER_ATTRIBUTE65 AS okcPAV_QUALIFIER_ATTRIBUTE65
5497  ,okcPAV.QUALIFIER_ATTRIBUTE66 AS okcPAV_QUALIFIER_ATTRIBUTE66
5498  ,okcPAV.QUALIFIER_ATTRIBUTE67 AS okcPAV_QUALIFIER_ATTRIBUTE67
5499  ,okcPAV.QUALIFIER_ATTRIBUTE68 AS okcPAV_QUALIFIER_ATTRIBUTE68
5500  ,okcPAV.QUALIFIER_ATTRIBUTE69 AS okcPAV_QUALIFIER_ATTRIBUTE69
5501  ,okcPAV.QUALIFIER_ATTRIBUTE70 AS okcPAV_QUALIFIER_ATTRIBUTE70
5502  ,okcPAV.QUALIFIER_ATTRIBUTE71 AS okcPAV_QUALIFIER_ATTRIBUTE71
5503  ,okcPAV.QUALIFIER_ATTRIBUTE72 AS okcPAV_QUALIFIER_ATTRIBUTE72
5504  ,okcPAV.QUALIFIER_ATTRIBUTE73 AS okcPAV_QUALIFIER_ATTRIBUTE73
5505  ,okcPAV.QUALIFIER_ATTRIBUTE74 AS okcPAV_QUALIFIER_ATTRIBUTE74
5506  ,okcPAV.QUALIFIER_ATTRIBUTE75 AS okcPAV_QUALIFIER_ATTRIBUTE75
5507  ,okcPAV.QUALIFIER_ATTRIBUTE76 AS okcPAV_QUALIFIER_ATTRIBUTE76
5508  ,okcPAV.QUALIFIER_ATTRIBUTE77 AS okcPAV_QUALIFIER_ATTRIBUTE77
5509  ,okcPAV.QUALIFIER_ATTRIBUTE78 AS okcPAV_QUALIFIER_ATTRIBUTE78
5510  ,okcPAV.QUALIFIER_ATTRIBUTE79 AS okcPAV_QUALIFIER_ATTRIBUTE79
5511  ,okcPAV.QUALIFIER_ATTRIBUTE80 AS okcPAV_QUALIFIER_ATTRIBUTE80
5512  ,okcPAV.QUALIFIER_ATTRIBUTE81 AS okcPAV_QUALIFIER_ATTRIBUTE81
5513  ,okcPAV.QUALIFIER_ATTRIBUTE82 AS okcPAV_QUALIFIER_ATTRIBUTE82
5514  ,okcPAV.QUALIFIER_ATTRIBUTE83 AS okcPAV_QUALIFIER_ATTRIBUTE83
5515  ,okcPAV.QUALIFIER_ATTRIBUTE84 AS okcPAV_QUALIFIER_ATTRIBUTE84
5516  ,okcPAV.QUALIFIER_ATTRIBUTE85 AS okcPAV_QUALIFIER_ATTRIBUTE85
5517  ,okcPAV.QUALIFIER_ATTRIBUTE86 AS okcPAV_QUALIFIER_ATTRIBUTE86
5518  ,okcPAV.QUALIFIER_ATTRIBUTE87 AS okcPAV_QUALIFIER_ATTRIBUTE87
5519  ,okcPAV.QUALIFIER_ATTRIBUTE88 AS okcPAV_QUALIFIER_ATTRIBUTE88
5520  ,okcPAV.QUALIFIER_ATTRIBUTE89 AS okcPAV_QUALIFIER_ATTRIBUTE89
5521  ,okcPAV.QUALIFIER_ATTRIBUTE90 AS okcPAV_QUALIFIER_ATTRIBUTE90
5522  ,okcPAV.QUALIFIER_ATTRIBUTE91 AS okcPAV_QUALIFIER_ATTRIBUTE91
5523  ,okcPAV.QUALIFIER_ATTRIBUTE92 AS okcPAV_QUALIFIER_ATTRIBUTE92
5524  ,okcPAV.QUALIFIER_ATTRIBUTE93 AS okcPAV_QUALIFIER_ATTRIBUTE93
5525  ,okcPAV.QUALIFIER_ATTRIBUTE94 AS okcPAV_QUALIFIER_ATTRIBUTE94
5526  ,okcPAV.QUALIFIER_ATTRIBUTE95 AS okcPAV_QUALIFIER_ATTRIBUTE95
5527  ,okcPAV.QUALIFIER_ATTRIBUTE96 AS okcPAV_QUALIFIER_ATTRIBUTE96
5528  ,okcPAV.QUALIFIER_ATTRIBUTE97 AS okcPAV_QUALIFIER_ATTRIBUTE97
5529  ,okcPAV.QUALIFIER_ATTRIBUTE98 AS okcPAV_QUALIFIER_ATTRIBUTE98
5530  ,okcPAV.QUALIFIER_ATTRIBUTE99 AS okcPAV_QUALIFIER_ATTRIBUTE99
5531  ,okcPAV.QUALIFIER_ATTRIBUTE100 AS okcPAV_QUALIFIER_ATTRIBUTE100
5532  ,okcPAV.SECURITY_GROUP_ID AS okcPAV_SECURITY_GROUP_ID
5533  ,okcPAV.PROGRAM_APPLICATION_ID AS okcPAV_PROGRAM_APPLICATION_ID
5534  ,okcPAV.PROGRAM_ID AS okcPAV_PROGRAM_ID
5535  ,okcPAV.PROGRAM_UPDATE_DATE AS okcPAV_PROGRAM_UPDATE_DATE
5536  ,okcPAV.REQUEST_ID AS okcPAV_REQUEST_ID
5537  ,1 AS okcPAV_OBJECT_VERSION_NUMBER
5538  FROM
5539   OKC_PRICE_ATT_VALUES okcPAV
5540  ,OKC_K_LINES_B_TEMP okcBT
5541   WHERE okcPAV.CLE_ID = okcBT.ORIG_SYSTEM_ID1
5542   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
5543 
5544  Begin
5545   x_return_status := l_return_status;
5546 
5547  IF (P_Partial_Copy_YN = 'N') THEN
5548   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5549          FND_LOG.string(FND_LOG.level_statement
5550                         ,l_module_name
5551                         ,'OPENing GetOkcPAVFull'
5552                          );
5553   END IF;
5554 
5555   OPEN GetOkcPAVFull;
5556  ELSIF (P_Partial_Copy_YN = 'Y') THEN
5557   IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
5558     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5559          FND_LOG.string(FND_LOG.level_statement
5560                         ,l_module_name
5561                         ,'OPENing GetOkcPAVPartial_H'
5562                          );
5563     END IF;
5564     OPEN GetOkcPAVPartial_H;
5565   ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) THEN
5566     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5567          FND_LOG.string(FND_LOG.level_statement
5568                         ,l_module_name
5569                         ,'OPENing GetOkcPAVPartial_HNL'
5570                          );
5571     END IF;
5572     OPEN GetOkcPAVPartial_HNL;
5573   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) THEN
5574     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5575          FND_LOG.string(FND_LOG.level_statement
5576                         ,l_module_name
5577                         ,'OPENing GetOkcPAVPartial_L'
5578                          );
5579     END IF;
5580     OPEN GetOkcPAVPartial_L;
5581   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
5582     RETURN;
5583   END IF;
5584 
5585  END IF;
5586 
5587  LOOP
5588  IF (P_Partial_Copy_YN = 'N') then
5589     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5590          FND_LOG.string(FND_LOG.level_statement
5591                         ,l_module_name
5592                         ,'FETCHing GetOkcPAVFull'
5593                          );
5594     END IF;
5595 
5596   FETCH GetOkcPAVFull BULK COLLECT INTO
5597   OkcPAVRecTab.OkcPAV_OldID
5598  ,OkcPAVRecTab.OkcPAV_NewID
5599  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
5600  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
5601  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
5602  ,OkcPAVRecTab.OkcPAV_NewChrID
5603  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
5604  ,OkcPAVRecTab.OkcPAV_NewCleID
5605  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
5606  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
5607  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
5608  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
5609  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
5610  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
5611  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
5612  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
5613  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
5614  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
5615  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
5616  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
5617  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
5618  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
5619  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
5620  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
5621  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
5622  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
5623  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
5624  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
5625  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
5626  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
5627  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
5628  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
5629  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
5630  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
5631  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
5632  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
5633  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
5634  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
5635  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
5636  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
5637  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
5638  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
5639  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
5640  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
5641  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
5642  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
5643  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
5644  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
5645  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
5646  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
5647  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
5648  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
5649  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
5650  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
5651  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
5652  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
5653  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
5654  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
5655  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
5656  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
5657  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
5658  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
5659  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
5660  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
5661  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
5662  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
5663  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
5664  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
5665  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
5666  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
5667  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
5668  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
5669  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
5670  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
5671  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
5672  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
5673  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
5674  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
5675  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
5676  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
5677  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
5678  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
5679  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
5680  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
5681  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
5682  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
5683  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
5684  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
5685  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
5686  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
5687  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
5688  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
5689  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
5690  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
5691  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
5692  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
5693  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
5694  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
5695  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
5696  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
5697  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
5698  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
5699  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
5700  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
5701  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
5702  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
5703  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
5704  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
5705  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
5706  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
5707  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
5708  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
5709  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
5710  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
5711  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
5712  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
5713  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
5714  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
5715  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
5716  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
5717  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
5718  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
5719  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
5720  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
5721  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
5722  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
5723  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
5724  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
5725  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
5726  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
5727  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
5728  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
5729  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
5730  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
5731  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
5732  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
5733  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
5734  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
5735  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
5736  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
5737  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
5738  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
5739  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
5740  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
5741  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
5742  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
5743  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
5744  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
5745  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
5746  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
5747  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
5748  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
5749  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
5750  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
5751  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
5752  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
5753  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
5754  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
5755  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
5756  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
5757  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
5758  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
5759  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
5760  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
5761  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
5762  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
5763  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
5764  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
5765  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
5766  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
5767  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
5768  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
5769  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
5770  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
5771  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
5772  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
5773  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
5774  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
5775  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
5776  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
5777  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
5778  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
5779  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
5780  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
5781  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
5782  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
5783  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
5784  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
5785  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
5786  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
5787  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
5788  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
5789  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
5790  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
5791  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
5792  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
5793  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
5794  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
5795  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
5796  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
5797  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
5798  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
5799  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
5800  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
5801  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
5802  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
5803  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
5804  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
5805  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
5806  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
5807  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
5808  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
5809  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
5810  LIMIT G_BULK_FETCH_LIMIT;
5811 
5812  ELSIF (P_Partial_Copy_YN = 'Y') THEN
5813   IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
5814     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
5815          FND_LOG.string(FND_LOG.level_statement
5816                         ,l_module_name
5817                         ,'FETCHing GetOkcPAVPartial_H'
5818                          );
5819     END IF;
5820 
5821     FETCH GetOkcPAVPartial_H BULK COLLECT INTO
5822   OkcPAVRecTab.OkcPAV_OldID
5823  ,OkcPAVRecTab.OkcPAV_NewID
5824  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
5825  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
5826  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
5827  ,OkcPAVRecTab.OkcPAV_NewChrID
5828  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
5829  ,OkcPAVRecTab.OkcPAV_NewCleID
5830  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
5831  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
5832  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
5833  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
5834  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
5835  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
5836  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
5837  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
5838  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
5839  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
5840  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
5841  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
5842  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
5843  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
5844  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
5845  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
5846  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
5847  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
5848  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
5849  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
5850  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
5851  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
5852  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
5853  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
5854  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
5855  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
5856  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
5857  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
5858  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
5859  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
5860  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
5861  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
5862  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
5863  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
5864  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
5865  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
5866  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
5867  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
5868  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
5869  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
5870  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
5871  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
5872  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
5873  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
5874  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
5875  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
5876  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
5877  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
5878  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
5879  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
5880  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
5881  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
5882  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
5883  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
5884  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
5885  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
5886  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
5887  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
5888  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
5889  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
5890  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
5891  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
5892  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
5893  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
5894  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
5895  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
5896  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
5897  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
5898  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
5899  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
5900  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
5901  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
5902  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
5903  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
5904  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
5905  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
5906  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
5907  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
5908  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
5909  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
5910  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
5911  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
5912  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
5913  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
5914  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
5915  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
5916  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
5917  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
5918  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
5919  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
5920  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
5921  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
5922  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
5923  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
5924  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
5925  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
5926  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
5927  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
5928  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
5929  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
5930  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
5931  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
5932  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
5933  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
5934  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
5935  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
5936  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
5937  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
5938  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
5939  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
5940  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
5941  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
5942  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
5943  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
5944  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
5945  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
5946  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
5947  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
5948  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
5949  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
5950  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
5951  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
5952  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
5953  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
5954  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
5955  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
5956  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
5957  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
5958  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
5959  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
5960  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
5961  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
5962  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
5963  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
5964  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
5965  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
5966  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
5967  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
5968  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
5969  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
5970  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
5971  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
5972  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
5973  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
5974  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
5975  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
5976  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
5977  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
5978  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
5979  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
5980  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
5981  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
5982  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
5983  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
5984  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
5985  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
5986  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
5987  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
5988  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
5989  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
5990  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
5991  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
5992  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
5993  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
5994  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
5995  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
5996  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
5997  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
5998  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
5999  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
6000  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
6001  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
6002  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
6003  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
6004  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
6005  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
6006  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
6007  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
6008  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
6009  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
6010  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
6011  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
6012  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
6013  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
6014  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
6015  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
6016  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
6017  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
6018  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
6019  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
6020  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
6021  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
6022  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
6023  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
6024  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
6025  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
6026  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
6027  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
6028  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
6029  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
6030  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
6031  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
6032  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
6033  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
6034  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
6035  LIMIT G_BULK_FETCH_LIMIT;
6036   ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) THEN
6037     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
6038          FND_LOG.string(FND_LOG.level_statement
6039                         ,l_module_name
6040                         ,'FETCHing GetOkcPAVPartial_HNL'
6041                          );
6042     END IF;
6043 
6044    FETCH GetOkcPAVPartial_HNL BULK COLLECT INTO
6045   OkcPAVRecTab.OkcPAV_OldID
6046  ,OkcPAVRecTab.OkcPAV_NewID
6047  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
6048  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
6049  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
6050  ,OkcPAVRecTab.OkcPAV_NewChrID
6051  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
6052  ,OkcPAVRecTab.OkcPAV_NewCleID
6053  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
6054  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
6055  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
6056  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
6057  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
6058  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
6059  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
6060  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
6061  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
6062  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
6063  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
6064  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
6065  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
6066  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
6067  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
6068  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
6069  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
6070  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
6071  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
6072  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
6073  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
6074  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
6075  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
6076  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
6077  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
6078  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
6079  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
6080  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
6081  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
6082  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
6083  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
6084  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
6085  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
6086  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
6087  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
6088  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
6089  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
6090  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
6091  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
6092  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
6093  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
6094  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
6095  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
6096  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
6097  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
6098  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
6099  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
6100  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
6101  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
6102  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
6103  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
6104  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
6105  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
6106  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
6107  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
6108  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
6109  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
6110  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
6111  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
6112  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
6113  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
6114  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
6115  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
6116  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
6117  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
6118  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
6119  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
6120  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
6121  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
6122  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
6123  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
6124  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
6125  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
6126  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
6127  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
6128  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
6129  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
6130  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
6131  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
6132  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
6133  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
6134  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
6135  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
6136  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
6137  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
6138  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
6139  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
6140  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
6141  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
6142  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
6143  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
6144  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
6145  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
6146  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
6147  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
6148  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
6149  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
6150  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
6151  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
6152  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
6153  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
6154  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
6155  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
6156  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
6157  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
6158  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
6159  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
6160  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
6161  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
6162  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
6163  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
6164  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
6165  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
6166  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
6167  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
6168  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
6169  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
6170  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
6171  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
6172  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
6173  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
6174  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
6175  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
6176  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
6177  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
6178  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
6179  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
6180  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
6181  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
6182  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
6183  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
6184  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
6185  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
6186  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
6187  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
6188  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
6189  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
6190  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
6191  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
6192  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
6193  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
6194  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
6195  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
6196  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
6197  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
6198  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
6199  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
6200  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
6201  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
6202  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
6203  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
6204  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
6205  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
6206  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
6207  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
6208  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
6209  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
6210  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
6211  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
6212  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
6213  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
6214  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
6215  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
6216  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
6217  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
6218  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
6219  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
6220  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
6221  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
6222  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
6223  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
6224  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
6225  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
6226  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
6227  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
6228  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
6229  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
6230  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
6231  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
6232  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
6233  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
6234  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
6235  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
6236  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
6237  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
6238  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
6239  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
6240  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
6241  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
6242  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
6243  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
6244  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
6245  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
6246  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
6247  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
6248  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
6249  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
6250  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
6251  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
6252  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
6253  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
6254  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
6255  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
6256  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
6257  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
6258  LIMIT G_BULK_FETCH_LIMIT;
6259   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) THEN
6260 
6261     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
6262          FND_LOG.string(FND_LOG.level_statement
6263                         ,l_module_name
6264                         ,'FETCHing GetOkcPAVPartial_L'
6265                          );
6266     END IF;
6267 
6268    FETCH GetOkcPAVPartial_L BULK COLLECT INTO
6269   OkcPAVRecTab.OkcPAV_OldID
6270  ,OkcPAVRecTab.OkcPAV_NewID
6271  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE
6272  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT
6273  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1
6274  ,OkcPAVRecTab.OkcPAV_NewChrID
6275  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2
6276  ,OkcPAVRecTab.OkcPAV_NewCleID
6277  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3
6278  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4
6279  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5
6280  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6
6281  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7
6282  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8
6283  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9
6284  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10
6285  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11
6286  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12
6287  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13
6288  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14
6289  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15
6290  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16
6291  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17
6292  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18
6293  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19
6294  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20
6295  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21
6296  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22
6297  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23
6298  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24
6299  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25
6300  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26
6301  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27
6302  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28
6303  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29
6304  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30
6305  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31
6306  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32
6307  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33
6308  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34
6309  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35
6310  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36
6311  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37
6312  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38
6313  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39
6314  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40
6315  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41
6316  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42
6317  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43
6318  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44
6319  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45
6320  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46
6321  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47
6322  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48
6323  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49
6324  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50
6325  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51
6326  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52
6327  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53
6328  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54
6329  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55
6330  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56
6331  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57
6332  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58
6333  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59
6334  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60
6335  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61
6336  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62
6337  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63
6338  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64
6339  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65
6340  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66
6341  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67
6342  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68
6343  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69
6344  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70
6345  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71
6346  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72
6347  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73
6348  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74
6349  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75
6350  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76
6351  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77
6352  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78
6353  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79
6354  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80
6355  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81
6356  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82
6357  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83
6358  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84
6359  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85
6360  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86
6361  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87
6362  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88
6363  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89
6364  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90
6365  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91
6366  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92
6367  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93
6368  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94
6369  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95
6370  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96
6371  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97
6372  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98
6373  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99
6374  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100
6375  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT
6376  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1
6377  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2
6378  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3
6379  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4
6380  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5
6381  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6
6382  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7
6383  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8
6384  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9
6385  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10
6386  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11
6387  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12
6388  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13
6389  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14
6390  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15
6391  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16
6392  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17
6393  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18
6394  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19
6395  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20
6396  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21
6397  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22
6398  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23
6399  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24
6400  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25
6401  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26
6402  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27
6403  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28
6404  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29
6405  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30
6406  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31
6407  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32
6408  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33
6409  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34
6410  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35
6411  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36
6412  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37
6413  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38
6414  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39
6415  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40
6416  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41
6417  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42
6418  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43
6419  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44
6420  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45
6421  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46
6422  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47
6423  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48
6424  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49
6425  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50
6426  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51
6427  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52
6428  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53
6429  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54
6430  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55
6431  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56
6432  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57
6433  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58
6434  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59
6435  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60
6436  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61
6437  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62
6438  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63
6439  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64
6440  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65
6441  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66
6442  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67
6443  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68
6444  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69
6445  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70
6446  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71
6447  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72
6448  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73
6449  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74
6450  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75
6451  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76
6452  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77
6453  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78
6454  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79
6455  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80
6456  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81
6457  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82
6458  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83
6459  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84
6460  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85
6461  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86
6462  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87
6463  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88
6464  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89
6465  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90
6466  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91
6467  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92
6468  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93
6469  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94
6470  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95
6471  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96
6472  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97
6473  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98
6474  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99
6475  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100
6476  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID
6477  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID
6478  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID
6479  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE
6480  ,OkcPAVRecTab.OkcPAV_REQUEST_ID
6481  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER
6482  LIMIT G_BULK_FETCH_LIMIT;
6483   END IF;
6484  END IF;
6485 
6486  ---Bulk insert into okc_price_att_values---
6487  FORALL i in OkcPAVRecTab.OkcPAV_NewID.FIRST .. OkcPAVRecTab.OkcPAV_NewID.LAST
6488  INSERT INTO OKC_PRICE_ATT_VALUES(
6489  ID
6490  ,FLEX_TITLE
6491  ,PRICING_CONTEXT
6492  ,PRICING_ATTRIBUTE1
6493  ,CHR_ID
6494  ,PRICING_ATTRIBUTE2
6495  ,CLE_ID
6496  ,PRICING_ATTRIBUTE3
6497  ,PRICING_ATTRIBUTE4
6498  ,PRICING_ATTRIBUTE5
6499  ,PRICING_ATTRIBUTE6
6500  ,PRICING_ATTRIBUTE7
6501  ,PRICING_ATTRIBUTE8
6502  ,PRICING_ATTRIBUTE9
6503  ,PRICING_ATTRIBUTE10
6504  ,PRICING_ATTRIBUTE11
6505  ,PRICING_ATTRIBUTE12
6506  ,PRICING_ATTRIBUTE13
6507  ,PRICING_ATTRIBUTE14
6508  ,PRICING_ATTRIBUTE15
6509  ,PRICING_ATTRIBUTE16
6510  ,PRICING_ATTRIBUTE17
6511  ,PRICING_ATTRIBUTE18
6512  ,PRICING_ATTRIBUTE19
6513  ,PRICING_ATTRIBUTE20
6514  ,PRICING_ATTRIBUTE21
6515  ,PRICING_ATTRIBUTE22
6516  ,PRICING_ATTRIBUTE23
6517  ,PRICING_ATTRIBUTE24
6518  ,PRICING_ATTRIBUTE25
6519  ,PRICING_ATTRIBUTE26
6520  ,PRICING_ATTRIBUTE27
6521  ,PRICING_ATTRIBUTE28
6522  ,PRICING_ATTRIBUTE29
6523  ,PRICING_ATTRIBUTE30
6524  ,PRICING_ATTRIBUTE31
6525  ,PRICING_ATTRIBUTE32
6526  ,PRICING_ATTRIBUTE33
6527  ,PRICING_ATTRIBUTE34
6528  ,PRICING_ATTRIBUTE35
6529  ,PRICING_ATTRIBUTE36
6530  ,PRICING_ATTRIBUTE37
6531  ,PRICING_ATTRIBUTE38
6532  ,PRICING_ATTRIBUTE39
6533  ,PRICING_ATTRIBUTE40
6534  ,PRICING_ATTRIBUTE41
6535  ,PRICING_ATTRIBUTE42
6536  ,PRICING_ATTRIBUTE43
6537  ,PRICING_ATTRIBUTE44
6538  ,PRICING_ATTRIBUTE45
6539  ,PRICING_ATTRIBUTE46
6540  ,PRICING_ATTRIBUTE47
6541  ,PRICING_ATTRIBUTE48
6542  ,PRICING_ATTRIBUTE49
6543  ,PRICING_ATTRIBUTE50
6544  ,PRICING_ATTRIBUTE51
6545  ,PRICING_ATTRIBUTE52
6546  ,PRICING_ATTRIBUTE53
6547  ,PRICING_ATTRIBUTE54
6548  ,PRICING_ATTRIBUTE55
6549  ,PRICING_ATTRIBUTE56
6550  ,PRICING_ATTRIBUTE57
6551  ,PRICING_ATTRIBUTE58
6552  ,PRICING_ATTRIBUTE59
6553  ,PRICING_ATTRIBUTE60
6554  ,PRICING_ATTRIBUTE61
6555  ,PRICING_ATTRIBUTE62
6556  ,PRICING_ATTRIBUTE63
6557  ,PRICING_ATTRIBUTE64
6558  ,PRICING_ATTRIBUTE65
6559  ,PRICING_ATTRIBUTE66
6560  ,PRICING_ATTRIBUTE67
6561  ,PRICING_ATTRIBUTE68
6562  ,PRICING_ATTRIBUTE69
6563  ,PRICING_ATTRIBUTE70
6564  ,PRICING_ATTRIBUTE71
6565  ,PRICING_ATTRIBUTE72
6566  ,PRICING_ATTRIBUTE73
6567  ,PRICING_ATTRIBUTE74
6568  ,PRICING_ATTRIBUTE75
6569  ,PRICING_ATTRIBUTE76
6570  ,PRICING_ATTRIBUTE77
6571  ,PRICING_ATTRIBUTE78
6572  ,PRICING_ATTRIBUTE79
6573  ,PRICING_ATTRIBUTE80
6574  ,PRICING_ATTRIBUTE81
6575  ,PRICING_ATTRIBUTE82
6576  ,PRICING_ATTRIBUTE83
6577  ,PRICING_ATTRIBUTE84
6578  ,PRICING_ATTRIBUTE85
6579  ,PRICING_ATTRIBUTE86
6580  ,PRICING_ATTRIBUTE87
6581  ,PRICING_ATTRIBUTE88
6582  ,PRICING_ATTRIBUTE89
6583  ,PRICING_ATTRIBUTE90
6584  ,PRICING_ATTRIBUTE91
6585  ,PRICING_ATTRIBUTE92
6586  ,PRICING_ATTRIBUTE93
6587  ,PRICING_ATTRIBUTE94
6588  ,PRICING_ATTRIBUTE95
6589  ,PRICING_ATTRIBUTE96
6590  ,PRICING_ATTRIBUTE97
6591  ,PRICING_ATTRIBUTE98
6592  ,PRICING_ATTRIBUTE99
6593  ,PRICING_ATTRIBUTE100
6594  ,QUALIFIER_CONTEXT
6595  ,QUALIFIER_ATTRIBUTE1
6596  ,QUALIFIER_ATTRIBUTE2
6597  ,QUALIFIER_ATTRIBUTE3
6598  ,QUALIFIER_ATTRIBUTE4
6599  ,QUALIFIER_ATTRIBUTE5
6600  ,QUALIFIER_ATTRIBUTE6
6601  ,QUALIFIER_ATTRIBUTE7
6602  ,QUALIFIER_ATTRIBUTE8
6603  ,QUALIFIER_ATTRIBUTE9
6604  ,QUALIFIER_ATTRIBUTE10
6605  ,QUALIFIER_ATTRIBUTE11
6606  ,QUALIFIER_ATTRIBUTE12
6607  ,QUALIFIER_ATTRIBUTE13
6608  ,QUALIFIER_ATTRIBUTE14
6609  ,QUALIFIER_ATTRIBUTE15
6610  ,QUALIFIER_ATTRIBUTE16
6611  ,QUALIFIER_ATTRIBUTE17
6612  ,QUALIFIER_ATTRIBUTE18
6613  ,QUALIFIER_ATTRIBUTE19
6614  ,QUALIFIER_ATTRIBUTE20
6615  ,QUALIFIER_ATTRIBUTE21
6616  ,QUALIFIER_ATTRIBUTE22
6617  ,QUALIFIER_ATTRIBUTE23
6618  ,QUALIFIER_ATTRIBUTE24
6619  ,QUALIFIER_ATTRIBUTE25
6620  ,QUALIFIER_ATTRIBUTE26
6621  ,QUALIFIER_ATTRIBUTE27
6622  ,QUALIFIER_ATTRIBUTE28
6623  ,QUALIFIER_ATTRIBUTE29
6624  ,QUALIFIER_ATTRIBUTE30
6625  ,QUALIFIER_ATTRIBUTE31
6626  ,QUALIFIER_ATTRIBUTE32
6627  ,QUALIFIER_ATTRIBUTE33
6628  ,QUALIFIER_ATTRIBUTE34
6629  ,QUALIFIER_ATTRIBUTE35
6630  ,QUALIFIER_ATTRIBUTE36
6631  ,QUALIFIER_ATTRIBUTE37
6632  ,QUALIFIER_ATTRIBUTE38
6633  ,QUALIFIER_ATTRIBUTE39
6634  ,QUALIFIER_ATTRIBUTE40
6635  ,QUALIFIER_ATTRIBUTE41
6636  ,QUALIFIER_ATTRIBUTE42
6637  ,QUALIFIER_ATTRIBUTE43
6638  ,QUALIFIER_ATTRIBUTE44
6639  ,QUALIFIER_ATTRIBUTE45
6640  ,QUALIFIER_ATTRIBUTE46
6641  ,QUALIFIER_ATTRIBUTE47
6642  ,QUALIFIER_ATTRIBUTE48
6643  ,QUALIFIER_ATTRIBUTE49
6644  ,QUALIFIER_ATTRIBUTE50
6645  ,QUALIFIER_ATTRIBUTE51
6646  ,QUALIFIER_ATTRIBUTE52
6647  ,QUALIFIER_ATTRIBUTE53
6648  ,QUALIFIER_ATTRIBUTE54
6649  ,QUALIFIER_ATTRIBUTE55
6650  ,QUALIFIER_ATTRIBUTE56
6651  ,QUALIFIER_ATTRIBUTE57
6652  ,QUALIFIER_ATTRIBUTE58
6653  ,QUALIFIER_ATTRIBUTE59
6654  ,QUALIFIER_ATTRIBUTE60
6655  ,QUALIFIER_ATTRIBUTE61
6656  ,QUALIFIER_ATTRIBUTE62
6657  ,QUALIFIER_ATTRIBUTE63
6658  ,QUALIFIER_ATTRIBUTE64
6659  ,QUALIFIER_ATTRIBUTE65
6660  ,QUALIFIER_ATTRIBUTE66
6661  ,QUALIFIER_ATTRIBUTE67
6662  ,QUALIFIER_ATTRIBUTE68
6663  ,QUALIFIER_ATTRIBUTE69
6664  ,QUALIFIER_ATTRIBUTE70
6665  ,QUALIFIER_ATTRIBUTE71
6666  ,QUALIFIER_ATTRIBUTE72
6667  ,QUALIFIER_ATTRIBUTE73
6668  ,QUALIFIER_ATTRIBUTE74
6669  ,QUALIFIER_ATTRIBUTE75
6670  ,QUALIFIER_ATTRIBUTE76
6671  ,QUALIFIER_ATTRIBUTE77
6672  ,QUALIFIER_ATTRIBUTE78
6673  ,QUALIFIER_ATTRIBUTE79
6674  ,QUALIFIER_ATTRIBUTE80
6675  ,QUALIFIER_ATTRIBUTE81
6676  ,QUALIFIER_ATTRIBUTE82
6677  ,QUALIFIER_ATTRIBUTE83
6678  ,QUALIFIER_ATTRIBUTE84
6679  ,QUALIFIER_ATTRIBUTE85
6680  ,QUALIFIER_ATTRIBUTE86
6681  ,QUALIFIER_ATTRIBUTE87
6682  ,QUALIFIER_ATTRIBUTE88
6683  ,QUALIFIER_ATTRIBUTE89
6684  ,QUALIFIER_ATTRIBUTE90
6685  ,QUALIFIER_ATTRIBUTE91
6686  ,QUALIFIER_ATTRIBUTE92
6687  ,QUALIFIER_ATTRIBUTE93
6688  ,QUALIFIER_ATTRIBUTE94
6689  ,QUALIFIER_ATTRIBUTE95
6690  ,QUALIFIER_ATTRIBUTE96
6691  ,QUALIFIER_ATTRIBUTE97
6692  ,QUALIFIER_ATTRIBUTE98
6693  ,QUALIFIER_ATTRIBUTE99
6694  ,QUALIFIER_ATTRIBUTE100
6695  ,SECURITY_GROUP_ID
6696  ,PROGRAM_APPLICATION_ID
6697  ,PROGRAM_ID
6698  ,PROGRAM_UPDATE_DATE
6699  ,REQUEST_ID
6700  ,OBJECT_VERSION_NUMBER
6701  ,CREATED_BY
6702  ,CREATION_DATE
6703  ,LAST_UPDATED_BY
6704  ,LAST_UPDATE_DATE
6705  ,LAST_UPDATE_LOGIN
6706  )
6707  SELECT
6708   OkcPAVRecTab.OkcPAV_NewID(i)
6709  ,OkcPAVRecTab.OkcPAV_FLEX_TITLE(i)
6710  ,OkcPAVRecTab.OkcPAV_PRICING_CONTEXT(i)
6711  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE1(i)
6712  ,OkcPAVRecTab.OkcPAV_NewChrID(i)
6713  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE2(i)
6714  ,OkcPAVRecTab.OkcPAV_NewCleID(i)
6715  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE3(i)
6716  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE4(i)
6717  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE5(i)
6718  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE6(i)
6719  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE7(i)
6720  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE8(i)
6721  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE9(i)
6722  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE10(i)
6723  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE11(i)
6724  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE12(i)
6725  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE13(i)
6726  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE14(i)
6727  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE15(i)
6728  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE16(i)
6729  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE17(i)
6730  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE18(i)
6731  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE19(i)
6732  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE20(i)
6733  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE21(i)
6734  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE22(i)
6735  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE23(i)
6736  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE24(i)
6737  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE25(i)
6738  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE26(i)
6739  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE27(i)
6740  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE28(i)
6741  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE29(i)
6742  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE30(i)
6743  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE31(i)
6744  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE32(i)
6745  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE33(i)
6746  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE34(i)
6747  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE35(i)
6748  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE36(i)
6749  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE37(i)
6750  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE38(i)
6751  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE39(i)
6752  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE40(i)
6753  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE41(i)
6754  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE42(i)
6755  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE43(i)
6756  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE44(i)
6757  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE45(i)
6758  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE46(i)
6759  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE47(i)
6760  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE48(i)
6761  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE49(i)
6762  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE50(i)
6763  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE51(i)
6764  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE52(i)
6765  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE53(i)
6766  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE54(i)
6767  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE55(i)
6768  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE56(i)
6769  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE57(i)
6770  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE58(i)
6771  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE59(i)
6772  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE60(i)
6773  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE61(i)
6774  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE62(i)
6775  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE63(i)
6776  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE64(i)
6777  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE65(i)
6778  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE66(i)
6779  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE67(i)
6780  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE68(i)
6781  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE69(i)
6782  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE70(i)
6783  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE71(i)
6784  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE72(i)
6785  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE73(i)
6786  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE74(i)
6787  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE75(i)
6788  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE76(i)
6789  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE77(i)
6790  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE78(i)
6791  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE79(i)
6792  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE80(i)
6793  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE81(i)
6794  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE82(i)
6795  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE83(i)
6796  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE84(i)
6797  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE85(i)
6798  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE86(i)
6799  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE87(i)
6800  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE88(i)
6801  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE89(i)
6802  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE90(i)
6803  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE91(i)
6804  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE92(i)
6805  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE93(i)
6806  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE94(i)
6807  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE95(i)
6808  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE96(i)
6809  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE97(i)
6810  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE98(i)
6811  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE99(i)
6812  ,OkcPAVRecTab.OkcPAV_PRICING_ATTRIBUTE100(i)
6813  ,OkcPAVRecTab.OkcPAV_QUALIFIER_CONTEXT(i)
6814  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE1(i)
6815  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE2(i)
6816  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE3(i)
6817  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE4(i)
6818  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE5(i)
6819  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE6(i)
6820  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE7(i)
6821  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE8(i)
6822  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE9(i)
6823  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE10(i)
6824  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE11(i)
6825  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE12(i)
6826  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE13(i)
6827  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE14(i)
6828  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE15(i)
6829  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE16(i)
6830  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE17(i)
6831  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE18(i)
6832  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE19(i)
6833  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE20(i)
6834  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE21(i)
6835  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE22(i)
6836  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE23(i)
6837  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE24(i)
6838  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE25(i)
6839  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE26(i)
6840  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE27(i)
6841  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE28(i)
6842  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE29(i)
6843  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE30(i)
6844  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE31(i)
6845  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE32(i)
6846  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE33(i)
6847  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE34(i)
6848  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE35(i)
6849  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE36(i)
6850  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE37(i)
6851  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE38(i)
6852  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE39(i)
6853  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE40(i)
6854  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE41(i)
6855  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE42(i)
6856  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE43(i)
6857  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE44(i)
6858  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE45(i)
6859  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE46(i)
6860  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE47(i)
6861  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE48(i)
6862  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE49(i)
6863  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE50(i)
6864  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE51(i)
6865  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE52(i)
6866  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE53(i)
6867  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE54(i)
6868  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE55(i)
6869  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE56(i)
6870  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE57(i)
6871  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE58(i)
6872  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE59(i)
6873  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE60(i)
6874  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE61(i)
6875  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE62(i)
6876  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE63(i)
6877  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE64(i)
6878  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE65(i)
6879  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE66(i)
6880  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE67(i)
6881  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE68(i)
6882  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE69(i)
6883  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE70(i)
6884  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE71(i)
6885  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE72(i)
6886  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE73(i)
6887  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE74(i)
6888  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE75(i)
6889  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE76(i)
6890  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE77(i)
6891  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE78(i)
6892  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE79(i)
6893  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE80(i)
6894  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE81(i)
6895  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE82(i)
6896  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE83(i)
6897  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE84(i)
6898  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE85(i)
6899  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE86(i)
6900  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE87(i)
6901  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE88(i)
6902  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE89(i)
6903  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE90(i)
6904  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE91(i)
6905  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE92(i)
6906  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE93(i)
6907  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE94(i)
6908  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE95(i)
6909  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE96(i)
6910  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE97(i)
6911  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE98(i)
6912  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE99(i)
6913  ,OkcPAVRecTab.OkcPAV_QUALIFIER_ATTRIBUTE100(i)
6914  ,OkcPAVRecTab.OkcPAV_SECURITY_GROUP_ID(i)
6915  ,OkcPAVRecTab.OkcPAV_PROGRAM_APPLICATION_ID(i)
6916  ,OkcPAVRecTab.OkcPAV_PROGRAM_ID(i)
6917  ,OkcPAVRecTab.OkcPAV_PROGRAM_UPDATE_DATE(i)
6918  ,OkcPAVRecTab.OkcPAV_REQUEST_ID(i)
6919  ,OkcPAVRecTab.OkcPAV_OBJECT_VERSION_NUMBER(i)
6920  ,FND_GLOBAL.USER_ID
6921  ,SYSDATE
6922  ,FND_GLOBAL.USER_ID
6923  ,SYSDATE
6924  ,FND_GLOBAL.LOGIN_ID
6925  from
6926  DUAL;
6927 
6928   If (P_Partial_Copy_YN = 'N') then
6929    EXIT WHEN GetOkcPAVFull%NOTFOUND;
6930   End If;
6931 
6932   IF (P_Partial_Copy_YN = 'N') THEN
6933    EXIT WHEN GetOkcPAVFull%NOTFOUND;
6934   ELSIF (P_Partial_Copy_YN = 'Y') THEN
6935    IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
6936      EXIT WHEN GetOkcPAVPartial_H%NOTFOUND;
6937    ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) THEN
6938      EXIT WHEN GetOkcPAVPartial_HNL%NOTFOUND;
6939    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) THEN
6940      EXIT WHEN GetOkcPAVPartial_L%NOTFOUND;
6941    END IF;
6942   END IF;
6943 
6944  END LOOP;
6945 
6946 
6947   IF GetOkcPAVFull%ISOPEN THEN
6948     CLOSE GetOkcPAVFull;
6949   ELSIF GetOkcPAVPartial_HNL%ISOPEN THEN
6950     CLOSE GetOkcPAVPartial_HNL;
6951   ELSIF GetOkcPAVPartial_H%ISOPEN THEN
6952     CLOSE GetOkcPAVPartial_H;
6953   ELSIF GetOkcPAVPartial_L%ISOPEN THEN
6954     CLOSE GetOkcPAVPartial_L;
6955   END IF;
6956 
6957     EXCEPTION
6958      WHEN OTHERS THEN
6959        IF GetOkcPAVFull%ISOPEN THEN
6960          CLOSE GetOkcPAVFull;
6961        ELSIF GetOkcPAVPartial_HNL%ISOPEN THEN
6962          CLOSE GetOkcPAVPartial_HNL;
6963        ELSIF GetOkcPAVPartial_H%ISOPEN THEN
6964          CLOSE GetOkcPAVPartial_H;
6965        ELSIF GetOkcPAVPartial_L%ISOPEN THEN
6966          CLOSE GetOkcPAVPartial_L;
6967        END IF;
6968           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6969           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
6970           RAISE;
6971 
6972  End copy_okc_price_att_values;
6973 
6974 --===================================================
6975 --  copy_okc_price_adjustments
6976 --  Parameters: P_From_Chr_ID : Header ID of source contract
6977 --   	      P_To_Chr_ID   : Header ID of target contract
6978 --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
6979 --				    or as part of component copy from UI (value = 'Y')
6980 --            P_Target_Contract_New_YN : Flag to indicate if copy process was copying to an existing contract (value = 'N')
6981 --                                       or if a new contract header was created as part of the copy process (value = 'Y'). This
6982 --                                       flag gets set to 'Y' just before the call to copy_contract_header procedure in
6983 --                                       copy_components
6984 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
6985 --               use cursor GetOkcPAFull
6986 --            If (P_Partial_Copy_YN = 'Y') then
6987 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
6988 --                Only rows for only Header , use cursor GetOkcPAPartial_H
6989 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
6990 --                Both rows for both Header and Lines need to be copied, use cursor GetOkcPAPartial_HNL
6991 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
6992 --                Only rows for chosen Lines are copied, use cursor GetOkcPAPartial_L
6993 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
6994 --                nothing needs to be copied, no copy needed
6995 --              End If
6996 --            End If
6997 
6998 --====================================================
6999  PROCEDURE copy_okc_price_adjustments(P_From_Chr_ID IN NUMBER
7000 			    ,P_To_Chr_ID   IN NUMBER
7001 			    ,P_Partial_Copy_YN IN VARCHAR2
7002 			    ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
7003                             ,P_Lines_Count IN NUMBER DEFAULT 0
7004 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
7005 
7006  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PRICE_ADJUSTMENTS';
7007  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
7008 
7009  l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
7010 
7011  CURSOR GetOkcPAFull IS
7012  SELECT
7013   okcPA.ID AS okcPA_OldID
7014  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7015  ,okcPA.PAT_ID AS okcPA_PAT_ID
7016  ,okcH.ID AS okcPA_NewChrID
7017  ,NULL AS okcPA_NewCleID
7018  ,okcPA.BSL_ID AS okcPA_BSL_ID
7019  ,okcPA.BCL_ID AS okcPA_BCL_ID
7020  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7021  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7022  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7023  ,okcPA.OPERAND AS okcPA_OPERAND
7024  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7025  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7026  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7027  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7028  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7029  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7030  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7031  ,okcPA.CONTEXT AS okcPA_CONTEXT
7032  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7033  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7034  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7035  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7036  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7037  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7038  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7039  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7040  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7041  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7042  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7043  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7044  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7045  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7046  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7047  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7048  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7049  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7050  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7051  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7052  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7053  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7054  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7055  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7056  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7057  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7058  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7059  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7060  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7061  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7062  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7063  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7064  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7065  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7066  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7067  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7068  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7069  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7070  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7071  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7072  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7073  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7074  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7075  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7076  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7077  FROM
7078    OKC_PRICE_ADJUSTMENTS okcPA
7079   ,OKC_K_HEADERS_B okcH
7080    WHERE okcPA.CHR_ID = okcH.ORIG_SYSTEM_ID1
7081    and okcH.ID = P_To_Chr_ID
7082    and okcPA.CLE_ID is NULL
7083    and okcPA.CHR_ID = P_From_Chr_ID
7084  UNION
7085  SELECT
7086   okcPA.ID AS okcPA_OldID
7087  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7088  ,okcPA.PAT_ID AS okcPA_PAT_ID
7089  ,to_number(decode(okcPA.CHR_ID,NULL,NULL,okcB.DNZ_CHR_ID)) AS okcPA_NewChrID
7090  ,okcB.ID AS okcPA_NewCleID
7091  ,okcPA.BSL_ID AS okcPA_BSL_ID
7092  ,okcPA.BCL_ID AS okcPA_BCL_ID
7093  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7094  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7095  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7096  ,okcPA.OPERAND AS okcPA_OPERAND
7097  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7098  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7099  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7100  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7101  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7102  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7103  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7104  ,okcPA.CONTEXT AS okcPA_CONTEXT
7105  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7106  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7107  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7108  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7109  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7110  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7111  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7112  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7113  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7114  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7115  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7116  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7117  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7118  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7119  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7120  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7121  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7122  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7123  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7124  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7125  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7126  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7127  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7128  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7129  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7130  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7131  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7132  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7133  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7134  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7135  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7136  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7137  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7138  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7139  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7140  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7141  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7142  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7143  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7144  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7145  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7146  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7147  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7148  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7149  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7150  FROM
7151   OKC_PRICE_ADJUSTMENTS okcPA
7152  ,OKC_K_LINES_B okcB
7153  WHERE okcPA.CLE_ID = okcB.ORIG_SYSTEM_ID1
7154  AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
7155 
7156 -----------------------------------------------------------------------
7157 --Cursor to be used in component copy to copy rows for Header and Lines
7158 -----------------------------------------------------------------------
7159 
7160  CURSOR GetOkcPAPartial_HNL IS
7161  SELECT
7162   okcPA.ID AS okcPA_OldID
7163  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7164  ,okcPA.PAT_ID AS okcPA_PAT_ID
7165  ,okcH.ID AS okcPA_NewChrID
7166  ,NULL AS okcPA_NewCleID
7167  ,okcPA.BSL_ID AS okcPA_BSL_ID
7168  ,okcPA.BCL_ID AS okcPA_BCL_ID
7169  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7170  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7171  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7172  ,okcPA.OPERAND AS okcPA_OPERAND
7173  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7174  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7175  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7176  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7177  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7178  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7179  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7180  ,okcPA.CONTEXT AS okcPA_CONTEXT
7181  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7182  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7183  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7184  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7185  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7186  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7187  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7188  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7189  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7190  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7191  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7192  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7193  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7194  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7195  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7196  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7197  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7198  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7199  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7200  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7201  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7202  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7203  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7204  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7205  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7206  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7207  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7208  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7209  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7210  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7211  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7212  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7213  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7214  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7215  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7216  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7217  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7218  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7219  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7220  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7221  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7222  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7223  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7224  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7225  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7226  FROM
7227    OKC_PRICE_ADJUSTMENTS okcPA
7228   ,OKC_K_HEADERS_B okcH
7229    WHERE okcPA.CHR_ID = okcH.ORIG_SYSTEM_ID1
7230    and okcH.ID = P_To_Chr_ID
7231    and okcPA.CLE_ID is NULL
7232    and okcPA.CHR_ID = P_From_Chr_ID
7233  UNION
7234  SELECT
7235   okcPA.ID AS okcPA_OldID
7236  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7237  ,okcPA.PAT_ID AS okcPA_PAT_ID
7238  ,to_number(decode(okcPA.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPA_NewChrID
7239  ,okcBT.ID AS okcPA_NewCleID
7240  ,okcPA.BSL_ID AS okcPA_BSL_ID
7241  ,okcPA.BCL_ID AS okcPA_BCL_ID
7242  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7243  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7244  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7245  ,okcPA.OPERAND AS okcPA_OPERAND
7246  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7247  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7248  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7249  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7250  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7251  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7252  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7253  ,okcPA.CONTEXT AS okcPA_CONTEXT
7254  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7255  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7256  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7257  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7258  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7259  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7260  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7261  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7262  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7263  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7264  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7265  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7266  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7267  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7268  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7269  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7270  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7271  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7272  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7273  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7274  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7275  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7276  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7277  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7278  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7279  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7280  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7281  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7282  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7283  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7284  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7285  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7286  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7287  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7288  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7289  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7290  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7291  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7292  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7293  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7294  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7295  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7296  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7297  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7298  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7299  FROM
7300   OKC_PRICE_ADJUSTMENTS okcPA
7301  ,OKC_K_LINES_B_TEMP okcBT
7302  WHERE okcPA.CLE_ID = okcBT.ORIG_SYSTEM_ID1
7303  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
7304 
7305 ----------------------------------------------------------------------------------------
7306 --Cursor to be used in component copy to only copy rows for Header
7307 --ie when no lines have been chosen by user to copy but Contract Header is being created
7308 ----------------------------------------------------------------------------------------
7309  CURSOR GetOkcPAPartial_H IS
7310  SELECT
7311   okcPA.ID AS okcPA_OldID
7312  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7313  ,okcPA.PAT_ID AS okcPA_PAT_ID
7314  ,okcH.ID AS okcPA_NewChrID
7315  ,NULL AS okcPA_NewCleID
7316  ,okcPA.BSL_ID AS okcPA_BSL_ID
7317  ,okcPA.BCL_ID AS okcPA_BCL_ID
7318  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7319  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7320  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7321  ,okcPA.OPERAND AS okcPA_OPERAND
7322  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7323  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7324  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7325  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7326  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7327  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7328  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7329  ,okcPA.CONTEXT AS okcPA_CONTEXT
7330  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7331  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7332  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7333  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7334  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7335  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7336  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7337  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7338  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7339  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7340  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7341  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7342  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7343  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7344  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7345  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7346  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7347  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7348  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7349  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7350  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7351  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7352  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7353  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7354  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7355  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7356  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7357  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7358  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7359  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7360  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7361  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7362  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7363  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7364  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7365  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7366  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7367  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7368  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7369  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7370  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7371  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7372  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7373  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7374  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7375  FROM
7376    OKC_PRICE_ADJUSTMENTS okcPA
7377   ,OKC_K_HEADERS_B okcH
7378    WHERE okcPA.CHR_ID = okcH.ORIG_SYSTEM_ID1
7379    and okcH.ID = P_To_Chr_ID
7380    and okcPA.CLE_ID is NULL
7381    and okcPA.CHR_ID = P_From_Chr_ID;
7382 
7383 
7384 ----------------------------------------------------------------------------------------
7385 --Cursor to be used in component copy to only copy rows for Lines
7386 --ie for the lines chosen by user to copy and copying to an existing contract so
7387 --Header wasnt created.
7388 ----------------------------------------------------------------------------------------
7389  CURSOR GetOkcPAPartial_L IS
7390  SELECT
7391   okcPA.ID AS okcPA_OldID
7392  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPA_NewID
7393  ,okcPA.PAT_ID AS okcPA_PAT_ID
7394  ,to_number(decode(okcPA.CHR_ID,NULL,NULL,okcBT.DNZ_CHR_ID)) AS okcPA_NewChrID
7395  ,okcBT.ID AS okcPA_NewCleID
7396  ,okcPA.BSL_ID AS okcPA_BSL_ID
7397  ,okcPA.BCL_ID AS okcPA_BCL_ID
7398  ,okcPA.MODIFIED_FROM AS okcPA_MODIFIED_FROM
7399  ,okcPA.MODIFIED_TO AS okcPA_MODIFIED_TO
7400  ,okcPA.MODIFIER_MECHANISM_TYPE_CODE AS okcPA_MODIF_MECHNSM_TYPE_CODE
7401  ,okcPA.OPERAND AS okcPA_OPERAND
7402  ,okcPA.ARITHMETIC_OPERATOR AS okcPA_ARITHMETIC_OPERATOR
7403  ,okcPA.AUTOMATIC_FLAG AS okcPA_AUTOMATIC_FLAG
7404  ,okcPA.UPDATE_ALLOWED AS okcPA_UPDATE_ALLOWED
7405  ,okcPA.UPDATED_FLAG AS okcPA_UPDATED_FLAG
7406  ,okcPA.APPLIED_FLAG AS okcPA_APPLIED_FLAG
7407  ,okcPA.ON_INVOICE_FLAG AS okcPA_ON_INVOICE_FLAG
7408  ,okcPA.PRICING_PHASE_ID AS okcPA_PRICING_PHASE_ID
7409  ,okcPA.CONTEXT AS okcPA_CONTEXT
7410  ,okcPA.ATTRIBUTE1 AS okcPA_ATTRIBUTE1
7411  ,okcPA.ATTRIBUTE2 AS okcPA_ATTRIBUTE2
7412  ,okcPA.ATTRIBUTE3 AS okcPA_ATTRIBUTE3
7413  ,okcPA.ATTRIBUTE4 AS okcPA_ATTRIBUTE4
7414  ,okcPA.ATTRIBUTE5 AS okcPA_ATTRIBUTE5
7415  ,okcPA.ATTRIBUTE6 AS okcPA_ATTRIBUTE6
7416  ,okcPA.ATTRIBUTE7 AS okcPA_ATTRIBUTE7
7417  ,okcPA.ATTRIBUTE8 AS okcPA_ATTRIBUTE8
7418  ,okcPA.ATTRIBUTE9 AS okcPA_ATTRIBUTE9
7419  ,okcPA.ATTRIBUTE10 AS okcPA_ATTRIBUTE10
7420  ,okcPA.ATTRIBUTE11 AS okcPA_ATTRIBUTE11
7421  ,okcPA.ATTRIBUTE12 AS okcPA_ATTRIBUTE12
7422  ,okcPA.ATTRIBUTE13 AS okcPA_ATTRIBUTE13
7423  ,okcPA.ATTRIBUTE14 AS okcPA_ATTRIBUTE14
7424  ,okcPA.ATTRIBUTE15 AS okcPA_ATTRIBUTE15
7425  ,okcPA.SECURITY_GROUP_ID AS okcPA_SECURITY_GROUP_ID
7426  ,okcPA.PROGRAM_APPLICATION_ID AS okcPA_PROGRAM_APPLICATION_ID
7427  ,okcPA.PROGRAM_ID AS okcPA_PROGRAM_ID
7428  ,okcPA.PROGRAM_UPDATE_DATE AS okcPA_PROGRAM_UPDATE_DATE
7429  ,okcPA.REQUEST_ID AS okcPA_REQUEST_ID
7430  ,1 AS okcPA_OBJECT_VERSION_NUMBER
7431  ,okcPA.LIST_HEADER_ID AS okcPA_LIST_HEADER_ID
7432  ,okcPA.LIST_LINE_ID AS okcPA_LIST_LINE_ID
7433  ,okcPA.LIST_LINE_TYPE_CODE AS okcPA_LIST_LINE_TYPE_CODE
7434  ,okcPA.CHANGE_REASON_CODE AS okcPA_CHANGE_REASON_CODE
7435  ,okcPA.CHANGE_REASON_TEXT AS okcPA_CHANGE_REASON_TEXT
7436  ,okcPA.ESTIMATED_FLAG AS okcPA_ESTIMATED_FLAG
7437  ,okcPA.ADJUSTED_AMOUNT AS okcPA_ADJUSTED_AMOUNT
7438  ,okcPA.CHARGE_TYPE_CODE AS okcPA_CHARGE_TYPE_CODE
7439  ,okcPA.CHARGE_SUBTYPE_CODE AS okcPA_CHARGE_SUBTYPE_CODE
7440  ,okcPA.RANGE_BREAK_QUANTITY AS okcPA_RANGE_BREAK_QUANTITY
7441  ,okcPA.ACCRUAL_CONVERSION_RATE AS okcPA_ACCRUAL_CONVERSION_RATE
7442  ,okcPA.PRICING_GROUP_SEQUENCE AS okcPA_PRICING_GROUP_SEQUENCE
7443  ,okcPA.ACCRUAL_FLAG AS okcPA_ACCRUAL_FLAG
7444  ,okcPA.LIST_LINE_NO AS okcPA_LIST_LINE_NO
7445  ,okcPA.SOURCE_SYSTEM_CODE AS okcPA_SOURCE_SYSTEM_CODE
7446  ,okcPA.BENEFIT_QTY AS okcPA_BENEFIT_QTY
7447  ,okcPA.BENEFIT_UOM_CODE AS okcPA_BENEFIT_UOM_CODE
7448  ,okcPA.EXPIRATION_DATE AS okcPA_EXPIRATION_DATE
7449  ,okcPA.MODIFIER_LEVEL_CODE AS okcPA_MODIFIER_LEVEL_CODE
7450  ,okcPA.PRICE_BREAK_TYPE_CODE AS okcPA_PRICE_BREAK_TYPE_CODE
7451  ,okcPA.SUBSTITUTION_ATTRIBUTE AS okcPA_SUBSTITUTION_ATTRIBUTE
7452  ,okcPA.PRORATION_TYPE_CODE AS okcPA_PRORATION_TYPE_CODE
7453  ,okcPA.INCLUDE_ON_RETURNS_FLAG AS okcPA_INCLUDE_ON_RETURNS_FLAG
7454  ,okcPA.REBATE_TRANSACTION_TYPE_CODE AS okcPA_REBATE_TRXN_TYPE_CODE
7455  FROM
7456   OKC_PRICE_ADJUSTMENTS okcPA
7457  ,OKC_K_LINES_B_TEMP okcBT
7458  WHERE okcPA.CLE_ID = okcBT.ORIG_SYSTEM_ID1
7459  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
7460 
7461 
7462  Begin
7463   x_return_status := l_return_status;
7464 
7465  IF (P_Partial_Copy_YN = 'N') THEN
7466   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7467          FND_LOG.string(FND_LOG.level_statement
7468                         ,l_module_name
7469                         ,'OPENing GetOkcPAFull'
7470                          );
7471   END IF;
7472   OPEN GetOkcPAFull;
7473  ELSIF (P_Partial_Copy_YN = 'Y') THEN
7474    IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
7475      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7476          FND_LOG.string(FND_LOG.level_statement
7477                         ,l_module_name
7478                         ,'OPENing GetOkcPAPartial_H'
7479                          );
7480      END IF;
7481 
7482      OPEN GetOkcPAPartial_H;
7483    ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
7484      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7485          FND_LOG.string(FND_LOG.level_statement
7486                         ,l_module_name
7487                         ,'OPENing GetOkcPAPartial_HNL'
7488                          );
7489      END IF;
7490 
7491      OPEN GetOkcPAPartial_HNL;
7492    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
7493      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7494          FND_LOG.string(FND_LOG.level_statement
7495                         ,l_module_name
7496                         ,'OPENing GetOkcPAPartial_L'
7497                          );
7498      END IF;
7499 
7500      OPEN GetOkcPAPartial_L;
7501    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
7502      RETURN;
7503    END IF;
7504 
7505  END IF;
7506 
7507 
7508  LOOP
7509  IF (P_Partial_Copy_YN = 'N') THEN
7510   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7511          FND_LOG.string(FND_LOG.level_statement
7512                         ,l_module_name
7513                         ,'FETCHing from GetOkcPAFull'
7514                          );
7515   END IF;
7516 
7517   FETCH GetOkcPAFull BULK COLLECT INTO
7518   okcPARecTab.OkcPA_OldID
7519  ,okcPARecTab.OkcPA_NewID
7520  ,okcPARecTab.OkcPA_PAT_ID
7521  ,okcPARecTab.OkcPA_NewChrID
7522  ,okcPARecTab.OkcPA_NewCleID
7523  ,okcPARecTab.OkcPA_BSL_ID
7524  ,okcPARecTab.OkcPA_BCL_ID
7525  ,okcPARecTab.OkcPA_MODIFIED_FROM
7526  ,okcPARecTab.OkcPA_MODIFIED_TO
7527  ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7528  ,okcPARecTab.OkcPA_OPERAND
7529  ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7530  ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7531  ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7532  ,okcPARecTab.OkcPA_UPDATED_FLAG
7533  ,okcPARecTab.OkcPA_APPLIED_FLAG
7534  ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7535  ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7536  ,okcPARecTab.OkcPA_CONTEXT
7537  ,okcPARecTab.OkcPA_ATTRIBUTE1
7538  ,okcPARecTab.OkcPA_ATTRIBUTE2
7539  ,okcPARecTab.OkcPA_ATTRIBUTE3
7540  ,okcPARecTab.OkcPA_ATTRIBUTE4
7541  ,okcPARecTab.OkcPA_ATTRIBUTE5
7542  ,okcPARecTab.OkcPA_ATTRIBUTE6
7543  ,okcPARecTab.OkcPA_ATTRIBUTE7
7544  ,okcPARecTab.OkcPA_ATTRIBUTE8
7545  ,okcPARecTab.OkcPA_ATTRIBUTE9
7546  ,okcPARecTab.OkcPA_ATTRIBUTE10
7547  ,okcPARecTab.OkcPA_ATTRIBUTE11
7548  ,okcPARecTab.OkcPA_ATTRIBUTE12
7549  ,okcPARecTab.OkcPA_ATTRIBUTE13
7550  ,okcPARecTab.OkcPA_ATTRIBUTE14
7551  ,okcPARecTab.OkcPA_ATTRIBUTE15
7552  ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7553  ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7554  ,okcPARecTab.OkcPA_PROGRAM_ID
7555  ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7556  ,okcPARecTab.OkcPA_REQUEST_ID
7557  ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7558  ,okcPARecTab.OkcPA_LIST_HEADER_ID
7559  ,okcPARecTab.OkcPA_LIST_LINE_ID
7560  ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7561  ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7562  ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7563  ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7564  ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7565  ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7566  ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7567  ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7568  ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7569  ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7570  ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7571  ,okcPARecTab.OkcPA_LIST_LINE_NO
7572  ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7573  ,okcPARecTab.OkcPA_BENEFIT_QTY
7574  ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7575  ,okcPARecTab.OkcPA_EXPIRATION_DATE
7576  ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7577  ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7578  ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7579  ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7580  ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7581  ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7582 
7583  ELSIF (P_Partial_Copy_YN = 'Y') THEN
7584    IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) THEN
7585      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7586          FND_LOG.string(FND_LOG.level_statement
7587                         ,l_module_name
7588                         ,'FETCHing from GetOkcPAPartial_H'
7589                          );
7590      END IF;
7591 
7592      FETCH GetOkcPAPartial_H BULK COLLECT INTO
7593      okcPARecTab.OkcPA_OldID
7594     ,okcPARecTab.OkcPA_NewID
7595     ,okcPARecTab.OkcPA_PAT_ID
7596     ,okcPARecTab.OkcPA_NewChrID
7597     ,okcPARecTab.OkcPA_NewCleID
7598     ,okcPARecTab.OkcPA_BSL_ID
7599     ,okcPARecTab.OkcPA_BCL_ID
7600     ,okcPARecTab.OkcPA_MODIFIED_FROM
7601     ,okcPARecTab.OkcPA_MODIFIED_TO
7602     ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7603     ,okcPARecTab.OkcPA_OPERAND
7604     ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7605     ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7606     ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7607     ,okcPARecTab.OkcPA_UPDATED_FLAG
7608     ,okcPARecTab.OkcPA_APPLIED_FLAG
7609     ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7610     ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7611     ,okcPARecTab.OkcPA_CONTEXT
7612     ,okcPARecTab.OkcPA_ATTRIBUTE1
7613     ,okcPARecTab.OkcPA_ATTRIBUTE2
7614     ,okcPARecTab.OkcPA_ATTRIBUTE3
7615     ,okcPARecTab.OkcPA_ATTRIBUTE4
7616     ,okcPARecTab.OkcPA_ATTRIBUTE5
7617     ,okcPARecTab.OkcPA_ATTRIBUTE6
7618     ,okcPARecTab.OkcPA_ATTRIBUTE7
7619     ,okcPARecTab.OkcPA_ATTRIBUTE8
7620     ,okcPARecTab.OkcPA_ATTRIBUTE9
7621     ,okcPARecTab.OkcPA_ATTRIBUTE10
7622     ,okcPARecTab.OkcPA_ATTRIBUTE11
7623     ,okcPARecTab.OkcPA_ATTRIBUTE12
7624     ,okcPARecTab.OkcPA_ATTRIBUTE13
7625     ,okcPARecTab.OkcPA_ATTRIBUTE14
7626     ,okcPARecTab.OkcPA_ATTRIBUTE15
7627     ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7628     ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7629     ,okcPARecTab.OkcPA_PROGRAM_ID
7630     ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7631     ,okcPARecTab.OkcPA_REQUEST_ID
7632     ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7633     ,okcPARecTab.OkcPA_LIST_HEADER_ID
7634     ,okcPARecTab.OkcPA_LIST_LINE_ID
7635     ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7636     ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7637     ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7638     ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7639     ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7640     ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7641     ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7642     ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7643     ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7644     ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7645     ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7646     ,okcPARecTab.OkcPA_LIST_LINE_NO
7647     ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7648     ,okcPARecTab.OkcPA_BENEFIT_QTY
7649     ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7650     ,okcPARecTab.OkcPA_EXPIRATION_DATE
7651     ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7652     ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7653     ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7654     ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7655     ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7656     ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7657 
7658    ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
7659      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7660          FND_LOG.string(FND_LOG.level_statement
7661                         ,l_module_name
7662                         ,'FETCHing from GetOkcPAPartial_HNL'
7663                          );
7664      END IF;
7665 
7666      FETCH GetOkcPAPartial_HNL BULK COLLECT INTO
7667      okcPARecTab.OkcPA_OldID
7668     ,okcPARecTab.OkcPA_NewID
7669     ,okcPARecTab.OkcPA_PAT_ID
7670     ,okcPARecTab.OkcPA_NewChrID
7671     ,okcPARecTab.OkcPA_NewCleID
7672     ,okcPARecTab.OkcPA_BSL_ID
7673     ,okcPARecTab.OkcPA_BCL_ID
7674     ,okcPARecTab.OkcPA_MODIFIED_FROM
7675     ,okcPARecTab.OkcPA_MODIFIED_TO
7676     ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7677     ,okcPARecTab.OkcPA_OPERAND
7678     ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7679     ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7680     ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7681     ,okcPARecTab.OkcPA_UPDATED_FLAG
7682     ,okcPARecTab.OkcPA_APPLIED_FLAG
7683     ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7684     ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7685     ,okcPARecTab.OkcPA_CONTEXT
7686     ,okcPARecTab.OkcPA_ATTRIBUTE1
7687     ,okcPARecTab.OkcPA_ATTRIBUTE2
7688     ,okcPARecTab.OkcPA_ATTRIBUTE3
7689     ,okcPARecTab.OkcPA_ATTRIBUTE4
7690     ,okcPARecTab.OkcPA_ATTRIBUTE5
7691     ,okcPARecTab.OkcPA_ATTRIBUTE6
7692     ,okcPARecTab.OkcPA_ATTRIBUTE7
7693     ,okcPARecTab.OkcPA_ATTRIBUTE8
7694     ,okcPARecTab.OkcPA_ATTRIBUTE9
7695     ,okcPARecTab.OkcPA_ATTRIBUTE10
7696     ,okcPARecTab.OkcPA_ATTRIBUTE11
7697     ,okcPARecTab.OkcPA_ATTRIBUTE12
7698     ,okcPARecTab.OkcPA_ATTRIBUTE13
7699     ,okcPARecTab.OkcPA_ATTRIBUTE14
7700     ,okcPARecTab.OkcPA_ATTRIBUTE15
7701     ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7702     ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7703     ,okcPARecTab.OkcPA_PROGRAM_ID
7704     ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7705     ,okcPARecTab.OkcPA_REQUEST_ID
7706     ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7707     ,okcPARecTab.OkcPA_LIST_HEADER_ID
7708     ,okcPARecTab.OkcPA_LIST_LINE_ID
7709     ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7710     ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7711     ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7712     ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7713     ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7714     ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7715     ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7716     ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7717     ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7718     ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7719     ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7720     ,okcPARecTab.OkcPA_LIST_LINE_NO
7721     ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7722     ,okcPARecTab.OkcPA_BENEFIT_QTY
7723     ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7724     ,okcPARecTab.OkcPA_EXPIRATION_DATE
7725     ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7726     ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7727     ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7728     ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7729     ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7730     ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7731 
7732    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
7733      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
7734          FND_LOG.string(FND_LOG.level_statement
7735                         ,l_module_name
7736                         ,'FETCHing GetOkcPAPartial_L'
7737                          );
7738      END IF;
7739 
7740      FETCH GetOkcPAPartial_L BULK COLLECT INTO
7741      okcPARecTab.OkcPA_OldID
7742     ,okcPARecTab.OkcPA_NewID
7743     ,okcPARecTab.OkcPA_PAT_ID
7744     ,okcPARecTab.OkcPA_NewChrID
7745     ,okcPARecTab.OkcPA_NewCleID
7746     ,okcPARecTab.OkcPA_BSL_ID
7747     ,okcPARecTab.OkcPA_BCL_ID
7748     ,okcPARecTab.OkcPA_MODIFIED_FROM
7749     ,okcPARecTab.OkcPA_MODIFIED_TO
7750     ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE
7751     ,okcPARecTab.OkcPA_OPERAND
7752     ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR
7753     ,okcPARecTab.OkcPA_AUTOMATIC_FLAG
7754     ,okcPARecTab.OkcPA_UPDATE_ALLOWED
7755     ,okcPARecTab.OkcPA_UPDATED_FLAG
7756     ,okcPARecTab.OkcPA_APPLIED_FLAG
7757     ,okcPARecTab.OkcPA_ON_INVOICE_FLAG
7758     ,okcPARecTab.OkcPA_PRICING_PHASE_ID
7759     ,okcPARecTab.OkcPA_CONTEXT
7760     ,okcPARecTab.OkcPA_ATTRIBUTE1
7761     ,okcPARecTab.OkcPA_ATTRIBUTE2
7762     ,okcPARecTab.OkcPA_ATTRIBUTE3
7763     ,okcPARecTab.OkcPA_ATTRIBUTE4
7764     ,okcPARecTab.OkcPA_ATTRIBUTE5
7765     ,okcPARecTab.OkcPA_ATTRIBUTE6
7766     ,okcPARecTab.OkcPA_ATTRIBUTE7
7767     ,okcPARecTab.OkcPA_ATTRIBUTE8
7768     ,okcPARecTab.OkcPA_ATTRIBUTE9
7769     ,okcPARecTab.OkcPA_ATTRIBUTE10
7770     ,okcPARecTab.OkcPA_ATTRIBUTE11
7771     ,okcPARecTab.OkcPA_ATTRIBUTE12
7772     ,okcPARecTab.OkcPA_ATTRIBUTE13
7773     ,okcPARecTab.OkcPA_ATTRIBUTE14
7774     ,okcPARecTab.OkcPA_ATTRIBUTE15
7775     ,okcPARecTab.OkcPA_SECURITY_GROUP_ID
7776     ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID
7777     ,okcPARecTab.OkcPA_PROGRAM_ID
7778     ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE
7779     ,okcPARecTab.OkcPA_REQUEST_ID
7780     ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER
7781     ,okcPARecTab.OkcPA_LIST_HEADER_ID
7782     ,okcPARecTab.OkcPA_LIST_LINE_ID
7783     ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE
7784     ,okcPARecTab.OkcPA_CHANGE_REASON_CODE
7785     ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT
7786     ,okcPARecTab.OkcPA_ESTIMATED_FLAG
7787     ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT
7788     ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE
7789     ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE
7790     ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY
7791     ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE
7792     ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE
7793     ,okcPARecTab.OkcPA_ACCRUAL_FLAG
7794     ,okcPARecTab.OkcPA_LIST_LINE_NO
7795     ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE
7796     ,okcPARecTab.OkcPA_BENEFIT_QTY
7797     ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE
7798     ,okcPARecTab.OkcPA_EXPIRATION_DATE
7799     ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE
7800     ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE
7801     ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE
7802     ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE
7803     ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG
7804     ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE LIMIT G_BULK_FETCH_LIMIT;
7805 
7806    END IF;
7807  END IF;
7808 
7809 
7810 
7811   FORALL i in okcPARecTab.OkcPA_NewID.FIRST .. okcPARecTab.OkcPA_NewID.LAST
7812   INSERT INTO OKC_PRICE_ADJUSTMENTS(
7813   ID
7814  ,PAT_ID
7815  ,CHR_ID
7816  ,CLE_ID
7817  ,BSL_ID
7818  ,BCL_ID
7819  ,MODIFIED_FROM
7820  ,MODIFIED_TO
7821  ,MODIFIER_MECHANISM_TYPE_CODE
7822  ,OPERAND
7823  ,ARITHMETIC_OPERATOR
7824  ,AUTOMATIC_FLAG
7825  ,UPDATE_ALLOWED
7826  ,UPDATED_FLAG
7827  ,APPLIED_FLAG
7828  ,ON_INVOICE_FLAG
7829  ,PRICING_PHASE_ID
7830  ,CONTEXT
7831  ,ATTRIBUTE1
7832  ,ATTRIBUTE2
7833  ,ATTRIBUTE3
7834  ,ATTRIBUTE4
7835  ,ATTRIBUTE5
7836  ,ATTRIBUTE6
7837  ,ATTRIBUTE7
7838  ,ATTRIBUTE8
7839  ,ATTRIBUTE9
7840  ,ATTRIBUTE10
7841  ,ATTRIBUTE11
7842  ,ATTRIBUTE12
7843  ,ATTRIBUTE13
7844  ,ATTRIBUTE14
7845  ,ATTRIBUTE15
7846  ,SECURITY_GROUP_ID
7847  ,PROGRAM_APPLICATION_ID
7848  ,PROGRAM_ID
7849  ,PROGRAM_UPDATE_DATE
7850  ,REQUEST_ID
7851  ,OBJECT_VERSION_NUMBER
7852  ,LIST_HEADER_ID
7853  ,LIST_LINE_ID
7854  ,LIST_LINE_TYPE_CODE
7855  ,CHANGE_REASON_CODE
7856  ,CHANGE_REASON_TEXT
7857  ,ESTIMATED_FLAG
7858  ,ADJUSTED_AMOUNT
7859  ,CHARGE_TYPE_CODE
7860  ,CHARGE_SUBTYPE_CODE
7861  ,RANGE_BREAK_QUANTITY
7862  ,ACCRUAL_CONVERSION_RATE
7863  ,PRICING_GROUP_SEQUENCE
7864  ,ACCRUAL_FLAG
7865  ,LIST_LINE_NO
7866  ,SOURCE_SYSTEM_CODE
7867  ,BENEFIT_QTY
7868  ,BENEFIT_UOM_CODE
7869  ,EXPIRATION_DATE
7870  ,MODIFIER_LEVEL_CODE
7871  ,PRICE_BREAK_TYPE_CODE
7872  ,SUBSTITUTION_ATTRIBUTE
7873  ,PRORATION_TYPE_CODE
7874  ,INCLUDE_ON_RETURNS_FLAG
7875  ,REBATE_TRANSACTION_TYPE_CODE
7876  ,CREATED_BY
7877  ,CREATION_DATE
7878  ,LAST_UPDATED_BY
7879  ,LAST_UPDATE_DATE
7880  ,LAST_UPDATE_LOGIN
7881  )
7882  SELECT
7883  okcPARecTab.OkcPA_NewID(i)
7884 ,okcPARecTab.OkcPA_PAT_ID(i)
7885 ,okcPARecTab.OkcPA_NewChrID(i)
7886 ,okcPARecTab.OkcPA_NewCleID(i)
7887 ,okcPARecTab.OkcPA_BSL_ID(i)
7888 ,okcPARecTab.OkcPA_BCL_ID(i)
7889 ,okcPARecTab.OkcPA_MODIFIED_FROM(i)
7890 ,okcPARecTab.OkcPA_MODIFIED_TO(i)
7891 ,okcPARecTab.OkcPA_MODIF_MECHNSM_TYPE_CODE(i)
7892 ,okcPARecTab.OkcPA_OPERAND(i)
7893 ,okcPARecTab.OkcPA_ARITHMETIC_OPERATOR(i)
7894 ,okcPARecTab.OkcPA_AUTOMATIC_FLAG(i)
7895 ,okcPARecTab.OkcPA_UPDATE_ALLOWED(i)
7896 ,okcPARecTab.OkcPA_UPDATED_FLAG(i)
7897 ,okcPARecTab.OkcPA_APPLIED_FLAG(i)
7898 ,okcPARecTab.OkcPA_ON_INVOICE_FLAG(i)
7899 ,okcPARecTab.OkcPA_PRICING_PHASE_ID(i)
7900 ,okcPARecTab.OkcPA_CONTEXT(i)
7901 ,okcPARecTab.OkcPA_ATTRIBUTE1(i)
7902 ,okcPARecTab.OkcPA_ATTRIBUTE2(i)
7903 ,okcPARecTab.OkcPA_ATTRIBUTE3(i)
7904 ,okcPARecTab.OkcPA_ATTRIBUTE4(i)
7905 ,okcPARecTab.OkcPA_ATTRIBUTE5(i)
7906 ,okcPARecTab.OkcPA_ATTRIBUTE6(i)
7907 ,okcPARecTab.OkcPA_ATTRIBUTE7(i)
7908 ,okcPARecTab.OkcPA_ATTRIBUTE8(i)
7909 ,okcPARecTab.OkcPA_ATTRIBUTE9(i)
7910 ,okcPARecTab.OkcPA_ATTRIBUTE10(i)
7911 ,okcPARecTab.OkcPA_ATTRIBUTE11(i)
7912 ,okcPARecTab.OkcPA_ATTRIBUTE12(i)
7913 ,okcPARecTab.OkcPA_ATTRIBUTE13(i)
7914 ,okcPARecTab.OkcPA_ATTRIBUTE14(i)
7915 ,okcPARecTab.OkcPA_ATTRIBUTE15(i)
7916 ,okcPARecTab.OkcPA_SECURITY_GROUP_ID(i)
7917 ,okcPARecTab.OkcPA_PROGRAM_APPLICATION_ID(i)
7918 ,okcPARecTab.OkcPA_PROGRAM_ID(i)
7919 ,okcPARecTab.OkcPA_PROGRAM_UPDATE_DATE(i)
7920 ,okcPARecTab.OkcPA_REQUEST_ID(i)
7921 ,okcPARecTab.OkcPA_OBJECT_VERSION_NUMBER(i)
7922 ,okcPARecTab.OkcPA_LIST_HEADER_ID(i)
7923 ,okcPARecTab.OkcPA_LIST_LINE_ID(i)
7924 ,okcPARecTab.OkcPA_LIST_LINE_TYPE_CODE(i)
7925 ,okcPARecTab.OkcPA_CHANGE_REASON_CODE(i)
7926 ,okcPARecTab.OkcPA_CHANGE_REASON_TEXT(i)
7927 ,okcPARecTab.OkcPA_ESTIMATED_FLAG(i)
7928 ,okcPARecTab.OkcPA_ADJUSTED_AMOUNT(i)
7929 ,okcPARecTab.OkcPA_CHARGE_TYPE_CODE(i)
7930 ,okcPARecTab.OkcPA_CHARGE_SUBTYPE_CODE(i)
7931 ,okcPARecTab.OkcPA_RANGE_BREAK_QUANTITY(i)
7932 ,okcPARecTab.OkcPA_ACCRUAL_CONVERSION_RATE(i)
7933 ,okcPARecTab.OkcPA_PRICING_GROUP_SEQUENCE(i)
7934 ,okcPARecTab.OkcPA_ACCRUAL_FLAG(i)
7935 ,okcPARecTab.OkcPA_LIST_LINE_NO(i)
7936 ,okcPARecTab.OkcPA_SOURCE_SYSTEM_CODE(i)
7937 ,okcPARecTab.OkcPA_BENEFIT_QTY(i)
7938 ,okcPARecTab.OkcPA_BENEFIT_UOM_CODE(i)
7939 ,okcPARecTab.OkcPA_EXPIRATION_DATE(i)
7940 ,okcPARecTab.OkcPA_MODIFIER_LEVEL_CODE(i)
7941 ,okcPARecTab.OkcPA_PRICE_BREAK_TYPE_CODE(i)
7942 ,okcPARecTab.OkcPA_SUBSTITUTION_ATTRIBUTE(i)
7943 ,okcPARecTab.OkcPA_PRORATION_TYPE_CODE(i)
7944 ,okcPARecTab.OkcPA_INCLUDE_ON_RETURNS_FLAG(i)
7945 ,okcPARecTab.OkcPA_REBATE_TRXN_TYPE_CODE(i)
7946 ,FND_GLOBAL.USER_ID
7947 ,SYSDATE
7948 ,FND_GLOBAL.USER_ID
7949 ,SYSDATE
7950 ,FND_GLOBAL.LOGIN_ID
7951 FROM
7952 DUAL;
7953 
7954 
7955     IF (P_Partial_Copy_YN = 'N') THEN
7956       EXIT WHEN GetOkcPAFull%NOTFOUND;
7957     ELSIF (P_Partial_Copy_YN = 'Y') THEN
7958       IF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
7959         EXIT WHEN GetOkcPAPartial_H%NOTFOUND;
7960       ELSIF (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
7961         EXIT WHEN GetOkcPAPartial_HNL%NOTFOUND;
7962       ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
7963         EXIT WHEN GetOkcPAPartial_L%NOTFOUND;
7964       END IF;
7965     END IF;
7966 
7967  END LOOP;
7968 
7969   IF GetOkcPAFull%ISOPEN THEN
7970    CLOSE GetOkcPAFull;
7971   ELSIF GetOkcPAPartial_H%ISOPEN THEN
7972    CLOSE GetOkcPAPartial_H;
7973   ELSIF GetOkcPAPartial_HNL%ISOPEN THEN
7974    CLOSE GetOkcPAPartial_HNL;
7975   ELSIF GetOkcPAPartial_L%ISOPEN THEN
7976    CLOSE GetOkcPAPartial_L;
7977   END IF;
7978 
7979     EXCEPTION
7980         WHEN OTHERS THEN
7981           IF GetOkcPAFull%ISOPEN THEN
7982 	   CLOSE GetOkcPAFull;
7983 	  ELSIF GetOkcPAPartial_H%ISOPEN THEN
7984 	   CLOSE GetOkcPAPartial_H;
7985 	  ELSIF GetOkcPAPartial_HNL%ISOPEN THEN
7986 	   CLOSE GetOkcPAPartial_HNL;
7987 	  ELSIF GetOkcPAPartial_L%ISOPEN THEN
7988 	   CLOSE GetOkcPAPartial_L;
7989 	  END IF;
7990           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7991           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
7992           RAISE;
7993 
7994  End copy_okc_price_adjustments;
7995 
7996 
7997 --===================================================
7998 --  copy_okc_k_party_roles_b
7999 --  Parameters: P_From_Chr_ID : Header ID of source contract
8000 --   	      P_To_Chr_ID   : Header ID of target contract
8001  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
8002  --				    or as part of component copy from UI (value = 'Y')
8003 --	      P_Lines_Count : Count of rows in P_Lines_Tbl PLSQL Table
8004 --====================================================
8005  PROCEDURE copy_okc_k_party_roles_b(P_From_Chr_ID IN NUMBER
8006 			    ,P_To_Chr_ID   IN NUMBER
8007 			    ,P_Partial_Copy_YN IN VARCHAR2
8008 			    ,P_Lines_Count IN NUMBER DEFAULT 0
8009 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
8010 
8011   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PARTY_ROLES_B';
8012   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8013 
8014   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8015  CURSOR GetOkcPRBFull IS
8016  SELECT
8017   okcPRB.ID AS okcPRB_OldID
8018  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPRB_NewID
8019  ,okcH.ID AS okcPRB_NewChrID
8020  ,NULL AS okcPRB_NewCleID
8021  ,okcH.ID AS okcPRB_NewDnzChrID
8022  ,okcPRB.RLE_CODE AS okcPRB_RLE_CODE
8023  ,okcPRB.OBJECT1_ID1 AS okcPRB_OBJECT1_ID1
8024  ,okcPRB.OBJECT1_ID2 AS okcPRB_OBJECT1_ID2
8025  ,okcPRB.JTOT_OBJECT1_CODE AS okcPRB_JTOT_OBJECT1_CODE
8026  ,1 AS okcPRB_OBJECT_VERSION_NUMBER
8027  ,okcPRB.CODE AS okcPRB_CODE
8028  ,okcPRB.FACILITY AS okcPRB_FACILITY
8029  ,okcPRB.MINORITY_GROUP_LOOKUP_CODE AS okcPRB_MINOR_GRP_LOOKUP_CODE
8030  ,okcPRB.SMALL_BUSINESS_FLAG AS okcPRB_SMALL_BUSINESS_FLAG
8031  ,okcPRB.WOMEN_OWNED_FLAG AS okcPRB_WOMEN_OWNED_FLAG
8032  ,okcPRB.ATTRIBUTE_CATEGORY AS okcPRB_ATTRIBUTE_CATEGORY
8033  ,okcPRB.ATTRIBUTE1 AS okcPRB_ATTRIBUTE1
8034  ,okcPRB.ATTRIBUTE2 AS okcPRB_ATTRIBUTE2
8035  ,okcPRB.ATTRIBUTE3 AS okcPRB_ATTRIBUTE3
8036  ,okcPRB.ATTRIBUTE4 AS okcPRB_ATTRIBUTE4
8037  ,okcPRB.ATTRIBUTE5 AS okcPRB_ATTRIBUTE5
8038  ,okcPRB.ATTRIBUTE6 AS okcPRB_ATTRIBUTE6
8039  ,okcPRB.ATTRIBUTE7 AS okcPRB_ATTRIBUTE7
8040  ,okcPRB.ATTRIBUTE8 AS okcPRB_ATTRIBUTE8
8041  ,okcPRB.ATTRIBUTE9 AS okcPRB_ATTRIBUTE9
8042  ,okcPRB.ATTRIBUTE10 AS okcPRB_ATTRIBUTE10
8043  ,okcPRB.ATTRIBUTE11 AS okcPRB_ATTRIBUTE11
8044  ,okcPRB.ATTRIBUTE12 AS okcPRB_ATTRIBUTE12
8045  ,okcPRB.ATTRIBUTE13 AS okcPRB_ATTRIBUTE13
8046  ,okcPRB.ATTRIBUTE14 AS okcPRB_ATTRIBUTE14
8047  ,okcPRB.ATTRIBUTE15 AS okcPRB_ATTRIBUTE15
8048  ,okcPRB.SECURITY_GROUP_ID AS okcPRB_SECURITY_GROUP_ID
8049  ,okcPRB.CPL_ID AS okcPRB_CPL_ID
8050  ,okcPRB.PRIMARY_YN AS okcPRB_PRIMARY_YN
8051  ,okcPRB.BILL_TO_SITE_USE_ID AS okcPRB_BILL_TO_SITE_USE_ID
8052  ,okcPRB.CUST_ACCT_ID AS okcPRB_CUST_ACCT_ID
8053  ,okcPRB.ID AS okcPRB_ORIG_SYSTEM_ID1
8054  ,'COPY' AS okcPRB_ORIG_SYSTEM_REFERENCE1
8055  ,NULL AS okcPRB_ORIG_SYSTEM_SOURCE_CODE
8056  FROM
8057    OKC_K_PARTY_ROLES_B okcPRB
8058   ,OKC_K_HEADERS_B okcH
8059   where okcPRB.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
8060   and okcPRB.CLE_ID is NULL
8061   and okcH.ID = P_To_Chr_ID
8062   and okcPRB.DNZ_CHR_ID = P_From_Chr_ID
8063  UNION
8064  SELECT
8065   okcPRB.ID AS okcPRB_OldID
8066  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPRB_NewID
8067  ,NULL AS okcPRB_NewChrID
8068  ,okcB.ID AS okcPRB_NewCleID
8069  ,okcB.DNZ_CHR_ID AS okcPRB_NewDnzChrID
8070  ,okcPRB.RLE_CODE AS okcPRB_RLE_CODE
8071  ,okcPRB.OBJECT1_ID1 AS okcPRB_OBJECT1_ID1
8072  ,okcPRB.OBJECT1_ID2 AS okcPRB_OBJECT1_ID2
8073  ,okcPRB.JTOT_OBJECT1_CODE AS okcPRB_JTOT_OBJECT1_CODE
8074  ,1 AS okcPRB_OBJECT_VERSION_NUMBER
8075  ,okcPRB.CODE AS okcPRB_CODE
8076  ,okcPRB.FACILITY AS okcPRB_FACILITY
8077  ,okcPRB.MINORITY_GROUP_LOOKUP_CODE AS okcPRB_MINOR_GRP_LOOKUP_CODE
8078  ,okcPRB.SMALL_BUSINESS_FLAG AS okcPRB_SMALL_BUSINESS_FLAG
8079  ,okcPRB.WOMEN_OWNED_FLAG AS okcPRB_WOMEN_OWNED_FLAG
8080  ,okcPRB.ATTRIBUTE_CATEGORY AS okcPRB_ATTRIBUTE_CATEGORY
8081  ,okcPRB.ATTRIBUTE1 AS okcPRB_ATTRIBUTE1
8082  ,okcPRB.ATTRIBUTE2 AS okcPRB_ATTRIBUTE2
8083  ,okcPRB.ATTRIBUTE3 AS okcPRB_ATTRIBUTE3
8084  ,okcPRB.ATTRIBUTE4 AS okcPRB_ATTRIBUTE4
8085  ,okcPRB.ATTRIBUTE5 AS okcPRB_ATTRIBUTE5
8086  ,okcPRB.ATTRIBUTE6 AS okcPRB_ATTRIBUTE6
8087  ,okcPRB.ATTRIBUTE7 AS okcPRB_ATTRIBUTE7
8088  ,okcPRB.ATTRIBUTE8 AS okcPRB_ATTRIBUTE8
8089  ,okcPRB.ATTRIBUTE9 AS okcPRB_ATTRIBUTE9
8090  ,okcPRB.ATTRIBUTE10 AS okcPRB_ATTRIBUTE10
8091  ,okcPRB.ATTRIBUTE11 AS okcPRB_ATTRIBUTE11
8092  ,okcPRB.ATTRIBUTE12 AS okcPRB_ATTRIBUTE12
8093  ,okcPRB.ATTRIBUTE13 AS okcPRB_ATTRIBUTE13
8094  ,okcPRB.ATTRIBUTE14 AS okcPRB_ATTRIBUTE14
8095  ,okcPRB.ATTRIBUTE15 AS okcPRB_ATTRIBUTE15
8096  ,okcPRB.SECURITY_GROUP_ID AS okcPRB_SECURITY_GROUP_ID
8097  ,okcPRB.CPL_ID AS okcPRB_CPL_ID
8098  ,okcPRB.PRIMARY_YN AS okcPRB_PRIMARY_YN
8099  ,okcPRB.BILL_TO_SITE_USE_ID AS okcPRB_BILL_TO_SITE_USE_ID
8100  ,okcPRB.CUST_ACCT_ID AS okcPRB_CUST_ACCT_ID
8101  ,okcPRB.ID AS okcPRB_ORIG_SYSTEM_ID1
8102  ,'COPY' AS okcPRB_ORIG_SYSTEM_REFERENCE1
8103  ,NULL AS okcPRB_ORIG_SYSTEM_SOURCE_CODE
8104  FROM
8105    OKC_K_PARTY_ROLES_B okcPRB
8106   ,OKC_K_LINES_B okcB
8107  WHERE
8108    okcPRB.CLE_ID = okcB.ORIG_SYSTEM_ID1
8109    AND okcPRB.DNZ_CHR_ID = P_From_Chr_ID
8110    AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
8111 
8112 -----------------------------------------------------------------------------
8113 --Cursor to be used in component copy to copy rows for the lines being copied
8114 -----------------------------------------------------------------------------
8115  CURSOR GetOkcPRBPartial IS
8116  SELECT
8117   okcPRB.ID AS okcPRB_OldID
8118  ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcPRB_NewID
8119  ,NULL AS okcPRB_NewChrID
8120  ,okcBT.ID AS okcPRB_NewCleID
8121  ,okcBT.DNZ_CHR_ID AS okcPRB_NewDnzChrID
8122  ,okcPRB.RLE_CODE AS okcPRB_RLE_CODE
8123  ,okcPRB.OBJECT1_ID1 AS okcPRB_OBJECT1_ID1
8124  ,okcPRB.OBJECT1_ID2 AS okcPRB_OBJECT1_ID2
8125  ,okcPRB.JTOT_OBJECT1_CODE AS okcPRB_JTOT_OBJECT1_CODE
8126  ,1 AS okcPRB_OBJECT_VERSION_NUMBER
8127  ,okcPRB.CODE AS okcPRB_CODE
8128  ,okcPRB.FACILITY AS okcPRB_FACILITY
8129  ,okcPRB.MINORITY_GROUP_LOOKUP_CODE AS okcPRB_MINOR_GRP_LOOKUP_CODE
8130  ,okcPRB.SMALL_BUSINESS_FLAG AS okcPRB_SMALL_BUSINESS_FLAG
8131  ,okcPRB.WOMEN_OWNED_FLAG AS okcPRB_WOMEN_OWNED_FLAG
8132  ,okcPRB.ATTRIBUTE_CATEGORY AS okcPRB_ATTRIBUTE_CATEGORY
8133  ,okcPRB.ATTRIBUTE1 AS okcPRB_ATTRIBUTE1
8134  ,okcPRB.ATTRIBUTE2 AS okcPRB_ATTRIBUTE2
8135  ,okcPRB.ATTRIBUTE3 AS okcPRB_ATTRIBUTE3
8136  ,okcPRB.ATTRIBUTE4 AS okcPRB_ATTRIBUTE4
8137  ,okcPRB.ATTRIBUTE5 AS okcPRB_ATTRIBUTE5
8138  ,okcPRB.ATTRIBUTE6 AS okcPRB_ATTRIBUTE6
8139  ,okcPRB.ATTRIBUTE7 AS okcPRB_ATTRIBUTE7
8140  ,okcPRB.ATTRIBUTE8 AS okcPRB_ATTRIBUTE8
8141  ,okcPRB.ATTRIBUTE9 AS okcPRB_ATTRIBUTE9
8142  ,okcPRB.ATTRIBUTE10 AS okcPRB_ATTRIBUTE10
8143  ,okcPRB.ATTRIBUTE11 AS okcPRB_ATTRIBUTE11
8144  ,okcPRB.ATTRIBUTE12 AS okcPRB_ATTRIBUTE12
8145  ,okcPRB.ATTRIBUTE13 AS okcPRB_ATTRIBUTE13
8146  ,okcPRB.ATTRIBUTE14 AS okcPRB_ATTRIBUTE14
8147  ,okcPRB.ATTRIBUTE15 AS okcPRB_ATTRIBUTE15
8148  ,okcPRB.SECURITY_GROUP_ID AS okcPRB_SECURITY_GROUP_ID
8149  ,okcPRB.CPL_ID AS okcPRB_CPL_ID
8150  ,okcPRB.PRIMARY_YN AS okcPRB_PRIMARY_YN
8151  ,okcPRB.BILL_TO_SITE_USE_ID AS okcPRB_BILL_TO_SITE_USE_ID
8152  ,okcPRB.CUST_ACCT_ID AS okcPRB_CUST_ACCT_ID
8153  ,okcPRB.ID AS okcPRB_ORIG_SYSTEM_ID1
8154  ,'COPY' AS okcPRB_ORIG_SYSTEM_REFERENCE1
8155  ,NULL AS okcPRB_ORIG_SYSTEM_SOURCE_CODE
8156  FROM
8157    OKC_K_PARTY_ROLES_B okcPRB
8158   ,OKC_K_LINES_B_TEMP okcBT
8159  WHERE
8160    okcPRB.CLE_ID = okcBT.ORIG_SYSTEM_ID1
8161    AND okcPRB.CHR_ID IS NULL
8162    AND okcPRB.DNZ_CHR_ID = P_From_Chr_ID
8163    AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
8164 
8165 
8166  Begin
8167   x_return_status := l_return_status;
8168 
8169   IF (P_Partial_Copy_YN = 'N') THEN
8170     OPEN GetOkcPRBFull;
8171   ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0)  THEN
8172     OPEN GetOkcPRBPartial;
8173   END IF;
8174 
8175   LOOP
8176    IF (P_Partial_Copy_YN = 'N') THEN
8177     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8178          FND_LOG.string(FND_LOG.level_statement
8179                         ,l_module_name
8180                         ,'FETCHing from GetOkcPRBFull'
8181                          );
8182     END IF;
8183 
8184      FETCH GetOkcPRBFull BULK COLLECT INTO
8185      OkcPRBRecTab.OkcPRB_OldID
8186     ,OkcPRBRecTab.OkcPRB_NewID
8187     ,OkcPRBRecTab.OkcPRB_NewChrID
8188     ,OkcPRBRecTab.OkcPRB_NewCleID
8189     ,OkcPRBRecTab.OkcPRB_NewDnzChrID
8190     ,OkcPRBRecTab.OkcPRB_RLE_CODE
8191     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID1
8192     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID2
8193     ,OkcPRBRecTab.OkcPRB_JTOT_OBJECT1_CODE
8194     ,OkcPRBRecTab.OkcPRB_OBJECT_VERSION_NUMBER
8195     ,OkcPRBRecTab.OkcPRB_CODE
8196     ,OkcPRBRecTab.OkcPRB_FACILITY
8197     ,OkcPRBRecTab.OkcPRB_MINOR_GROUP_LOOKUP_CODE
8198     ,OkcPRBRecTab.OkcPRB_SMALL_BUSINESS_FLAG
8199     ,OkcPRBRecTab.OkcPRB_WOMEN_OWNED_FLAG
8200     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE_CATEGORY
8201     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE1
8202     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE2
8203     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE3
8204     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE4
8205     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE5
8206     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE6
8207     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE7
8208     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE8
8209     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE9
8210     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE10
8211     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE11
8212     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE12
8213     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE13
8214     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE14
8215     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE15
8216     ,OkcPRBRecTab.OkcPRB_SECURITY_GROUP_ID
8217     ,OkcPRBRecTab.OkcPRB_CPL_ID
8218     ,OkcPRBRecTab.OkcPRB_PRIMARY_YN
8219     ,OkcPRBRecTab.OkcPRB_BILL_TO_SITE_USE_ID
8220     ,OkcPRBRecTab.OkcPRB_CUST_ACCT_ID
8221     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_ID1
8222     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_REFERENCE1
8223     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_SOURCE_CODE LIMIT G_BULK_FETCH_LIMIT;
8224 
8225   ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) THEN
8226     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8227          FND_LOG.string(FND_LOG.level_statement
8228                         ,l_module_name
8229                         ,'FETCHing from GetOkcPRBPartial'
8230                          );
8231     END IF;
8232 
8233      FETCH GetOkcPRBPartial BULK COLLECT INTO
8234      OkcPRBRecTab.OkcPRB_OldID
8235     ,OkcPRBRecTab.OkcPRB_NewID
8236     ,OkcPRBRecTab.OkcPRB_NewChrID
8237     ,OkcPRBRecTab.OkcPRB_NewCleID
8238     ,OkcPRBRecTab.OkcPRB_NewDnzChrID
8239     ,OkcPRBRecTab.OkcPRB_RLE_CODE
8240     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID1
8241     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID2
8242     ,OkcPRBRecTab.OkcPRB_JTOT_OBJECT1_CODE
8243     ,OkcPRBRecTab.OkcPRB_OBJECT_VERSION_NUMBER
8244     ,OkcPRBRecTab.OkcPRB_CODE
8245     ,OkcPRBRecTab.OkcPRB_FACILITY
8246     ,OkcPRBRecTab.OkcPRB_MINOR_GROUP_LOOKUP_CODE
8247     ,OkcPRBRecTab.OkcPRB_SMALL_BUSINESS_FLAG
8248     ,OkcPRBRecTab.OkcPRB_WOMEN_OWNED_FLAG
8249     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE_CATEGORY
8250     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE1
8251     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE2
8252     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE3
8253     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE4
8254     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE5
8255     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE6
8256     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE7
8257     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE8
8258     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE9
8259     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE10
8260     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE11
8261     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE12
8262     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE13
8263     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE14
8264     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE15
8265     ,OkcPRBRecTab.OkcPRB_SECURITY_GROUP_ID
8266     ,OkcPRBRecTab.OkcPRB_CPL_ID
8267     ,OkcPRBRecTab.OkcPRB_PRIMARY_YN
8268     ,OkcPRBRecTab.OkcPRB_BILL_TO_SITE_USE_ID
8269     ,OkcPRBRecTab.OkcPRB_CUST_ACCT_ID
8270     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_ID1
8271     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_REFERENCE1
8272     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_SOURCE_CODE LIMIT G_BULK_FETCH_LIMIT;
8273    END IF;
8274 
8275    FORALL i in OkcPRBRecTab.OkcPRB_NewID.FIRST .. OkcPRBRecTab.OkcPRB_NewID.LAST
8276    INSERT INTO OKC_K_PARTY_ROLES_B(
8277       ID
8278      ,CHR_ID
8279      ,CLE_ID
8280      ,DNZ_CHR_ID
8281      ,RLE_CODE
8282      ,OBJECT1_ID1
8283      ,OBJECT1_ID2
8284      ,JTOT_OBJECT1_CODE
8285      ,OBJECT_VERSION_NUMBER
8286      ,CODE
8287      ,FACILITY
8288      ,MINORITY_GROUP_LOOKUP_CODE
8289      ,SMALL_BUSINESS_FLAG
8290      ,WOMEN_OWNED_FLAG
8291      ,ATTRIBUTE_CATEGORY
8292      ,ATTRIBUTE1
8293      ,ATTRIBUTE2
8294      ,ATTRIBUTE3
8295      ,ATTRIBUTE4
8296      ,ATTRIBUTE5
8297      ,ATTRIBUTE6
8298      ,ATTRIBUTE7
8299      ,ATTRIBUTE8
8300      ,ATTRIBUTE9
8301      ,ATTRIBUTE10
8302      ,ATTRIBUTE11
8303      ,ATTRIBUTE12
8304      ,ATTRIBUTE13
8305      ,ATTRIBUTE14
8306      ,ATTRIBUTE15
8307      ,SECURITY_GROUP_ID
8308      ,CPL_ID
8309      ,PRIMARY_YN
8310      ,BILL_TO_SITE_USE_ID
8311      ,CUST_ACCT_ID
8312      ,ORIG_SYSTEM_ID1
8313      ,ORIG_SYSTEM_REFERENCE1
8314      ,ORIG_SYSTEM_SOURCE_CODE
8315      ,CREATED_BY
8316      ,CREATION_DATE
8317      ,LAST_UPDATED_BY
8318      ,LAST_UPDATE_DATE
8319      ,LAST_UPDATE_LOGIN
8320    )
8321    SELECT
8322      OkcPRBRecTab.OkcPRB_NewID(i)
8323     ,OkcPRBRecTab.OkcPRB_NewChrID(i)
8324     ,OkcPRBRecTab.OkcPRB_NewCleID(i)
8325     ,OkcPRBRecTab.OkcPRB_NewDnzChrID(i)
8326     ,OkcPRBRecTab.OkcPRB_RLE_CODE(i)
8327     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID1(i)
8328     ,OkcPRBRecTab.OkcPRB_OBJECT1_ID2(i)
8329     ,OkcPRBRecTab.OkcPRB_JTOT_OBJECT1_CODE(i)
8330     ,OkcPRBRecTab.OkcPRB_OBJECT_VERSION_NUMBER(i)
8331     ,OkcPRBRecTab.OkcPRB_CODE(i)
8332     ,OkcPRBRecTab.OkcPRB_FACILITY(i)
8333     ,OkcPRBRecTab.OkcPRB_MINOR_GROUP_LOOKUP_CODE(i)
8334     ,OkcPRBRecTab.OkcPRB_SMALL_BUSINESS_FLAG(i)
8335     ,OkcPRBRecTab.OkcPRB_WOMEN_OWNED_FLAG(i)
8336     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE_CATEGORY(i)
8337     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE1(i)
8338     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE2(i)
8339     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE3(i)
8340     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE4(i)
8341     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE5(i)
8342     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE6(i)
8343     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE7(i)
8344     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE8(i)
8345     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE9(i)
8346     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE10(i)
8347     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE11(i)
8348     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE12(i)
8349     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE13(i)
8350     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE14(i)
8351     ,OkcPRBRecTab.OkcPRB_ATTRIBUTE15(i)
8352     ,OkcPRBRecTab.OkcPRB_SECURITY_GROUP_ID(i)
8353     ,OkcPRBRecTab.OkcPRB_CPL_ID(i)
8354     ,OkcPRBRecTab.OkcPRB_PRIMARY_YN(i)
8355     ,OkcPRBRecTab.OkcPRB_BILL_TO_SITE_USE_ID(i)
8356     ,OkcPRBRecTab.OkcPRB_CUST_ACCT_ID(i)
8357     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_ID1(i)
8358     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_REFERENCE1(i)
8359     ,OkcPRBRecTab.OkcPRB_ORIG_SYSTEM_SOURCE_CODE(i)
8360     ,FND_GLOBAL.USER_ID
8361     ,SYSDATE
8362     ,FND_GLOBAL.USER_ID
8363     ,SYSDATE
8364     ,FND_GLOBAL.LOGIN_ID
8365     FROM DUAL;
8366 
8367    IF (P_Partial_Copy_YN = 'N') THEN
8368     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8369          FND_LOG.string(FND_LOG.level_statement
8370                         ,l_module_name
8371                         ,'EXITing from GetOkcPRBFull'
8372                          );
8373     END IF;
8374 
8375     EXIT WHEN GetOkcPRBFull%NOTFOUND;
8376    ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) THEN
8377     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8378          FND_LOG.string(FND_LOG.level_statement
8379                         ,l_module_name
8380                         ,'EXITing from GetOkcPRBPartial'
8381                          );
8382     END IF;
8383 
8384     EXIT WHEN GetOkcPRBPartial%NOTFOUND;
8385    END IF;
8386 
8387   END LOOP;
8388      IF GetOkcPRBFull%ISOPEN THEN
8389        CLOSE GetOkcPRBFull;
8390      ELSIF GetOkcPRBPartial%ISOPEN THEN
8391        CLOSE GetOkcPRBPartial;
8392      END IF;
8393 
8394     EXCEPTION
8395         WHEN OTHERS THEN
8396         IF GetOkcPRBFull%ISOPEN THEN
8397          CLOSE GetOkcPRBFull;
8398         ELSIF GetOkcPRBPartial%ISOPEN THEN
8399          CLOSE GetOkcPRBPartial;
8400         END IF;
8401           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8402           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
8403           RAISE;
8404 
8405  End copy_okc_k_party_roles_b;
8406 
8407 ---------------------------------------------------------------------------------
8408 
8409 --==================================================
8410 -- 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
8411 -- Parameters: P_To_Chr_ID
8412 --==================================================
8413  PROCEDURE create_vendor_if_missing(P_From_Chr_ID IN NUMBER
8414 				   ,P_To_Chr_ID IN NUMBER
8415 				   ,p_api_version IN NUMBER
8416 				   ,p_init_msg_list IN VARCHAR2
8417 				   ,x_msg_count OUT NOCOPY NUMBER
8418 				   ,x_msg_data OUT NOCOPY VARCHAR2
8419 			           ,x_return_status OUT NOCOPY VARCHAR2) IS
8420 
8421  l_api_name        CONSTANT VARCHAR2(30) := 'CREATE_VENDOR_IF_MISSING';
8422  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8423 
8424  l_cplv_rec cplv_rec_type;
8425  x_cplv_rec cplv_rec_type;
8426  l_vendor_role_id NUMBER;
8427  l_create_vendor_yn VARCHAR2(1) := 'N';
8428  l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8429 
8430  CURSOR getSourceHdrVendorPartyRoleID IS
8431  SELECT id
8432  FROM okc_k_party_roles_b
8433  WHERE dnz_chr_id = P_From_Chr_ID
8434  AND cle_id is NULL
8435  AND jtot_object1_code = 'OKX_OPERUNIT';
8436  l_Source_Vendor_PRole_ID NUMBER;
8437 
8438  Begin
8439 
8440   Begin
8441   /*modified the where clause for bug6667810*/
8442    select ID
8443    into l_vendor_role_id
8444    from okc_k_party_roles_b
8445    where dnz_chr_id = P_To_Chr_ID /*where chr_id = P_To_Chr_ID*/
8446    and jtot_object1_code = 'OKX_OPERUNIT';
8447      EXCEPTION
8448        WHEN NO_DATA_FOUND THEN
8449          l_create_vendor_yn := 'Y';
8450   End;
8451 
8452   IF (l_create_vendor_yn = 'Y') then
8453 
8454    Begin
8455     OPEN getSourceHdrVendorPartyRoleID;
8456     FETCH getSourceHdrVendorPartyRoleID INTO l_Source_Vendor_PRole_ID;
8457     CLOSE getSourceHdrVendorPartyRoleID;
8458 
8459     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8460        FND_LOG.string(FND_LOG.level_statement
8461               ,l_module_name
8462               ,'After fetching from getSourceHdrVendorPartyRoleID :'||l_Source_Vendor_PRole_ID
8463                );
8464     END IF;
8465 
8466     x_return_status := get_cplv_rec(p_cpl_id  => l_Source_Vendor_PRole_ID
8467                                    ,x_cplv_rec => l_cplv_rec);
8468 
8469     l_cplv_rec.dnz_chr_id := P_To_Chr_ID;
8470     l_cplv_rec.chr_id := P_To_Chr_ID;
8471    End;
8472 
8473  --create a record in okc_k_party_roles_b--
8474    Begin
8475       OKC_CONTRACT_PARTY_PUB.create_k_party_role(
8476            p_api_version        => p_api_version,
8477            p_init_msg_list      => p_init_msg_list,
8478            x_return_status      => x_return_status,
8479            x_msg_count          => x_msg_count,
8480            x_msg_data           => x_msg_data,
8481            p_cplv_rec           => l_cplv_rec,
8482            x_cplv_rec           => x_cplv_rec);
8483 
8484           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8485            FND_LOG.string(FND_LOG.level_statement
8486                   ,l_module_name
8487                   ,'After call to OKC_CONTRACT_PARTY_PUB.create_k_party_role : x_return_status =' ||x_return_status
8488 		  ||'K-ID:'||x_cplv_rec.dnz_chr_id
8489 		  ||'Cpl ID:'||x_cplv_rec.id
8490                    );
8491           END IF;
8492      If (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
8493           FND_MSG_PUB.add_exc_msg(G_PKG_NAME
8494 				 , l_api_name||':OKC_CONTRACT_PARTY_PUB.create_k_party_role'
8495                                  , substr(x_msg_data,1,240));
8496 	  RETURN;
8497      End If;
8498 
8499 	EXCEPTION
8500          WHEN OTHERS THEN
8501                 IF getSourceHdrVendorPartyRoleID%ISOPEN THEN
8502                   CLOSE getSourceHdrVendorPartyRoleID;
8503                 END IF;
8504                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
8505                  FND_LOG.string(FND_LOG.level_unexpected
8506                         ,l_module_name||'.EXCEPTION'
8507                         ,'Exception in create_vendor_if_missing: In call to OKC_CONTRACT_PARTY_PUB.create_k_party_role, x_return_status ='
8508 			 ||x_return_status
8509                          ||'SQLERRM ='||SQLERRM
8510                          );
8511                 END IF;
8512 
8513 	  FND_MSG_PUB.add_exc_msg(G_PKG_NAME,l_api_name||':OKC_CONTRACT_PARTY_PUB.create_k_party_role', substr(SQLERRM,1,240));
8514           RAISE;
8515 
8516    End;
8517 
8518   END IF; --End If for l_create_vendor_yn check
8519 
8520 
8521  End create_vendor_if_missing;
8522 ---------------------------------------------------------------------------------
8523 --===================================================
8524 --  copy_okc_k_party_roles_tl
8525 --  Parameters: P_From_Chr_ID : Header ID of source contract
8526 --   	      P_To_Chr_ID   : Header ID of target contract
8527  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
8528  --				    or as part of component copy from UI (value = 'Y')
8529 --====================================================
8530  PROCEDURE copy_okc_k_party_roles_tl(P_From_Chr_ID IN NUMBER
8531 			    ,P_To_Chr_ID   IN NUMBER
8532 			    ,P_Partial_Copy_YN IN VARCHAR2
8533 			    ,P_Lines_Count IN NUMBER DEFAULT 0
8534 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
8535 
8536   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_PARTY_ROLES_TL';
8537   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8538 
8539   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8540  CURSOR GetOkcPRTLFull IS
8541  SELECT
8542   okcPRTL.ID AS okcPRTL_OldID
8543  ,okcPRB.ID AS okcPRTL_NewID
8544  ,okcPRTL.LANGUAGE AS okcPRTL_LANGUAGE
8545  ,okcPRTL.SOURCE_LANG AS okcPRTL_SOURCE_LANG
8546  ,okcPRTL.SFWT_FLAG AS okcPRTL_SFWT_FLAG
8547  ,okcPRTL.COGNOMEN AS okcPRTL_COGNOMEN
8548  ,okcPRTL.ALIAS AS okcPRTL_ALIAS
8549  ,okcPRTL.SECURITY_GROUP_ID AS okcPRTL_SECURITY_GROUP_ID
8550   FROM
8551   OKC_K_PARTY_ROLES_TL okcPRTL
8552   ,OKC_K_PARTY_ROLES_B okcPRB
8553   where okcPRTL.ID = okcPRB.ORIG_SYSTEM_ID1
8554   AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID;
8555 
8556  CURSOR GetOkcPRTLPartial IS
8557  SELECT
8558   okcPRTL.ID AS okcPRTL_OldID
8559  ,okcPRB.ID AS okcPRTL_NewID
8560  ,okcPRTL.LANGUAGE AS okcPRTL_LANGUAGE
8561  ,okcPRTL.SOURCE_LANG AS okcPRTL_SOURCE_LANG
8562  ,okcPRTL.SFWT_FLAG AS okcPRTL_SFWT_FLAG
8563  ,okcPRTL.COGNOMEN AS okcPRTL_COGNOMEN
8564  ,okcPRTL.ALIAS AS okcPRTL_ALIAS
8565  ,okcPRTL.SECURITY_GROUP_ID AS okcPRTL_SECURITY_GROUP_ID
8566   FROM
8567    OKC_K_PARTY_ROLES_TL okcPRTL
8568   ,OKC_K_PARTY_ROLES_B okcPRB
8569   ,OKC_K_LINES_B_TEMP okcBT
8570   where okcPRTL.ID = okcPRB.ORIG_SYSTEM_ID1
8571   AND okcPRB.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
8572   AND okcPRB.CLE_ID = okcBT.ID
8573   AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID;
8574 
8575  Begin
8576  x_return_status := l_return_status;
8577  IF (P_Partial_Copy_YN = 'N') THEN
8578   OPEN GetOkcPRTLFull;
8579  ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) THEN
8580   OPEN GetOkcPRTLPartial;
8581  END IF;
8582 
8583  LOOP
8584 
8585   If (P_Partial_Copy_YN = 'N') then
8586     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8587          FND_LOG.string(FND_LOG.level_statement
8588                         ,l_module_name
8589                         ,'FETCHing from GetOkcPRTLFull'
8590                          );
8591     END IF;
8592 
8593    FETCH GetOkcPRTLFull BULK COLLECT INTO
8594    OkcPRTLRecTab.OkcPRTL_OldID
8595   ,OkcPRTLRecTab.OkcPRTL_NewID
8596   ,OkcPRTLRecTab.OkcPRTL_LANGUAGE
8597   ,OkcPRTLRecTab.OkcPRTL_SOURCE_LANG
8598   ,OkcPRTLRecTab.OkcPRTL_SFWT_FLAG
8599   ,OkcPRTLRecTab.OkcPRTL_COGNOMEN
8600   ,OkcPRTLRecTab.OkcPRTL_ALIAS
8601   ,OkcPRTLRecTab.OkcPRTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8602   Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8603     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
8604          FND_LOG.string(FND_LOG.level_statement
8605                         ,l_module_name
8606                         ,'FETCHing from GetOkcPRTLPartial'
8607                          );
8608     END IF;
8609 
8610    FETCH GetOkcPRTLPartial BULK COLLECT INTO
8611    OkcPRTLRecTab.OkcPRTL_OldID
8612   ,OkcPRTLRecTab.OkcPRTL_NewID
8613   ,OkcPRTLRecTab.OkcPRTL_LANGUAGE
8614   ,OkcPRTLRecTab.OkcPRTL_SOURCE_LANG
8615   ,OkcPRTLRecTab.OkcPRTL_SFWT_FLAG
8616   ,OkcPRTLRecTab.OkcPRTL_COGNOMEN
8617   ,OkcPRTLRecTab.OkcPRTL_ALIAS
8618   ,OkcPRTLRecTab.OkcPRTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8619   End If;
8620 
8621  FORALL i IN OkcPRTLRecTab.OkcPRTL_NewID.FIRST .. OkcPRTLRecTab.OkcPRTL_NewID.LAST
8622  INSERT INTO OKC_K_PARTY_ROLES_TL(
8623   ID
8624  ,LANGUAGE
8625  ,SOURCE_LANG
8626  ,SFWT_FLAG
8627  ,COGNOMEN
8628  ,ALIAS
8629  ,SECURITY_GROUP_ID
8630  ,CREATED_BY
8631  ,CREATION_DATE
8632  ,LAST_UPDATED_BY
8633  ,LAST_UPDATE_DATE
8634  ,LAST_UPDATE_LOGIN
8635  )
8636  SELECT
8637   OkcPRTLRecTab.OkcPRTL_NewID(i)
8638  ,OkcPRTLRecTab.OkcPRTL_LANGUAGE(i)
8639  ,OkcPRTLRecTab.OkcPRTL_SOURCE_LANG(i)
8640  ,OkcPRTLRecTab.OkcPRTL_SFWT_FLAG(i)
8641  ,OkcPRTLRecTab.OkcPRTL_COGNOMEN(i)
8642  ,OkcPRTLRecTab.OkcPRTL_ALIAS(i)
8643  ,OkcPRTLRecTab.OkcPRTL_SECURITY_GROUP_ID(i)
8644  ,FND_GLOBAL.USER_ID
8645  ,SYSDATE
8646  ,FND_GLOBAL.USER_ID
8647  ,SYSDATE
8648  ,FND_GLOBAL.LOGIN_ID
8649  FROM DUAL;
8650 
8651   If (P_Partial_Copy_YN = 'N') then
8652    EXIT WHEN GetOkcPRTLFull%NOTFOUND;
8653   Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8654    EXIT WHEN GetOkcPRTLPartial%NOTFOUND;
8655   End If;
8656 
8657  END LOOP;
8658  If (GetOkcPRTLFull%ISOPEN) then
8659   CLOSE GetOkcPRTLFull;
8660  Elsif (GetOkcPRTLPartial%ISOPEN) then
8661   CLOSE GetOkcPRTLPartial;
8662  End If;
8663 
8664     EXCEPTION
8665         WHEN OTHERS THEN
8666         If GetOkcPRTLFull%ISOPEN then
8667           CLOSE GetOkcPRTLFull;
8668         Elsif GetOkcPRTLPartial%ISOPEN then
8669           CLOSE GetOkcPRTLPartial;
8670         End If;
8671           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8672           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
8673           RAISE;
8674 
8675 
8676  End copy_okc_k_party_roles_tl;
8677 
8678 
8679 --===================================================
8680 --  copy_okc_contacts
8681 --  Parameters: P_From_Chr_ID : Header ID of source contract
8682 --   	      P_To_Chr_ID   : Header ID of target contract
8683  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
8684  --				    or as part of component copy from UI (value = 'Y')
8685 --====================================================
8686  PROCEDURE copy_okc_contacts(P_From_Chr_ID IN NUMBER
8687 			    ,P_To_Chr_ID   IN NUMBER
8688 			    ,P_Partial_Copy_YN IN VARCHAR2
8689 			    ,P_Lines_Count IN NUMBER DEFAULT 0
8690 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
8691 
8692   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_CONTACTS';
8693   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8694 
8695   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8696  CURSOR GetOkcCFull IS
8697  SELECT
8698    okcC.ID AS okcC_OldID
8699  , To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcC_NewID
8700  , okcPRB.ID AS okcC_NewCplID
8701  , okcC.CRO_CODE AS okcC_CRO_CODE
8702  , okcPRB.DNZ_CHR_ID AS okcC_NewDnzChrID
8703  , okcC.OBJECT1_ID1 AS okcC_OBJECT1_ID1
8704  , okcC.OBJECT1_ID2 AS okcC_OBJECT1_ID2
8705  , okcC.JTOT_OBJECT1_CODE AS okcC_JTOT_OBJECT1_CODE
8706  , 1 AS okcC_OBJECT_VERSION_NUMBER
8707  , okcC.CONTACT_SEQUENCE AS okcC_CONTACT_SEQUENCE
8708  , okcC.ATTRIBUTE_CATEGORY AS okcC_ATTRIBUTE_CATEGORY
8709  , okcC.ATTRIBUTE1 AS okcC_ATTRIBUTE1
8710  , okcC.ATTRIBUTE2 AS okcC_ATTRIBUTE2
8711  , okcC.ATTRIBUTE3 AS okcC_ATTRIBUTE3
8712  , okcC.ATTRIBUTE4 AS okcC_ATTRIBUTE4
8713  , okcC.ATTRIBUTE5 AS okcC_ATTRIBUTE5
8714  , okcC.ATTRIBUTE6 AS okcC_ATTRIBUTE6
8715  , okcC.ATTRIBUTE7 AS okcC_ATTRIBUTE7
8716  , okcC.ATTRIBUTE8 AS okcC_ATTRIBUTE8
8717  , okcC.ATTRIBUTE9 AS okcC_ATTRIBUTE9
8718  , okcC.ATTRIBUTE10 AS okcC_ATTRIBUTE10
8719  , okcC.ATTRIBUTE11 AS okcC_ATTRIBUTE11
8720  , okcC.ATTRIBUTE12 AS okcC_ATTRIBUTE12
8721  , okcC.ATTRIBUTE13 AS okcC_ATTRIBUTE13
8722  , okcC.ATTRIBUTE14 AS okcC_ATTRIBUTE14
8723  , okcC.ATTRIBUTE15 AS okcC_ATTRIBUTE15
8724  , okcC.SECURITY_GROUP_ID AS okcC_SECURITY_GROUP_ID
8725  , okcC.START_DATE AS okcC_START_DATE
8726  , okcC.END_DATE AS okcC_END_DATE
8727  , okcC.PRIMARY_YN AS okcC_PRIMARY_YN
8728  , okcC.RESOURCE_CLASS AS okcC_RESOURCE_CLASS
8729  , okcC.SALES_GROUP_ID AS okcC_SALES_GROUP_ID
8730  FROM
8731    OKC_CONTACTS okcC
8732   ,OKC_K_PARTY_ROLES_B okcPRB
8733    WHERE okcC.CPL_ID = okcPRB.ORIG_SYSTEM_ID1
8734    AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID
8735    AND okcC.DNZ_CHR_ID = P_From_Chr_ID;
8736 
8737  CURSOR GetOkcCPartial IS
8738  SELECT
8739    okcC.ID AS okcC_OldID
8740  , To_number(rawtohex(sys_guid()), HexFormatStr)   AS okcC_NewID
8741  , okcPRB.ID AS okcC_NewCplID
8742  , okcC.CRO_CODE AS okcC_CRO_CODE
8743  , okcPRB.DNZ_CHR_ID AS okcC_NewDnzChrID
8744  , okcC.OBJECT1_ID1 AS okcC_OBJECT1_ID1
8745  , okcC.OBJECT1_ID2 AS okcC_OBJECT1_ID2
8746  , okcC.JTOT_OBJECT1_CODE AS okcC_JTOT_OBJECT1_CODE
8747  , 1 AS okcC_OBJECT_VERSION_NUMBER
8748  , okcC.CONTACT_SEQUENCE AS okcC_CONTACT_SEQUENCE
8749  , okcC.ATTRIBUTE_CATEGORY AS okcC_ATTRIBUTE_CATEGORY
8750  , okcC.ATTRIBUTE1 AS okcC_ATTRIBUTE1
8751  , okcC.ATTRIBUTE2 AS okcC_ATTRIBUTE2
8752  , okcC.ATTRIBUTE3 AS okcC_ATTRIBUTE3
8753  , okcC.ATTRIBUTE4 AS okcC_ATTRIBUTE4
8754  , okcC.ATTRIBUTE5 AS okcC_ATTRIBUTE5
8755  , okcC.ATTRIBUTE6 AS okcC_ATTRIBUTE6
8756  , okcC.ATTRIBUTE7 AS okcC_ATTRIBUTE7
8757  , okcC.ATTRIBUTE8 AS okcC_ATTRIBUTE8
8758  , okcC.ATTRIBUTE9 AS okcC_ATTRIBUTE9
8759  , okcC.ATTRIBUTE10 AS okcC_ATTRIBUTE10
8760  , okcC.ATTRIBUTE11 AS okcC_ATTRIBUTE11
8761  , okcC.ATTRIBUTE12 AS okcC_ATTRIBUTE12
8762  , okcC.ATTRIBUTE13 AS okcC_ATTRIBUTE13
8763  , okcC.ATTRIBUTE14 AS okcC_ATTRIBUTE14
8764  , okcC.ATTRIBUTE15 AS okcC_ATTRIBUTE15
8765  , okcC.SECURITY_GROUP_ID AS okcC_SECURITY_GROUP_ID
8766  , okcC.START_DATE AS okcC_START_DATE
8767  , okcC.END_DATE AS okcC_END_DATE
8768  , okcC.PRIMARY_YN AS okcC_PRIMARY_YN
8769  , okcC.RESOURCE_CLASS AS okcC_RESOURCE_CLASS
8770  , okcC.SALES_GROUP_ID AS okcC_SALES_GROUP_ID
8771  FROM
8772    OKC_CONTACTS okcC
8773   ,OKC_K_PARTY_ROLES_B okcPRB
8774   ,OKC_K_LINES_B_TEMP okcBT
8775    WHERE okcC.CPL_ID = okcPRB.ORIG_SYSTEM_ID1
8776    AND okcPRB.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
8777    AND okcPRB.CLE_ID = okcBT.ID
8778    AND okcPRB.DNZ_CHR_ID = P_To_Chr_ID
8779    AND okcPRB.CHR_ID IS NULL
8780    AND okcC.DNZ_CHR_ID = P_From_Chr_ID;
8781 
8782  Begin
8783   x_return_status := l_return_status;
8784   If (P_Partial_Copy_YN = 'N') then
8785     OPEN GetOkcCFull;
8786   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
8787     OPEN GetOkcCPartial;
8788   End If;
8789 
8790   LOOP
8791    If (P_Partial_Copy_YN = 'N') then
8792      FETCH GetOkcCFull BULK COLLECT INTO
8793           OkcCRecTab.OkcC_OldID
8794      	, OkcCRecTab.OkcC_NewID
8795      	, OkcCRecTab.OkcC_NewCplID
8796 	, OkcCRecTab.OkcC_CRO_CODE
8797 	, OkcCRecTab.OkcC_NewDnzChrID
8798 	, OkcCRecTab.OkcC_OBJECT1_ID1
8799 	, OkcCRecTab.OkcC_OBJECT1_ID2
8800 	, OkcCRecTab.OkcC_JTOT_OBJECT1_CODE
8801 	, OkcCRecTab.OkcC_OBJECT_VERSION_NUMBER
8802 	, OkcCRecTab.OkcC_CONTACT_SEQUENCE
8803 	, OkcCRecTab.OkcC_ATTRIBUTE_CATEGORY
8804 	, OkcCRecTab.OkcC_ATTRIBUTE1
8805 	, OkcCRecTab.OkcC_ATTRIBUTE2
8806 	, OkcCRecTab.OkcC_ATTRIBUTE3
8807 	, OkcCRecTab.OkcC_ATTRIBUTE4
8808 	, OkcCRecTab.OkcC_ATTRIBUTE5
8809 	, OkcCRecTab.OkcC_ATTRIBUTE6
8810 	, OkcCRecTab.OkcC_ATTRIBUTE7
8811 	, OkcCRecTab.OkcC_ATTRIBUTE8
8812 	, OkcCRecTab.OkcC_ATTRIBUTE9
8813 	, OkcCRecTab.OkcC_ATTRIBUTE10
8814 	, OkcCRecTab.OkcC_ATTRIBUTE11
8815 	, OkcCRecTab.OkcC_ATTRIBUTE12
8816 	, OkcCRecTab.OkcC_ATTRIBUTE13
8817 	, OkcCRecTab.OkcC_ATTRIBUTE14
8818 	, OkcCRecTab.OkcC_ATTRIBUTE15
8819 	, OkcCRecTab.OkcC_SECURITY_GROUP_ID
8820 	, OkcCRecTab.OkcC_START_DATE
8821 	, OkcCRecTab.OkcC_END_DATE
8822 	, OkcCRecTab.OkcC_PRIMARY_YN
8823 	, OkcCRecTab.OkcC_RESOURCE_CLASS
8824 	, OkcCRecTab.OkcC_SALES_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8825    Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8826      FETCH GetOkcCPartial BULK COLLECT INTO
8827           OkcCRecTab.OkcC_OldID
8828      	, OkcCRecTab.OkcC_NewID
8829      	, OkcCRecTab.OkcC_NewCplID
8830 	, OkcCRecTab.OkcC_CRO_CODE
8831 	, OkcCRecTab.OkcC_NewDnzChrID
8832 	, OkcCRecTab.OkcC_OBJECT1_ID1
8833 	, OkcCRecTab.OkcC_OBJECT1_ID2
8834 	, OkcCRecTab.OkcC_JTOT_OBJECT1_CODE
8835 	, OkcCRecTab.OkcC_OBJECT_VERSION_NUMBER
8836 	, OkcCRecTab.OkcC_CONTACT_SEQUENCE
8837 	, OkcCRecTab.OkcC_ATTRIBUTE_CATEGORY
8838 	, OkcCRecTab.OkcC_ATTRIBUTE1
8839 	, OkcCRecTab.OkcC_ATTRIBUTE2
8840 	, OkcCRecTab.OkcC_ATTRIBUTE3
8841 	, OkcCRecTab.OkcC_ATTRIBUTE4
8842 	, OkcCRecTab.OkcC_ATTRIBUTE5
8843 	, OkcCRecTab.OkcC_ATTRIBUTE6
8844 	, OkcCRecTab.OkcC_ATTRIBUTE7
8845 	, OkcCRecTab.OkcC_ATTRIBUTE8
8846 	, OkcCRecTab.OkcC_ATTRIBUTE9
8847 	, OkcCRecTab.OkcC_ATTRIBUTE10
8848 	, OkcCRecTab.OkcC_ATTRIBUTE11
8849 	, OkcCRecTab.OkcC_ATTRIBUTE12
8850 	, OkcCRecTab.OkcC_ATTRIBUTE13
8851 	, OkcCRecTab.OkcC_ATTRIBUTE14
8852 	, OkcCRecTab.OkcC_ATTRIBUTE15
8853 	, OkcCRecTab.OkcC_SECURITY_GROUP_ID
8854 	, OkcCRecTab.OkcC_START_DATE
8855 	, OkcCRecTab.OkcC_END_DATE
8856 	, OkcCRecTab.OkcC_PRIMARY_YN
8857 	, OkcCRecTab.OkcC_RESOURCE_CLASS
8858 	, OkcCRecTab.OkcC_SALES_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
8859    End If;
8860 
8861 
8862    FORALL i IN OkcCRecTab.OkcC_NewID.FIRST .. OkcCRecTab.OkcC_NewID.LAST
8863    INSERT INTO OKC_CONTACTS(
8864      	  ID
8865 	, CPL_ID
8866 	, CRO_CODE
8867 	, DNZ_CHR_ID
8868 	, OBJECT1_ID1
8869 	, OBJECT1_ID2
8870 	, JTOT_OBJECT1_CODE
8871 	, OBJECT_VERSION_NUMBER
8872 	, CONTACT_SEQUENCE
8873 	, ATTRIBUTE_CATEGORY
8874 	, ATTRIBUTE1
8875 	, ATTRIBUTE2
8876 	, ATTRIBUTE3
8877 	, ATTRIBUTE4
8878 	, ATTRIBUTE5
8879 	, ATTRIBUTE6
8880 	, ATTRIBUTE7
8881 	, ATTRIBUTE8
8882 	, ATTRIBUTE9
8883 	, ATTRIBUTE10
8884 	, ATTRIBUTE11
8885 	, ATTRIBUTE12
8886 	, ATTRIBUTE13
8887 	, ATTRIBUTE14
8888 	, ATTRIBUTE15
8889 	, SECURITY_GROUP_ID
8890 	, START_DATE
8891 	, END_DATE
8892 	, PRIMARY_YN
8893 	, RESOURCE_CLASS
8894 	, SALES_GROUP_ID
8895 	, CREATED_BY
8896 	, CREATION_DATE
8897 	, LAST_UPDATED_BY
8898 	, LAST_UPDATE_DATE
8899 	, LAST_UPDATE_LOGIN
8900       )
8901     SELECT
8902           OkcCRecTab.OkcC_NewID(i)
8903 	, OkcCRecTab.OkcC_NewCplID(i)
8904 	, OkcCRecTab.OkcC_CRO_CODE(i)
8905 	, OkcCRecTab.OkcC_NewDnzChrID(i)
8906 	, OkcCRecTab.OkcC_OBJECT1_ID1(i)
8907 	, OkcCRecTab.OkcC_OBJECT1_ID2(i)
8908 	, OkcCRecTab.OkcC_JTOT_OBJECT1_CODE(i)
8909 	, OkcCRecTab.OkcC_OBJECT_VERSION_NUMBER(i)
8910 	, OkcCRecTab.OkcC_CONTACT_SEQUENCE(i)
8911 	, OkcCRecTab.OkcC_ATTRIBUTE_CATEGORY(i)
8912 	, OkcCRecTab.OkcC_ATTRIBUTE1(i)
8913 	, OkcCRecTab.OkcC_ATTRIBUTE2(i)
8914 	, OkcCRecTab.OkcC_ATTRIBUTE3(i)
8915 	, OkcCRecTab.OkcC_ATTRIBUTE4(i)
8916 	, OkcCRecTab.OkcC_ATTRIBUTE5(i)
8917 	, OkcCRecTab.OkcC_ATTRIBUTE6(i)
8918 	, OkcCRecTab.OkcC_ATTRIBUTE7(i)
8919 	, OkcCRecTab.OkcC_ATTRIBUTE8(i)
8920 	, OkcCRecTab.OkcC_ATTRIBUTE9(i)
8921 	, OkcCRecTab.OkcC_ATTRIBUTE10(i)
8922 	, OkcCRecTab.OkcC_ATTRIBUTE11(i)
8923 	, OkcCRecTab.OkcC_ATTRIBUTE12(i)
8924 	, OkcCRecTab.OkcC_ATTRIBUTE13(i)
8925 	, OkcCRecTab.OkcC_ATTRIBUTE14(i)
8926 	, OkcCRecTab.OkcC_ATTRIBUTE15(i)
8927 	, OkcCRecTab.OkcC_SECURITY_GROUP_ID(i)
8928 	, OkcCRecTab.OkcC_START_DATE(i)
8929 	, OkcCRecTab.OkcC_END_DATE(i)
8930 	, OkcCRecTab.OkcC_PRIMARY_YN(i)
8931 	, OkcCRecTab.OkcC_RESOURCE_CLASS(i)
8932 	, OkcCRecTab.OkcC_SALES_GROUP_ID(i)
8933 	, FND_GLOBAL.USER_ID
8934 	, SYSDATE
8935 	, FND_GLOBAL.USER_ID
8936 	, SYSDATE
8937 	, FND_GLOBAL.LOGIN_ID
8938 	FROM DUAL;
8939 
8940         /*cgopinee Bug fix for 6882512*/
8941         OKC_CTC_PVT.update_contact_stecode(p_chr_id => P_To_Chr_ID,
8942                            x_return_status=>l_return_status);
8943 
8944         IF l_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
8945             RAISE OKC_API.G_EXCEPTION_ERROR;
8946         END IF;
8947 
8948         IF (P_Partial_Copy_YN = 'N') then
8949 	  EXIT WHEN GetOkcCFull%NOTFOUND;
8950         ELSIF (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
8951           EXIT WHEN GetOkcCPartial%NOTFOUND;
8952         END IF;
8953 
8954     END LOOP;
8955     If (GetOkcCFull%ISOPEN) then
8956 	CLOSE GetOkcCFull;
8957     Elsif (GetOkcCPartial%ISOPEN) then
8958         CLOSE GetOkcCPartial;
8959     End If;
8960 
8961     EXCEPTION
8962         WHEN OTHERS THEN
8963 	If (GetOkcCFull%ISOPEN) then
8964 	  CLOSE GetOkcCFull;
8965         Elsif (GetOkcCPartial%ISOPEN) then
8966           CLOSE GetOkcCPartial;
8967 	End If;
8968           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8969           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
8970           RAISE;
8971 
8972 
8973  End copy_okc_contacts;
8974 
8975 
8976 --===================================================
8977 --  copy_okc_operation_lines
8978 --  Parameters: P_From_Chr_ID : Header ID of source contract
8979 --              P_To_Chr_ID   : Header ID of target contract
8980 --====================================================
8981 PROCEDURE copy_okc_operation_lines(P_From_Chr_ID IN NUMBER
8982 				  ,P_To_Chr_ID IN NUMBER
8983 				  ,x_return_status OUT NOCOPY VARCHAR2) IS
8984 
8985   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKC_OPERATION_LINES';
8986   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
8987 
8988   l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
8989 
8990   CURSOR GetOIEID IS
8991   SELECT ID
8992   from OKC_OPERATION_INSTANCES
8993   WHERE TARGET_CHR_ID = P_To_Chr_ID;
8994   l_OIE_ID NUMBER;
8995 
8996   CURSOR GetOkcOLFull IS
8997   SELECT
8998    To_number(rawtohex(sys_guid()), HexFormatStr)   AS OkcOL_ID
8999   ,NULL AS OkcOL_SELECT_YN
9000   ,'P' AS OkcOL_PROCESS_FLAG
9001   ,l_OIE_ID AS OkcOL_OIE_ID
9002   ,P_To_Chr_ID AS OkcOL_SUBJECT_CHR_ID
9003   ,P_From_Chr_ID AS OkcOL_OBJECT_CHR_ID
9004   ,okcB.ID AS OkcOL_SUBJECT_CLE_ID
9005   ,okcB.ORIG_SYSTEM_ID1 AS OkcOL_OBJECT_CLE_ID
9006   ,1 AS OkcOL_OBJECT_VERSION_NUMBER
9007   ,NULL AS OkcOL_REQUEST_ID
9008   ,NULL AS OkcOL_PROGRAM_APPLICATION_ID
9009   ,NULL AS OkcOL_PROGRAM_ID
9010   ,NULL AS OkcOL_PROGRAM_UPDATE_DATE
9011   ,NULL AS OkcOK_SECURITY_GROUP_ID
9012   ,NULL AS OkcOL_MESSAGE_CODE
9013   ,NULL AS OkcOL_PARENT_OLE_ID
9014   ,'Y' AS OkcOL_ACTIVE_YN
9015   FROM
9016    OKC_K_LINES_B okcB
9017   WHERE
9018    okcB.DNZ_CHR_ID = P_To_Chr_ID;
9019 
9020  Begin
9021   x_return_status := l_return_status;
9022 
9023   OPEN GetOIEID;
9024   FETCH GetOIEID into l_OIE_ID;
9025   CLOSE GetOIEID;
9026 
9027   OPEN GetOkcOLFull;
9028   LOOP
9029   FETCH GetOkcOLFull BULK COLLECT INTO
9030    OkcOLRecTab.OkcOLID
9031   ,OkcOLRecTab.OkcOLSELECT_YN
9032   ,OkcOLRecTab.OkcOLPROCESS_FLAG
9033   ,OkcOLRecTab.OkcOLOIE_ID
9034   ,OkcOLRecTab.OkcOLSUBJECT_CHR_ID
9035   ,OkcOLRecTab.OkcOLOBJECT_CHR_ID
9036   ,OkcOLRecTab.OkcOLSUBJECT_CLE_ID
9037   ,OkcOLRecTab.OkcOLOBJECT_CLE_ID
9038   ,OkcOLRecTab.OkcOLOBJECT_VERSION_NUMBER
9039   ,OkcOLRecTab.OkcOLREQUEST_ID
9040   ,OkcOLRecTab.OkcOLPROGRAM_APPLICATION_ID
9041   ,OkcOLRecTab.OkcOLPROGRAM_ID
9042   ,OkcOLRecTab.OkcOLPROGRAM_UPDATE_DATE
9043   ,OkcOLRecTab.OkcOLSECURITY_GROUP_ID
9044   ,OkcOLRecTab.OkcOLMESSAGE_CODE
9045   ,OkcOLRecTab.OkcOLPARENT_OLE_ID
9046   ,OkcOLRecTab.OkcOLACTIVE_YN
9047   LIMIT G_BULK_FETCH_LIMIT;
9048 
9049    FORALL i in OkcOLRecTab.OkcOLID.FIRST .. OkcOLRecTab.OkcOLID.LAST
9050      INSERT INTO OKC_OPERATION_LINES(
9051       ID
9052      ,SELECT_YN
9053      ,PROCESS_FLAG
9054      ,OIE_ID
9055      ,SUBJECT_CHR_ID
9056      ,OBJECT_CHR_ID
9057      ,SUBJECT_CLE_ID
9058      ,OBJECT_CLE_ID
9059      ,OBJECT_VERSION_NUMBER
9060      ,REQUEST_ID
9061      ,PROGRAM_APPLICATION_ID
9062      ,PROGRAM_ID
9063      ,PROGRAM_UPDATE_DATE
9064      ,SECURITY_GROUP_ID
9065      ,MESSAGE_CODE
9066      ,PARENT_OLE_ID
9067      ,ACTIVE_YN
9068      ,CREATED_BY
9069      ,CREATION_DATE
9070      ,LAST_UPDATED_BY
9071      ,LAST_UPDATE_DATE
9072      ,LAST_UPDATE_LOGIN
9073     )
9074     SELECT
9075     OkcOLRecTab.OkcOLID(i)
9076    ,OkcOLRecTab.OkcOLSELECT_YN(i)
9077    ,OkcOLRecTab.OkcOLPROCESS_FLAG(i)
9078    ,OkcOLRecTab.OkcOLOIE_ID(i)
9079    ,OkcOLRecTab.OkcOLSUBJECT_CHR_ID(i)
9080    ,OkcOLRecTab.OkcOLOBJECT_CHR_ID(i)
9081    ,OkcOLRecTab.OkcOLSUBJECT_CLE_ID(i)
9082    ,OkcOLRecTab.OkcOLOBJECT_CLE_ID(i)
9083    ,OkcOLRecTab.OkcOLOBJECT_VERSION_NUMBER(i)
9084    ,OkcOLRecTab.OkcOLREQUEST_ID(i)
9085    ,OkcOLRecTab.OkcOLPROGRAM_APPLICATION_ID(i)
9086    ,OkcOLRecTab.OkcOLPROGRAM_ID(i)
9087    ,OkcOLRecTab.OkcOLPROGRAM_UPDATE_DATE(i)
9088    ,OkcOLRecTab.OkcOLSECURITY_GROUP_ID(i)
9089    ,OkcOLRecTab.OkcOLMESSAGE_CODE(i)
9090    ,OkcOLRecTab.OkcOLPARENT_OLE_ID(i)
9091    ,OkcOLRecTab.OkcOLACTIVE_YN(i)
9092    ,FND_GLOBAL.USER_ID
9093    ,SYSDATE
9094    ,FND_GLOBAL.USER_ID
9095    ,SYSDATE
9096    ,FND_GLOBAL.LOGIN_ID
9097    FROM DUAL;
9098      EXIT WHEN GetOkcOLFull%NOTFOUND;
9099   END LOOP;
9100 
9101    CLOSE GetOkcOLFull;
9102 
9103    --------Update of PARENT_OLE_ID for Operation Lines created for Top Lines----------------
9104    UPDATE okc_operation_lines ola
9105    set ola.PARENT_OLE_ID = (select olb.ID
9106 			  from okc_operation_lines olb
9107                           where olb.SUBJECT_CHR_ID = P_To_Chr_ID
9108 			  and olb.SUBJECT_CLE_ID IS NULL)
9109    where
9110    ola.SUBJECT_CHR_ID = P_To_Chr_ID
9111    AND ola.SUBJECT_CLE_ID in (SELECT okcb.ID
9112 			    from
9113                             OKC_K_LINES_B okcb
9114 			    WHERE
9115 			    okcb.DNZ_CHR_ID = P_To_Chr_ID
9116 			    AND okcb.CLE_ID IS NULL);
9117    ------------------------------------------------------------------------------------------
9118    --------Update of PARENT_OLE_ID for Operation Lines created for Sub Lines Lines-----------
9119    UPDATE okc_operation_lines ola
9120    set ola.PARENT_OLE_ID = (select olb.ID
9121 			    from okc_operation_lines olb
9122 			    where olb.SUBJECT_CLE_ID = (select b.CLE_ID from
9123 						        okc_k_lines_b b
9124 							where b.ID = ola.SUBJECT_CLE_ID
9125                                                        )
9126                            )
9127    where
9128    ola.SUBJECT_CHR_ID = P_To_Chr_ID
9129    and ola.SUBJECT_CLE_ID in (select okcB.ID
9130 			      from
9131 			      OKC_K_LINES_B okcB
9132 			      where okcB.ID = ola.SUBJECT_CLE_ID
9133                               and okcB.CLE_ID IS NOT NULL);
9134    ------------------------------------------------------------------------------------------
9135 
9136      EXCEPTION
9137        WHEN OTHERS THEN
9138          If GetOkcOLFull%ISOPEN then
9139            CLOSE GetOkcOLFull;
9140          End If;
9141          If GetOIEID%ISOPEN then
9142            CLOSE GetOIEID;
9143          End If;
9144           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9145           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9146           RAISE;
9147 
9148  End copy_okc_operation_lines;
9149 
9150 
9151 --===================================================
9152 --  copy_oks_k_lines_tl
9153 --  Parameters: P_From_Chr_ID : Header ID of source contract
9154 --   	        P_To_Chr_ID   : Header ID of target contract
9155  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9156  --				    or as part of component copy from UI (value = 'Y')
9157 --====================================================
9158  PROCEDURE copy_oks_k_lines_tl(P_From_Chr_ID IN NUMBER
9159 			    ,P_To_Chr_ID   IN NUMBER
9160 			    ,P_Partial_Copy_YN IN VARCHAR2
9161 			    ,P_Lines_Count IN NUMBER DEFAULT 0
9162 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
9163 
9164   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_K_LINES_TL';
9165   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9166 
9167   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9168   CURSOR GetOksTLFull IS
9169   SELECT
9170 	  oksTL.ID AS oksTL_OldID
9171     	, oksB.ID AS oksTL_NewID
9172 	, oksTL.LANGUAGE AS oksTL_LANGUAGE
9173 	, oksTL.SOURCE_LANG AS oksTL_SOURCE_LANG
9174 	, oksTL.SFWT_FLAG AS oksTL_SFWT_FLAG
9175 	, oksTL.INVOICE_TEXT AS oksTL_INVOICE_TEXT
9176 	, oksTL.IB_TRX_DETAILS AS oksTL_IB_TRX_DETAILS
9177 	, oksTL.STATUS_TEXT AS oksTL_STATUS_TEXT
9178 	, oksTL.REACT_TIME_NAME AS oksTL_REACT_TIME_NAME
9179 	, oksTL.SECURITY_GROUP_ID AS oksTL_SECURITY_GROUP_ID
9180   FROM
9181    OKS_K_LINES_TL oksTL
9182   ,OKS_K_LINES_B oksB
9183   WHERE oksTL.ID = oksB.ORIG_SYSTEM_ID1
9184   AND oksB.DNZ_CHR_ID = P_To_Chr_ID;
9185 
9186   CURSOR GetOksTLPartial IS
9187   SELECT
9188 	  oksTL.ID AS oksTL_OldID
9189     	, oksB.ID AS oksTL_NewID
9190 	, oksTL.LANGUAGE AS oksTL_LANGUAGE
9191 	, oksTL.SOURCE_LANG AS oksTL_SOURCE_LANG
9192 	, oksTL.SFWT_FLAG AS oksTL_SFWT_FLAG
9193 	, oksTL.INVOICE_TEXT AS oksTL_INVOICE_TEXT
9194 	, oksTL.IB_TRX_DETAILS AS oksTL_IB_TRX_DETAILS
9195 	, oksTL.STATUS_TEXT AS oksTL_STATUS_TEXT
9196 	, oksTL.REACT_TIME_NAME AS oksTL_REACT_TIME_NAME
9197 	, oksTL.SECURITY_GROUP_ID AS oksTL_SECURITY_GROUP_ID
9198   FROM
9199    OKS_K_LINES_TL oksTL
9200   ,OKS_K_LINES_B oksB
9201   ,OKC_K_LINES_B_TEMP okcBT
9202   WHERE oksTL.ID = oksB.ORIG_SYSTEM_ID1
9203   AND oksB.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
9204   AND oksB.CLE_ID = okcBT.ID
9205   AND oksB.DNZ_CHR_ID = P_To_Chr_ID;
9206 
9207   Begin
9208     x_return_status := l_return_status;
9209 
9210     If (P_Partial_Copy_YN = 'N') then
9211       OPEN GetOksTLFull;
9212     Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
9213       OPEN GetOksTLPartial;
9214     End If;
9215 
9216     LOOP
9217      If (P_Partial_Copy_YN = 'N') then
9218 	FETCH GetOksTLFull BULK COLLECT INTO
9219  	  OksTLRecTab.OksTL_OldID
9220 	, OksTLRecTab.OksTL_NewID
9221 	, OksTLRecTab.OksTL_LANGUAGE
9222 	, OksTLRecTab.OksTL_SOURCE_LANG
9223 	, OksTLRecTab.OksTL_SFWT_FLAG
9224 	, OksTLRecTab.OksTL_INVOICE_TEXT
9225 	, OksTLRecTab.OksTL_IB_TRX_DETAILS
9226 	, OksTLRecTab.OksTL_STATUS_TEXT
9227 	, OksTLRecTab.OksTL_REACT_TIME_NAME
9228 	, OksTLRecTab.OksTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9229      Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
9230 	FETCH GetOksTLPartial BULK COLLECT INTO
9231  	  OksTLRecTab.OksTL_OldID
9232 	, OksTLRecTab.OksTL_NewID
9233 	, OksTLRecTab.OksTL_LANGUAGE
9234 	, OksTLRecTab.OksTL_SOURCE_LANG
9235 	, OksTLRecTab.OksTL_SFWT_FLAG
9236 	, OksTLRecTab.OksTL_INVOICE_TEXT
9237 	, OksTLRecTab.OksTL_IB_TRX_DETAILS
9238 	, OksTLRecTab.OksTL_STATUS_TEXT
9239 	, OksTLRecTab.OksTL_REACT_TIME_NAME
9240 	, OksTLRecTab.OksTL_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9241      End If;
9242 
9243      FORALL i IN OksTLRecTab.OksTL_NewID.FIRST .. OksTLRecTab.OksTL_NewID.LAST
9244      INSERT INTO OKS_K_LINES_TL(
9245           ID
9246 	, LANGUAGE
9247 	, SOURCE_LANG
9248 	, SFWT_FLAG
9249 	, INVOICE_TEXT
9250 	, IB_TRX_DETAILS
9251 	, STATUS_TEXT
9252 	, REACT_TIME_NAME
9253 	, SECURITY_GROUP_ID
9254 	, CREATED_BY
9255 	, CREATION_DATE
9256 	, LAST_UPDATED_BY
9257 	, LAST_UPDATE_DATE
9258 	, LAST_UPDATE_LOGIN
9259      )
9260      SELECT
9261 	  OksTLRecTab.OksTL_NewID(i)
9262 	, OksTLRecTab.OksTL_LANGUAGE(i)
9263 	, OksTLRecTab.OksTL_SOURCE_LANG(i)
9264 	, OksTLRecTab.OksTL_SFWT_FLAG(i)
9265 	, OksTLRecTab.OksTL_INVOICE_TEXT(i)
9266 	, OksTLRecTab.OksTL_IB_TRX_DETAILS(i)
9267 	, OksTLRecTab.OksTL_STATUS_TEXT(i)
9268 	, OksTLRecTab.OksTL_REACT_TIME_NAME(i)
9269 	, OksTLRecTab.OksTL_SECURITY_GROUP_ID(i)
9270 	, FND_GLOBAL.USER_ID
9271 	, SYSDATE
9272 	, FND_GLOBAL.USER_ID
9273 	, SYSDATE
9274 	, FND_GLOBAL.LOGIN_ID
9275      FROM DUAL;
9276 
9277      If (P_Partial_Copy_YN = 'N') then
9278 	EXIT WHEN GetOksTLFull%NOTFOUND;
9279      Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9280         EXIT WHEN GetOksTLPartial%NOTFOUND;
9281      End If;
9282 
9283     END LOOP;
9284 
9285     If GetOksTLFull%ISOPEN then
9286 	CLOSE GetOksTLFull;
9287     Elsif GetOksTLPartial%ISOPEN then
9288         CLOSE GetOksTLPartial;
9289     End If;
9290 
9291 	EXCEPTION
9292         WHEN OTHERS THEN
9293         If (GetOksTLFull%ISOPEN) then
9294           CLOSE GetOksTLFull;
9295 	Elsif (GetOksTLPartial%ISOPEN) then
9296           CLOSE GetOksTLPartial;
9297         End If;
9298 
9299           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9300           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9301           RAISE;
9302 
9303 
9304  END copy_oks_k_lines_tl;
9305 
9306 --===================================================
9307 --  copy_oks_rev_distributions
9308 --  Parameters: P_From_Chr_ID : Header ID of source contract
9309 --   	      P_To_Chr_ID   : Header ID of target contract
9310  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9311  --				    or as part of component copy from UI (value = 'Y')
9312 --====================================================
9313  PROCEDURE copy_oks_rev_distributions(P_From_Chr_ID IN NUMBER
9314 			    ,P_To_Chr_ID   IN NUMBER
9315 			    ,P_Partial_Copy_YN IN VARCHAR2
9316 			    ,P_Lines_Count IN NUMBER DEFAULT 0
9317 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
9318 
9319   l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_REV_DISTRIBUTIONS';
9320   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9321   l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9322 
9323   CURSOR GetOksRDFull IS
9324   SELECT
9325           oksRD.ID AS OksRD_OldID
9326         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksRD_NewID
9327 	, okcB.DNZ_CHR_ID AS OksRD_NewChrID
9328 	, okcB.ID AS OksRD_NewCleID
9329 	, oksRD.ACCOUNT_CLASS AS OksRD_ACCOUNT_CLASS
9330 	, oksRD.CODE_COMBINATION_ID AS OksRD_CODE_COMBINATION_ID
9331 	, oksRD.PERCENT AS OksRD_PERCENT
9332 	, 1 AS OksRD_OBJECT_VERSION_NUMBER
9333 	, oksRD.SECURITY_GROUP_ID AS OksRD_SECURITY_GROUP_ID
9334   FROM
9335    OKS_REV_DISTRIBUTIONS oksRD
9336   ,OKC_K_LINES_B okcB
9337   WHERE oksRD.CLE_ID = okcB.ORIG_SYSTEM_ID1
9338   AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
9339 
9340   CURSOR GetOksRDPartial IS
9341   SELECT
9342           oksRD.ID AS OksRD_OldID
9343         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksRD_NewID
9344 	, okcBT.DNZ_CHR_ID AS OksRD_NewChrID
9345 	, okcBT.ID AS OksRD_NewCleID
9346 	, oksRD.ACCOUNT_CLASS AS OksRD_ACCOUNT_CLASS
9347 	, oksRD.CODE_COMBINATION_ID AS OksRD_CODE_COMBINATION_ID
9348 	, oksRD.PERCENT AS OksRD_PERCENT
9349 	, 1 AS OksRD_OBJECT_VERSION_NUMBER
9350 	, oksRD.SECURITY_GROUP_ID AS OksRD_SECURITY_GROUP_ID
9351   FROM
9352    OKS_REV_DISTRIBUTIONS oksRD
9353   ,OKC_K_LINES_B_TEMP okcBT
9354   WHERE oksRD.CLE_ID = okcBT.ORIG_SYSTEM_ID1
9355   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
9356 
9357  Begin
9358    x_return_status := l_return_status;
9359 
9360    If (P_Partial_Copy_YN = 'N') then
9361     OPEN GetOksRDFull;
9362    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9363     OPEN GetOksRDPartial;
9364    End If;
9365 
9366    LOOP
9367     If (P_Partial_Copy_YN = 'N') then
9368       FETCH GetOksRDFull BULK COLLECT INTO
9369           OksRDRecTab.OksRD_OldID
9370        	, OksRDRecTab.OksRD_NewID
9371 	, OksRDRecTab.OksRD_NewChrID
9372 	, OksRDRecTab.OksRD_NewCleID
9373 	, OksRDRecTab.OksRD_ACCOUNT_CLASS
9374 	, OksRDRecTab.OksRD_CODE_COMBINATION_ID
9375 	, OksRDRecTab.OksRD_PERCENT
9376 	, OksRDRecTab.OksRD_OBJECT_VERSION_NUMBER
9377 	, OksRDRecTab.OksRD_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9378 
9379    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9380       FETCH GetOksRDPartial BULK COLLECT INTO
9381           OksRDRecTab.OksRD_OldID
9382         , OksRDRecTab.OksRD_NewID
9383         , OksRDRecTab.OksRD_NewChrID
9384         , OksRDRecTab.OksRD_NewCleID
9385         , OksRDRecTab.OksRD_ACCOUNT_CLASS
9386         , OksRDRecTab.OksRD_CODE_COMBINATION_ID
9387         , OksRDRecTab.OksRD_PERCENT
9388         , OksRDRecTab.OksRD_OBJECT_VERSION_NUMBER
9389         , OksRDRecTab.OksRD_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9390 
9391    End If;
9392 
9393    FORALL i IN OksRDRecTab.OksRD_NewID.FIRST .. OksRDRecTab.OksRD_NewID.LAST
9394      INSERT INTO OKS_REV_DISTRIBUTIONS
9395      (ID
9396     , CHR_ID
9397     , CLE_ID
9398     , ACCOUNT_CLASS
9399     , CODE_COMBINATION_ID
9400     , PERCENT
9401     , OBJECT_VERSION_NUMBER
9402     , SECURITY_GROUP_ID
9403     , CREATED_BY
9404     , CREATION_DATE
9405     , LAST_UPDATED_BY
9406     , LAST_UPDATE_DATE
9407     , LAST_UPDATE_LOGIN
9408     )
9409     SELECT
9410           OksRDRecTab.OksRD_NewID(i)
9411 	, OksRDRecTab.OksRD_NewChrId(i)
9412 	, OksRDRecTab.OksRD_NewCleID(i)
9413 	, OksRDRecTab.OksRD_ACCOUNT_CLASS(i)
9414 	, OksRDRecTab.OksRD_CODE_COMBINATION_ID(i)
9415 	, OksRDRecTab.OksRD_PERCENT(i)
9416 	, OksRDRecTab.OksRD_OBJECT_VERSION_NUMBER(i)
9417 	, OksRDRecTab.OksRD_SECURITY_GROUP_ID(i)
9418 	, FND_GLOBAL.USER_ID
9419 	, SYSDATE
9420 	, FND_GLOBAL.USER_ID
9421 	, SYSDATE
9422 	, FND_GLOBAL.LOGIN_ID
9423     FROM DUAL;
9424 
9425     If (P_Partial_Copy_YN = 'N') then
9426        EXIT WHEN GetOksRDFull%NOTFOUND;
9427     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9428        EXIT WHEN GetOksRDPartial%NOTFOUND;
9429     End If;
9430 
9431    END LOOP;
9432 
9433    If (GetOksRDFull%ISOPEN) then
9434      CLOSE GetOksRDFull;
9435    Elsif (GetOksRDPartial%ISOPEN) then
9436      CLOSE GetOksRDPartial;
9437    End If;
9438 
9439     EXCEPTION
9440         WHEN OTHERS THEN
9441         If (GetOksRDFull%ISOPEN) then
9442           CLOSE GetOksRDFull;
9443         Elsif (GetOksRDPartial%ISOPEN) then
9444           CLOSE GetOksRDPartial;
9445         End If;
9446           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9447           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9448           RAISE;
9449 
9450  End copy_oks_rev_distributions;
9451 
9452 --===================================================
9453 --  copy_oks_qualifiers
9454 --  Parameters: P_From_Chr_ID : Header ID of source contract
9455 --   	      P_To_Chr_ID   : Header ID of target contract
9456  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9457  --				    or as part of component copy from UI (value = 'Y')
9458 --====================================================
9459  PROCEDURE copy_oks_qualifiers(P_From_Chr_ID IN NUMBER
9460 			    ,P_To_Chr_ID   IN NUMBER
9461 			    ,P_Partial_Copy_YN IN VARCHAR2
9462 			    ,P_Lines_Count IN NUMBER DEFAULT 0
9463 			    ,x_return_status OUT NOCOPY VARCHAR2) IS
9464 
9465    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_QUALIFIERS';
9466    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9467 
9468    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9469 
9470  CURSOR GetOksQFull IS
9471  SELECT
9472  	  oksQ.QUALIFIER_ID AS oksQ_OldQualifierID
9473         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksQ_NewQualifierID
9474 	, oksQ.REQUEST_ID AS oksQ_REQUEST_ID
9475 	, oksQ.PROGRAM_APPLICATION_ID AS oksQ_PROGRAM_APPLICATION_ID
9476 	, oksQ.PROGRAM_ID AS oksQ_PROGRAM_ID
9477 	, oksQ.PROGRAM_UPDATE_DATE AS oksQ_PROGRAM_UPDATE_DATE
9478 	, oksQ.QUALIFIER_GROUPING_NO AS oksQ_QUALIF_GROUPING_NO
9479 	, oksQ.QUALIFIER_CONTEXT AS oksQ_QUALIF_CONTEXT
9480 	, oksQ.QUALIFIER_ATTRIBUTE AS oksQ_QUALIF_ATTRIBUTE
9481 	, oksQ.QUALIFIER_ATTR_VALUE AS oksQ_QUALIF_ATTR_VALUE
9482 	, oksQ.COMPARISON_OPERATOR_CODE AS oksQ_COMPARISON_OPERATOR_CODE
9483 	, oksQ.EXCLUDER_FLAG AS oksQ_EXCLUDER_FLAG
9484 	, oksQ.QUALIFIER_RULE_ID AS oksQ_QUALIFIER_RULE_ID
9485 	, oksQ.START_DATE_ACTIVE AS oksQ_START_DATE_ACTIVE
9486 	, oksQ.END_DATE_ACTIVE AS oksQ_END_DATE_ACTIVE
9487 	, oksQ.CREATED_FROM_RULE_ID AS oksQ_CREATED_FROM_RULE_ID
9488 	, oksQ.QUALIFIER_PRECEDENCE AS oksQ_QUALIFIER_PRECEDENCE
9489 	, okcB.DNZ_CHR_ID AS oksQ_NewListHeaderID --*
9490 	, okcB.ID AS oksQ_NewListLineID --*
9491 	, oksQ.QUALIFIER_DATATYPE AS oksQ_QUALIFIER_DATATYPE
9492 	, oksQ.QUALIFIER_ATTR_VALUE_TO AS oksQ_QUALIFIER_ATTR_VALUE_TO
9493 	, oksQ.CONTEXT AS oksQ_CONTEXT
9494 	, oksQ.ATTRIBUTE1 AS oksQ_ATTRIBUTE1
9495 	, oksQ.ATTRIBUTE2 AS oksQ_ATTRIBUTE2
9496 	, oksQ.ATTRIBUTE3 AS oksQ_ATTRIBUTE3
9497 	, oksQ.ATTRIBUTE4 AS oksQ_ATTRIBUTE4
9498 	, oksQ.ATTRIBUTE5 AS oksQ_ATTRIBUTE5
9499 	, oksQ.ATTRIBUTE6 AS oksQ_ATTRIBUTE6
9500 	, oksQ.ATTRIBUTE7 AS oksQ_ATTRIBUTE7
9501 	, oksQ.ATTRIBUTE8 AS oksQ_ATTRIBUTE8
9502 	, oksQ.ATTRIBUTE9 AS oksQ_ATTRIBUTE9
9503 	, oksQ.ATTRIBUTE10 AS oksQ_ATTRIBUTE10
9504 	, oksQ.ATTRIBUTE11 AS oksQ_ATTRIBUTE11
9505 	, oksQ.ATTRIBUTE12 AS oksQ_ATTRIBUTE12
9506 	, oksQ.ATTRIBUTE13 AS oksQ_ATTRIBUTE13
9507 	, oksQ.ATTRIBUTE14 AS oksQ_ATTRIBUTE14
9508 	, oksQ.ATTRIBUTE15 AS oksQ_ATTRIBUTE15
9509 	, oksQ.ACTIVE_FLAG AS oksQ_ACTIVE_FLAG
9510 	, oksQ.LIST_TYPE_CODE AS oksQ_LIST_TYPE_CODE
9511 	, oksQ.QUAL_ATTR_VALUE_FROM_NUMBER AS oksQ_QUAL_ATTRVALUE_FROM_NUM
9512 	, oksQ.QUAL_ATTR_VALUE_TO_NUMBER AS oksQ_QUAL_ATTRVALUE_TO_NUM
9513 	, oksQ.SECURITY_GROUP_ID AS oksQ_SECURITY_GROUP_ID
9514         FROM
9515         OKS_QUALIFIERS oksQ
9516 	,OKC_K_LINES_B okcB
9517 	WHERE
9518 	oksQ.LIST_LINE_ID = okcB.ORIG_SYSTEM_ID1
9519 	AND okcB.CLE_ID IS NULL  --Qualifiers are only for Top Lines
9520 	AND okcB.DNZ_CHR_ID  = P_To_Chr_ID;
9521 
9522  CURSOR GetOksQPartial IS
9523  SELECT
9524  	  oksQ.QUALIFIER_ID AS oksQ_OldQualifierID
9525         , To_number(rawtohex(sys_guid()), HexFormatStr) AS OksQ_NewQualifierID
9526 	, oksQ.REQUEST_ID AS oksQ_REQUEST_ID
9527 	, oksQ.PROGRAM_APPLICATION_ID AS oksQ_PROGRAM_APPLICATION_ID
9528 	, oksQ.PROGRAM_ID AS oksQ_PROGRAM_ID
9529 	, oksQ.PROGRAM_UPDATE_DATE AS oksQ_PROGRAM_UPDATE_DATE
9530 	, oksQ.QUALIFIER_GROUPING_NO AS oksQ_QUALIF_GROUPING_NO
9531 	, oksQ.QUALIFIER_CONTEXT AS oksQ_QUALIF_CONTEXT
9532 	, oksQ.QUALIFIER_ATTRIBUTE AS oksQ_QUALIF_ATTRIBUTE
9533 	, oksQ.QUALIFIER_ATTR_VALUE AS oksQ_QUALIF_ATTR_VALUE
9534 	, oksQ.COMPARISON_OPERATOR_CODE AS oksQ_COMPARISON_OPERATOR_CODE
9535 	, oksQ.EXCLUDER_FLAG AS oksQ_EXCLUDER_FLAG
9536 	, oksQ.QUALIFIER_RULE_ID AS oksQ_QUALIFIER_RULE_ID
9537 	, oksQ.START_DATE_ACTIVE AS oksQ_START_DATE_ACTIVE
9538 	, oksQ.END_DATE_ACTIVE AS oksQ_END_DATE_ACTIVE
9539 	, oksQ.CREATED_FROM_RULE_ID AS oksQ_CREATED_FROM_RULE_ID
9540 	, oksQ.QUALIFIER_PRECEDENCE AS oksQ_QUALIFIER_PRECEDENCE
9541 	, okcBT.DNZ_CHR_ID AS oksQ_NewListHeaderID
9542 	, okcBT.ID AS oksQ_NewListLineID
9543 	, oksQ.QUALIFIER_DATATYPE AS oksQ_QUALIFIER_DATATYPE
9544 	, oksQ.QUALIFIER_ATTR_VALUE_TO AS oksQ_QUALIFIER_ATTR_VALUE_TO
9545 	, oksQ.CONTEXT AS oksQ_CONTEXT
9546 	, oksQ.ATTRIBUTE1 AS oksQ_ATTRIBUTE1
9547 	, oksQ.ATTRIBUTE2 AS oksQ_ATTRIBUTE2
9548 	, oksQ.ATTRIBUTE3 AS oksQ_ATTRIBUTE3
9549 	, oksQ.ATTRIBUTE4 AS oksQ_ATTRIBUTE4
9550 	, oksQ.ATTRIBUTE5 AS oksQ_ATTRIBUTE5
9551 	, oksQ.ATTRIBUTE6 AS oksQ_ATTRIBUTE6
9552 	, oksQ.ATTRIBUTE7 AS oksQ_ATTRIBUTE7
9553 	, oksQ.ATTRIBUTE8 AS oksQ_ATTRIBUTE8
9554 	, oksQ.ATTRIBUTE9 AS oksQ_ATTRIBUTE9
9555 	, oksQ.ATTRIBUTE10 AS oksQ_ATTRIBUTE10
9556 	, oksQ.ATTRIBUTE11 AS oksQ_ATTRIBUTE11
9557 	, oksQ.ATTRIBUTE12 AS oksQ_ATTRIBUTE12
9558 	, oksQ.ATTRIBUTE13 AS oksQ_ATTRIBUTE13
9559 	, oksQ.ATTRIBUTE14 AS oksQ_ATTRIBUTE14
9560 	, oksQ.ATTRIBUTE15 AS oksQ_ATTRIBUTE15
9561 	, oksQ.ACTIVE_FLAG AS oksQ_ACTIVE_FLAG
9562 	, oksQ.LIST_TYPE_CODE AS oksQ_LIST_TYPE_CODE
9563 	, oksQ.QUAL_ATTR_VALUE_FROM_NUMBER AS oksQ_QUAL_ATTRVALUE_FROM_NUM
9564 	, oksQ.QUAL_ATTR_VALUE_TO_NUMBER AS oksQ_QUAL_ATTRVALUE_TO_NUM
9565 	, oksQ.SECURITY_GROUP_ID AS oksQ_SECURITY_GROUP_ID
9566         FROM
9567         OKS_QUALIFIERS oksQ
9568 	,OKC_K_LINES_B_TEMP okcBT
9569 	WHERE
9570 	oksQ.LIST_LINE_ID = okcBT.ORIG_SYSTEM_ID1
9571 	AND okcBT.CLE_ID IS NULL  --Qualifiers are only for Top Lines
9572 	AND okcBT.DNZ_CHR_ID  = P_To_Chr_ID;
9573  Begin
9574   x_return_status := l_return_status;
9575   If (P_Partial_Copy_YN = 'N') then
9576    OPEN GetOksQFull;
9577   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9578    OPEN GetOksQPartial;
9579   End If;
9580 
9581   LOOP
9582    If (P_Partial_Copy_YN = 'N') then
9583    FETCH GetOksQFull 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 
9627    Elsif (P_Partial_Copy_YN = 'Y' AND P_Lines_Count > 0) then
9628    FETCH GetOksQPartial BULK COLLECT INTO
9629      	  OksQRecTab.OksQ_OldQualifierID
9630    	, OksQRecTab.OksQ_NewQualifierID
9631 	, OksQRecTab.OksQ_REQUEST_ID
9632 	, OksQRecTab.OksQ_PROGRAM_APPLICATION_ID
9633 	, OksQRecTab.OksQ_PROGRAM_ID
9634 	, OksQRecTab.OksQ_PROGRAM_UPDATE_DATE
9635 	, OksQRecTab.OksQ_QUALIFIER_GROUPING_NO
9636 	, OksQRecTab.OksQ_QUALIFIER_CONTEXT
9637 	, OksQRecTab.OksQ_QUALIFIER_ATTRIBUTE
9638 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE
9639 	, OksQRecTab.OksQ_COMPARISON_OPERATOR_CODE
9640 	, OksQRecTab.OksQ_EXCLUDER_FLAG
9641 	, OksQRecTab.OksQ_QUALIFIER_RULE_ID
9642 	, OksQRecTab.OksQ_START_DATE_ACTIVE
9643 	, OksQRecTab.OksQ_END_DATE_ACTIVE
9644 	, OksQRecTab.OksQ_CREATED_FROM_RULE_ID
9645 	, OksQRecTab.OksQ_QUALIFIER_PRECEDENCE
9646 	, OksQRecTab.OksQ_NewListHeaderID
9647 	, OksQRecTab.OksQ_NewListLineID
9648 	, OksQRecTab.OksQ_QUALIFIER_DATATYPE
9649 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE_TO
9650 	, OksQRecTab.OksQ_CONTEXT
9651 	, OksQRecTab.OksQ_ATTRIBUTE1
9652 	, OksQRecTab.OksQ_ATTRIBUTE2
9653 	, OksQRecTab.OksQ_ATTRIBUTE3
9654 	, OksQRecTab.OksQ_ATTRIBUTE4
9655 	, OksQRecTab.OksQ_ATTRIBUTE5
9656 	, OksQRecTab.OksQ_ATTRIBUTE6
9657 	, OksQRecTab.OksQ_ATTRIBUTE7
9658 	, OksQRecTab.OksQ_ATTRIBUTE8
9659 	, OksQRecTab.OksQ_ATTRIBUTE9
9660 	, OksQRecTab.OksQ_ATTRIBUTE10
9661 	, OksQRecTab.OksQ_ATTRIBUTE11
9662 	, OksQRecTab.OksQ_ATTRIBUTE12
9663 	, OksQRecTab.OksQ_ATTRIBUTE13
9664 	, OksQRecTab.OksQ_ATTRIBUTE14
9665 	, OksQRecTab.OksQ_ATTRIBUTE15
9666 	, OksQRecTab.OksQ_ACTIVE_FLAG
9667 	, OksQRecTab.OksQ_LIST_TYPE_CODE
9668 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_FROM_NUM
9669 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_TO_NUM
9670 	, OksQRecTab.OksQ_SECURITY_GROUP_ID LIMIT G_BULK_FETCH_LIMIT;
9671    End If;
9672 
9673    FORALL i IN OksQRecTab.OksQ_NewQualifierID.FIRST .. OksQRecTab.OksQ_NewQualifierID.LAST
9674    INSERT INTO OKS_QUALIFIERS(
9675   	  QUALIFIER_ID
9676 	, REQUEST_ID
9677 	, PROGRAM_APPLICATION_ID
9678 	, PROGRAM_ID
9679 	, PROGRAM_UPDATE_DATE
9680 	, QUALIFIER_GROUPING_NO
9681 	, QUALIFIER_CONTEXT
9682 	, QUALIFIER_ATTRIBUTE
9683 	, QUALIFIER_ATTR_VALUE
9684 	, COMPARISON_OPERATOR_CODE
9685 	, EXCLUDER_FLAG
9686 	, QUALIFIER_RULE_ID
9687 	, START_DATE_ACTIVE
9688 	, END_DATE_ACTIVE
9689 	, CREATED_FROM_RULE_ID
9690 	, QUALIFIER_PRECEDENCE
9691 	, LIST_HEADER_ID
9692 	, LIST_LINE_ID
9693 	, QUALIFIER_DATATYPE
9694 	, QUALIFIER_ATTR_VALUE_TO
9695 	, CONTEXT
9696 	, ATTRIBUTE1
9697 	, ATTRIBUTE2
9698 	, ATTRIBUTE3
9699 	, ATTRIBUTE4
9700 	, ATTRIBUTE5
9701 	, ATTRIBUTE6
9702 	, ATTRIBUTE7
9703 	, ATTRIBUTE8
9704 	, ATTRIBUTE9
9705 	, ATTRIBUTE10
9706 	, ATTRIBUTE11
9707 	, ATTRIBUTE12
9708 	, ATTRIBUTE13
9709 	, ATTRIBUTE14
9710 	, ATTRIBUTE15
9711 	, ACTIVE_FLAG
9712 	, LIST_TYPE_CODE
9713 	, QUAL_ATTR_VALUE_FROM_NUMBER
9714 	, QUAL_ATTR_VALUE_TO_NUMBER
9715 	, SECURITY_GROUP_ID
9716 	, CREATED_BY
9717 	, CREATION_DATE
9718 	, LAST_UPDATED_BY
9719 	, LAST_UPDATE_LOGIN
9720 	, LAST_UPDATE_DATE )
9721         SELECT
9722 	  OksQRecTab.OksQ_NewQualifierID(i)
9723 	, OksQRecTab.OksQ_REQUEST_ID(i)
9724 	, OksQRecTab.OksQ_PROGRAM_APPLICATION_ID(i)
9725 	, OksQRecTab.OksQ_PROGRAM_ID(i)
9726 	, OksQRecTab.OksQ_PROGRAM_UPDATE_DATE(i)
9727 	, OksQRecTab.OksQ_QUALIFIER_GROUPING_NO(i)
9728 	, OksQRecTab.OksQ_QUALIFIER_CONTEXT(i)
9729 	, OksQRecTab.OksQ_QUALIFIER_ATTRIBUTE(i)
9730 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE(i)
9731 	, OksQRecTab.OksQ_COMPARISON_OPERATOR_CODE(i)
9732 	, OksQRecTab.OksQ_EXCLUDER_FLAG(i)
9733 	, OksQRecTab.OksQ_QUALIFIER_RULE_ID(i)
9734 	, OksQRecTab.OksQ_START_DATE_ACTIVE(i)
9735 	, OksQRecTab.OksQ_END_DATE_ACTIVE(i)
9736 	, OksQRecTab.OksQ_CREATED_FROM_RULE_ID(i)
9737 	, OksQRecTab.OksQ_QUALIFIER_PRECEDENCE(i)
9738 	, OksQRecTab.OksQ_NewListHeaderID(i)
9739 	, OksQRecTab.OksQ_NewListLineID(i)
9740 	, OksQRecTab.OksQ_QUALIFIER_DATATYPE(i)
9741 	, OksQRecTab.OksQ_QUALIFIER_ATTR_VALUE_TO(i)
9742 	, OksQRecTab.OksQ_CONTEXT(i)
9743 	, OksQRecTab.OksQ_ATTRIBUTE1(i)
9744 	, OksQRecTab.OksQ_ATTRIBUTE2(i)
9745 	, OksQRecTab.OksQ_ATTRIBUTE3(i)
9746 	, OksQRecTab.OksQ_ATTRIBUTE4(i)
9747 	, OksQRecTab.OksQ_ATTRIBUTE5(i)
9748 	, OksQRecTab.OksQ_ATTRIBUTE6(i)
9749 	, OksQRecTab.OksQ_ATTRIBUTE7(i)
9750 	, OksQRecTab.OksQ_ATTRIBUTE8(i)
9751 	, OksQRecTab.OksQ_ATTRIBUTE9(i)
9752 	, OksQRecTab.OksQ_ATTRIBUTE10(i)
9753 	, OksQRecTab.OksQ_ATTRIBUTE11(i)
9754 	, OksQRecTab.OksQ_ATTRIBUTE12(i)
9755 	, OksQRecTab.OksQ_ATTRIBUTE13(i)
9756 	, OksQRecTab.OksQ_ATTRIBUTE14(i)
9757 	, OksQRecTab.OksQ_ATTRIBUTE15(i)
9758 	, OksQRecTab.OksQ_ACTIVE_FLAG(i)
9759 	, OksQRecTab.OksQ_LIST_TYPE_CODE(i)
9760 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_FROM_NUM(i)
9761 	, OksQRecTab.OksQ_QUAL_ATTRVALUE_TO_NUM(i)
9762 	, OksQRecTab.OksQ_SECURITY_GROUP_ID(i)
9763 	, FND_GLOBAL.USER_ID
9764 	, SYSDATE
9765 	, FND_GLOBAL.USER_ID
9766 	, FND_GLOBAL.LOGIN_ID
9767 	, SYSDATE
9768         FROM DUAL;
9769 
9770         If (P_Partial_Copy_YN = 'N') then
9771 	  EXIT WHEN GetOksQFull%NOTFOUND;
9772 	Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9773           EXIT WHEN GetOksQPartial%NOTFOUND;
9774  	End If;
9775 
9776    END LOOP;
9777 
9778        If (GetOksQFull%ISOPEN) then
9779         CLOSE GetOksQFull;
9780        Elsif (GetOksQPartial%ISOPEN) then
9781         CLOSE GetOksQPartial;
9782        End If;
9783 
9784     EXCEPTION
9785         WHEN OTHERS THEN
9786         If (GetOksQFull%ISOPEN) then
9787 	  CLOSE GetOksQFull;
9788 	Elsif (GetOksQPartial%ISOPEN) then
9789           CLOSE GetOksQPartial;
9790         End IF;
9791           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9792           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9793           RAISE;
9794 
9795 
9796  End copy_oks_qualifiers;
9797 
9798 -----------------------------------------------------------
9799 --===================================================
9800 --  copy_oks_coverage_timezones
9801 --  Parameters: P_From_Chr_ID : Header ID of source contract
9802 --   	      P_To_Chr_ID   : Header ID of target contract
9803  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9804  --				    or as part of component copy from UI (value = 'Y')
9805 --====================================================
9806 
9807  PROCEDURE copy_oks_coverage_timezones(P_From_Chr_ID IN NUMBER
9808                             	  ,P_To_Chr_ID   IN NUMBER
9809                                   ,P_Partial_Copy_YN IN VARCHAR2
9810 				  ,P_Lines_Count IN NUMBER DEFAULT 0
9811                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
9812 
9813    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_COVERAGE_TIMEZONES';
9814    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
9815    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
9816 
9817    CURSOR GetOksCTZFull IS
9818    SELECT
9819       	  oksCTZ.ID AS oksCTZ_OldID --*
9820          ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS oksCTZ_NewID --*
9821 	 ,okcB.ID AS oksCTZ_NewCleID --*
9822 	 ,oksCTZ.DEFAULT_YN AS oksCTZ_DEFAULT_YN
9823 	 ,oksCTZ.TIMEZONE_ID AS oksCTZ_TIMEZONE_ID
9824 	 ,okcB.DNZ_CHR_ID AS oksCTZ_NewDnzChrID --*
9825 	 ,oksCTZ.SECURITY_GROUP_ID AS oksCTZ_SECURITY_GROUP_ID
9826 	 ,oksCTZ.PROGRAM_APPLICATION_ID AS oksCTZ_PROGRAM_APPLICATION_ID
9827 	 ,oksCTZ.PROGRAM_ID AS oksCTZ_PROGRAM_ID
9828 	 ,oksCTZ.PROGRAM_UPDATE_DATE AS oksCTZ_PROGRAM_UPDATE_DATE
9829 	 ,oksCTZ.REQUEST_ID AS oksCTZ_REQUEST_ID
9830 	 ,1 AS oksCTZ_OBJECT_VERSION_NUMBER
9831 	 ,oksCTZ.ID AS oksCTZ_ORIG_SYSTEM_ID1 --*
9832 	 ,NULL AS oksCTZ_ORIG_SYSTEM_SOURCE_CODE --*
9833 	 ,'COPY' AS oksCTZ_ORIG_SYSTEM_REFERENCE1 --*
9834   FROM
9835    OKS_COVERAGE_TIMEZONES oksCTZ
9836   ,OKC_K_LINES_B okcB
9837   WHERE
9838     oksCTZ.CLE_ID = okcB.ORIG_SYSTEM_ID1
9839   AND oksCTZ.DNZ_CHR_ID = P_From_Chr_ID
9840   AND okcB.DNZ_CHR_ID = P_To_Chr_ID;
9841 
9842   CURSOR GetOksCTZPartial IS
9843   SELECT
9844           oksCTZ.ID AS oksCTZ_OldID --*
9845          ,To_number(rawtohex(sys_guid()), HexFormatStr)   AS oksCTZ_NewID --*
9846          ,okcBT.ID AS oksCTZ_NewCleID --*
9847          ,oksCTZ.DEFAULT_YN AS oksCTZ_DEFAULT_YN
9848          ,oksCTZ.TIMEZONE_ID AS oksCTZ_TIMEZONE_ID
9849          ,okcBT.DNZ_CHR_ID AS oksCTZ_NewDnzChrID --*
9850          ,oksCTZ.SECURITY_GROUP_ID AS oksCTZ_SECURITY_GROUP_ID
9851          ,oksCTZ.PROGRAM_APPLICATION_ID AS oksCTZ_PROGRAM_APPLICATION_ID
9852          ,oksCTZ.PROGRAM_ID AS oksCTZ_PROGRAM_ID
9853          ,oksCTZ.PROGRAM_UPDATE_DATE AS oksCTZ_PROGRAM_UPDATE_DATE
9854          ,oksCTZ.REQUEST_ID AS oksCTZ_REQUEST_ID
9855          ,1 AS oksCTZ_OBJECT_VERSION_NUMBER
9856          ,oksCTZ.ID AS oksCTZ_ORIG_SYSTEM_ID1 --*
9857          ,NULL AS oksCTZ_ORIG_SYSTEM_SOURCE_CODE --*
9858          ,'COPY' AS oksCTZ_ORIG_SYSTEM_REFERENCE1 --*
9859   FROM
9860    OKS_COVERAGE_TIMEZONES oksCTZ
9861   ,OKC_K_LINES_B_TEMP okcBT
9862   WHERE
9863     oksCTZ.CLE_ID = okcBT.ORIG_SYSTEM_ID1
9864   AND oksCTZ.DNZ_CHR_ID = P_From_Chr_ID
9865   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID;
9866 
9867  Begin
9868    x_return_status := l_return_status;
9869   If (P_Partial_Copy_YN = 'N') then
9870    OPEN GetOksCTZFull;
9871   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9872    OPEN GetOksCTZPartial;
9873   End If;
9874 
9875   LOOP
9876    IF (P_Partial_Copy_YN = 'N') then
9877      FETCH GetOksCTZFull BULK COLLECT INTO
9878           OksCTZRecTab.OksCTZ_OldID
9879          ,OksCTZRecTab.OksCTZ_NewID
9880 	 ,OksCTZRecTab.OksCTZ_NewCleID
9881 	 ,OksCTZRecTab.OksCTZ_DEFAULT_YN
9882 	 ,OksCTZRecTab.OksCTZ_TIMEZONE_ID
9883 	 ,OksCTZRecTab.OksCTZ_NewDnzChrID
9884 	 ,OksCTZRecTab.OksCTZ_SECURITY_GROUP_ID
9885 	 ,OksCTZRecTab.OksCTZ_PROGRAM_APPLICATION_ID
9886 	 ,OksCTZRecTab.OksCTZ_PROGRAM_ID
9887 	 ,OksCTZRecTab.OksCTZ_PROGRAM_UPDATE_DATE
9888 	 ,OksCTZRecTab.OksCTZ_REQUEST_ID
9889 	 ,OksCTZRecTab.OksCTZ_OBJECT_VERSION_NUMBER
9890 	 ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_ID1
9891 	 ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_SOURCE_CODE
9892 	 ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_REFERENCE1
9893          LIMIT G_BULK_FETCH_LIMIT;
9894    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9895      FETCH GetOksCTZPartial BULK COLLECT INTO
9896           OksCTZRecTab.OksCTZ_OldID
9897          ,OksCTZRecTab.OksCTZ_NewID
9898          ,OksCTZRecTab.OksCTZ_NewCleID
9899          ,OksCTZRecTab.OksCTZ_DEFAULT_YN
9900          ,OksCTZRecTab.OksCTZ_TIMEZONE_ID
9901          ,OksCTZRecTab.OksCTZ_NewDnzChrID
9902          ,OksCTZRecTab.OksCTZ_SECURITY_GROUP_ID
9903          ,OksCTZRecTab.OksCTZ_PROGRAM_APPLICATION_ID
9904          ,OksCTZRecTab.OksCTZ_PROGRAM_ID
9905          ,OksCTZRecTab.OksCTZ_PROGRAM_UPDATE_DATE
9906          ,OksCTZRecTab.OksCTZ_REQUEST_ID
9907          ,OksCTZRecTab.OksCTZ_OBJECT_VERSION_NUMBER
9908          ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_ID1
9909          ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_SOURCE_CODE
9910          ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_REFERENCE1
9911          LIMIT G_BULK_FETCH_LIMIT;
9912 
9913    End If;
9914 
9915    FORALL i IN OksCTZRecTab.OksCTZ_NewID.FIRST .. OksCTZRecTab.OksCTZ_NewID.LAST
9916    INSERT INTO OKS_COVERAGE_TIMEZONES(
9917       	  ID
9918   	 ,CLE_ID
9919 	 ,DEFAULT_YN
9920 	 ,TIMEZONE_ID
9921 	 ,DNZ_CHR_ID
9922 	 ,SECURITY_GROUP_ID
9923 	 ,PROGRAM_APPLICATION_ID
9924 	 ,PROGRAM_ID
9925 	 ,PROGRAM_UPDATE_DATE
9926 	 ,REQUEST_ID
9927 	 ,OBJECT_VERSION_NUMBER
9928 	 ,ORIG_SYSTEM_ID1
9929 	 ,ORIG_SYSTEM_SOURCE_CODE
9930 	 ,ORIG_SYSTEM_REFERENCE1
9931  	 ,CREATED_BY
9932 	 ,CREATION_DATE
9933 	 ,LAST_UPDATED_BY
9934 	 ,LAST_UPDATE_DATE
9935 	 ,LAST_UPDATE_LOGIN
9936 	 )
9937    SELECT
9938        OksCTZRecTab.OksCTZ_NewID(i)
9939       ,OksCTZRecTab.OksCTZ_NewCleID(i)
9940       ,OksCTZRecTab.OksCTZ_DEFAULT_YN(i)
9941       ,OksCTZRecTab.OksCTZ_TIMEZONE_ID(i)
9942       ,OksCTZRecTab.OksCTZ_NewDnzChrID(i)
9943       ,OksCTZRecTab.OksCTZ_SECURITY_GROUP_ID(i)
9944       ,OksCTZRecTab.OksCTZ_PROGRAM_APPLICATION_ID(i)
9945       ,OksCTZRecTab.OksCTZ_PROGRAM_ID(i)
9946       ,OksCTZRecTab.OksCTZ_PROGRAM_UPDATE_DATE(i)
9947       ,OksCTZRecTab.OksCTZ_REQUEST_ID(i)
9948       ,OksCTZRecTab.OksCTZ_OBJECT_VERSION_NUMBER(i)
9949       ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_ID1(i)
9950       ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_SOURCE_CODE(i)
9951       ,OksCTZRecTab.OksCTZ_ORIG_SYSTEM_REFERENCE1(i)
9952       ,FND_GLOBAL.USER_ID
9953       ,SYSDATE
9954       ,FND_GLOBAL.USER_ID
9955       ,SYSDATE
9956       ,FND_GLOBAL.LOGIN_ID
9957    FROM DUAL;
9958 
9959    If (P_Partial_Copy_YN = 'N') then
9960      EXIT WHEN GetOksCTZFull%NOTFOUND;
9961    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
9962      EXIT WHEN GetOksCTZPartial%NOTFOUND;
9963    End If;
9964  End LOOP;
9965 
9966   If GetOksCTZFull%ISOPEN THEN
9967     CLOSE GetOksCTZFull;
9968   Elsif GetOksCTZPartial%ISOPEN THEN
9969     CLOSE GetOksCTZPartial;
9970   End If;
9971 
9972   EXCEPTION
9973         WHEN OTHERS THEN
9974         If (GetOksCTZFull%ISOPEN) then
9975           CLOSE GetOksCTZFull;
9976         Elsif (GetOksCTZPartial%ISOPEN) then
9977           CLOSE GetOksCTZPartial;
9978         End IF;
9979           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9980           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
9981           RAISE;
9982 
9983  End copy_oks_coverage_timezones;
9984 
9985 
9986 -----------------------------------------------------------
9987 --===================================================
9988 --  copy_oks_coverage_times
9989 --  Parameters: P_From_Chr_ID : Header ID of source contract
9990 --   	      P_To_Chr_ID   : Header ID of target contract
9991  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
9992  --				    or as part of component copy from UI (value = 'Y')
9993 --====================================================
9994 
9995  PROCEDURE copy_oks_coverage_times(P_From_Chr_ID IN NUMBER
9996                                   ,P_To_Chr_ID   IN NUMBER
9997                                   ,P_Partial_Copy_YN IN VARCHAR2
9998 				  ,P_Lines_Count IN NUMBER DEFAULT 0
9999                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10000 
10001    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_COVERAGE_TIMES';
10002    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10003    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10004 
10005    CURSOR GetOksCTFull IS
10006 	SELECT
10007 	  oksCT.ID AS oksCT_OldID --*
10008 	 ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksCT_NewID --*
10009 	 ,oksCTZ.DNZ_CHR_ID AS oksCT_NewDnzChrID --*
10010 	 ,oksCTZ.ID AS oksCT_NewCovTzeLineID --*
10011 	 ,oksCT.START_HOUR AS oksCT_START_HOUR
10012 	 ,oksCT.START_MINUTE AS oksCT_START_MINUTE
10013 	 ,oksCT.END_HOUR AS oksCT_END_HOUR
10014 	 ,oksCT.END_MINUTE AS oksCT_END_MINUTE
10015 	 ,oksCT.MONDAY_YN AS oksCT_MONDAY_YN
10016 	 ,oksCT.TUESDAY_YN AS oksCT_TUESDAY_YN
10017 	 ,oksCT.WEDNESDAY_YN AS oksCT_WEDNESDAY_YN
10018 	 ,oksCT.THURSDAY_YN AS oksCT_THURSDAY_YN
10019 	 ,oksCT.FRIDAY_YN AS oksCT_FRIDAY_YN
10020 	 ,oksCT.SATURDAY_YN AS oksCT_SATURDAY_YN
10021 	 ,oksCT.SUNDAY_YN AS oksCT_SUNDAY_YN
10022 	 ,oksCT.SECURITY_GROUP_ID AS oksCT_SECURITY_GROUP_ID
10023 	 ,oksCT.PROGRAM_APPLICATION_ID AS oksCT_PROGRAM_APPLICATION_ID
10024 	 ,1 AS oksCT_OBJECT_VERSION_NUMBER
10025 	 ,oksCT.PROGRAM_ID AS oksCT_PROGRAM_ID
10026 	 ,oksCT.PROGRAM_UPDATE_DATE AS oksCT_PROGRAM_UPDATE_DATE
10027 	 ,oksCT.REQUEST_ID AS oksCT_REQUEST_ID
10028 	FROM
10029 	OKS_COVERAGE_TIMES oksCT
10030 	,OKS_COVERAGE_TIMEZONES oksCTZ
10031 	WHERE
10032 	OksCT.COV_TZE_LINE_ID = oksCTZ.ORIG_SYSTEM_ID1
10033 	AND oksCTZ.DNZ_CHR_ID = P_To_Chr_ID
10034 	AND oksCT.DNZ_CHR_ID = P_From_Chr_ID;
10035 
10036    CURSOR GetOksCTPartial IS
10037         SELECT
10038           oksCT.ID AS oksCT_OldID --*
10039          ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksCT_NewID --*
10040          ,oksCTZ.DNZ_CHR_ID AS oksCT_NewDnzChrID --*
10041          ,oksCTZ.ID AS oksCT_NewCovTzeLineID --*
10042          ,oksCT.START_HOUR AS oksCT_START_HOUR
10043          ,oksCT.START_MINUTE AS oksCT_START_MINUTE
10044          ,oksCT.END_HOUR AS oksCT_END_HOUR
10045          ,oksCT.END_MINUTE AS oksCT_END_MINUTE
10046          ,oksCT.MONDAY_YN AS oksCT_MONDAY_YN
10047          ,oksCT.TUESDAY_YN AS oksCT_TUESDAY_YN
10048          ,oksCT.WEDNESDAY_YN AS oksCT_WEDNESDAY_YN
10049          ,oksCT.THURSDAY_YN AS oksCT_THURSDAY_YN
10050          ,oksCT.FRIDAY_YN AS oksCT_FRIDAY_YN
10051          ,oksCT.SATURDAY_YN AS oksCT_SATURDAY_YN
10052          ,oksCT.SUNDAY_YN AS oksCT_SUNDAY_YN
10053          ,oksCT.SECURITY_GROUP_ID AS oksCT_SECURITY_GROUP_ID
10054          ,oksCT.PROGRAM_APPLICATION_ID AS oksCT_PROGRAM_APPLICATION_ID
10055          ,1 AS oksCT_OBJECT_VERSION_NUMBER
10056          ,oksCT.PROGRAM_ID AS oksCT_PROGRAM_ID
10057          ,oksCT.PROGRAM_UPDATE_DATE AS oksCT_PROGRAM_UPDATE_DATE
10058          ,oksCT.REQUEST_ID AS oksCT_REQUEST_ID
10059         FROM
10060          OKS_COVERAGE_TIMES oksCT
10061         ,OKS_COVERAGE_TIMEZONES oksCTZ
10062         ,OKC_K_LINES_B_TEMP okcBT
10063         WHERE
10064         OksCT.COV_TZE_LINE_ID = oksCTZ.ORIG_SYSTEM_ID1
10065         AND oksCTZ.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
10066         AND oksCTZ.CLE_ID = okcBT.ID
10067 	AND oksCTZ.DNZ_CHR_ID = P_To_Chr_ID
10068         AND oksCT.DNZ_CHR_ID = P_From_Chr_ID;
10069 
10070   Begin
10071     x_return_status := l_return_status;
10072     If (P_Partial_Copy_YN = 'N') then
10073       OPEN GetOksCTFull;
10074     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10075       OPEN GetOksCTPartial;
10076     End If;
10077 
10078   LOOP
10079    If (P_Partial_Copy_YN = 'N') then
10080     FETCH GetOksCTFull BULK COLLECT INTO
10081           OksCTRecTab.OksCT_OldID
10082      	 ,OksCTRecTab.OksCT_NewID
10083 	 ,OksCTRecTab.OksCT_NewDnzChrID
10084 	 ,OksCTRecTab.OksCT_NewCovTzeLineID
10085 	 ,OksCTRecTab.OksCT_START_HOUR
10086 	 ,OksCTRecTab.OksCT_START_MINUTE
10087 	 ,OksCTRecTab.OksCT_END_HOUR
10088 	 ,OksCTRecTab.OksCT_END_MINUTE
10089 	 ,OksCTRecTab.OksCT_MONDAY_YN
10090 	 ,OksCTRecTab.OksCT_TUESDAY_YN
10091 	 ,OksCTRecTab.OksCT_WEDNESDAY_YN
10092 	 ,OksCTRecTab.OksCT_THURSDAY_YN
10093 	 ,OksCTRecTab.OksCT_FRIDAY_YN
10094 	 ,OksCTRecTab.OksCT_SATURDAY_YN
10095 	 ,OksCTRecTab.OksCT_SUNDAY_YN
10096 	 ,OksCTRecTab.OksCT_SECURITY_GROUP_ID
10097 	 ,OksCTRecTab.OksCT_PROGRAM_APPLICATION_ID
10098 	 ,OksCTRecTab.OksCT_OBJECT_VERSION_NUMBER
10099 	 ,OksCTRecTab.OksCT_PROGRAM_ID
10100 	 ,OksCTRecTab.OksCT_PROGRAM_UPDATE_DATE
10101 	 ,OksCTRecTab.OksCT_REQUEST_ID
10102  	  LIMIT G_BULK_FETCH_LIMIT;
10103    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10104     FETCH GetOksCTPartial BULK COLLECT INTO
10105           OksCTRecTab.OksCT_OldID
10106          ,OksCTRecTab.OksCT_NewID
10107          ,OksCTRecTab.OksCT_NewDnzChrID
10108          ,OksCTRecTab.OksCT_NewCovTzeLineID
10109          ,OksCTRecTab.OksCT_START_HOUR
10110          ,OksCTRecTab.OksCT_START_MINUTE
10111          ,OksCTRecTab.OksCT_END_HOUR
10112          ,OksCTRecTab.OksCT_END_MINUTE
10113          ,OksCTRecTab.OksCT_MONDAY_YN
10114          ,OksCTRecTab.OksCT_TUESDAY_YN
10115          ,OksCTRecTab.OksCT_WEDNESDAY_YN
10116          ,OksCTRecTab.OksCT_THURSDAY_YN
10117          ,OksCTRecTab.OksCT_FRIDAY_YN
10118          ,OksCTRecTab.OksCT_SATURDAY_YN
10119          ,OksCTRecTab.OksCT_SUNDAY_YN
10120          ,OksCTRecTab.OksCT_SECURITY_GROUP_ID
10121          ,OksCTRecTab.OksCT_PROGRAM_APPLICATION_ID
10122          ,OksCTRecTab.OksCT_OBJECT_VERSION_NUMBER
10123          ,OksCTRecTab.OksCT_PROGRAM_ID
10124          ,OksCTRecTab.OksCT_PROGRAM_UPDATE_DATE
10125          ,OksCTRecTab.OksCT_REQUEST_ID
10126           LIMIT G_BULK_FETCH_LIMIT;
10127 
10128    End If;
10129 
10130    FORALL i in OksCTRecTab.OksCT_NewID.FIRST .. OksCTRecTab.OksCT_NewID.LAST
10131    INSERT INTO OKS_COVERAGE_TIMES(
10132 	    ID
10133 	 ,DNZ_CHR_ID
10134 	 ,COV_TZE_LINE_ID
10135 	 ,START_HOUR
10136 	 ,START_MINUTE
10137 	 ,END_HOUR
10138 	 ,END_MINUTE
10139 	 ,MONDAY_YN
10140 	 ,TUESDAY_YN
10141 	 ,WEDNESDAY_YN
10142 	 ,THURSDAY_YN
10143 	 ,FRIDAY_YN
10144 	 ,SATURDAY_YN
10145 	 ,SUNDAY_YN
10146 	 ,SECURITY_GROUP_ID
10147 	 ,PROGRAM_APPLICATION_ID
10148 	 ,OBJECT_VERSION_NUMBER
10149 	 ,PROGRAM_ID
10150 	 ,PROGRAM_UPDATE_DATE
10151 	 ,REQUEST_ID
10152 	 ,CREATED_BY
10153 	 ,CREATION_DATE
10154 	 ,LAST_UPDATED_BY
10155 	 ,LAST_UPDATE_DATE
10156 	 ,LAST_UPDATE_LOGIN
10157    )
10158    SELECT
10159 	  OksCTRecTab.OksCT_NewID(i)
10160 	 ,OksCTRecTab.OksCT_NewDnzChrID(i)
10161 	 ,OksCTRecTab.OksCT_NewCovTzeLineID(i)
10162 	 ,OksCTRecTab.OksCT_START_HOUR(i)
10163 	 ,OksCTRecTab.OksCT_START_MINUTE(i)
10164 	 ,OksCTRecTab.OksCT_END_HOUR(i)
10165 	 ,OksCTRecTab.OksCT_END_MINUTE(i)
10166 	 ,OksCTRecTab.OksCT_MONDAY_YN(i)
10167 	 ,OksCTRecTab.OksCT_TUESDAY_YN(i)
10168 	 ,OksCTRecTab.OksCT_WEDNESDAY_YN(i)
10169 	 ,OksCTRecTab.OksCT_THURSDAY_YN(i)
10170 	 ,OksCTRecTab.OksCT_FRIDAY_YN(i)
10171 	 ,OksCTRecTab.OksCT_SATURDAY_YN(i)
10172 	 ,OksCTRecTab.OksCT_SUNDAY_YN(i)
10173 	 ,OksCTRecTab.OksCT_SECURITY_GROUP_ID(i)
10174 	 ,OksCTRecTab.OksCT_PROGRAM_APPLICATION_ID(i)
10175 	 ,OksCTRecTab.OksCT_OBJECT_VERSION_NUMBER(i)
10176 	 ,OksCTRecTab.OksCT_PROGRAM_ID(i)
10177 	 ,OksCTRecTab.OksCT_PROGRAM_UPDATE_DATE(i)
10178 	 ,OksCTRecTab.OksCT_REQUEST_ID(i)
10179 	 ,FND_GLOBAL.USER_ID
10180 	 ,SYSDATE
10181 	 ,FND_GLOBAL.USER_ID
10182 	 ,SYSDATE
10183 	 ,FND_GLOBAL.LOGIN_ID
10184 	 FROM DUAL;
10185 
10186     If (P_Partial_Copy_YN = 'N') then
10187       EXIT WHEN GetOksCTFull%NOTFOUND;
10188     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10189       EXIT WHEN GetOksCTPartial%NOTFOUND;
10190     End If;
10191 
10192   END LOOP;
10193 
10194   If GetOksCTFull%ISOPEN THEN
10195    CLOSE GetOksCTFull;
10196   Elsif GetOksCTPartial%ISOPEN THEN
10197    CLOSE GetOksCTPartial;
10198   End If;
10199 
10200     EXCEPTION
10201         WHEN OTHERS THEN
10202         If (GetOksCTFull%ISOPEN) then
10203           CLOSE GetOksCTFull;
10204         Elsif (GetOksCTPartial%ISOPEN) then
10205           CLOSE GetOksCTPartial;
10206         End IF;
10207 
10208           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10209           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10210           RAISE;
10211 
10212   End copy_oks_coverage_times;
10213 
10214 -----------------------------------------------------------
10215 --===================================================
10216 --  copy_oks_pm_activities
10217 --  Parameters: P_From_Chr_ID : Header ID of source contract
10218 --   	      P_To_Chr_ID   : Header ID of target contract
10219  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10220  --				    or as part of component copy from UI (value = 'Y')
10221 --====================================================
10222 
10223   PROCEDURE copy_oks_pm_activities(P_From_Chr_ID IN NUMBER
10224                                   ,P_To_Chr_ID   IN NUMBER
10225                                   ,P_Partial_Copy_YN IN VARCHAR2
10226 				  ,P_Lines_Count IN NUMBER DEFAULT 0
10227                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10228 
10229    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_PM_ACTIVITIES';
10230    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10231    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10232 
10233    CURSOR GetOksPMAFull IS
10234    SELECT
10235     	  oksPMA.ID	AS oksPMA_OldID --*
10236 	 ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMA_NewID --*
10237 	 ,okcB.ID AS oksPMA_NewCleID --*
10238 	 ,okcB.DNZ_CHR_ID AS oksPMA_NewDnzChrID --*
10239 	 ,oksPMA.ACTIVITY_ID AS oksPMA_ACTIVITY_ID
10240 	 ,oksPMA.SELECT_YN AS oksPMA_SELECT_YN
10241 	 ,oksPMA.CONF_REQ_YN AS oksPMA_CONF_REQ_YN
10242 	 ,oksPMA.SCH_EXISTS_YN AS oksPMA_SCH_EXISTS_YN
10243 	 ,oksPMA.PROGRAM_APPLICATION_ID AS oksPMA_PROGRAM_APPLICATION_ID
10244 	 ,oksPMA.PROGRAM_ID AS oksPMA_PROGRAM_ID
10245 	 ,oksPMA.PROGRAM_UPDATE_DATE AS oksPMA_PROGRAM_UPDATE_DATE
10246 	 ,1 AS oksPMA_OBJECT_VERSION_NUMBER
10247 	 ,oksPMA.SECURITY_GROUP_ID AS oksPMA_SECURITY_GROUP_ID
10248 	 ,oksPMA.REQUEST_ID AS oksPMA_REQUEST_ID
10249 	 ,oksPMA.ID AS oksPMA_ORIG_SYSTEM_ID1 --*
10250 	 ,NULL AS oksPMA_ORIG_SYSTEM_SOURCE_CODE --*
10251 	 ,'COPY' AS oksPMA_ORIG_SYSTEM_REFERENCE1 --*
10252    FROM
10253    OKS_PM_ACTIVITIES oksPMA
10254   ,OKC_K_LINES_B okcB
10255   WHERE oksPMA.CLE_ID = okcB.ORIG_SYSTEM_ID1
10256   AND okcB.DNZ_CHR_ID = P_To_Chr_ID
10257   AND oksPMA.DNZ_CHR_ID = P_From_Chr_ID;
10258 
10259    CURSOR GetOksPMAPartial IS
10260    SELECT
10261           oksPMA.ID     AS oksPMA_OldID --*
10262          ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMA_NewID --*
10263          ,okcBT.ID AS oksPMA_NewCleID --*
10264          ,okcBT.DNZ_CHR_ID AS oksPMA_NewDnzChrID --*
10265          ,oksPMA.ACTIVITY_ID AS oksPMA_ACTIVITY_ID
10266          ,oksPMA.SELECT_YN AS oksPMA_SELECT_YN
10267          ,oksPMA.CONF_REQ_YN AS oksPMA_CONF_REQ_YN
10268          ,oksPMA.SCH_EXISTS_YN AS oksPMA_SCH_EXISTS_YN
10269          ,oksPMA.PROGRAM_APPLICATION_ID AS oksPMA_PROGRAM_APPLICATION_ID
10270          ,oksPMA.PROGRAM_ID AS oksPMA_PROGRAM_ID
10271          ,oksPMA.PROGRAM_UPDATE_DATE AS oksPMA_PROGRAM_UPDATE_DATE
10272          ,1 AS oksPMA_OBJECT_VERSION_NUMBER
10273          ,oksPMA.SECURITY_GROUP_ID AS oksPMA_SECURITY_GROUP_ID
10274          ,oksPMA.REQUEST_ID AS oksPMA_REQUEST_ID
10275          ,oksPMA.ID AS oksPMA_ORIG_SYSTEM_ID1 --*
10276          ,NULL AS oksPMA_ORIG_SYSTEM_SOURCE_CODE --*
10277          ,'COPY' AS oksPMA_ORIG_SYSTEM_REFERENCE1 --*
10278    FROM
10279    OKS_PM_ACTIVITIES oksPMA
10280   ,OKC_K_LINES_B_TEMP okcBT
10281   WHERE oksPMA.CLE_ID = okcBT.ORIG_SYSTEM_ID1
10282   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
10283   AND oksPMA.DNZ_CHR_ID = P_From_Chr_ID
10284   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
10285                                     --havent been changed from that on the Source Line
10286 
10287   Begin
10288    x_return_status := l_return_status;
10289 
10290   If (P_Partial_Copy_YN = 'N') then
10291    OPEN GetOksPMAFull;
10292   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10293    OPEN GetOksPMAPartial;
10294   End If;
10295 
10296   LOOP
10297    If (P_Partial_Copy_YN = 'N') then
10298      FETCH GetOksPMAFull BULK COLLECT INTO
10299           OksPMARecTab.OksPMA_OldID
10300          ,OksPMARecTab.OksPMA_NewID
10301 	 ,OksPMARecTab.OksPMA_NewCleID
10302 	 ,OksPMARecTab.OksPMA_NewDnzChrID
10303 	 ,OksPMARecTab.OksPMA_ACTIVITY_ID
10304 	 ,OksPMARecTab.OksPMA_SELECT_YN
10305 	 ,OksPMARecTab.OksPMA_CONF_REQ_YN
10306 	 ,OksPMARecTab.OksPMA_SCH_EXISTS_YN
10307 	 ,OksPMARecTab.OksPMA_PROGRAM_APPLICATION_ID
10308 	 ,OksPMARecTab.OksPMA_PROGRAM_ID
10309 	 ,OksPMARecTab.OksPMA_PROGRAM_UPDATE_DATE
10310 	 ,OksPMARecTab.OksPMA_OBJECT_VERSION_NUMBER
10311 	 ,OksPMARecTab.OksPMA_SECURITY_GROUP_ID
10312 	 ,OksPMARecTab.OksPMA_REQUEST_ID
10313 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_ID1
10314 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_SOURCE_CODE
10315 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_REFERENCE1
10316      LIMIT G_BULK_FETCH_LIMIT;
10317    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10318     FETCH GetOksPMAPartial BULK COLLECT INTO
10319           OksPMARecTab.OksPMA_OldID
10320          ,OksPMARecTab.OksPMA_NewID
10321          ,OksPMARecTab.OksPMA_NewCleID
10322          ,OksPMARecTab.OksPMA_NewDnzChrID
10323          ,OksPMARecTab.OksPMA_ACTIVITY_ID
10324          ,OksPMARecTab.OksPMA_SELECT_YN
10325          ,OksPMARecTab.OksPMA_CONF_REQ_YN
10326          ,OksPMARecTab.OksPMA_SCH_EXISTS_YN
10327          ,OksPMARecTab.OksPMA_PROGRAM_APPLICATION_ID
10328          ,OksPMARecTab.OksPMA_PROGRAM_ID
10329          ,OksPMARecTab.OksPMA_PROGRAM_UPDATE_DATE
10330          ,OksPMARecTab.OksPMA_OBJECT_VERSION_NUMBER
10331          ,OksPMARecTab.OksPMA_SECURITY_GROUP_ID
10332          ,OksPMARecTab.OksPMA_REQUEST_ID
10333          ,OksPMARecTab.OksPMA_ORIG_SYSTEM_ID1
10334          ,OksPMARecTab.OksPMA_ORIG_SYSTEM_SOURCE_CODE
10335          ,OksPMARecTab.OksPMA_ORIG_SYSTEM_REFERENCE1
10336      LIMIT G_BULK_FETCH_LIMIT;
10337 
10338    End If;
10339    FORALL i IN OksPMARecTab.OksPMA_NewID.FIRST .. OksPMARecTab.OksPMA_NewID.LAST
10340    INSERT INTO OKS_PM_ACTIVITIES(
10341 	  ID
10342 	 ,CLE_ID
10343 	 ,DNZ_CHR_ID
10344 	 ,ACTIVITY_ID
10345 	 ,SELECT_YN
10346 	 ,CONF_REQ_YN
10347 	 ,SCH_EXISTS_YN
10348 	 ,PROGRAM_APPLICATION_ID
10349 	 ,PROGRAM_ID
10350 	 ,PROGRAM_UPDATE_DATE
10351 	 ,OBJECT_VERSION_NUMBER
10352 	 ,SECURITY_GROUP_ID
10353 	 ,REQUEST_ID
10354 	 ,ORIG_SYSTEM_ID1
10355 	 ,ORIG_SYSTEM_SOURCE_CODE
10356 	 ,ORIG_SYSTEM_REFERENCE1
10357  	 ,CREATED_BY
10358 	 ,CREATION_DATE
10359 	 ,LAST_UPDATED_BY
10360 	 ,LAST_UPDATE_DATE
10361 	 ,LAST_UPDATE_LOGIN
10362    )
10363    SELECT
10364 	  OksPMARecTab.OksPMA_NewID(i)
10365 	 ,OksPMARecTab.OksPMA_NewCleID(i)
10366 	 ,OksPMARecTab.OksPMA_NewDnzChrID(i)
10367 	 ,OksPMARecTab.OksPMA_ACTIVITY_ID(i)
10368 	 ,OksPMARecTab.OksPMA_SELECT_YN(i)
10369 	 ,OksPMARecTab.OksPMA_CONF_REQ_YN(i)
10370 	 ,OksPMARecTab.OksPMA_SCH_EXISTS_YN(i)
10371 	 ,OksPMARecTab.OksPMA_PROGRAM_APPLICATION_ID(i)
10372 	 ,OksPMARecTab.OksPMA_PROGRAM_ID(i)
10373 	 ,OksPMARecTab.OksPMA_PROGRAM_UPDATE_DATE(i)
10374 	 ,OksPMARecTab.OksPMA_OBJECT_VERSION_NUMBER(i)
10375 	 ,OksPMARecTab.OksPMA_SECURITY_GROUP_ID(i)
10376 	 ,OksPMARecTab.OksPMA_REQUEST_ID(i)
10377 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_ID1(i)
10378 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_SOURCE_CODE(i)
10379 	 ,OksPMARecTab.OksPMA_ORIG_SYSTEM_REFERENCE1(i)
10380 	 ,FND_GLOBAL.USER_ID
10381 	 ,SYSDATE
10382 	 ,FND_GLOBAL.USER_ID
10383 	 ,SYSDATE
10384 	 ,FND_GLOBAL.LOGIN_ID
10385 	 FROM DUAL;
10386 
10387     If (P_Partial_Copy_YN = 'N') then
10388      EXIT WHEN GetOksPMAFull%NOTFOUND;
10389     Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10390      EXIT WHEN GetOksPMAPartial%NOTFOUND;
10391     End If;
10392 
10393   END LOOP;
10394 
10395   If GetOksPMAFull%ISOPEN then
10396     CLOSE GetOksPMAFull;
10397   Elsif GetOksPMAPartial%ISOPEN then
10398     CLOSE GetOksPMAPartial;
10399   End If;
10400 
10401       EXCEPTION
10402         WHEN OTHERS THEN
10403         If (GetOksPMAFull%ISOPEN) then
10404           CLOSE GetOksPMAFull;
10405 	Elsif (GetOksPMAPartial%ISOPEN) then
10406 	  CLOSE GetOksPMAPartial;
10407         End IF;
10408 
10409           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10410           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10411           RAISE;
10412 
10413   End copy_oks_pm_activities;
10414 
10415 -----------------------------------------------------------
10416 --===================================================
10417 --  copy_oks_pm_stream_levels
10418 --  Parameters: P_From_Chr_ID : Header ID of source contract
10419 --   	      P_To_Chr_ID   : Header ID of target contract
10420  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10421  --				    or as part of component copy from UI (value = 'Y')
10422 --====================================================
10423 
10424  PROCEDURE copy_oks_pm_stream_levels(P_From_Chr_ID IN NUMBER
10425                                   ,P_To_Chr_ID   IN NUMBER
10426                                   ,P_Partial_Copy_YN IN VARCHAR2
10427 				  ,P_Lines_Count IN NUMBER DEFAULT 0
10428                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10429 
10430    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_PM_STREAM_LEVELS';
10431    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10432    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10433  CURSOR GetOksPMSLFull IS
10434  SELECT
10435    oksPMSL.ID AS oksPMSL_OldID --*
10436   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10437   ,oksPMA.CLE_ID AS oksPMSL_NewCleID --*
10438   ,oksPMA.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10439   ,oksPMA.ID AS oksPMSL_NewActivityLineID --*
10440   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10441   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10442   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10443   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10444   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10445   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10446   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10447   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10448   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10449   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10450   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10451   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10452   ,1 AS oksPMSL_OBJECT_VERSION_NUMBER
10453   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10454   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10455   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10456   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10457   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10458   FROM
10459    OKS_PM_STREAM_LEVELS oksPMSL
10460   ,OKS_PM_ACTIVITIES oksPMA
10461   WHERE
10462       oksPMSL.ACTIVITY_LINE_ID = oksPMA.ORIG_SYSTEM_ID1
10463   AND oksPMA.DNZ_CHR_ID  = P_To_Chr_ID
10464   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID
10465  UNION
10466  SELECT
10467    oksPMSL.ID AS oksPMSL_OldID --*
10468   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10469   ,okcB.ID AS oksPMSL_NewCleID --*
10470   ,okcB.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10471   ,NULL AS oksPMSL_NewActivityLineID --*
10472   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10473   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10474   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10475   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10476   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10477   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10478   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10479   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10480   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10481   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10482   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10483   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10484   ,oksPMSL.OBJECT_VERSION_NUMBER AS oksPMSL_OBJECT_VERSION_NUMBER
10485   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10486   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10487   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10488   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10489   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10490   FROM
10491    OKS_PM_STREAM_LEVELS oksPMSL
10492   ,OKC_K_LINES_B okcB
10493   WHERE
10494       oksPMSL.CLE_ID = okcB.ORIG_SYSTEM_ID1
10495   AND oksPMSL.ACTIVITY_LINE_ID IS NULL
10496   AND okcB.DNZ_CHR_ID = P_To_Chr_ID
10497   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID;
10498 
10499  CURSOR GetOksPMSLPartial IS
10500  SELECT
10501    oksPMSL.ID AS oksPMSL_OldID --*
10502   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10503   ,oksPMA.CLE_ID AS oksPMSL_NewCleID --*
10504   ,oksPMA.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10505   ,oksPMA.ID AS oksPMSL_NewActivityLineID --*
10506   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10507   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10508   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10509   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10510   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10511   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10512   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10513   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10514   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10515   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10516   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10517   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10518   ,1 AS oksPMSL_OBJECT_VERSION_NUMBER
10519   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10520   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10521   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10522   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10523   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10524   FROM
10525    OKS_PM_STREAM_LEVELS oksPMSL
10526   ,OKS_PM_ACTIVITIES oksPMA
10527   ,OKC_K_LINES_B_TEMP okcBT
10528   WHERE
10529       oksPMSL.ACTIVITY_LINE_ID = oksPMA.ORIG_SYSTEM_ID1
10530   AND oksPMA.DNZ_CHR_ID  = okcBT.DNZ_CHR_ID
10531   AND oksPMA.CLE_ID = okcBT.ID
10532   AND oksPMA.DNZ_CHR_ID  = P_To_Chr_ID
10533   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID
10534   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
10535                                     --havent been changed from that on the Source Line
10536  UNION
10537  SELECT
10538    oksPMSL.ID AS oksPMSL_OldID --*
10539   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSL_NewID --*
10540   ,okcBT.ID AS oksPMSL_NewCleID --*
10541   ,okcBT.DNZ_CHR_ID AS oksPMSL_NewDnzChrID --*
10542   ,NULL AS oksPMSL_NewActivityLineID --*
10543   ,oksPMSL.SEQUENCE_NUMBER AS oksPMSL_SEQUENCE_NUMBER
10544   ,oksPMSL.NUMBER_OF_OCCURENCES AS oksPMSL_NUMBER_OF_OCCURENCES
10545   ,oksPMSL.START_DATE AS oksPMSL_START_DATE
10546   ,oksPMSL.END_DATE AS oksPMSL_END_DATE
10547   ,oksPMSL.FREQUENCY AS oksPMSL_FREQUENCY
10548   ,oksPMSL.FREQUENCY_UOM AS oksPMSL_FREQUENCY_UOM
10549   ,oksPMSL.OFFSET_DURATION AS oksPMSL_OFFSET_DURATION
10550   ,oksPMSL.OFFSET_UOM AS oksPMSL_OFFSET_UOM
10551   ,oksPMSL.AUTOSCHEDULE_YN AS oksPMSL_AUTOSCHEDULE_YN
10552   ,oksPMSL.PROGRAM_APPLICATION_ID AS oksPMSL_PROGRAM_APPLICATION_ID
10553   ,oksPMSL.PROGRAM_ID AS oksPMSL_PROGRAM_ID
10554   ,oksPMSL.PROGRAM_UPDATE_DATE AS oksPMSL_PROGRAM_UPDATE_DATE
10555   ,oksPMSL.OBJECT_VERSION_NUMBER AS oksPMSL_OBJECT_VERSION_NUMBER
10556   ,oksPMSL.SECURITY_GROUP_ID AS oksPMSL_SECURITY_GROUP_ID
10557   ,oksPMSL.REQUEST_ID AS oksPMSL_REQUEST_ID
10558   ,oksPMSL.ID AS oksPMSL_ORIG_SYSTEM_ID1 --*
10559   ,NULL AS oksPMSL_ORIG_SYS_SOURCE_CODE --*
10560   ,'COPY' AS oksPMSL_ORIG_SYS_REFERENCE1 --*
10561   FROM
10562    OKS_PM_STREAM_LEVELS oksPMSL
10563   ,OKC_K_LINES_B_TEMP okcBT
10564   WHERE
10565       oksPMSL.CLE_ID = okcBT.ORIG_SYSTEM_ID1
10566   AND oksPMSL.ACTIVITY_LINE_ID IS NULL
10567   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
10568   AND oksPMSL.DNZ_CHR_ID = P_From_Chr_ID
10569   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
10570                                     --havent been changed from that on the Source Line
10571 
10572  Begin
10573   x_return_status := l_return_status;
10574   If (P_Partial_Copy_YN = 'N') then
10575    OPEN GetOksPMSLFull;
10576   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10577    OPEN GetOksPMSLPartial;
10578   End If;
10579 
10580   LOOP
10581    If (P_Partial_Copy_YN = 'N') then
10582     FETCH GetOksPMSLFull BULK COLLECT INTO
10583           OksPMSLRecTab.OksPMSL_OldID
10584          ,OksPMSLRecTab.OksPMSL_NewID
10585 	 ,OksPMSLRecTab.OksPMSL_NewCleID
10586 	 ,OksPMSLRecTab.OksPMSL_NewDnzChrID
10587 	 ,OksPMSLRecTab.OksPMSL_NewActivityLineID
10588 	 ,OksPMSLRecTab.OksPMSL_SEQUENCE_NUMBER
10589 	 ,OksPMSLRecTab.OksPMSL_NUMBER_OF_OCCURENCES
10590 	 ,OksPMSLRecTab.OksPMSL_START_DATE
10591 	 ,OksPMSLRecTab.OksPMSL_END_DATE
10592 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY
10593 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY_UOM
10594 	 ,OksPMSLRecTab.OksPMSL_OFFSET_DURATION
10595 	 ,OksPMSLRecTab.OksPMSL_OFFSET_UOM
10596 	 ,OksPMSLRecTab.OksPMSL_AUTOSCHEDULE_YN
10597 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_APPLICATION_ID
10598 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_ID
10599 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_UPDATE_DATE
10600 	 ,OksPMSLRecTab.OksPMSL_OBJECT_VERSION_NUMBER
10601 	 ,OksPMSLRecTab.OksPMSL_SECURITY_GROUP_ID
10602 	 ,OksPMSLRecTab.OksPMSL_REQUEST_ID
10603 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYSTEM_ID1
10604 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_SOURCE_CODE
10605 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_REFERENCE1
10606      LIMIT G_BULK_FETCH_LIMIT;
10607    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10608     FETCH GetOksPMSLPartial BULK COLLECT INTO
10609           OksPMSLRecTab.OksPMSL_OldID
10610          ,OksPMSLRecTab.OksPMSL_NewID
10611          ,OksPMSLRecTab.OksPMSL_NewCleID
10612          ,OksPMSLRecTab.OksPMSL_NewDnzChrID
10613          ,OksPMSLRecTab.OksPMSL_NewActivityLineID
10614          ,OksPMSLRecTab.OksPMSL_SEQUENCE_NUMBER
10615          ,OksPMSLRecTab.OksPMSL_NUMBER_OF_OCCURENCES
10616          ,OksPMSLRecTab.OksPMSL_START_DATE
10617          ,OksPMSLRecTab.OksPMSL_END_DATE
10618          ,OksPMSLRecTab.OksPMSL_FREQUENCY
10619          ,OksPMSLRecTab.OksPMSL_FREQUENCY_UOM
10620          ,OksPMSLRecTab.OksPMSL_OFFSET_DURATION
10621          ,OksPMSLRecTab.OksPMSL_OFFSET_UOM
10622          ,OksPMSLRecTab.OksPMSL_AUTOSCHEDULE_YN
10623          ,OksPMSLRecTab.OksPMSL_PROGRAM_APPLICATION_ID
10624          ,OksPMSLRecTab.OksPMSL_PROGRAM_ID
10625          ,OksPMSLRecTab.OksPMSL_PROGRAM_UPDATE_DATE
10626          ,OksPMSLRecTab.OksPMSL_OBJECT_VERSION_NUMBER
10627          ,OksPMSLRecTab.OksPMSL_SECURITY_GROUP_ID
10628          ,OksPMSLRecTab.OksPMSL_REQUEST_ID
10629          ,OksPMSLRecTab.OksPMSL_ORIG_SYSTEM_ID1
10630          ,OksPMSLRecTab.OksPMSL_ORIG_SYS_SOURCE_CODE
10631          ,OksPMSLRecTab.OksPMSL_ORIG_SYS_REFERENCE1
10632      LIMIT G_BULK_FETCH_LIMIT;
10633 
10634    End If;
10635 
10636       FORALL i IN OksPMSLRecTab.OksPMSL_NewID.FIRST .. OksPMSLRecTab.OksPMSL_NewID.LAST
10637       INSERT INTO OKS_PM_STREAM_LEVELS (
10638           ID
10639 	 ,CLE_ID
10640 	 ,DNZ_CHR_ID
10641 	 ,ACTIVITY_LINE_ID
10642 	 ,SEQUENCE_NUMBER
10643 	 ,NUMBER_OF_OCCURENCES
10644 	 ,START_DATE
10645 	 ,END_DATE
10646 	 ,FREQUENCY
10647 	 ,FREQUENCY_UOM
10648 	 ,OFFSET_DURATION
10649 	 ,OFFSET_UOM
10650 	 ,AUTOSCHEDULE_YN
10651 	 ,PROGRAM_APPLICATION_ID
10652 	 ,PROGRAM_ID
10653 	 ,PROGRAM_UPDATE_DATE
10654 	 ,OBJECT_VERSION_NUMBER
10655 	 ,SECURITY_GROUP_ID
10656 	 ,REQUEST_ID
10657 	 ,ORIG_SYSTEM_ID1
10658 	 ,ORIG_SYSTEM_SOURCE_CODE
10659 	 ,ORIG_SYSTEM_REFERENCE1
10660 	 ,CREATED_BY
10661 	 ,CREATION_DATE
10662 	 ,LAST_UPDATED_BY
10663 	 ,LAST_UPDATE_DATE
10664 	 ,LAST_UPDATE_LOGIN
10665       )
10666      SELECT
10667     	  OksPMSLRecTab.OksPMSL_NewID(i)
10668 	 ,OksPMSLRecTab.OksPMSL_NewCleID(i)
10669 	 ,OksPMSLRecTab.OksPMSL_NewDnzChrID(i)
10670 	 ,OksPMSLRecTab.OksPMSL_NewActivityLineID(i)
10671 	 ,OksPMSLRecTab.OksPMSL_SEQUENCE_NUMBER(i)
10672 	 ,OksPMSLRecTab.OksPMSL_NUMBER_OF_OCCURENCES(i)
10673 	 ,OksPMSLRecTab.OksPMSL_START_DATE(i)
10674 	 ,OksPMSLRecTab.OksPMSL_END_DATE(i)
10675 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY(i)
10676 	 ,OksPMSLRecTab.OksPMSL_FREQUENCY_UOM(i)
10677 	 ,OksPMSLRecTab.OksPMSL_OFFSET_DURATION(i)
10678 	 ,OksPMSLRecTab.OksPMSL_OFFSET_UOM(i)
10679 	 ,OksPMSLRecTab.OksPMSL_AUTOSCHEDULE_YN(i)
10680 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_APPLICATION_ID(i)
10681 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_ID(i)
10682 	 ,OksPMSLRecTab.OksPMSL_PROGRAM_UPDATE_DATE(i)
10683 	 ,OksPMSLRecTab.OksPMSL_OBJECT_VERSION_NUMBER(i)
10684 	 ,OksPMSLRecTab.OksPMSL_SECURITY_GROUP_ID(i)
10685 	 ,OksPMSLRecTab.OksPMSL_REQUEST_ID(i)
10686 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYSTEM_ID1(i)
10687 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_SOURCE_CODE(i)
10688 	 ,OksPMSLRecTab.OksPMSL_ORIG_SYS_REFERENCE1(i)
10689          ,FND_GLOBAL.USER_ID
10690 	 ,SYSDATE
10691 	 ,FND_GLOBAL.USER_ID
10692 	 ,SYSDATE
10693 	 ,FND_GLOBAL.LOGIN_ID
10694    FROM DUAL;
10695 
10696    IF (P_Partial_Copy_YN = 'N') then
10697     EXIT WHEN GetOksPMSLFull%NOTFOUND;
10698    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10699     EXIT WHEN GetOksPMSLPartial%NOTFOUND;
10700    End If;
10701 
10702   END LOOP;
10703 
10704   If (GetOksPMSLFull%ISOPEN) then
10705     CLOSE GetOksPMSLFull;
10706   Elsif (GetOksPMSLPartial%ISOPEN) then
10707     CLOSE GetOksPMSLPartial;
10708   End If;
10709 
10710         EXCEPTION
10711         WHEN OTHERS THEN
10712         If (GetOksPMSLFull%ISOPEN) then
10713           CLOSE GetOksPMSLFull;
10714         Elsif (GetOksPMSLPartial%ISOPEN) then
10715           CLOSE GetOksPMSLPartial;
10716         End IF;
10717 
10718           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10719           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10720           RAISE;
10721 
10722 
10723  End copy_oks_pm_stream_levels;
10724 
10725 -----------------------------------------------------------
10726 --===================================================
10727 --  copy_oks_pm_schedules
10728 --  Parameters: P_From_Chr_ID : Header ID of source contract
10729 --   	      P_To_Chr_ID   : Header ID of target contract
10730  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
10731  --				    or as part of component copy from UI (value = 'Y')
10732 --====================================================
10733 
10734   PROCEDURE copy_oks_pm_schedules(P_From_Chr_ID IN NUMBER
10735                                   ,P_To_Chr_ID   IN NUMBER
10736                                   ,P_Partial_Copy_YN IN VARCHAR2
10737 				  ,P_Lines_Count IN NUMBER DEFAULT 0
10738                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
10739 
10740    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_PM_SCHEDULES';
10741    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10742    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
10743  CURSOR GetOksPMSCHFull IS
10744  SELECT
10745    oksPMSCH.ID AS oksPMSCH_OldID --*
10746   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSCH_NewID --*
10747   ,oksPMSCH.RULE_ID AS oksPMSCH_RULE_ID
10748   ,1 AS oksPMSCH_OBJECT_VERSION_NUMBER
10749   ,oksPMSL.DNZ_CHR_ID AS oksPMSCH_NewDnzChrID --*
10750   ,oksPMSL.CLE_ID AS oksPMSCH_NewCleID --*
10751   ,oksPMSCH.SCH_SEQUENCE AS oksPMSCH_SCH_SEQUENCE
10752   ,oksPMSCH.SCHEDULE_DATE AS oksPMSCH_SCHEDULE_DATE
10753   ,oksPMSCH.SCHEDULE_DATE_FROM AS oksPMSCH_SCHEDULE_DATE_FROM
10754   ,oksPMSCH.SCHEDULE_DATE_TO AS oksPMSCH_SCHEDULE_DATE_TO
10755   ,oksPMSCH.PMA_RULE_ID AS oksPMSCH_PMA_RULE_ID
10756   ,oksPMSCH.PMP_RULE_ID AS oksPMSCH_PMP_RULE_ID
10757   ,oksPMSL.ACTIVITY_LINE_ID AS oksPMSCH_NewActivityLineID --*
10758   ,oksPMSL.ID AS oksPMSCH_NewStreamLineID --*
10759   ,oksPMSCH.SECURITY_GROUP_ID AS oksPMSCH_SECURITY_GROUP_ID
10760   ,oksPMSCH.PROGRAM_APPLICATION_ID AS oksPMSCH_PROG_APPLICATION_ID
10761   ,oksPMSCH.PROGRAM_ID AS oksPMSCH_PROGRAM_ID
10762   ,oksPMSCH.PROGRAM_UPDATE_DATE AS oksPMSCH_PROGRAM_UPDATE_DATE
10763   ,oksPMSCH.REQUEST_ID AS oksPMSCH_REQUEST_ID
10764  FROM
10765   OKS_PM_SCHEDULES oksPMSCH
10766  ,OKS_PM_STREAM_LEVELS oksPMSL
10767   WHERE
10768   oksPMSCH.STREAM_LINE_ID = oksPMSL.ORIG_SYSTEM_ID1
10769   AND oksPMSL.DNZ_CHR_ID = P_To_Chr_ID
10770   AND oksPMSCH.DNZ_CHR_ID = P_From_Chr_ID;
10771 
10772  CURSOR GetOksPMSCHPartial IS
10773  SELECT
10774    oksPMSCH.ID AS oksPMSCH_OldID --*
10775   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksPMSCH_NewID --*
10776   ,oksPMSCH.RULE_ID AS oksPMSCH_RULE_ID
10777   ,1 AS oksPMSCH_OBJECT_VERSION_NUMBER
10778   ,oksPMSL.DNZ_CHR_ID AS oksPMSCH_NewDnzChrID --*
10779   ,oksPMSL.CLE_ID AS oksPMSCH_NewCleID --*
10780   ,oksPMSCH.SCH_SEQUENCE AS oksPMSCH_SCH_SEQUENCE
10781   ,oksPMSCH.SCHEDULE_DATE AS oksPMSCH_SCHEDULE_DATE
10782   ,oksPMSCH.SCHEDULE_DATE_FROM AS oksPMSCH_SCHEDULE_DATE_FROM
10783   ,oksPMSCH.SCHEDULE_DATE_TO AS oksPMSCH_SCHEDULE_DATE_TO
10784   ,oksPMSCH.PMA_RULE_ID AS oksPMSCH_PMA_RULE_ID
10785   ,oksPMSCH.PMP_RULE_ID AS oksPMSCH_PMP_RULE_ID
10786   ,oksPMSL.ACTIVITY_LINE_ID AS oksPMSCH_NewActivityLineID --*
10787   ,oksPMSL.ID AS oksPMSCH_NewStreamLineID --*
10788   ,oksPMSCH.SECURITY_GROUP_ID AS oksPMSCH_SECURITY_GROUP_ID
10789   ,oksPMSCH.PROGRAM_APPLICATION_ID AS oksPMSCH_PROG_APPLICATION_ID
10790   ,oksPMSCH.PROGRAM_ID AS oksPMSCH_PROGRAM_ID
10791   ,oksPMSCH.PROGRAM_UPDATE_DATE AS oksPMSCH_PROGRAM_UPDATE_DATE
10792   ,oksPMSCH.REQUEST_ID AS oksPMSCH_REQUEST_ID
10793  FROM
10794   OKS_PM_SCHEDULES oksPMSCH
10795  ,OKS_PM_STREAM_LEVELS oksPMSL
10796  ,OKC_K_LINES_B_TEMP okcBT
10797   WHERE
10798   oksPMSCH.STREAM_LINE_ID = oksPMSL.ORIG_SYSTEM_ID1
10799   AND oksPMSL.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
10800   AND oksPMSL.CLE_ID = okcBT.ID
10801   AND oksPMSL.DNZ_CHR_ID = P_To_Chr_ID
10802   AND oksPMSCH.DNZ_CHR_ID = P_From_Chr_ID
10803   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
10804 				    --havent been changed from that on the Source Line
10805 
10806  Begin
10807   x_return_status := l_return_status;
10808   If (P_Partial_Copy_YN = 'N') then
10809    OPEN GetOksPMSCHFull;
10810   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10811    OPEN GetOksPMSCHPartial;
10812   End If;
10813 
10814   LOOP
10815    If (P_Partial_Copy_YN = 'N') then
10816      FETCH GetOksPMSCHFull BULK COLLECT INTO
10817       OksPMSCHRecTab.OksPMSCH_OldID
10818      ,OksPMSCHRecTab.OksPMSCH_NewID
10819      ,OksPMSCHRecTab.OksPMSCH_RULE_ID
10820      ,OksPMSCHRecTab.OksPMSCH_OBJECT_VERSION_NUMBER
10821      ,OksPMSCHRecTab.OksPMSCH_NewDnzChrID
10822      ,OksPMSCHRecTab.OksPMSCH_NewCleID
10823      ,OksPMSCHRecTab.OksPMSCH_SCH_SEQUENCE
10824      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE
10825      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_FROM
10826      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_TO
10827      ,OksPMSCHRecTab.OksPMSCH_PMA_RULE_ID
10828      ,OksPMSCHRecTab.OksPMSCH_PMP_RULE_ID
10829      ,OksPMSCHRecTab.OksPMSCH_NewActivityLineID
10830      ,OksPMSCHRecTab.OksPMSCH_NewStreamLineID
10831      ,OksPMSCHRecTab.OksPMSCH_SECURITY_GROUP_ID
10832      ,OksPMSCHRecTab.OksPMSCH_PROG_APPLICATION_ID
10833      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_ID
10834      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_UPDATE_DATE
10835      ,OksPMSCHRecTab.OksPMSCH_REQUEST_ID
10836      LIMIT G_BULK_FETCH_LIMIT;
10837    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
10838      FETCH GetOksPMSCHPartial BULK COLLECT INTO
10839       OksPMSCHRecTab.OksPMSCH_OldID
10840      ,OksPMSCHRecTab.OksPMSCH_NewID
10841      ,OksPMSCHRecTab.OksPMSCH_RULE_ID
10842      ,OksPMSCHRecTab.OksPMSCH_OBJECT_VERSION_NUMBER
10843      ,OksPMSCHRecTab.OksPMSCH_NewDnzChrID
10844      ,OksPMSCHRecTab.OksPMSCH_NewCleID
10845      ,OksPMSCHRecTab.OksPMSCH_SCH_SEQUENCE
10846      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE
10847      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_FROM
10848      ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_TO
10849      ,OksPMSCHRecTab.OksPMSCH_PMA_RULE_ID
10850      ,OksPMSCHRecTab.OksPMSCH_PMP_RULE_ID
10851      ,OksPMSCHRecTab.OksPMSCH_NewActivityLineID
10852      ,OksPMSCHRecTab.OksPMSCH_NewStreamLineID
10853      ,OksPMSCHRecTab.OksPMSCH_SECURITY_GROUP_ID
10854      ,OksPMSCHRecTab.OksPMSCH_PROG_APPLICATION_ID
10855      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_ID
10856      ,OksPMSCHRecTab.OksPMSCH_PROGRAM_UPDATE_DATE
10857      ,OksPMSCHRecTab.OksPMSCH_REQUEST_ID
10858      LIMIT G_BULK_FETCH_LIMIT;
10859 
10860    End If;
10861 
10862    FORALL i IN OksPMSCHRecTab.OksPMSCH_NewID.FIRST .. OksPMSCHRecTab.OksPMSCH_NewID.LAST
10863    INSERT INTO OKS_PM_SCHEDULES(
10864      ID
10865     ,RULE_ID
10866     ,OBJECT_VERSION_NUMBER
10867     ,DNZ_CHR_ID
10868     ,CLE_ID
10869     ,SCH_SEQUENCE
10870     ,SCHEDULE_DATE
10871     ,SCHEDULE_DATE_FROM
10872     ,SCHEDULE_DATE_TO
10873     ,PMA_RULE_ID
10874     ,PMP_RULE_ID
10875     ,ACTIVITY_LINE_ID
10876     ,STREAM_LINE_ID
10877     ,SECURITY_GROUP_ID
10878     ,PROGRAM_APPLICATION_ID
10879     ,PROGRAM_ID
10880     ,PROGRAM_UPDATE_DATE
10881     ,REQUEST_ID
10882     ,CREATED_BY
10883     ,CREATION_DATE
10884     ,LAST_UPDATED_BY
10885     ,LAST_UPDATE_DATE
10886     ,LAST_UPDATE_LOGIN
10887    )
10888   SELECT
10889      OksPMSCHRecTab.OksPMSCH_NewID(i)
10890     ,OksPMSCHRecTab.OksPMSCH_RULE_ID(i)
10891     ,OksPMSCHRecTab.OksPMSCH_OBJECT_VERSION_NUMBER(i)
10892     ,OksPMSCHRecTab.OksPMSCH_NewDnzChrID(i)
10893     ,OksPMSCHRecTab.OksPMSCH_NewCleID(i)
10894     ,OksPMSCHRecTab.OksPMSCH_SCH_SEQUENCE(i)
10895     ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE(i)
10896     ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_FROM(i)
10897     ,OksPMSCHRecTab.OksPMSCH_SCHEDULE_DATE_TO(i)
10898     ,OksPMSCHRecTab.OksPMSCH_PMA_RULE_ID(i)
10899     ,OksPMSCHRecTab.OksPMSCH_PMP_RULE_ID(i)
10900     ,OksPMSCHRecTab.OksPMSCH_NewActivityLineID(i)
10901     ,OksPMSCHRecTab.OksPMSCH_NewStreamLineID(i)
10902     ,OksPMSCHRecTab.OksPMSCH_SECURITY_GROUP_ID(i)
10903     ,OksPMSCHRecTab.OksPMSCH_PROG_APPLICATION_ID(i)
10904     ,OksPMSCHRecTab.OksPMSCH_PROGRAM_ID(i)
10905     ,OksPMSCHRecTab.OksPMSCH_PROGRAM_UPDATE_DATE(i)
10906     ,OksPMSCHRecTab.OksPMSCH_REQUEST_ID(i)
10907     ,FND_GLOBAL.USER_ID
10908     ,SYSDATE
10909     ,FND_GLOBAL.USER_ID
10910     ,SYSDATE
10911     ,FND_GLOBAL.LOGIN_ID
10912    FROM DUAL;
10913 
10914    If (P_Partial_Copy_YN = 'N') then
10915      EXIT WHEN GetOksPMSCHFull%NOTFOUND;
10916    Elsif (P_Partial_Copy_YN = 'Y') then
10917      EXIT WHEN GetOksPMSCHPartial%NOTFOUND;
10918    End If;
10919 
10920   End LOOP;
10921   If (GetOksPMSCHFull%ISOPEN) then
10922     CLOSE GetOksPMSCHFull;
10923   Elsif (GetOksPMSCHPartial%ISOPEN) then
10924     CLOSE GetOksPMSCHPartial;
10925   End If;
10926 
10927  EXCEPTION
10928         WHEN OTHERS THEN
10929         If (GetOksPMSCHFull%ISOPEN) then
10930           CLOSE GetOksPMSCHFull;
10931 	Elsif (GetOksPMSCHPartial%ISOPEN) then
10932           CLOSE GetOksPMSCHPartial;
10933         End IF;
10934           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
10935           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
10936           RAISE;
10937 
10938  End copy_oks_pm_schedules;
10939 
10940 -----------------------------------------------------------
10941 --==============================================================
10942 --Procedure copy_pm_for_SkippedLines: Used to create PM Stream levels and PM Schedules for those lines
10943 --lines whose PM schedule related entities couldnt be bulk copied because their effective dates had to
10944 --be changed.
10945 --==============================================================
10946   Procedure copy_pm_for_SkippedLines(p_api_version           IN NUMBER
10947 					,P_To_Chr_ID 		 IN NUMBER
10948         				,p_init_msg_list         IN VARCHAR2 DEFAULT OKC_API.G_FALSE
10949         				,x_return_status         OUT NOCOPY VARCHAR2
10950         				,x_msg_count             OUT NOCOPY NUMBER
10951         				,x_msg_data              OUT NOCOPY VARCHAR2) IS
10952 
10953   l_api_name        CONSTANT VARCHAR2(30) := 'copy_pm_for_SkippedLines';
10954   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
10955 
10956   CURSOR GetLinesWithDatesChanged IS
10957   SELECT
10958   a.ID as LINE_ID
10959   from
10960   OKC_K_LINES_B_TEMP a
10961   where a.DNZ_CHR_ID = P_To_Chr_ID
10962   and a.lse_id in (1,19)
10963   and a.DATES_CHANGED_YN = 'Y';
10964 
10965   TYPE lines_tbl_type IS TABLE OF GetLinesWithDatesChanged%ROWTYPE INDEX BY BINARY_INTEGER ;
10966   l_lines_tbl lines_tbl_type;
10967 
10968   --l_Target_Line_ID_WithDtsChngd NUMBER;
10969 
10970   Begin
10971         IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
10972                  FND_LOG.string(FND_LOG.level_procedure
10973                         ,l_module_name
10974                         ,'Entered copy_pm_for_SkippedLines'
10975                          );
10976         END IF;
10977 
10978   OPEN GetLinesWithDatesChanged;
10979   LOOP
10980   FETCH GetLinesWithDatesChanged BULK COLLECT INTO l_lines_tbl LIMIT G_BULK_FETCH_LIMIT;
10981    IF (l_lines_tbl.COUNT > 0) then
10982     FOR i in l_lines_tbl.FIRST..l_lines_tbl.LAST LOOP
10983       Begin
10984          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
10985                  FND_LOG.string(FND_LOG.level_statement
10986                         ,l_module_name
10987                         ,'Target Line ID : '||l_lines_tbl(i).LINE_ID
10988                          );
10989          END IF;
10990 
10991         OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE(p_api_version => p_api_version
10992 						     ,p_init_msg_list => p_init_msg_list
10993                                                      ,x_return_status => x_return_status
10994         					     ,x_msg_count => x_msg_count
10995         					     ,x_msg_data => x_msg_data
10996         					     ,p_contract_line_id => l_lines_tbl(i).LINE_ID);
10997 
10998             If (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
10999                 IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
11000                  FND_LOG.string(FND_LOG.level_statement
11001                         ,l_module_name
11002                         ,'Return status from OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE : x_return_status ='||x_return_status
11003                          );
11004                 END IF;
11005               RETURN;
11006             End If;
11007 
11008             EXCEPTION
11009             WHEN OTHERS THEN
11010                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
11011                  FND_LOG.string(FND_LOG.level_unexpected
11012                         ,l_module_name||'.EXCEPTION'
11013                         ,'Exception in call to OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE, x_return_status ='||x_return_status
11014                          ||'SQLERRM ='||SQLERRM
11015                          );
11016                 END IF;
11017             x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11018             FND_MSG_PUB.add_exc_msg(g_pkg_name, 'OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE', substr(SQLERRM,1,240));
11019             RAISE;
11020       End;
11021     END LOOP; --End LOOP for looping through l_lines_tbl rows
11022    END IF; --End of If check for l_lines_tbl.COUNT > 0
11023 
11024   EXIT WHEN GetLinesWithDatesChanged%NOTFOUND;
11025   END LOOP; --End LOOP for bulk fetch from GetLinesWithDatesChanged cursor
11026    If GetLinesWithDatesChanged%ISOPEN then
11027      CLOSE GetLinesWithDatesChanged;
11028    End If;
11029 
11030      EXCEPTION
11031         WHEN OTHERS THEN
11032           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11033           If GetLinesWithDatesChanged%ISOPEN then
11034            CLOSE GetLinesWithDatesChanged;
11035           End If;
11036           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11037           RAISE;
11038   End copy_pm_for_SkippedLines;
11039 --===================================================
11040 --  copy_oks_pm_action_time_types
11041 --  Parameters: P_From_Chr_ID : Header ID of source contract
11042 --   	      P_To_Chr_ID   : Header ID of target contract
11043  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11044  --				    or as part of component copy from UI (value = 'Y')
11045 --====================================================
11046 
11047  PROCEDURE copy_oks_action_time_types(P_From_Chr_ID IN NUMBER
11048                                   ,P_To_Chr_ID   IN NUMBER
11049                                   ,P_Partial_Copy_YN IN VARCHAR2
11050 				  ,P_Lines_Count IN NUMBER DEFAULT 0
11051                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
11052 
11053    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_ACTION_TIME_TYPES';
11054    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11055    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11056 
11057  CURSOR GetOksATTFull IS
11058  SELECT
11059    oksATT.ID AS oksATT_OldID --*
11060   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksATT_NewID --*
11061   ,okcB.ID AS oksATT_NewCleID--*
11062   ,okcB.DNZ_CHR_ID AS oksATT_NewDnzChrID--*
11063   ,oksATT.ACTION_TYPE_CODE AS oksATT_ACTION_TYPE_CODE
11064   ,oksATT.SECURITY_GROUP_ID AS oksATT_SECURITY_GROUP_ID
11065   ,oksATT.PROGRAM_APPLICATION_ID AS oksATT_PROGRAM_APPLICATION_ID
11066   ,oksATT.PROGRAM_ID AS oksATT_PROGRAM_ID
11067   ,oksATT.PROGRAM_UPDATE_DATE AS oksATT_PROGRAM_UPDATE_DATE
11068   ,oksATT.REQUEST_ID AS oksATT_REQUEST_ID
11069   ,1 AS oksATT_OBJECT_VERSION_NUMBER
11070   ,oksATT.ID AS oksATT_ORIG_SYSTEM_ID1--*
11071   ,NULL AS oksATT_ORIG_SYSTEM_SOURCE_CODE--*
11072   ,'COPY' AS oksATT_ORIG_SYSTEM_REFERENCE1--*
11073  FROM
11074   OKS_ACTION_TIME_TYPES oksATT
11075  ,OKC_K_LINES_B okcB
11076  WHERE oksATT.CLE_ID = okcB.ORIG_SYSTEM_ID1
11077  AND okcB.DNZ_CHR_ID = P_To_Chr_ID
11078  AND oksATT.DNZ_CHR_ID = P_From_Chr_ID;
11079 
11080  CURSOR GetOksATTPartial IS
11081  SELECT
11082    oksATT.ID AS oksATT_OldID --*
11083   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksATT_NewID --*
11084   ,okcBT.ID AS oksATT_NewCleID--*
11085   ,okcBT.DNZ_CHR_ID AS oksATT_NewDnzChrID--*
11086   ,oksATT.ACTION_TYPE_CODE AS oksATT_ACTION_TYPE_CODE
11087   ,oksATT.SECURITY_GROUP_ID AS oksATT_SECURITY_GROUP_ID
11088   ,oksATT.PROGRAM_APPLICATION_ID AS oksATT_PROGRAM_APPLICATION_ID
11089   ,oksATT.PROGRAM_ID AS oksATT_PROGRAM_ID
11090   ,oksATT.PROGRAM_UPDATE_DATE AS oksATT_PROGRAM_UPDATE_DATE
11091   ,oksATT.REQUEST_ID AS oksATT_REQUEST_ID
11092   ,1 AS oksATT_OBJECT_VERSION_NUMBER
11093   ,oksATT.ID AS oksATT_ORIG_SYSTEM_ID1--*
11094   ,NULL AS oksATT_ORIG_SYSTEM_SOURCE_CODE--*
11095   ,'COPY' AS oksATT_ORIG_SYSTEM_REFERENCE1--*
11096  FROM
11097   OKS_ACTION_TIME_TYPES oksATT
11098  ,OKC_K_LINES_B_TEMP okcBT
11099  WHERE oksATT.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11100  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11101  AND oksATT.DNZ_CHR_ID = P_From_Chr_ID;
11102 
11103  Begin
11104   x_return_status := l_return_status;
11105   If (P_Partial_Copy_YN = 'N') then
11106     OPEN GetOksATTFull;
11107   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11108     OPEN GetOksATTPartial;
11109   End If;
11110   LOOP
11111    If (P_Partial_Copy_YN = 'N') then
11112     FETCH GetOksATTFull BULK COLLECT INTO
11113           OksATTRecTab.OksATT_OldID
11114          ,OksATTRecTab.OksATT_NewID
11115 	 ,OksATTRecTab.OksATT_NewCleID
11116 	 ,OksATTRecTab.OksATT_NewDnzChrID
11117 	 ,OksATTRecTab.OksATT_ACTION_TYPE_CODE
11118 	 ,OksATTRecTab.OksATT_SECURITY_GROUP_ID
11119 	 ,OksATTRecTab.OksATT_PROGRAM_APPLICATION_ID
11120 	 ,OksATTRecTab.OksATT_PROGRAM_ID
11121 	 ,OksATTRecTab.OksATT_PROGRAM_UPDATE_DATE
11122 	 ,OksATTRecTab.OksATT_REQUEST_ID
11123 	 ,OksATTRecTab.OksATT_OBJECT_VERSION_NUMBER
11124 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_ID1
11125 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_SOURCE_CODE
11126 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_REFERENCE1
11127       LIMIT G_BULK_FETCH_LIMIT;
11128    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11129     FETCH GetOksATTPartial BULK COLLECT INTO
11130           OksATTRecTab.OksATT_OldID
11131          ,OksATTRecTab.OksATT_NewID
11132          ,OksATTRecTab.OksATT_NewCleID
11133          ,OksATTRecTab.OksATT_NewDnzChrID
11134          ,OksATTRecTab.OksATT_ACTION_TYPE_CODE
11135          ,OksATTRecTab.OksATT_SECURITY_GROUP_ID
11136          ,OksATTRecTab.OksATT_PROGRAM_APPLICATION_ID
11137          ,OksATTRecTab.OksATT_PROGRAM_ID
11138          ,OksATTRecTab.OksATT_PROGRAM_UPDATE_DATE
11139          ,OksATTRecTab.OksATT_REQUEST_ID
11140          ,OksATTRecTab.OksATT_OBJECT_VERSION_NUMBER
11141          ,OksATTRecTab.OksATT_ORIG_SYSTEM_ID1
11142          ,OksATTRecTab.OksATT_ORIG_SYSTEM_SOURCE_CODE
11143          ,OksATTRecTab.OksATT_ORIG_SYSTEM_REFERENCE1
11144       LIMIT G_BULK_FETCH_LIMIT;
11145 
11146    End If;
11147 
11148    FORALL i IN OksATTRecTab.OksATT_NewID.FIRST .. OksATTRecTab.OksATT_NewID.LAST
11149    INSERT INTO OKS_ACTION_TIME_TYPES(
11150 	  ID
11151 	 ,CLE_ID
11152 	 ,DNZ_CHR_ID
11153 	 ,ACTION_TYPE_CODE
11154 	 ,SECURITY_GROUP_ID
11155 	 ,PROGRAM_APPLICATION_ID
11156 	 ,PROGRAM_ID
11157 	 ,PROGRAM_UPDATE_DATE
11158 	 ,REQUEST_ID
11159 	 ,OBJECT_VERSION_NUMBER
11160 	 ,ORIG_SYSTEM_ID1
11161 	 ,ORIG_SYSTEM_SOURCE_CODE
11162 	 ,ORIG_SYSTEM_REFERENCE1
11163 	 ,CREATED_BY
11164 	 ,CREATION_DATE
11165 	 ,LAST_UPDATED_BY
11166 	 ,LAST_UPDATE_DATE
11167 	 ,LAST_UPDATE_LOGIN
11168    )
11169    SELECT
11170           OksATTRecTab.OksATT_NewID(i)
11171 	 ,OksATTRecTab.OksATT_NewCleID(i)
11172 	 ,OksATTRecTab.OksATT_NewDnzChrID(i)
11173 	 ,OksATTRecTab.OksATT_ACTION_TYPE_CODE(i)
11174 	 ,OksATTRecTab.OksATT_SECURITY_GROUP_ID(i)
11175 	 ,OksATTRecTab.OksATT_PROGRAM_APPLICATION_ID(i)
11176 	 ,OksATTRecTab.OksATT_PROGRAM_ID(i)
11177 	 ,OksATTRecTab.OksATT_PROGRAM_UPDATE_DATE(i)
11178 	 ,OksATTRecTab.OksATT_REQUEST_ID(i)
11179 	 ,OksATTRecTab.OksATT_OBJECT_VERSION_NUMBER(i)
11180 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_ID1(i)
11181 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_SOURCE_CODE(i)
11182 	 ,OksATTRecTab.OksATT_ORIG_SYSTEM_REFERENCE1(i)
11183          ,FND_GLOBAL.USER_ID
11184 	 ,SYSDATE
11185 	 ,FND_GLOBAL.USER_ID
11186 	 ,SYSDATE
11187 	 ,FND_GLOBAL.LOGIN_ID
11188    FROM DUAL;
11189 
11190    If (P_Partial_Copy_YN = 'N') then
11191     EXIT WHEN GetOksATTFull%NOTFOUND;
11192    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11193     EXIT WHEN GetOksATTPartial%NOTFOUND;
11194    End If;
11195 
11196   END LOOP;
11197 
11198   If (GetOksATTFull%ISOPEN) then
11199     CLOSE GetOksATTFull;
11200   Elsif (GetOksATTPartial%ISOPEN) then
11201     CLOSE GetOksATTPartial;
11202   End If;
11203 	EXCEPTION
11204        	  WHEN OTHERS THEN
11205 	   If (GetOksATTFull%ISOPEN) then
11206 	     CLOSE GetOksATTFull;
11207 	   Elsif (GetOksATTPartial%ISOPEN) then
11208              CLOSE GetOksATTPartial;
11209        	   End IF;
11210 
11211            x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11212           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11213           RAISE;
11214 
11215  End copy_oks_action_time_types;
11216 
11217 -----------------------------------------------------
11218 --===================================================
11219 --  copy_oks_pm_action_times
11220 --  Parameters: P_From_Chr_ID : Header ID of source contract
11221 --   	      P_To_Chr_ID   : Header ID of target contract
11222  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11223  --				    or as part of component copy from UI (value = 'Y')
11224 --====================================================
11225 
11226  PROCEDURE copy_oks_action_times(P_From_Chr_ID IN NUMBER
11227                                 ,P_To_Chr_ID   IN NUMBER
11228                                 ,P_Partial_Copy_YN IN VARCHAR2
11229 				,P_Lines_Count IN NUMBER DEFAULT 0
11230                                 ,x_return_status OUT NOCOPY VARCHAR2) IS
11231 
11232    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_ACTION_TIMES';
11233    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11234    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11235 
11236  CURSOR GetOksATFull IS
11237  SELECT
11238   oksAT.ID AS oksAT_OldID
11239  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksAT_NewID --*
11240  ,oksATT.ID AS oksAT_NewCovActionTypeID
11241  ,oksATT.CLE_ID AS oksAT_NewCleID
11242  ,oksATT.DNZ_CHR_ID AS oksAT_NewDnzChrID
11243  ,oksAT.UOM_CODE AS oksAT_UOM_CODE
11244  ,oksAT.SUN_DURATION AS oksAT_SUN_DURATION
11245  ,oksAT.MON_DURATION AS oksAT_MON_DURATION
11246  ,oksAT.TUE_DURATION AS oksAT_TUE_DURATION
11247  ,oksAT.WED_DURATION AS oksAT_WED_DURATION
11248  ,oksAT.THU_DURATION AS oksAT_THU_DURATION
11249  ,oksAT.FRI_DURATION AS oksAT_FRI_DURATION
11250  ,oksAT.SAT_DURATION AS oksAT_SAT_DURATION
11251  ,oksAT.SECURITY_GROUP_ID AS oksAT_SECURITY_GROUP_ID
11252  ,oksAT.PROGRAM_APPLICATION_ID AS oksAT_PROGRAM_APPLICATION_ID
11253  ,oksAT.PROGRAM_ID AS oksAT_PROGRAM_ID
11254  ,oksAT.PROGRAM_UPDATE_DATE AS oksAT_PROGRAM_UPDATE_DATE
11255  ,oksAT.REQUEST_ID AS oksAT_REQUEST_ID
11256  ,1 AS oksAT_OBJECT_VERSION_NUMBER
11257  FROM
11258   OKS_ACTION_TIMES oksAT
11259  ,OKS_ACTION_TIME_TYPES oksATT
11260  WHERE oksAT.COV_ACTION_TYPE_ID = oksATT.ORIG_SYSTEM_ID1
11261  AND oksATT.DNZ_CHR_ID = P_To_Chr_ID
11262  AND oksAT.DNZ_CHR_ID = P_From_Chr_ID;
11263 
11264 
11265   CURSOR GetOksATPartial IS
11266   SELECT
11267   oksAT.ID AS oksAT_OldID
11268  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksAT_NewID --*
11269  ,oksATT.ID AS oksAT_NewCovActionTypeID
11270  ,oksATT.CLE_ID AS oksAT_NewCleID
11271  ,oksATT.DNZ_CHR_ID AS oksAT_NewDnzChrID
11272  ,oksAT.UOM_CODE AS oksAT_UOM_CODE
11273  ,oksAT.SUN_DURATION AS oksAT_SUN_DURATION
11274  ,oksAT.MON_DURATION AS oksAT_MON_DURATION
11275  ,oksAT.TUE_DURATION AS oksAT_TUE_DURATION
11276  ,oksAT.WED_DURATION AS oksAT_WED_DURATION
11277  ,oksAT.THU_DURATION AS oksAT_THU_DURATION
11278  ,oksAT.FRI_DURATION AS oksAT_FRI_DURATION
11279  ,oksAT.SAT_DURATION AS oksAT_SAT_DURATION
11280  ,oksAT.SECURITY_GROUP_ID AS oksAT_SECURITY_GROUP_ID
11281  ,oksAT.PROGRAM_APPLICATION_ID AS oksAT_PROGRAM_APPLICATION_ID
11282  ,oksAT.PROGRAM_ID AS oksAT_PROGRAM_ID
11283  ,oksAT.PROGRAM_UPDATE_DATE AS oksAT_PROGRAM_UPDATE_DATE
11284  ,oksAT.REQUEST_ID AS oksAT_REQUEST_ID
11285  ,1 AS oksAT_OBJECT_VERSION_NUMBER
11286  FROM
11287   OKS_ACTION_TIMES oksAT
11288  ,OKS_ACTION_TIME_TYPES oksATT
11289  ,OKC_K_LINES_B_TEMP okcBT
11290  WHERE oksAT.COV_ACTION_TYPE_ID = oksATT.ORIG_SYSTEM_ID1
11291  AND oksATT.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
11292  AND oksATT.CLE_ID = okcBT.ID
11293  AND oksATT.DNZ_CHR_ID = P_To_Chr_ID
11294  AND oksAT.DNZ_CHR_ID = P_From_Chr_ID;
11295 
11296  Begin
11297  x_return_status := l_return_status;
11298 
11299  If (P_Partial_Copy_YN = 'N') then
11300   OPEN GetOksATFull;
11301  Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11302   OPEN GetOksATPartial;
11303  End If;
11304 
11305  LOOP
11306   If (P_Partial_Copy_YN = 'N') then
11307     FETCH GetOksATFull BULK COLLECT INTO
11308           OksATRecTab.OksAT_OldID
11309          ,OksATRecTab.OksAT_NewID
11310 	 ,OksATRecTab.OksAT_NewCovActionTypeID
11311 	 ,OksATRecTab.OksAT_NewCleID
11312 	 ,OksATRecTab.OksAT_NewDnzChrID
11313 	 ,OksATRecTab.OksAT_UOM_CODE
11314 	 ,OksATRecTab.OksAT_SUN_DURATION
11315 	 ,OksATRecTab.OksAT_MON_DURATION
11316 	 ,OksATRecTab.OksAT_TUE_DURATION
11317 	 ,OksATRecTab.OksAT_WED_DURATION
11318 	 ,OksATRecTab.OksAT_THU_DURATION
11319 	 ,OksATRecTab.OksAT_FRI_DURATION
11320 	 ,OksATRecTab.OksAT_SAT_DURATION
11321 	 ,OksATRecTab.OksAT_SECURITY_GROUP_ID
11322 	 ,OksATRecTab.OksAT_PROGRAM_APPLICATION_ID
11323 	 ,OksATRecTab.OksAT_PROGRAM_ID
11324 	 ,OksATRecTab.OksAT_PROGRAM_UPDATE_DATE
11325 	 ,OksATRecTab.OksAT_REQUEST_ID
11326 	 ,OksATRecTab.OksAT_OBJECT_VERSION_NUMBER
11327          LIMIT G_BULK_FETCH_LIMIT;
11328   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11329     FETCH GetOksATPartial BULK COLLECT INTO
11330           OksATRecTab.OksAT_OldID
11331          ,OksATRecTab.OksAT_NewID
11332          ,OksATRecTab.OksAT_NewCovActionTypeID
11333          ,OksATRecTab.OksAT_NewCleID
11334          ,OksATRecTab.OksAT_NewDnzChrID
11335          ,OksATRecTab.OksAT_UOM_CODE
11336          ,OksATRecTab.OksAT_SUN_DURATION
11337          ,OksATRecTab.OksAT_MON_DURATION
11338          ,OksATRecTab.OksAT_TUE_DURATION
11339          ,OksATRecTab.OksAT_WED_DURATION
11340          ,OksATRecTab.OksAT_THU_DURATION
11341          ,OksATRecTab.OksAT_FRI_DURATION
11342          ,OksATRecTab.OksAT_SAT_DURATION
11343          ,OksATRecTab.OksAT_SECURITY_GROUP_ID
11344          ,OksATRecTab.OksAT_PROGRAM_APPLICATION_ID
11345          ,OksATRecTab.OksAT_PROGRAM_ID
11346          ,OksATRecTab.OksAT_PROGRAM_UPDATE_DATE
11347          ,OksATRecTab.OksAT_REQUEST_ID
11348          ,OksATRecTab.OksAT_OBJECT_VERSION_NUMBER
11349          LIMIT G_BULK_FETCH_LIMIT;
11350 
11351   End If;
11352 
11353   FORALL i IN OksATRecTab.OksAT_NewID.FIRST .. OksATRecTab.OksAT_NewID.LAST
11354   INSERT INTO OKS_ACTION_TIMES (
11355           ID
11356 	 ,COV_ACTION_TYPE_ID
11357 	 ,CLE_ID
11358 	 ,DNZ_CHR_ID
11359 	 ,UOM_CODE
11360 	 ,SUN_DURATION
11361 	 ,MON_DURATION
11362 	 ,TUE_DURATION
11363 	 ,WED_DURATION
11364 	 ,THU_DURATION
11365 	 ,FRI_DURATION
11366 	 ,SAT_DURATION
11367 	 ,SECURITY_GROUP_ID
11368 	 ,PROGRAM_APPLICATION_ID
11369 	 ,PROGRAM_ID
11370 	 ,PROGRAM_UPDATE_DATE
11371 	 ,REQUEST_ID
11372 	 ,OBJECT_VERSION_NUMBER
11373 	 ,CREATED_BY
11374 	 , CREATION_DATE
11375 	 ,LAST_UPDATED_BY
11376 	 ,LAST_UPDATE_DATE
11377 	 ,LAST_UPDATE_LOGIN
11378        )
11379   SELECT
11380     OksATRecTab.OksAT_NewID(i)
11381    ,OksATRecTab.OksAT_NewCovActionTypeID(i)
11382    ,OksATRecTab.OksAT_NewCleID(i)
11383    ,OksATRecTab.OksAT_NewDnzChrID(i)
11384    ,OksATRecTab.OksAT_UOM_CODE(i)
11385    ,OksATRecTab.OksAT_SUN_DURATION(i)
11386    ,OksATRecTab.OksAT_MON_DURATION(i)
11387    ,OksATRecTab.OksAT_TUE_DURATION(i)
11388    ,OksATRecTab.OksAT_WED_DURATION(i)
11389    ,OksATRecTab.OksAT_THU_DURATION(i)
11390    ,OksATRecTab.OksAT_FRI_DURATION(i)
11391    ,OksATRecTab.OksAT_SAT_DURATION(i)
11392    ,OksATRecTab.OksAT_SECURITY_GROUP_ID(i)
11393    ,OksATRecTab.OksAT_PROGRAM_APPLICATION_ID(i)
11394    ,OksATRecTab.OksAT_PROGRAM_ID(i)
11395    ,OksATRecTab.OksAT_PROGRAM_UPDATE_DATE(i)
11396    ,OksATRecTab.OksAT_REQUEST_ID(i)
11397    ,OksATRecTab.OksAT_OBJECT_VERSION_NUMBER(i)
11398    ,FND_GLOBAL.USER_ID
11399    ,SYSDATE
11400    ,FND_GLOBAL.USER_ID
11401    ,SYSDATE
11402    ,FND_GLOBAL.LOGIN_ID
11403   FROM DUAL;
11404 
11405   If (P_Partial_Copy_YN = 'N') then
11406    EXIT WHEN GetOksATFull%NOTFOUND;
11407   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11408    EXIT WHEN GetOksATPartial%NOTFOUND;
11409   End If;
11410 
11411  END LOOP;
11412  If (GetOksATFull%ISOPEN) then
11413     CLOSE GetOksATFull;
11414  Elsif (GetOksATPartial%ISOPEN) then
11415     CLOSE GetOksATPartial;
11416  End If;
11417 
11418         EXCEPTION
11419           WHEN OTHERS THEN
11420            If (GetOksATFull%ISOPEN) then
11421              CLOSE GetOksATFull;
11422 	   Elsif (GetOksATPartial%ISOPEN) then
11423 	     CLOSE GetOksATPartial;
11424            End IF;
11425 
11426           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11427           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11428           RAISE;
11429 
11430 
11431  End copy_oks_action_times;
11432 
11433 --------------------------------------------------------
11434 --===================================================
11435 --  copy_oks_k_sales_credits
11436 --  Parameters: P_From_Chr_ID : Header ID of source contract
11437 --   	      P_To_Chr_ID   : Header ID of target contract
11438  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11439  --				    or as part of component copy from UI (value = 'Y')
11440 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
11441 --               use cursor GetOksSCFull
11442 --            If (P_Partial_Copy_YN = 'Y') then
11443 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
11444 --                Only rows for only Header , use cursor GetOksSCPartial_H
11445 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
11446 --                Both rows for both Header and Lines need to be copied, use cursor GetOksSCPartial_HNL
11447 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
11448 --                Only rows for chosen Lines are copied, use cursor GetOksSCPartial_L
11449 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
11450 --                nothing needs to be copied, no copy needed
11451 --              End If
11452 --            End If
11453 
11454 --====================================================
11455  PROCEDURE copy_oks_k_sales_credits(P_From_Chr_ID IN NUMBER
11456                                  ,P_To_Chr_ID   IN NUMBER
11457                                  ,P_Partial_Copy_YN IN VARCHAR2
11458                                  ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
11459                                  ,P_Lines_Count IN NUMBER DEFAULT 0
11460                                  ,x_return_status OUT NOCOPY VARCHAR2) IS
11461 
11462    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_SALES_CREDITS';
11463    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11464    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11465 
11466  CURSOR GetOksSCFull IS
11467  SELECT
11468   oksSC.ID AS oksSC_OldID
11469  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11470  ,oksSC.PERCENT AS oksSC_PERCENT
11471  ,okcH.ID AS oksSC_NewChrID
11472  ,NULL AS oksSC_NewCleID
11473  ,oksSC.CTC_ID AS oksSC_CTC_ID
11474  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11475  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11476  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11477  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11478  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11479  FROM
11480    OKS_K_SALES_CREDITS oksSC
11481   ,OKC_K_HEADERS_B okcH
11482  WHERE oksSC.CHR_ID = okcH.ORIG_SYSTEM_ID1
11483  AND oksSC.CLE_ID IS NULL
11484  AND okcH.ID = P_To_Chr_ID
11485  AND oksSC.CHR_ID = P_From_Chr_ID
11486  UNION
11487  SELECT
11488   oksSC.ID AS oksSC_OldID
11489  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11490  ,oksSC.PERCENT AS oksSC_PERCENT
11491  ,okcB.DNZ_CHR_ID AS oksSC_NewChrID
11492  ,okcB.ID AS oksSC_NewCleID
11493  ,oksSC.CTC_ID AS oksSC_CTC_ID
11494  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11495  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11496  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11497  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11498  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11499  FROM
11500   OKS_K_SALES_CREDITS oksSC
11501  ,OKC_K_LINES_B okcB
11502  WHERE oksSC.CLE_ID = okcB.ORIG_SYSTEM_ID1
11503  AND okcB.DNZ_CHR_ID = P_To_Chr_ID
11504  AND oksSC.CHR_ID = P_From_Chr_ID;
11505 
11506  CURSOR GetOksSCPartial_H IS
11507  SELECT
11508   oksSC.ID AS oksSC_OldID
11509  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11510  ,oksSC.PERCENT AS oksSC_PERCENT
11511  ,okcH.ID AS oksSC_NewChrID
11512  ,NULL AS oksSC_NewCleID
11513  ,oksSC.CTC_ID AS oksSC_CTC_ID
11514  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11515  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11516  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11517  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11518  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11519  FROM
11520    OKS_K_SALES_CREDITS oksSC
11521   ,OKC_K_HEADERS_B okcH
11522  WHERE oksSC.CHR_ID = okcH.ORIG_SYSTEM_ID1
11523  AND oksSC.CLE_ID IS NULL
11524  AND okcH.ID = P_To_Chr_ID
11525  AND oksSC.CHR_ID = P_From_Chr_ID;
11526 
11527  CURSOR GetOksSCPartial_L IS
11528  SELECT
11529   oksSC.ID AS oksSC_OldID
11530  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11531  ,oksSC.PERCENT AS oksSC_PERCENT
11532  ,okcBT.DNZ_CHR_ID AS oksSC_NewChrID
11533  ,okcBT.ID AS oksSC_NewCleID
11534  ,oksSC.CTC_ID AS oksSC_CTC_ID
11535  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11536  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11537  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11538  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11539  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11540  FROM
11541    OKS_K_SALES_CREDITS oksSC
11542   ,OKC_K_LINES_B_TEMP okcBT
11543  WHERE
11544      oksSC.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11545  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11546  AND oksSC.CHR_ID = P_From_Chr_ID;
11547 
11548  CURSOR GetOksSCPartial_HNL IS
11549   SELECT
11550   oksSC.ID AS oksSC_OldID
11551  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11552  ,oksSC.PERCENT AS oksSC_PERCENT
11553  ,okcH.ID AS oksSC_NewChrID
11554  ,NULL AS oksSC_NewCleID
11555  ,oksSC.CTC_ID AS oksSC_CTC_ID
11556  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11557  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11558  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11559  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11560  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11561  FROM
11562    OKS_K_SALES_CREDITS oksSC
11563   ,OKC_K_HEADERS_B okcH
11564  WHERE oksSC.CHR_ID = okcH.ORIG_SYSTEM_ID1
11565  AND oksSC.CLE_ID IS NULL
11566  AND okcH.ID = P_To_Chr_ID
11567  AND oksSC.CHR_ID = P_From_Chr_ID
11568  UNION
11569   SELECT
11570   oksSC.ID AS oksSC_OldID
11571  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSC_NewID
11572  ,oksSC.PERCENT AS oksSC_PERCENT
11573  ,okcBT.DNZ_CHR_ID AS oksSC_NewChrID
11574  ,okcBT.ID AS oksSC_NewCleID
11575  ,oksSC.CTC_ID AS oksSC_CTC_ID
11576  ,oksSC.SALES_CREDIT_TYPE_ID1 AS oksSC_SALES_CREDIT_TYPE_ID1
11577  ,oksSC.SALES_CREDIT_TYPE_ID2 AS oksSC_SALES_CREDIT_TYPE_ID2
11578  ,1 AS oksSC_OBJECT_VERSION_NUMBER
11579  ,oksSC.SECURITY_GROUP_ID AS oksSC_SECURITY_GROUP_ID
11580  ,oksSC.SALES_GROUP_ID AS oksSC_SALES_GROUP_ID
11581  FROM
11582    OKS_K_SALES_CREDITS oksSC
11583   ,OKC_K_LINES_B_TEMP okcBT
11584  WHERE
11585      oksSC.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11586  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11587  AND oksSC.CHR_ID = P_From_Chr_ID;
11588 
11589  Begin
11590   x_return_status := l_return_status;
11591 
11592   If (P_Partial_Copy_YN = 'N') then
11593    OPEN GetOksSCFull;
11594   Elsif (P_Partial_Copy_YN = 'Y') then
11595    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
11596     OPEN GetOksSCPartial_H;
11597    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
11598     OPEN GetOksSCPartial_HNL;
11599    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
11600     OPEN GetOksSCPartial_L;
11601    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
11602     RETURN;
11603    End If;
11604   End If;
11605 
11606   LOOP
11607    IF (P_Partial_Copy_YN = 'N') then
11608     FETCH GetOksSCFull BULK COLLECT INTO
11609      OksSCRecTab.OksSC_OldID
11610     ,OksSCRecTab.OksSC_NewID
11611     ,OksSCRecTab.OksSC_PERCENT
11612     ,OksSCRecTab.OksSC_NewChrID
11613     ,OksSCRecTab.OksSC_NewCleID
11614     ,OksSCRecTab.OksSC_CTC_ID
11615     ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11616     ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11617     ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11618     ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11619     ,OksSCRecTab.OksSC_SALES_GROUP_ID
11620     LIMIT G_BULK_FETCH_LIMIT;
11621    Elsif (P_Partial_Copy_YN = 'Y') then
11622     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
11623      FETCH GetOksSCPartial_H BULK COLLECT INTO
11624       OksSCRecTab.OksSC_OldID
11625      ,OksSCRecTab.OksSC_NewID
11626      ,OksSCRecTab.OksSC_PERCENT
11627      ,OksSCRecTab.OksSC_NewChrID
11628      ,OksSCRecTab.OksSC_NewCleID
11629      ,OksSCRecTab.OksSC_CTC_ID
11630      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11631      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11632      ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11633      ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11634      ,OksSCRecTab.OksSC_SALES_GROUP_ID
11635      LIMIT G_BULK_FETCH_LIMIT;
11636     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
11637      FETCH GetOksSCPartial_HNL BULK COLLECT INTO
11638       OksSCRecTab.OksSC_OldID
11639      ,OksSCRecTab.OksSC_NewID
11640      ,OksSCRecTab.OksSC_PERCENT
11641      ,OksSCRecTab.OksSC_NewChrID
11642      ,OksSCRecTab.OksSC_NewCleID
11643      ,OksSCRecTab.OksSC_CTC_ID
11644      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11645      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11646      ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11647      ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11648      ,OksSCRecTab.OksSC_SALES_GROUP_ID
11649     LIMIT G_BULK_FETCH_LIMIT;
11650 
11651     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
11652      FETCH GetOksSCPartial_L BULK COLLECT INTO
11653       OksSCRecTab.OksSC_OldID
11654      ,OksSCRecTab.OksSC_NewID
11655      ,OksSCRecTab.OksSC_PERCENT
11656      ,OksSCRecTab.OksSC_NewChrID
11657      ,OksSCRecTab.OksSC_NewCleID
11658      ,OksSCRecTab.OksSC_CTC_ID
11659      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1
11660      ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2
11661      ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER
11662      ,OksSCRecTab.OksSC_SECURITY_GROUP_ID
11663      ,OksSCRecTab.OksSC_SALES_GROUP_ID
11664     LIMIT G_BULK_FETCH_LIMIT;
11665     End If;
11666    End If;
11667 
11668    FORALL i IN OksSCRecTab.OksSC_NewID.FIRST .. OksSCRecTab.OksSC_NewID.LAST
11669    INSERT INTO OKS_K_SALES_CREDITS(
11670     ID
11671    ,PERCENT
11672    ,CHR_ID
11673    ,CLE_ID
11674    ,CTC_ID
11675    ,SALES_CREDIT_TYPE_ID1
11676    ,SALES_CREDIT_TYPE_ID2
11677    ,OBJECT_VERSION_NUMBER
11678    ,SECURITY_GROUP_ID
11679    ,SALES_GROUP_ID
11680    ,CREATED_BY
11681    ,CREATION_DATE
11682    ,LAST_UPDATED_BY
11683    ,LAST_UPDATE_DATE
11684    )
11685    SELECT
11686     OksSCRecTab.OksSC_NewID(i)
11687    ,OksSCRecTab.OksSC_PERCENT(i)
11688    ,OksSCRecTab.OksSC_NewChrID(i)
11689    ,OksSCRecTab.OksSC_NewCleID(i)
11690    ,OksSCRecTab.OksSC_CTC_ID(i)
11691    ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID1(i)
11692    ,OksSCRecTab.OksSC_SALES_CREDIT_TYPE_ID2(i)
11693    ,OksSCRecTab.OksSC_OBJECT_VERSION_NUMBER(i)
11694    ,OksSCRecTab.OksSC_SECURITY_GROUP_ID(i)
11695    ,OksSCRecTab.OksSC_SALES_GROUP_ID(i)
11696    ,FND_GLOBAL.USER_ID
11697    ,SYSDATE
11698    ,FND_GLOBAL.USER_ID
11699    ,SYSDATE
11700    FROM DUAL;
11701 
11702    If (P_Partial_Copy_YN = 'N') then
11703     EXIT WHEN GetOksSCFull%NOTFOUND;
11704    Elsif (P_Partial_Copy_YN = 'Y') then
11705     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
11706      EXIT WHEN GetOksSCPartial_H%NOTFOUND;
11707     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
11708      EXIT WHEN GetOksSCPartial_HNL%NOTFOUND;
11709     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
11710      EXIT WHEN GetOksSCPartial_L%NOTFOUND;
11711     End If;
11712    End If;
11713 
11714   END LOOP;
11715 
11716    If GetOksSCFull%ISOPEN then
11717     CLOSE GetOksSCFull;
11718    Elsif GetOksSCPartial_H%ISOPEN then
11719     CLOSE GetOksSCPartial_H;
11720    Elsif GetOksSCPartial_HNL%ISOPEN then
11721     CLOSE GetOksSCPartial_HNL;
11722    Elsif GetOksSCPartial_L%ISOPEN then
11723     CLOSE GetOksSCPartial_L;
11724    End If;
11725 
11726   EXCEPTION
11727           WHEN OTHERS THEN
11728 	   If GetOksSCFull%ISOPEN then
11729 	    CLOSE GetOksSCFull;
11730   	   Elsif GetOksSCPartial_H%ISOPEN then
11731    	    CLOSE GetOksSCPartial_H;
11732   	   Elsif GetOksSCPartial_HNL%ISOPEN then
11733    	    CLOSE GetOksSCPartial_HNL;
11734   	   Elsif GetOksSCPartial_L%ISOPEN then
11735    	    CLOSE GetOksSCPartial_L;
11736    	   End If;
11737 
11738           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11739           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
11740           RAISE;
11741 
11742 End copy_oks_k_sales_credits;
11743 
11744 ------------------------------------------------------------
11745 --===================================================
11746 --  copy_oks_billrate_schedules
11747 --  Parameters: P_From_Chr_ID : Header ID of source contract
11748 --   	      P_To_Chr_ID   : Header ID of target contract
11749  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
11750  --				    or as part of component copy from UI (value = 'Y')
11751 --====================================================
11752 
11753 PROCEDURE copy_oks_billrate_schedules(P_From_Chr_ID IN NUMBER
11754                                      ,P_To_Chr_ID   IN NUMBER
11755                                      ,P_Partial_Copy_YN IN VARCHAR2
11756 				     ,P_Lines_Count IN NUMBER DEFAULT 0
11757                                      ,x_return_status OUT NOCOPY VARCHAR2) IS
11758 
11759    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_BILLRATE_SCHEDULES';
11760    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
11761    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
11762 
11763  CURSOR GetOksBSCHFull IS
11764  SELECT
11765   oksBSCH.ID AS oksBSCH_OldID
11766  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksBSCH_NewID
11767  ,okcB.ID AS oksBSCH_NewCleID
11768  ,okcB.CLE_ID AS oksBSCH_NewBTCleID
11769  ,okcB.DNZ_CHR_ID AS oksBSCH_NewDnzChrID
11770  ,oksBSCH.START_HOUR AS oksBSCH_START_HOUR
11771  ,oksBSCH.START_MINUTE AS oksBSCH_START_MINUTE
11772  ,oksBSCH.END_HOUR AS oksBSCH_END_HOUR
11773  ,oksBSCH.END_MINUTE AS oksBSCH_END_MINUTE
11774  ,oksBSCH.MONDAY_FLAG AS oksBSCH_MONDAY_FLAG
11775  ,oksBSCH.TUESDAY_FLAG AS oksBSCH_TUESDAY_FLAG
11776  ,oksBSCH.WEDNESDAY_FLAG AS oksBSCH_WEDNESDAY_FLAG
11777  ,oksBSCH.THURSDAY_FLAG AS oksBSCH_THURSDAY_FLAG
11778  ,oksBSCH.FRIDAY_FLAG AS oksBSCH_FRIDAY_FLAG
11779  ,oksBSCH.SATURDAY_FLAG AS oksBSCH_SATURDAY_FLAG
11780  ,oksBSCH.SUNDAY_FLAG AS oksBSCH_SUNDAY_FLAG
11781  ,oksBSCH.OBJECT1_ID1 AS oksBSCH_OBJECT1_ID1
11782  ,oksBSCH.OBJECT1_ID2 AS oksBSCH_OBJECT1_ID2
11783  ,oksBSCH.JTOT_OBJECT1_CODE AS oksBSCH_JTOT_OBJECT1_CODE
11784  ,oksBSCH.BILL_RATE_CODE AS oksBSCH_BILL_RATE_CODE
11785  ,oksBSCH.FLAT_RATE AS oksBSCH_FLAT_RATE
11786  ,oksBSCH.UOM AS oksBSCH_UOM
11787  ,oksBSCH.HOLIDAY_YN AS oksBSCH_HOLIDAY_YN
11788  ,oksBSCH.PERCENT_OVER_LIST_PRICE AS oksBSCH_PCT_OVER_LIST_PRICE
11789  ,oksBSCH.PROGRAM_APPLICATION_ID AS oksBSCH_PRGRM_APPLICATION_ID
11790  ,oksBSCH.PROGRAM_ID AS oksBSCH_PROGRAM_ID
11791  ,oksBSCH.PROGRAM_UPDATE_DATE AS oksBSCH_PROGRAM_UPDATE_DATE
11792  ,oksBSCH.REQUEST_ID AS oksBSCH_REQUEST_ID
11793  ,oksBSCH.SECURITY_GROUP_ID AS oksBSCH_SECURITY_GROUP_ID
11794  ,1 AS oksBSCH_OBJECT_VERSION_NUMBER
11795  FROM
11796   OKS_BILLRATE_SCHEDULES oksBSCH
11797  ,OKC_K_LINES_B okcB
11798  WHERE oksBSCH.CLE_ID = okcB.ORIG_SYSTEM_ID1
11799  AND okcB.DNZ_CHR_ID = P_To_Chr_ID
11800  AND oksBSCH.DNZ_CHR_ID = P_From_Chr_ID;
11801 
11802  CURSOR GetOksBSCHPartial IS
11803  SELECT
11804   oksBSCH.ID AS oksBSCH_OldID
11805  ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksBSCH_NewID
11806  ,okcBT.ID AS oksBSCH_NewCleID
11807  ,okcBT.CLE_ID AS oksBSCH_NewBTCleID
11808  ,okcBT.DNZ_CHR_ID AS oksBSCH_NewDnzChrID
11809  ,oksBSCH.START_HOUR AS oksBSCH_START_HOUR
11810  ,oksBSCH.START_MINUTE AS oksBSCH_START_MINUTE
11811  ,oksBSCH.END_HOUR AS oksBSCH_END_HOUR
11812  ,oksBSCH.END_MINUTE AS oksBSCH_END_MINUTE
11813  ,oksBSCH.MONDAY_FLAG AS oksBSCH_MONDAY_FLAG
11814  ,oksBSCH.TUESDAY_FLAG AS oksBSCH_TUESDAY_FLAG
11815  ,oksBSCH.WEDNESDAY_FLAG AS oksBSCH_WEDNESDAY_FLAG
11816  ,oksBSCH.THURSDAY_FLAG AS oksBSCH_THURSDAY_FLAG
11817  ,oksBSCH.FRIDAY_FLAG AS oksBSCH_FRIDAY_FLAG
11818  ,oksBSCH.SATURDAY_FLAG AS oksBSCH_SATURDAY_FLAG
11819  ,oksBSCH.SUNDAY_FLAG AS oksBSCH_SUNDAY_FLAG
11820  ,oksBSCH.OBJECT1_ID1 AS oksBSCH_OBJECT1_ID1
11821  ,oksBSCH.OBJECT1_ID2 AS oksBSCH_OBJECT1_ID2
11822  ,oksBSCH.JTOT_OBJECT1_CODE AS oksBSCH_JTOT_OBJECT1_CODE
11823  ,oksBSCH.BILL_RATE_CODE AS oksBSCH_BILL_RATE_CODE
11824  ,oksBSCH.FLAT_RATE AS oksBSCH_FLAT_RATE
11825  ,oksBSCH.UOM AS oksBSCH_UOM
11826  ,oksBSCH.HOLIDAY_YN AS oksBSCH_HOLIDAY_YN
11827  ,oksBSCH.PERCENT_OVER_LIST_PRICE AS oksBSCH_PCT_OVER_LIST_PRICE
11828  ,oksBSCH.PROGRAM_APPLICATION_ID AS oksBSCH_PRGRM_APPLICATION_ID
11829  ,oksBSCH.PROGRAM_ID AS oksBSCH_PROGRAM_ID
11830  ,oksBSCH.PROGRAM_UPDATE_DATE AS oksBSCH_PROGRAM_UPDATE_DATE
11831  ,oksBSCH.REQUEST_ID AS oksBSCH_REQUEST_ID
11832  ,oksBSCH.SECURITY_GROUP_ID AS oksBSCH_SECURITY_GROUP_ID
11833  ,1 AS oksBSCH_OBJECT_VERSION_NUMBER
11834  FROM
11835   OKS_BILLRATE_SCHEDULES oksBSCH
11836  ,OKC_K_LINES_B_TEMP okcBT
11837  WHERE oksBSCH.CLE_ID = okcBT.ORIG_SYSTEM_ID1
11838  AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
11839  AND oksBSCH.DNZ_CHR_ID = P_From_Chr_ID;
11840 
11841 
11842  Begin
11843   x_return_status := l_return_status;
11844   If (P_Partial_Copy_YN = 'N') then
11845    OPEN GetOksBSCHFull;
11846   Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11847    OPEN GetOksBSCHPartial;
11848   End If;
11849 
11850   LOOP
11851    If (P_Partial_Copy_YN = 'N') then
11852     FETCH GetOksBSCHFull BULK COLLECT INTO
11853           OksBSCHRecTab.OksBSCH_OldID
11854          ,OksBSCHRecTab.OksBSCH_NewID
11855 	 ,OksBSCHRecTab.OksBSCH_NewCleID
11856 	 ,OksBSCHRecTab.OksBSCH_NewBTCleID
11857 	 ,OksBSCHRecTab.OksBSCH_NewDnzChrID
11858 	 ,OksBSCHRecTab.OksBSCH_START_HOUR
11859 	 ,OksBSCHRecTab.OksBSCH_START_MINUTE
11860 	 ,OksBSCHRecTab.OksBSCH_END_HOUR
11861 	 ,OksBSCHRecTab.OksBSCH_END_MINUTE
11862 	 ,OksBSCHRecTab.OksBSCH_MONDAY_FLAG
11863 	 ,OksBSCHRecTab.OksBSCH_TUESDAY_FLAG
11864 	 ,OksBSCHRecTab.OksBSCH_WEDNESDAY_FLAG
11865 	 ,OksBSCHRecTab.OksBSCH_THURSDAY_FLAG
11866 	 ,OksBSCHRecTab.OksBSCH_FRIDAY_FLAG
11867 	 ,OksBSCHRecTab.OksBSCH_SATURDAY_FLAG
11868 	 ,OksBSCHRecTab.OksBSCH_SUNDAY_FLAG
11869 	 ,OksBSCHRecTab.OksBSCH_OBJECT1_ID1
11870 	 ,OksBSCHRecTab.OksBSCH_OBJECT1_ID2
11871 	 ,OksBSCHRecTab.OksBSCH_JTOT_OBJECT1_CODE
11872 	 ,OksBSCHRecTab.OksBSCH_BILL_RATE_CODE
11873 	 ,OksBSCHRecTab.OksBSCH_FLAT_RATE
11874 	 ,OksBSCHRecTab.OksBSCH_UOM
11875 	 ,OksBSCHRecTab.OksBSCH_HOLIDAY_YN
11876 	 ,OksBSCHRecTab.OksBSCH_PCT_OVER_LIST_PRICE
11877 	 ,OksBSCHRecTab.OksBSCH_PRGRM_APPLICATION_ID
11878 	 ,OksBSCHRecTab.OksBSCH_PROGRAM_ID
11879 	 ,OksBSCHRecTab.OksBSCH_PROGRAM_UPDATE_DATE
11880 	 ,OksBSCHRecTab.OksBSCH_REQUEST_ID
11881 	 ,OksBSCHRecTab.OksBSCH_SECURITY_GROUP_ID
11882 	 ,OksBSCHRecTab.OksBSCH_OBJECT_VERSION_NUMBER
11883      LIMIT G_BULK_FETCH_LIMIT;
11884    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11885     FETCH GetOksBSCHPartial BULK COLLECT INTO
11886           OksBSCHRecTab.OksBSCH_OldID
11887          ,OksBSCHRecTab.OksBSCH_NewID
11888          ,OksBSCHRecTab.OksBSCH_NewCleID
11889          ,OksBSCHRecTab.OksBSCH_NewBTCleID
11890          ,OksBSCHRecTab.OksBSCH_NewDnzChrID
11891          ,OksBSCHRecTab.OksBSCH_START_HOUR
11892          ,OksBSCHRecTab.OksBSCH_START_MINUTE
11893          ,OksBSCHRecTab.OksBSCH_END_HOUR
11894          ,OksBSCHRecTab.OksBSCH_END_MINUTE
11895          ,OksBSCHRecTab.OksBSCH_MONDAY_FLAG
11896          ,OksBSCHRecTab.OksBSCH_TUESDAY_FLAG
11897          ,OksBSCHRecTab.OksBSCH_WEDNESDAY_FLAG
11898          ,OksBSCHRecTab.OksBSCH_THURSDAY_FLAG
11899          ,OksBSCHRecTab.OksBSCH_FRIDAY_FLAG
11900          ,OksBSCHRecTab.OksBSCH_SATURDAY_FLAG
11901          ,OksBSCHRecTab.OksBSCH_SUNDAY_FLAG
11902          ,OksBSCHRecTab.OksBSCH_OBJECT1_ID1
11903          ,OksBSCHRecTab.OksBSCH_OBJECT1_ID2
11904          ,OksBSCHRecTab.OksBSCH_JTOT_OBJECT1_CODE
11905          ,OksBSCHRecTab.OksBSCH_BILL_RATE_CODE
11906          ,OksBSCHRecTab.OksBSCH_FLAT_RATE
11907          ,OksBSCHRecTab.OksBSCH_UOM
11908          ,OksBSCHRecTab.OksBSCH_HOLIDAY_YN
11909          ,OksBSCHRecTab.OksBSCH_PCT_OVER_LIST_PRICE
11910          ,OksBSCHRecTab.OksBSCH_PRGRM_APPLICATION_ID
11911          ,OksBSCHRecTab.OksBSCH_PROGRAM_ID
11912          ,OksBSCHRecTab.OksBSCH_PROGRAM_UPDATE_DATE
11913          ,OksBSCHRecTab.OksBSCH_REQUEST_ID
11914          ,OksBSCHRecTab.OksBSCH_SECURITY_GROUP_ID
11915          ,OksBSCHRecTab.OksBSCH_OBJECT_VERSION_NUMBER
11916      LIMIT G_BULK_FETCH_LIMIT;
11917 
11918    End If;
11919 
11920    FORALL i IN OksBSCHRecTab.OksBSCH_NewID.FIRST .. OksBSCHRecTab.OksBSCH_NewID.LAST
11921    INSERT INTO OKS_BILLRATE_SCHEDULES (
11922       ID
11923      ,CLE_ID
11924      ,BT_CLE_ID
11925      ,DNZ_CHR_ID
11926      ,START_HOUR
11927      ,START_MINUTE
11928      ,END_HOUR
11929      ,END_MINUTE
11930      ,MONDAY_FLAG
11931      ,TUESDAY_FLAG
11932      ,WEDNESDAY_FLAG
11933      ,THURSDAY_FLAG
11934      ,FRIDAY_FLAG
11935      ,SATURDAY_FLAG
11936      ,SUNDAY_FLAG
11937      ,OBJECT1_ID1
11938      ,OBJECT1_ID2
11939      ,JTOT_OBJECT1_CODE
11940      ,BILL_RATE_CODE
11941      ,FLAT_RATE
11942      ,UOM
11943      ,HOLIDAY_YN
11944      ,PERCENT_OVER_LIST_PRICE
11945      ,PROGRAM_APPLICATION_ID
11946      ,PROGRAM_ID
11947      ,PROGRAM_UPDATE_DATE
11948      ,REQUEST_ID
11949      ,SECURITY_GROUP_ID
11950      ,OBJECT_VERSION_NUMBER
11951      ,CREATED_BY
11952      ,CREATION_DATE
11953      ,LAST_UPDATED_BY
11954      ,LAST_UPDATE_DATE
11955      ,LAST_UPDATE_LOGIN
11956   )
11957   SELECT
11958    OksBSCHRecTab.OksBSCH_NewID(i)
11959   ,OksBSCHRecTab.OksBSCH_NewCleID(i)
11960   ,OksBSCHRecTab.OksBSCH_NewBTCleID(i)
11961   ,OksBSCHRecTab.OksBSCH_NewDnzChrID(i)
11962   ,OksBSCHRecTab.OksBSCH_START_HOUR(i)
11963   ,OksBSCHRecTab.OksBSCH_START_MINUTE(i)
11964   ,OksBSCHRecTab.OksBSCH_END_HOUR(i)
11965   ,OksBSCHRecTab.OksBSCH_END_MINUTE(i)
11966   ,OksBSCHRecTab.OksBSCH_MONDAY_FLAG(i)
11967   ,OksBSCHRecTab.OksBSCH_TUESDAY_FLAG(i)
11968   ,OksBSCHRecTab.OksBSCH_WEDNESDAY_FLAG(i)
11969   ,OksBSCHRecTab.OksBSCH_THURSDAY_FLAG(i)
11970   ,OksBSCHRecTab.OksBSCH_FRIDAY_FLAG(i)
11971   ,OksBSCHRecTab.OksBSCH_SATURDAY_FLAG(i)
11972   ,OksBSCHRecTab.OksBSCH_SUNDAY_FLAG(i)
11973   ,OksBSCHRecTab.OksBSCH_OBJECT1_ID1(i)
11974   ,OksBSCHRecTab.OksBSCH_OBJECT1_ID2(i)
11975   ,OksBSCHRecTab.OksBSCH_JTOT_OBJECT1_CODE(i)
11976   ,OksBSCHRecTab.OksBSCH_BILL_RATE_CODE(i)
11977   ,OksBSCHRecTab.OksBSCH_FLAT_RATE(i)
11978   ,OksBSCHRecTab.OksBSCH_UOM(i)
11979   ,OksBSCHRecTab.OksBSCH_HOLIDAY_YN(i)
11980   ,OksBSCHRecTab.OksBSCH_PCT_OVER_LIST_PRICE(i)
11981   ,OksBSCHRecTab.OksBSCH_PRGRM_APPLICATION_ID(i)
11982   ,OksBSCHRecTab.OksBSCH_PROGRAM_ID(i)
11983   ,OksBSCHRecTab.OksBSCH_PROGRAM_UPDATE_DATE(i)
11984   ,OksBSCHRecTab.OksBSCH_REQUEST_ID(i)
11985   ,OksBSCHRecTab.OksBSCH_SECURITY_GROUP_ID(i)
11986   ,OksBSCHRecTab.OksBSCH_OBJECT_VERSION_NUMBER(i)
11987   ,FND_GLOBAL.USER_ID
11988   ,SYSDATE
11989   ,FND_GLOBAL.USER_ID
11990   ,SYSDATE
11991   ,FND_GLOBAL.LOGIN_ID
11992   FROM DUAL;
11993 
11994    If (P_Partial_Copy_YN = 'N') then
11995     EXIT WHEN GetOksBSCHFull%NOTFOUND;
11996    Elsif (P_Partial_Copy_YN = 'Y' and P_Lines_Count > 0) then
11997     EXIT WHEN GetOksBSCHPartial%NOTFOUND;
11998    End If;
11999 
12000   END LOOP;
12001 
12002   If (GetOksBSCHFull%ISOPEN) then
12003     CLOSE GetOksBSCHFull;
12004   Elsif (GetOksBSCHPartial%ISOPEN) then
12005     CLOSE GetOksBSCHPartial;
12006   End If;
12007 
12008    EXCEPTION
12009           WHEN OTHERS THEN
12010            If (GetOksBSCHFull%ISOPEN) then
12011              CLOSE GetOksBSCHFull;
12012 	   Elsif (GetOksBSCHPartial%ISOPEN) then
12013 	     CLOSE GetOksBSCHPartial;
12014            End IF;
12015 
12016           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
12017           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
12018           RAISE;
12019 
12020 
12021  End copy_oks_billrate_schedules;
12022 
12023  ------------------------------------------------------------
12024 --===================================================
12025 --  copy_oks_stream_levels_b
12026 --  Parameters: P_From_Chr_ID : Header ID of source contract
12027 --   	      P_To_Chr_ID   : Header ID of target contract
12028  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
12029  --				    or as part of component copy from UI (value = 'Y')
12030 --            P_Target_Contract_New_YN : Flag to indicate if copy process was copying to an existing contract (value = 'N')
12031 --                                       or if a new contract header was created as part of the copy process (value = 'Y'). This
12032 --                                       flag gets set to 'Y' just before the call to copy_contract_header procedure in
12033 --                                       copy_components
12034 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
12035 --               use cursor GetOksSLFull
12036 --            If (P_Partial_Copy_YN = 'Y') then
12037 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
12038 --                Only rows for only Header , use cursor GetOksSLPartial_H
12039 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
12040 --                Both rows for both Header and Lines need to be copied, use cursor GetOksSLPartial_HNL
12041 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
12042 --                Only rows for chosen Lines are copied, use cursor GetOksSLPartial_L
12043 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
12044 --                nothing needs to be copied, no copy needed
12045 --              End If
12046 --            End If
12047 --====================================================
12048 
12049  PROCEDURE copy_oks_stream_levels_b(P_From_Chr_ID IN NUMBER
12050                                    ,P_To_Chr_ID   IN NUMBER
12051                                    ,P_Partial_Copy_YN IN VARCHAR2
12052 				   ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
12053 				   ,P_Lines_Count IN NUMBER DEFAULT 0
12054                                    ,x_return_status OUT NOCOPY VARCHAR2) IS
12055 
12056    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_STREAM_LEVELS_B';
12057    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
12058    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
12059 
12060  CURSOR GetOksSLFull IS
12061  SELECT
12062    oksSL.ID AS oksSL_OldID
12063   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12064   ,okcH.ID AS oksSL_NewChrID
12065   ,NULL AS oksSL_NewCleID
12066   ,okcH.ID AS oksSL_NewDnzChrID
12067   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12068   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12069   ,oksSL.START_DATE AS oksSL_START_DATE
12070   ,oksSL.END_DATE AS oksSL_END_DATE
12071   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12072   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12073   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12074   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12075   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12076   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12077   ,oksSL.COMMENTS AS oksSL_COMMENTS
12078   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12079   ,oksSL.AMOUNT AS oksSL_AMOUNT
12080   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12081   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12082   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12083   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12084   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12085   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12086   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12087   FROM
12088     OKS_STREAM_LEVELS_B oksSL
12089    ,OKC_K_HEADERS_B okcH
12090   WHERE
12091   oksSL.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
12092   AND okcH.ID = P_To_Chr_ID
12093   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12094   AND oksSL.CLE_ID IS NULL
12095   AND oksSL.CHR_ID IS NOT NULL
12096   UNION ALL
12097    SELECT
12098    oksSL.ID AS oksSL_OldID
12099   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12100   ,NULL AS oksSL_NewChrID
12101   ,okcBTarget.ID AS oksSL_NewCleID
12102   ,okcBTarget.DNZ_CHR_ID AS oksSL_NewDnzChrID
12103   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12104   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12105   ,oksSL.START_DATE AS oksSL_START_DATE
12106   ,oksSL.END_DATE AS oksSL_END_DATE
12107   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12108   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12109   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12110   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12111   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12112   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12113   ,oksSL.COMMENTS AS oksSL_COMMENTS
12114   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12115   ,oksSL.AMOUNT AS oksSL_AMOUNT
12116   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12117   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12118   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12119   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12120   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12121   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12122   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12123   FROM
12124    OKS_STREAM_LEVELS_B oksSL
12125   ,OKC_K_LINES_B okcBTarget
12126   ,OKC_K_LINES_B okcBSource
12127   WHERE
12128   oksSL.CLE_ID = okcBTarget.ORIG_SYSTEM_ID1
12129   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12130   AND okcBTarget.DNZ_CHR_ID = P_To_Chr_ID
12131   AND oksSL.CHR_ID IS NULL
12132   AND oksSL.CLE_ID IS NOT NULL
12133   AND okcBTarget.ORIG_SYSTEM_ID1 = okcBSource.ID
12134 --AND okcB.DATE_TERMINATED IS NULL;
12135   AND (
12136          (okcBSource.CLE_ID IS NULL 					--Line being copied is a Topline that is:
12137           AND okcBSource.DATE_TERMINATED IS NULL			--a) Not Terminated
12138           AND NOT EXISTS (select b.ID from okc_k_lines_b b		--b) Has no sublines that are Terminated
12139                           where b.CLE_ID= okcBSource.ID
12140                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12141                           and b.DATE_TERMINATED IS NOT NULL
12142 			 )
12143          )
12144       OR
12145          (okcBSource.CLE_ID IS NOT NULL				    --Line being copied is a Subline that is:
12146           AND okcBSource.DATE_TERMINATED IS NULL		    --a) Not Terminated
12147 	  AND NOT EXISTS (select b.ID from okc_k_lines_b b	    --b) Has no peer sublines that are Terminated
12148                           where b.CLE_ID = okcBSource.CLE_ID
12149 	 		 and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12150 	 		 and b.DATE_TERMINATED IS NOT NULL
12151                          )
12152          )
12153       )
12154   --npalepu added on 31-may-2006 for bug # 5178264
12155   And (
12156          (okcBSource.CLE_ID IS NULL                                     --Line being copied is a Topline that is:
12157           AND okcBSource.DATE_CANCELLED IS NULL                         --a) Not Cancelled
12158           AND NOT EXISTS (select b.ID from okc_k_lines_b b              --b) Has no sublines that are Cancelled
12159                           where b.CLE_ID= okcBSource.ID
12160                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12161                           and b.DATE_CANCELLED IS NOT NULL
12162                          )
12163          )
12164       OR
12165          (okcBSource.CLE_ID IS NOT NULL                             --Line being copied is a Subline that is:
12166           AND okcBSource.DATE_CANCELLED IS NULL                     --a) Not Cancelled
12167           AND NOT EXISTS (select b.ID from okc_k_lines_b b          --b) Has no peer sublines that are Cancelled
12168                           where b.CLE_ID = okcBSource.CLE_ID
12169                          and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12170                          and b.DATE_CANCELLED IS NOT NULL
12171                          )
12172          ))
12173   --end npalepu
12174       ;
12175 
12176 ----------------------------------------------------------------------------
12177 --Cursor to be used in Component Copy to copy rows for both Header and Lines
12178 ----------------------------------------------------------------------------
12179  CURSOR GetOksSLPartial_HNL IS
12180  SELECT
12181    oksSL.ID AS oksSL_OldID
12182   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12183   ,okcH.ID AS oksSL_NewChrID
12184   ,NULL AS oksSL_NewCleID
12185   ,okcH.ID AS oksSL_NewDnzChrID
12186   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12187   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12188   ,oksSL.START_DATE AS oksSL_START_DATE
12189   ,oksSL.END_DATE AS oksSL_END_DATE
12190   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12191   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12192   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12193   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12194   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12195   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12196   ,oksSL.COMMENTS AS oksSL_COMMENTS
12197   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12198   ,oksSL.AMOUNT AS oksSL_AMOUNT
12199   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12200   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12201   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12202   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12203   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12204   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12205   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12206   FROM
12207     OKS_STREAM_LEVELS_B oksSL
12208    ,OKC_K_HEADERS_B okcH
12209   WHERE
12210   oksSL.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
12211   AND okcH.ID = P_To_Chr_ID
12212   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12213   AND oksSL.CLE_ID IS NULL
12214   AND oksSL.CHR_ID IS NOT NULL
12215   UNION ALL
12216    SELECT
12217    oksSL.ID AS oksSL_OldID
12218   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12219   ,NULL AS oksSL_NewChrID
12220   ,okcBT.ID AS oksSL_NewCleID
12221   ,okcBT.DNZ_CHR_ID AS oksSL_NewDnzChrID
12222   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12223   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12224   ,oksSL.START_DATE AS oksSL_START_DATE
12225   ,oksSL.END_DATE AS oksSL_END_DATE
12226   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12227   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12228   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12229   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12230   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12231   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12232   ,oksSL.COMMENTS AS oksSL_COMMENTS
12233   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12234   ,oksSL.AMOUNT AS oksSL_AMOUNT
12235   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12236   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12237   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12238   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12239   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12240   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12241   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12242   FROM
12243    OKS_STREAM_LEVELS_B oksSL
12244   ,OKC_K_LINES_B_TEMP okcBT
12245   WHERE
12246   oksSL.CLE_ID = okcBT.ORIG_SYSTEM_ID1
12247   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
12248   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12249   AND oksSL.CLE_ID IS NOT NULL
12250   AND oksSL.CHR_ID IS NULL
12251   --AND (okcBT.DATES_CHANGED_YN = 'N' AND okcBT.DATE_TERMINATED IS NULL);
12252   AND (
12253 	(okcBT.CLE_ID IS NULL 					 --Line being copied is a Topline with
12254 	 AND okcBT.DATES_CHANGED_YN = 'N' 			 --a) Dates not changed to honor target
12255          AND okcBT.DATE_TERMINATED IS NULL			 --b) Is not TERMINATED
12256          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
12257                          where b.CLE_ID = okcBT.ID
12258                          and b.LINE_EXISTS_YN = 'N'
12259                          and b.DATE_TERMINATED is not null)
12260         )
12261        OR
12262         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12263 	 AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12264          AND okcBT.DATES_CHANGED_YN = 'N' 		         --b) Subline's dates havent changed
12265 	 AND okcBT.DATE_TERMINATED IS NULL			 --c) Subline is not TERMINATED
12266 	 AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a	 --d) Has no peer sublines that TERMINATED
12267 			 where 					 --e) Its Top Line being copied doesnt have its Dates Changed
12268                           (a.CLE_ID = okcBT.CLE_ID
12269                           and a.LINE_EXISTS_YN = 'N'
12270 		   	  and a.DATE_TERMINATED IS NOT NULL)
12271                          OR
12272                           (a.ID = okcBT.CLE_ID
12273                            and a.DATES_CHANGED_YN = 'Y'
12274                           )
12275                       )
12276         )
12277        OR
12278         (okcBT.CLE_ID IS NOT NULL				 --Line being copied is a subline that is:
12279 	 AND okcBT.LINE_EXISTS_YN = 'Y'				 --a) Being copied to an existing Target Topline
12280 	 AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'			 --b) It is not TERMINATED
12281         )							 --c) Its Dates haven't been changed with respect to Target TopLine
12282       )
12283   --npalepu added on 31-may-2006 for bug # 5178264
12284   AND (
12285         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12286          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12287          AND okcBT.DATE_CANCELLED IS NULL                        --b) Is not Cancelled
12288          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
12289                          where b.CLE_ID = okcBT.ID
12290                          and b.LINE_EXISTS_YN = 'N'
12291                          and b.DATE_CANCELLED is not null)
12292         )
12293        OR
12294         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12295          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12296          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's dates havent changed
12297          AND okcBT.DATE_CANCELLED IS NULL                        --c) Subline is not Cancelled
12298          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that Cancelled
12299                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12300                           (a.CLE_ID = okcBT.CLE_ID
12301                           and a.LINE_EXISTS_YN = 'N'
12302                           and a.DATE_CANCELLED IS NOT NULL)
12303                          OR
12304                           (a.ID = okcBT.CLE_ID
12305                            and a.DATES_CHANGED_YN = 'Y'
12306                           )
12307                       )
12308         )
12309 
12310        OR
12311         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12312          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12313          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
12314         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12315       )
12316   --end npalepu
12317       ;
12318 --------------------------------------------------------------------------------------
12319 --Cursor to copy rows for only Header ie when lines when chosen by user for copy in UI
12320 --------------------------------------------------------------------------------------
12321  CURSOR GetOksSLPartial_H IS
12322  SELECT
12323    oksSL.ID AS oksSL_OldID
12324   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12325   ,okcH.ID AS oksSL_NewChrID
12326   ,NULL AS oksSL_NewCleID
12327   ,okcH.ID AS oksSL_NewDnzChrID
12328   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12329   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12330   ,oksSL.START_DATE AS oksSL_START_DATE
12331   ,oksSL.END_DATE AS oksSL_END_DATE
12332   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12333   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12334   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12335   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12336   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12337   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12338   ,oksSL.COMMENTS AS oksSL_COMMENTS
12339   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12340   ,oksSL.AMOUNT AS oksSL_AMOUNT
12341   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12342   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12343   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12344   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12345   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12346   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12347   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12348   FROM
12349     OKS_STREAM_LEVELS_B oksSL
12350    ,OKC_K_HEADERS_B okcH
12351   WHERE
12352   oksSL.DNZ_CHR_ID = okcH.ORIG_SYSTEM_ID1
12353   AND okcH.ID = P_To_Chr_ID
12354   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12355   AND oksSL.CLE_ID IS NULL
12356   AND oksSL.CHR_ID IS NOT NULL;
12357 
12358 --------------------------------------------------------------------------------------
12359 --Cursor to copy rows for Lines ie when copying to an existing Target Contract
12360 --------------------------------------------------------------------------------------
12361  CURSOR GetOksSLPartial_L IS
12362  SELECT
12363    oksSL.ID AS oksSL_OldID
12364   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksSL_NewID
12365   ,NULL AS oksSL_NewChrID
12366   ,okcBT.ID AS oksSL_NewCleID
12367   ,okcBT.DNZ_CHR_ID AS oksSL_NewDnzChrID
12368   ,oksSL.SEQUENCE_NO AS oksSL_SEQUENCE_NO
12369   ,oksSL.UOM_CODE AS oksSL_UOM_CODE
12370   ,oksSL.START_DATE AS oksSL_START_DATE
12371   ,oksSL.END_DATE AS oksSL_END_DATE
12372   ,oksSL.LEVEL_PERIODS AS oksSL_LEVEL_PERIODS
12373   ,oksSL.UOM_PER_PERIOD AS oksSL_UOM_PER_PERIOD
12374   ,oksSL.ADVANCE_PERIODS AS oksSL_ADVANCE_PERIODS
12375   ,oksSL.LEVEL_AMOUNT AS oksSL_LEVEL_AMOUNT
12376   ,oksSL.INVOICE_OFFSET_DAYS AS oksSL_INVOICE_OFFSET_DAYS
12377   ,oksSL.INTERFACE_OFFSET_DAYS AS oksSL_INTERFACE_OFFSET_DAYS
12378   ,oksSL.COMMENTS AS oksSL_COMMENTS
12379   ,oksSL.DUE_ARR_YN AS oksSL_DUE_ARR_YN
12380   ,oksSL.AMOUNT AS oksSL_AMOUNT
12381   ,oksSL.LINES_DETAILED_YN AS oksSL_LINES_DETAILED_YN
12382   ,1 AS oksSL_OBJECT_VERSION_NUMBER
12383   ,oksSL.SECURITY_GROUP_ID AS oksSL_SECURITY_GROUP_ID
12384   ,oksSL.REQUEST_ID AS oksSL_REQUEST_ID
12385   ,oksSL.ID AS oksSL_ORIG_SYSTEM_ID1
12386   ,NULL AS oksSL_ORIG_SYSTEM_SOURCE_CODE
12387   ,'COPY' AS oksSL_ORIG_SYSTEM_REFERENCE1
12388   FROM
12389    OKS_STREAM_LEVELS_B oksSL
12390   ,OKC_K_LINES_B_TEMP okcBT
12391   WHERE
12392   oksSL.CLE_ID = okcBT.ORIG_SYSTEM_ID1
12393   AND oksSL.DNZ_CHR_ID = P_From_Chr_ID
12394   AND okcBT.DNZ_CHR_ID = P_To_Chr_ID
12395   --AND (okcBT.DATES_CHANGED_YN = 'N' AND okcBT.DATE_TERMINATED IS NULL);
12396   AND (
12397         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12398          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12399          AND okcBT.DATE_TERMINATED IS NULL                       --b) Is not TERMINATED
12400          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
12401                          where b.CLE_ID = okcBT.ID
12402                          and b.LINE_EXISTS_YN = 'N'
12403                          and b.DATE_TERMINATED is not null)
12404         )
12405        OR
12406         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12407          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12408          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's dates havent changed
12409          AND okcBT.DATE_TERMINATED IS NULL                       --c) Subline is not TERMINATED
12410          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that TERMINATED
12411                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12412                           (a.CLE_ID = okcBT.CLE_ID
12413                           and a.LINE_EXISTS_YN = 'N'
12414                           and a.DATE_TERMINATED IS NOT NULL)
12415                          OR
12416                           (a.ID = okcBT.CLE_ID
12417                            and a.DATES_CHANGED_YN = 'Y'
12418                           )
12419                       )
12420         )
12421        OR
12422         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12423          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12424          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not TERMINATED
12425         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12426       )
12427   --npalepu added on 31-may-2006 for bug # 5178264
12428   AND (
12429         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12430          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12431          AND okcBT.DATE_CANCELLED IS NULL                       --b) Is not cancelled
12432          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
12433                          where b.CLE_ID = okcBT.ID
12434                          and b.LINE_EXISTS_YN = 'N'
12435                          and b.DATE_CANCELLED is not null)
12436         )
12437        OR
12438         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12439          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12440          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's dates havent changed
12441          AND okcBT.DATE_CANCELLED IS NULL                        --c) Subline is not Cancelled
12442          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that Cancelled
12443                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12444                           (a.CLE_ID = okcBT.CLE_ID
12445                           and a.LINE_EXISTS_YN = 'N'
12446                           and a.DATE_CANCELLED IS NOT NULL)
12447                          OR
12448                           (a.ID = okcBT.CLE_ID
12449                            and a.DATES_CHANGED_YN = 'Y'
12450                           )
12451                       )
12452         )
12453 
12454        OR
12455         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12456          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12457          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
12458         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12459       )
12460    --end npalepu
12461       ;
12462 
12463  Begin
12464   x_return_status := l_return_status;
12465 --errorout_hk('Entered copy_oks_stream_levels_b');
12466   If (P_Partial_Copy_YN = 'N') then
12467    OPEN GetOksSLFull;
12468   ElsIf (P_Partial_Copy_YN = 'Y') then
12469    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
12470     OPEN GetOksSLPartial_H;
12471    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
12472     OPEN GetOksSLPartial_HNL;
12473    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
12474    --errorout_hk('Opening GetOksSLPartial_L');
12475     OPEN GetOksSLPartial_L;
12476    ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
12477     RETURN;
12478    End If;
12479   End If;
12480 
12481 
12482 
12483   LOOP
12484    If (P_Partial_Copy_YN = 'N') then
12485     FETCH GetOksSLFull BULK COLLECT INTO
12486       OksSLRecTab.OksSL_OldID
12487      ,OksSLRecTab.OksSL_NewID
12488      ,OksSLRecTab.OksSL_NewChrID
12489      ,OksSLRecTab.OksSL_NewCleID
12490      ,OksSLRecTab.OksSL_NewDnzChrID
12491      ,OksSLRecTab.OksSL_SEQUENCE_NO
12492      ,OksSLRecTab.OksSL_UOM_CODE
12493      ,OksSLRecTab.OksSL_START_DATE
12494      ,OksSLRecTab.OksSL_END_DATE
12495      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12496      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12497      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12498      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12499      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12500      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12501      ,OksSLRecTab.OksSL_COMMENTS
12502      ,OksSLRecTab.OksSL_DUE_ARR_YN
12503      ,OksSLRecTab.OksSL_AMOUNT
12504      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12505      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12506      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12507      ,OksSLRecTab.OksSL_REQUEST_ID
12508      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12509      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12510      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12511     LIMIT G_BULK_FETCH_LIMIT;
12512    Elsif (P_Partial_Copy_YN = 'Y') then
12513     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
12514       FETCH GetOksSLPartial_H BULK COLLECT INTO
12515       OksSLRecTab.OksSL_OldID
12516      ,OksSLRecTab.OksSL_NewID
12517      ,OksSLRecTab.OksSL_NewChrID
12518      ,OksSLRecTab.OksSL_NewCleID
12519      ,OksSLRecTab.OksSL_NewDnzChrID
12520      ,OksSLRecTab.OksSL_SEQUENCE_NO
12521      ,OksSLRecTab.OksSL_UOM_CODE
12522      ,OksSLRecTab.OksSL_START_DATE
12523      ,OksSLRecTab.OksSL_END_DATE
12524      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12525      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12526      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12527      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12528      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12529      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12530      ,OksSLRecTab.OksSL_COMMENTS
12531      ,OksSLRecTab.OksSL_DUE_ARR_YN
12532      ,OksSLRecTab.OksSL_AMOUNT
12533      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12534      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12535      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12536      ,OksSLRecTab.OksSL_REQUEST_ID
12537      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12538      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12539      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12540     LIMIT G_BULK_FETCH_LIMIT;
12541     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
12542       FETCH GetOksSLPartial_HNL BULK COLLECT INTO
12543       OksSLRecTab.OksSL_OldID
12544      ,OksSLRecTab.OksSL_NewID
12545      ,OksSLRecTab.OksSL_NewChrID
12546      ,OksSLRecTab.OksSL_NewCleID
12547      ,OksSLRecTab.OksSL_NewDnzChrID
12548      ,OksSLRecTab.OksSL_SEQUENCE_NO
12549      ,OksSLRecTab.OksSL_UOM_CODE
12550      ,OksSLRecTab.OksSL_START_DATE
12551      ,OksSLRecTab.OksSL_END_DATE
12552      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12553      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12554      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12555      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12556      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12557      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12558      ,OksSLRecTab.OksSL_COMMENTS
12559      ,OksSLRecTab.OksSL_DUE_ARR_YN
12560      ,OksSLRecTab.OksSL_AMOUNT
12561      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12562      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12563      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12564      ,OksSLRecTab.OksSL_REQUEST_ID
12565      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12566      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12567      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12568     LIMIT G_BULK_FETCH_LIMIT;
12569     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
12570        --errorout_hk('Fetching GetOksSLPartial_L');
12571       FETCH GetOksSLPartial_L BULK COLLECT INTO
12572       OksSLRecTab.OksSL_OldID
12573      ,OksSLRecTab.OksSL_NewID
12574      ,OksSLRecTab.OksSL_NewChrID
12575      ,OksSLRecTab.OksSL_NewCleID
12576      ,OksSLRecTab.OksSL_NewDnzChrID
12577      ,OksSLRecTab.OksSL_SEQUENCE_NO
12578      ,OksSLRecTab.OksSL_UOM_CODE
12579      ,OksSLRecTab.OksSL_START_DATE
12580      ,OksSLRecTab.OksSL_END_DATE
12581      ,OksSLRecTab.OksSL_LEVEL_PERIODS
12582      ,OksSLRecTab.OksSL_UOM_PER_PERIOD
12583      ,OksSLRecTab.OksSL_ADVANCE_PERIODS
12584      ,OksSLRecTab.OksSL_LEVEL_AMOUNT
12585      ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS
12586      ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS
12587      ,OksSLRecTab.OksSL_COMMENTS
12588      ,OksSLRecTab.OksSL_DUE_ARR_YN
12589      ,OksSLRecTab.OksSL_AMOUNT
12590      ,OksSLRecTab.OksSL_LINES_DETAILED_YN
12591      ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER
12592      ,OksSLRecTab.OksSL_SECURITY_GROUP_ID
12593      ,OksSLRecTab.OksSL_REQUEST_ID
12594      ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1
12595      ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE
12596      ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1
12597     LIMIT G_BULK_FETCH_LIMIT;
12598     End If;
12599    End If;
12600 --errorout_hk('GetOksLEPartial_L count -'||OksLERecTab.OksLE_NewID.count);
12601 
12602    FORALL i IN OksSLRecTab.OksSL_NewID.FIRST .. OksSLRecTab.OksSL_NewID.LAST
12603    INSERT INTO OKS_STREAM_LEVELS_B (
12604      ID
12605     ,CHR_ID
12606     ,CLE_ID
12607     ,DNZ_CHR_ID
12608     ,SEQUENCE_NO
12609     ,UOM_CODE
12610     ,START_DATE
12611     ,END_DATE
12612     ,LEVEL_PERIODS
12613     ,UOM_PER_PERIOD
12614     ,ADVANCE_PERIODS
12615     ,LEVEL_AMOUNT
12616     ,INVOICE_OFFSET_DAYS
12617     ,INTERFACE_OFFSET_DAYS
12618     ,COMMENTS
12619     ,DUE_ARR_YN
12620     ,AMOUNT
12621     ,LINES_DETAILED_YN
12622     ,OBJECT_VERSION_NUMBER
12623     ,SECURITY_GROUP_ID
12624     ,REQUEST_ID
12625     ,ORIG_SYSTEM_ID1
12626     ,ORIG_SYSTEM_SOURCE_CODE
12627     ,ORIG_SYSTEM_REFERENCE1
12628     ,CREATED_BY
12629     ,CREATION_DATE
12630     ,LAST_UPDATED_BY
12631     ,LAST_UPDATE_DATE
12632     ,LAST_UPDATE_LOGIN
12633    )
12634    SELECT
12635     OksSLRecTab.OksSL_NewID(i)
12636    ,OksSLRecTab.OksSL_NewChrID(i)
12637    ,OksSLRecTab.OksSL_NewCleID(i)
12638    ,OksSLRecTab.OksSL_NewDnzChrID(i)
12639    ,OksSLRecTab.OksSL_SEQUENCE_NO(i)
12640    ,OksSLRecTab.OksSL_UOM_CODE(i)
12641    ,OksSLRecTab.OksSL_START_DATE(i)
12642    ,OksSLRecTab.OksSL_END_DATE(i)
12643    ,OksSLRecTab.OksSL_LEVEL_PERIODS(i)
12644    ,OksSLRecTab.OksSL_UOM_PER_PERIOD(i)
12645    ,OksSLRecTab.OksSL_ADVANCE_PERIODS(i)
12646    ,OksSLRecTab.OksSL_LEVEL_AMOUNT(i)
12647    ,OksSLRecTab.OksSL_INVOICE_OFFSET_DAYS(i)
12648    ,OksSLRecTab.OksSL_INTERFACE_OFFSET_DAYS(i)
12649    ,OksSLRecTab.OksSL_COMMENTS(i)
12650    ,OksSLRecTab.OksSL_DUE_ARR_YN(i)
12651    ,OksSLRecTab.OksSL_AMOUNT(i)
12652    ,OksSLRecTab.OksSL_LINES_DETAILED_YN(i)
12653    ,OksSLRecTab.OksSL_OBJECT_VERSION_NUMBER(i)
12654    ,OksSLRecTab.OksSL_SECURITY_GROUP_ID(i)
12655    ,OksSLRecTab.OksSL_REQUEST_ID(i)
12656    ,OksSLRecTab.OksSL_ORIG_SYSTEM_ID1(i)
12657    ,OksSLRecTab.OksSL_ORIG_SYSTEM_SOURCE_CODE(i)
12658    ,OksSLRecTab.OksSL_ORIG_SYSTEM_REFERENCE1(i)
12659    ,FND_GLOBAL.USER_ID
12660    ,SYSDATE
12661    ,FND_GLOBAL.USER_ID
12662    ,SYSDATE
12663    ,FND_GLOBAL.LOGIN_ID
12664    FROM DUAL;
12665 
12666    If (P_Partial_Copy_YN = 'N') then
12667     EXIT WHEN GetOksSLFull%NOTFOUND;
12668    ElsIf (P_Partial_Copy_YN = 'Y') then
12669     If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
12670      EXIT WHEN GetOksSLPartial_H%NOTFOUND;
12671     Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
12672      EXIT WHEN GetOksSLPartial_HNL%NOTFOUND;
12673     Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
12674      EXIT WHEN GetOksSLPartial_L%NOTFOUND;
12675     End If;
12676    End If;
12677 
12678 
12679   END LOOP;
12680 
12681   If (GetOksSLFull%ISOPEN) then
12682    CLOSE GetOksSLFull;
12683   Elsif (GetOksSLPartial_H%ISOPEN) then
12684    CLOSE GetOksSLPartial_H;
12685   Elsif (GetOksSLPartial_HNL%ISOPEN) then
12686    CLOSE GetOksSLPartial_HNL;
12687   Elsif (GetOksSLPartial_L%ISOPEN) then
12688    CLOSE GetOksSLPartial_L;
12689   End If;
12690 
12691      EXCEPTION
12692           WHEN OTHERS THEN
12693   		  If (GetOksSLFull%ISOPEN) then
12694 		   CLOSE GetOksSLFull;
12695 		  Elsif (GetOksSLPartial_H%ISOPEN) then
12696 		   CLOSE GetOksSLPartial_H;
12697 		  Elsif (GetOksSLPartial_HNL%ISOPEN) then
12698 		   CLOSE GetOksSLPartial_HNL;
12699 		  Elsif (GetOksSLPartial_L%ISOPEN) then
12700 		   CLOSE GetOksSLPartial_L;
12701 		  End If;
12702 
12703           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
12704           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
12705           RAISE;
12706 
12707  End copy_oks_stream_levels_b;
12708 
12709  ------------------------------------------------
12710 --===================================================
12711 --  copy_oks_level_elements
12712 --  Parameters: P_From_Chr_ID : Header ID of source contract
12713 --   	      P_To_Chr_ID   : Header ID of target contract
12714  --  	      P_Partial_Copy_YN   : Flag to indicate whether the routine is being invoked as part of full contract copy (value = 'N')
12715  --				    or as part of component copy from UI (value = 'Y')
12716 --            If (P_Partial_Copy_YN = 'N') rows for both Header and Lines are copied (Full Contract copy)
12717 --               use cursor GetOksLEFull
12718 --            If (P_Partial_Copy_YN = 'Y') then
12719 --              If (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT = 0) then
12720 --                Only rows for only Header , use cursor GetOksLEPartial_H
12721 --              Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Tbl.COUNT > 0) then
12722 --                Both rows for both Header and Lines need to be copied, use cursor GetOksLEPartial_HNL
12723 --              Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Tbl.COUNT > 0) then
12724 --                Only rows for chosen Lines are copied, use cursor GetOksLEPartial_L
12725 --              Elsif (P_Target_Contract_New_YN = 'N') and P_Lines_Tbl.COUNT = 0) then
12726 --                nothing needs to be copied, no copy needed
12727 --              End If
12728 --            End If
12729 
12730 --====================================================
12731 
12732  PROCEDURE copy_oks_level_elements(P_From_Chr_ID IN NUMBER
12733                                   ,P_To_Chr_ID   IN NUMBER
12734                                   ,P_Partial_Copy_YN IN VARCHAR2
12735                                   ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
12736                                   ,P_Lines_Count IN NUMBER DEFAULT 0
12737                                   ,x_return_status OUT NOCOPY VARCHAR2) IS
12738 
12739    l_api_name        CONSTANT VARCHAR2(30) := 'COPY_OKS_LEVEL_ELEMENTS';
12740    l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
12741    l_return_status             VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
12742 
12743 /******
12744  CURSOR GetOksLEFull IS
12745  SELECT
12746    oksLE.ID AS oksLE_OldID
12747   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID
12748   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12749   ,oksLE.DATE_START AS oksLE_DATE_START
12750   ,oksLE.AMOUNT AS oksLE_AMOUNT
12751   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12752   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12753   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12754   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12755   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12756   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12757   ,NULL AS oksLE_DATE_COMPLETED
12758   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12759   ,oksSL.ID AS oksLE_NewRulID --*
12760   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12761   ,oksSL.CLE_ID AS oksLE_NewCleID --*
12762   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12763   ,decode(oksSL.CLE_ID,NULL,NULL,(select
12764                                   decode(a.CLE_ID,NULL,a.ID,a.CLE_ID)
12765     				  from okc_k_lines_b a
12766     				  where
12767         			  a.ID = oksSL.CLE_ID
12768     				  and a.DNZ_CHR_ID = P_To_Chr_ID )) AS oksLE_NewParentCleID --*
12769   ,oksLE.DATE_END AS oksLE_DATE_END
12770   FROM
12771    OKS_LEVEL_ELEMENTS oksLE
12772   ,OKS_STREAM_LEVELS_B oksSL
12773   WHERE
12774   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12775   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12776   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID;
12777 *******/
12778 
12779  CURSOR GetOksLEFull IS
12780  SELECT
12781    oksLE.ID AS oksLE_OldID --*
12782   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12783   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12784   ,oksLE.DATE_START AS oksLE_DATE_START
12785   ,oksLE.AMOUNT AS oksLE_AMOUNT
12786   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12787   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12788   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12789   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12790   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12791   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12792   ,NULL AS oksLE_DATE_COMPLETED
12793   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12794   ,oksSL.ID AS oksLE_NewRulID
12795   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12796   ,NULL AS oksLE_NewCleID --*
12797   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12798   ,NULL AS oksLE_NewParentCleID --*
12799   ,oksLE.DATE_END AS oksLE_DATE_END
12800   FROM
12801    OKS_LEVEL_ELEMENTS oksLE
12802   ,OKS_STREAM_LEVELS_B oksSL
12803   WHERE
12804   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12805   AND oksSL.CHR_ID IS NOT NULL
12806   AND oksSL.CLE_ID IS NULL
12807   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12808   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
12809  UNION ALL
12810   SELECT
12811    oksLE.ID AS oksLE_OldID --*
12812   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12813   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12814   ,oksLE.DATE_START AS oksLE_DATE_START
12815   ,oksLE.AMOUNT AS oksLE_AMOUNT
12816   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12817   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12818   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12819   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12820   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12821   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12822   ,NULL AS oksLE_DATE_COMPLETED
12823   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12824   ,oksSL.ID AS oksLE_NewRulID --*
12825   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12826   ,oksSL.CLE_ID AS oksLE_NewCleID --*
12827   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12828   ,decode(okcBTarget.CLE_ID,NULL,okcBTarget.ID,okcBTarget.CLE_ID) AS NewParentCleID
12829   ,oksLE.DATE_END AS oksLE_DATE_END
12830   FROM
12831    OKS_LEVEL_ELEMENTS oksLE
12832   ,OKS_STREAM_LEVELS_B oksSL
12833   ,OKC_K_LINES_B okcBTarget
12834   ,OKC_K_LINES_B okcBSource
12835   WHERE
12836   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12837   AND oksSL.CHR_ID IS NULL
12838   AND oksSL.CLE_ID IS NOT NULL
12839   AND oksSL.DNZ_CHR_ID = okcBTarget.DNZ_CHR_ID
12840   AND oksSL.CLE_ID = okcBTarget.ID
12841   AND okcBTarget.ORIG_SYSTEM_ID1 = okcBSource.ID
12842   --AND okcB.DATE_TERMINATED IS NULL;
12843   AND (
12844          (okcBSource.CLE_ID IS NULL                                     --Line being copied is a Topline that is:
12845           AND okcBSource.DATE_TERMINATED IS NULL                        --a) Not Terminated
12846           AND NOT EXISTS (select b.ID from okc_k_lines_b b              --b) Has no sublines that are Terminated
12847                           where b.CLE_ID= okcBSource.ID
12848                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12849                           and b.DATE_TERMINATED IS NOT NULL
12850                          )
12851          )
12852       OR
12853          (okcBSource.CLE_ID IS NOT NULL                             --Line being copied is a Subline that is:
12854           AND okcBSource.DATE_TERMINATED IS NULL                    --a) Not Terminated
12855           AND NOT EXISTS (select b.ID from okc_k_lines_b b          --b) Has no peer sublines that are Terminated
12856                           where b.CLE_ID = okcBSource.CLE_ID
12857                          and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12858                          and b.DATE_TERMINATED IS NOT NULL
12859                          )
12860          )
12861       )
12862   --npalepu added on 31-may-2006 for bug # 5178264
12863   AND (
12864          (okcBSource.CLE_ID IS NULL                                     --Line being copied is a Topline that is:
12865           AND okcBSource.DATE_CANCELLED IS NULL                        --a) Not Cancelled
12866           AND NOT EXISTS (select b.ID from okc_k_lines_b b              --b) Has no sublines that are Cancelled
12867                           where b.CLE_ID= okcBSource.ID
12868                           and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12869                           and b.DATE_CANCELLED IS NOT NULL
12870                          )
12871          )
12872       OR
12873          (okcBSource.CLE_ID IS NOT NULL                             --Line being copied is a Subline that is:
12874           AND okcBSource.DATE_CANCELLED IS NULL                    --a) Not Cancelled
12875           AND NOT EXISTS (select b.ID from okc_k_lines_b b          --b) Has no peer sublines that are Cancelled
12876                           where b.CLE_ID = okcBSource.CLE_ID
12877                          and b.DNZ_CHR_ID = okcBSource.DNZ_CHR_ID
12878                          and b.DATE_CANCELLED IS NOT NULL
12879                          )
12880          )
12881       )
12882   --end npalepu
12883   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12884   AND okcBSource.DNZ_CHR_ID = P_From_Chr_ID
12885   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID;
12886 
12887 
12888  CURSOR GetOksLEPartial_H IS
12889  SELECT
12890    oksLE.ID AS oksLE_OldID --*
12891   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12892   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12893   ,oksLE.DATE_START AS oksLE_DATE_START
12894   ,oksLE.AMOUNT AS oksLE_AMOUNT
12895   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12896   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12897   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12898   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12899   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12900   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12901   ,NULL AS oksLE_DATE_COMPLETED
12902   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12903   ,oksSL.ID AS oksLE_NewRulID
12904   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12905   ,NULL AS oksLE_NewCleID --*
12906   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12907   ,NULL AS oksLE_NewParentCleID --*
12908   ,oksLE.DATE_END AS oksLE_DATE_END
12909   FROM
12910    OKS_LEVEL_ELEMENTS oksLE
12911   ,OKS_STREAM_LEVELS_B oksSL
12912   WHERE
12913   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12914   AND oksSL.CHR_ID IS NOT NULL
12915   AND oksSL.CLE_ID IS NULL
12916   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12917   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID;
12918 
12919  CURSOR GetOksLEPartial_L IS
12920  SELECT
12921    oksLE.ID AS oksLE_OldID --*
12922   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
12923   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
12924   ,oksLE.DATE_START AS oksLE_DATE_START
12925   ,oksLE.AMOUNT AS oksLE_AMOUNT
12926   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
12927   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
12928   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
12929   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
12930   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
12931   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
12932   ,NULL AS oksLE_DATE_COMPLETED
12933   ,1 AS oksLE_OBJECT_VERSION_NUMBER
12934   ,oksSL.ID AS oksLE_NewRulID --*
12935   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
12936   ,oksSL.CLE_ID AS oksLE_NewCleID --*
12937   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
12938   ,decode(okcBT.CLE_ID,NULL,okcBT.ID,okcBT.CLE_ID) AS NewParentCleID
12939   ,oksLE.DATE_END AS oksLE_DATE_END
12940   FROM
12941    OKS_LEVEL_ELEMENTS oksLE
12942   ,OKS_STREAM_LEVELS_B oksSL
12943   ,OKC_K_LINES_B_TEMP okcBT
12944   WHERE
12945   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
12946   AND oksSL.CHR_ID IS NULL
12947   AND oksSL.CLE_ID IS NOT NULL
12948   AND oksSL.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
12949   AND oksSL.CLE_ID = okcBT.ID
12950   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
12951   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
12952 --  AND (okcBT.DATES_CHANGED_YN = 'N' and okcBT.DATE_TERMINATED IS NULL);
12953   AND (
12954         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12955          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12956          AND okcBT.DATE_TERMINATED IS NULL                       --b) Is not TERMINATED
12957          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
12958                          where b.CLE_ID = okcBT.ID
12959                          and b.LINE_EXISTS_YN = 'N'
12960                          and b.DATE_TERMINATED is not null)
12961         )
12962        OR
12963         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12964          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12965          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
12966          AND okcBT.DATE_TERMINATED IS NULL                       --c) Subline is not TERMINATED
12967          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are TERMINATED
12968                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
12969                           (a.CLE_ID = okcBT.CLE_ID
12970                           and a.LINE_EXISTS_YN = 'N'
12971                           and a.DATE_TERMINATED IS NOT NULL)
12972                          OR
12973                           (a.ID = okcBT.CLE_ID
12974                            and a.DATES_CHANGED_YN = 'Y'
12975                           )
12976                       )
12977         )
12978        OR
12979         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
12980          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
12981          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not TERMINATED
12982         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
12983       )
12984   --npalepu added on 31-may-2006 for bug # 5178264
12985   AND (
12986         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
12987          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
12988          AND okcBT.DATE_CANCELLED IS NULL                        --b) Is not Cancelled
12989          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
12990                          where b.CLE_ID = okcBT.ID
12991                          and b.LINE_EXISTS_YN = 'N'
12992                          and b.DATE_CANCELLED is not null)
12993         )
12994        OR
12995         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
12996          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
12997          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
12998          AND okcBT.DATE_CANCELLED IS NULL                        --c) Subline is not Cancelled
12999          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are Cancelled
13000                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
13001                           (a.CLE_ID = okcBT.CLE_ID
13002                           and a.LINE_EXISTS_YN = 'N'
13003                           and a.DATE_CANCELLED IS NOT NULL)
13004                          OR
13005                           (a.ID = okcBT.CLE_ID
13006                            and a.DATES_CHANGED_YN = 'Y'
13007                           )
13008                       )
13009         )
13010        OR
13011         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
13012          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
13013          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
13014         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
13015       )
13016   --end npalepu
13017       ;
13018 
13019 
13020  CURSOR GetOksLEPartial_HNL IS
13021  SELECT
13022    oksLE.ID AS oksLE_OldID --*
13023   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
13024   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
13025   ,oksLE.DATE_START AS oksLE_DATE_START
13026   ,oksLE.AMOUNT AS oksLE_AMOUNT
13027   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
13028   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
13029   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
13030   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
13031   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
13032   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
13033   ,NULL AS oksLE_DATE_COMPLETED
13034   ,1 AS oksLE_OBJECT_VERSION_NUMBER
13035   ,oksSL.ID AS oksLE_NewRulID
13036   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
13037   ,NULL AS oksLE_NewCleID --*
13038   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
13039   ,NULL AS NewParentCleID --*
13040   ,oksLE.DATE_END AS oksLE_DATE_END
13041   FROM
13042    OKS_LEVEL_ELEMENTS oksLE
13043   ,OKS_STREAM_LEVELS_B oksSL
13044   WHERE
13045   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
13046   AND oksSL.CHR_ID IS NOT NULL
13047   AND oksSL.CLE_ID IS NULL
13048   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
13049   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
13050  UNION ALL
13051  SELECT
13052    oksLE.ID AS oksLE_OldID --*
13053   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS oksLE_NewID --*
13054   ,oksLE.SEQUENCE_NUMBER AS oksLE_SEQUENCE_NUMBER
13055   ,oksLE.DATE_START AS oksLE_DATE_START
13056   ,oksLE.AMOUNT AS oksLE_AMOUNT
13057   ,oksLE.DATE_RECEIVABLE_GL AS oksLE_DATE_RECEIVABLE_GL
13058   ,oksLE.DATE_REVENUE_RULE_START AS oksLE_DATE_REVENUE_RULE_START
13059   ,oksLE.DATE_TRANSACTION AS oksLE_DATE_TRANSACTION
13060   ,oksLE.DATE_DUE AS oksLE_DATE_DUE
13061   ,oksLE.DATE_PRINT AS oksLE_DATE_PRINT
13062   ,oksLE.DATE_TO_INTERFACE AS oksLE_DATE_TO_INTERFACE
13063   ,NULL AS oksLE_DATE_COMPLETED
13064   ,1 AS oksLE_OBJECT_VERSION_NUMBER
13065   ,oksSL.ID AS oksLE_NewRulID --*
13066   ,oksLE.SECURITY_GROUP_ID AS oksLE_SECURITY_GROUP_ID
13067   ,oksSL.CLE_ID AS oksLE_NewCleID --*
13068   ,oksSL.DNZ_CHR_ID AS oksLE_NewDnzChrID --*
13069   ,decode(okcBT.CLE_ID,NULL,okcBT.ID,okcBT.CLE_ID) AS NewParentCleID
13070   ,oksLE.DATE_END AS oksLE_DATE_END
13071   FROM
13072    OKS_LEVEL_ELEMENTS oksLE
13073   ,OKS_STREAM_LEVELS_B oksSL
13074   ,OKC_K_LINES_B_TEMP okcBT
13075   WHERE
13076   oksLE.RUL_ID = oksSL.ORIG_SYSTEM_ID1
13077   AND oksSL.CHR_ID IS NULL
13078   AND oksSL.CLE_ID IS NOT NULL
13079   AND oksSL.DNZ_CHR_ID = okcBT.DNZ_CHR_ID
13080   AND oksSL.CLE_ID = okcBT.ID
13081   AND oksSL.DNZ_CHR_ID = P_To_Chr_ID
13082   AND oksLE.DNZ_CHR_ID = P_From_Chr_ID
13083 --  AND (okcBT.DATES_CHANGED_YN = 'N' AND okcBT.DATE_TERMINATED IS NULL);
13084   AND (
13085         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
13086          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
13087          AND okcBT.DATE_TERMINATED IS NULL                       --b) Is not TERMINATED
13088          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are TERMINATED
13089                          where b.CLE_ID = okcBT.ID
13090                          and b.LINE_EXISTS_YN = 'N'
13091                          and b.DATE_TERMINATED is not null)
13092         )
13093        OR
13094         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
13095          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
13096          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
13097          AND okcBT.DATE_TERMINATED IS NULL                       --c) Subline is not TERMINATED
13098          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are TERMINATED
13099                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
13100                           (a.CLE_ID = okcBT.CLE_ID
13101                           and a.LINE_EXISTS_YN = 'N'
13102                           and a.DATE_TERMINATED IS NOT NULL)
13103                          OR
13104                           (a.ID = okcBT.CLE_ID
13105                            and a.DATES_CHANGED_YN = 'Y'
13106                           )
13107                       )
13108         )
13109        OR
13110         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
13111          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
13112          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not TERMINATED
13113         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
13114       )
13115   --npalepu added on 21-may-2006 for bug # 5178264
13116   AND (
13117         (okcBT.CLE_ID IS NULL                                    --Line being copied is a Topline with
13118          AND okcBT.DATES_CHANGED_YN = 'N'                        --a) Dates not changed to honor target
13119          AND okcBT.DATE_CANCELLED IS NULL                       --b) Is not Cancelled
13120          AND NOT EXISTS (select b.id from okc_k_lines_b_temp b   --c) Has no sublines being copied that are Cancelled
13121                          where b.CLE_ID = okcBT.ID
13122                          and b.LINE_EXISTS_YN = 'N'
13123                          and b.DATE_CANCELLED is not null)
13124         )
13125        OR
13126         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline with
13127          AND okcBT.LINE_EXISTS_YN = 'N'                          --a) Top line being copied
13128          AND okcBT.DATES_CHANGED_YN = 'N'                        --b) Subline's Dates havent changed with respect to Target
13129          AND okcBT.DATE_CANCELLED IS NULL                       --c) Subline is not Cancelled
13130          AND NOT EXISTS (select a.ID from okc_k_lines_b_temp a   --d) Has no peer sublines that are Cancelled
13131                          where                                   --e) Its Top Line being copied doesnt have its Dates Changed
13132                           (a.CLE_ID = okcBT.CLE_ID
13133                           and a.LINE_EXISTS_YN = 'N'
13134                           and a.DATE_CANCELLED IS NOT NULL)
13135                          OR
13136                           (a.ID = okcBT.CLE_ID
13137                            and a.DATES_CHANGED_YN = 'Y'
13138                           )
13139                       )
13140         )
13141        OR
13142         (okcBT.CLE_ID IS NOT NULL                                --Line being copied is a subline that is:
13143          AND okcBT.LINE_EXISTS_YN = 'Y'                          --a) Being copied to an existing Target Topline
13144          AND okcBT.GEN_SUBLINE_BSCH_YN = 'N'                     --b) It is not Cancelled
13145         )                                                        --c) Its Dates haven't been changed with respect to Target TopLine
13146       )
13147   --end npalepu
13148       ;
13149 
13150 l_count NUMBER;
13151  Begin
13152  If (P_Partial_Copy_YN = 'N') then
13153   OPEN GetOksLEFull;
13154  Elsif (P_Partial_Copy_YN = 'Y') then
13155   If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
13156     OPEN GetOksLEPartial_H;
13157   Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
13158     OPEN GetOksLEPartial_HNL;
13159   Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
13160   --errorout_hk('Open GetOksLEPartial_L');
13161     OPEN GetOksLEPartial_L;
13162   ELSIF (P_Target_Contract_New_YN = 'N' and P_Lines_Count = 0) THEN
13163     RETURN;
13164   End If;
13165  End If;
13166 
13167  LOOP
13168   If (P_Partial_Copy_YN = 'N') then
13169     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13170          FND_LOG.string(FND_LOG.level_statement
13171                         ,l_module_name
13172                         ,'FETCHing from GetOksLEFull'
13173                          );
13174     END IF;
13175 
13176    FETCH GetOksLEFull BULK COLLECT INTO
13177       OksLERecTab.OksLE_OldID
13178      ,OksLERecTab.OksLE_NewID
13179      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13180      ,OksLERecTab.OksLE_DATE_START
13181      ,OksLERecTab.OksLE_AMOUNT
13182      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13183      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13184      ,OksLERecTab.OksLE_DATE_TRANSACTION
13185      ,OksLERecTab.OksLE_DATE_DUE
13186      ,OksLERecTab.OksLE_DATE_PRINT
13187      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13188      ,OksLERecTab.OksLE_DATE_COMPLETED
13189      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13190      ,OksLERecTab.OksLE_NewRulID
13191      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13192      ,OksLERecTab.OksLE_NewCleID
13193      ,OksLERecTab.OksLE_NewDnzChrID
13194      ,OksLERecTab.OksLE_NewParentCleID
13195      ,OksLERecTab.OksLE_DATE_END
13196    LIMIT G_BULK_FETCH_LIMIT;
13197   Elsif (P_Partial_Copy_YN = 'Y') then
13198    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
13199     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13200          FND_LOG.string(FND_LOG.level_statement
13201                         ,l_module_name
13202                         ,'FETCHing from GetOksLEPartial_H'
13203                          );
13204     END IF;
13205 
13206      FETCH GetOksLEPartial_H BULK COLLECT INTO
13207       OksLERecTab.OksLE_OldID
13208      ,OksLERecTab.OksLE_NewID
13209      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13210      ,OksLERecTab.OksLE_DATE_START
13211      ,OksLERecTab.OksLE_AMOUNT
13212      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13213      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13214      ,OksLERecTab.OksLE_DATE_TRANSACTION
13215      ,OksLERecTab.OksLE_DATE_DUE
13216      ,OksLERecTab.OksLE_DATE_PRINT
13217      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13218      ,OksLERecTab.OksLE_DATE_COMPLETED
13219      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13220      ,OksLERecTab.OksLE_NewRulID
13221      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13222      ,OksLERecTab.OksLE_NewCleID
13223      ,OksLERecTab.OksLE_NewDnzChrID
13224      ,OksLERecTab.OksLE_NewParentCleID
13225      ,OksLERecTab.OksLE_DATE_END
13226      LIMIT G_BULK_FETCH_LIMIT;
13227 
13228    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
13229     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13230          FND_LOG.string(FND_LOG.level_statement
13231                         ,l_module_name
13232                         ,'FETCHing from GetOksLEPartial_HNL'
13233                          );
13234     END IF;
13235 
13236      FETCH GetOksLEPartial_HNL BULK COLLECT INTO
13237       OksLERecTab.OksLE_OldID
13238      ,OksLERecTab.OksLE_NewID
13239      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13240      ,OksLERecTab.OksLE_DATE_START
13241      ,OksLERecTab.OksLE_AMOUNT
13242      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13243      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13244      ,OksLERecTab.OksLE_DATE_TRANSACTION
13245      ,OksLERecTab.OksLE_DATE_DUE
13246      ,OksLERecTab.OksLE_DATE_PRINT
13247      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13248      ,OksLERecTab.OksLE_DATE_COMPLETED
13249      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13250      ,OksLERecTab.OksLE_NewRulID
13251      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13252      ,OksLERecTab.OksLE_NewCleID
13253      ,OksLERecTab.OksLE_NewDnzChrID
13254      ,OksLERecTab.OksLE_NewParentCleID
13255      ,OksLERecTab.OksLE_DATE_END
13256      LIMIT G_BULK_FETCH_LIMIT;
13257 
13258    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
13259     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13260          FND_LOG.string(FND_LOG.level_statement
13261                         ,l_module_name
13262                         ,'FETCHing from GetOksLEPartial_L'
13263                          );
13264     END IF;
13265 --errorout_hk('Fetching GetOksLEPartial_L');
13266      FETCH GetOksLEPartial_L BULK COLLECT INTO
13267       OksLERecTab.OksLE_OldID
13268      ,OksLERecTab.OksLE_NewID
13269      ,OksLERecTab.OksLE_SEQUENCE_NUMBER
13270      ,OksLERecTab.OksLE_DATE_START
13271      ,OksLERecTab.OksLE_AMOUNT
13272      ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL
13273      ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START
13274      ,OksLERecTab.OksLE_DATE_TRANSACTION
13275      ,OksLERecTab.OksLE_DATE_DUE
13276      ,OksLERecTab.OksLE_DATE_PRINT
13277      ,OksLERecTab.OksLE_DATE_TO_INTERFACE
13278      ,OksLERecTab.OksLE_DATE_COMPLETED
13279      ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER
13280      ,OksLERecTab.OksLE_NewRulID
13281      ,OksLERecTab.OksLE_SECURITY_GROUP_ID
13282      ,OksLERecTab.OksLE_NewCleID
13283      ,OksLERecTab.OksLE_NewDnzChrID
13284      ,OksLERecTab.OksLE_NewParentCleID
13285      ,OksLERecTab.OksLE_DATE_END
13286      LIMIT G_BULK_FETCH_LIMIT;
13287 
13288    End If;
13289   End If;
13290 
13291 --errorout_hk('GetOksLEPartial_L count -'||OksLERecTab.OksLE_NewID.count);
13292 
13293   FORALL i IN OksLERecTab.OksLE_NewID.FIRST .. OksLERecTab.OksLE_NewID.LAST
13294   INSERT INTO OKS_LEVEL_ELEMENTS(
13295    ID
13296   ,SEQUENCE_NUMBER
13297   ,DATE_START
13298   ,AMOUNT
13299   ,DATE_RECEIVABLE_GL
13300   ,DATE_REVENUE_RULE_START
13301   ,DATE_TRANSACTION
13302   ,DATE_DUE
13303   ,DATE_PRINT
13304   ,DATE_TO_INTERFACE
13305   ,DATE_COMPLETED
13306   ,OBJECT_VERSION_NUMBER
13307   ,RUL_ID
13308   ,SECURITY_GROUP_ID
13309   ,CLE_ID
13310   ,DNZ_CHR_ID
13311   ,PARENT_CLE_ID
13312   ,DATE_END
13313   ,CREATED_BY
13314   ,CREATION_DATE
13315   ,LAST_UPDATED_BY
13316   ,LAST_UPDATE_DATE
13317   )
13318   SELECT
13319    OksLERecTab.OksLE_NewID(i)
13320   ,OksLERecTab.OksLE_SEQUENCE_NUMBER(i)
13321   ,OksLERecTab.OksLE_DATE_START(i)
13322   ,OksLERecTab.OksLE_AMOUNT(i)
13323   ,OksLERecTab.OksLE_DATE_RECEIVABLE_GL(i)
13324   ,OksLERecTab.OksLE_DATE_REVENUE_RULE_START(i)
13325   ,OksLERecTab.OksLE_DATE_TRANSACTION(i)
13326   ,OksLERecTab.OksLE_DATE_DUE(i)
13327   ,OksLERecTab.OksLE_DATE_PRINT(i)
13328   ,OksLERecTab.OksLE_DATE_TO_INTERFACE(i)
13329   ,OksLERecTab.OksLE_DATE_COMPLETED(i)
13330   ,OksLERecTab.OksLE_OBJECT_VERSION_NUMBER(i)
13331   ,OksLERecTab.OksLE_NewRulID(i)
13332   ,OksLERecTab.OksLE_SECURITY_GROUP_ID(i)
13333   ,OksLERecTab.OksLE_NewCleID(i)
13334   ,OksLERecTab.OksLE_NewDnzChrID(i)
13335   ,OksLERecTab.OksLE_NewParentCleID(i)
13336   ,OksLERecTab.OksLE_DATE_END(i)
13337   ,FND_GLOBAL.USER_ID
13338   ,SYSDATE
13339   ,FND_GLOBAL.USER_ID
13340   ,SYSDATE
13341   FROM DUAL;
13342 
13343   IF (P_Partial_Copy_YN = 'N') then
13344    EXIT WHEN GetOksLEFull%NOTFOUND;
13345   Elsif (P_Partial_Copy_YN = 'Y') then
13346    If (P_Target_Contract_New_YN = 'Y' and P_Lines_Count = 0) then
13347      EXIT WHEN GetOksLEPartial_H%NOTFOUND;
13348    Elsif (P_Target_Contract_New_YN = 'Y' and P_Lines_Count > 0) then
13349      EXIT WHEN GetOksLEPartial_HNL%NOTFOUND;
13350    Elsif (P_Target_Contract_New_YN = 'N' and P_Lines_Count > 0) then
13351      EXIT WHEN GetOksLEPartial_L%NOTFOUND;
13352    End If;
13353   End If;
13354 
13355 
13356  End LOOP;
13357 
13358  If (GetOksLEFull%ISOPEN) then
13359   CLOSE GetOksLEFull;
13360  Elsif (GetOksLEPartial_H%ISOPEN) then
13361   CLOSE GetOksLEPartial_H;
13362  Elsif (GetOksLEPartial_HNL%ISOPEN) then
13363   CLOSE GetOksLEPartial_HNL;
13364  Elsif (GetOksLEPartial_L%ISOPEN) then
13365   CLOSE GetOksLEPartial_L;
13366  End If;
13367 
13368 
13369     EXCEPTION
13370           WHEN OTHERS THEN
13371 		 If (GetOksLEFull%ISOPEN) then
13372 		  CLOSE GetOksLEFull;
13373 		 Elsif (GetOksLEPartial_H%ISOPEN) then
13374 		  CLOSE GetOksLEPartial_H;
13375 		 Elsif (GetOksLEPartial_HNL%ISOPEN) then
13376 		  CLOSE GetOksLEPartial_HNL;
13377 		 Elsif (GetOksLEPartial_L%ISOPEN) then
13378 		  CLOSE GetOksLEPartial_L;
13379 		 End If;
13380 
13381           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13382           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
13383           RAISE;
13384 
13385 
13386  End copy_oks_level_elements;
13387 
13388 
13389 --==============================================================
13390 --Procedure update_line_inv_and_acct_rule: This procedure will be called just before Billing Schedule copy
13391 --to update the Invoice and Accounting Rules on the copied lines with the Target Header Invoice and
13392 --Accounting Rules. This update is done ONLY IF the Invoice/Accounting Rule is NULL on the Line.
13393 --Parameters:
13394 --	P_To_Chr_ID   : Header ID of the Target Contract
13395 --	P_Partial_Copy_YN : Flag to indicate if this is flow is Full Copy or Component Copy
13396 --==============================================================
13397 Procedure update_line_inv_and_acct_rule(P_To_Chr_ID IN NUMBER
13398 				       ,P_Partial_Copy_YN IN VARCHAR2
13399 				       ,x_return_status OUT NOCOPY VARCHAR2) IS
13400 
13401   l_api_name        CONSTANT VARCHAR2(30) := 'update_line_inv_and_acct_rule';
13402   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
13403 
13404  /**Gets all Billing related attributes for the Target Contract and populates them in Package Varialbes.
13405     These will be used :
13406     a) In this routine to update the Inv and Acct Rules on the copied lines
13407     b) In the routine create_bsch_using_PPSetup to generate Billing Schedules for Target Header and all its copied top lines
13408   */
13409   CURSOR GetTrgHdrPPAttributes IS
13410   SELECT
13411    okcH.START_DATE
13412   ,okcH.END_DATE
13413   ,okcH.INV_RULE_ID
13414   ,oksH.ACCT_RULE_ID
13415   ,oksH.PERIOD_START
13416   ,oksH.PERIOD_TYPE
13417   ,oksH.PRICE_UOM
13418   ,oksH.BILLING_SCHEDULE_TYPE
13419   from
13420    OKC_K_HEADERS_B okcH
13421   ,OKS_K_HEADERS_B oksH
13422   where okcH.ID = P_To_Chr_ID
13423   AND oksH.CHR_ID = okcH.ID;
13424 
13425   CURSOR GetTargetLines_F IS
13426   Select
13427   a.ID
13428   FROM
13429   OKC_K_LINES_B a
13430   where a.DNZ_CHR_ID = P_To_Chr_ID
13431   and a.CLE_ID IS NULL;
13432 
13433   CURSOR GetTargetLines_P IS
13434   Select
13435   okcB.ID
13436   FROM
13437   OKC_K_LINES_B okcB
13438   ,OKC_K_LINES_B_TEMP okcBT
13439   where okcB.ID = okcBT.ID
13440   and okcB.DNZ_CHR_ID = P_To_Chr_ID
13441   and okcB.CLE_ID IS NULL;
13442 
13443   LineIDTab NumTabType;
13444 Begin
13445   --Get Partial Period Attributes from Target Contract.
13446   OPEN GetTrgHdrPPAttributes;
13447   FETCH GetTrgHdrPPAttributes
13448   INTO
13449    G_TrgHdrStartDate
13450   ,G_TrgHdrEndDate
13451   ,G_TrgHdrInvRuleID
13452   ,G_TrgHdrAcctRuleID
13453   ,G_TrgHdrPeriodStart
13454   ,G_TrgHdrPeriodType
13455   ,G_TrgHdrPriceUOM
13456   ,G_TrgHdrBillingScheduleType;
13457   CLOSE GetTrgHdrPPAttributes;
13458 
13459   IF (P_Partial_Copy_YN = 'N') then
13460    OPEN GetTargetLines_F;
13461   ELSIF (P_Partial_Copy_YN = 'Y') then
13462    OPEN GetTargetLines_P;
13463   END IF;
13464 
13465   LOOP
13466   IF (P_Partial_Copy_YN = 'N') then
13467    FETCH GetTargetLines_F BULK COLLECT INTO LineIDTab LIMIT G_BULK_FETCH_LIMIT;
13468   ELSIF (P_Partial_Copy_YN = 'Y') then
13469    FETCH GetTargetLines_P BULK COLLECT INTO LineIDTab LIMIT G_BULK_FETCH_LIMIT;
13470   END IF;
13471 
13472   Begin
13473    FORALL i IN LineIDTab.FIRST..LineIDTab.LAST
13474     UPDATE OKC_K_LINES_B a
13475     SET a.INV_RULE_ID = nvl(a.INV_RULE_ID,G_TrgHdrInvRuleID)
13476     WHERE a.ID = LineIDTab(i);
13477   End;
13478   Begin
13479    FORALL j IN LineIDTab.FIRST..LineIDTab.LAST
13480     UPDATE OKS_K_LINES_B a
13481     SET a.ACCT_RULE_ID = nvl(a.ACCT_RULE_ID,G_TrgHdrAcctRuleID)
13482     WHERE a.DNZ_CHR_ID = P_To_Chr_ID
13483     and a.CLE_ID = LineIDTab(j);
13484   End;
13485     If P_Partial_Copy_YN = 'N' then
13486       EXIT WHEN GetTargetLines_F%NOTFOUND;
13487     Elsif P_Partial_Copy_YN = 'Y' then
13488       EXIT WHEN GetTargetLines_P%NOTFOUND;
13489     End If;
13490 
13491   END LOOP;
13492 
13493   IF GetTargetLines_F%ISOPEN THEN
13494     CLOSE GetTargetLines_F;
13495   ELSIF GetTargetLines_P%ISOPEN THEN
13496     CLOSE GetTargetLines_P;
13497   END IF;
13498 
13499  EXCEPTION
13500   WHEN OTHERS THEN
13501    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13502    IF GetTrgHdrPPAttributes%ISOPEN then
13503     CLOSE GetTrgHdrPPAttributes;
13504    End If;
13505    IF GetTargetLines_F%ISOPEN then
13506     CLOSE GetTargetLines_F;
13507    End IF;
13508    IF GetTargetLines_P%ISOPEN THEN
13509     CLOSE GetTargetLines_P;
13510    End IF;
13511 
13512    FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in update_line_inv_and_acct_rule', substr(SQLERRM,1,240));
13513 
13514 
13515 End update_line_inv_and_acct_rule;
13516 
13517 --==============================================================
13518 --Procedure copy_bsch_for_SkippedLines: Used to create PM Stream levels and PM Schedules for those lines
13519 --lines whose PM schedule related entities couldnt be bulk copied because their effective dates had to
13520 --be changed.
13521 --Parameters to be passed to Billing Schedule creation API
13522 --Inv_Rule_ID : Value present only for top-line. Use that for subline also
13523 --Billing Schedule Type: Value always present for top line. For subline if value is null, take it from top line
13524 --StreamLvl_tbl:
13525 --    id                  	   number,
13526 --    CHR_ID	                   Number,
13527 --    CLE_ID	                   Number,
13528 --    DNZ_CHR_ID	                   Number,
13529 --    Sequence_no	        	   Number,
13530 --    uom_code	                   Varchar2 (3),
13531 --    start_date	                   Date,
13532 --    end_date                       date,
13533 --    level_periods	           Number,
13534 --    uom_per_period	           Number,
13535 --    advance_periods	           Number,
13536 --    level_amount	           Number,
13537 --    invoice_offset_days	           Number,
13538 --    interface_offset_days	   Number,
13539 --    comments	                   Varchar2 (240),
13540 --    due_ARR_YN	                   Varchar2 (1),
13541 --    AMOUNT	                   Number,
13542 --    LINES_DETAILED_YN	           Varchar2 (1),
13543 --    Rule_Information1              Varchar2 (450),
13544 --    Rule_Information2              Varchar2 (450),
13545 --    Rule_Information3              Varchar2 (450),
13546 --    Rule_Information4              Varchar2 (450),
13547 --    Rule_Information_Category      Varchar2 (90),
13548 --    Object1_Id1                    Varchar2 (40)
13549 --==============================================================
13550   Procedure copy_bsch_for_SkippedLines(P_To_Chr_ID 	       IN NUMBER
13551 				      ,P_From_Chr_ID	       IN NUMBER
13552 				      ,P_Partial_Copy_YN       IN VARCHAR2
13553         			      ,p_init_msg_list         IN VARCHAR2 DEFAULT OKC_API.G_FALSE
13554         			      ,x_return_status         OUT NOCOPY VARCHAR2
13555         			      ,x_msg_count             OUT NOCOPY NUMBER
13556         			      ,x_msg_data              OUT NOCOPY VARCHAR2) IS
13557 
13558   l_api_name        CONSTANT VARCHAR2(30) := 'copy_bsch_for_SkippedLines';
13559   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
13560 
13561   TYPE TargetLinesRecTabType IS RECORD
13562   ( LINE_ID NumTabType
13563    ,ORIG_SYSTEM_ID1 NumTabType
13564    ,CLE_ID NumTabType
13565    ,INV_RULE_ID NumTabType
13566    ,BILLING_SCHEDULE_TYPE OksB_BillScheduleTypeTabType
13567    ,START_DATE DateTabType
13568    ,END_DATE DateTabType
13569    ,SOURCE_LINE_DATE_TERMINATED DateTabType
13570    ,GEN_SUBLINE_BSCH_YN FlagTabType
13571   );
13572 
13573  TargetLinesRecTab TargetLinesRecTabType;
13574 
13575   --Gets all Top Lines whose DATE_TERMINATED IS NOT NULL or those which have a subline with DATE_TERMINATED as NOT NULL.
13576   --The Top Line API will be used to generate BSCHs for such Top Lines and its sublines.
13577   CURSOR GetTargetLinesForBSCHRegen_F IS
13578   SELECT
13579   okcB.ID as  LINE_ID
13580  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
13581  ,okcB.CLE_ID CLE_ID
13582  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
13583          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
13584         ) as INV_RULE_ID
13585  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
13586         ,decode(oksB.BILLING_SCHEDULE_TYPE
13587 		,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
13588                 ,oksB.BILLING_SCHEDULE_TYPE
13589 		) -- its a subline
13590         ) as BILLING_SCHEDULE_TYPE
13591  ,okcB.START_DATE as START_DATE
13592  ,okcB.END_DATE as END_DATE
13593  ,okcB_Source.DATE_TERMINATED as SOURCE_LINE_DATE_TERMINATED
13594  ,NULL as GEN_SUBLINE_BSCH_YN
13595   from
13596    OKC_K_LINES_B okcB
13597   ,OKS_K_LINES_B oksB
13598   ,OKC_K_LINES_B okcB_Source
13599   where okcB.DNZ_CHR_ID = P_To_Chr_ID
13600   and okcB.ID = oksB.CLE_ID
13601   and okcB_Source.ID = okcB.ORIG_SYSTEM_ID1
13602   and okcB_Source.DNZ_CHR_ID = P_From_Chr_ID
13603   and okcB.CLE_ID IS NULL
13604   --npalepu modified on 31-may-2006 for bug # 5178264
13605   /* and (okcB_Source.DATE_TERMINATED IS NOT NULL
13606        OR
13607        (okcB_Source.DATE_TERMINATED IS NULL
13608         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)
13609        )
13610       ); */
13611   and ((okcB_Source.DATE_TERMINATED IS NOT NULL
13612        OR
13613        (okcB_Source.DATE_TERMINATED IS NULL
13614         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)
13615        )
13616       ) OR
13617       (okcB_Source.DATE_CANCELLED IS NOT NULL
13618        OR
13619        (okcB_Source.DATE_CANCELLED IS NULL
13620         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)
13621        )
13622       ));
13623   --end npalepu
13624 
13625 
13626   CURSOR GetTargetLinesForBSCHRegen_P IS
13627   SELECT
13628   okcB.ID as  LINE_ID
13629  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
13630  ,okcB.CLE_ID CLE_ID
13631  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
13632          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
13633         ) as INV_RULE_ID
13634  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
13635         ,decode(oksB.BILLING_SCHEDULE_TYPE
13636                 ,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
13637                 ,oksB.BILLING_SCHEDULE_TYPE
13638                ) -- its a subline
13639         ) as BILLING_SCHEDULE_TYPE
13640  ,okcB.START_DATE as START_DATE
13641  ,okcB.END_DATE as END_DATE
13642  ,okcBT.DATE_TERMINATED as SOURCE_LINE_DATE_TERMINATED
13643  ,okcBT.GEN_SUBLINE_BSCH_YN as GEN_SUBLINE_BSCH_YN
13644   from
13645    OKC_K_LINES_B okcB
13646   ,OKS_K_LINES_B oksB
13647   ,OKC_K_LINES_B_TEMP okcBT
13648   where okcB.DNZ_CHR_ID = P_To_Chr_ID
13649   and okcB.ID = oksB.CLE_ID
13650   and okcBT.ID = okcB.ID
13651   --npalepu modified on 31-may-2006 for bug # 5178264
13652  /* and (
13653          (okcBT.CLE_ID IS NULL AND (okcBT.DATES_CHANGED_YN = 'Y'
13654                                    OR okcBT.DATE_TERMINATED IS NOT NULL
13655                                    OR (
13656                                        okcBT.DATE_TERMINATED IS NULL and EXISTS (select b.ID from okc_k_lines_b_temp b
13657                                                                                  where b.CLE_ID= okcBT.ID
13658                                                                                  and b.DATE_TERMINATED IS NOT NULL
13659                                                                                  and b.LINE_EXISTS_YN = 'N')
13660                                       )
13661                                   )
13662          )
13663       OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y' and okcBT.GEN_SUBLINE_BSCH_YN = 'Y')
13664       ); */
13665   and ((
13666          (okcBT.CLE_ID IS NULL AND (okcBT.DATES_CHANGED_YN = 'Y'
13667                                    OR okcBT.DATE_TERMINATED IS NOT NULL
13668                                    OR (
13669                                        okcBT.DATE_TERMINATED IS NULL and EXISTS (select b.ID from okc_k_lines_b_temp b
13670                                                                                  where b.CLE_ID= okcBT.ID
13671                                                                                  and b.DATE_TERMINATED IS NOT NULL
13672                                                                                  and b.LINE_EXISTS_YN = 'N')
13673                                       )
13674                                   )
13675          )
13676       OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y' and okcBT.GEN_SUBLINE_BSCH_YN = 'Y')
13677       )
13678       OR
13679       (
13680          (okcBT.CLE_ID IS NULL AND (okcBT.DATES_CHANGED_YN = 'Y'
13681                                    OR okcBT.DATE_CANCELLED IS NOT NULL
13682                                    OR (
13683                                        okcBT.DATE_CANCELLED IS NULL and EXISTS (select b.ID from okc_k_lines_b_temp b
13684                                                                                  where b.CLE_ID= okcBT.ID
13685                                                                                  and b.DATE_CANCELLED IS NOT NULL
13686                                                                                  and b.LINE_EXISTS_YN = 'N')
13687                                       )
13688                                   )
13689          )
13690       OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y' and okcBT.GEN_SUBLINE_BSCH_YN = 'Y')
13691       ));
13692 
13693     --end npalepu
13694 
13695   CURSOR GetStreamsForSourceTopLine(l_Source_Top_Line_ID IN NUMBER) IS
13696   SELECT
13697    SEQUENCE_NO
13698   ,UOM_CODE
13699   ,START_DATE
13700   ,END_DATE
13701   ,LEVEL_PERIODS
13702   ,UOM_PER_PERIOD
13703   ,ADVANCE_PERIODS
13704   ,LEVEL_AMOUNT
13705   ,INVOICE_OFFSET_DAYS
13706   ,INTERFACE_OFFSET_DAYS
13707   ,COMMENTS
13708   ,DUE_ARR_YN
13709   ,AMOUNT
13710   ,LINES_DETAILED_YN
13711   FROM
13712   OKS_STREAM_LEVELS_B where CLE_ID = l_Source_Top_Line_ID
13713   ORDER BY SEQUENCE_NO;
13714 
13715   TYPE l_SourceStreams_tbl_Type IS TABLE OF GetStreamsForSourceTopLine%ROWTYPE INDEX BY BINARY_INTEGER;
13716   l_SourceStreams_tbl l_SourceStreams_tbl_Type;
13717 
13718   l_TargetTopLineStreams_tbl OKS_BILL_SCH.StreamLvl_tbl;
13719   l_TargetTopLineStreams_tbl_Ctr NUMBER := 0;
13720   l_bil_sch_out_tbl   OKS_BILL_SCH.itembillsch_tbl;
13721 
13722   l_stage varchar2(100) := null;
13723 
13724   BEGIN --Main Begin
13725     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
13726              FND_LOG.string(FND_LOG.level_procedure
13727                     ,l_module_name
13728                     ,'Entered copy_bsch_for_SkippedLines'
13729 		   ||' P_From_Chr_ID :'||P_From_Chr_ID
13730 		   ||' P_To_Chr_ID :'||P_To_Chr_ID
13731 		   ||' P_Partial_Copy_YN :'||P_Partial_Copy_YN
13732                      );
13733     END IF;
13734 
13735   IF (P_Partial_Copy_YN = 'Y') then
13736    OPEN GetTargetLinesForBSCHRegen_P;
13737   ELSIF (P_Partial_Copy_YN = 'N') then
13738    OPEN GetTargetLinesForBSCHRegen_F;
13739   END IF;
13740 
13741   LOOP --1)
13742    IF (P_Partial_Copy_YN = 'Y') then
13743     FETCH GetTargetLinesForBSCHRegen_P BULK COLLECT INTO
13744      TargetLinesRecTab.LINE_ID
13745     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
13746     ,TargetLinesRecTab.CLE_ID
13747     ,TargetLinesRecTab.INV_RULE_ID
13748     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
13749     ,TargetLinesRecTab.START_DATE
13750     ,TargetLinesRecTab.END_DATE
13751     ,TargetLinesRecTab.SOURCE_LINE_DATE_TERMINATED
13752     ,TargetLinesRecTab.GEN_SUBLINE_BSCH_YN LIMIT G_BULK_FETCH_LIMIT;
13753 
13754    ELSIF (P_Partial_Copy_YN = 'N') then
13755     FETCH GetTargetLinesForBSCHRegen_F BULK COLLECT INTO
13756      TargetLinesRecTab.LINE_ID
13757     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
13758     ,TargetLinesRecTab.CLE_ID
13759     ,TargetLinesRecTab.INV_RULE_ID
13760     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
13761     ,TargetLinesRecTab.START_DATE
13762     ,TargetLinesRecTab.END_DATE
13763     ,TargetLinesRecTab.SOURCE_LINE_DATE_TERMINATED
13764     ,TargetLinesRecTab.GEN_SUBLINE_BSCH_YN LIMIT G_BULK_FETCH_LIMIT;
13765 
13766    END IF;
13767 
13768    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13769     FND_LOG.string(FND_LOG.level_statement,l_module_name,' Lines Count :'||TargetLinesRecTab.LINE_ID.COUNT);
13770    END IF;
13771 
13772   IF (TargetLinesRecTab.LINE_ID.COUNT > 0) then
13773    BEGIN --Begin for looping through TargetLinesRecTab
13774     FOR i in TargetLinesRecTab.LINE_ID.FIRST..TargetLinesRecTab.LINE_ID.LAST LOOP --2)
13775 
13776         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13777                  FND_LOG.string(FND_LOG.level_statement
13778                         ,l_module_name
13779                         ,'Target Line ID : '||TargetLinesRecTab.LINE_ID(i)
13780 			||' Target Line Orig System ID1:'||TargetLinesRecTab.ORIG_SYSTEM_ID1(i)
13781 			||' Target Line CLE_ID :'||TargetLinesRecTab.CLE_ID(i)
13782 			||' Target line INV_RULE_ID:'||TargetLinesRecTab.INV_RULE_ID(i)
13783 			||' Target Line BSCH_TYPE:'||TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
13784 			||' Target Line Start Date:'||TargetLinesRecTab.START_DATE(i)
13785 			||' Target Line End Date:'||TargetLinesRecTab.END_DATE(i)
13786 			||' Target Line GEN_SUBLINE_BSCH_YN:'||TargetLinesRecTab.GEN_SUBLINE_BSCH_YN(i)
13787                          );
13788         END IF;
13789 
13790      IF (TargetLinesRecTab.CLE_ID(i) IS NULL) then
13791       l_SourceStreams_tbl.DELETE;
13792       l_TargetTopLineStreams_tbl.DELETE;
13793       l_TargetTopLineStreams_tbl_Ctr := 0;
13794 
13795         BEGIN --Begin of Fetch from GetStreamsForSourceTopLine
13796          OPEN GetStreamsForSourceTopLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
13797          LOOP --3)
13798          FETCH GetStreamsForSourceTopLine BULK COLLECT INTO l_SourceStreams_tbl LIMIT G_BULK_FETCH_LIMIT;
13799          IF (l_SourceStreams_tbl.COUNT > 0) then
13800           BEGIN --Begin of looping through l_SourceStreams_tbl
13801            FOR j IN l_SourceStreams_tbl.FIRST..l_SourceStreams_tbl.LAST LOOP --4)
13802             l_TargetTopLineStreams_tbl_Ctr := l_TargetTopLineStreams_tbl_Ctr + 1;
13803 
13804             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).id := FND_API.g_miss_num;
13805             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
13806             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).cle_id := TargetLinesRecTab.LINE_ID(i);
13807             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
13808             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).sequence_no := l_SourceStreams_tbl(j).sequence_no;
13809             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).uom_code := l_SourceStreams_tbl(j).uom_code;
13810             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).start_date := l_SourceStreams_tbl(j).start_date;
13811             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).end_date := l_SourceStreams_tbl(j).end_date;
13812             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).level_periods := l_SourceStreams_tbl(j).level_periods;
13813             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).uom_per_period := l_SourceStreams_tbl(j).uom_per_period;
13814             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).advance_periods := l_SourceStreams_tbl(j).advance_periods;
13815             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).level_amount := l_SourceStreams_tbl(j).level_amount;
13816             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).invoice_offset_days := l_SourceStreams_tbl(j).invoice_offset_days;
13817             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).interface_offset_days := l_SourceStreams_tbl(j).interface_offset_days;
13818             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).comments := l_SourceStreams_tbl(j).comments;
13819             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).due_arr_yn := l_SourceStreams_tbl(j).due_arr_yn;
13820             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).amount := l_SourceStreams_tbl(j).amount;
13821             l_TargetTopLineStreams_tbl(l_TargetTopLineStreams_tbl_Ctr).lines_detailed_yn := l_SourceStreams_tbl(j).lines_detailed_yn;
13822            END LOOP; --End LOOP for looping through Source Streams PLSQL table --4)
13823               EXCEPTION
13824    	    WHEN OTHERS THEN
13825                    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13826                    l_stage := 'Looping through l_SourceStreams_tbl';
13827                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
13828           END; --End of looping through l_SourceStreams_tbl
13829          END IF; -- End of if check for l_SourceStreams_tbl.COUNT > 0
13830 
13831          EXIT WHEN GetStreamsForSourceTopLine%NOTFOUND;
13832          END LOOP; --End LOOP for BULK FETCH of Source Streams --3)
13833          IF (GetStreamsForSourceTopLine%ISOPEN) then
13834            CLOSE GetStreamsForSourceTopLine;
13835          End If;
13836             EXCEPTION
13837    	   WHEN OTHERS THEN
13838    		l_stage := 'Fetching from cursor GetStreamsForSourceTopLine';
13839    	        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13840                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
13841 
13842         END; --End of Fetch from GetStreamsForSourceTopLine
13843 
13844          ---------Begin of BSCH Creation for Top Line----------
13845         BEGIN
13846          --OKS_BILL_SCH.create_bill_sch_rules
13847            OKS_BILL_SCH.create_bill_sch_rules(
13848                             p_billing_type => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
13849                            ,p_sll_tbl => l_TargetTopLineStreams_tbl
13850                            ,p_invoice_rule_id => TargetLinesRecTab.INV_RULE_ID(i)
13851                            ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
13852                            ,x_return_status => x_return_status);
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_rules'
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_rules', substr(SQLERRM,1,240));
13863           RETURN;
13864          END IF;
13865 
13866 
13867             EXCEPTION
13868             WHEN OTHERS THEN
13869                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
13870                  FND_LOG.string(FND_LOG.level_unexpected
13871                         ,l_module_name||'.EXCEPTION'
13872                         ,'Exception in call to OKS_BILL_SCH.create_bill_sch_rules, x_return_status ='||x_return_status
13873                          ||'SQLERRM ='||SQLERRM
13874                          );
13875                 END IF;
13876             x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13877             FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
13878             RAISE;
13879        END;
13880        --------End of BSCH Creation for Top Line
13881 
13882 
13883 
13884 
13885 
13886      ELSIF (TargetLinesRecTab.CLE_ID(i) IS NOT NULL) then
13887        IF (TargetLinesRecTab.GEN_SUBLINE_BSCH_YN(i) = 'Y') then
13888         --------Begin of BSCH Creation for Subline------------
13889 
13890          BEGIN
13891             Oks_bill_sch.Create_Bill_Sch_CP(
13892                                           p_top_line_id      => TargetLinesRecTab.CLE_ID(i)
13893                                          ,p_cp_line_id       => TargetLinesRecTab.LINE_ID(i)
13894                                          ,p_cp_new           => 'Y'
13895                                          ,x_return_status    => x_return_status
13896                                          ,x_msg_count        => x_msg_count
13897                                          ,x_msg_data         => x_msg_data
13898                                           );
13899          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13900            FND_LOG.string(FND_LOG.level_statement
13901                         ,l_module_name
13902                         ,'After call to OKS_BILL_SCH.Create_Bill_Sch_CP'
13903                         ||',x_return_status='||x_return_status
13904                          );
13905          END IF;
13906          IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
13907           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_cp', substr(SQLERRM,1,240));
13908           RETURN;
13909          END IF;
13910 
13911 
13912 
13913 
13914               EXCEPTION
13915               WHEN OTHERS THEN
13916                   IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
13917                    FND_LOG.string(FND_LOG.level_unexpected
13918                           ,l_module_name||'.EXCEPTION'
13919                           ,'Exception in call to OKS_BILL_SCH.create_bill_sch_cp, x_return_status ='||x_return_status
13920                            ||'SQLERRM ='||SQLERRM
13921                            );
13922                   END IF;
13923               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13924               FND_MSG_PUB.add_exc_msg(g_pkg_name, 'OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE', substr(SQLERRM,1,240));
13925               RAISE;
13926          END;
13927        --------End of BSCH Creation for Subline---------------
13928 
13929        END IF; --End If for GEN_SUBLINE_BSCH_YN = 'Y'
13930 
13931      END IF; --End If for CLE_ID is NULL check
13932 
13933        If (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
13934         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
13935          FND_LOG.string(FND_LOG.level_statement
13936            ,l_module_name
13937            ,'Return status from OKS_BILL_SCH : x_return_status ='||x_return_status
13938             );
13939         END IF;
13940         RETURN;
13941        End If;
13942 
13943     END LOOP; --End LOOP for looping through TargetLinesRecTab PLSQL table --2)
13944 	EXCEPTION WHEN OTHERS THEN
13945           l_stage := 'Looping through TargetLinesRecTab';
13946           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13947           FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
13948    END; --End of Begin for looping through TargetLinesRecTab
13949   END IF; --End of If check for TargetLinesRecTab.LINE_ID.COUNT > 0
13950 
13951    IF (P_Partial_Copy_YN = 'Y') then
13952     EXIT WHEN GetTargetLinesForBSCHRegen_P%NOTFOUND;
13953    ELSIF (P_Partial_Copy_YN = 'N') then
13954     EXIT WHEN GetTargetLinesForBSCHRegen_F%NOTFOUND;
13955    END IF;
13956 
13957   END LOOP; --End LOOP for BULK FETCH from GetTargetLinesForBSCHRegen_P cursor --1)
13958             --or GetTargetLinesForBSCHRegen_F cursor
13959 
13960   IF GetStreamsForSourceTopLine%ISOPEN THEN
13961     CLOSE GetStreamsForSourceTopLine;
13962   END IF;
13963   IF GetTargetLinesForBSCHRegen_P%ISOPEN THEN
13964     CLOSE GetTargetLinesForBSCHRegen_P;
13965   ELSIF GetTargetLinesForBSCHRegen_F%ISOPEN THEN
13966     CLOSE GetTargetLinesForBSCHRegen_F;
13967   END IF;
13968 
13969 
13970 
13971      EXCEPTION
13972         WHEN OTHERS THEN
13973           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
13974           IF GetStreamsForSourceTopLine%ISOPEN THEN
13975            CLOSE GetStreamsForSourceTopLine;
13976           END IF;
13977           IF GetTargetLinesForBSCHRegen_P%ISOPEN THEN
13978            CLOSE GetTargetLinesForBSCHRegen_P;
13979           ELSIF GetTargetLinesForBSCHRegen_F%ISOPEN THEN
13980            CLOSE GetTargetLinesForBSCHRegen_F;
13981           END IF;
13982           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
13983           RAISE;
13984 End copy_bsch_for_SkippedLines;
13985 
13986 --------------------------------
13987 Function GetSubscriptionFrequency(p_line_id IN NUMBER) RETURN VARCHAR2 IS
13988 CURSOR getFrequency IS
13989 SELECT frequency
13990 FROM   OKS_SUBSCR_HEADER_B
13991 WHERE  cle_id = p_line_id;
13992 
13993 l_Frequency OKS_SUBSCR_HEADER_B.FREQUENCY%TYPE;
13994 
13995 Begin
13996  OPEN getFrequency;
13997  FETCH getFrequency INTO l_Frequency;
13998  CLOSE getFrequency;
13999  RETURN l_Frequency;
14000 
14001 End GetSubscriptionFrequency;
14002 
14003 --This routine creates is a wrapper around the Billing Schedule APIs for creating Header and Line Billing Schedules.
14004 --This would be used to create Header or Line Billing Schedules using the Partial Period Setup on the Target Contract header
14005 --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
14006 --b) To an EXISTING contract, to create the Billing Schedules for lines that are copied , using the PP Setup on Header.
14007 Procedure instantiate_bsch_using_PPSetup(P_To_Chr_ID IN NUMBER
14008 					,P_To_Line_ID IN NUMBER
14009 					,StartDate IN DATE
14010 					,EndDate IN DATE
14011                                         ,PeriodStart IN VARCHAR2
14012 					,HdrPriceUOM IN VARCHAR2
14013 				        ,LinePriceUOM IN VARCHAR2
14014                                         ,InvoiceRuleID IN NUMBER
14015 					,BillingScheduleType IN VARCHAR2
14016                                         -- npalepu added on 22-may-2006
14017                                         ,P_LSE_ID  NUMBER
14018                                         --end npalepu
14019 					--NECHATUR 23-Jun-2006 Bug#5349539 Declaring Interface Offset Days and Invoice Offset Days parameters
14020                                         ,P_INTERFACE_OFFSET_DAYS NUMBER
14021                                         ,P_INVOICE_OFFSET_DAYS NUMBER
14022                                         --End NECHATUR Bug#5349539
14023                                         ,x_return_status OUT NOCOPY VARCHAR2) IS
14024 
14025   l_api_name        CONSTANT VARCHAR2(30) := 'instantiate_bsch_using_PPSetup';
14026   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
14027 
14028 
14029   l_HdrStreams_tbl     OKS_BILL_SCH.StreamLvl_tbl;
14030   l_HdrStreams_tbl_Ctr NUMBER := 0;
14031 
14032   l_LineStreams_tbl OKS_BILL_SCH.StreamLvl_tbl;
14033   l_LineStreams_tbl_Ctr NUMBER := 0;
14034 
14035   l_bil_sch_out_tbl   OKS_BILL_SCH.itembillsch_tbl;
14036   l_tce_code         VARCHAR2(100);
14037   l_uom_quantity     NUMBER;
14038   l_level_periods NUMBER;
14039 
14040   l_resultant_PriceUOM OKS_K_LINES_B.PRICE_UOM%TYPE;
14041 
14042 Begin
14043              IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
14044               FND_LOG.string(FND_LOG.level_procedure
14045                             ,l_module_name
14046                             ,'Begin instantiate_bsch_using_PPSetup'
14047                            ||' P_To_Chr_ID : '||P_To_Chr_ID
14048 			   ||' P_To_Line_ID : '||P_To_Line_ID
14049                            ||' Startdate : '||StartDate
14050                            ||' EndDate   : '||EndDate
14051                            ||' InvRuleID : '||InvoiceRuleID
14052                            ||' PeriodStart : '||PeriodStart
14053                            ||' HdrPriceUOM : '||HdrPriceUOM
14054 			   ||' LinePriceUOM :'||LinePriceUOM
14055                            ||' BillingScheduleType : '||BillingScheduleType
14056                             );
14057              END IF;
14058 
14059     --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14060 
14061    IF P_To_Line_ID IS NULL then
14062     l_resultant_PriceUOM := HdrPriceUOM;
14063    ELSIF P_To_Line_ID IS NOT NULL then
14064     l_resultant_PriceUOM := LinePriceUOM;
14065    End IF;
14066 
14067 /* hkamdar 28-Aug-2006. Commentd for Bug# 5458842.
14068       --npalepu added on 22-may-2006 for bug # 5207620
14069       IF l_resultant_PriceUOM IS NOT NULL then
14070         IF P_LSE_ID = 46 AND P_To_Line_ID IS NOT NULL  THEN
14071            l_resultant_PriceUOM := OKS_SUBSCRIPTION_PVT.Map_Freq_Uom(l_resultant_PriceUOM);
14072         End IF;
14073       End IF;
14074       --end npalepu
14075 */
14076 -- End hkamdar for Bug# 545882.
14077 
14078       IF l_resultant_PriceUOM IS NOT NULL then
14079        OKS_BILL_UTIL_PUB.get_seeded_timeunit(
14080                  p_timeunit      => l_resultant_PriceUOM
14081                 ,x_quantity      => l_uom_quantity
14082                 ,x_timeunit      => l_tce_code
14083                 ,x_return_status => x_return_status);
14084 
14085        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14086         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_UTIL_PUB.get_seeded_timeunit', substr(SQLERRM,1,240));
14087         RETURN;
14088        END IF;
14089 
14090        IF nvl(l_tce_code,'HOUR') NOT IN ('HOUR','MINUTE') THEN
14091       ---Get the periods to be used for creating the stream for the Top line--
14092           l_level_periods :=OKS_BILL_UTIL_PUB.Get_Periods
14093                             (
14094                              p_start_date   => StartDate
14095                             ,p_end_date     => EndDate
14096                             ,p_uom_code     => l_resultant_PriceUOM
14097                             ,p_period_start => PeriodStart
14098                             );
14099 
14100          IF (l_level_periods IS NOT NULL) THEN
14101           BEGIN
14102             IF P_To_Line_ID IS NULL then
14103 
14104              --Generating Header Schedule--
14105              l_HdrStreams_tbl.DELETE;
14106              --npalepu changing the counter value to 1 for bug # 5207620 on 23-may-2006
14107              /* l_HdrStreams_tbl_Ctr := 0; */
14108              l_HdrStreams_tbl_Ctr := 1;
14109              --end npalepu
14110 
14111               BEGIN --Begin of populating Stream Table for Target Header
14112                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).level_periods := l_level_periods;
14113                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).id := FND_API.g_miss_num;
14114                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).chr_id := P_To_Chr_ID;
14115                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).cle_id := FND_API.g_miss_num;
14116                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14117                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).sequence_no := 1;
14118                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).uom_code := l_resultant_PriceUOM;
14119                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).start_date := StartDate;
14120                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).end_date := EndDate;
14121                l_HdrStreams_tbl(l_HdrStreams_tbl_Ctr).uom_per_period := 1;
14122               END; --End of populating Stream table for Target Header
14123 
14124 
14125                   --Generate Billing Schedule for Target Header--
14126                        OKS_BILL_SCH.Create_Header_Bill_Sch(
14127                                         p_billing_type => BillingScheduleType
14128                                        ,p_sll_tbl => l_HdrStreams_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_hdr_bill_sch'
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_hdr_bill_sch', substr(SQLERRM,1,240));
14141                         RETURN;
14142                        END IF;
14143 
14144             ELSIF P_To_Line_ID IS NOT NULL then
14145             --Generating Schedule for Top Line--
14146 
14147              l_LineStreams_tbl.DELETE;
14148              --npalepu changing the counter value to 1 for bug # 5207620 on 23-may-2006
14149              /* l_LineStreams_tbl_Ctr := 0; */
14150              l_LineStreams_tbl_Ctr := 1;
14151              --end npalepu
14152 
14153               BEGIN --Begin of populating Stream Table for Target Top Line
14154                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_periods := l_level_periods;
14155                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).id := FND_API.g_miss_num;
14156                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
14157                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id := P_To_Line_ID;
14158                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14159                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).sequence_no := 1;
14160                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_code := l_resultant_PriceUOM;
14161                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).start_date := StartDate;
14162                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).end_date := EndDate;
14163                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_per_period := 1;
14164 --NECHATUR 23-Jun-2006 Bug#5349539 Populating Invoice Offset Days and Interface Offset Days of Stream Table
14165                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).invoice_offset_days := P_INVOICE_OFFSET_DAYS;
14166                l_LineStreams_tbl(l_LineStreams_tbl_Ctr).interface_offset_days := P_INTERFACE_OFFSET_DAYS;
14167 -- End NECHATUR Bug#5349539
14168               END; --End of populating Stream table for Target Top Line
14169 
14170  	          --Generate Billing Schedule for Top Line--
14171        		       OKS_BILL_SCH.create_bill_sch_rules(
14172        		                        p_billing_type => BillingScheduleType
14173        		                       ,p_sll_tbl => l_LineStreams_tbl
14174        		                       ,p_invoice_rule_id => InvoiceRuleID
14175        		                       ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14176        		                       ,x_return_status => x_return_status);
14177        		       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14178        		         FND_LOG.string(FND_LOG.level_statement
14179        		                      ,l_module_name
14180        		                      ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
14181        		                      ||',x_return_status='||x_return_status
14182        		                       );
14183        		       END IF;
14184        		       IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14185        		        FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
14186        		        RETURN;
14187        		       END IF;
14188             END IF;  --End of P_To_Line_ID check
14189 
14190              EXCEPTION
14191              WHEN OTHERS THEN
14192                  IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
14193                   FND_LOG.string(FND_LOG.level_unexpected
14194                       ,l_module_name||'.EXCEPTION'
14195                       ,'Exception in instantiate_bsch_using_PPSetup, x_return_status ='||x_return_status
14196                        ||'SQLERRM ='||SQLERRM
14197                        );
14198                  END IF;
14199              x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14200              FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in instantiate_bsch_using_PPSetup', substr(SQLERRM,1,240));
14201              RAISE;
14202 
14203            END;
14204          END IF; --End of If check for l_level_periods IS NOT NULL
14205        END IF; -- End of IF Check for l_tce_code NOT in HOUR,MINUTE
14206       END IF; --IF Check for PRICEUOM NOT NULL
14207 
14208 End instantiate_bsch_using_PPSetup;
14209 
14210 /*---------------------------------------------------------------------
14211 --The following routine is used to generate Billing Schedules in the following situations:
14212 --A)  During FULL Copy and PARTIAL COPY to a NEW Contract
14213 -- If Partial period DOES NOT EXIST in Source Contract and EXISTS in GCD:
14214       i) Schedules are generated using GCD PPSetup for New Target Contract Header and all its lines
14215 
14216 --B) During PARTIAL COPY to an EXISTING Contract
14217 --    i) Schedules are generated for copied Top Lines as follows:
14218 --	   a) Using Target Header Streams if they EXIST
14219 --	   b) If Target header Streams DONT EXIST, use Partial Period Setup on Target Header to generate Streams for top lines
14220 --	   c) If Partial Period Setup DOES NOT EXIST on Target Header, use GCD Partial Period Setup to generate Streams for top lines.
14221 --	   d) If GCD Partial Period DOES NOT EXIST, using Streams of the Source Top Lines
14222 --    ii) Schedules are generated for copied Sublines as follows
14223 --	   a) Using the streams of corresponding target top lines
14224 --
14225 --Note: If the Partial Period Setup had existed on the Source Contract or if the Partial Period Setup was NULL on Both Source Contract
14226 --      and in GCD,  the Billing Schedules for Target Header and Lines would have been bulk copied using
14227 --	COPY_OKS_STREAM_LEVELS and COPY_OKS_LEVEL_ELEMENTS routines.
14228 --------------------------------------------------------------------*/
14229 Procedure create_bsch_using_PPSetup(P_To_Chr_ID 	       IN NUMBER
14230 				   ,P_From_Chr_ID	       IN NUMBER
14231 				   ,P_Partial_Copy_YN       IN VARCHAR2
14232 				   ,P_Target_Contract_New_YN IN VARCHAR2 DEFAULT 'Y'
14233         			   ,p_init_msg_list         IN VARCHAR2 DEFAULT OKC_API.G_FALSE
14234         			   ,x_return_status         OUT NOCOPY VARCHAR2
14235         			   ,x_msg_count             OUT NOCOPY NUMBER
14236         			   ,x_msg_data              OUT NOCOPY VARCHAR2) IS
14237 
14238   l_api_name        CONSTANT VARCHAR2(30) := 'create_bsch_using_PPSetup';
14239   l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
14240 
14241 
14242   -- hkamdar 04-Sep-2006 Added for bug# 5458842.
14243   -- Added usage_type and usage_period
14244   TYPE TargetLinesRecTabType IS RECORD
14245   ( LINE_ID NumTabType
14246    ,LSE_ID NumTabType
14247    ,ORIG_SYSTEM_ID1 NumTabType
14248    ,CLE_ID NumTabType
14249    ,INV_RULE_ID NumTabType
14250    ,BILLING_SCHEDULE_TYPE OksB_BillScheduleTypeTabType
14251    ,START_DATE DateTabType
14252    ,END_DATE DateTabType
14253    ,PRICE_UOM Varchar2_30_TabType
14254    ,USAGE_TYPE Varchar2_30_TabType
14255    ,USAGE_PERIOD Varchar2_30_TabType
14256   );
14257 
14258  TargetLinesRecTab TargetLinesRecTabType;
14259 
14260 -- hkamdar added for bug # 5043015
14261 /** Full contract copy: When source doesn't have PP setup, GCD has PP setup. Cursor to get all toplines
14262     created during copy for which Billing Schedule needs to be generated.
14263 */
14264 
14265   CURSOR GetTrgLinesDetails_PP IS
14266   SELECT
14267   okcB.ID as  LINE_ID
14268  ,okcB.LSE_ID as LSE_ID
14269  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
14270  ,okcB.CLE_ID CLE_ID
14271  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
14272          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
14273         ) as INV_RULE_ID
14274  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
14275         ,decode(oksB.BILLING_SCHEDULE_TYPE
14276                 ,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
14277                 ,oksB.BILLING_SCHEDULE_TYPE
14278                ) -- its a subline
14279         ) as BILLING_SCHEDULE_TYPE
14280  ,okcB.START_DATE as START_DATE
14281  ,okcB.END_DATE as END_DATE
14282  ,decode(okcB.LSE_ID
14283         ,122
14284         ,oksB.USAGE_PERIOD
14285         ,46
14286         ,(SELECT frequency FROM OKS_SUBSCR_HEADER_B WHERE cle_id = okcB.ID)
14287         ,oksB.PRICE_UOM
14288         )AS PRICE_UOM
14289   -- hkamdar 04-Sep-2006 Added for bug# 5458842.
14290   ,oksB.USAGE_TYPE as USAGE_TYPE
14291   ,oksB.USAGE_PERIOD as USAGE_PERIOD
14292   from
14293    OKC_K_LINES_B okcB
14294   ,OKS_K_LINES_B oksB
14295   where okcB.CHR_ID = P_To_Chr_ID
14296   and okcB.ID = oksB.CLE_ID;
14297 -- End hkamdar
14298 
14299  /**Component Copy to an EXISTING Contract: Cursor to get Target Lines for which Billing Schedule needs to be generated.
14300  --This is used for generating schedules for lines copied to an existing Target Contract
14301  */
14302   CURSOR GetTrgLines_K_EXISTS_P IS
14303   SELECT
14304   okcB.ID as  LINE_ID
14305  ,okcB.LSE_ID as LSE_ID
14306  ,okcB.ORIG_SYSTEM_ID1 as ORIG_SYSTEM_ID1
14307  ,okcB.CLE_ID CLE_ID
14308  ,decode(okcB.CLE_ID,NULL,okcB.INV_RULE_ID --its a topline
14309          ,(select a.INV_RULE_ID from okc_k_lines_b a where id = okcB.CLE_ID) --its a subline
14310         ) as INV_RULE_ID
14311  ,decode(okcB.CLE_ID,NULL,oksB.BILLING_SCHEDULE_TYPE --its a topline
14312         ,decode(oksB.BILLING_SCHEDULE_TYPE
14313                 ,NULL,(select a.BILLING_SCHEDULE_TYPE from oks_k_lines_b a where a.CLE_ID = okcB.CLE_ID)
14314                 ,oksB.BILLING_SCHEDULE_TYPE
14315                ) -- its a subline
14316         ) as BILLING_SCHEDULE_TYPE
14317  ,okcB.START_DATE as START_DATE
14318  ,okcB.END_DATE as END_DATE
14319  ,decode(okcB.LSE_ID
14320         ,12
14321         ,oksB.USAGE_PERIOD
14322         ,46
14323         ,(SELECT frequency FROM OKS_SUBSCR_HEADER_B WHERE cle_id = okcB.ID)
14324         ,oksB.PRICE_UOM
14325         )AS PRICE_UOM
14326   -- hkamdar 04-Sep-2006 Added for bug# 5458842.
14327   ,oksB.USAGE_TYPE as USAGE_TYPE
14328   ,oksB.USAGE_PERIOD as USAGE_PERIOD
14329   from
14330    OKC_K_LINES_B okcB
14331   ,OKS_K_LINES_B oksB
14332   ,OKC_K_LINES_B_TEMP okcBT
14333   where okcB.DNZ_CHR_ID = P_To_Chr_ID
14334   and okcB.ID = oksB.CLE_ID
14335   and okcBT.ID = okcB.ID
14336   and (okcBT.CLE_ID IS NULL  --Get all Top lines that are being copied
14337     OR (okcBT.CLE_ID IS NOT NULL and okcBT.LINE_EXISTS_YN = 'Y') --OR Sublines that are being copied to existing Top Lines
14338       );
14339 
14340   /**This is used to get the Target header Billing streams. Used to generate the Schedules for Lines copied to an existing target contract.
14341   --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.
14342   --If the PPSetup on Target header is also NULL, then no schedule is generated for the lines.
14343   */
14344   CURSOR GetStreamsForTargetHeader(P_To_Chr_ID IN NUMBER) IS
14345   SELECT
14346    SEQUENCE_NO
14347   ,UOM_CODE
14348   ,START_DATE
14349   ,END_DATE
14350   ,LEVEL_PERIODS
14351   ,UOM_PER_PERIOD
14352   ,ADVANCE_PERIODS
14353   ,LEVEL_AMOUNT
14354   ,INVOICE_OFFSET_DAYS
14355   ,INTERFACE_OFFSET_DAYS
14356   ,COMMENTS
14357   ,DUE_ARR_YN
14358   ,AMOUNT
14359   ,LINES_DETAILED_YN
14360   FROM
14361   OKS_STREAM_LEVELS_B where CHR_ID = P_To_Chr_ID AND
14362   CLE_ID IS NULL
14363   ORDER BY SEQUENCE_NO;
14364 
14365   TYPE l_TrgHdrStreams_Tbl_Type IS TABLE OF GetStreamsForTargetHeader%ROWTYPE INDEX BY BINARY_INTEGER;
14366   l_TrgHdrStreams_Tbl l_TrgHdrStreams_Tbl_Type;
14367   l_TrgHdrStreams_Exists_YN VARCHAR2(1);
14368 
14369 -- NECHATUR 23-Jun-2006 Bug#5349539 Cursor to get the Interface Offset Days and Invoice Offset Days of the Source Line Billing Stream
14370   CURSOR GetStreamsForLine(P_From_Cle_ID IN NUMBER) IS
14371   SELECT
14372    INVOICE_OFFSET_DAYS
14373   ,INTERFACE_OFFSET_DAYS
14374   FROM
14375   OKS_STREAM_LEVELS_B
14376   WHERE CLE_ID = P_From_Cle_ID
14377     AND dnz_chr_id = P_FROM_CHR_ID
14378   ORDER BY SEQUENCE_NO;
14379 -- End NECHATUR Bug#5349539
14380 
14381 -- hkamdar added on 24-Apr-2006. Based on Aaron's feedback on 07-Apr-2006. to PP CR03 ammendment.
14382   /**This is used to get the Source Line Billing streams. Used to generate the Schedules for Lines copied to an existing target contract.
14383   --If this cursor fetches no rows, then do not generate the Billing schedules for the lines.
14384 
14385   */
14386   CURSOR GetStreamsForSourceLine(P_From_Cle_ID IN NUMBER) IS
14387   SELECT
14388    SEQUENCE_NO
14389   ,UOM_CODE
14390   ,START_DATE
14391   ,END_DATE
14392   ,LEVEL_PERIODS
14393   ,UOM_PER_PERIOD
14394   ,ADVANCE_PERIODS
14395   ,LEVEL_AMOUNT
14396   ,INVOICE_OFFSET_DAYS
14397   ,INTERFACE_OFFSET_DAYS
14398   ,COMMENTS
14399   ,DUE_ARR_YN
14400   ,AMOUNT
14401   ,LINES_DETAILED_YN
14402   FROM
14403   OKS_STREAM_LEVELS_B
14404   WHERE CLE_ID = P_From_Cle_ID
14405     AND dnz_chr_id = P_FROM_CHR_ID
14406   ORDER BY SEQUENCE_NO;
14407 
14408   TYPE l_SrcLnStreams_Tbl_Type IS TABLE OF GetStreamsForSourceLine%ROWTYPE INDEX BY BINARY_INTEGER;
14409   l_SrcLnStreams_Tbl l_SrcLnStreams_Tbl_Type;
14410   l_SrcLnStreams_Exists_YN VARCHAR2(1);
14411 -- end hkamdar
14412   l_stage varchar2(100) := null;
14413 
14414   l_resultant_price_uom OKS_K_LINES_B.PRICE_UOM%TYPE;
14415   l_tce_code         VARCHAR2(100);
14416   l_uom_quantity     NUMBER;
14417   l_level_periods NUMBER;
14418 
14419   l_LineStreams_tbl OKS_BILL_SCH.StreamLvl_tbl;
14420   l_LineStreams_tbl_Ctr NUMBER := 0;
14421   l_bil_sch_out_tbl   OKS_BILL_SCH.itembillsch_tbl;
14422 
14423  -- hkamdar 20-Apr-2006
14424  -- added to incorporate Aaron's feedback on 07-Apr-2006 about partial copy
14425  l_duration_match   VARCHAR2(1);
14426  -- end hkamdar
14427 
14428  --npalepu added on 22-may-2006 for bug # 5207620
14429  l_default_bsch_type VARCHAR2(1);
14430  --end npalepu
14431 
14432 --NECHATUR 23-Jun-2006 Bug#5349539 Declaring Interface Offset Days and Invoice Offset Days Parameters
14433  L_INTERFACE_OFFSET_DAYS NUMBER;
14434  L_INVOICE_OFFSET_DAYS NUMBER;
14435 --End NECHATUR Bug#5349539
14436 
14437 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14438 
14439 l_item_type          VARCHAR2(50);
14440 l_price_uom          VARCHAR2(50);
14441 l_pricing_method     VARCHAR2(50);
14442 l_period_start       VARCHAR2(50);
14443 l_period_type        VARCHAR2(50);
14444 
14445 -- Flag to indicate whether to generate billing schedule or not
14446 l_generate_bill_sch_yn VARCHAR2(1) := 'N';
14447 -- End hkamdar for Bug# 5458842.
14448 
14449   BEGIN --Main Begin
14450     --errorout_hk('Entered create_bsch_using_ppsetup, P_Partial_Copy_YN :'||P_Partial_Copy_YN);
14451     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
14452              FND_LOG.string(FND_LOG.level_procedure
14453                     ,l_module_name
14454                     ,'Entered create_bsch_using_PPSetup'
14455 		   ||' P_From_Chr_ID :'||P_From_Chr_ID
14456 		   ||' P_To_Chr_ID :'||P_To_Chr_ID
14457 		   ||' P_Partial_Copy_YN :'||P_Partial_Copy_YN
14458                      );
14459     END IF;
14460 
14461 
14462   --+++++++++++++++++++++++++++++Full Copy or Component Copy to a New Contract++++++++++++++++++++++++++++
14463   --IF Full Copy or Partial Copy to a new contract, generate schedule for header and all its lines
14464   --using Partial Period Setup on the Target header
14465   IF (P_Partial_Copy_YN = 'N' OR (P_Partial_Copy_YN = 'Y' AND P_Target_Contract_New_YN = 'Y')) then
14466    IF (    G_TrgHdrPeriodStart IS NOT NULL
14467        AND G_TrgHdrPeriodType IS NOT NULL
14468        AND G_TrgHdrPriceUOM IS NOT NULL) THEN
14469      --errorout_hk('Condition -I :Partial copy N or (partial copy Y and TRGT New)');
14470 -- hkamdar 04-Sep-2006 Added USAGE_TYPE and USAGE_PERIOD for bug# 5458842.
14471   OPEN GetTrgLinesDetails_PP;
14472   LOOP --1)
14473   FETCH GetTrgLinesDetails_PP BULK COLLECT INTO
14474      TargetLinesRecTab.LINE_ID
14475     ,TargetLinesRecTab.LSE_ID
14476     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
14477     ,TargetLinesRecTab.CLE_ID
14478     ,TargetLinesRecTab.INV_RULE_ID
14479     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
14480     ,TargetLinesRecTab.START_DATE
14481     ,TargetLinesRecTab.END_DATE
14482     ,TargetLinesRecTab.PRICE_UOM
14483     ,TargetLinesRecTab.USAGE_TYPE
14484     ,TargetLinesRecTab.USAGE_PERIOD LIMIT G_BULK_FETCH_LIMIT;
14485 
14486     IF (TargetLinesRecTab.LINE_ID.COUNT > 0) THEN
14487 
14488        FOR i in TargetLinesRecTab.LINE_ID.FIRST..TargetLinesRecTab.LINE_ID.LAST LOOP --2)
14489 
14490   --Generate Header Schedule if copying to a new Contract. This will also generate schedule for all its lines
14491   /*  instantiate_bsch_using_PPSetup(P_To_Chr_ID => P_To_Chr_ID
14492                                   ,P_To_Line_ID => NULL
14493                                   ,StartDate => G_TrgHdrStartDate
14494                                   ,EndDate => G_TrgHdrEndDate
14495                                   ,HdrPriceUOM => G_TrgHdrPriceUOM
14496 				  ,LinePriceUOM => NULL
14497                                   ,PeriodStart => G_TrgHdrPeriodStart
14498                                   ,InvoiceRuleID => G_TrgHdrInvRuleID
14499                                   ,BillingScheduleType => nvl(G_TrgHdrBillingScheduleType,'T')
14500                                   ,x_return_status => x_return_status);*/
14501 
14502 
14503              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14504               FND_LOG.string(FND_LOG.level_statement
14505                             ,l_module_name
14506                             ,'Before call to instantiate_bsch_using_PPSetup for HEADER'
14507                            ||' : Line_Id         : '||TargetLinesRecTab.LINE_ID(i)
14508                            ||' : TrgHdrStartdate : '||TargetLinesRecTab.start_date(i)
14509 			   ||' : TrgHdrEndDate   : '||TargetLinesRecTab.end_date(i)
14510 			   ||' : TrgHdrInvRuleID : '||G_TrgHdrInvRuleID
14511 			   ||' : TrgHdrPeriodStart : '||G_TrgHdrPeriodStart
14512 			   ||' : TrgHdrPeriodType : '||G_TrgHdrPeriodType
14513 			   ||' : HdrPriceUOM : '||G_TrgHdrPriceUOM
14514                            ||' : LinePriceUOM     : '||TargetLinesRecTab.PRICE_UOM(i)
14515 			   ||' : TrgHdrBillingScheduleType : '||G_TrgHdrBillingScheduleType
14516                             );
14517              END IF;
14518      --errorout_hk('Calling instantiate_bsch_using_PPSetup for Condition -I');
14519     --npalepu added on 23-may-2006 for bug # 5207620
14520 
14521     /* hkamdar 04-Sep-2006 commented for bug# 5458842.
14522     IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14523         l_default_bsch_type := 'E';
14524     ELSE
14525         l_default_bsch_type := 'T';
14526     END IF;
14527     --end npalepu
14528     */
14529 
14530 -- NECHATUR 23-Jun-2006 Bug#5349539 Fetching the data from the cursor into the Offset Days variables
14531     Open GetStreamsForLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14532     Fetch GetStreamsForLine into L_INVOICE_OFFSET_DAYS,L_INTERFACE_OFFSET_DAYS;
14533     Close GetStreamsForLine;
14534 -- End NECHATUR Bug#5349539
14535 
14536 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14537 
14538 IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14539 /* hkamdar 04-Sep-2006 Commented. For Subscription lines only Equal Amount billing schedule type is used for
14540 -- which manual billing schedules are allowed.
14541    OPEN osh_cur(TargetLinesRecTab.LINE_ID(i));
14542    FETCH osh_cur INTO l_item_type,l_price_uom;
14543    CLOSE osh_cur;
14544    l_price_uom := OKS_SUBSCRIPTION_PVT.Map_Freq_Uom(l_price_uom);
14545 
14546    l_period_start := 'SERVICE';
14547 */
14548    l_generate_bill_sch_yn := 'N';
14549 
14550 ELSIF TargetLinesRecTab.LSE_ID(i) = 12 THEN
14551 -- hkamdar Bug# 5708505 8-Feb-07
14552 -- Added outer if condition to check billing schedule type
14553   IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) IS NOT NULL THEN
14554    IF TargetLinesRecTab.USAGE_TYPE(i) <> 'NPR' THEN
14555       l_price_uom := TargetLinesRecTab.USAGE_PERIOD(i);
14556       l_period_start := 'SERVICE';
14557       l_generate_bill_sch_yn := 'Y';
14558    ELSE
14559       l_generate_bill_sch_yn := 'N';
14560    END IF;
14561   ELSE
14562      l_generate_bill_sch_yn := 'N';
14563   END IF;
14564 -- 29-Sep-2006. Bug# 5563412. Added sublines lse ids and Ext Warranty lse id check.
14565 ELSIF TargetLinesRecTab.LSE_ID(i) IN (1,7,8,9,10,11,35,19,25) THEN
14566    IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) =  'T' THEN
14567       l_period_start := G_TrgHdrPeriodStart;
14568       l_price_uom := TargetLinesRecTab.PRICE_UOM(i);
14569       l_generate_bill_sch_yn := 'Y';
14570    ELSE
14571       l_generate_bill_sch_yn := 'N';
14572    END IF;
14573 ELSE
14574       l_generate_bill_sch_yn := 'N';
14575 END IF; -- TargetLinesRecTab.LSE_ID(i) = 12
14576 
14577 -- if generate billing schedule flag is Y only then call instantiate_bsch_using_PPSetup
14578 IF l_generate_bill_sch_yn = 'Y' THEN
14579 -- End hkamdar for Bug# 5458842.
14580 
14581     instantiate_bsch_using_PPSetup(P_To_Chr_ID => P_To_Chr_ID
14582                                   ,P_To_Line_ID => TargetLinesRecTab.LINE_ID(i)--NULL
14583                                   ,StartDate => TargetLinesRecTab.start_date(i)--G_TrgHdrStartDate
14584                                   ,EndDate => TargetLinesRecTab.end_date(i)--G_TrgHdrEndDate
14585                                   ,HdrPriceUOM => G_TrgHdrPriceUOM
14586 				  -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14587                                   --,LinePriceUOM => TargetLinesRecTab.PRICE_UOM(i)
14588                                   --,PeriodStart => G_TrgHdrPeriodStart
14589 				  ,LinePriceUOM => l_price_uom
14590                                   ,PeriodStart => l_period_start
14591 				  -- End hkamdar for Bug# 5458842.
14592                                   ,InvoiceRuleID => G_TrgHdrInvRuleID
14593                                   --npalepu changed for bug # 5207620 on 23-may-2006
14594                                   /* ,BillingScheduleType => nvl(G_TrgHdrBillingScheduleType,'T') */
14595                                   ,BillingScheduleType => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14596                                   --end npalepu
14597                                   --npalepu added on 22-may-2006
14598                                   ,p_LSE_ID =>TargetLinesRecTab.LSE_ID(i)
14599                                   --end npalepu
14600 				  --NECHATUR 23-Jun-2006 Bug#5349539
14601                                   ,P_INVOICE_OFFSET_DAYS =>L_INVOICE_OFFSET_DAYS
14602                                   ,P_INTERFACE_OFFSET_DAYS =>L_INTERFACE_OFFSET_DAYS
14603                                   -- End NECHATUR Bug#5349539
14604                                   ,x_return_status => x_return_status);
14605 
14606             IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14607              FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to instantiate_bsch_using_PPSetup', substr(SQLERRM,1,240));
14608              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14609               FND_LOG.string(FND_LOG.level_statement
14610                             ,l_module_name
14611                             ,'Return status from instantiate_bsch_using_PPSetup for HEADER : x_return_status ='||x_return_status
14612                             );
14613              END IF;
14614              RETURN;
14615             END IF;
14616 
14617              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14618               FND_LOG.string(FND_LOG.level_statement
14619                             ,l_module_name
14620                             ,'Before call to instantiate_bsch_using_PPSetup for HEADER'
14621                            ||' : Line_Id         : '||TargetLinesRecTab.LINE_ID(i)
14622                            ||' : TrgHdrStartdate : '||TargetLinesRecTab.start_date(i)
14623                            ||' : TrgHdrEndDate   : '||TargetLinesRecTab.end_date(i)
14624                            ||' : TrgHdrInvRuleID : '||G_TrgHdrInvRuleID
14625                            ||' : TrgHdrPeriodStart : '||G_TrgHdrPeriodStart
14626                            ||' : TrgHdrPeriodType : '||G_TrgHdrPeriodType
14627                            ||' : HdrPriceUOM : '||G_TrgHdrPriceUOM
14628                            ||' : LinePriceUOM     : '||TargetLinesRecTab.PRICE_UOM(i)
14629                            ||' : TrgHdrBillingScheduleType : '||G_TrgHdrBillingScheduleType
14630                             );
14631              END IF;
14632 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14633 -- Initializing local variables.
14634 l_item_type       := NULL;
14635 l_price_uom       := NULL;
14636 l_pricing_method  := NULL;
14637 l_period_start    := NULL;
14638 l_period_type     := NULL;
14639 
14640 l_generate_bill_sch_yn := 'N';
14641 
14642 END IF; --l_generate_bill_sch_yn = 'Y'
14643 -- End hkamdar for Bug# 5458842.
14644 
14645         END LOOP; --End LOOP for looping through Target header Streams PLSQL table
14646     END IF; -- TargetLinesRecTab.LINE_ID.COUNT > 0
14647 
14648     EXIT WHEN GetTrgLinesDetails_PP%NOTFOUND;
14649 
14650   END LOOP; --End LOOP for BULK FETCH from GetTrgLinesDetails_PP
14651   IF GetTrgLinesDetails_PP%ISOPEN THEN
14652     CLOSE GetTrgLinesDetails_PP;
14653   END IF;
14654 -- End hkamdar
14655 
14656   --End of Billing Schedule Generation for Header
14657    END IF;
14658 
14659  --++++++++++++++++++++++++++++++++++++Component Copy to an Existing Contract+++++++++++++++++++++++++++++++++
14660   ELSIF (P_Partial_Copy_YN = 'Y' AND P_Target_Contract_New_YN = 'N') then
14661    -- When Copying Lines to an Existing Contract generate schedules for all the Top Lines using
14662    -- a) Header schedule on Target to generate schedules for Lines
14663    -- b) If Header schedule doesnt exist on Target use use Partial Period Setup on Target header to generate streams
14664    -- If Header streams dont exist and PPSetup doesnt exist on target header no schedule is generated for lines
14665      --errorout_hk('Condition -II :Partial copy Y and TRGT Not New)');
14666    --============Get Target header Streams===================
14667   OPEN GetStreamsForTargetHeader(P_To_Chr_ID);
14668   FETCH GetStreamsForTargetHeader BULK COLLECT INTO l_TrgHdrStreams_Tbl;
14669   IF l_TrgHdrStreams_Tbl.COUNT > 0 then
14670     l_TrgHdrStreams_Exists_YN := 'Y';
14671   ELSE
14672     l_TrgHdrStreams_Exists_YN := 'N';
14673   END IF;
14674   CLOSE GetStreamsForTargetHeader;
14675    --=======================================================
14676 
14677   OPEN GetTrgLines_K_EXISTS_P;
14678   LOOP --1)
14679 -- hkamdar 04-Sep-2006 Added USAGE_TYPE and USAGE_PERIOD for bug# 5458842.
14680   FETCH GetTrgLines_K_EXISTS_P BULK COLLECT INTO
14681      TargetLinesRecTab.LINE_ID
14682     ,TargetLinesRecTab.LSE_ID
14683     ,TargetLinesRecTab.ORIG_SYSTEM_ID1
14684     ,TargetLinesRecTab.CLE_ID
14685     ,TargetLinesRecTab.INV_RULE_ID
14686     ,TargetLinesRecTab.BILLING_SCHEDULE_TYPE
14687     ,TargetLinesRecTab.START_DATE
14688     ,TargetLinesRecTab.END_DATE
14689     ,TargetLinesRecTab.PRICE_UOM
14690     ,TargetLinesRecTab.USAGE_TYPE
14691     ,TargetLinesRecTab.USAGE_PERIOD LIMIT G_BULK_FETCH_LIMIT;
14692 
14693   IF (TargetLinesRecTab.LINE_ID.COUNT > 0) THEN
14694    BEGIN --Begin for looping through TargetLinesRecTab
14695     FOR i in TargetLinesRecTab.LINE_ID.FIRST..TargetLinesRecTab.LINE_ID.LAST LOOP --2)
14696 
14697 
14698 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14699 
14700 IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14701 /* hkamdar 04-Sep-2006 Commented. For Subscription lines only Equal Amount billing schedule type is used for
14702 -- which manual billing schedules are allowed.
14703    OPEN osh_cur(TargetLinesRecTab.LINE_ID(i));
14704    FETCH osh_cur INTO l_item_type,l_price_uom;
14705    CLOSE osh_cur;
14706    l_price_uom := OKS_SUBSCRIPTION_PVT.Map_Freq_Uom(l_price_uom);
14707    l_period_start := 'SERVICE';
14708 */
14709    l_generate_bill_sch_yn := 'N';
14710 
14711 ELSIF TargetLinesRecTab.LSE_ID(i) = 12 THEN
14712 -- hkamdar Bug# 5708505 8-Feb-07
14713 -- Added outer if condition to check billing schedule type
14714   IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) IS NOT NULL THEN
14715    IF TargetLinesRecTab.USAGE_TYPE(i) <> 'NPR' THEN
14716       l_price_uom := TargetLinesRecTab.USAGE_PERIOD(i);
14717       l_period_start := 'SERVICE';
14718       l_generate_bill_sch_yn := 'Y';
14719    ELSE
14720       l_generate_bill_sch_yn := 'N';
14721    END IF;
14722   ELSE l_generate_bill_sch_yn := 'N';
14723 
14724   END IF;
14725 
14726 -- 29-Sep-2006. Bug# 5563412. Added sublines lse ids and Ext Warranty lse id check.
14727 ELSIF TargetLinesRecTab.LSE_ID(i) IN (1,7,8,9,10,11,35,19,25) THEN
14728    IF TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i) = 'T' THEN
14729       l_period_start := G_TrgHdrPeriodStart;
14730       l_price_uom := TargetLinesRecTab.PRICE_UOM(i);
14731       l_generate_bill_sch_yn := 'Y';
14732    ELSE
14733       l_generate_bill_sch_yn := 'N';
14734    END IF;
14735 ELSE
14736       l_generate_bill_sch_yn := 'N';
14737 
14738 END IF; -- TargetLinesRecTab.LSE_ID(i) = 12
14739 
14740 -- if generate billing schedule flag is Y only then call instantiate_bsch_using_PPSetup
14741 IF l_generate_bill_sch_yn = 'Y' THEN
14742 -- End hkamdar for Bug# 5458842.
14743 
14744      IF (TargetLinesRecTab.CLE_ID(i) IS NULL) then --It is a Top Line
14745 -- hkamdar  New Logic for Subscription and usage lines here
14746       --/*IF Header Billing Streams exists use them for generating the Top Line streams*/--
14747       IF (l_TrgHdrStreams_Exists_YN = 'Y') THEN
14748            --errorout_hk('Condition -II : If Target Header Streams Exists');
14749            --Resetting PLSQL table for populating line streams--
14750            l_LineStreams_tbl.DELETE;
14751            l_LineStreams_tbl_Ctr := 0;
14752        --Generate Schedule for Top Line using Header Streams--
14753           BEGIN --Begin of looping through l_TrgHdrStreams_Tbl
14754            FOR j IN l_TrgHdrStreams_Tbl.FIRST..l_TrgHdrStreams_Tbl.LAST LOOP --4)
14755             l_LineStreams_tbl_Ctr := l_LineStreams_tbl_Ctr + 1;
14756 
14757             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).id := FND_API.g_miss_num;
14758             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
14759             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id := TargetLinesRecTab.LINE_ID(i);
14760             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14761             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).sequence_no := l_TrgHdrStreams_Tbl(j).sequence_no;
14762             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_code := l_TrgHdrStreams_Tbl(j).uom_code;
14763             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).start_date := l_TrgHdrStreams_Tbl(j).start_date;
14764             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).end_date := l_TrgHdrStreams_Tbl(j).end_date;
14765             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_periods := l_TrgHdrStreams_Tbl(j).level_periods;
14766             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_per_period := l_TrgHdrStreams_Tbl(j).uom_per_period;
14767             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).advance_periods := l_TrgHdrStreams_Tbl(j).advance_periods;
14768             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_amount := l_TrgHdrStreams_Tbl(j).level_amount;
14769             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).invoice_offset_days := l_TrgHdrStreams_Tbl(j).invoice_offset_days;
14770             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).interface_offset_days := l_TrgHdrStreams_Tbl(j).interface_offset_days;
14771             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).comments := l_TrgHdrStreams_Tbl(j).comments;
14772             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).due_arr_yn := l_TrgHdrStreams_Tbl(j).due_arr_yn;
14773             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).amount := l_TrgHdrStreams_Tbl(j).amount;
14774             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).lines_detailed_yn := l_TrgHdrStreams_Tbl(j).lines_detailed_yn;
14775            END LOOP; --End LOOP for looping through Target header Streams PLSQL table
14776               EXCEPTION
14777                WHEN OTHERS THEN
14778                    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14779                    l_stage := 'Looping through l_TrgHdrStreams_Tbl';
14780                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
14781 		   RAISE;
14782           END; --End of looping through l_TrgHdrStreams_Tbl
14783 
14784           BEGIN --Begin for calling OKS_BILL_SCH.Create_Bill_Sch_Rules
14785                   --Generate Billing Schedule for Top Line--
14786                        OKS_BILL_SCH.create_bill_sch_rules(
14787                                         p_billing_type => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14788                                        ,p_sll_tbl => l_LineStreams_tbl
14789                                        ,p_invoice_rule_id => TargetLinesRecTab.INV_RULE_ID(i)
14790                                        ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14791                                        ,x_return_status => x_return_status);
14792                        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14793                          FND_LOG.string(FND_LOG.level_statement
14794                                       ,l_module_name
14795                                       ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
14796                                       ||',x_return_status='||x_return_status
14797                                        );
14798                        END IF;
14799                        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14800                         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
14801                         RETURN;
14802                        END IF;
14803                  EXCEPTION
14804                   WHEN OTHERS THEN
14805                      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14806                      l_stage := 'OKS_BILL_SCH.create_bill_sch_rules';
14807                      FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage,substr(SQLERRM,1,240));
14808 		     RAISE;
14809           END;
14810 
14811       ELSIF (l_TrgHdrStreams_Exists_YN = 'N') THEN
14812       --IF Header Billing Streams dont exist use Partial period Settings on Header--
14813       --to generate schedule for line--
14814            --errorout_hk('Condition -II : If Target Header Streams Not Exist');
14815        IF (G_TrgHdrPeriodStart IS NOT NULL
14816            AND G_TrgHdrPeriodType IS NOT NULL
14817            AND G_TrgHdrPriceUOM IS NOT NULL) THEN
14818                       --errorout_hk('Condition -II : If Target Header Streams Not Exist and Price UOM is not null call instantiate_bsch');
14819           Begin
14820            --npalepu added on 23-may-2006 for bug # 5207620
14821 
14822     /* hkamdar 04-Sep-2006 commented for bug# 5458842.
14823            IF TargetLinesRecTab.LSE_ID(i) = 46 THEN
14824                 l_default_bsch_type := 'E';
14825            ELSE
14826                 l_default_bsch_type := 'T';
14827            END IF;
14828            --end npalepu
14829   */
14830 -- NECHATUR 23-Jun-2006 Bug#5349539 Fetching the data from the cursor into the Offset Days variables
14831            Open GetStreamsForLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14832            Fetch GetStreamsForLine into L_INVOICE_OFFSET_DAYS,L_INTERFACE_OFFSET_DAYS;
14833            Close GetStreamsForLine;
14834 --  End NECHATUR Bug#5349539
14835            instantiate_bsch_using_PPSetup(P_To_Chr_ID => P_To_Chr_ID
14836                                          ,P_To_Line_ID =>TargetLinesRecTab.LINE_ID(i)
14837                                          ,StartDate => TargetLinesRecTab.START_DATE(i)
14838                                          ,EndDate => TargetLinesRecTab.END_DATE(i)
14839                                          ,HdrPriceUOM => G_TrgHdrPriceUOM
14840 				         -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
14841 				         --,LinePriceUOM => TargetLinesRecTab.PRICE_UOM(i)
14842                                          --,PeriodStart => G_TrgHdrPeriodStart
14843 				         ,LinePriceUOM => l_price_uom
14844                                          ,PeriodStart => l_period_start
14845 					 -- End hkamdar for Bug# 5458842.
14846                                          ,InvoiceRuleID => TargetLinesRecTab.INV_RULE_ID(i)
14847                                          --npalepu changed for bug # 5207620 on 23-may-2006
14848                                          /* ,BillingScheduleType => nvl(TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i),'T') */
14849                                          ,BillingScheduleType => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14850                                          --end npalepu
14851                                          --npalepu added on 22-may-2006
14852                                          ,p_LSE_ID =>TargetLinesRecTab.LSE_ID(i)
14853                                          --end npalepu
14854 					 --NECHATUR 23-Jun-2006 Bug#5349539
14855                                          ,P_INVOICE_OFFSET_DAYS =>L_INVOICE_OFFSET_DAYS
14856                                          ,P_INTERFACE_OFFSET_DAYS =>L_INTERFACE_OFFSET_DAYS
14857                                          -- End NECHATUR Bug#5349539
14858                                          ,x_return_status => x_return_status);
14859             IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
14860              FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to instantiate_bsch_using_PPSetup', substr(SQLERRM,1,240));
14861              IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14862               FND_LOG.string(FND_LOG.level_statement
14863                             ,l_module_name
14864                             ,'Return status from instantiate_bsch_using_PPSetup for LINE : x_return_status ='||x_return_status
14865                             );
14866              END IF;
14867              RETURN;
14868             END IF;
14869 
14870                 EXCEPTION
14871                   WHEN OTHERS THEN
14872                      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14873                      l_stage := 'instantiate_bsch_using_PPSetup';
14874                      FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage,substr(SQLERRM,1,240));
14875                      RAISE;
14876           End;
14877           -- hkamdar 20-Apr-2006 Added based on Aaron's feedback on 07-Apr-2006. to PP CR03 ammendment.
14878           -- IF no target header bill schedule exists and no PP attributes are present on Target Header then
14879           -- if duration of source line and target line are same then copy the source line billing schedule.
14880        ELSE  -- target header partial period attributes does not exist
14881 
14882             -- check for line duration match
14883           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14884             IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
14885                 FND_LOG.string(FND_LOG.level_statement
14886                         ,l_module_name||'.chk_line_effectivity'
14887                         ,'Before call to chk_line_effectivity'
14888                          );
14889             END IF;
14890           END IF;
14891                      --errorout_hk('Condition -II : Check for line effectivity');
14892           chk_line_effectivity(TargetLinesRecTab.LINE_ID(i),l_duration_match, x_return_status);
14893 
14894           IF x_return_status <> 'S' Then
14895                         OKC_API.set_message
14896                                         (G_APP_NAME,
14897                                          G_UNEXPECTED_ERROR,
14898                                          G_SQLCODE_TOKEN,
14899                                          SQLCODE,
14900                                          G_SQLERRM_TOKEN,
14901                                          'Check Line Effectivity ERROR');
14902 
14903                          RAISE G_EXCEPTION_HALT_VALIDATION;
14904           End If;
14905 
14906           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14907             IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
14908                 FND_LOG.string(FND_LOG.level_statement
14909                         ,l_module_name||'.chk_line_effectivity'
14910                         ,'After call to chk_line_effectivity'
14911                          );
14912             END IF;
14913           END IF;
14914 
14915           IF l_duration_match = 'T' THEN
14916            --errorout_hk('Condition -II : If Duration matches copy bill schedules');
14917 --errorout_hk('Source Line id-'||TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14918                  --============Get Source Line Streams===================
14919            OPEN GetStreamsForSourceLine(TargetLinesRecTab.ORIG_SYSTEM_ID1(i));
14920            FETCH GetStreamsForSourceLine BULK COLLECT INTO l_SrcLnStreams_Tbl;
14921            IF l_SrcLnStreams_Tbl.COUNT > 0 then
14922               l_SrcLnStreams_Exists_YN := 'Y';
14923            ELSE
14924               l_SrcLnStreams_Exists_YN := 'N';
14925            END IF;
14926            CLOSE GetStreamsForSourceLine;
14927                  --=======================================================
14928 --errorout_hk('Src Stream Exists-'||l_SrcLnStreams_Exists_YN);
14929            IF l_SrcLnStreams_Exists_YN = 'Y' THEN
14930 
14931            --Resetting PLSQL table for populating line streams--
14932            l_LineStreams_tbl.DELETE;
14933            l_LineStreams_tbl_Ctr := 0;
14934        --Generate Schedule for Top Line using Header Streams--
14935           BEGIN --Begin of looping through l_TrgHdrStreams_Tbl
14936            FOR j IN l_SrcLnStreams_Tbl.FIRST..l_SrcLnStreams_Tbl.LAST LOOP --4)
14937             l_LineStreams_tbl_Ctr := l_LineStreams_tbl_Ctr + 1;
14938 
14939             --errorout_hk('l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id-'||TargetLinesRecTab.LINE_ID(i));
14940             --errorout_hk('dnz_chr_id-'||P_To_Chr_ID);
14941             --errorout_hk('sequence_no-'||l_SrcLnStreams_Tbl(j).sequence_no);
14942             --errorout_hk('uom_code-'|| l_SrcLnStreams_Tbl(j).uom_code);
14943             --errorout_hk('start_date-'||TargetLinesRecTab.start_date(i));
14944             --errorout_hk('end_date-'|| TargetLinesRecTab.end_date(i));
14945             --errorout_hk('level_periods-'||l_SrcLnStreams_Tbl(j).level_periods);
14946             --errorout_hk('uom_per_period-'|| l_SrcLnStreams_Tbl(j).uom_per_period);
14947             --errorout_hk('advance_periods-'||l_SrcLnStreams_Tbl(j).advance_periods);
14948             --errorout_hk('level_amount-'||l_SrcLnStreams_Tbl(j).level_amount);
14949             --errorout_hk('invoice_offset_days-'|| l_SrcLnStreams_Tbl(j).invoice_offset_days);
14950             --errorout_hk('interface_offset_days-'|| l_SrcLnStreams_Tbl(j).interface_offset_days);
14951             --errorout_hk('comments-'|| l_SrcLnStreams_Tbl(j).comments);
14952             --errorout_hk('due_arr_yn-'|| l_SrcLnStreams_Tbl(j).due_arr_yn);
14953             --errorout_hk('amount-'|| l_SrcLnStreams_Tbl(j).amount);
14954             --errorout_hk('lines_detailed_yn-'|| l_SrcLnStreams_Tbl(j).lines_detailed_yn);
14955 
14956             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).id := FND_API.g_miss_num;
14957             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).chr_id := FND_API.g_miss_num;
14958             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).cle_id := TargetLinesRecTab.LINE_ID(i);
14959             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).dnz_chr_id := P_To_Chr_ID;
14960             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).sequence_no := l_SrcLnStreams_Tbl(j).sequence_no;
14961             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_code := l_SrcLnStreams_Tbl(j).uom_code;
14962             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).start_date := TargetLinesRecTab.start_date(i);
14963             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).end_date := TargetLinesRecTab.end_date(i);
14964             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_periods := l_SrcLnStreams_Tbl(j).level_periods;
14965             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).uom_per_period := l_SrcLnStreams_Tbl(j).uom_per_period;
14966             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).advance_periods := l_SrcLnStreams_Tbl(j).advance_periods;
14967             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).level_amount := l_SrcLnStreams_Tbl(j).level_amount;
14968             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).invoice_offset_days := l_SrcLnStreams_Tbl(j).invoice_offset_days;
14969             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).interface_offset_days := l_SrcLnStreams_Tbl(j).interface_offset_days;
14970             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).comments := l_SrcLnStreams_Tbl(j).comments;
14971             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).due_arr_yn := l_SrcLnStreams_Tbl(j).due_arr_yn;
14972             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).amount := l_SrcLnStreams_Tbl(j).amount;
14973             l_LineStreams_tbl(l_LineStreams_tbl_Ctr).lines_detailed_yn := l_SrcLnStreams_Tbl(j).lines_detailed_yn;
14974            END LOOP; --End LOOP for looping through Target header Streams PLSQL table
14975               EXCEPTION
14976                WHEN OTHERS THEN
14977                    x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
14978                    l_stage := 'Looping through l_SrcLnStreams_Tbl';
14979                    FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
14980 		   RAISE;
14981           END; --End of looping through l_TrgHdrStreams_Tbl
14982 
14983           END IF; -- check for l_SrcLnStreams_Exists_YN = 'Y'
14984           BEGIN --Begin for calling OKS_BILL_SCH.Create_Bill_Sch_Rules
14985                   --Generate Billing Schedule for Top Line--
14986                        OKS_BILL_SCH.create_bill_sch_rules(
14987                                         p_billing_type => TargetLinesRecTab.BILLING_SCHEDULE_TYPE(i)
14988                                        ,p_sll_tbl => l_LineStreams_tbl
14989                                        ,p_invoice_rule_id => TargetLinesRecTab.INV_RULE_ID(i)
14990                                        ,x_bil_sch_out_tbl => l_bil_sch_out_tbl
14991                                        ,x_return_status => x_return_status);
14992                        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
14993                          FND_LOG.string(FND_LOG.level_statement
14994                                       ,l_module_name
14995                                       ,'After call to OKS_BILL_SCH.create_bill_sch_rules'
14996                                       ||',x_return_status='||x_return_status
14997                                        );
14998                        END IF;
14999                        IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
15000                         FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_rules', substr(SQLERRM,1,240));
15001                         RETURN;
15002                        END IF;
15003                  EXCEPTION
15004                   WHEN OTHERS THEN
15005                      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15006                      l_stage := 'OKS_BILL_SCH.create_bill_sch_rules';
15007                      FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage,substr(SQLERRM,1,240));
15008 		     RAISE;
15009           END;
15010   --------------------------------------------------------------------
15011           END IF; -- l_duration_match check
15012        -- end hkamdar 20-Apr-2006
15013        END IF;
15014 
15015       END IF; --End of IF Check for l_TrgHdrStreams_Exists_YN
15016 
15017      ELSIF (TargetLinesRecTab.CLE_ID(i) IS NOT NULL) then
15018 
15019       --+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
15020         --------Begin of BSCH Creation for Subline--------------------------
15021         --------For sublines, use topline schedules to generate schedule-----
15022       BEGIN
15023        Oks_bill_sch.Create_Bill_Sch_CP(
15024                                        p_top_line_id      => TargetLinesRecTab.CLE_ID(i)
15025                                       ,p_cp_line_id       => TargetLinesRecTab.LINE_ID(i)
15026                                       ,p_cp_new           => 'Y'
15027                                       ,x_return_status    => x_return_status
15028                                       ,x_msg_count        => x_msg_count
15029                                       ,x_msg_data         => x_msg_data
15030                                       );
15031          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15032            FND_LOG.string(FND_LOG.level_statement
15033                         ,l_module_name
15034                         ,'After call to OKS_BILL_SCH.Create_Bill_Sch_CP'
15035                         ||',x_return_status='||x_return_status
15036                          );
15037          END IF;
15038          IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
15039           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Exception in call to OKS_BILL_SCH.create_bill_sch_cp', substr(SQLERRM,1,240));
15040           RETURN;
15041          END IF;
15042 
15043               EXCEPTION
15044               WHEN OTHERS THEN
15045                   IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
15046                    FND_LOG.string(FND_LOG.level_unexpected
15047                           ,l_module_name||'.EXCEPTION'
15048                           ,'Exception in call to OKS_BILL_SCH.create_bill_sch_cp, x_return_status ='||x_return_status
15049                            ||'SQLERRM ='||SQLERRM
15050                            );
15051                   END IF;
15052               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15053               FND_MSG_PUB.add_exc_msg(g_pkg_name, 'OKS_PM_PROGRAMS_PVT.RENEW_PM_PROGRAM_SCHEDULE', substr(SQLERRM,1,240));
15054               RAISE;
15055       END;
15056       --+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
15057        --------End of BSCH Creation for Subline---------------
15058      END IF; --End If for CLE_ID is NULL check
15059 
15060      IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) then
15061       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15062        FND_LOG.string(FND_LOG.level_statement
15063                      ,l_module_name
15064                      ,'Return status from OKS_BILL_SCH : x_return_status ='||x_return_status
15065                      );
15066       END IF;
15067       RETURN;
15068      END IF;
15069 -- hkamdar 22-Aug-2006. Added for Bug# 5458842. Subscription and usage lines billing schedules.
15070 -- Initializing local variables.
15071 l_item_type       := NULL;
15072 l_price_uom       := NULL;
15073 l_pricing_method  := NULL;
15074 l_period_start    := NULL;
15075 l_period_type     := NULL;
15076 -- End hkamdar for Bug# 5458842.
15077 l_generate_bill_sch_yn := 'N';
15078 
15079 END IF; --l_generate_bill_sch_yn = 'Y'
15080 -- End hkamdar for Bug# 5458842.
15081     END LOOP; --End LOOP for looping through TargetLinesRecTab PLSQL table --2)
15082 	EXCEPTION WHEN OTHERS THEN
15083           l_stage := 'Looping through TargetLinesRecTab';
15084           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15085           FND_MSG_PUB.add_exc_msg(g_pkg_name,'OKS_COPY_CONTRACT_PVT: '||l_stage , substr(SQLERRM,1,240));
15086    END; --End of Begin for looping through TargetLinesRecTab
15087   END IF; --End of If check for TargetLinesRecTab.LINE_ID.COUNT > 0
15088 
15089     EXIT WHEN GetTrgLines_K_EXISTS_P%NOTFOUND;
15090 
15091   END LOOP; --End LOOP for BULK FETCH from GetTrgLines_K_EXISTS_P
15092   IF GetTrgLines_K_EXISTS_P%ISOPEN THEN
15093     CLOSE GetTrgLines_K_EXISTS_P;
15094   END IF;
15095 
15096   END IF; -- (P_Partial_Copy_YN = 'Y' AND P_Target_Contract_New_YN = 'N') then
15097 
15098      EXCEPTION
15099         WHEN OTHERS THEN
15100           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15101           IF GetTrgLines_K_EXISTS_P%ISOPEN THEN
15102            CLOSE GetTrgLines_K_EXISTS_P;
15103           END IF;
15104           IF GetStreamsForTargetHeader%ISOPEN THEN
15105            CLOSE GetStreamsForTargetHeader;
15106           END IF;
15107           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
15108           RAISE;
15109 
15110 End create_bsch_using_PPSetup;
15111 
15112 ---------------------------------------------------------------------
15113 
15114 --This routine has been moved to OKS_UTIL_PUB. This routine is commented out here as it is no longer being used.
15115 --The one in OKS_UTIL_PUB is being used.
15116 /**********
15117 Procedure create_transaction_extension(P_Api_Version IN NUMBER
15118 				      ,P_Init_Msg_List IN VARCHAR2
15119 				      ,P_Header_ID IN NUMBER
15120 				      ,P_Line_ID IN NUMBER
15121 				      ,P_Source_Trx_Ext_ID IN NUMBER
15122 				      ,P_Cust_Acct_ID IN NUMBER
15123 		                      ,P_Bill_To_Site_Use_ID IN NUMBER
15124 				      ,x_entity_id OUT NOCOPY NUMBER
15125 				      ,x_msg_data OUT NOCOPY VARCHAR2
15126 				      ,x_msg_count OUT NOCOPY NUMBER
15127 				      ,x_return_status OUT NOCOPY VARCHAR2) IS
15128 
15129  l_api_name        CONSTANT VARCHAR2(30) := 'create_transaction_extension';
15130  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
15131 
15132 --Input parameters--
15133 l_PayerContext_Rec	    IBY_FNDCPT_COMMON_PUB.PayerContext_rec_type;
15134 l_Payer_Equivalency	    VARCHAR2(20);
15135 l_Pmt_channel		    VARCHAR2(20);
15136 l_instr_assignment	    NUMBER;
15137 l_TrxnExtension_rec         IBY_FNDCPT_TRXN_PUB.TrxnExtension_rec_type;
15138 l_ext_entity_tab        IBY_FNDCPT_COMMON_PUB.Id_tbl_type; --Used by copy_transaction_extension
15139 
15140 
15141 --Output parameters--
15142 l_response		    IBY_FNDCPT_COMMON_PUB.Result_rec_type;
15143 l_entity_id		    NUMBER;
15144 
15145 --Local Variables--
15146 l_Authoring_Org_ID NUMBER;
15147 
15148 l_Cust_Account_Site_ID NUMBER;
15149 l_Cust_Account_ID	  NUMBER;
15150 l_Party_ID	  NUMBER;
15151 
15152 ---Cursor to retrieve Account_Site_ID, Cust_Account_ID and Party_ID for Header
15153 CURSOR GetAcctInfo IS
15154 select
15155  cas.cust_account_id Cust_Account_ID
15156 ,ca.party_id Party_ID
15157 from
15158  hz_cust_site_uses_all csu
15159 ,hz_cust_acct_sites_all cas
15160 ,hz_cust_accounts_all ca
15161 where
15162 csu.site_use_id = P_Bill_To_Site_Use_ID
15163 and cas.cust_acct_site_id = csu.cust_acct_site_id
15164 and ca.cust_account_id = cas.cust_account_id;
15165 
15166 CURSOR GetCustAcctParty IS
15167 select
15168  ca.party_id Party_ID
15169 from
15170  hz_cust_accounts_all ca
15171 where ca.cust_account_id = P_Cust_Acct_ID;
15172 
15173 --Cursor to get Instrument_Assignment_ID
15174 CURSOR GetInstrAssgnID IS
15175 select
15176  instr_assignment_ID
15177 ,CARD_EXPIRYDATE
15178 from
15179 IBY_TRXN_EXTENSIONS_V
15180 where
15181 trxn_extension_ID = P_Source_Trx_Ext_ID;
15182 
15183 l_Instrument_Assignment_ID NUMBER;
15184 l_CC_Expiry_Date	   DATE;
15185 
15186 Begin
15187     l_ext_entity_tab.DELETE;
15188     l_ext_entity_tab(0) := P_Source_Trx_Ext_ID;
15189 
15190     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
15191       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
15192          FND_LOG.string(FND_LOG.level_procedure
15193                         ,l_module_name||'.Begin'
15194                         ,'P_Source_Trx_Ext_ID='||P_Source_Trx_Ext_ID
15195                        ||',P_Bill_To_Site_Use_ID='||P_Bill_To_Site_Use_ID
15196 		       ||',P_Header_ID='||P_Header_ID
15197                        ||',P_Line_ID='||P_Line_ID
15198                          );
15199       END IF;
15200     END IF;
15201 
15202 OPEN GetInstrAssgnID;
15203 Fetch GetInstrAssgnID INTO l_Instrument_Assignment_ID,l_CC_Expiry_Date;
15204 CLOSE GetInstrAssgnID;
15205 
15206 IF ( to_number(to_char(l_CC_Expiry_Date,'YYYYMM')) <
15207      to_number(to_char(SYSDATE,'YYYYMM'))
15208    ) then
15209  x_entity_id := NULL;
15210  x_return_status := FND_API.G_RET_STS_SUCCESS;
15211 ELSE
15212 
15213  l_Authoring_Org_ID := okc_context.get_okc_org_id;
15214  l_Cust_Account_Site_ID := P_Bill_To_Site_Use_ID;
15215 
15216  IF (P_Cust_Acct_ID IS NULL) THEN
15217   OPEN GetAcctInfo;
15218   FETCH GetAcctInfo INTO
15219    l_Cust_Account_ID
15220   ,l_Party_ID;
15221   CLOSE GetAcctInfo;
15222 
15223  ELSIF (P_Cust_Acct_ID IS NOT NULL) THEN
15224   l_Cust_Account_ID := P_Cust_Acct_ID;
15225 
15226   OPEN GetCustAcctParty;
15227   FETCH GetCustAcctParty INTO l_Party_ID;
15228   CLOSE GetCustAcctParty;
15229 
15230  END IF;
15231 
15232 
15233 
15234 
15235  --Setting values for l_PayerContext_Rec--
15236 -- l_PayerContext_Rec.Org_Type          := 'OPERATING_UNIT';
15237 -- l_PayerContext_Rec.Org_Id            := l_Authoring_Org_ID;
15238 -- l_PayerContext_Rec.Account_Site_Id   := l_Cust_Account_Site_ID;
15239  l_PayerContext_Rec.Payment_Function  := 'CUSTOMER_PAYMENT';
15240  l_PayerContext_Rec.Party_Id          := l_Party_ID;
15241  l_PayerContext_Rec.Cust_Account_Id   := l_Cust_Account_ID;
15242 
15243  --Setting values for l_TrxnExtension_rec--
15244  If (P_Header_ID IS NOT NULL and P_Line_ID IS NULL) then
15245   l_TrxnExtension_rec.order_id := P_Header_ID;
15246  Elsif (P_Header_ID IS NULL and P_Line_ID IS NOT NULL) then
15247   l_TrxnExtension_rec.order_id := P_Line_ID;
15248  End If;
15249 
15250  l_TrxnExtension_rec.originating_application_id := G_APP_ID;
15251  l_TrxnExtension_rec.Trxn_Ref_Number1 := to_char(SYSDATE,'ddmmyyyyhhmmssss');
15252 
15253  l_Payer_Equivalency := IBY_FNDCPT_COMMON_PUB.G_PAYER_EQUIV_UPWARD;
15254  l_Pmt_Channel      := 'CREDIT_CARD';
15255  l_instr_assignment := l_Instrument_Assignment_ID;
15256 
15257                 IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15258                  FND_LOG.string(FND_LOG.level_statement
15259                         ,l_module_name
15260                         ,'Org ID='||l_Authoring_Org_ID
15261 		        ||'Party ID='||l_Party_ID
15262 			||'Acct_Id ='||l_Cust_Account_ID
15263 			||'Site_Id='||l_Cust_Account_Site_ID
15264                          );
15265                 END IF;
15266 
15267      Begin
15268 
15269         IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension
15270                         (
15271                          p_api_version => P_api_version
15272 			,p_init_msg_list => p_init_msg_list
15273 			,p_commit => FND_API.G_FALSE
15274                         ,x_return_status => x_return_status
15275                         ,x_msg_count   => x_msg_count
15276                         ,x_msg_data    => x_msg_data
15277                         ,p_payer       => l_PayerContext_Rec
15278                         ,p_payer_equivalency => l_Payer_Equivalency
15279                         ,p_pmt_channel  => l_Pmt_channel
15280                         ,p_instr_assignment => l_instr_assignment
15281                         ,p_trxn_attribs     => l_TrxnExtension_rec
15282                         ,x_entity_id        => x_entity_id
15283                         ,x_response         => l_response
15284                          );
15285 
15286 
15287    --    IBY_FNDCPT_TRXN_PUB.Copy_Transaction_Extension
15288     --  (
15289     --   p_api_version        => p_api_version
15290     --  ,p_init_msg_list      => p_init_msg_list
15291     --  ,p_commit             => FND_API.G_FALSE
15292     --  ,x_return_status      => x_return_status
15293     --  ,x_msg_count          => x_msg_count
15294     --  ,x_msg_data           => x_msg_data
15295     --  ,p_payer              => l_PayerContext_Rec
15296     --  ,p_payer_equivalency  => l_Payer_Equivalency
15297     --  ,p_entities           => l_ext_entity_tab
15298     --  ,p_trxn_attribs       => l_TrxnExtension_rec
15299     --  ,x_entity_id          => x_entity_id
15300     --  ,x_response           => l_response
15301     --  );
15302 
15303 
15304 
15305          IF (x_return_status = FND_API.g_ret_sts_unexp_error) THEN
15306            fnd_message.set_name (g_app_name, 'OKS_IBY_API_ERROR');
15307            fnd_message.set_token
15308                           ('IBY_API_NAME',
15309                            'IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension : '||l_response.result_code);
15310            fnd_message.set_token ('ERROR_DTLS', l_response.result_message);
15311            fnd_msg_pub.ADD;
15312            RAISE fnd_api.g_exc_unexpected_error;
15313          ELSIF (x_return_status = FND_API.g_ret_sts_error) THEN
15314            fnd_message.set_name (g_app_name, 'OKS_IBY_API_ERROR');
15315            fnd_message.set_token
15316                           ('IBY_API_NAME',
15317                            'IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension :'||l_response.result_code);
15318            fnd_message.set_token ('ERROR_DTLS', l_response.result_message);
15319            fnd_msg_pub.ADD;
15320            RAISE fnd_api.g_exc_error;
15321          END IF;
15322 
15323 
15324 
15325 
15326          IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15327            FND_LOG.string(FND_LOG.level_statement
15328 		        ,l_module_name
15329 		        ,'After call to IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension'
15330 			||',x_return_status='||x_return_status
15331 			||',Result Code ='||l_response.result_code
15332 			||',Result Category='||l_response.result_category
15333 			||',Result Message='||l_response.result_message
15334                          );
15335          END IF;
15336 
15337 
15338          EXCEPTION
15339             WHEN OTHERS THEN
15340 	        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
15341                  FND_LOG.string(FND_LOG.level_unexpected
15342                         ,l_module_name||'.EXCEPTION'
15343                         ,'Exception in call to IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension, x_return_status ='||x_return_status
15344 			 ||'SQLERRM ='||SQLERRM
15345                          );
15346                 END IF;
15347           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15348           FND_MSG_PUB.add_exc_msg(g_pkg_name, 'IBY_FNDCPT_TRXN_PUB.Create_Transaction_Extension', substr(SQLERRM,1,240));
15349           RAISE;
15350 
15351     End;
15352 
15353 END IF; --End of IF Check for l_CC_Expiry_Date--------------------------------------
15354 
15355     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
15356       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
15357          FND_LOG.string(FND_LOG.level_procedure
15358                         ,l_module_name||'.End'
15359                         ,'x_return_status ='||x_return_status
15360                          );
15361       END IF;
15362     END IF;
15363 
15364          EXCEPTION
15365             WHEN OTHERS THEN
15366                 IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
15367                  FND_LOG.string(FND_LOG.level_unexpected
15368                         ,l_module_name||'.EXCEPTION'
15369                         ,'General Exception in Create_Transaction_Exception, x_return_status ='||x_return_status
15370                          ||'SQLERRM ='||SQLERRM
15371                          );
15372                 END IF;
15373           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15374           IF GetInstrAssgnID%ISOPEN then
15375            CLOSE GetInstrAssgnID;
15376           END IF;
15377           IF GetAcctInfo%ISOPEN then
15378            CLOSE GetAcctInfo;
15379           END IF;
15380           IF GetCustAcctParty%ISOPEN then
15381            CLOSE GetCustAcctParty;
15382           END IF;
15383           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
15384           RAISE;
15385 
15386 End create_transaction_extension;
15387 
15388 ********************/
15389 
15390 
15391 /*=====================================================================================
15392 --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
15393                         and its children based on the offset_period and offset_duration defined for the Business process lines
15394 			on the source contract.
15395 			Parameters:
15396 				P_From_Chr_ID : Source Contract ID
15397 				P_To_Chr_ID   : Target Contract ID
15398 =======================================================================================*/
15399 PROCEDURE Update_BP_StartDates(P_From_Chr_ID IN NUMBER
15400 			      ,P_To_Chr_ID IN NUMBER
15401 			      ,x_return_status OUT NOCOPY VARCHAR2) IS
15402 
15403  l_api_name        CONSTANT VARCHAR2(30) := 'Update_BP_StartDates';
15404  l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
15405 
15406 
15407  CURSOR getBPOffsetInformation IS
15408  select
15409   a.id
15410  ,a.start_date
15411  ,a.end_date
15412  ,b.offset_duration
15413  ,b.offset_period
15414  from
15415    OKC_K_LINES_B_TEMP a
15416   ,OKS_K_LINES_B b
15417  where
15418   a.dnz_chr_id = P_To_Chr_ID
15419   and a.lse_id in (3,21)
15420   and a.orig_system_id1 = b.cle_id(+)
15421   and a.DATES_CHANGED_YN = 'Y';
15422 
15423  l_BP_ID NUMBER;
15424  l_BP_Start_Date DATE;
15425  l_BP_End_Date   DATE;
15426  l_BP_Offset_Duration OKS_K_LINES_B.OFFSET_DURATION%TYPE;
15427  l_BP_Offset_Period   OKS_K_LINES_B.OFFSET_PERIOD%TYPE;
15428 
15429  l_Resultant_Start_Date DATE;
15430 
15431  CURSOR getBPLineandChildren IS
15432  select
15433   a.ID
15434  from
15435   OKC_K_LINES_B_TEMP a
15436  where a.dnz_chr_id = P_To_Chr_ID
15437  start with a.id = l_BP_ID
15438  connect by prior a.id = a.cle_id;
15439 
15440  l_BP_Child_ID NUMBER;
15441 
15442 Begin
15443  x_return_status := FND_API.G_RET_STS_SUCCESS;
15444     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15445         FND_LOG.string(FND_LOG.level_statement
15446            ,l_module_name
15447            ,'In Update_BP: P_To_Chr_ID :'||P_To_Chr_ID
15448            );
15449     END IF;
15450 
15451  OPEN getBPOffsetInformation;
15452  LOOP
15453  FETCH getBPOffsetInformation INTO
15454   l_BP_ID
15455  ,l_BP_Start_Date
15456  ,l_BP_End_Date
15457  ,l_BP_Offset_Duration
15458  ,l_BP_Offset_Period;
15459   EXIT WHEN getBPOffsetInformation%NOTFOUND;
15460       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15461         FND_LOG.string(FND_LOG.level_statement
15462            ,l_module_name
15463            ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.Update_BP'
15464 	  ||' BP ID : '||l_BP_ID
15465           ||' BP Start Date: '||l_BP_Start_Date
15466           ||' BP End Date: '||l_BP_End_Date
15467 	  ||' BP Offset Duration: '||l_BP_Offset_Duration
15468 	  ||' BP Offset Period: '||l_BP_Offset_Period
15469            );
15470       END IF;
15471 
15472     l_Resultant_Start_Date := okc_time_util_pub.get_enddate(p_start_date => l_BP_Start_Date
15473 							   ,p_timeunit => l_BP_Offset_Period
15474 							   ,p_duration => l_BP_Offset_Duration);
15475 
15476     If (l_BP_Offset_Duration >0) then
15477        l_Resultant_Start_Date := l_Resultant_Start_Date +1;
15478     Elsif (l_BP_Offset_Duration is NULL) then
15479        l_Resultant_Start_Date := l_BP_Start_Date;
15480     End If;
15481 
15482     If (l_Resultant_Start_Date > l_BP_End_Date) then
15483       l_Resultant_Start_Date := l_BP_End_Date;
15484     End If;
15485 
15486 
15487     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
15488         FND_LOG.string(FND_LOG.level_statement
15489            ,l_module_name
15490            ,'OKS.plsql.OKS_COPY_CONTRACT_PVT.Update_BP'
15491 	   ||' Resultant Date : '||l_Resultant_Start_Date
15492            );
15493     END IF;
15494 
15495     OPEN getBPLineandChildren;
15496     LOOP
15497     FETCH getBPLineandChildren INTO l_BP_Child_ID;
15498      EXIT WHEN getBPLineandChildren%NOTFOUND;
15499 
15500 
15501 
15502        UPDATE OKC_K_LINES_B_TEMP SET START_DATE = l_Resultant_Start_Date
15503        WHERE DNZ_CHR_ID = P_To_Chr_ID
15504        AND ID = l_BP_Child_ID;
15505 
15506     END LOOP;
15507     If (getBPLineandChildren%ISOPEN) then
15508      CLOSE getBPLineandChildren;
15509     End If;
15510  END LOOP;
15511  If (getBPOffsetInformation%ISOPEN) then
15512   CLOSE getBPOffsetInformation;
15513  End If;
15514 
15515   EXCEPTION
15516    WHEN OTHERS THEN
15517        OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
15518        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
15519          FND_LOG.string(FND_LOG.level_unexpected
15520                         ,l_module_name
15521                         ,SQLERRM
15522                         );
15523        END IF;
15524        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
15525        If (getBPLineandChildren%ISOPEN) then
15526         CLOSE getBPLineandChildren;
15527        End If;
15528        If (getBPOffsetInformation%ISOPEN) then
15529         CLOSE getBPOffsetInformation;
15530        End If;
15531        RAISE;
15532 End Update_BP_StartDates;
15533 
15534 /*======================================================================================
15535  Function ContractPPSetupEXISTS(P_Chr_ID IN NUMBER) RETURN VARCHAR2
15536  P_Chr_ID : ID of the Contract whose Partial Period Setup needs to be checked for existence.
15537  Returns 'Y' if the Partial Period Setup on the Contract is NOT NULL (ie Period_Start and Period_Type are NOT NULL) else 'N'
15538  ======================================================================================*/
15539  Function ContractPPSetupEXISTS(P_Chr_ID IN NUMBER) RETURN VARCHAR2 IS
15540 
15541  l_api_name        CONSTANT VARCHAR2(30) := 'ContractPPSetupEXISTS';
15542  l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
15543 
15544  CURSOR getPPAttributes IS
15545  SELECT period_type, period_start
15546  FROM   oks_k_headers_b
15547  WHERE  chr_id = P_Chr_ID;
15548  l_period_type OKS_K_HEADERS_B.PERIOD_TYPE%TYPE;
15549  l_period_start OKS_K_HEADERS_B.PERIOD_START%TYPE;
15550 
15551  Begin
15552  OPEN getPPAttributes;
15553  FETCH getPPAttributes INTO l_period_type,l_period_start;
15554  CLOSE getPPAttributes;
15555 
15556  If (l_period_type IS NOT NULL) AND (l_period_start IS NOT NULL) then
15557    RETURN 'Y';
15558  Else
15559    RETURN 'N';
15560  End If;
15561 
15562     EXCEPTION
15563       WHEN OTHERS THEN
15564  	     OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
15565              IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
15566                FND_LOG.string(FND_LOG.level_unexpected
15567                              ,l_module_name
15568                              ,SQLERRM
15569                              );
15570              END IF;
15571              RAISE;
15572 
15573 
15574  End ContractPPSetupEXISTS;
15575 
15576  Function IsSourceContractTemplate(P_From_Chr_ID IN NUMBER) RETURN VARCHAR2 IS
15577  CURSOR GetTemplateYN IS
15578  select template_yn
15579  from okc_k_headers_b
15580  where id = P_From_Chr_ID;
15581 
15582  l_Template_YN VARCHAR2(1);
15583  Begin
15584   OPEN GetTemplateYN;
15585   FETCH GetTemplateYN INTO l_Template_YN;
15586   CLOSE GetTemplateYN;
15587 
15588   RETURN l_Template_YN;
15589    EXCEPTION
15590     WHEN OTHERS THEN
15591      IF GetTemplateYN%ISOPEN THEN
15592       CLOSE GetTemplateYN;
15593      End IF;
15594 
15595  End IsSourceContractTemplate;
15596 /*======================================================================================
15597 --Copy_Lines: This procedure copies all lines and its details for a given Contract Header
15598               This pricedure is used in COPY_CONTRACT API.
15599 		                  Parameters:
15600 					      P_From_Chr_ID: Header ID of the Source Contract
15601 						 P_To_Chr_ID  : Header ID of the Target Contract
15602 						 P_Renew_Ref_YN : Parameter to indicate if this routine is being called in
15603 						 the context of Contract Renewal or regular Copy. Valid
15604 						 values are 'Y' and 'N'
15605 p_include_cancelled_lines is used to check whether to copy cancelled_lines or not
15606 p_include_terminated_lines is used to check whether to copy terminated lines or not
15607 =======================================================================================*/
15608 PROCEDURE copy_lines(
15609        p_api_version      IN NUMBER
15610 	 ,p_init_msg_list    IN VARCHAR2 DEFAULT OKC_API.G_FALSE
15611 	 ,x_return_status    OUT NOCOPY VARCHAR2
15612 	 ,x_msg_count        OUT NOCOPY NUMBER
15613 	 ,x_msg_data         OUT NOCOPY VARCHAR2
15614 	 ,P_From_Chr_ID      IN NUMBER
15615 	 ,P_To_Chr_ID        IN NUMBER
15616 	 ,P_Renew_Ref_YN     IN VARCHAR2
15617 	 ,p_include_cancelled_lines IN VARCHAR2 DEFAULT 'Y'
15618 	 ,p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
15619 
15620  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_LINES';
15621  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
15622 
15623  l_SrcContractPPSetupExists_YN VARCHAR2(1) := ContractPPSetupEXISTS(P_Chr_ID => P_From_Chr_ID);
15624  l_GCDPPSetupExists_YN VARCHAR2(1) ;
15625  l_profile_value      VARCHAR2(100) :=Nvl(fnd_profile.Value('OKS_COPY_NOTES'),'Y');  ----added for bugfix 14240229 by ansraj
15626 
15627   -- 03-Nov-2006 hkamdar. Bug# 5623498.
15628  CURSOR get_toplvl_uom(p_line_id IN NUMBER) IS
15629  SELECT OEL.PRICING_QUANTITY_UOM
15630        FROM   OKC_K_LINES_B OKCLINE,
15631               OKC_K_REL_OBJS OKCREL,
15632               OE_ORDER_LINES_ALL OEL
15633        WHERE  OKCLINE.LSE_ID IN (7,9,25)
15634        AND    OKCLINE.id = p_line_id
15635        AND    OKCLINE.ID =  OKCREL.CLE_ID
15636        AND    OEL.LINE_ID = OKCREL.OBJECT1_ID1;
15637 
15638  l_toplvl_uom_code   OKS_K_LINES_B.toplvl_uom_code%TYPE;
15639  -- 03-Nov-2006 hkamdar. Bug# 5623498.
15640 
15641 -- Bug# 5531198 hkamdar 21-Sep-2006
15642  ---------------------------------------------------------------------------
15643   ------------Cursor to get PRICE UOM of newly created contract--------
15644   CURSOR get_new_price_uom(P_To_Chr_ID IN NUMBER) IS
15645   select price_uom
15646   from oks_k_headers_b
15647   where chr_id = P_To_Chr_ID;
15648 
15649   l_TrgtHeaderPriceUom         OKS_K_HEADERS_B.PRICE_UOM%TYPE := NULL;
15650   l_TrgtHeaderPriceUomExists_YN VARCHAR2(1);
15651   ----------------------------------------------------------------------------
15652 -- End Bug# 5531198 hkamdar 21-Sep-2006
15653 
15654 /*if p_include_cancelled_lines 'Y' AND p_include_terminated_lines = 'Y' */
15655 /* Cursor to get rows to be copied from:
15656 	OKC_K_LINES_B
15657 	OKS_K_LINES_B
15658 	OKC_K_ITEMS
15659    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
15660   CURSOR GetOKCOKSLinesB_Copy(P_From_Chr_ID IN NUMBER
15661 				  ,P_To_Chr_ID IN NUMBER) IS
15662   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
15663   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
15664    okcB.ID                                          AS OkcB_OldOKCLineID
15665   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
15666   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
15667   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
15668   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
15669   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
15670   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
15671   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
15672   ,NULL				                    AS OkcB_TRN_CODE
15673   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
15674   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
15675   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
15676   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
15677   ,(CASE WHEN  okcB.LSE_ID IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) AND okcB.DATE_CANCELLED IS NOT NULL THEN       /*Modified for bug:6765336*/
15678     okcB.CANCELLED_AMOUNT
15679     else
15680   decode(okcB.DATE_TERMINATED
15681          ,NULL
15682          ,decode(okcB.LSE_ID
15683                 ,46
15684                 ,decode(okcB.DATE_CANCELLED
15685                        ,NULL
15686                        ,okcB.PRICE_NEGOTIATED
15687                        ,okcB.CANCELLED_AMOUNT
15688                        )
15689                 ,okcB.PRICE_NEGOTIATED
15690                 )
15691          ,nvl(okcB.PRICE_NEGOTIATED,0)
15692           +nvl(oksB.CREDIT_AMOUNT,0)
15693           +nvl(oksB.UBT_AMOUNT,0)
15694           +nvl(oksB.SUPPRESSED_CREDIT,0)
15695          )
15696          END)			                    AS OkcB_PRICE_NEGOTIATED
15697   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
15698   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
15699   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
15700   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
15701   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
15702   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
15703   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
15704   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
15705   ,NULL			                            AS OkcB_DATE_TERMINATED
15706   ,okcB.START_DATE                                  AS OkcB_START_DATE
15707   ,okcB.END_DATE                                    AS OkcB_END_DATE
15708   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
15709   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
15710   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
15711   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
15712   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
15713   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
15714   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
15715   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
15716   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
15717   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
15718   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
15719   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
15720   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
15721   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
15722   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
15723   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
15724   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
15725   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
15726   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
15727   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
15728   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
15729   ,NULL				    		    AS OkcB_DATE_RENEWED
15730   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
15731   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
15732   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
15733   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
15734   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
15735   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
15736   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
15737   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
15738   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
15739   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
15740   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
15741   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
15742   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
15743   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
15744   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
15745   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
15746   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
15747   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
15748   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
15749   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
15750   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
15751   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
15752   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
15753   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
15754   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
15755   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
15756   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
15757   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
15758   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
15759   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
15760   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
15761   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
15762   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
15763   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
15764   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
15765   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
15766   ,NULL						    AS OkcB_DATE_CANCELLED
15767   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
15768   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
15769   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
15770   ,NULL						    AS OkcB_CANCELLED_AMOUNT
15771   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
15772   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
15773   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
15774   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
15775   ,oksB.ID                                		AS OksB_OldOksLineID
15776   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
15777   ,oksB.CLE_ID  					AS OksB_CLE_ID
15778   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
15779   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
15780   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
15781   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
15782   ,NULL                                                 AS OksB_CC_NO --Obsolete
15783   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
15784   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
15785   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
15786   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
15787   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
15788   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
15789   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
15790   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
15791   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
15792   ,NULL							AS OksB_UBT_AMOUNT
15793   ,NULL							AS OksB_CREDIT_AMOUNT
15794   ,NULL							AS OksB_SUPPRESSED_CREDIT
15795   ,NULL							AS OksB_OVERRIDE_AMOUNT
15796   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
15797   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
15798   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
15799   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
15800   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
15801   -- Bug# 5531198 hkamdar 21-Sep-2006
15802   /*
15803   ,decode(l_SrcContractPPSetupExists_YN
15804           ,'Y'
15805           ,oksB.PRICE_UOM
15806           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
15807   ,decode(l_SrcContractPPSetupExists_YN
15808           ,'Y'
15809           ,oksB.PRICE_UOM
15810           ,decode(l_TrgtHeaderPriceUomExists_YN
15811 	          ,'Y'
15812 		  ,l_TrgtHeaderPriceUom
15813 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
15814   -- End Bug# 5531198 hkamdar 21-Sep-2006
15815   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
15816   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
15817   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
15818   ,oksB.TAX_CODE					AS OksB_TAX_CODE
15819   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
15820   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
15821   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
15822   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
15823   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
15824   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
15825   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
15826   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
15827   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
15828   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
15829   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
15830   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
15831   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
15832   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
15833   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
15834   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
15835   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
15836   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
15837   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
15838   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
15839   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
15840   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
15841   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
15842   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
15843   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
15844   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
15845   ,oksB.BASE_READING					AS OksB_BASE_READING
15846   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
15847   ,NULL							AS OksB_FULL_CREDIT
15848   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
15849   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
15850   ,oksB.PRORATE						AS OksB_PRORATE
15851   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
15852   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
15853   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
15854   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
15855   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
15856   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
15857   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
15858   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
15859   ,oksB.PDF_ID						AS OksB_PDF_ID
15860   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
15861   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
15862   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
15863   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
15864   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
15865   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
15866   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
15867   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
15868   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
15869   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
15870   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
15871   ,1							AS OksB_OBJECT_VERSION_NUMBER
15872   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
15873   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
15874   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
15875   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
15876   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
15877   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
15878   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
15879   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
15880   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
15881   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
15882   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
15883   --------------------------------End of OKS_K_LINES_B columns-------------------------
15884   --------------------------------Start of OKC_K_ITEMS columns-------------------------
15885   ,okcI.ID                                     		AS OkcI_OldOkcItemID
15886   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
15887   ,okcI.CLE_ID						AS OkcI_CLE_ID
15888   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
15889   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
15890   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
15891   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
15892   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
15893   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
15894   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
15895   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
15896   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
15897   ,1							AS OkcI_OBJECT_VERSION_NUMBER
15898   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
15899   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
15900   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
15901   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
15902   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
15903   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
15904   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
15905   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
15906   FROM
15907    OKC_K_LINES_B okcB
15908   ,OKS_K_LINES_B oksB
15909   ,OKC_K_ITEMS okcI
15910   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
15911   AND okcB.ID = oksB.CLE_ID(+)
15912   AND okcB.ID = okcI.CLE_ID(+)
15913   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
15914   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID;
15915 
15916 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy-----------------
15917 
15918 /*if p_include_cancelled_lines ='Y' and p_include_terminated_lines = 'N'*/
15919 /* Cursor to get rows to be copied from:
15920 	OKC_K_LINES_B
15921 	OKS_K_LINES_B
15922 	OKC_K_ITEMS
15923    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
15924   CURSOR GetOKCOKSLinesB_Copy_CANCEL(P_From_Chr_ID IN NUMBER
15925 				  ,P_To_Chr_ID IN NUMBER) IS
15926   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
15927   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
15928    okcB.ID                                          AS OkcB_OldOKCLineID
15929   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
15930   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
15931   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
15932   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
15933   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
15934   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
15935   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
15936   ,NULL				                    AS OkcB_TRN_CODE
15937   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
15938   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
15939   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
15940   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
15941   ,(CASE WHEN  okcB.LSE_ID IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) AND okcB.DATE_CANCELLED IS NOT NULL THEN       /*Modified for bug:6765336*/
15942     okcB.CANCELLED_AMOUNT
15943     else
15944   decode(okcB.DATE_TERMINATED
15945          ,NULL
15946          ,decode(okcB.LSE_ID
15947                 ,46
15948                 ,decode(okcB.DATE_CANCELLED
15949                        ,NULL
15950                        ,okcB.PRICE_NEGOTIATED
15951                        ,okcB.CANCELLED_AMOUNT
15952                        )
15953                 ,okcB.PRICE_NEGOTIATED
15954                 )
15955          ,nvl(okcB.PRICE_NEGOTIATED,0)
15956           +nvl(oksB.CREDIT_AMOUNT,0)
15957           +nvl(oksB.UBT_AMOUNT,0)
15958           +nvl(oksB.SUPPRESSED_CREDIT,0)
15959          )
15960          END)			                    AS OkcB_PRICE_NEGOTIATED
15961   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
15962   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
15963   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
15964   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
15965   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
15966   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
15967   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
15968   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
15969   ,NULL			                            AS OkcB_DATE_TERMINATED
15970   ,okcB.START_DATE                                  AS OkcB_START_DATE
15971   ,okcB.END_DATE                                    AS OkcB_END_DATE
15972   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
15973   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
15974   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
15975   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
15976   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
15977   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
15978   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
15979   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
15980   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
15981   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
15982   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
15983   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
15984   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
15985   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
15986   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
15987   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
15988   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
15989   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
15990   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
15991   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
15992   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
15993   ,NULL				    		    AS OkcB_DATE_RENEWED
15994   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
15995   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
15996   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
15997   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
15998   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
15999   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16000   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16001   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16002   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16003   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16004   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16005   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16006   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16007   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16008   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16009   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16010   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16011   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16012   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16013   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16014   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16015   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16016   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16017   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16018   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16019   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16020   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16021   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16022   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16023   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16024   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16025   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16026   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16027   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16028   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16029   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16030   ,NULL						    AS OkcB_DATE_CANCELLED
16031   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
16032   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16033   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16034   ,NULL						    AS OkcB_CANCELLED_AMOUNT
16035   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16036   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
16037   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16038   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16039   ,oksB.ID                                		AS OksB_OldOksLineID
16040   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
16041   ,oksB.CLE_ID  					AS OksB_CLE_ID
16042   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
16043   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
16044   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
16045   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
16046   ,NULL                                                 AS OksB_CC_NO --Obsolete
16047   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
16048   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
16049   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
16050   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
16051   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
16052   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
16053   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
16054   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
16055   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
16056   ,NULL							AS OksB_UBT_AMOUNT
16057   ,NULL							AS OksB_CREDIT_AMOUNT
16058   ,NULL							AS OksB_SUPPRESSED_CREDIT
16059   ,NULL							AS OksB_OVERRIDE_AMOUNT
16060   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
16061   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
16062   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
16063   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
16064   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
16065   -- Bug# 5531198 hkamdar 21-Sep-2006
16066   /*
16067   ,decode(l_SrcContractPPSetupExists_YN
16068           ,'Y'
16069           ,oksB.PRICE_UOM
16070           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16071   ,decode(l_SrcContractPPSetupExists_YN
16072           ,'Y'
16073           ,oksB.PRICE_UOM
16074           ,decode(l_TrgtHeaderPriceUomExists_YN
16075 	          ,'Y'
16076 		  ,l_TrgtHeaderPriceUom
16077 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16078   -- End Bug# 5531198 hkamdar 21-Sep-2006
16079   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
16080   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
16081   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
16082   ,oksB.TAX_CODE					AS OksB_TAX_CODE
16083   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
16084   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
16085   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
16086   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
16087   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
16088   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
16089   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
16090   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
16091   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
16092   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
16093   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
16094   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
16095   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
16096   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
16097   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
16098   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
16099   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
16100   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
16101   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
16102   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
16103   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
16104   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
16105   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
16106   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
16107   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
16108   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
16109   ,oksB.BASE_READING					AS OksB_BASE_READING
16110   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
16111   ,NULL							AS OksB_FULL_CREDIT
16112   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
16113   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
16114   ,oksB.PRORATE						AS OksB_PRORATE
16115   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
16116   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
16117   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
16118   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
16119   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
16120   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
16121   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
16122   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
16123   ,oksB.PDF_ID						AS OksB_PDF_ID
16124   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
16125   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
16126   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
16127   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
16128   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
16129   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
16130   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
16131   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
16132   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
16133   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
16134   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
16135   ,1							AS OksB_OBJECT_VERSION_NUMBER
16136   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
16137   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
16138   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
16139   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
16140   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
16141   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
16142   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
16143   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
16144   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
16145   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
16146   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
16147   --------------------------------End of OKS_K_LINES_B columns-------------------------
16148   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16149   ,okcI.ID                                     		AS OkcI_OldOkcItemID
16150   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
16151   ,okcI.CLE_ID						AS OkcI_CLE_ID
16152   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
16153   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
16154   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
16155   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
16156   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
16157   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
16158   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
16159   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
16160   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
16161   ,1							AS OkcI_OBJECT_VERSION_NUMBER
16162   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
16163   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
16164   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16165   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
16166   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
16167   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
16168   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
16169   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
16170   FROM
16171    OKC_K_LINES_B okcB
16172   ,OKS_K_LINES_B oksB
16173   ,OKC_K_ITEMS okcI
16174   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
16175   AND okcB.ID = oksB.CLE_ID(+)
16176   AND okcB.ID = okcI.CLE_ID(+)
16177   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16178   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16179   AND okcB.date_terminated IS NULL;
16180 
16181 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy_CANCEL-----------------
16182 
16183 /*if p_include_cancelled_lines = 'N' and p_include_terminated_lines = 'Y' */
16184 /* Cursor to get rows to be copied from:
16185 	OKC_K_LINES_B
16186 	OKS_K_LINES_B
16187 	OKC_K_ITEMS
16188    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
16189   CURSOR GetOKCOKSLinesB_Copy_TERMN(P_From_Chr_ID IN NUMBER
16190 				  ,P_To_Chr_ID IN NUMBER) IS
16191   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
16192   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
16193    okcB.ID                                          AS OkcB_OldOKCLineID
16194   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
16195   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
16196   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
16197   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
16198   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
16199   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
16200   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
16201   ,NULL				                    AS OkcB_TRN_CODE
16202   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
16203   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
16204   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
16205   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
16206   ,(CASE WHEN  okcB.LSE_ID IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) AND okcB.DATE_CANCELLED IS NOT NULL THEN       /*Modified for bug:6765336*/
16207     okcB.CANCELLED_AMOUNT
16208     else
16209   decode(okcB.DATE_TERMINATED
16210          ,NULL
16211          ,decode(okcB.LSE_ID
16212                 ,46
16213                 ,decode(okcB.DATE_CANCELLED
16214                        ,NULL
16215                        ,okcB.PRICE_NEGOTIATED
16216                        ,okcB.CANCELLED_AMOUNT
16217                        )
16218                 ,okcB.PRICE_NEGOTIATED
16219                 )
16220          ,nvl(okcB.PRICE_NEGOTIATED,0)
16221           +nvl(oksB.CREDIT_AMOUNT,0)
16222           +nvl(oksB.UBT_AMOUNT,0)
16223           +nvl(oksB.SUPPRESSED_CREDIT,0)
16224          )
16225          END)			                    AS OkcB_PRICE_NEGOTIATED
16226   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
16227   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
16228   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
16229   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
16230   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
16231   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
16232   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
16233   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
16234   ,NULL			                            AS OkcB_DATE_TERMINATED
16235   ,okcB.START_DATE                                  AS OkcB_START_DATE
16236   ,okcB.END_DATE                                    AS OkcB_END_DATE
16237   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
16238   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
16239   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
16240   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
16241   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
16242   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
16243   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
16244   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
16245   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
16246   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
16247   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
16248   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
16249   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
16250   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
16251   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
16252   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
16253   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
16254   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
16255   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
16256   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
16257   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16258   ,NULL				    		    AS OkcB_DATE_RENEWED
16259   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
16260   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
16261   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
16262   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
16263   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
16264   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16265   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16266   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16267   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16268   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16269   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16270   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16271   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16272   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16273   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16274   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16275   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16276   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16277   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16278   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16279   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16280   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16281   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16282   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16283   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16284   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16285   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16286   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16287   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16288   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16289   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16290   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16291   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16292   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16293   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16294   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16295   ,NULL						    AS OkcB_DATE_CANCELLED
16296   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
16297   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16298   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16299   ,NULL						    AS OkcB_CANCELLED_AMOUNT
16300   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16301   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
16302   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16303   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16304   ,oksB.ID                                		AS OksB_OldOksLineID
16305   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
16306   ,oksB.CLE_ID  					AS OksB_CLE_ID
16307   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
16308   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
16309   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
16310   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
16311   ,NULL                                                 AS OksB_CC_NO --Obsolete
16312   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
16313   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
16314   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
16315   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
16316   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
16317   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
16318   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
16319   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
16320   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
16321   ,NULL							AS OksB_UBT_AMOUNT
16322   ,NULL							AS OksB_CREDIT_AMOUNT
16323   ,NULL							AS OksB_SUPPRESSED_CREDIT
16324   ,NULL							AS OksB_OVERRIDE_AMOUNT
16325   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
16326   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
16327   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
16328   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
16329   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
16330   -- Bug# 5531198 hkamdar 21-Sep-2006
16331   /*
16332   ,decode(l_SrcContractPPSetupExists_YN
16333           ,'Y'
16334           ,oksB.PRICE_UOM
16335           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16336   ,decode(l_SrcContractPPSetupExists_YN
16337           ,'Y'
16338           ,oksB.PRICE_UOM
16339           ,decode(l_TrgtHeaderPriceUomExists_YN
16340 	          ,'Y'
16341 		  ,l_TrgtHeaderPriceUom
16342 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16343   -- End Bug# 5531198 hkamdar 21-Sep-2006
16344   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
16345   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
16346   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
16347   ,oksB.TAX_CODE					AS OksB_TAX_CODE
16348   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
16349   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
16350   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
16351   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
16352   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
16353   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
16354   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
16355   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
16356   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
16357   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
16358   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
16359   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
16360   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
16361   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
16362   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
16363   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
16364   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
16365   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
16366   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
16367   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
16368   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
16369   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
16370   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
16371   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
16372   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
16373   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
16374   ,oksB.BASE_READING					AS OksB_BASE_READING
16375   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
16376   ,NULL							AS OksB_FULL_CREDIT
16377   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
16378   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
16379   ,oksB.PRORATE						AS OksB_PRORATE
16380   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
16381   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
16382   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
16383   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
16384   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
16385   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
16386   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
16387   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
16388   ,oksB.PDF_ID						AS OksB_PDF_ID
16389   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
16390   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
16391   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
16392   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
16393   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
16394   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
16395   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
16396   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
16397   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
16398   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
16399   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
16400   ,1							AS OksB_OBJECT_VERSION_NUMBER
16401   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
16402   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
16403   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
16404   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
16405   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
16406   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
16407   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
16408   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
16409   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
16410   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
16411   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
16412   --------------------------------End of OKS_K_LINES_B columns-------------------------
16413   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16414   ,okcI.ID                                     		AS OkcI_OldOkcItemID
16415   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
16416   ,okcI.CLE_ID						AS OkcI_CLE_ID
16417   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
16418   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
16419   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
16420   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
16421   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
16422   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
16423   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
16424   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
16425   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
16426   ,1							AS OkcI_OBJECT_VERSION_NUMBER
16427   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
16428   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
16429   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16430   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
16431   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
16432   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
16433   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
16434   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
16435   FROM
16436    OKC_K_LINES_B okcB
16437   ,OKS_K_LINES_B oksB
16438   ,OKC_K_ITEMS okcI
16439   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
16440   AND okcB.ID = oksB.CLE_ID(+)
16441   AND okcB.ID = okcI.CLE_ID(+)
16442   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16443   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16444   AND okcB.date_cancelled IS NULL;
16445 
16446 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy_termn-----------------
16447 
16448 /*if p_include_cancelled_lines = 'N' and p_include_terminated_lines = 'N' */
16449 /* Cursor to get rows to be copied from:
16450 	OKC_K_LINES_B
16451 	OKS_K_LINES_B
16452 	OKC_K_ITEMS
16453    for a specified Source Contract. This cursor is used when P_Renew_Ref_YN = 'N' */
16454   CURSOR GetOKCOKSLinesB_Copy_exclude(P_From_Chr_ID IN NUMBER
16455 				  ,P_To_Chr_ID IN NUMBER) IS
16456   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
16457   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
16458    okcB.ID                                          AS OkcB_OldOKCLineID
16459   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OkcB_NewOKCLineID --Target Value
16460   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
16461   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
16462   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
16463   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
16464   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
16465   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
16466   ,NULL				                    AS OkcB_TRN_CODE
16467   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
16468   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
16469   ,1			    			    AS OkcB_OBJECT_VERSION_NUMBER
16470   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
16471   ,(CASE WHEN  okcB.LSE_ID IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) AND okcB.DATE_CANCELLED IS NOT NULL THEN       /*Modified for bug:6765336*/
16472     okcB.CANCELLED_AMOUNT
16473     else
16474   decode(okcB.DATE_TERMINATED
16475          ,NULL
16476          ,decode(okcB.LSE_ID
16477                 ,46
16478                 ,decode(okcB.DATE_CANCELLED
16479                        ,NULL
16480                        ,okcB.PRICE_NEGOTIATED
16481                        ,okcB.CANCELLED_AMOUNT
16482                        )
16483                 ,okcB.PRICE_NEGOTIATED
16484                 )
16485          ,nvl(okcB.PRICE_NEGOTIATED,0)
16486           +nvl(oksB.CREDIT_AMOUNT,0)
16487           +nvl(oksB.UBT_AMOUNT,0)
16488           +nvl(oksB.SUPPRESSED_CREDIT,0)
16489          )
16490          END)			                    AS OkcB_PRICE_NEGOTIATED
16491   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
16492   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
16493   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
16494   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
16495   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
16496   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
16497   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
16498   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
16499   ,NULL			                            AS OkcB_DATE_TERMINATED
16500   ,okcB.START_DATE                                  AS OkcB_START_DATE
16501   ,okcB.END_DATE                                    AS OkcB_END_DATE
16502   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
16503   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
16504   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
16505   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
16506   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
16507   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
16508   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
16509   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
16510   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
16511   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
16512   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
16513   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
16514   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
16515   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
16516   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
16517   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
16518   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
16519   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
16520   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
16521   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
16522   ,okcB.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16523   ,NULL				    		    AS OkcB_DATE_RENEWED
16524   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
16525   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
16526   ,'OKC_LINE'                               	    AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
16527   ,okcB.PROGRAM_APPLICATION_ID		    	    AS OkcB_PROGRAM_APPLICATION_ID
16528   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
16529   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16530   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16531   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16532   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16533   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16534   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16535   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16536   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16537   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16538   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16539   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16540   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16541   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16542   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16543   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16544   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16545   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16546   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16547   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16548   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16549   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16550   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16551   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16552   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16553   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16554   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16555   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16556   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16557   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16558   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16559   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16560   ,NULL						    AS OkcB_DATE_CANCELLED
16561   ,NULL 					    AS OkcB_TERM_CANCEL_SOURCE --Bug 4641561
16562   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16563   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16564   ,NULL						    AS OkcB_CANCELLED_AMOUNT
16565   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16566   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')	    AS OkcB_LINE_TERMINATED_FLAG
16567   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16568   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16569   ,oksB.ID                                		AS OksB_OldOksLineID
16570   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
16571   ,oksB.CLE_ID  					AS OksB_CLE_ID
16572   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
16573   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
16574   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
16575   ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
16576   ,NULL                                                 AS OksB_CC_NO --Obsolete
16577   ,NULL 					        AS OksB_CC_EXPIRY_DATE --Obsolete
16578   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
16579   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
16580   ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
16581   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
16582   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
16583   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
16584   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
16585   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
16586   ,NULL							AS OksB_UBT_AMOUNT
16587   ,NULL							AS OksB_CREDIT_AMOUNT
16588   ,NULL							AS OksB_SUPPRESSED_CREDIT
16589   ,NULL							AS OksB_OVERRIDE_AMOUNT
16590   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
16591   ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
16592   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
16593   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
16594   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
16595   -- Bug# 5531198 hkamdar 21-Sep-2006
16596   /*
16597   ,decode(l_SrcContractPPSetupExists_YN
16598           ,'Y'
16599           ,oksB.PRICE_UOM
16600           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16601   ,decode(l_SrcContractPPSetupExists_YN
16602           ,'Y'
16603           ,oksB.PRICE_UOM
16604           ,decode(l_TrgtHeaderPriceUomExists_YN
16605 	          ,'Y'
16606 		  ,l_TrgtHeaderPriceUom
16607 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16608   -- End Bug# 5531198 hkamdar 21-Sep-2006
16609   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
16610   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
16611   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
16612   ,oksB.TAX_CODE					AS OksB_TAX_CODE
16613   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
16614   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
16615   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
16616   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
16617   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
16618   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
16619   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
16620   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
16621   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
16622   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
16623   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
16624   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
16625   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
16626   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
16627   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
16628   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
16629   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
16630   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
16631   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
16632   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
16633   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
16634   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
16635   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
16636   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
16637   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
16638   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
16639   ,oksB.BASE_READING					AS OksB_BASE_READING
16640   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
16641   ,NULL							AS OksB_FULL_CREDIT
16642   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
16643   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
16644   ,oksB.PRORATE						AS OksB_PRORATE
16645   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
16646   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
16647   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
16648   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
16649   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
16650   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
16651   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
16652   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
16653   ,oksB.PDF_ID						AS OksB_PDF_ID
16654   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
16655   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
16656   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
16657   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
16658   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
16659   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
16660   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
16661   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
16662   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
16663   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
16664   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
16665   ,1							AS OksB_OBJECT_VERSION_NUMBER
16666   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
16667   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
16668   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
16669   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
16670   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
16671   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
16672   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
16673   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
16674   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
16675   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
16676   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
16677   --------------------------------End of OKS_K_LINES_B columns-------------------------
16678   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16679   ,okcI.ID                                     		AS OkcI_OldOkcItemID
16680   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
16681   ,okcI.CLE_ID						AS OkcI_CLE_ID
16682   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
16683   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
16684   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
16685   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
16686   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
16687   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
16688   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
16689   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
16690   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
16691   ,1							AS OkcI_OBJECT_VERSION_NUMBER
16692   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
16693   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
16694   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16695   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
16696   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
16697   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
16698   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
16699   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
16700   FROM
16701    OKC_K_LINES_B okcB
16702   ,OKS_K_LINES_B oksB
16703   ,OKC_K_ITEMS okcI
16704   Where okcB.DNZ_CHR_ID = P_From_Chr_ID
16705   AND okcB.ID = oksB.CLE_ID(+)
16706   AND okcB.ID = okcI.CLE_ID(+)
16707   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16708   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16709   AND okcB.date_cancelled is null
16710   AND okcB.date_terminated is null;
16711 
16712 ---------------End of Cursor Definition for GetOKCOKSLinesB_Copy_EXCLUDE-----------------
16713 
16714 
16715 /* Cursor to get rows to be copied from:
16716 	OKC_K_LINES_B
16717 	OKS_K_LINES_B
16718 	OKC_K_ITEMS
16719    for a specified Source Contracti. This cursor is used when P_Renew_Ref_YN = 'Y'. It filters out
16720    the lines that have been renewed,cancelled or terminated or have been marked as 'DNR' (Do not renew) */
16721 
16722   CURSOR GetOKCOKSLinesB_Renew(P_From_Chr_ID IN NUMBER
16723 				    ,P_To_Chr_ID IN NUMBER) IS
16724   SELECT /*+ leading(okcB) use_nl(oksB,okcI) */
16725   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
16726    okcB.ID							      AS OkcB_OldOKCLineID
16727   ,To_number(rawtohex(sys_guid()), HexFormatStr) AS OkcB_NewOKCLineID --Target Value
16728   ,okcB.LINE_NUMBER  				    AS OkcB_LINE_NUMBER
16729   ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID)        AS OkcB_NewChrID--Target Value
16730   ,okcB.CLE_ID 				 	    AS OkcB_CLE_ID
16731   ,P_To_Chr_ID                                      AS OkcB_NewDnzChrID --Target Value
16732   ,okcB.DISPLAY_SEQUENCE 			    AS OkcB_DISPLAY_SEQUENCE
16733   ,okcB.STS_CODE 				    AS OkcB_STS_CODE
16734   ,okcB.TRN_CODE			            AS OkcB_TRN_CODE
16735   ,okcB.LSE_ID 					    AS OkcB_LSE_ID
16736   ,okcB.EXCEPTION_YN				    AS OkcB_EXCEPTION_YN
16737   ,1						    AS OkcB_OBJECT_VERSION_NUMBER
16738   ,okcB.HIDDEN_IND 				    AS OkcB_HIDDEN_IND
16739   ,okcB.PRICE_NEGOTIATED 			    AS OkcB_PRICE_NEGOTIATED
16740   ,okcB.PRICE_LEVEL_IND				    AS OkcB_PRICE_LEVEL_IND
16741   ,okcB.PRICE_UNIT 				    AS OkcB_PRICE_UNIT
16742   ,okcB.PRICE_UNIT_PERCENT			    AS OkcB_PRICE_UNIT_PERCENT
16743   ,okcB.INVOICE_LINE_LEVEL_IND			    AS OkcB_INVOICE_LINE_LEVEL_IND
16744   ,okcB.DPAS_RATING				    AS OkcB_DPAS_RATING
16745   ,okcB.TEMPLATE_USED				    AS OkcB_TEMPLATE_USED
16746   ,okcB.PRICE_TYPE				    AS OkcB_PRICE_TYPE
16747   ,okcB.CURRENCY_CODE				    AS OkcB_CURRENCY_CODE
16748   ,NULL			                            AS OkcB_DATE_TERMINATED
16749   ,okcB.START_DATE                                  AS OkcB_START_DATE
16750   ,okcB.END_DATE                                    AS OkcB_END_DATE
16751   ,okcB.ATTRIBUTE_CATEGORY                          AS OkcB_ATTRIBUTE_CATEGORY
16752   ,okcB.ATTRIBUTE1                                  AS OkcB_ATTRIBUTE1
16753   ,okcB.ATTRIBUTE2                                  AS OkcB_ATTRIBUTE2
16754   ,okcB.ATTRIBUTE3				    AS OkcB_ATTRIBUTE3
16755   ,okcB.ATTRIBUTE4 				    AS OkcB_ATTRIBUTE4
16756   ,okcB.ATTRIBUTE5				    AS OkcB_ATTRIBUTE5
16757   ,okcB.ATTRIBUTE6				    AS OkcB_ATTRIBUTE6
16758   ,okcB.ATTRIBUTE7				    AS OkcB_ATTRIBUTE7
16759   ,okcB.ATTRIBUTE8				    AS OkcB_ATTRIBUTE8
16760   ,okcB.ATTRIBUTE9				    AS OkcB_ATTRIBUTE9
16761   ,okcB.ATTRIBUTE10				    AS OkcB_ATTRIBUTE10
16762   ,okcB.ATTRIBUTE11				    AS OkcB_ATTRIBUTE11
16763   ,okcB.ATTRIBUTE12				    AS OkcB_ATTRIBUTE12
16764   ,okcB.ATTRIBUTE13				    AS OkcB_ATTRIBUTE13
16765   ,okcB.ATTRIBUTE14				    AS OkcB_ATTRIBUTE14
16766   ,okcB.ATTRIBUTE15				    AS OkcB_ATTRIBUTE15
16767   ,okcB.SECURITY_GROUP_ID			    AS OkcB_SECURITY_GROUP_ID
16768   ,okcB.PRICE_NEGOTIATED_RENEWED		    AS OkcB_PRICE_NEGOTIATED_RENEWED
16769   ,okcB.CURRENCY_CODE_RENEWED			    AS OkcB_CURRENCY_CODE_RENEWED
16770   /*Commented and Modified by sjanakir for Bug# 7214731
16771   ,okcB.UPG_ORIG_SYSTEM_REF			    AS OkcB_UPG_ORIG_SYSTEM_REF
16772   ,okcB.UPG_ORIG_SYSTEM_REF_ID			    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16773   */
16774   ,NULL			    AS OkcB_UPG_ORIG_SYSTEM_REF
16775   ,NULL			    AS OkcB_UPG_ORIG_SYSTEM_REF_ID
16776   ,NULL						    AS OkcB_DATE_RENEWED
16777   ,okcB.ID  					    AS OkcB_ORIG_SYSTEM_ID1 --Target Value
16778   ,'COPY'   					    AS OkcB_ORIG_SYSTEM_REFERENCE1 --Target Value
16779   ,'OKC_LINE'                                       AS OkcB_ORIG_SYSTEM_SOURCE_CODE   --Target Value
16780   ,okcB.PROGRAM_APPLICATION_ID			    AS OkcB_PROGRAM_APPLICATION_ID
16781   ,okcB.PROGRAM_ID				    AS OkcB_PROGRAM_ID
16782   ,okcB.PROGRAM_UPDATE_DATE			    AS OkcB_PROGRAM_UPDATE_DATE
16783   ,okcB.REQUEST_ID				    AS OkcB_REQUEST_ID
16784   ,okcB.PRICE_LIST_ID				    AS OkcB_PRICE_LIST_ID
16785   ,okcB.PRICE_LIST_LINE_ID			    AS OkcB_PRICE_LIST_LINE_ID
16786   ,okcB.LINE_LIST_PRICE				    AS OkcB_LINE_LIST_PRICE
16787   ,okcB.ITEM_TO_PRICE_YN			    AS OkcB_ITEM_TO_PRICE_YN
16788   ,okcB.PRICING_DATE				    AS OkcB_PRICING_DATE
16789   ,okcB.PRICE_BASIS_YN				    AS OkcB_PRICE_BASIS_YN
16790   ,okcB.CONFIG_HEADER_ID			    AS OkcB_CONFIG_HEADER_ID
16791   ,okcB.CONFIG_REVISION_NUMBER			    AS OkcB_CONFIG_REVISION_NUMBER
16792   ,okcB.CONFIG_COMPLETE_YN			    AS OkcB_CONFIG_COMPLETE_YN
16793   ,okcB.CONFIG_VALID_YN				    AS OkcB_CONFIG_VALID_YN
16794   ,okcB.CONFIG_TOP_MODEL_LINE_ID		    AS OkcB_CONFIG_TOP_MODEL_LINE_ID
16795   ,okcB.CONFIG_ITEM_TYPE			    AS OkcB_CONFIG_ITEM_TYPE
16796   ,okcB.CONFIG_ITEM_ID				    AS OkcB_CONFIG_ITEM_ID
16797   ,okcB.SERVICE_ITEM_YN				    AS OkcB_SERVICE_ITEM_YN
16798   ,okcB.PH_PRICING_TYPE				    AS OkcB_PH_PRICING_TYPE
16799   ,okcB.PH_PRICE_BREAK_BASIS			    AS OkcB_PH_PRICE_BREAK_BASIS
16800   ,okcB.PH_MIN_QTY				    AS OkcB_PH_MIN_QTY
16801   ,okcB.PH_MIN_AMT				    AS OkcB_PH_MIN_AMT
16802   ,okcB.PH_QP_REFERENCE_ID			    AS OkcB_PH_QP_REFERENCE_ID
16803   ,okcB.PH_VALUE				    AS OkcB_PH_VALUE
16804   ,okcB.PH_ENFORCE_PRICE_LIST_YN		    AS OkcB_PH_ENFORCE_PRICE_LIST_YN
16805   ,okcB.PH_ADJUSTMENT				    AS OkcB_PH_ADJUSTMENT
16806   ,okcB.PH_INTEGRATED_WITH_QP			    AS OkcB_PH_INTEGRATED_WITH_QP
16807   ,okcB.CUST_ACCT_ID				    AS OkcB_CUST_ACCT_ID
16808   ,okcB.BILL_TO_SITE_USE_ID			    AS OkcB_BILL_TO_SITE_USE_ID
16809   ,okcB.INV_RULE_ID				    AS OkcB_INV_RULE_ID
16810   ,okcB.LINE_RENEWAL_TYPE_CODE			    AS OkcB_LINE_RENEWAL_TYPE_CODE
16811   ,okcB.SHIP_TO_SITE_USE_ID			    AS OkcB_SHIP_TO_SITE_USE_ID
16812   ,okcB.PAYMENT_TERM_ID				    AS OkcB_PAYMENT_TERM_ID
16813   ,NULL						    AS OkcB_DATE_CANCELLED
16814   ,NULL			    			    AS OkcB_TERM_CANCEL_SOURCE
16815   ,okcB.ANNUALIZED_FACTOR			    AS OkcB_ANNUALIZED_FACTOR
16816   ,okcB.PAYMENT_INSTRUCTION_TYPE		    AS OkcB_PAYMENT_INSTRUCTION_TYPE
16817   ,NULL			    			    AS OkcB_CANCELLED_AMOUNT
16818   ,decode(okcB.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcB_LINE_CANCELLED_FLAG
16819   ,decode(okcB.DATE_TERMINATED,NULL,'N','Y')        AS OkcB_LINE_TERMINATED_FLAG
16820   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
16821   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
16822   ,oksB.ID					    AS OksB_OldOksLineID
16823   ,To_number(rawtohex(sys_guid()), HexFormatStr)    AS OksB_NewOksLineID
16824   ,oksB.CLE_ID  				    AS OksB_CLE_ID
16825   ,P_To_Chr_ID 					    AS OksB_NewDnzChrID
16826   ,oksB.DISCOUNT_LIST				    AS OksB_DISCOUNT_LIST
16827   ,oksB.ACCT_RULE_ID				    AS OksB_ACCT_RULE_ID
16828   ,oksB.PAYMENT_TYPE				    AS OksB_PAYMENT_TYPE
16829   ,NULL						    AS OksB_CC_NO --Obsolete
16830   ,NULL						    AS OksB_CC_EXPIRY_DATE --Obsolete
16831   ,NULL						    AS OksB_CC_BANK_ACCT_ID --Obsolete
16832   ,NULL						    AS OksB_CC_AUTH_CODE --Obsolete
16833   ,oksB.COMMITMENT_ID				    AS OksB_COMMITMENT_ID
16834   ,oksB.LOCKED_PRICE_LIST_ID			    AS OksB_LOCKED_PRICE_LIST_ID
16835   ,oksB.USAGE_EST_YN				    AS OksB_USAGE_EST_YN
16836   ,oksB.USAGE_EST_METHOD			    AS OksB_USAGE_EST_METHOD
16837   ,oksB.USAGE_EST_START_DATE			    AS OksB_USAGE_EST_START_DATE
16838   ,oksB.TERMN_METHOD				    AS OksB_TERMN_METHOD
16839   ,NULL						    AS OksB_UBT_AMOUNT
16840   ,NULL						    AS OksB_CREDIT_AMOUNT
16841   ,NULL 					    AS OksB_SUPPRESSED_CREDIT
16842   ,NULL						    AS OksB_OVERRIDE_AMOUNT
16843   ,oksB.CUST_PO_NUMBER_REQ_YN			    AS OksB_CUST_PO_NUMBER_REQ_YN
16844   ,oksB.CUST_PO_NUMBER				    AS OksB_CUST_PO_NUMBER
16845   ,oksB.GRACE_DURATION				    AS OksB_GRACE_DURATION
16846   ,oksB.GRACE_PERIOD				    AS OksB_GRACE_PERIOD
16847   ,oksB.INV_PRINT_FLAG				    AS OksB_INV_PRINT_FLAG
16848   -- Bug# 5531198 hkamdar 21-Sep-2006
16849   /*
16850   ,decode(l_SrcContractPPSetupExists_YN
16851           ,'Y'
16852           ,oksB.PRICE_UOM
16853           ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)		AS OksB_PRICE_UOM */
16854   ,decode(l_SrcContractPPSetupExists_YN
16855           ,'Y'
16856           ,oksB.PRICE_UOM
16857           ,decode(l_TrgtHeaderPriceUomExists_YN
16858 	          ,'Y'
16859 		  ,l_TrgtHeaderPriceUom
16860 		  ,oksB.PRICE_UOM))		AS OksB_PRICE_UOM
16861   -- End Bug# 5531198 hkamdar 21-Sep-2006
16862   ,oksB.TAX_AMOUNT				    AS OksB_TAX_AMOUNT
16863   ,oksB.TAX_INCLUSIVE_YN			    AS OksB_TAX_INCLUSIVE_YN
16864   ,oksB.TAX_STATUS				    AS OksB_TAX_STATUS
16865   ,oksB.TAX_CODE				    AS OksB_TAX_CODE
16866   ,oksB.TAX_EXEMPTION_ID			    AS OksB_TAX_EXEMPTION_ID
16867   ,oksB.IB_TRANS_TYPE				    AS OksB_IB_TRANS_TYPE
16868   ,oksB.IB_TRANS_DATE				    AS OksB_IB_TRANS_DATE
16869   ,oksB.PROD_PRICE				    AS OksB_PROD_PRICE
16870   ,oksB.SERVICE_PRICE				    AS OksB_SERVICE_PRICE
16871   ,oksB.CLVL_LIST_PRICE				    AS OksB_CLVL_LIST_PRICE
16872   ,oksB.CLVL_QUANTITY				    AS OksB_CLVL_QUANTITY
16873   ,oksB.CLVL_EXTENDED_AMT			    AS OksB_CLVL_EXTENDED_AMT
16874   ,oksB.CLVL_UOM_CODE				    AS OksB_CLVL_UOM_CODE
16875   ,oksB.TOPLVL_OPERAND_CODE			    AS OksB_TOPLVL_OPERAND_CODE
16876   ,oksB.TOPLVL_OPERAND_VAL			    AS OksB_TOPLVL_OPERAND_VAL
16877   ,oksB.TOPLVL_QUANTITY				    AS OksB_TOPLVL_QUANTITY
16878   ,oksB.TOPLVL_UOM_CODE				    AS OksB_TOPLVL_UOM_CODE
16879   ,oksB.TOPLVL_ADJ_PRICE			    AS OksB_TOPLVL_ADJ_PRICE
16880   ,oksB.TOPLVL_PRICE_QTY			    AS OksB_TOPLVL_PRICE_QTY
16881   ,oksB.AVERAGING_INTERVAL			    AS OksB_AVERAGING_INTERVAL
16882   ,oksB.SETTLEMENT_INTERVAL			    AS OksB_SETTLEMENT_INTERVAL
16883   ,oksB.MINIMUM_QUANTITY			    AS OksB_MINIMUM_QUANTITY
16884   ,oksB.DEFAULT_QUANTITY			    AS OksB_DEFAULT_QUANTITY
16885   ,oksB.AMCV_FLAG				    AS OksB_AMCV_FLAG
16886   ,oksB.FIXED_QUANTITY				    AS OksB_FIXED_QUANTITY
16887   ,oksB.USAGE_DURATION				    AS OksB_USAGE_DURATION
16888   ,oksB.USAGE_PERIOD				    AS OksB_USAGE_PERIOD
16889   ,oksB.LEVEL_YN				    AS OksB_LEVEL_YN
16890   ,oksB.USAGE_TYPE				    AS OksB_USAGE_TYPE
16891   ,oksB.UOM_QUANTIFIED				    AS OksB_UOM_QUANTIFIED
16892   ,oksB.BASE_READING				    AS OksB_BASE_READING
16893   ,oksB.BILLING_SCHEDULE_TYPE			AS OksB_BILLING_SCHEDULE_TYPE
16894   ,NULL						AS OksB_FULL_CREDIT
16895   ,oksB.LOCKED_PRICE_LIST_LINE_ID		AS OksB_LOCKED_PRICE_LIST_LINE_ID
16896   ,oksB.BREAK_UOM				AS OksB_BREAK_UOM
16897   ,oksB.PRORATE					AS OksB_PRORATE
16898   ,oksB.COVERAGE_TYPE				AS OksB_COVERAGE_TYPE
16899   ,oksB.EXCEPTION_COV_ID			AS OksB_EXCEPTION_COV_ID
16900   ,oksB.LIMIT_UOM_QUANTIFIED			AS OksB_LIMIT_UOM_QUANTIFIED
16901   ,oksB.DISCOUNT_AMOUNT				AS OksB_DISCOUNT_AMOUNT
16902   ,oksB.DISCOUNT_PERCENT			AS OksB_DISCOUNT_PERCENT
16903   ,oksB.OFFSET_DURATION				AS OksB_OFFSET_DURATION
16904   ,oksB.OFFSET_PERIOD				AS OksB_OFFSET_PERIOD
16905   ,oksB.INCIDENT_SEVERITY_ID			AS OksB_INCIDENT_SEVERITY_ID
16906   ,oksB.PDF_ID					AS OksB_PDF_ID
16907   ,oksB.WORK_THRU_YN				AS OksB_WORK_THRU_YN
16908   ,oksB.REACT_ACTIVE_YN				AS OksB_REACT_ACTIVE_YN
16909   ,oksB.TRANSFER_OPTION				AS OksB_TRANSFER_OPTION
16910   ,oksB.PROD_UPGRADE_YN				AS OksB_PROD_UPGRADE_YN
16911   ,oksB.INHERITANCE_TYPE			AS OksB_INHERITANCE_TYPE
16912   ,oksB.PM_PROGRAM_ID				AS OksB_PM_PROGRAM_ID
16913   ,oksB.PM_CONF_REQ_YN				AS OksB_PM_CONF_REQ_YN
16914   ,oksB.PM_SCH_EXISTS_YN			AS OksB_PM_SCH_EXISTS_YN
16915   ,oksB.ALLOW_BT_DISCOUNT			AS OksB_ALLOW_BT_DISCOUNT
16916   ,oksB.APPLY_DEFAULT_TIMEZONE			AS OksB_APPLY_DEFAULT_TIMEZONE
16917   ,oksB.SYNC_DATE_INSTALL			AS OksB_SYNC_DATE_INSTALL
16918   ,1						AS OksB_OBJECT_VERSION_NUMBER
16919   ,oksB.SECURITY_GROUP_ID			AS OksB_SECURITY_GROUP_ID
16920   ,oksB.REQUEST_ID				AS OksB_REQUEST_ID
16921   ,oksB.ID 					AS OksB_ORIG_SYSTEM_ID1
16922   ,'COPY' 					AS OksB_ORIG_SYSTEM_REFERENCE1
16923   ,NULL 					AS OksB_ORIG_SYSTEM_SOURCE_CODE
16924   ,oksB.TRXN_EXTENSION_ID			AS OksB_TRXN_EXTENSION_ID
16925   ,oksB.TAX_CLASSIFICATION_CODE                 AS OksB_TAX_CLASSIFICATION_CODE
16926   ,oksB.EXEMPT_CERTIFICATE_NUMBER               AS OksB_EXEMPT_CERTIFICATE_NUMBER
16927   ,oksB.EXEMPT_REASON_CODE                      AS OksB_EXEMPT_REASON_CODE
16928   ,oksB.COVERAGE_ID                    		AS OksB_COVERAGE_ID
16929   ,oksB.STANDARD_COV_YN                      	AS OksB_STANDARD_COV_YN
16930   --------------------------------End of OKS_K_LINES_B columns-------------------------
16931   --------------------------------Start of OKC_K_ITEMS columns-------------------------
16932   ,okcI.ID					AS OkcI_OldOkcItemID
16933   ,To_number(rawtohex(sys_guid()), HexFormatStr)AS OkcI_NewOkcItemID
16934   ,okcI.CLE_ID					AS OkcI_CLE_ID
16935   ,P_To_Chr_ID 					AS OkcI_NewDnzChrID
16936   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  	AS OkcI_NewChrID
16937   ,okcI.OBJECT1_ID1				AS OkcI_OBJECT1_ID1
16938   ,okcI.OBJECT1_ID2				AS OkcI_OBJECT1_ID2
16939   ,okcI.JTOT_OBJECT1_CODE			AS OkcI_JTOT_OBJECT1_CODE
16940   ,okcI.UOM_CODE				AS OkcI_UOM_CODE
16941   ,okcI.EXCEPTION_YN				AS OkcI_EXCEPTION_YN
16942   ,okcI.NUMBER_OF_ITEMS				AS OkcI_NUMBER_OF_ITEMS
16943   ,okcI.PRICED_ITEM_YN				AS OkcI_PRICED_ITEM_YN
16944   ,1						AS OkcI_OBJECT_VERSION_NUMBER
16945   ,okcI.SECURITY_GROUP_ID			AS OkcI_SECURITY_GROUP_ID
16946   ,okcI.UPG_ORIG_SYSTEM_REF			AS OkcI_UPG_ORIG_SYSTEM_REF
16947   ,okcI.UPG_ORIG_SYSTEM_REF_ID			AS OkcI_UPG_ORIG_SYSTEM_REF_ID
16948   ,okcI.PROGRAM_APPLICATION_ID			AS Okc_PROGRAM_APPLICATION_ID
16949   ,okcI.PROGRAM_ID				AS OkcI_PROGRAM_ID
16950   ,okcI.PROGRAM_UPDATE_DATE			AS OkcI_PROGRAM_UPDATE_DATE
16951   ,okcI.REQUEST_ID				AS OkcI_REQUEST_ID
16952   ,oksB.COUNTER_VALUE_ID			AS OksB_COUNTER_VALUE_ID
16953   FROM
16954   OKC_K_LINES_B okcB
16955   ,OKS_K_LINES_B oksB
16956   ,OKC_K_ITEMS okcI
16957   WHERE
16958   okcB.ID = oksB.CLE_ID(+)
16959   AND okcB.ID = okcI.CLE_ID(+)
16960   AND okcB.DNZ_CHR_ID = P_From_Chr_ID
16961   AND oksB.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16962   AND okcI.DNZ_CHR_ID(+) = okcB.DNZ_CHR_ID
16963   AND
16964     (
16965      NVL(okcB.LINE_RENEWAL_TYPE_CODE,'X') <> 'DNR'
16966      AND okcB.DATE_TERMINATED IS NULL
16967      AND okcB.DATE_CANCELLED IS NULL
16968      AND okcB.DATE_RENEWED IS NULL
16969      )
16970   AND (okcB.CLE_ID IS NULL
16971       OR
16972       (okcB.CLE_ID IS NOT NULL
16973        AND NOT EXISTS
16974           (SELECT 'X'
16975            FROM okc_k_lines_b lb2
16976            WHERE NVL(lb2.line_renewal_type_code,'X') = 'DNR'
16977            OR lb2.DATE_TERMINATED IS NOT NULL
16978            OR lb2.DATE_CANCELLED IS NOT NULL
16979            OR lb2.DATE_RENEWED IS NOT NULL
16980    	   START WITH lb2.id = okcB.cle_id
16981            CONNECT BY PRIOR lb2.cle_id = lb2.id
16982           )
16983      )
16984     );
16985 
16986   -------------End of Cursor definition for GetOKCOKSLinesB_Renew-------------
16987 
16988   -------------Cursor to get default status for line-------------------------
16989   CURSOR get_default_status IS
16990   select code
16991   from okc_statuses_b
16992   where ste_code = 'ENTERED'
16993   and default_yn = 'Y';
16994 
16995   l_Default_Sts_Code OKC_STATUSES_B.CODE%TYPE;
16996   ---------------------------------------------------------------------------
16997   ------------Cursor to get Contract Number of newly created contract--------
16998   CURSOR get_new_contract_number(P_To_Chr_ID IN NUMBER) IS
16999   select contract_number
17000   from okc_k_headers_b
17001   where id = P_To_Chr_ID;
17002 
17003   l_new_contract_number       OKC_K_HEADERS_B.CONTRACT_NUMBER%TYPE := NULL;
17004   ----------------------------------------------------------------------------
17005 
17006   l_return_status    VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
17007   l_euro_currency    VARCHAR2(15) := NULL;
17008 
17009   --OKC Line Attributes to be updated--
17010   l_converted_price_negotiated NUMBER := NULL;
17011   l_converted_price_unit NUMBER := NULL;
17012   l_tax_amount NUMBER := NULL;
17013 
17014 
17015   --OKS Line Attributes to be updated--
17016   l_locked_price_list_id      NUMBER := NULL;
17017   l_locked_price_list_line_id NUMBER := NULL;
17018   l_trxn_extension_id		NUMBER := NULL;
17019 
17020   lx_rail_rec OKS_TAX_UTIL_PVT.ra_rec_type;
17021 
17022   /*cgopinee bugfix for bug8826746*/
17023   cursor terminatedLSLines IS
17024   select
17025   Count(id)
17026   from okc_k_lines_b
17027   where dnz_chr_id = P_From_Chr_ID
17028   and (
17029       (cle_id is NOT NULL and lse_id in (7,8,9,10,11,13,25,35))
17030      OR
17031       (cle_id is NULL)
17032      )
17033   and date_terminated IS NOT null;
17034 
17035   l_termLSLineCount NUMBER :=NULL;
17036   /*end of bugfix for bug8826746*/
17037 
17038 Begin
17039 
17040     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
17041       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
17042          FND_LOG.string(FND_LOG.level_procedure
17043                         ,l_module_name||'.Begin'
17044                         ,',P_From_Chr_ID='||P_From_Chr_ID
17045                          ||',P_To_Chr_ID='||P_To_Chr_ID
17046                          ||',p_renew_ref_yn='||p_renew_ref_yn
17047                          );
17048       END IF;
17049     END IF;
17050 
17051   x_return_status := l_return_status;
17052 
17053   --Setting Variable to indicate existence of Partial Period Setup in GCD--
17054   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
17055    l_GCDPPSetupExists_YN := 'Y';
17056   ELSE
17057    l_GCDPPSetupExists_YN := 'N';
17058   END IF;
17059   ------------------------------------------------------------------------
17060 
17061   ------------------------------------------------------------------------
17062   -- Bug# 5531198 hkamdar 21-Sep-2006
17063   --Get Price UOM of Target Contract--
17064   IF l_SrcContractPPSetupExists_YN = 'N' THEN
17065      Begin
17066          OPEN get_new_price_uom(P_To_Chr_ID);
17067          FETCH get_new_price_uom into l_TrgtHeaderPriceUom;
17068          CLOSE get_new_price_uom;
17069      End;
17070 
17071      IF l_TrgtHeaderPriceUom IS NOT NULL THEN
17072         l_TrgtHeaderPriceUomExists_YN := 'Y';
17073      ELSE
17074         l_TrgtHeaderPriceUomExists_YN := 'N';
17075      END IF;
17076   END IF;
17077   -- End Bug# 5531198 hkamdar 21-Sep-2006
17078  ------------------------------------------------------------------------
17079 
17080   --Get Contract Number of Target Contract--
17081   Begin
17082     OPEN get_new_contract_number(P_To_Chr_ID);
17083     FETCH get_new_contract_number into l_new_contract_number;
17084     CLOSE get_new_contract_number;
17085     If l_new_contract_number IS NULL then
17086         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17087          FND_LOG.string(FND_LOG.level_statement
17088                         ,l_module_name||':'||'Cursor get_new_contract_number'
17089                         ,'Contract number of Target Contract is NULL'
17090                         );
17091         END IF;
17092         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
17093 	RAISE G_EXCEPTION_HALT_VALIDATION;
17094     End If;
17095   End;
17096  -------------------------------------------
17097   --Get default status for lines------------
17098   Begin
17099     OPEN get_default_status;
17100     FETCH get_default_status into l_Default_Sts_Code;
17101     CLOSE get_default_status;
17102     If l_Default_Sts_Code IS NULL then
17103         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17104          FND_LOG.string(FND_LOG.level_statement
17105                         ,l_module_name||':'||'Cursor get_default_status'
17106                         ,'Default Status not found'
17107                         );
17108         END IF;
17109        l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
17110        RAISE G_EXCEPTION_HALT_VALIDATION;
17111     End If;
17112   End;
17113   ------------------------------------------
17114 
17115  IF (P_Renew_Ref_YN = 'N') then
17116   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17117          FND_LOG.string(FND_LOG.level_statement
17118                         ,l_module_name
17119                         ,'Opening GetOKCOKSLinesB_Copy'
17120                         );
17121   END IF;
17122 /*MODIFIED FOR BUG6617044 COPY ENHANCEMENT */
17123   IF p_include_cancelled_lines = 'Y' AND
17124          p_include_terminated_lines = 'Y' THEN
17125         OPEN GetOKCOKSLinesB_Copy(P_From_Chr_ID, P_To_Chr_ID);
17126       ELSIF p_include_cancelled_lines = 'N' AND
17127             p_include_terminated_lines = 'Y' THEN
17128         OPEN GetOKCOKSLinesB_Copy_TERMN(P_From_Chr_ID, P_To_Chr_ID);
17129       ELSIF p_include_cancelled_lines = 'Y' AND
17130             p_include_terminated_lines = 'N' THEN
17131         OPEN GetOKCOKSLinesB_Copy_CANCEL(P_From_Chr_ID, P_To_Chr_ID);
17132       ELSIF p_include_cancelled_lines = 'N' AND
17133             p_include_terminated_lines = 'N' THEN
17134         OPEN GetOKCOKSLinesB_Copy_EXCLUDE(P_From_Chr_ID, P_To_Chr_ID);
17135       END IF;
17136  ELSIF (P_Renew_Ref_YN = 'Y') then
17137   IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17138          FND_LOG.string(FND_LOG.level_statement
17139                         ,l_module_name
17140                         ,'Opening GetOKCOKSLinesB_Renew'
17141                         );
17142   END IF;
17143   OPEN GetOKCOKSLinesB_Renew(P_From_Chr_ID,P_To_Chr_ID);
17144  END IF;
17145 
17146  LOOP
17147   IF (P_Renew_Ref_YN = 'N') THEN
17148    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
17149          FND_LOG.string(FND_LOG.level_statement
17150                         ,l_module_name
17151                         ,'FETCHING from GetOKCOKSLinesB_Copy'
17152                         );
17153    END IF;
17154 
17155    IF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'Y' THEN
17156     FETCH GetOKCOKSLinesB_Copy BULK COLLECT INTO
17157     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17158    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17159    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17160    ,OKCOKSLinesRecTab.OkcB_NewChrID
17161    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17162    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17163    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17164    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17165    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17166    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17167    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17168    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17169    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17170    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17171    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17172    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17173    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17174    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17175    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17176    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17177    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17178    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17179    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17180    ,OKCOKSLinesRecTab.OkcB_START_DATE
17181    ,OKCOKSLinesRecTab.OkcB_END_DATE
17182    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17183    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17184    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17185    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17186    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17187    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17188    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17189    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17190    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17191    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17192    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17193    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17194    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17195    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17196    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17197    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17198    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17199    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17200    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17201    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17202    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17203    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17204    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17205    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17206    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17207    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17208    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17209    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17210    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17211    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17212    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17213    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17214    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17215    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17216    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17217    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17218    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17219    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17220    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17221    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17222    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17223    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17224    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17225    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17226    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17227    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17228    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17229    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17230    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17231    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17232    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17233    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17234    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17235    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17236    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17237    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17238    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17239    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17240    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17241    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17242    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17243    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17244    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17245    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17246    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17247 -----------------End of record members for OKC_K_LINES_B columns
17248 -----------------Start of record members for OKS_K_LINES_B columns
17249    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17250    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17251    ,OKCOKSLinesRecTab.OksB_CLE_ID
17252    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17253    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17254    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17255    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17256    ,OKCOKSLinesRecTab.OksB_CC_NO
17257    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17258    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17259    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17260    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17261    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17262    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17263    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17264    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17265    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17266    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17267    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17268    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17269    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17270    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17271    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17272    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17273    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17274    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17275    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17276    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17277    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17278    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17279    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17280    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17281    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17282    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17283    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17284    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17285    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17286    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17287    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17288    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17289    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17290    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17291    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17292    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17293    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17294    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17295    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17296    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17297    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17298    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17299    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17300    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17301    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17302    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17303    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17304    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17305    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17306    ,OKCOKSLinesRecTab.OksB_BASE_READING
17307    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17308    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17309    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17310    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17311    ,OKCOKSLinesRecTab.OksB_PRORATE
17312    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17313    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17314    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17315    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17316    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17317    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17318    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17319    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17320    ,OKCOKSLinesRecTab.OksB_PDF_ID
17321    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17322    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17323    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17324    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17325    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17326    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17327    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17328    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17329    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17330    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17331    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17332    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17333    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17334    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17335    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17336    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17337    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17338    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17339    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17340    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17341    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17342    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17343    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17344 -----------------End of record members for OKS_K_LINES_B columns
17345 -----------------Start of record members for OKC_K_ITEMS columns
17346    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17347    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17348    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17349    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17350    ,OKCOKSLinesRecTab.OkcI_NewChrID
17351    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17352    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17353    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17354    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17355    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17356    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17357    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17358    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17359    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17360    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17361    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17362    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17363    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17364    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17365    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
17366    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
17367 
17368    ELSIF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'N' THEN
17369 
17370 
17371     FETCH GetOKCOKSLinesB_Copy_CANCEL BULK COLLECT INTO
17372     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17373    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17374    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17375    ,OKCOKSLinesRecTab.OkcB_NewChrID
17376    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17377    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17378    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17379    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17380    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17381    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17382    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17383    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17384    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17385    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17386    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17387    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17388    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17389    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17390    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17391    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17392    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17393    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17394    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17395    ,OKCOKSLinesRecTab.OkcB_START_DATE
17396    ,OKCOKSLinesRecTab.OkcB_END_DATE
17397    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17398    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17399    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17400    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17401    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17402    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17403    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17404    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17405    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17406    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17407    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17408    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17409    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17410    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17411    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17412    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17413    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17414    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17415    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17416    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17417    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17418    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17419    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17420    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17421    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17422    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17423    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17424    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17425    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17426    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17427    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17428    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17429    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17430    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17431    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17432    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17433    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17434    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17435    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17436    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17437    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17438    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17439    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17440    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17441    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17442    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17443    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17444    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17445    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17446    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17447    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17448    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17449    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17450    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17451    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17452    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17453    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17454    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17455    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17456    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17457    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17458    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17459    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17460    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17461    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17462 -----------------End of record members for OKC_K_LINES_B columns
17463 -----------------Start of record members for OKS_K_LINES_B columns
17464    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17465    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17466    ,OKCOKSLinesRecTab.OksB_CLE_ID
17467    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17468    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17469    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17470    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17471    ,OKCOKSLinesRecTab.OksB_CC_NO
17472    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17473    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17474    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17475    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17476    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17477    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17478    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17479    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17480    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17481    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17482    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17483    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17484    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17485    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17486    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17487    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17488    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17489    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17490    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17491    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17492    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17493    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17494    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17495    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17496    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17497    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17498    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17499    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17500    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17501    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17502    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17503    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17504    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17505    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17506    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17507    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17508    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17509    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17510    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17511    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17512    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17513    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17514    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17515    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17516    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17517    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17518    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17519    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17520    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17521    ,OKCOKSLinesRecTab.OksB_BASE_READING
17522    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17523    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17524    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17525    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17526    ,OKCOKSLinesRecTab.OksB_PRORATE
17527    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17528    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17529    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17530    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17531    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17532    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17533    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17534    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17535    ,OKCOKSLinesRecTab.OksB_PDF_ID
17536    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17537    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17538    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17539    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17540    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17541    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17542    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17543    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17544    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17545    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17546    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17547    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17548    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17549    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17550    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17551    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17552    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17553    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17554    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17555    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17556    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17557    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17558    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17559 -----------------End of record members for OKS_K_LINES_B columns
17560 -----------------Start of record members for OKC_K_ITEMS columns
17561    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17562    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17563    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17564    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17565    ,OKCOKSLinesRecTab.OkcI_NewChrID
17566    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17567    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17568    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17569    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17570    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17571    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17572    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17573    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17574    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17575    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17576    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17577    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17578    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17579    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17580    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
17581    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
17582 
17583   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'Y' then
17584 
17585     FETCH GetOKCOKSLinesB_Copy_TERMN BULK COLLECT INTO
17586     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17587    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17588    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17589    ,OKCOKSLinesRecTab.OkcB_NewChrID
17590    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17591    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17592    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17593    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17594    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17595    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17596    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17597    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17598    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17599    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17600    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17601    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17602    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17603    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17604    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17605    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17606    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17607    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17608    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17609    ,OKCOKSLinesRecTab.OkcB_START_DATE
17610    ,OKCOKSLinesRecTab.OkcB_END_DATE
17611    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17612    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17613    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17614    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17615    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17616    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17617    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17618    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17619    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17620    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17621    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17622    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17623    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17624    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17625    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17626    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17627    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17628    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17629    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17630    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17631    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17632    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17633    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17634    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17635    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17636    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17637    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17638    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17639    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17640    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17641    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17642    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17643    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17644    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17645    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17646    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17647    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17648    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17649    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17650    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17651    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17652    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17653    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17654    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17655    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17656    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17657    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17658    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17659    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17660    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17661    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17662    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17663    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17664    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17665    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17666    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17667    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17668    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17669    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17670    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17671    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17672    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17673    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17674    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17675    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17676 -----------------End of record members for OKC_K_LINES_B columns
17677 -----------------Start of record members for OKS_K_LINES_B columns
17678    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17679    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17680    ,OKCOKSLinesRecTab.OksB_CLE_ID
17681    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17682    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17683    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17684    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17685    ,OKCOKSLinesRecTab.OksB_CC_NO
17686    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17687    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17688    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17689    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17690    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17691    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17692    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17693    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17694    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17695    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17696    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17697    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17698    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17699    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17700    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17701    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17702    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17703    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17704    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17705    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17706    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17707    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17708    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17709    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17710    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17711    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17712    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17713    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17714    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17715    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17716    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17717    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17718    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17719    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17720    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17721    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17722    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17723    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17724    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17725    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17726    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17727    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17728    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17729    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17730    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17731    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17732    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17733    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17734    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17735    ,OKCOKSLinesRecTab.OksB_BASE_READING
17736    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17737    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17738    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17739    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17740    ,OKCOKSLinesRecTab.OksB_PRORATE
17741    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17742    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17743    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17744    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17745    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17746    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17747    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17748    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17749    ,OKCOKSLinesRecTab.OksB_PDF_ID
17750    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17751    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17752    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17753    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17754    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17755    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17756    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17757    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17758    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17759    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17760    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17761    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17762    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17763    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17764    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17765    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17766    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17767    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17768    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17769    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17770    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17771    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17772    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17773 -----------------End of record members for OKS_K_LINES_B columns
17774 -----------------Start of record members for OKC_K_ITEMS columns
17775    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17776    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17777    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17778    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17779    ,OKCOKSLinesRecTab.OkcI_NewChrID
17780    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17781    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17782    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17783    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17784    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17785    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17786    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
17787    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
17788    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
17789    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
17790    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
17791    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
17792    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
17793    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
17794    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
17795    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
17796   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'N' THEN
17797 
17798     FETCH GetOKCOKSLinesB_Copy_EXCLUDE BULK COLLECT INTO
17799     OKCOKSLinesRecTab.OkcB_OldOKCLineID
17800    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
17801    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
17802    ,OKCOKSLinesRecTab.OkcB_NewChrID
17803    ,OKCOKSLinesRecTab.OkcB_CLE_ID
17804    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
17805    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
17806    ,OKCOKSLinesRecTab.OkcB_STS_CODE
17807    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
17808    ,OKCOKSLinesRecTab.OkcB_LSE_ID
17809    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
17810    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
17811    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
17812    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
17813    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
17814    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
17815    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
17816    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
17817    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
17818    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
17819    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
17820    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
17821    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
17822    ,OKCOKSLinesRecTab.OkcB_START_DATE
17823    ,OKCOKSLinesRecTab.OkcB_END_DATE
17824    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
17825    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
17826    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
17827    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
17828    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
17829    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
17830    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
17831    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
17832    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
17833    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
17834    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
17835    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
17836    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
17837    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
17838    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
17839    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
17840    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
17841    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
17842    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
17843    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
17844    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
17845    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
17846    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
17847    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
17848    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
17849    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
17850    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
17851    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
17852    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
17853    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
17854    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
17855    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
17856    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
17857    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
17858    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
17859    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
17860    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
17861    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
17862    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
17863    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
17864    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
17865    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
17866    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
17867    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
17868    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
17869    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
17870    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
17871    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
17872    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
17873    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
17874    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
17875    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
17876    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
17877    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
17878    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
17879    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
17880    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
17881    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
17882    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
17883    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
17884    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
17885    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
17886    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
17887    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
17888    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
17889 -----------------End of record members for OKC_K_LINES_B columns
17890 -----------------Start of record members for OKS_K_LINES_B columns
17891    ,OKCOKSLinesRecTab.OksB_OldOksLineID
17892    ,OKCOKSLinesRecTab.OksB_NewOksLineID
17893    ,OKCOKSLinesRecTab.OksB_CLE_ID
17894    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
17895    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
17896    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
17897    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
17898    ,OKCOKSLinesRecTab.OksB_CC_NO
17899    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
17900    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
17901    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
17902    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
17903    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
17904    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
17905    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
17906    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
17907    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
17908    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
17909    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
17910    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
17911    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
17912    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
17913    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
17914    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
17915    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
17916    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
17917    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
17918    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
17919    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
17920    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
17921    ,OKCOKSLinesRecTab.OksB_TAX_CODE
17922    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
17923    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
17924    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
17925    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
17926    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
17927    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
17928    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
17929    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
17930    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
17931    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
17932    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
17933    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
17934    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
17935    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
17936    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
17937    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
17938    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
17939    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
17940    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
17941    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
17942    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
17943    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
17944    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
17945    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
17946    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
17947    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
17948    ,OKCOKSLinesRecTab.OksB_BASE_READING
17949    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
17950    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
17951    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
17952    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
17953    ,OKCOKSLinesRecTab.OksB_PRORATE
17954    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
17955    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
17956    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
17957    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
17958    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
17959    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
17960    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
17961    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
17962    ,OKCOKSLinesRecTab.OksB_PDF_ID
17963    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
17964    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
17965    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
17966    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
17967    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
17968    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
17969    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
17970    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
17971    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
17972    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
17973    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
17974    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
17975    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
17976    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
17977    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
17978    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
17979    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
17980    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
17981    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
17982    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
17983    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
17984    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
17985    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
17986 -----------------End of record members for OKS_K_LINES_B columns
17987 -----------------Start of record members for OKC_K_ITEMS columns
17988    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
17989    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
17990    ,OKCOKSLinesRecTab.OkcI_CLE_ID
17991    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
17992    ,OKCOKSLinesRecTab.OkcI_NewChrID
17993    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
17994    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
17995    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
17996    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
17997    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
17998    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
17999    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
18000    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
18001    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
18002    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
18003    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
18004    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
18005    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
18006    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
18007    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
18008    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
18009   END IF;
18010 
18011   ELSIF (P_Renew_Ref_YN = 'Y') then
18012 
18013    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18014          FND_LOG.string(FND_LOG.level_statement
18015                         ,l_module_name
18016                         ,'FETCHING from GetOKCOKSLinesB_Renew'
18017                         );
18018    END IF;
18019     FETCH GetOKCOKSLinesB_Renew BULK COLLECT INTO
18020     OKCOKSLinesRecTab.OkcB_OldOKCLineID
18021    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
18022    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
18023    ,OKCOKSLinesRecTab.OkcB_NewChrID
18024    ,OKCOKSLinesRecTab.OkcB_CLE_ID
18025    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
18026    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
18027    ,OKCOKSLinesRecTab.OkcB_STS_CODE
18028    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
18029    ,OKCOKSLinesRecTab.OkcB_LSE_ID
18030    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
18031    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
18032    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
18033    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
18034    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
18035    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
18036    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
18037    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
18038    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
18039    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
18040    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
18041    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
18042    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
18043    ,OKCOKSLinesRecTab.OkcB_START_DATE
18044    ,OKCOKSLinesRecTab.OkcB_END_DATE
18045    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
18046    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
18047    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
18048    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
18049    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
18050    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
18051    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
18052    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
18053    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
18054    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
18055    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
18056    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
18057    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
18058    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
18059    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
18060    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
18061    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
18062    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
18063    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
18064    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
18065    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
18066    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
18067    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
18068    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
18069    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
18070    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
18071    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
18072    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
18073    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
18074    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
18075    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
18076    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
18077    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
18078    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
18079    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
18080    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
18081    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
18082    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
18083    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
18084    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
18085    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
18086    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
18087    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
18088    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
18089    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
18090    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
18091    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
18092    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
18093    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
18094    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
18095    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
18096    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
18097    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
18098    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
18099    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
18100    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
18101    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
18102    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
18103    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
18104    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
18105    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
18106    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
18107    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
18108    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG -- pseudo column
18109    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
18110    -----------------End of record members for OKC_K_LINES_B columns
18111    -----------------Start of record members for OKS_K_LINES_B columns
18112    ,OKCOKSLinesRecTab.OksB_OldOksLineID
18113    ,OKCOKSLinesRecTab.OksB_NewOksLineID
18114    ,OKCOKSLinesRecTab.OksB_CLE_ID
18115    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
18116    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
18117    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
18118    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
18119    ,OKCOKSLinesRecTab.OksB_CC_NO
18120    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
18121    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
18122    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
18123    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
18124    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
18125    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
18126    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
18127    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
18128    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
18129    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
18130    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
18131    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
18132    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
18133    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
18134    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
18135    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
18136    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
18137    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
18138    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
18139    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
18140    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
18141    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
18142    ,OKCOKSLinesRecTab.OksB_TAX_CODE
18143    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
18144    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
18145    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
18146    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
18147    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
18148    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
18149    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
18150    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
18151    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
18152    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
18153    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
18154    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
18155    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
18156    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
18157    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
18158    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
18159    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
18160    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
18161    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
18162    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
18163    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
18164    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
18165    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
18166    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
18167    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
18168    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
18169    ,OKCOKSLinesRecTab.OksB_BASE_READING
18170    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
18171    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
18172    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
18173    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
18174    ,OKCOKSLinesRecTab.OksB_PRORATE
18175    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
18176    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
18177    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
18178    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
18179    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
18180    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
18181    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
18182    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
18183    ,OKCOKSLinesRecTab.OksB_PDF_ID
18184    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
18185    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
18186    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
18187    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
18188    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
18189    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
18190    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
18191    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
18192    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
18193    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
18194    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
18195    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
18196    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
18197    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
18198    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
18199    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
18200    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
18201    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
18202    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
18203    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
18204    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
18205    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
18206    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
18207    -----------------End of record members for OKS_K_LINES_B columns
18208    -----------------Start of record members for OKC_K_ITEMS columns
18209    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
18210    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
18211    ,OKCOKSLinesRecTab.OkcI_CLE_ID
18212    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
18213    ,OKCOKSLinesRecTab.OkcI_NewChrID
18214    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
18215    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
18216    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
18217    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
18218    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
18219    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
18220    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
18221    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
18222    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
18223    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
18224    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
18225    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
18226    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
18227    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
18228    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
18229    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
18230 
18231    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18232          FND_LOG.string(FND_LOG.level_statement
18233                         ,l_module_name
18234                         ,'After FETCH from GetOKCOKSLinesB_Renew'
18235                         );
18236    END IF;
18237 
18238   END IF;
18239 
18240    --Bulk Insert into OKC_K_LINES_B
18241  Begin
18242 
18243   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
18244   INSERT INTO OKC_K_LINES_B(
18245    ID
18246  , LINE_NUMBER
18247  , CHR_ID
18248  , CLE_ID
18249  , DNZ_CHR_ID
18250  , DISPLAY_SEQUENCE
18251  , STS_CODE
18252  , TRN_CODE
18253  , LSE_ID
18254  , EXCEPTION_YN
18255  , OBJECT_VERSION_NUMBER
18256  , HIDDEN_IND
18257  , PRICE_NEGOTIATED
18258  , PRICE_LEVEL_IND
18259  , PRICE_UNIT
18260  , PRICE_UNIT_PERCENT
18261  , INVOICE_LINE_LEVEL_IND
18262  , DPAS_RATING
18263  , TEMPLATE_USED
18264  , PRICE_TYPE
18265  , CURRENCY_CODE
18266  , DATE_TERMINATED
18267  , START_DATE
18268  , END_DATE
18269  , ATTRIBUTE_CATEGORY
18270  , ATTRIBUTE1
18271  , ATTRIBUTE2
18272  , ATTRIBUTE3
18273  , ATTRIBUTE4
18274  , ATTRIBUTE5
18275  , ATTRIBUTE6
18276  , ATTRIBUTE7
18277  , ATTRIBUTE8
18278  , ATTRIBUTE9
18279  , ATTRIBUTE10
18280  , ATTRIBUTE11
18281  , ATTRIBUTE12
18282  , ATTRIBUTE13
18283  , ATTRIBUTE14
18284  , ATTRIBUTE15
18285  , SECURITY_GROUP_ID
18286  , PRICE_NEGOTIATED_RENEWED
18287  , CURRENCY_CODE_RENEWED
18288  , UPG_ORIG_SYSTEM_REF
18289  , UPG_ORIG_SYSTEM_REF_ID
18290  , DATE_RENEWED
18291  , ORIG_SYSTEM_ID1
18292  , ORIG_SYSTEM_REFERENCE1
18293  , ORIG_SYSTEM_SOURCE_CODE
18294  , PROGRAM_APPLICATION_ID
18295  , PROGRAM_ID
18296  , PROGRAM_UPDATE_DATE
18297  , REQUEST_ID
18298  , PRICE_LIST_ID
18299  , PRICE_LIST_LINE_ID
18300  , LINE_LIST_PRICE
18301  , ITEM_TO_PRICE_YN
18302  , PRICING_DATE
18303  , PRICE_BASIS_YN
18304  , CONFIG_HEADER_ID
18305  , CONFIG_REVISION_NUMBER
18306  , CONFIG_COMPLETE_YN
18307  , CONFIG_VALID_YN
18308  , CONFIG_TOP_MODEL_LINE_ID
18309  , CONFIG_ITEM_TYPE
18310  , CONFIG_ITEM_ID
18311  , SERVICE_ITEM_YN
18312  , PH_PRICING_TYPE
18313  , PH_PRICE_BREAK_BASIS
18314  , PH_MIN_QTY
18315  , PH_MIN_AMT
18316  , PH_QP_REFERENCE_ID
18317  , PH_VALUE
18318  , PH_ENFORCE_PRICE_LIST_YN
18319  , PH_ADJUSTMENT
18320  , PH_INTEGRATED_WITH_QP
18321  , CUST_ACCT_ID
18322  , BILL_TO_SITE_USE_ID
18323  , INV_RULE_ID
18324  , LINE_RENEWAL_TYPE_CODE
18325  , SHIP_TO_SITE_USE_ID
18326  , PAYMENT_TERM_ID
18327  , DATE_CANCELLED
18328  , TERM_CANCEL_SOURCE
18329  , ANNUALIZED_FACTOR
18330  , PAYMENT_INSTRUCTION_TYPE -- hkamdar 29-Mar-2006 Bug # 4722452
18331  , CANCELLED_AMOUNT
18332  , CREATION_DATE
18333  , CREATED_BY
18334  , LAST_UPDATE_DATE
18335  , LAST_UPDATED_BY
18336  , LAST_UPDATE_LOGIN
18337   )
18338  SELECT
18339   OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18340  ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER(i)
18341  ,OKCOKSLinesRecTab.OkcB_NewChrID(i)
18342  ,OKCOKSLinesRecTab.OkcB_CLE_ID(i)
18343  ,OKCOKSLinesRecTab.OkcB_NewDnzChrID(i)
18344  ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE(i)
18345  ,l_Default_Sts_Code
18346  ,OKCOKSLinesRecTab.OkcB_TRN_CODE(i)
18347  ,OKCOKSLinesRecTab.OkcB_LSE_ID(i)
18348  ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN(i)
18349  ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER(i)
18350  ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND(i)
18351  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
18352  ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND(i)
18353  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
18354  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT(i)
18355  ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND(i)
18356  ,OKCOKSLinesRecTab.OkcB_DPAS_RATING(i)
18357  ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED(i)
18358  ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE(i)
18359  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
18360  ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED(i)
18361  ,OKCOKSLinesRecTab.OkcB_START_DATE(i)
18362  ,OKCOKSLinesRecTab.OkcB_END_DATE(i)
18363  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY(i)
18364  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1(i)
18365  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2(i)
18366  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3(i)
18367  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4(i)
18368  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5(i)
18369  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6(i)
18370  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7(i)
18371  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8(i)
18372  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9(i)
18373  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10(i)
18374  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11(i)
18375  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12(i)
18376  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13(i)
18377  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14(i)
18378  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15(i)
18379  ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID(i)
18380  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED(i)
18381  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED(i)
18382  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF(i)
18383  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID(i)
18384  ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED(i)
18385  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1(i)
18386  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1(i)
18387  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE(i)
18388  ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID(i)
18389  ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID(i)
18390  ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE(i)
18391  ,OKCOKSLinesRecTab.OkcB_REQUEST_ID(i)
18392  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID(i)
18393  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID(i)
18394  ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE(i)
18395  ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN(i)
18396  ,OKCOKSLinesRecTab.OkcB_PRICING_DATE(i)
18397  ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN(i)
18398  ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID(i)
18399  ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER(i)
18400  ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN(i)
18401  ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN(i)
18402  ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID(i)
18403  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE(i)
18404  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID(i)
18405  ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN(i)
18406  ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE(i)
18407  ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS(i)
18408  ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY(i)
18409  ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT(i)
18410  ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID(i)
18411  ,OKCOKSLinesRecTab.OkcB_PH_VALUE(i)
18412  ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN(i)
18413  ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT(i)
18414  ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP(i)
18415  ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
18416  ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
18417  ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID(i)
18418  ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE(i)
18419  ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID(i)
18420  ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID(i)
18421  ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED(i)
18422  ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE(i)
18423  ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR(i)
18424  ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE(i) -- hkamdar 29-Mar-2006 Bug # 4722452
18425  ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i)
18426  ,SYSDATE
18427  ,FND_GLOBAL.USER_ID
18428  ,SYSDATE
18429  ,FND_GLOBAL.USER_ID
18430  ,FND_GLOBAL.LOGIN_ID
18431   FROM
18432   DUAL;
18433 
18434       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18435          FND_LOG.string(FND_LOG.level_statement
18436                         ,l_module_name
18437                         ,'AFTER INSERT into OKC_K_LINES_B '
18438                         );
18439        END IF;
18440 
18441     EXCEPTION
18442       WHEN OTHERS THEN
18443 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
18444        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
18445          FND_LOG.string(FND_LOG.level_unexpected
18446                         ,l_module_name
18447                         ,'EXCEPTION during insert into OKC_K_LINES_B '||SQLERRM
18448                         );
18449        END IF;
18450 
18451         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
18452         RAISE G_EXCEPTION_HALT_VALIDATION;
18453 
18454  End;
18455 
18456  Begin
18457   --Bulk Insert into OKS_K_LINES_B
18458   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
18459   INSERT INTO OKS_K_LINES_B(
18460    ID
18461   ,CLE_ID
18462   ,DNZ_CHR_ID
18463   ,DISCOUNT_LIST
18464   ,ACCT_RULE_ID
18465   ,PAYMENT_TYPE
18466   ,CC_NO
18467   ,CC_EXPIRY_DATE
18468   ,CC_BANK_ACCT_ID
18469   ,CC_AUTH_CODE
18470   ,COMMITMENT_ID
18471   ,LOCKED_PRICE_LIST_ID
18472   ,USAGE_EST_YN
18473   ,USAGE_EST_METHOD
18474   ,USAGE_EST_START_DATE
18475   ,TERMN_METHOD
18476   ,UBT_AMOUNT
18477   ,CREDIT_AMOUNT
18478   ,SUPPRESSED_CREDIT
18479   ,OVERRIDE_AMOUNT
18480   ,CUST_PO_NUMBER_REQ_YN
18481   ,CUST_PO_NUMBER
18482   ,GRACE_DURATION
18483   ,GRACE_PERIOD
18484   ,INV_PRINT_FLAG
18485   ,PRICE_UOM
18486   ,TAX_AMOUNT
18487   ,TAX_INCLUSIVE_YN
18488   ,TAX_STATUS
18489   ,TAX_CODE
18490   ,TAX_EXEMPTION_ID
18491   ,IB_TRANS_TYPE
18492   ,IB_TRANS_DATE
18493   ,PROD_PRICE
18494   ,SERVICE_PRICE
18495   ,CLVL_LIST_PRICE
18496   ,CLVL_QUANTITY
18497   ,CLVL_EXTENDED_AMT
18498   ,CLVL_UOM_CODE
18499   ,TOPLVL_OPERAND_CODE
18500   ,TOPLVL_OPERAND_VAL
18501   ,TOPLVL_QUANTITY
18502   ,TOPLVL_UOM_CODE
18503   ,TOPLVL_ADJ_PRICE
18504   ,TOPLVL_PRICE_QTY
18505   ,AVERAGING_INTERVAL
18506   ,SETTLEMENT_INTERVAL
18507   ,MINIMUM_QUANTITY
18508   ,DEFAULT_QUANTITY
18509   ,AMCV_FLAG
18510   ,FIXED_QUANTITY
18511   ,USAGE_DURATION
18512   ,USAGE_PERIOD
18513   ,LEVEL_YN
18514   ,USAGE_TYPE
18515   ,UOM_QUANTIFIED
18516   ,BASE_READING
18517   ,BILLING_SCHEDULE_TYPE
18518   ,FULL_CREDIT
18519   ,LOCKED_PRICE_LIST_LINE_ID
18520   ,BREAK_UOM
18521   ,PRORATE
18522   ,COVERAGE_TYPE
18523   ,EXCEPTION_COV_ID
18524   ,LIMIT_UOM_QUANTIFIED
18525   ,DISCOUNT_AMOUNT
18526   ,DISCOUNT_PERCENT
18527   ,OFFSET_DURATION
18528   ,OFFSET_PERIOD
18529   ,INCIDENT_SEVERITY_ID
18530   ,PDF_ID
18531   ,WORK_THRU_YN
18532   ,REACT_ACTIVE_YN
18533   ,TRANSFER_OPTION
18534   ,PROD_UPGRADE_YN
18535   ,INHERITANCE_TYPE
18536   ,PM_PROGRAM_ID
18537   ,PM_CONF_REQ_YN
18538   ,PM_SCH_EXISTS_YN
18539   ,ALLOW_BT_DISCOUNT
18540   ,APPLY_DEFAULT_TIMEZONE
18541   ,SYNC_DATE_INSTALL
18542   ,OBJECT_VERSION_NUMBER
18543   ,SECURITY_GROUP_ID
18544   ,REQUEST_ID
18545   ,ORIG_SYSTEM_ID1
18546   ,ORIG_SYSTEM_REFERENCE1
18547   ,ORIG_SYSTEM_SOURCE_CODE
18548   ,TRXN_EXTENSION_ID
18549   ,TAX_CLASSIFICATION_CODE
18550   ,EXEMPT_CERTIFICATE_NUMBER
18551   ,EXEMPT_REASON_CODE
18552   ,COVERAGE_ID
18553   ,STANDARD_COV_YN
18554   ,CREATION_DATE
18555   ,CREATED_BY
18556   ,LAST_UPDATE_DATE
18557   ,LAST_UPDATED_BY
18558   ,LAST_UPDATE_LOGIN
18559   ,COUNTER_VALUE_ID
18560   )
18561   SELECT
18562    OKCOKSLinesRecTab.OksB_NewOksLineID(i)
18563   ,OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18564   ,OKCOKSLinesRecTab.OksB_NewDnzChrID(i)
18565   ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST(i)
18566   ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID(i)
18567   ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE(i)
18568   ,OKCOKSLinesRecTab.OksB_CC_NO(i)
18569   ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE(i)
18570   ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID(i)
18571   ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE(i)
18572   ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID(i)
18573   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i)
18574   ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN(i)
18575   ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD(i)
18576   ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE(i)
18577   ,OKCOKSLinesRecTab.OksB_TERMN_METHOD(i)
18578   ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT(i)
18579   ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT(i)
18580   ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT(i)
18581   ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT(i)
18582   ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN(i)
18583   ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER(i)
18584   ,OKCOKSLinesRecTab.OksB_GRACE_DURATION(i)
18585   ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD(i)
18586   ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG(i)
18587   ,OKCOKSLinesRecTab.OksB_PRICE_UOM(i)
18588   ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT(i)
18589   ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN(i)
18590   ,OKCOKSLinesRecTab.OksB_TAX_STATUS(i)
18591   ,OKCOKSLinesRecTab.OksB_TAX_CODE(i)
18592   ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID(i)
18593   ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE(i)
18594   ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE(i)
18595   ,OKCOKSLinesRecTab.OksB_PROD_PRICE(i)
18596   ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE(i)
18597   ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE(i)
18598   ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY(i)
18599   ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT(i)
18600   ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE(i)
18601   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE(i)
18602   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL(i)
18603   ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY(i)
18604   ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i)
18605   ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE(i)
18606   ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY(i)
18607   ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL(i)
18608   ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL(i)
18609   ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY(i)
18610   ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY(i)
18611   ,OKCOKSLinesRecTab.OksB_AMCV_FLAG(i)
18612   ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY(i)
18613   ,OKCOKSLinesRecTab.OksB_USAGE_DURATION(i)
18614   ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD(i)
18615   ,OKCOKSLinesRecTab.OksB_LEVEL_YN(i)
18616   ,OKCOKSLinesRecTab.OksB_USAGE_TYPE(i)
18617   ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED(i)
18618   ,OKCOKSLinesRecTab.OksB_BASE_READING(i)
18619   ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE(i)
18620   ,OKCOKSLinesRecTab.OksB_FULL_CREDIT(i)
18621   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
18622   ,OKCOKSLinesRecTab.OksB_BREAK_UOM(i)
18623   ,OKCOKSLinesRecTab.OksB_PRORATE(i)
18624   ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE(i)
18625   ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID(i)
18626   ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED(i)
18627   ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT(i)
18628   ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT(i)
18629   ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION(i)
18630   ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD(i)
18631   ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID(i)
18632   ,OKCOKSLinesRecTab.OksB_PDF_ID(i)
18633   ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN(i)
18634   ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN(i)
18635   ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION(i)
18636   ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN(i)
18637   ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE(i)
18638   ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID(i)
18639   ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN(i)
18640   ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN(i)
18641   ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT(i)
18642   ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE(i)
18643   ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL(i)
18644   ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER(i)
18645   ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID(i)
18646   ,OKCOKSLinesRecTab.OksB_REQUEST_ID(i)
18647   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1(i)
18648   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1(i)
18649   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE(i)
18650   ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
18651   ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE(i)
18652   ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER(i)
18653   ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE(i)
18654   ,OKCOKSLinesRecTab.OksB_COVERAGE_ID(i)
18655   ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN(i)
18656   ,SYSDATE
18657   ,FND_GLOBAL.USER_ID
18658   ,SYSDATE
18659   ,FND_GLOBAL.USER_ID
18660   ,FND_GLOBAL.LOGIN_ID
18661   ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID(i)
18662    FROM
18663    DUAL
18664    WHERE
18665    OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL;
18666 
18667        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18668          FND_LOG.string(FND_LOG.level_statement
18669                         ,l_module_name
18670                         ,'AFTER INSERT into OKS_K_LINES_B '
18671                         );
18672        END IF;
18673 
18674   EXCEPTION
18675       WHEN OTHERS THEN
18676 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
18677        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
18678          FND_LOG.string(FND_LOG.level_unexpected
18679                         ,l_module_name
18680                         ,'EXCEPTION during insert into OKS_K_LINES_B '||SQLERRM
18681                         );
18682        END IF;
18683 
18684         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
18685         RAISE G_EXCEPTION_HALT_VALIDATION;
18686 
18687  End;
18688 
18689   --Bulk Insert into OKC_K_ITEMS
18690  Begin
18691 
18692 
18693   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
18694   INSERT INTO OKC_K_ITEMS(
18695    ID
18696   ,CLE_ID
18697   ,DNZ_CHR_ID
18698   ,CHR_ID
18699   ,OBJECT1_ID1
18700   ,OBJECT1_ID2
18701   ,JTOT_OBJECT1_CODE
18702   ,UOM_CODE
18703   ,EXCEPTION_YN
18704   ,NUMBER_OF_ITEMS
18705   ,PRICED_ITEM_YN
18706   ,OBJECT_VERSION_NUMBER
18707   ,SECURITY_GROUP_ID
18708   ,UPG_ORIG_SYSTEM_REF
18709   ,UPG_ORIG_SYSTEM_REF_ID
18710   ,PROGRAM_APPLICATION_ID
18711   ,PROGRAM_ID
18712   ,PROGRAM_UPDATE_DATE
18713   ,REQUEST_ID
18714   ,CREATION_DATE
18715   ,CREATED_BY
18716   ,LAST_UPDATE_DATE
18717   ,LAST_UPDATED_BY
18718   ,LAST_UPDATE_LOGIN
18719   )
18720   SELECT
18721     OKCOKSLinesRecTab.OkcI_NewOkcItemID(i)
18722    ,OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
18723    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID(i)
18724    ,OKCOKSLinesRecTab.OkcI_NewChrID(i)
18725    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1(i)
18726    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2(i)
18727    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE(i)
18728    ,OKCOKSLinesRecTab.OkcI_UOM_CODE(i)
18729    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN(i)
18730    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS(i)
18731    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN(i)
18732    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER(i)
18733    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID(i)
18734    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF(i)
18735    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID(i)
18736    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID(i)
18737    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID(i)
18738    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE(i)
18739    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID(i)
18740    ,SYSDATE
18741    ,FND_GLOBAL.USER_ID
18742    ,SYSDATE
18743    ,FND_GLOBAL.USER_ID
18744    ,FND_GLOBAL.LOGIN_ID
18745    FROM
18746    DUAL
18747    where OKCOKSLinesRecTab.OkcI_OldOkcItemID(i) IS NOT NULL;
18748 
18749        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
18750          FND_LOG.string(FND_LOG.level_statement
18751                         ,l_module_name
18752                         ,'AFTER INSERT into OKC_K_ITEMS '
18753                         );
18754        END IF;
18755 
18756   EXCEPTION
18757       WHEN OTHERS THEN
18758 	  OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
18759        IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
18760          FND_LOG.string(FND_LOG.level_unexpected
18761                         ,l_module_name
18762                         ,'EXCEPTION during insert into OKC_K_ITEMS '||SQLERRM
18763                         );
18764        END IF;
18765 
18766         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
18767         RAISE; --RAISE G_EXCEPTION_HALT_VALIDATION;
18768 
18769  End;
18770 
18771   -----------------Start of row by row processing---------------------
18772 
18773    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18774         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18775          FND_LOG.string(FND_LOG.level_statement
18776                         ,l_module_name
18777                         ,'Before Start of Row by Row Processing , Count of rows being processed :'||OKCOKSLinesRecTab.OkcB_NewOKCLineID.COUNT
18778                          );
18779         END IF;
18780    END IF;
18781 
18782  If (OKCOKSLinesRecTab.OkcB_NewOKCLineID.COUNT > 0) then
18783   FOR i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST LOOP
18784 
18785   ---- If 'RENEW', then for each line fetched---------------------------------------
18786   --	   a) Update Price_Negotiated and Price_Unit columns based on converted currency
18787   ----------------------------------------------------------------------------------
18788    IF P_Renew_Ref_YN = 'Y' then
18789 
18790     Begin
18791      l_euro_currency := OKC_CURRENCY_API.GET_EURO_CURRENCY_CODE(OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i));
18792 
18793      IF (l_euro_currency <> OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)) THEN
18794 	   --Convert Price Negotiated--
18795          OKC_CURRENCY_API.CONVERT_AMOUNT
18796 	                            (p_FROM_CURRENCY => OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
18797 				    ,p_TO_CURRENCY => l_euro_currency
18798 				    ,p_CONVERSION_DATE => g_conversion_date
18799 				    ,p_CONVERSION_TYPE => g_conversion_type
18800 				    ,p_AMOUNT => OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
18801                                     ,x_CONVERSION_RATE => g_conversion_rate
18802 				    ,x_CONVERTED_AMOUNT => l_converted_price_negotiated
18803 				    );
18804        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18805         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18806          FND_LOG.string(FND_LOG.level_statement
18807                         ,l_module_name||'.OKC_CURRENCY_API.CONVERT_AMOUNT'
18808                         ,'After call to convert_amount for Price_Negotiated: x_return_status:'||l_return_status
18809                          ||'Orig Price_Negotiated='||OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
18810                          ||'Converted Price Negotiated='||l_converted_price_negotiated
18811                          );
18812         END IF;
18813        END IF;
18814 
18815 	   --Convert Price Unit--
18816          OKC_CURRENCY_API.CONVERT_AMOUNT
18817 	                            (p_FROM_CURRENCY => OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
18818 				    ,p_TO_CURRENCY => l_euro_currency
18819 				    ,p_CONVERSION_DATE => g_conversion_date
18820 				    ,p_CONVERSION_TYPE => g_conversion_type
18821 				    ,p_AMOUNT =>OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
18822                                     ,x_CONVERSION_RATE => g_conversion_rate
18823 				    ,x_CONVERTED_AMOUNT => l_converted_price_unit
18824 				    );
18825 
18826        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18827         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18828          FND_LOG.string(FND_LOG.level_statement
18829                         ,l_module_name||'.OKC_CURRENCY_API.CONVERT_AMOUNT'
18830                         ,'After call to convert_amount for Price_Unit: x_return_status:'||l_return_status
18831                          ||'Orig Price_Negotiated='||OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
18832                          ||'Converted Price Unit='||l_converted_price_unit
18833                          );
18834         END IF;
18835        END IF;
18836 
18837       /*cgopinee bugfix for bug7580778*/
18838         UPDATE OKC_K_LINES_B
18839 	SET
18840 	 PRICE_NEGOTIATED = l_converted_price_negotiated
18841 	,PRICE_UNIT = l_converted_price_unit
18842         ,CURRENCY_CODE= l_euro_currency
18843 	WHERE ID = OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
18844         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OkcB_OldOkcLineID(i);
18845 
18846         If SQL%NOTFOUND then
18847          l_return_status := FND_API.G_RET_STS_ERROR;
18848       	 RAISE G_EXCEPTION_HALT_VALIDATION;
18849 	End If;
18850 
18851      END IF;
18852     End;
18853 
18854    END IF; --End of check P_Renew_Ref_YN = 'Y'
18855 
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
18859                         ,'OKC LSE ID : '||OKCOKSLinesRecTab.OkcB_LSE_ID(i)
18860                          );
18861         END IF;
18862 
18863    ---If (LSE_ID in (1,19)--------------------------------------
18864    ---       a) Instantiate counter events
18865    ---	   b) Copy Line Notes
18866    --------------------------------------------------------------
18867    IF (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 1 OR OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 19) THEN
18868     --Instantiate Counters Events
18869 
18870      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18871       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18872          FND_LOG.string(FND_LOG.level_statement
18873                         ,l_module_name||'.instantiate_counters_events'
18874                         ,'Before call to instantiate_counters_events'
18875                          );
18876       END IF;
18877      END IF;
18878 
18879 
18880     instantiate_counters_events(
18881                      p_api_version   => p_api_version
18882 	            ,p_init_msg_list => p_init_msg_list
18883 		    ,x_return_status => l_return_status
18884 		    ,x_msg_count     => x_msg_count
18885 		    ,x_msg_data      => x_msg_data
18886 		    ,p_old_cle_id    => OKCOKSLinesRecTab.OkcB_OldOKCLineID(i)
18887 		    ,p_old_lse_id    => OKCOKSLinesRecTab.OkcB_LSE_ID(i)
18888 		    ,p_start_date    => OKCOKSLinesRecTab.OkcB_START_DATE(i)
18889 		    ,p_end_date      => OKCOKSLinesRecTab.OkcB_END_DATE(i)
18890 	            ,p_new_cle_id    => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18891                     --npalepu added on 20-mar-2006 for bug # 5102052
18892                     ,p_new_chr_id    => P_To_Chr_ID
18893                     --end npalepu
18894                     );
18895 
18896 		    IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
18897 		       RAISE G_EXCEPTION_HALT_VALIDATION;
18898 		    END IF;
18899 
18900 
18901      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18902       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18903          FND_LOG.string(FND_LOG.level_statement
18904                         ,l_module_name||'.instantiate_counters_events'
18905                         ,'After call to instantiate_counters_events x_return_status:'||l_return_status
18906                          );
18907       END IF;
18908      END IF;
18909 
18910        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18911         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18912          FND_LOG.string(FND_LOG.level_statement
18913                         ,l_module_name||'.OKS_COVERAGES_PVT.COPY_NOTES'
18914                         ,'Before call to copy_notes for line:'||OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18915                          );
18916         END IF;
18917        END IF;
18918 
18919    IF l_profile_value ='Y' THEN -- added for bugfix 14240229 by ansraj
18920     IF (p_renew_ref_yn = 'N') then --Bug
18921         --Copy Line level notes
18922         OKS_COVERAGES_PVT.COPY_NOTES(p_api_version  =>  p_api_version
18923                           	    ,p_init_msg_list =>  p_init_msg_list
18924 			            ,x_msg_count => x_msg_count
18925 			            ,x_msg_data =>  x_msg_data
18926 			            ,x_return_status =>  l_return_status
18927  			            ,p_line_id  => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
18928 			            );
18929        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18930         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18931          FND_LOG.string(FND_LOG.level_statement
18932                         ,l_module_name||'.OKS_COVERAGES_PVT.COPY_NOTES'
18933                         ,'After call to copy_notes for line: x_return_status:'||l_return_status
18934                          );
18935         END IF;
18936        END IF;
18937 
18938        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
18939         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18940               x_return_status := l_return_status;
18941               RAISE G_EXCEPTION_HALT_VALIDATION;
18942         END IF;
18943        END IF;
18944     END IF; --End of p_renew_ref_yn IF check for Copy_Notes
18945   END IF; ---- End of l_profile_value added for bugfix 14240229 by ansraj
18946 
18947    END IF; -----End of LSE_ID check in (1,19)
18948 
18949  ------------Re-compute TAX_AMOUNT for a subscription line if the line being copied is a cancelled line------------
18950        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18951          FND_LOG.string(FND_LOG.level_statement
18952                         ,l_module_name||'.OKS_TAX_UTIL_PVT.Get_Tax'
18953                         ,' LSE ID and LINE TERMINATED FLAG : '||OKCOKSLinesRecTab.OkcB_LSE_ID(i)||':'||OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG(i)
18954                          );
18955        END IF;
18956 
18957  --skuchima 12357658
18958   UPDATE OKC_K_LINES_B a
18959    SET a.CLE_ID = (select b.ID
18960        FROM OKC_K_LINES_B b
18961 	 	   WHERE
18962 		   b.ORIG_SYSTEM_ID1 = a.CLE_ID
18963 		   AND b.DNZ_CHR_ID = P_To_Chr_ID)
18964    WHERE
18965    a.DNZ_CHR_ID = P_To_Chr_ID
18966    AND id= OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
18967    AND a.CLE_ID IS NOT NULL;
18968 
18969  IF (P_Renew_Ref_YN = 'N') then
18970   Begin
18971   --npalepu added condition lse_id IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) for bug # 5660131 on 15-Nov-2006
18972    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
18973        (
18974         (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46 AND OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG(i) = 'Y')
18975         OR
18976         (OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG(i) = 'Y')
18977        )
18978       ) OR ((OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OkcB_LSE_ID(i) IN (7, 8, 9, 10, 11, 13, 18, 25, 35) AND
18979           (   OKCOKSLinesRecTab.OksB_TAX_AMOUNT(i) = 0)) ) /*modified for bug:6765336*/
18980        then
18981 
18982     /*-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
18983     --lx_rail_rec.AMOUNT := OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i); --Price Negotiated would be stored in the CANCELLED_AMOUNT column
18984 								      --for a cancelled Subscription Line
18985     */
18986 
18987      --npalepu added on 06-NOV-2006 for bug # 5636927
18988      lx_rail_rec.AMOUNT := NULL;
18989      --end npalepu
18990 
18991        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
18992         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
18993          FND_LOG.string(FND_LOG.level_statement
18994                         ,l_module_name
18995                         ,'Before call to OKS_TAX_UTIL_PVT.Get_Tax '
18996                          );
18997         END IF;
18998        END IF;
18999 
19000     OKS_TAX_UTIL_PVT.Get_Tax
19001      ( p_api_version => p_api_version
19002       ,p_init_msg_list => p_init_msg_list
19003       ,p_chr_id	=> P_To_Chr_ID
19004       ,p_cle_id  => OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
19005       ,px_rail_rec => lx_rail_rec
19006       ,x_msg_count => x_msg_count
19007       ,x_msg_data => x_msg_data
19008       ,x_return_status => l_return_status
19009      );
19010        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19011         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19012          FND_LOG.string(FND_LOG.level_statement
19013                         ,l_module_name||'.OKS_TAX_UTIL_PVT.Get_Tax'
19014                         ,'After call to Get Tax API for line: x_return_status :'||l_return_status
19015                         ||'Tax Amount '||lx_rail_rec.TAX_VALUE
19016                          );
19017         END IF;
19018        END IF;
19019 
19020 
19021       /* IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
19022         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
19023               x_return_status := l_return_status;
19024               RAISE G_EXCEPTION_HALT_VALIDATION;
19025         END IF;
19026        END IF;
19027 
19028     UPDATE OKS_K_LINES_B
19029     SET
19030      TAX_AMOUNT = lx_rail_rec.TAX_VALUE
19031     WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19032     AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19033 */  /*Commented for bug 14478599 */
19034 
19035 
19036 /*Added for bug 14478599 */
19037    IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
19038 
19039 
19040             IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
19041                   UPDATE OKS_K_LINES_B
19042                   SET TAX_INCLUSIVE_YN = 'N'
19043                   WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19044                   AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19045             ELSE
19046 
19047                UPDATE OKS_K_LINES_B
19048                SET TAX_AMOUNT = lx_rail_rec.TAX_VALUE
19049                WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19050 	       AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19051 
19052            END IF;
19053   ELSE
19054 
19055                UPDATE OKS_K_LINES_B
19056                SET TAX_AMOUNT = lx_rail_rec.TAX_VALUE
19057                WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19058 	       AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19059 
19060   END IF;
19061 /*Added for bug 14478599 */
19062     If SQL%NOTFOUND then
19063      l_return_status := FND_API.G_RET_STS_ERROR;
19064      RAISE G_EXCEPTION_HALT_VALIDATION;
19065     End If;
19066 
19067    End If;
19068   End;
19069  END IF; --End of check P_Renew_Ref_YN = 'N'
19070  ------------------------------------------------------------------------------------------------------------------
19071  -----------Generate new Locked_Price_List_Line_ID for line if a value currently exists----------
19072 
19073   IF (P_Renew_Ref_YN = 'N') THEN
19074    Begin
19075     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i) IS NOT NULL) then
19076           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19077            FND_LOG.string(FND_LOG.level_statement
19078                         ,l_module_name
19079                         ,'Before call to QP_LOCK_PRICELIST_GRP.Lock_Price'
19080                          );
19081           END IF;
19082      QP_LOCK_PRICELIST_GRP.Lock_Price(p_source_list_line_id     => OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
19083 	                             ,p_list_source_code        => 'OKS'
19084 				     ,p_orig_system_header_ref     => l_new_contract_number
19085 				     ,p_org_id 			=>   okc_context.get_okc_org_id
19086 				     ,x_locked_price_list_id       => l_locked_price_list_id
19087 				     ,x_locked_list_line_id        => l_locked_price_list_line_id
19088 				     ,x_return_status              => l_return_status
19089 				     ,x_msg_count                  => x_msg_count
19090 				     ,x_msg_data                   => x_msg_data);
19091 
19092        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19093         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19094          FND_LOG.string(FND_LOG.level_statement
19095                         ,l_module_name||'.QP_LOCK_PRICELIST_GRP.Lock_Price'
19096                         ,'After call to Lock_Price API for line: x_return_status :'||l_return_status
19097                         ||'Old Locked Price List Line ID='||OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
19098 			||'New Locked Price List Line ID='||l_locked_price_list_line_id
19099 			||'New Locked Price List ID='||l_locked_price_list_id
19100                          );
19101         END IF;
19102        END IF;
19103 
19104        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
19105         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
19106               x_return_status := l_return_status;
19107               RAISE G_EXCEPTION_HALT_VALIDATION;
19108         END IF;
19109        END IF;
19110 
19111 	UPDATE OKS_K_LINES_B
19112 	SET
19113 	 LOCKED_PRICE_LIST_ID = l_locked_price_list_id
19114 	,LOCKED_PRICE_LIST_LINE_ID = l_locked_price_list_line_id
19115 	WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19116         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19117 
19118         If SQL%NOTFOUND then
19119           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19120            FND_LOG.string(FND_LOG.level_statement
19121                         ,l_module_name||'.QP_LOCK_PRICELIST_GRP.Lock_Price'
19122                         ,'After call to QP_LOCK_PRICELIST_GRP.Lock_Price, Error in Update OKS_K_LINES_B, row not found for update'
19123                          );
19124           END IF;
19125 
19126 	  l_return_status := FND_API.G_RET_STS_ERROR;
19127 	  RAISE G_EXCEPTION_HALT_VALIDATION;
19128 	End If;
19129     End If;
19130    End;
19131   END IF; --End of P_Renew_Ref_YN check for Lock_Price call
19132 
19133  ----------------------------------------------------------------------------------------------------
19134  ------------Generate Transaction Extension for line if a value currently exists--------------------
19135 
19136    Begin
19137     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i) IS NOT NULL) then
19138 	--Generate new transaction extension id;
19139        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19140         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19141          FND_LOG.string(FND_LOG.level_statement
19142                         ,l_module_name||'.Create_Transaction_Extension'
19143                         ,'Before call to Create_Transaction_Extension for line in COPY_LINES'
19144                         ||'Old Trxn ID='||OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
19145                          );
19146         END IF;
19147        END IF;
19148 
19149  	OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
19150                                       ,P_Init_Msg_List => p_init_msg_list
19151 			              ,P_Header_ID => NULL
19152 				      ,P_Line_ID => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
19153                                       ,P_Source_Trx_Ext_ID => OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
19154 				      ,P_Cust_Acct_ID => OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
19155                                       ,P_Bill_To_Site_Use_ID => OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
19156 				      ,x_entity_id => l_trxn_extension_id
19157                                       ,x_msg_data => x_msg_data
19158                                       ,x_msg_count => x_msg_count
19159                                       ,x_return_status => l_return_status) ;
19160 
19161 
19162 
19163        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19164         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19165          FND_LOG.string(FND_LOG.level_statement
19166                         ,l_module_name||'.Create_Transaction_Extension'
19167                         ,'After call to Create_Transaction_Extension for line: x_return_status :'||l_return_status
19168                         ||'New Trxn ID='||l_trxn_extension_id
19169                          );
19170         END IF;
19171        END IF;
19172 
19173        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
19174         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
19175               x_return_status := l_return_status;
19176               RAISE G_EXCEPTION_HALT_VALIDATION;
19177         END IF;
19178        END IF;
19179 
19180         UPDATE OKS_K_LINES_B
19181         SET
19182          TRXN_EXTENSION_ID = l_trxn_extension_id
19183         WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
19184         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
19185 
19186         If SQL%NOTFOUND then
19187           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19188            FND_LOG.string(FND_LOG.level_statement
19189                         ,l_module_name||'.Create_Transaction_Extension'
19190                         ,'After call to Create_Transaction_Extension, Error in Update OKS_K_LINES_B, row not found for update'
19191                          );
19192           END IF;
19193 
19194           l_return_status := FND_API.G_RET_STS_ERROR;
19195           RAISE G_EXCEPTION_HALT_VALIDATION;
19196         End If;
19197 
19198     End If;
19199 
19200    End;
19201 
19202    -- 03-Nov-2006 hkamdar. Bug# 5623498.
19203     IF OKCOKSLinesRecTab.OkcB_LSE_ID(i) in (7,9,25) AND OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i) IS NULL THEN
19204 
19205 
19206     OPEN get_toplvl_uom(OKCOKSLinesRecTab.OkcB_OldOKCLineID(i));
19207     FETCH get_toplvl_uom INTO l_toplvl_uom_code;
19208     CLOSE get_toplvl_uom;
19209 
19210     IF l_toplvl_uom_code IS NOT NULL then
19211       UPDATE OKS_K_LINES_B
19212       SET    toplvl_uom_code = l_toplvl_uom_code
19213       WHERE  id = OKCOKSLinesRecTab.OksB_NewOksLineID(i);
19214     END IF;
19215 
19216     END IF;
19217  -- 03-Nov-2006 hkamdar. Bug# 5623498.
19218  ------------------------------------------------------------------------------------------------------------------
19219  ------------------------------------------------------------------------------------------------
19220 
19221   END LOOP;
19222  End If; --End of row count in OKCOKSLinesRecTab.OkcB_NewOKCLineID
19223 
19224   --------------------End of row by row processing------------------------
19225        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19226         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19227          FND_LOG.string(FND_LOG.level_statement
19228                         ,l_module_name
19229                         ,'End of Row by Row processing'
19230                          );
19231         END IF;
19232        END IF;
19233 
19234 
19235    If (P_Renew_Ref_YN = 'N') THEN
19236       IF p_include_cancelled_lines = 'Y' AND
19237            p_include_terminated_lines = 'Y' THEN
19238           EXIT WHEN GetOKCOKSLinesB_Copy%NOTFOUND;
19239         ELSIF p_include_cancelled_lines = 'N' AND
19240               p_include_terminated_lines = 'Y' THEN
19241           EXIT WHEN GetOKCOKSLinesB_Copy_TERMN%NOTFOUND;
19242         ELSIF p_include_cancelled_lines = 'Y' AND
19243               p_include_terminated_lines = 'N' THEN
19244           EXIT WHEN GetOKCOKSLinesB_Copy_CANCEL%NOTFOUND;
19245         ELSIF p_include_cancelled_lines = 'N' AND
19246               p_include_terminated_lines = 'N' THEN
19247           EXIT WHEN GetOKCOKSLinesB_Copy_EXCLUDE%NOTFOUND;
19248         END IF;
19249 
19250    ELSIF (P_Renew_Ref_YN = 'Y') THEN
19251      EXIT WHEN GetOKCOKSLinesB_Renew%NOTFOUND;
19252    END IF;
19253 
19254  END LOOP; --End of Bulk fetch and insert into OKC_K_LINES_B,OKS_K_LINES_B,OKC_K_ITEMS
19255 
19256        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19257         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19258          FND_LOG.string(FND_LOG.level_statement
19259                         ,l_module_name
19260                         ,'After BULK FETCH and BULK INSERT into OKC_K_LINES_B,OKS_K_LINES_B,OKC_K_ITEMS'
19261                          );
19262         END IF;
19263        END IF;
19264 
19265 
19266     IF GetOKCOKSLinesB_Copy%ISOPEN THEN
19267       CLOSE GetOKCOKSLinesB_Copy;
19268     ELSIF GetOKCOKSLinesB_Copy_TERMN%ISOPEN THEN
19269       CLOSE GetOKCOKSLinesB_Copy_TERMN;
19270     ELSIF GetOKCOKSLinesB_Copy_CANCEL%ISOPEN THEN
19271       CLOSE GetOKCOKSLinesB_Copy_CANCEL;
19272     ELSIF GetOKCOKSLinesB_Copy_EXCLUDE%ISOPEN THEN
19273       CLOSE GetOKCOKSLinesB_Copy_EXCLUDE;
19274     ELSIF GetOKCOKSLinesB_Renew%ISOPEN THEN
19275       CLOSE GetOKCOKSLinesB_Renew;
19276     END IF;
19277 
19278  ----------------------------------------------------------------------------
19279  -- Update of OKC_K_LINES_B
19280  --   i)  CLE_ID on OKC_K_LINES_B for sublines
19281  --  ii) PRICE_NEGOTIATED on OKC_K_LINES_B for toplines
19282  --
19283  -- Update of OKS_K_LINES_B
19284  -- iii) COVERAGE_ID on OKS_K_LINES_B for toplines with STANDARD_COV_YN = 'N'
19285  --  iv) TAX_AMOUNT on OKS_K_LINES_B for all toplines
19286 
19287   Begin
19288 
19289   /* UPDATE OKC_K_LINES_B a
19290    SET a.CLE_ID = (select b.ID
19291   		   FROM OKC_K_LINES_B b
19292 		   WHERE
19293 		   b.ORIG_SYSTEM_ID1 = a.CLE_ID
19294 		   AND b.DNZ_CHR_ID = P_To_Chr_ID)
19295    WHERE
19296    a.DNZ_CHR_ID = P_To_Chr_ID
19297    AND a.CLE_ID IS NOT NULL; */ --skuchima 12357658
19298 
19299    UPDATE OKC_K_LINES_B a
19300    SET a.PRICE_NEGOTIATED = nvl((select sum(b.PRICE_NEGOTIATED)
19301                              from OKC_K_LINES_B b
19302 			     where b.CLE_ID = a.ID
19303 			     AND b.DNZ_CHR_ID = P_To_Chr_ID
19304 			     AND b.DATE_CANCELLED IS NULL),0) --Cancelled sublines shouldn't be included in sum. Nvl added for 12636704
19305    WHERE
19306    a.DNZ_CHR_ID = P_To_Chr_ID
19307    AND a.CLE_ID IS NULL
19308    AND a.LSE_ID <> 46; -- Subscription Lines do not have sublines. So they shouldnt be updated.
19309 
19310    UPDATE OKS_K_LINES_B a
19311    SET a.COVERAGE_ID = (select b.ID
19312   			FROM OKC_K_LINES_B b
19313 			WHERE
19314 			b.CLE_ID = a.CLE_ID
19315 			AND b.DNZ_CHR_ID = P_To_Chr_ID
19316 			AND b.LSE_ID in (2,20))
19317    WHERE a.DNZ_CHR_ID = P_To_Chr_ID
19318    AND a.CLE_ID in (select c.ID from OKC_K_LINES_B c
19319                     where c.DNZ_CHR_ID = P_To_Chr_ID
19320 		    and c.LSE_ID in (1,19))
19321    AND a.STANDARD_COV_YN = 'N';
19322 
19323    UPDATE OKS_K_LINES_B a
19324    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
19325                        FROM
19326 		       OKS_K_LINES_B b
19327 		      ,OKC_K_LINES_B c
19328 		       WHERE
19329 		       c.ID = b.CLE_ID
19330 		       AND c.cle_id = a.cle_id
19331 		       AND c.DATE_CANCELLED IS NULL) --Cancelled sublines shouldnt be included in sum
19332    WHERE a.dnz_chr_id = P_To_Chr_ID
19333    and a.CLE_ID = (select b.id
19334   		   FROM
19335 		   OKC_K_LINES_B b
19336 		   WHERE b.cle_id is NULL
19337 		   AND b.id = a.cle_id
19338 		   AND b.LSE_ID <> 46); --Subscription Lines do not have sublines. So they shouldnt be updated.
19339 
19340 
19341   -- hkamdar 05-Oct-2006. Bug# 5361663.
19342   -- Updating price_uom to NULL for Covered levels - Customer, Party and Site.
19343 
19344    Update OKS_K_LINES_B
19345    Set    PRICE_UOM = NULL
19346    WHERE  CLE_ID IN (SELECT ID FROM OKC_K_LINES_B WHERE DNZ_CHR_ID = P_To_Chr_ID
19347                           AND LSE_ID IN (8,10,35));
19348   -- End hkamdar 05-Oct-2006. Bug# 5361663.
19349 
19350   End;
19351  ---------------------------------------------------------------------------------
19352  --------------------------------------------------------------------------------
19353  --Update of OKC_K_HEADERS_B.ESTIMATED_AMOUNT and OKS_K_HEADERS_B.TAX_AMOUNT to equal
19354  --sum of OKC_K_LINES_B.PRICE_NEGOTIATED of all top lines and OKS_K_LINES_B.TAX_AMOUNT
19355  --of all top lines respectively
19356   Begin
19357    UPDATE OKC_K_HEADERS_B a
19358    SET a.ESTIMATED_AMOUNT = (select sum(b.PRICE_NEGOTIATED)
19359                              FROM OKC_K_LINES_B b
19360 			     where b.DNZ_CHR_ID = a.ID
19361 			     and b.CLE_ID IS NULL
19362                              AND b.DATE_CANCELLED IS NULL) --Cancelled toplines shouldn't be included in sum.
19363    WHERE a.ID = P_To_Chr_ID;
19364 
19365    UPDATE OKS_K_HEADERS_B a
19366    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
19367    		       FROM
19368 		       OKS_K_LINES_B b
19369 		      ,OKC_K_LINES_B c
19370 		       where b.DNZ_CHR_ID = a.CHR_ID
19371 		       and b.CLE_ID = c.ID
19372 		       and c.CLE_ID IS NULL
19373 		       and c.DATE_CANCELLED IS NULL) --Cancelled toplines shouldn't be included in sum
19374    WHERE a.CHR_ID = P_To_Chr_ID;
19375 
19376   End;
19377  --------------------------------------------------------------------------------
19378 
19379  -------------Generate new line numbers in OKC_K_LINES_B for newly created lines-----
19380  Begin
19381  /*cgopinee bugfix for bug8826746*/
19382  /* Check for existance of terminated lines-sublines in the contract which is being renewed.*/
19383  IF  (P_Renew_Ref_YN ='Y') THEN
19384     OPEN terminatedLSLines;
19385     FETCH terminatedLSLines INTO l_termLSLineCount;
19386     CLOSE terminatedLSLines;
19387  END IF;
19388 
19389   /* Line numbers should not be generated for renewal flow. They shall be generated only
19390   when there exists terminated lines or sublines*/
19391   IF  (P_Renew_Ref_YN<>'Y' OR l_termLSLineCount >0) THEN
19392     GenerateNewLineNumber(P_To_Chr_ID => P_To_Chr_ID
19393                        ,P_Partial_Copy_YN => 'N'
19394                        ,x_return_status => l_return_Status);
19395 
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||'.GenerateNewLineNumber'
19400                         ,'After call to GenerateNewLineNumber for line: x_return_status :'||l_return_status
19401                          );
19402         END IF;
19403        END IF;
19404   END IF;
19405 
19406       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19407 	     RAISE G_EXCEPTION_HALT_VALIDATION;
19408       End If;
19409  End;
19410  ------------------------------------------------------------------------------------
19411 
19412  ------------Copy of Subscription Schedules for all lines in target contract---------
19413 
19414  Begin
19415   If (P_Renew_Ref_YN = 'N') then
19416 
19417       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19418         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19419          FND_LOG.string(FND_LOG.level_statement
19420                         ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst for all Subscription Lines'
19421                         ,'Before call to OKS_SETUP_UTIL_PUB.copy_subscr_inst for all Subscription Lines'
19422 			||to_char(sysdate,'DD/MM/YYYY HH:MI:SS')
19423                          );
19424         END IF;
19425        END IF;
19426 
19427      OKS_SETUP_UTIL_PUB.copy_subscr_inst(p_new_chr_id => P_To_Chr_ID
19428 	               			,p_cle_id => NULL
19429 					,p_intent => 'COPY'
19430 				        ,x_return_status => l_return_status);
19431 
19432        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19433         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19434          FND_LOG.string(FND_LOG.level_statement
19435                         ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst'
19436                         ,'After call to OKS_SETUP_UTIL_PUB.copy_subscr_inst: x_return_status:'||l_return_status
19437 			 ||to_char(sysdate,'DD/MM/YYYY HH:MI:SS')
19438                          ||' '||SQLERRM
19439                          );
19440         END IF;
19441        END IF;
19442 
19443      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19444          RAISE G_EXCEPTION_HALT_VALIDATION;
19445      End If;
19446   End If;
19447  End;
19448 
19449  ------------------------------------------------------------------------------------
19450  ------------Copy of OKC_K_LINES_TL--------------------------------------------------
19451  Begin
19452        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19453         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19454          FND_LOG.string(FND_LOG.level_statement
19455                         ,l_module_name||'.copy_okc_k_lines_tl'
19456                         ,'Before call to copy_okc_k_lines_tl'
19457                          );
19458         END IF;
19459        END IF;
19460    copy_okc_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
19461                     ,P_To_Chr_ID   => P_To_Chr_ID
19462 		    ,P_Partial_Copy_YN => 'N'
19463                     ,x_return_status => l_return_status);
19464 
19465        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19466         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19467          FND_LOG.string(FND_LOG.level_statement
19468                         ,l_module_name||'.copy_okc_k_lines_tl'
19469                         ,'After call to copy_okc_k_lines_tl: x_return_status:'||l_return_status
19470                          ||' '||SQLERRM
19471                          );
19472         END IF;
19473        END IF;
19474 
19475      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19476          RAISE G_EXCEPTION_HALT_VALIDATION;
19477      End If;
19478  End;
19479  ------------------------------------------------------------------------------------
19480  -----------Copy of OKC_PARTY_ROLES_B--------------------------------
19481  Begin
19482        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19483         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19484          FND_LOG.string(FND_LOG.level_statement
19485                         ,l_module_name||'.copy_okc_k_party_roles_b'
19486                         ,'Before call to copy_okc_k_party_roles_b'
19487                          );
19488         END IF;
19489        END IF;
19490 
19491   copy_okc_k_party_roles_b(P_From_Chr_ID => P_From_Chr_ID
19492                         ,P_To_Chr_ID   => P_To_Chr_ID
19493                         ,P_Partial_Copy_YN => 'N'
19494                         ,x_return_status => l_return_status);
19495 
19496        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19497         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19498          FND_LOG.string(FND_LOG.level_statement
19499                         ,l_module_name||'.copy_okc_k_party_roles_b'
19500                         ,'After call to copy_okc_k_party_roles_b: x_return_status:'||l_return_status
19501                          ||' '||SQLERRM
19502                          );
19503         END IF;
19504        END IF;
19505 
19506      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19507          RAISE G_EXCEPTION_HALT_VALIDATION;
19508      End If;
19509  End;
19510 ---------------------------------------------------------------------
19511 ------------Copy of OKC_PARTY_ROLES_TL------------------------------
19512  Begin
19513        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19514         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19515          FND_LOG.string(FND_LOG.level_statement
19516                         ,l_module_name||'.copy_okc_k_party_roles_tl'
19517                         ,'Before call to copy_okc_k_party_roles_tl'
19518                          );
19519         END IF;
19520        END IF;
19521   copy_okc_k_party_roles_tl(P_From_Chr_ID => P_From_Chr_ID
19522                         ,P_To_Chr_ID   => P_To_Chr_ID
19523                         ,P_Partial_Copy_YN => 'N'
19524                         ,x_return_status => l_return_status);
19525 
19526        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19527         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19528          FND_LOG.string(FND_LOG.level_statement
19529                         ,l_module_name||'.copy_okc_k_party_roles_tl'
19530                         ,'After call to copy_okc_party_roles_tl: x_return_status:'||l_return_status
19531                          ||' '||SQLERRM
19532                          );
19533         END IF;
19534        END IF;
19535 
19536      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19537          RAISE G_EXCEPTION_HALT_VALIDATION;
19538      End If;
19539  End;
19540 ----------------------------------------------------------------------
19541 ------------Copy of OKC_CONTACTS--------------------------------------
19542  Begin
19543        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19544         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19545          FND_LOG.string(FND_LOG.level_statement
19546                         ,l_module_name||'.copy_okc_contacts'
19547                         ,'Before call to copy_okc_contacts'
19548                          );
19549         END IF;
19550        END IF;
19551   copy_okc_contacts(P_From_Chr_ID => P_From_Chr_ID
19552                         ,P_To_Chr_ID   => P_To_Chr_ID
19553                         ,P_Partial_Copy_YN => 'N'
19554                         ,x_return_status => l_return_status);
19555 
19556        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19557         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19558          FND_LOG.string(FND_LOG.level_statement
19559                         ,l_module_name||'.copy_okc_contacts'
19560                         ,'After call to copy_okc_contacts: x_return_status:'||l_return_status
19561                          ||' '||SQLERRM
19562                          );
19563         END IF;
19564        END IF;
19565      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19566          RAISE G_EXCEPTION_HALT_VALIDATION;
19567      End If;
19568  End;
19569 -------------------------------------------------------------------------
19570 ------------Copy of OKC_PRICE_ATT_VALUES-----------------------------
19571  Begin
19572        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19573         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19574          FND_LOG.string(FND_LOG.level_statement
19575                         ,l_module_name||'.copy_okc_price_att_values'
19576                         ,'Before call to copy_okc_price_att_values'
19577                          );
19578         END IF;
19579        END IF;
19580   copy_okc_price_att_values(P_From_Chr_ID => P_From_Chr_ID
19581                         ,P_To_Chr_ID   => P_To_Chr_ID
19582                         ,P_Partial_Copy_YN => 'N'
19583                         ,x_return_status => l_return_status);
19584 
19585        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19586         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19587          FND_LOG.string(FND_LOG.level_statement
19588                         ,l_module_name||'.copy_okc_price_att_values'
19589                         ,'After call to copy_okc_price_att_values: x_return_status:'||l_return_status
19590                          ||' '||SQLERRM
19591                          );
19592         END IF;
19593        END IF;
19594 
19595      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19596          RAISE G_EXCEPTION_HALT_VALIDATION;
19597      End If;
19598  End;
19599 ---------------------------------------------------------------------
19600  -----------Copy of OKC_PRICE_ADJUSTMENTS---------------------------
19601  Begin
19602        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19603         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19604          FND_LOG.string(FND_LOG.level_statement
19605                         ,l_module_name||'.copy_okc_price_adjustments'
19606                         ,'Before call to copy_okc_price_adjustments'
19607                          );
19608         END IF;
19609        END IF;
19610 
19611    copy_okc_price_adjustments(P_From_Chr_ID => P_From_Chr_ID
19612                         ,P_To_Chr_ID   => P_To_Chr_ID
19613                         ,P_Partial_Copy_YN => 'N'
19614                         ,x_return_status => l_return_status);
19615 
19616        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19617         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19618          FND_LOG.string(FND_LOG.level_statement
19619                         ,l_module_name||'.copy_okc_price_adjustments'
19620                         ,'After call to copy_okc_price_adjustments: x_return_status:'||l_return_status
19621                          ||' '||SQLERRM
19622                          );
19623         END IF;
19624        END IF;
19625 
19626      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19627          RAISE G_EXCEPTION_HALT_VALIDATION;
19628      End If;
19629  End;
19630 --------------------------------------------------------------------
19631 ------------Copy of OKS_K_LINES_TL---------------------------------
19632  Begin
19633        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19634         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19635          FND_LOG.string(FND_LOG.level_statement
19636                         ,l_module_name||'.copy_oks_k_lines_tl'
19637                         ,'Before call to copy_oks_k_lines_tl'
19638                          );
19639         END IF;
19640        END IF;
19641   copy_oks_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
19642                         ,P_To_Chr_ID   => P_To_Chr_ID
19643                         ,P_Partial_Copy_YN => 'N'
19644                         ,x_return_status => l_return_status);
19645 
19646        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19647         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19648          FND_LOG.string(FND_LOG.level_statement
19649                         ,l_module_name||'.copy_oks_k_lines_tl'
19650                         ,'After call to copy_oks_k_lines_tl: x_return_status:'||l_return_status
19651                          ||' '||SQLERRM
19652                          );
19653         END IF;
19654        END IF;
19655 
19656      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19657          RAISE G_EXCEPTION_HALT_VALIDATION;
19658      End If;
19659  End;
19660 ---------------------------------------------------------------------
19661 ------------Copy of OKS_REV_DISTRIBUTIONS--------------------------
19662  Begin
19663        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19664         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19665          FND_LOG.string(FND_LOG.level_statement
19666                         ,l_module_name||'.copy_oks_rev_distributions'
19667                         ,'Before call to copy_oks_rev_distributions'
19668                          );
19669         END IF;
19670        END IF;
19671 
19672   copy_oks_rev_distributions(P_From_Chr_ID => P_From_Chr_ID
19673                         ,P_To_Chr_ID   => P_To_Chr_ID
19674                         ,P_Partial_Copy_YN => 'N'
19675                         ,x_return_status => l_return_status);
19676 
19677        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19678         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19679          FND_LOG.string(FND_LOG.level_statement
19680                         ,l_module_name||'.copy_oks_rev_distributions'
19681                         ,'After call to copy_oks_rev_distributions: x_return_status:'||l_return_status
19682                          ||' '||SQLERRM
19683                          );
19684         END IF;
19685        END IF;
19686 
19687      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19688          RAISE G_EXCEPTION_HALT_VALIDATION;
19689      End If;
19690  End;
19691 ---------------------------------------------------------------------
19692 -------------Copy of OKS_QUALIFIERS----------------------------------
19693  Begin
19694        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19695         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19696          FND_LOG.string(FND_LOG.level_statement
19697                         ,l_module_name||'.copy_oks_qualifiers'
19698                         ,'Before call to copy_oks_qualifiers'
19699                          );
19700         END IF;
19701        END IF;
19702 
19703   copy_oks_qualifiers(P_From_Chr_ID => P_From_Chr_ID
19704                         ,P_To_Chr_ID   => P_To_Chr_ID
19705                         ,P_Partial_Copy_YN => 'N'
19706                         ,x_return_status => l_return_status);
19707 
19708        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19709         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19710          FND_LOG.string(FND_LOG.level_statement
19711                         ,l_module_name||'.copy_oks_qualifiers'
19712                         ,'After call to copy_oks_qualifiers: x_return_status:'||l_return_status
19713                          ||' '||SQLERRM
19714                          );
19715         END IF;
19716        END IF;
19717 
19718      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19719          RAISE G_EXCEPTION_HALT_VALIDATION;
19720      End If;
19721  End;
19722 ----------------------------------------------------------------------
19723 
19724 --------------Copy of OKS_K_SALES_CREDITS-------------------------------
19725    Begin
19726    copy_oks_k_sales_credits(P_From_Chr_ID => P_From_Chr_ID
19727                            ,P_To_Chr_ID   => P_To_Chr_ID
19728                            ,P_Partial_Copy_YN => 'N'
19729                            ,x_return_status => l_return_status);
19730 
19731      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19732          RAISE G_EXCEPTION_HALT_VALIDATION;
19733      End If;
19734    End;
19735  ---------------------------------------------------------------------
19736 
19737 ----Create Operation Lines in case when P_Renew_Ref_YN = 'Y'----------
19738 
19739   If (P_Renew_Ref_YN = 'Y') then
19740    Begin
19741        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19742         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19743          FND_LOG.string(FND_LOG.level_statement
19744                         ,l_module_name||'.copy_okc_operation_lines'
19745                         ,'Before call to copy_okc_operation_lines'
19746                          );
19747         END IF;
19748        END IF;
19749 
19750     copy_okc_operation_lines(P_From_Chr_ID => P_From_Chr_ID
19751                             ,P_To_Chr_ID => P_To_Chr_ID
19752                             ,x_return_status => l_return_status);
19753 
19754        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19755         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19756          FND_LOG.string(FND_LOG.level_statement
19757                         ,l_module_name||'.copy_okc_operation_lines'
19758                         ,'After call to copy_okc_operation_lines: x_return_status:'||l_return_status
19759                          ||' '||SQLERRM
19760                          );
19761         END IF;
19762        END IF;
19763 
19764      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19765          RAISE G_EXCEPTION_HALT_VALIDATION;
19766      End If;
19767 
19768    End;
19769   End If;
19770 ----------------------------------------------------------------------
19771 ---------------------------------------------------------
19772 --The following entities are copied only for regular Copy of a Contract, not during
19773 --Renewal. These get regenerated during post-renewal process
19774 ---------------------------------------------------------
19775        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19776          FND_LOG.string(FND_LOG.level_statement
19777                         ,l_module_name||'.copy_lines'
19778                         ,'Template YN:'||IsSourceContractTemplate(P_From_Chr_ID => P_From_Chr_ID)
19779                         ||', l_SrcContractPPSetupExists_YN :'||l_SrcContractPPSetupExists_YN
19780 			||', l_GCDPPSetupExists_YN:'||l_GCDPPSetupExists_YN
19781                          );
19782        END IF;
19783 
19784  IF (P_Renew_Ref_YN = 'N') then
19785 
19786   --------------Update Invoice Rule ID and Accounting Rule ID on all copied top lines (if NULL)----
19787   --------------with that on header. This routine at the same populates the Package variables for
19788   --------------Header Billing attributes
19789 
19790   update_line_inv_and_acct_rule(P_To_Chr_ID => P_To_Chr_ID
19791  			       ,P_Partial_Copy_YN => 'N'
19792 			       ,x_return_status => l_return_status
19793                                );
19794 
19795   -------------------------------------------------------------------------------------------------
19796 
19797   --Copy Billing schedules only if source contract is not a template. This is because
19798   --update_template_contract anyway deletes and recreates the schedules as per dates
19799   --specified by user.
19800 
19801 --  IF (IsSourceContractTemplate(P_From_Chr_ID => P_From_Chr_ID) = 'N') THEN
19802    IF (
19803        (l_SrcContractPPSetupExists_YN = 'Y') OR
19804        (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'N')
19805      ) THEN -- Bulk Copy of Billing Schedule can be done from Source
19806 
19807   --================Start of Billing Schedule copy for Header and Lines==========
19808 
19809    -------------Copy of OKS_STREAM_LEVELS_B---------------------------
19810    Begin
19811        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19812         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19813          FND_LOG.string(FND_LOG.level_statement
19814                         ,l_module_name||'.copy_oks_stream_levels_b'
19815                         ,'Before call to copy_oks_stream_levels_b'
19816                          );
19817         END IF;
19818        END IF;
19819 
19820    copy_oks_stream_levels_b(P_From_Chr_ID => P_From_Chr_ID
19821                            ,P_To_Chr_ID   => P_To_Chr_ID
19822                            ,P_Partial_Copy_YN => 'N'
19823                            ,x_return_status => l_return_status);
19824 
19825        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19826         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19827          FND_LOG.string(FND_LOG.level_statement
19828                         ,l_module_name||'.copy_oks_stream_levels_b'
19829                         ,'After call to copy_oks_stream_levels_b: x_return_status:'||l_return_status
19830                          ||' '||SQLERRM
19831                          );
19832         END IF;
19833        END IF;
19834 
19835      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19836          RAISE G_EXCEPTION_HALT_VALIDATION;
19837      End If;
19838    End;
19839   -------------------------------------------------------------------
19840    -------------Copy of OKS_LEVEL_ELEMENTS---------------------------
19841    Begin
19842        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19843         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19844          FND_LOG.string(FND_LOG.level_statement
19845                         ,l_module_name||'.copy_oks_level_elements'
19846                         ,'Before call to copy_oks_level_elements'
19847                          );
19848         END IF;
19849        END IF;
19850 
19851    copy_oks_level_elements(P_From_Chr_ID => P_From_Chr_ID
19852                           ,P_To_Chr_ID   => P_To_Chr_ID
19853                           ,P_Partial_Copy_YN => 'N'
19854                           ,x_return_status => l_return_status);
19855 
19856        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19857         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19858          FND_LOG.string(FND_LOG.level_statement
19859                         ,l_module_name||'.copy_oks_level_elements'
19860                         ,'After call to copy_oks_level_elements: x_return_status:'||l_return_status
19861                          ||' '||SQLERRM
19862                          );
19863         END IF;
19864        END IF;
19865 
19866      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19867          RAISE G_EXCEPTION_HALT_VALIDATION;
19868      End If;
19869    End;
19870   --------------------------------------------------------------------
19871 
19872   --------------Copy of Billing schedules for Skipped Lines-----------
19873    Begin
19874       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19875        IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19876         FND_LOG.string(FND_LOG.level_statement
19877                        ,l_module_name||'.copy_bsch_for_SkippedLines'
19878                        ,'Before call to copy_bsch_for_SkippedLines'
19879                         );
19880        END IF;
19881       END IF;
19882 
19883 
19884 
19885    copy_bsch_for_SkippedLines(P_To_Chr_ID  => P_To_Chr_ID
19886 			     ,P_From_Chr_ID => P_From_Chr_ID
19887 			     ,P_Partial_Copy_YN => 'N'
19888                              ,p_init_msg_list => p_init_msg_list
19889                              ,x_return_status => l_return_status
19890                              ,x_msg_count => x_msg_count
19891                              ,x_msg_data => x_msg_data);
19892 
19893        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19894         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19895          FND_LOG.string(FND_LOG.level_statement
19896                         ,l_module_name||'.copy_bsch_for_SkippedLines'
19897                         ,'After call to copy_bsch_for_SkippedLines: x_return_status:'||l_return_status
19898                          ||' '||SQLERRM
19899                          );
19900         END IF;
19901        END IF;
19902 
19903 
19904 
19905      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19906          RAISE G_EXCEPTION_HALT_VALIDATION;
19907      End If;
19908 
19909    End;
19910   --------------------------------------------------------------------
19911 
19912 
19913    ELSIF (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'Y') THEN
19914        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19915         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19916          FND_LOG.string(FND_LOG.level_statement
19917                         ,l_module_name||'.create_bsch_using_PPSetup'
19918                         ,'Before call to create_bsch_using_PPSetup'
19919                          );
19920         END IF;
19921        END IF;
19922     --Create Billing Schedule using Partial Period Setup in GCD----
19923     create_bsch_using_PPSetup(P_To_Chr_ID        => P_To_Chr_ID
19924                              ,P_From_Chr_ID      => P_From_Chr_ID
19925                              ,P_Partial_Copy_YN  => 'N'
19926                              ,p_init_msg_list    => p_init_msg_list
19927                              ,x_return_status    => l_return_status
19928                              ,x_msg_count   	 => x_msg_count
19929                              ,x_msg_data         => x_msg_data);
19930 
19931        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
19932         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
19933          FND_LOG.string(FND_LOG.level_statement
19934                         ,l_module_name||'.create_bsch_using_PPSetup'
19935                         ,'After call to create_bsch_using_PPSetup: x_return_status:'||l_return_status
19936                          ||' '||SQLERRM
19937                          );
19938         END IF;
19939        END IF;
19940      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19941          RAISE G_EXCEPTION_HALT_VALIDATION;
19942      End If;
19943 
19944 
19945    END IF; --End of IF Check for l_SrcContractPPSetupExists_YN = 'Y'
19946 --  END IF; --End of IsSourceContractTemplate = 'N' check
19947 
19948   --================End of Billing Schedule copy===============================
19949 
19950    --================Start of Coverage Schedule copy for Lines==================
19951 
19952    -------------Copy of OKS_COVERAGE_TIMEZONES------------------------
19953    Begin
19954    copy_oks_coverage_timezones(P_From_Chr_ID => P_From_Chr_ID
19955                               ,P_To_Chr_ID   => P_To_Chr_ID
19956                               ,P_Partial_Copy_YN => 'N'
19957                               ,x_return_status => l_return_status);
19958      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19959          RAISE G_EXCEPTION_HALT_VALIDATION;
19960      End If;
19961    End;
19962   ---------------------------------------------------------------------
19963 
19964    -------------Copy of OKS_COVERAGE_TIMES-----------------------------
19965    Begin
19966    copy_oks_coverage_times(P_From_Chr_ID => P_From_Chr_ID
19967                               ,P_To_Chr_ID   => P_To_Chr_ID
19968                               ,P_Partial_Copy_YN => 'N'
19969                               ,x_return_status => l_return_status);
19970      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19971          RAISE G_EXCEPTION_HALT_VALIDATION;
19972      End If;
19973    End;
19974   ---------------------------------------------------------------------
19975   --=======================End of Coverage Schedule copy==========================
19976 
19977 
19978   --=======================Start of PM Schedule Copy for Line=====================
19979 
19980    -------------Copy of OKS_PM_ACTIVITIES-----------------------------
19981    Begin
19982    copy_oks_pm_activities(P_From_Chr_ID => P_From_Chr_ID
19983                          ,P_To_Chr_ID   => P_To_Chr_ID
19984                          ,P_Partial_Copy_YN => 'N'
19985                          ,x_return_status => l_return_status);
19986 
19987      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
19988          RAISE G_EXCEPTION_HALT_VALIDATION;
19989      End If;
19990    End;
19991   ---------------------------------------------------------------------
19992   --------------Copy of OKS_PM_STREAM_LEVELS---------------------------
19993    Begin
19994    copy_oks_pm_stream_levels(P_From_Chr_ID => P_From_Chr_ID
19995                          ,P_To_Chr_ID   => P_To_Chr_ID
19996                          ,P_Partial_Copy_YN => 'N'
19997                          ,x_return_status => l_return_status);
19998 
19999      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
20000          RAISE G_EXCEPTION_HALT_VALIDATION;
20001      End If;
20002    End;
20003   ---------------------------------------------------------------------
20004   -------------Copy of OKS_PM_SCHEDULES----------------------------------
20005    Begin
20006    copy_oks_pm_schedules(P_From_Chr_ID => P_From_Chr_ID
20007                          ,P_To_Chr_ID   => P_To_Chr_ID
20008                          ,P_Partial_Copy_YN => 'N'
20009                          ,x_return_status => l_return_status);
20010 
20011      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
20012          RAISE G_EXCEPTION_HALT_VALIDATION;
20013      End If;
20014    End;
20015   ---------------------------------------------------------------------
20016 
20017  --=====================End of PM Schedule Copy=================================
20018 
20019 
20020  --=====================Start of Action Times copy for Lines====================
20021 
20022   --------------Copy of OKS_ACTION_TIME_TYPES-------------------------
20023    Begin
20024    copy_oks_action_time_types(P_From_Chr_ID => P_From_Chr_ID
20025                              ,P_To_Chr_ID   => P_To_Chr_ID
20026                              ,P_Partial_Copy_YN => 'N'
20027                              ,x_return_status => l_return_status);
20028 
20029      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
20030          RAISE G_EXCEPTION_HALT_VALIDATION;
20031      End If;
20032    End;
20033   ---------------------------------------------------------------------
20034   --------------Copy of OKS_ACTION_TIMES-------------------------------
20035    Begin
20036    copy_oks_action_times(P_From_Chr_ID => P_From_Chr_ID
20037                         ,P_To_Chr_ID   => P_To_Chr_ID
20038                         ,P_Partial_Copy_YN => 'N'
20039                         ,x_return_status => l_return_status);
20040 
20041      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
20042          RAISE G_EXCEPTION_HALT_VALIDATION;
20043      End If;
20044    End;
20045   ---------------------------------------------------------------------
20046 
20047  --=====================End of Action Times copy================================
20048 
20049  --=====================Start of BillRate Schedule copy for Lines===============
20050 
20051   --------------Copy of OKS_BILLRATE_SCHEDULES-------------------------------
20052    Begin
20053    copy_oks_billrate_schedules(P_From_Chr_ID => P_From_Chr_ID
20054                               ,P_To_Chr_ID   => P_To_Chr_ID
20055                               ,P_Partial_Copy_YN => 'N'
20056                               ,x_return_status => l_return_status);
20057 
20058      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
20059          RAISE G_EXCEPTION_HALT_VALIDATION;
20060      End If;
20061    End;
20062   ---------------------------------------------------------------------
20063 
20064  --=====================End of BillRate Schedule copy============================
20065 
20066 
20067     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
20068       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
20069          FND_LOG.string(FND_LOG.level_procedure
20070                         ,l_module_name||'.End'
20071                         ,',x_return_status='||x_return_status
20072                          );
20073       END IF;
20074     END IF;
20075   END IF; --End of check of P_Renew_Ref_YN='N'
20076 
20077  EXCEPTION
20078   WHEN G_EXCEPTION_HALT_VALIDATION then
20079 
20080       IF GetOKCOKSLinesB_Copy%ISOPEN THEN
20081         CLOSE GetOKCOKSLinesB_Copy;
20082       ELSIF GetOKCOKSLinesB_Copy_TERMN%ISOPEN THEN
20083         CLOSE GetOKCOKSLinesB_Copy_TERMN;
20084       ELSIF GetOKCOKSLinesB_Copy_CANCEL%ISOPEN THEN
20085         CLOSE GetOKCOKSLinesB_Copy_CANCEL;
20086       ELSIF GetOKCOKSLinesB_Copy_EXCLUDE%ISOPEN THEN
20087         CLOSE GetOKCOKSLinesB_Copy_EXCLUDE;
20088       ELSIF GetOKCOKSLinesB_Renew%ISOPEN THEN
20089         CLOSE GetOKCOKSLinesB_Renew;
20090       END IF;
20091 
20092     x_return_status := l_return_status;
20093       IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) then
20094          FND_LOG.string(FND_LOG.level_procedure
20095                         ,l_module_name||'.EXCEPTION'
20096                         ,',x_return_status='||x_return_status
20097                         ||'Error Msg='||SQLERRM
20098                          );
20099       END IF;
20100     OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
20101     RETURN;
20102   WHEN OTHERS THEN
20103 
20104       IF GetOKCOKSLinesB_Copy%ISOPEN THEN
20105         CLOSE GetOKCOKSLinesB_Copy;
20106       ELSIF GetOKCOKSLinesB_Copy_TERMN%ISOPEN THEN
20107         CLOSE GetOKCOKSLinesB_Copy_TERMN;
20108       ELSIF GetOKCOKSLinesB_Copy_CANCEL%ISOPEN THEN
20109         CLOSE GetOKCOKSLinesB_Copy_CANCEL;
20110       ELSIF GetOKCOKSLinesB_Copy_EXCLUDE%ISOPEN THEN
20111         CLOSE GetOKCOKSLinesB_Copy_EXCLUDE;
20112       ELSIF GetOKCOKSLinesB_Renew%ISOPEN THEN
20113         CLOSE GetOKCOKSLinesB_Renew;
20114       END IF;
20115     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20116     FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
20117     RAISE;
20118 
20119 END copy_lines;
20120 --=======================================End COPY_LINES=====================================
20121 
20122 
20123 /*======================================================================================
20124 --Copy_Line_Components: This procedure copies all lines that are selected by the user for Copy in the Copy UI
20125               and their details. This pricedure is used in COPY_COMPONENTS API.
20126 		    Parameters:
20127 		      P_From_Chr_ID: Header ID of the Source Contract
20128 		      P_To_Chr_ID  : Header ID of the Target Contract
20129 		      P_Target_Contract_New_YN: Flag to indicate if the Target Contract was just created as part of Copy
20130 	                          or was already present and only lines were copied to an existing target
20131 				  contract. Value for this parameter will be 'Y' if source contract is being
20132 				  copied to a new contract, 'N' if the copy is happening into an existing
20133 				  contract.  This parameter would be initialized in this API to 'N' and get set
20134 			          to 'Y' immediately after the call to Copy_Contract_Header.
20135                      		  This parameter would be used in copy of:
20136 					    Price Attribute Values
20137 					    Price Adjustments
20138 					    Sales Credits
20139 					    Billing Schedules.
20140 				  If value is 'N' these entities would be copied only for Lines
20141 				  else they would be copied for both Header and Lines.
20142 ===============================================================================*/
20143 PROCEDURE copy_line_components(
20144       p_api_version      IN NUMBER
20145      ,p_init_msg_list    IN VARCHAR2 DEFAULT OKC_API.G_FALSE
20146      ,x_return_status    OUT NOCOPY VARCHAR2
20147      ,x_msg_count        OUT NOCOPY NUMBER
20148      ,x_msg_data         OUT NOCOPY VARCHAR2
20149      ,P_From_Chr_ID      IN NUMBER
20150      ,P_To_Chr_ID        IN NUMBER
20151      ,P_Target_Contract_New_YN IN VARCHAR2
20152      ,P_Lines_Tbl        IN api_lines_tbl
20153      ,p_change_status_YN                IN VARCHAR2 --Added for Update_Service requirement(Bug 4747648)
20154                                                            --If 'Y', status of new line is default status
20155                                                            --If 'N', status from Source Line is retained
20156      ,p_return_new_top_line_ID_YN    IN VARCHAR2 --Added for Update_Service requirement(Bug 4747648)
20157                                                            --If 'Y' then the new line IDs of the copied top lines need to be
20158                                                            --published
20159 
20160 ,p_include_cancelled_lines IN VARCHAR2 DEFAULT 'Y'
20161 ,p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
20162 
20163  l_api_name        CONSTANT VARCHAR2(30) := 'COPY_LINE_COMPONENTS';
20164  l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
20165  l_return_status    VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
20166  l_euro_currency    VARCHAR2(15) := NULL;
20167  l_converted_price_negotiated NUMBER := NULL;
20168  l_converted_price_unit NUMBER := NULL;
20169 
20170  l_SrcContractPPSetupExists_YN VARCHAR2(1) := ContractPPSetupEXISTS(P_Chr_ID => P_From_Chr_ID);
20171  l_TrgContractPPSetupExists_YN VARCHAR2(1) := ContractPPSetupEXISTS(P_Chr_ID => P_To_Chr_ID);
20172  l_GCDPPSetupExists_YN VARCHAR2(1);
20173 
20174  l_locked_price_list_id      NUMBER := NULL;
20175  l_locked_price_list_line_id NUMBER := NULL;
20176  l_trxn_extension_id           NUMBER := NULL;
20177 
20178  lx_rail_rec OKS_TAX_UTIL_PVT.ra_rec_type;
20179  -- 03-Nov-2006 hkamdar. Bug# 5623498.
20180  CURSOR get_toplvl_uom(p_line_id IN NUMBER) IS
20181  SELECT OEL.PRICING_QUANTITY_UOM
20182        FROM   OKC_K_LINES_B OKCLINE,
20183               OKC_K_REL_OBJS OKCREL,
20184               OE_ORDER_LINES_ALL OEL
20185        WHERE  OKCLINE.LSE_ID IN (7,9,25)
20186        AND    OKCLINE.id = p_line_id
20187        AND    OKCLINE.ID =  OKCREL.CLE_ID
20188        AND    OEL.LINE_ID = OKCREL.OBJECT1_ID1;
20189  l_toplvl_uom_code   OKS_K_LINES_B.toplvl_uom_code%TYPE;
20190  -- 03-Nov-2006 hkamdar. Bug# 5623498.
20191 
20192   -------------Cursor to get default status for line-------------------------
20193   CURSOR get_default_status IS
20194   select code
20195   from okc_statuses_b
20196   where ste_code = 'ENTERED'
20197   and default_yn = 'Y';
20198 
20199   l_Default_Sts_Code OKC_STATUSES_B.CODE%TYPE;
20200   ---------------------------------------------------------------------------
20201   ------------Cursor to get Contract Number,Start Date and End Date of newly created contract--------
20202   CURSOR get_new_contract_num_and_Dates(P_To_Chr_ID IN NUMBER) IS
20203   select
20204    a.contract_number
20205   ,a.start_date
20206   ,a.end_date
20207   ,b.price_uom
20208   from okc_k_headers_b a
20209   ,oks_k_headers_b b
20210   where a.id = P_To_Chr_ID
20211   and a.id = b.chr_id;
20212 
20213   l_new_contract_number       OKC_K_HEADERS_B.CONTRACT_NUMBER%TYPE := NULL;
20214   l_Hdr_Start_Date DATE;
20215   l_Hdr_End_Date   DATE;
20216   l_Target_Hdr_Price_UOM  OKS_K_HEADERS_B.PRICE_UOM%TYPE := NULL;
20217 
20218   -- Bug# 5531198 hkamdar 21-Sep-2006
20219   l_TrgtHeaderPriceUomExists_YN VARCHAR2(1);
20220   -- End Bug# 5531198 hkamdar 21-Sep-2006
20221 
20222 
20223 /*if p_include_cancelled_lines = 'Y' AND P_INCLUDE_TERMINATED_LINES = 'Y' */
20224   ----------------------------------------------------------------------------
20225   -- Cursor to get rows to be copied from:
20226   --	OKC_K_LINES_B_TEMP
20227   --	OKS_K_LINES_B
20228   --	OKC_K_ITEMS
20229   -- for a specified Source Contract and for the lines chosen by the user for copy.
20230 
20231   CURSOR GetOKCOKSLinesB_Temp(P_From_Chr_ID IN NUMBER
20232 			     ,P_To_Chr_ID IN NUMBER) IS
20233   SELECT
20234   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
20235    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
20236   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
20237   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
20238   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
20239   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
20240   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
20241   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
20242   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
20243   ,decode(p_change_status_YN
20244         ,'Y'
20245         ,NULL
20246         ,'N'
20247         ,decode(okcBT.CLE_ID
20248                ,NULL
20249                ,NULL
20250                ,okcBT.TRN_CODE)
20251          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
20252   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
20253   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
20254   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
20255   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
20256   ,decode(okcBT.DATE_TERMINATED
20257          ,NULL
20258          ,decode(okcBT.LSE_ID
20259                 ,46
20260                 ,decode(okcBT.DATE_CANCELLED
20261                        ,NULL
20262                        ,okcBT.PRICE_NEGOTIATED
20263                        ,okcBT.CANCELLED_AMOUNT
20264                        )
20265                 ,okcBT.PRICE_NEGOTIATED
20266                 )
20267          ,nvl(okcBT.PRICE_NEGOTIATED,0)
20268           +nvl(oksB.CREDIT_AMOUNT,0)
20269           +nvl(oksB.UBT_AMOUNT,0)
20270           +nvl(oksB.SUPPRESSED_CREDIT,0)
20271          ) 					    AS OkcBT_PRICE_NEGOTIATED
20272   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
20273   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
20274   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
20275   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
20276   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
20277   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
20278   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
20279   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
20280   ,NULL			                            AS OkcBT_DATE_TERMINATED
20281   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
20282   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
20283   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
20284   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
20285   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
20286   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
20287   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
20288   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
20289   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
20290   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
20291   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
20292   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
20293   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
20294   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
20295   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
20296   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
20297   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
20298   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
20299   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
20300   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
20301   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
20302   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
20303   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
20304   ,NULL				    		    AS OkcBT_DATE_RENEWED
20305   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
20306   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
20307   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
20308   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
20309   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
20310   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
20311   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
20312   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
20313   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
20314   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
20315   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
20316   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
20317   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
20318   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
20319   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
20320   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
20321   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
20322   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
20323   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
20324   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
20325   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
20326   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
20327   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
20328   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
20329   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
20330   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
20331   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
20332   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
20333   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
20334   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
20335   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
20336   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
20337   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
20338   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
20339   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
20340   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
20341   ,decode(p_change_status_YN
20342         ,'Y'
20343         ,NULL
20344         ,'N'
20345         ,decode(okcBT.CLE_ID
20346                ,NULL
20347                ,NULL
20348                ,okcBT.DATE_CANCELLED)
20349          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
20350   ,decode(p_change_status_YN
20351         ,'Y'
20352         ,NULL
20353         ,'N'
20354         ,decode(okcBT.CLE_ID
20355                ,NULL
20356                ,NULL
20357                ,okcBT.TERM_CANCEL_SOURCE)
20358          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
20359   ,decode(okcBT.DATES_CHANGED_YN
20360          ,'N'
20361          ,okcBT.ANNUALIZED_FACTOR
20362          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
20363 						  ,okcBT.END_DATE
20364 						  ,okcBT.LSE_ID)
20365          )			    		    AS OkcBT_ANNUALIZED_FACTOR
20366  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20367 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20368   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20369   ,decode(p_change_status_YN
20370         ,'Y'
20371         ,NULL
20372         ,'N'
20373         ,decode(okcBT.CLE_ID
20374                ,NULL
20375                ,NULL
20376                ,okcBT.CANCELLED_AMOUNT)
20377          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
20378   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
20379   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
20380   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
20381   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
20382   ,oksB.ID                                		AS OksB_OldOksLineID
20383   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
20384   ,oksB.CLE_ID  					AS OksB_CLE_ID
20385   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
20386   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
20387   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
20388  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20389 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
20390   ,NULL					        AS OksB_PAYMENT_TYPE
20391   ,NULL							AS OksB_CC_NO --Obsolete
20392   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
20393   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
20394   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
20395 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20396   ,NULL                         AS OksB_COMMITMENT_ID
20397 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
20398   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
20399   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
20400   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
20401   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
20402   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
20403   ,NULL							AS OksB_UBT_AMOUNT
20404   ,NULL							AS OksB_CREDIT_AMOUNT
20405   ,NULL							AS OksB_SUPPRESSED_CREDIT
20406   ,NULL							AS OksB_OVERRIDE_AMOUNT
20407   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
20408   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20409   ,NULL					        AS OksB_CUST_PO_NUMBER
20410 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
20411   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
20412   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
20413   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
20414  -- Bug# 5531198 hkamdar 21-Sep-2006
20415  /*
20416   ,decode(P_Target_Contract_New_YN
20417          ,'Y'
20418          ,decode(l_SrcContractPPSetupExists_YN
20419                 ,'Y'
20420                 ,oksB.PRICE_UOM
20421                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
20422          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
20423 			  --is subsequently updated based on whether Partial Period Setup on
20424 			  --Target Contract existed or not
20425          ) 						AS OksB_PRICE_UOM */
20426   ,decode(P_Target_Contract_New_YN
20427          ,'Y'
20428 	 ,decode(l_SrcContractPPSetupExists_YN
20429           ,'Y'
20430           ,oksB.PRICE_UOM
20431           ,decode(l_TrgtHeaderPriceUomExists_YN
20432 	          ,'Y'
20433 		  ,l_Target_Hdr_Price_UOM
20434 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
20435 		  --The value of Price_UOM when copying to an existing Target Contract
20436 		  --is subsequently updated based on whether Partial Period Setup on
20437 		  --Target Contract existed or not
20438   -- End Bug# 5531198 hkamdar 21-Sep-2006
20439   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
20440   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
20441   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
20442   ,oksB.TAX_CODE					AS OksB_TAX_CODE
20443   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
20444   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
20445   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
20446   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
20447   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
20448   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
20449   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
20450   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
20451   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
20452   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
20453   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
20454   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
20455   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
20456   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
20457   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
20458   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
20459   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
20460   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
20461   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
20462   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
20463   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
20464   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
20465   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
20466   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
20467   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
20468   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
20469   ,oksB.BASE_READING					AS OksB_BASE_READING
20470   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
20471   ,NULL							AS OksB_FULL_CREDIT
20472   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
20473   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
20474   ,oksB.PRORATE						AS OksB_PRORATE
20475   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
20476   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
20477   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
20478   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
20479   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
20480   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
20481   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
20482   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
20483   ,oksB.PDF_ID						AS OksB_PDF_ID
20484   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
20485   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
20486   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
20487   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
20488   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
20489   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
20490   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
20491   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
20492   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
20493   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
20494   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
20495   ,1							AS OksB_OBJECT_VERSION_NUMBER
20496   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
20497   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
20498   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
20499   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
20500   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
20501   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
20502   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
20503   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
20504   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
20505   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
20506   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
20507   --------------------------------End of OKS_K_LINES_B columns-------------------------
20508   --------------------------------Start of OKC_K_ITEMS columns-------------------------
20509   ,okcI.ID                                     		AS OkcI_OldOkcItemID
20510   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
20511   ,okcI.CLE_ID						AS OkcI_CLE_ID
20512   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
20513   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
20514   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
20515   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
20516   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
20517   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
20518   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
20519   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
20520   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
20521   ,1							AS OkcI_OBJECT_VERSION_NUMBER
20522   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
20523   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
20524   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
20525   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
20526   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
20527   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
20528   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
20529   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
20530   FROM
20531    OKC_K_LINES_B_TEMP okcBT
20532   ,OKS_K_LINES_B oksB
20533   ,OKC_K_ITEMS okcI
20534   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
20535   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
20536   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
20537   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
20538   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID;
20539 
20540 /*IF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'N' */
20541   ----------------------------------------------------------------------------
20542   -- Cursor to get rows to be copied from:
20543   --	OKC_K_LINES_B_TEMP
20544   --	OKS_K_LINES_B
20545   --	OKC_K_ITEMS
20546   -- for a specified Source Contract and for the lines chosen by the user for copy.
20547 
20548   CURSOR GetOKCOKSLinesB_Temp_CANCEL(P_From_Chr_ID IN NUMBER
20549 			     ,P_To_Chr_ID IN NUMBER) IS
20550   SELECT
20551   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
20552    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
20553   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
20554   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
20555   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
20556   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
20557   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
20558   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
20559   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
20560   ,decode(p_change_status_YN
20561         ,'Y'
20562         ,NULL
20563         ,'N'
20564         ,decode(okcBT.CLE_ID
20565                ,NULL
20566                ,NULL
20567                ,okcBT.TRN_CODE)
20568          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
20569   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
20570   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
20571   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
20572   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
20573   ,decode(okcBT.DATE_TERMINATED
20574          ,NULL
20575          ,decode(okcBT.LSE_ID
20576                 ,46
20577                 ,decode(okcBT.DATE_CANCELLED
20578                        ,NULL
20579                        ,okcBT.PRICE_NEGOTIATED
20580                        ,okcBT.CANCELLED_AMOUNT
20581                        )
20582                 ,okcBT.PRICE_NEGOTIATED
20583                 )
20584          ,nvl(okcBT.PRICE_NEGOTIATED,0)
20585           +nvl(oksB.CREDIT_AMOUNT,0)
20586           +nvl(oksB.UBT_AMOUNT,0)
20587           +nvl(oksB.SUPPRESSED_CREDIT,0)
20588          ) 					    AS OkcBT_PRICE_NEGOTIATED
20589   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
20590   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
20591   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
20592   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
20593   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
20594   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
20595   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
20596   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
20597   ,NULL			                            AS OkcBT_DATE_TERMINATED
20598   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
20599   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
20600   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
20601   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
20602   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
20603   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
20604   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
20605   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
20606   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
20607   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
20608   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
20609   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
20610   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
20611   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
20612   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
20613   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
20614   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
20615   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
20616   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
20617   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
20618   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
20619   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
20620   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
20621   ,NULL				    		    AS OkcBT_DATE_RENEWED
20622   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
20623   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
20624   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
20625   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
20626   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
20627   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
20628   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
20629   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
20630   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
20631   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
20632   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
20633   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
20634   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
20635   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
20636   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
20637   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
20638   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
20639   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
20640   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
20641   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
20642   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
20643   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
20644   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
20645   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
20646   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
20647   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
20648   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
20649   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
20650   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
20651   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
20652   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
20653   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
20654   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
20655   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
20656   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
20657   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
20658   ,decode(p_change_status_YN
20659         ,'Y'
20660         ,NULL
20661         ,'N'
20662         ,decode(okcBT.CLE_ID
20663                ,NULL
20664                ,NULL
20665                ,okcBT.DATE_CANCELLED)
20666          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
20667   ,decode(p_change_status_YN
20668         ,'Y'
20669         ,NULL
20670         ,'N'
20671         ,decode(okcBT.CLE_ID
20672                ,NULL
20673                ,NULL
20674                ,okcBT.TERM_CANCEL_SOURCE)
20675          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
20676   ,decode(okcBT.DATES_CHANGED_YN
20677          ,'N'
20678          ,okcBT.ANNUALIZED_FACTOR
20679          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
20680 						  ,okcBT.END_DATE
20681 						  ,okcBT.LSE_ID)
20682          )			    		    AS OkcBT_ANNUALIZED_FACTOR
20683  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20684 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20685   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
20686   ,decode(p_change_status_YN
20687         ,'Y'
20688         ,NULL
20689         ,'N'
20690         ,decode(okcBT.CLE_ID
20691                ,NULL
20692                ,NULL
20693                ,okcBT.CANCELLED_AMOUNT)
20694          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
20695   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
20696   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
20697   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
20698   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
20699   ,oksB.ID                                		AS OksB_OldOksLineID
20700   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
20701   ,oksB.CLE_ID  					AS OksB_CLE_ID
20702   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
20703   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
20704   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
20705  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20706 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
20707   ,NULL					        AS OksB_PAYMENT_TYPE
20708   ,NULL							AS OksB_CC_NO --Obsolete
20709   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
20710   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
20711   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
20712 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20713   ,NULL                         AS OksB_COMMITMENT_ID
20714 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
20715   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
20716   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
20717   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
20718   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
20719   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
20720   ,NULL							AS OksB_UBT_AMOUNT
20721   ,NULL							AS OksB_CREDIT_AMOUNT
20722   ,NULL							AS OksB_SUPPRESSED_CREDIT
20723   ,NULL							AS OksB_OVERRIDE_AMOUNT
20724   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
20725   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
20726   ,NULL					        AS OksB_CUST_PO_NUMBER
20727 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
20728   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
20729   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
20730   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
20731  -- Bug# 5531198 hkamdar 21-Sep-2006
20732  /*
20733   ,decode(P_Target_Contract_New_YN
20734          ,'Y'
20735          ,decode(l_SrcContractPPSetupExists_YN
20736                 ,'Y'
20737                 ,oksB.PRICE_UOM
20738                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
20739          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
20740 			  --is subsequently updated based on whether Partial Period Setup on
20741 			  --Target Contract existed or not
20742          ) 						AS OksB_PRICE_UOM */
20743   ,decode(P_Target_Contract_New_YN
20744          ,'Y'
20745 	 ,decode(l_SrcContractPPSetupExists_YN
20746           ,'Y'
20747           ,oksB.PRICE_UOM
20748           ,decode(l_TrgtHeaderPriceUomExists_YN
20749 	          ,'Y'
20750 		  ,l_Target_Hdr_Price_UOM
20751 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
20752 		  --The value of Price_UOM when copying to an existing Target Contract
20753 		  --is subsequently updated based on whether Partial Period Setup on
20754 		  --Target Contract existed or not
20755   -- End Bug# 5531198 hkamdar 21-Sep-2006
20756   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
20757   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
20758   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
20759   ,oksB.TAX_CODE					AS OksB_TAX_CODE
20760   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
20761   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
20762   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
20763   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
20764   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
20765   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
20766   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
20767   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
20768   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
20769   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
20770   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
20771   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
20772   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
20773   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
20774   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
20775   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
20776   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
20777   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
20778   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
20779   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
20780   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
20781   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
20782   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
20783   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
20784   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
20785   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
20786   ,oksB.BASE_READING					AS OksB_BASE_READING
20787   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
20788   ,NULL							AS OksB_FULL_CREDIT
20789   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
20790   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
20791   ,oksB.PRORATE						AS OksB_PRORATE
20792   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
20793   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
20794   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
20795   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
20796   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
20797   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
20798   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
20799   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
20800   ,oksB.PDF_ID						AS OksB_PDF_ID
20801   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
20802   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
20803   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
20804   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
20805   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
20806   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
20807   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
20808   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
20809   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
20810   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
20811   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
20812   ,1							AS OksB_OBJECT_VERSION_NUMBER
20813   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
20814   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
20815   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
20816   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
20817   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
20818   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
20819   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
20820   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
20821   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
20822   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
20823   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
20824   --------------------------------End of OKS_K_LINES_B columns-------------------------
20825   --------------------------------Start of OKC_K_ITEMS columns-------------------------
20826   ,okcI.ID                                     		AS OkcI_OldOkcItemID
20827   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
20828   ,okcI.CLE_ID						AS OkcI_CLE_ID
20829   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
20830   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
20831   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
20832   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
20833   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
20834   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
20835   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
20836   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
20837   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
20838   ,1							AS OkcI_OBJECT_VERSION_NUMBER
20839   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
20840   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
20841   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
20842   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
20843   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
20844   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
20845   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
20846   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
20847   FROM
20848    OKC_K_LINES_B_TEMP okcBT
20849   ,OKS_K_LINES_B oksB
20850   ,OKC_K_ITEMS okcI
20851   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
20852   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
20853   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
20854   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
20855   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID
20856   AND okcBT.date_terminated is null;
20857 
20858 /*if p_include_cancelled_lines= 'N' AND p_include_terminated_lines = 'Y' */
20859   ----------------------------------------------------------------------------
20860   -- Cursor to get rows to be copied from:
20861   --	OKC_K_LINES_B_TEMP
20862   --	OKS_K_LINES_B
20863   --	OKC_K_ITEMS
20864   -- for a specified Source Contract and for the lines chosen by the user for copy.
20865 
20866   CURSOR GetOKCOKSLinesB_Temp_TERMN(P_From_Chr_ID IN NUMBER
20867 			     ,P_To_Chr_ID IN NUMBER) IS
20868   SELECT
20869   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
20870    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
20871   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
20872   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
20873   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
20874   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
20875   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
20876   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
20877   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
20878   ,decode(p_change_status_YN
20879         ,'Y'
20880         ,NULL
20881         ,'N'
20882         ,decode(okcBT.CLE_ID
20883                ,NULL
20884                ,NULL
20885                ,okcBT.TRN_CODE)
20886          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
20887   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
20888   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
20889   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
20890   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
20891   ,decode(okcBT.DATE_TERMINATED
20892          ,NULL
20893          ,decode(okcBT.LSE_ID
20894                 ,46
20895                 ,decode(okcBT.DATE_CANCELLED
20896                        ,NULL
20897                        ,okcBT.PRICE_NEGOTIATED
20898                        ,okcBT.CANCELLED_AMOUNT
20899                        )
20900                 ,okcBT.PRICE_NEGOTIATED
20901                 )
20902          ,nvl(okcBT.PRICE_NEGOTIATED,0)
20903           +nvl(oksB.CREDIT_AMOUNT,0)
20904           +nvl(oksB.UBT_AMOUNT,0)
20905           +nvl(oksB.SUPPRESSED_CREDIT,0)
20906          ) 					    AS OkcBT_PRICE_NEGOTIATED
20907   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
20908   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
20909   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
20910   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
20911   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
20912   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
20913   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
20914   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
20915   ,NULL			                            AS OkcBT_DATE_TERMINATED
20916   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
20917   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
20918   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
20919   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
20920   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
20921   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
20922   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
20923   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
20924   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
20925   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
20926   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
20927   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
20928   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
20929   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
20930   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
20931   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
20932   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
20933   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
20934   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
20935   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
20936   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
20937   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
20938   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
20939   ,NULL				    		    AS OkcBT_DATE_RENEWED
20940   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
20941   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
20942   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
20943   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
20944   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
20945   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
20946   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
20947   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
20948   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
20949   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
20950   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
20951   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
20952   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
20953   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
20954   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
20955   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
20956   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
20957   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
20958   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
20959   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
20960   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
20961   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
20962   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
20963   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
20964   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
20965   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
20966   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
20967   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
20968   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
20969   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
20970   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
20971   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
20972   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
20973   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
20974   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
20975   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
20976   ,decode(p_change_status_YN
20977         ,'Y'
20978         ,NULL
20979         ,'N'
20980         ,decode(okcBT.CLE_ID
20981                ,NULL
20982                ,NULL
20983                ,okcBT.DATE_CANCELLED)
20984          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
20985   ,decode(p_change_status_YN
20986         ,'Y'
20987         ,NULL
20988         ,'N'
20989         ,decode(okcBT.CLE_ID
20990                ,NULL
20991                ,NULL
20992                ,okcBT.TERM_CANCEL_SOURCE)
20993          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
20994   ,decode(okcBT.DATES_CHANGED_YN
20995          ,'N'
20996          ,okcBT.ANNUALIZED_FACTOR
20997          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
20998 						  ,okcBT.END_DATE
20999 						  ,okcBT.LSE_ID)
21000          )			    		    AS OkcBT_ANNUALIZED_FACTOR
21001  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21002 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
21003   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
21004   ,decode(p_change_status_YN
21005         ,'Y'
21006         ,NULL
21007         ,'N'
21008         ,decode(okcBT.CLE_ID
21009                ,NULL
21010                ,NULL
21011                ,okcBT.CANCELLED_AMOUNT)
21012          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
21013   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
21014   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
21015   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
21016   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
21017   ,oksB.ID                                		AS OksB_OldOksLineID
21018   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
21019   ,oksB.CLE_ID  					AS OksB_CLE_ID
21020   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
21021   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
21022   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
21023  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21024 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
21025   ,NULL					        AS OksB_PAYMENT_TYPE
21026   ,NULL							AS OksB_CC_NO --Obsolete
21027   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
21028   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
21029   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
21030 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21031   ,NULL                         AS OksB_COMMITMENT_ID
21032 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
21033   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
21034   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
21035   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
21036   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
21037   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
21038   ,NULL							AS OksB_UBT_AMOUNT
21039   ,NULL							AS OksB_CREDIT_AMOUNT
21040   ,NULL							AS OksB_SUPPRESSED_CREDIT
21041   ,NULL							AS OksB_OVERRIDE_AMOUNT
21042   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
21043   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21044   ,NULL					        AS OksB_CUST_PO_NUMBER
21045 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
21046   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
21047   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
21048   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
21049  -- Bug# 5531198 hkamdar 21-Sep-2006
21050  /*
21051   ,decode(P_Target_Contract_New_YN
21052          ,'Y'
21053          ,decode(l_SrcContractPPSetupExists_YN
21054                 ,'Y'
21055                 ,oksB.PRICE_UOM
21056                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
21057          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
21058 			  --is subsequently updated based on whether Partial Period Setup on
21059 			  --Target Contract existed or not
21060          ) 						AS OksB_PRICE_UOM */
21061   ,decode(P_Target_Contract_New_YN
21062          ,'Y'
21063 	 ,decode(l_SrcContractPPSetupExists_YN
21064           ,'Y'
21065           ,oksB.PRICE_UOM
21066           ,decode(l_TrgtHeaderPriceUomExists_YN
21067 	          ,'Y'
21068 		  ,l_Target_Hdr_Price_UOM
21069 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
21070 		  --The value of Price_UOM when copying to an existing Target Contract
21071 		  --is subsequently updated based on whether Partial Period Setup on
21072 		  --Target Contract existed or not
21073   -- End Bug# 5531198 hkamdar 21-Sep-2006
21074   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
21075   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
21076   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
21077   ,oksB.TAX_CODE					AS OksB_TAX_CODE
21078   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
21079   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
21080   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
21081   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
21082   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
21083   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
21084   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
21085   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
21086   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
21087   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
21088   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
21089   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
21090   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
21091   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
21092   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
21093   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
21094   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
21095   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
21096   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
21097   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
21098   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
21099   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
21100   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
21101   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
21102   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
21103   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
21104   ,oksB.BASE_READING					AS OksB_BASE_READING
21105   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
21106   ,NULL							AS OksB_FULL_CREDIT
21107   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
21108   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
21109   ,oksB.PRORATE						AS OksB_PRORATE
21110   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
21111   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
21112   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
21113   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
21114   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
21115   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
21116   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
21117   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
21118   ,oksB.PDF_ID						AS OksB_PDF_ID
21119   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
21120   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
21121   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
21122   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
21123   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
21124   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
21125   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
21126   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
21127   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
21128   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
21129   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
21130   ,1							AS OksB_OBJECT_VERSION_NUMBER
21131   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
21132   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
21133   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
21134   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
21135   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
21136   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
21137   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
21138   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
21139   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
21140   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
21141   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
21142   --------------------------------End of OKS_K_LINES_B columns-------------------------
21143   --------------------------------Start of OKC_K_ITEMS columns-------------------------
21144   ,okcI.ID                                     		AS OkcI_OldOkcItemID
21145   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
21146   ,okcI.CLE_ID						AS OkcI_CLE_ID
21147   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
21148   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
21149   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
21150   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
21151   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
21152   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
21153   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
21154   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
21155   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
21156   ,1							AS OkcI_OBJECT_VERSION_NUMBER
21157   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
21158   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
21159   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
21160   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
21161   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
21162   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
21163   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
21164   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
21165   FROM
21166    OKC_K_LINES_B_TEMP okcBT
21167   ,OKS_K_LINES_B oksB
21168   ,OKC_K_ITEMS okcI
21169   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
21170   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
21171   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
21172   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
21173   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID
21174   AND okcBT.date_cancelled is null;
21175 
21176 /*if p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'N'*/
21177   ----------------------------------------------------------------------------
21178   -- Cursor to get rows to be copied from:
21179   --	OKC_K_LINES_B_TEMP
21180   --	OKS_K_LINES_B
21181   --	OKC_K_ITEMS
21182   -- for a specified Source Contract and for the lines chosen by the user for copy.
21183 
21184   CURSOR GetOKCOKSLinesB_Temp_EXCLUDE(P_From_Chr_ID IN NUMBER
21185 			     ,P_To_Chr_ID IN NUMBER) IS
21186   SELECT
21187   ------------------------------------------Begin of OKC_K_LINES_B columns---------------------
21188    okcBT.ORIG_SYSTEM_ID1                            AS OkcBT_OldOKCLineID
21189   ,okcBT.ID					    AS OkcBT_NewOKCLineID --Target Value
21190   ,okcBT.LINE_NUMBER  				    AS OkcBT_LINE_NUMBER
21191   ,okcBT.CHR_ID					    AS OkcBT_NewChrID--Target Value
21192   ,okcBT.CLE_ID 				    AS OkcBT_CLE_ID
21193   ,okcBT.DNZ_CHR_ID                                 AS OkcBT_NewDnzChrID --Target Value
21194   ,okcBT.DISPLAY_SEQUENCE 			    AS OkcBT_DISPLAY_SEQUENCE
21195   ,okcBT.STS_CODE 				    AS OkcBT_STS_CODE
21196   ,decode(p_change_status_YN
21197         ,'Y'
21198         ,NULL
21199         ,'N'
21200         ,decode(okcBT.CLE_ID
21201                ,NULL
21202                ,NULL
21203                ,okcBT.TRN_CODE)
21204          )                                          AS OkcBT_TRN_CODE --Added the decode for bug 4747648
21205   ,okcBT.LSE_ID 				    AS OkcBT_LSE_ID
21206   ,okcBT.EXCEPTION_YN				    AS OkcBT_EXCEPTION_YN
21207   ,1			    			    AS OkcBT_OBJECT_VERSION_NUMBER
21208   ,okcBT.HIDDEN_IND 				    AS OkcBT_HIDDEN_IND
21209   ,decode(okcBT.DATE_TERMINATED
21210          ,NULL
21211          ,decode(okcBT.LSE_ID
21212                 ,46
21213                 ,decode(okcBT.DATE_CANCELLED
21214                        ,NULL
21215                        ,okcBT.PRICE_NEGOTIATED
21216                        ,okcBT.CANCELLED_AMOUNT
21217                        )
21218                 ,okcBT.PRICE_NEGOTIATED
21219                 )
21220          ,nvl(okcBT.PRICE_NEGOTIATED,0)
21221           +nvl(oksB.CREDIT_AMOUNT,0)
21222           +nvl(oksB.UBT_AMOUNT,0)
21223           +nvl(oksB.SUPPRESSED_CREDIT,0)
21224          ) 					    AS OkcBT_PRICE_NEGOTIATED
21225   ,okcBT.PRICE_LEVEL_IND			    AS OkcBT_PRICE_LEVEL_IND
21226   ,okcBT.PRICE_UNIT 				    AS OkcBT_PRICE_UNIT
21227   ,okcBT.PRICE_UNIT_PERCENT			    AS OkcBT_PRICE_UNIT_PERCENT
21228   ,okcBT.INVOICE_LINE_LEVEL_IND			    AS OkcBT_INVOICE_LINE_LEVEL_IND
21229   ,okcBT.DPAS_RATING				    AS OkcBT_DPAS_RATING
21230   ,okcBT.TEMPLATE_USED				    AS OkcBT_TEMPLATE_USED
21231   ,okcBT.PRICE_TYPE				    AS OkcBT_PRICE_TYPE
21232   ,okcBT.CURRENCY_CODE				    AS OkcBT_CURRENCY_CODE
21233   ,NULL			                            AS OkcBT_DATE_TERMINATED
21234   ,okcBT.START_DATE                                 AS OkcBT_START_DATE
21235   ,okcBT.END_DATE                                   AS OkcBT_END_DATE
21236   ,okcBT.ATTRIBUTE_CATEGORY                         AS OkcBT_ATTRIBUTE_CATEGORY
21237   ,okcBT.ATTRIBUTE1                                 AS OkcBT_ATTRIBUTE1
21238   ,okcBT.ATTRIBUTE2                                 AS OkcBT_ATTRIBUTE2
21239   ,okcBT.ATTRIBUTE3				    AS OkcBT_ATTRIBUTE3
21240   ,okcBT.ATTRIBUTE4 				    AS OkcBT_ATTRIBUTE4
21241   ,okcBT.ATTRIBUTE5				    AS OkcBT_ATTRIBUTE5
21242   ,okcBT.ATTRIBUTE6				    AS OkcBT_ATTRIBUTE6
21243   ,okcBT.ATTRIBUTE7				    AS OkcBT_ATTRIBUTE7
21244   ,okcBT.ATTRIBUTE8				    AS OkcBT_ATTRIBUTE8
21245   ,okcBT.ATTRIBUTE9				    AS OkcBT_ATTRIBUTE9
21246   ,okcBT.ATTRIBUTE10				    AS OkcBT_ATTRIBUTE10
21247   ,okcBT.ATTRIBUTE11				    AS OkcBT_ATTRIBUTE11
21248   ,okcBT.ATTRIBUTE12				    AS OkcBT_ATTRIBUTE12
21249   ,okcBT.ATTRIBUTE13				    AS OkcBT_ATTRIBUTE13
21250   ,okcBT.ATTRIBUTE14				    AS OkcBT_ATTRIBUTE14
21251   ,okcBT.ATTRIBUTE15				    AS OkcBT_ATTRIBUTE15
21252   ,okcBT.SECURITY_GROUP_ID			    AS OkcBT_SECURITY_GROUP_ID
21253   ,okcBT.PRICE_NEGOTIATED_RENEWED		    AS OkcBT_PRICE_NEGOTIATED_RENEWED
21254   ,okcBT.CURRENCY_CODE_RENEWED			    AS OkcBT_CURRENCY_CODE_RENEWED
21255   ,okcBT.UPG_ORIG_SYSTEM_REF			    AS OkcBT_UPG_ORIG_SYSTEM_REF
21256   ,okcBT.UPG_ORIG_SYSTEM_REF_ID		    	    AS OkcBT_UPG_ORIG_SYSTEM_REF_ID
21257   ,NULL				    		    AS OkcBT_DATE_RENEWED
21258   ,okcBT.ORIG_SYSTEM_ID1 			    AS OkcBT_ORIG_SYSTEM_ID1 --Target Value
21259   ,'COPY'   					    AS OkcBT_ORIG_SYSTEM_REFERENCE1 --Target Value
21260   ,'OKC_LINE'                               	    AS ORIGT_SYSTEM_SOURCE_CODE   --Target Value
21261   ,okcBT.PROGRAM_APPLICATION_ID		    	    AS OkcBT_PROGRAM_APPLICATION_ID
21262   ,okcBT.PROGRAM_ID				    AS OkcBT_PROGRAM_ID
21263   ,okcBT.PROGRAM_UPDATE_DATE			    AS OkcBT_PROGRAM_UPDATE_DATE
21264   ,okcBT.REQUEST_ID				    AS OkcBT_REQUEST_ID
21265   ,okcBT.PRICE_LIST_ID				    AS OkcBT_PRICE_LIST_ID
21266   ,okcBT.PRICE_LIST_LINE_ID			    AS OkcBT_PRICE_LIST_LINE_ID
21267   ,okcBT.LINE_LIST_PRICE			    AS OkcBT_LINE_LIST_PRICE
21268   ,okcBT.ITEM_TO_PRICE_YN			    AS OkcBT_ITEM_TO_PRICE_YN
21269   ,okcBT.PRICING_DATE				    AS OkcBT_PRICING_DATE
21270   ,okcBT.PRICE_BASIS_YN				    AS OkcBT_PRICE_BASIS_YN
21271   ,okcBT.CONFIG_HEADER_ID			    AS OkcBT_CONFIG_HEADER_ID
21272   ,okcBT.CONFIG_REVISION_NUMBER			    AS OkcBT_CONFIG_REVISION_NUMBER
21273   ,okcBT.CONFIG_COMPLETE_YN			    AS OkcBT_CONFIG_COMPLETE_YN
21274   ,okcBT.CONFIG_VALID_YN			    AS OkcBT_CONFIG_VALID_YN
21275   ,okcBT.CONFIG_TOP_MODEL_LINE_ID		    AS OkcBT_CONFIG_TOP_MODEL_LINE_ID
21276   ,okcBT.CONFIG_ITEM_TYPE			    AS OkcBT_CONFIG_ITEM_TYPE
21277   ,okcBT.CONFIG_ITEM_ID				    AS OkcBT_CONFIG_ITEM_ID
21278   ,okcBT.SERVICE_ITEM_YN			    AS OkcBT_SERVICE_ITEM_YN
21279   ,okcBT.PH_PRICING_TYPE			    AS OkcBT_PH_PRICING_TYPE
21280   ,okcBT.PH_PRICE_BREAK_BASIS			    AS OkcBT_PH_PRICE_BREAK_BASIS
21281   ,okcBT.PH_MIN_QTY				    AS OkcBT_PH_MIN_QTY
21282   ,okcBT.PH_MIN_AMT				    AS OkcBT_PH_MIN_AMT
21283   ,okcBT.PH_QP_REFERENCE_ID			    AS OkcBT_PH_QP_REFERENCE_ID
21284   ,okcBT.PH_VALUE				    AS OkcBT_PH_VALUE
21285   ,okcBT.PH_ENFORCE_PRICE_LIST_YN		    AS OkcBT_PH_ENFORCE_PRICE_LIST_YN
21286   ,okcBT.PH_ADJUSTMENT				    AS OkcBT_PH_ADJUSTMENT
21287   ,okcBT.PH_INTEGRATED_WITH_QP			    AS OkcBT_PH_INTEGRATED_WITH_QP
21288   ,okcBT.CUST_ACCT_ID				    AS OkcBT_CUST_ACCT_ID
21289   ,okcBT.BILL_TO_SITE_USE_ID			    AS OkcBT_BILL_TO_SITE_USE_ID
21290   ,okcBT.INV_RULE_ID				    AS OkcBT_INV_RULE_ID
21291   ,okcBT.LINE_RENEWAL_TYPE_CODE			    AS OkcBT_LINE_RENEWAL_TYPE_CODE
21292   ,okcBT.SHIP_TO_SITE_USE_ID			    AS OkcBT_SHIP_TO_SITE_USE_ID
21293   ,okcBT.PAYMENT_TERM_ID			    AS OkcBT_PAYMENT_TERM_ID
21294   ,decode(p_change_status_YN
21295         ,'Y'
21296         ,NULL
21297         ,'N'
21298         ,decode(okcBT.CLE_ID
21299                ,NULL
21300                ,NULL
21301                ,okcBT.DATE_CANCELLED)
21302          )					    AS OkcBT_DATE_CANCELLED --Added the decode for bug 4747648
21303   ,decode(p_change_status_YN
21304         ,'Y'
21305         ,NULL
21306         ,'N'
21307         ,decode(okcBT.CLE_ID
21308                ,NULL
21309                ,NULL
21310                ,okcBT.TERM_CANCEL_SOURCE)
21311          )					    AS OkcBT_TERM_CANCEL_SOURCE --Making it null for 4641561, Added the decode for bug 4747648
21312   ,decode(okcBT.DATES_CHANGED_YN
21313          ,'N'
21314          ,okcBT.ANNUALIZED_FACTOR
21315          ,OKS_SETUP_UTIL_PUB.Get_Annualized_Factor(okcBT.START_DATE
21316 						  ,okcBT.END_DATE
21317 						  ,okcBT.LSE_ID)
21318          )			    		    AS OkcBT_ANNUALIZED_FACTOR
21319  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21320 --  ,okcBT.PAYMENT_INSTRUCTION_TYPE		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
21321   ,NULL		    AS OkcBT_PAYMENT_INSTRUCTION_TYPE
21322   ,decode(p_change_status_YN
21323         ,'Y'
21324         ,NULL
21325         ,'N'
21326         ,decode(okcBT.CLE_ID
21327                ,NULL
21328                ,NULL
21329                ,okcBT.CANCELLED_AMOUNT)
21330          )                                          AS OkcBT_CANCELLED_AMOUNT -- As part of fixing 4641561,Added decode for 4747648
21331   ,decode(okcBT.DATE_CANCELLED,NULL,'N','Y') 	    AS OkcBT_LINE_CANCELLED_FLAG  --pseudo column
21332   ,decode(okcBT.DATE_TERMINATED,NULL,'N','Y')	    AS OkcBT_LINE_TERMINATED_FLAG --pseudo column
21333   ---------------------------------------End of OKC_K_LINES_B columns------------------------------------
21334   ---------------------------------------Begin of OKS_K_LINES_B columns----------------------------------
21335   ,oksB.ID                                		AS OksB_OldOksLineID
21336   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OksB_NewOksLineID
21337   ,oksB.CLE_ID  					AS OksB_CLE_ID
21338   ,P_To_Chr_ID 						AS OksB_NewDnzChrID
21339   ,oksB.DISCOUNT_LIST					AS OksB_DISCOUNT_LIST
21340   ,oksB.ACCT_RULE_ID					AS OksB_ACCT_RULE_ID
21341  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21342 --  ,oksB.PAYMENT_TYPE					AS OksB_PAYMENT_TYPE
21343   ,NULL					        AS OksB_PAYMENT_TYPE
21344   ,NULL							AS OksB_CC_NO --Obsolete
21345   ,NULL							AS OksB_CC_EXPIRY_DATE --Obsolete
21346   ,NULL							AS OksB_CC_BANK_ACCT_ID --Obsolete
21347   ,NULL							AS OksB_CC_AUTH_CODE --Obsolete
21348 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21349   ,NULL                         AS OksB_COMMITMENT_ID
21350 --  ,oksB.COMMITMENT_ID					AS OksB_COMMITMENT_ID
21351   ,oksB.LOCKED_PRICE_LIST_ID				AS OksB_LOCKED_PRICE_LIST_ID
21352   ,oksB.USAGE_EST_YN					AS OksB_USAGE_EST_YN
21353   ,oksB.USAGE_EST_METHOD				AS OksB_USAGE_EST_METHOD
21354   ,oksB.USAGE_EST_START_DATE				AS OksB_USAGE_EST_START_DATE
21355   ,oksB.TERMN_METHOD					AS OksB_TERMN_METHOD
21356   ,NULL							AS OksB_UBT_AMOUNT
21357   ,NULL							AS OksB_CREDIT_AMOUNT
21358   ,NULL							AS OksB_SUPPRESSED_CREDIT
21359   ,NULL							AS OksB_OVERRIDE_AMOUNT
21360   ,oksB.CUST_PO_NUMBER_REQ_YN				AS OksB_CUST_PO_NUMBER_REQ_YN
21361   -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21362   ,NULL					        AS OksB_CUST_PO_NUMBER
21363 --  ,oksB.CUST_PO_NUMBER					AS OksB_CUST_PO_NUMBER
21364   ,oksB.GRACE_DURATION					AS OksB_GRACE_DURATION
21365   ,oksB.GRACE_PERIOD					AS OksB_GRACE_PERIOD
21366   ,oksB.INV_PRINT_FLAG					AS OksB_INV_PRINT_FLAG
21367  -- Bug# 5531198 hkamdar 21-Sep-2006
21368  /*
21369   ,decode(P_Target_Contract_New_YN
21370          ,'Y'
21371          ,decode(l_SrcContractPPSetupExists_YN
21372                 ,'Y'
21373                 ,oksB.PRICE_UOM
21374                 ,OKS_SETUP_UTIL_PUB.G_GCD_PRICE_UOM)
21375          ,oksB.PRICE_UOM  --The value of Price_UOM when copying to an existing Target Contract
21376 			  --is subsequently updated based on whether Partial Period Setup on
21377 			  --Target Contract existed or not
21378          ) 						AS OksB_PRICE_UOM */
21379   ,decode(P_Target_Contract_New_YN
21380          ,'Y'
21381 	 ,decode(l_SrcContractPPSetupExists_YN
21382           ,'Y'
21383           ,oksB.PRICE_UOM
21384           ,decode(l_TrgtHeaderPriceUomExists_YN
21385 	          ,'Y'
21386 		  ,l_Target_Hdr_Price_UOM
21387 		  ,oksB.PRICE_UOM)),oksB.PRICE_UOM)		AS OksB_PRICE_UOM
21388 		  --The value of Price_UOM when copying to an existing Target Contract
21389 		  --is subsequently updated based on whether Partial Period Setup on
21390 		  --Target Contract existed or not
21391   -- End Bug# 5531198 hkamdar 21-Sep-2006
21392   ,oksB.TAX_AMOUNT					AS OksB_TAX_AMOUNT
21393   ,oksB.TAX_INCLUSIVE_YN				AS OksB_TAX_INCLUSIVE_YN
21394   ,oksB.TAX_STATUS					AS OksB_TAX_STATUS
21395   ,oksB.TAX_CODE					AS OksB_TAX_CODE
21396   ,oksB.TAX_EXEMPTION_ID				AS OksB_TAX_EXEMPTION_ID
21397   ,oksB.IB_TRANS_TYPE					AS OksB_IB_TRANS_TYPE
21398   ,oksB.IB_TRANS_DATE					AS OksB_IB_TRANS_DATE
21399   ,oksB.PROD_PRICE					AS OksB_PROD_PRICE
21400   ,oksB.SERVICE_PRICE					AS OksB_SERVICE_PRICE
21401   ,oksB.CLVL_LIST_PRICE					AS OksB_CLVL_LIST_PRICE
21402   ,oksB.CLVL_QUANTITY					AS OksB_CLVL_QUANTITY
21403   ,oksB.CLVL_EXTENDED_AMT				AS OksB_CLVL_EXTENDED_AMT
21404   ,oksB.CLVL_UOM_CODE					AS OksB_CLVL_UOM_CODE
21405   ,oksB.TOPLVL_OPERAND_CODE				AS OksB_TOPLVL_OPERAND_CODE
21406   ,oksB.TOPLVL_OPERAND_VAL				AS OksB_TOPLVL_OPERAND_VAL
21407   ,oksB.TOPLVL_QUANTITY					AS OksB_TOPLVL_QUANTITY
21408   ,oksB.TOPLVL_UOM_CODE					AS OksB_TOPLVL_UOM_CODE
21409   ,oksB.TOPLVL_ADJ_PRICE				AS OksB_TOPLVL_ADJ_PRICE
21410   ,oksB.TOPLVL_PRICE_QTY				AS OksB_TOPLVL_PRICE_QTY
21411   ,oksB.AVERAGING_INTERVAL				AS OksB_AVERAGING_INTERVAL
21412   ,oksB.SETTLEMENT_INTERVAL				AS OksB_SETTLEMENT_INTERVAL
21413   ,oksB.MINIMUM_QUANTITY				AS OksB_MINIMUM_QUANTITY
21414   ,oksB.DEFAULT_QUANTITY				AS OksB_DEFAULT_QUANTITY
21415   ,oksB.AMCV_FLAG					AS OksB_AMCV_FLAG
21416   ,oksB.FIXED_QUANTITY					AS OksB_FIXED_QUANTITY
21417   ,oksB.USAGE_DURATION					AS OksB_USAGE_DURATION
21418   ,oksB.USAGE_PERIOD					AS OksB_USAGE_PERIOD
21419   ,oksB.LEVEL_YN					AS OksB_LEVEL_YN
21420   ,oksB.USAGE_TYPE					AS OksB_USAGE_TYPE
21421   ,oksB.UOM_QUANTIFIED					AS OksB_UOM_QUANTIFIED
21422   ,oksB.BASE_READING					AS OksB_BASE_READING
21423   ,oksB.BILLING_SCHEDULE_TYPE				AS OksB_BILLING_SCHEDULE_TYPE
21424   ,NULL							AS OksB_FULL_CREDIT
21425   ,oksB.LOCKED_PRICE_LIST_LINE_ID			AS OksB_LOCKED_PRICE_LIST_LINE_ID
21426   ,oksB.BREAK_UOM					AS OksB_BREAK_UOM
21427   ,oksB.PRORATE						AS OksB_PRORATE
21428   ,oksB.COVERAGE_TYPE					AS OksB_COVERAGE_TYPE
21429   ,oksB.EXCEPTION_COV_ID				AS OksB_EXCEPTION_COV_ID
21430   ,oksB.LIMIT_UOM_QUANTIFIED				AS OksB_LIMIT_UOM_QUANTIFIED
21431   ,oksB.DISCOUNT_AMOUNT					AS OksB_DISCOUNT_AMOUNT
21432   ,oksB.DISCOUNT_PERCENT				AS OksB_DISCOUNT_PERCENT
21433   ,oksB.OFFSET_DURATION					AS OksB_OFFSET_DURATION
21434   ,oksB.OFFSET_PERIOD					AS OksB_OFFSET_PERIOD
21435   ,oksB.INCIDENT_SEVERITY_ID				AS OksB_INCIDENT_SEVERITY_ID
21436   ,oksB.PDF_ID						AS OksB_PDF_ID
21437   ,oksB.WORK_THRU_YN					AS OksB_WORK_THRU_YN
21438   ,oksB.REACT_ACTIVE_YN					AS OksB_REACT_ACTIVE_YN
21439   ,oksB.TRANSFER_OPTION					AS OksB_TRANSFER_OPTION
21440   ,oksB.PROD_UPGRADE_YN					AS OksB_PROD_UPGRADE_YN
21441   ,oksB.INHERITANCE_TYPE				AS OksB_INHERITANCE_TYPE
21442   ,oksB.PM_PROGRAM_ID					AS OksB_PM_PROGRAM_ID
21443   ,oksB.PM_CONF_REQ_YN					AS OksB_PM_CONF_REQ_YN
21444   ,oksB.PM_SCH_EXISTS_YN				AS OksB_PM_SCH_EXISTS_YN
21445   ,oksB.ALLOW_BT_DISCOUNT				AS OksB_ALLOW_BT_DISCOUNT
21446   ,oksB.APPLY_DEFAULT_TIMEZONE				AS OksB_APPLY_DEFAULT_TIMEZONE
21447   ,oksB.SYNC_DATE_INSTALL				AS OksB_SYNC_DATE_INSTALL
21448   ,1							AS OksB_OBJECT_VERSION_NUMBER
21449   ,oksB.SECURITY_GROUP_ID				AS OksB_SECURITY_GROUP_ID
21450   ,oksB.REQUEST_ID					AS OksB_REQUEST_ID
21451   ,oksB.ID 						AS OksB_ORIG_SYSTEM_ID1
21452   ,'COPY' 						AS OksB_ORIG_SYSTEM_REFERENCE1
21453   ,NULL 						AS OksB_ORIG_SYSTEM_SOURCE_CODE
21454   ,oksB.TRXN_EXTENSION_ID				AS OksB_TRXN_EXTENSION_ID
21455   ,oksB.TAX_CLASSIFICATION_CODE				AS OksB_TAX_CLASSIFICATION_CODE
21456   ,oksB.EXEMPT_CERTIFICATE_NUMBER			AS OksB_EXEMPT_CERTIFICATE_NUMBER
21457   ,oksB.EXEMPT_REASON_CODE				AS OksB_EXEMPT_REASON_CODE
21458   ,oksB.COVERAGE_ID					AS OksB_COVERAGE_ID
21459   ,oksB.STANDARD_COV_YN					AS OksB_STANDARD_COV_YN
21460   --------------------------------End of OKS_K_LINES_B columns-------------------------
21461   --------------------------------Start of OKC_K_ITEMS columns-------------------------
21462   ,okcI.ID                                     		AS OkcI_OldOkcItemID
21463   ,To_number(rawtohex(sys_guid()), HexFormatStr)  	AS OkcI_NewOkcItemID
21464   ,okcI.CLE_ID						AS OkcI_CLE_ID
21465   ,P_To_Chr_ID 						AS OkcI_NewDnzChrID
21466   ,decode(okcI.CHR_ID,NULL,NULL,P_To_Chr_ID)  		AS OkcI_NewChrID
21467   ,okcI.OBJECT1_ID1					AS OkcI_OBJECT1_ID1
21468   ,okcI.OBJECT1_ID2					AS OkcI_OBJECT1_ID2
21469   ,okcI.JTOT_OBJECT1_CODE				AS OkcI_JTOT_OBJECT1_CODE
21470   ,okcI.UOM_CODE					AS OkcI_UOM_CODE
21471   ,okcI.EXCEPTION_YN					AS OkcI_EXCEPTION_YN
21472   ,okcI.NUMBER_OF_ITEMS					AS OkcI_NUMBER_OF_ITEMS
21473   ,okcI.PRICED_ITEM_YN					AS OkcI_PRICED_ITEM_YN
21474   ,1							AS OkcI_OBJECT_VERSION_NUMBER
21475   ,okcI.SECURITY_GROUP_ID				AS OkcI_SECURITY_GROUP_ID
21476   ,okcI.UPG_ORIG_SYSTEM_REF				AS OkcI_UPG_ORIG_SYSTEM_REF
21477   ,okcI.UPG_ORIG_SYSTEM_REF_ID				AS OkcI_UPG_ORIG_SYSTEM_REF_ID
21478   ,okcI.PROGRAM_APPLICATION_ID				AS Okc_PROGRAM_APPLICATION_ID
21479   ,okcI.PROGRAM_ID					AS OkcI_PROGRAM_ID
21480   ,okcI.PROGRAM_UPDATE_DATE				AS OkcI_PROGRAM_UPDATE_DATE
21481   ,okcI.REQUEST_ID					AS OkcI_REQUEST_ID
21482   ,oksB.COUNTER_VALUE_ID				AS OksB_COUNTER_VALUE_ID
21483   FROM
21484    OKC_K_LINES_B_TEMP okcBT
21485   ,OKS_K_LINES_B oksB
21486   ,OKC_K_ITEMS okcI
21487   Where okcBT.DNZ_CHR_ID = P_To_Chr_ID
21488   AND okcBT.ORIG_SYSTEM_ID1 = oksB.CLE_ID(+)
21489   AND okcBT.ORIG_SYSTEM_ID1 = okcI.CLE_ID(+)
21490   AND oksB.DNZ_CHR_ID(+) = P_From_Chr_ID
21491   AND okcI.DNZ_CHR_ID(+) = P_From_Chr_ID
21492   AND okcBT.date_cancelled IS NULL
21493   AND okcBT.date_terminated IS NULL;
21494 
21495  j BINARY_INTEGER := 0;
21496 
21497 Begin
21498   x_return_status := l_return_status;
21499   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
21500       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
21501          FND_LOG.string(FND_LOG.level_procedure
21502                         ,l_module_name||'.Begin'
21503                         ,' P_From_Chr_ID='||P_From_Chr_ID
21504                          ||',P_To_Chr_ID='||P_To_Chr_ID
21505 			 ||',P_Lines_Tbl.COUNT ='||P_Lines_Tbl.COUNT
21506                          );
21507       END IF;
21508   END IF;
21509   --Setting Variable to indicate existence of Partial Period Setup in GCD , only checked if copying to a new contract in Component Copy--
21510    IF (P_Target_Contract_New_YN = 'Y') THEN
21511     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
21512        l_GCDPPSetupExists_YN := 'Y';
21513     ELSE
21514        l_GCDPPSetupExists_YN := 'N';
21515     END IF;
21516    END IF;
21517 
21518  If P_Lines_Tbl.COUNT > 0 then
21519    --Get Contract Number of Target Contract--
21520   Begin
21521     OPEN get_new_contract_num_and_Dates(P_To_Chr_ID);
21522     FETCH get_new_contract_num_and_Dates
21523     into
21524      l_new_contract_number
21525     ,l_Hdr_Start_Date
21526     ,l_Hdr_End_Date
21527     ,l_Target_Hdr_Price_UOM;
21528     CLOSE get_new_contract_num_and_Dates;
21529     If l_new_contract_number IS NULL then
21530       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
21531          l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
21532          RAISE G_EXCEPTION_HALT_VALIDATION;
21533     End If;
21534 
21535     -- Bug# 5531198 hkamdar 21-Sep-2006
21536     IF l_Target_Hdr_Price_UOM IS NOT NULL THEN
21537        l_TrgtHeaderPriceUomExists_YN := 'Y';
21538     ELSE
21539        l_TrgtHeaderPriceUomExists_YN := 'N';
21540     END IF;
21541     -- End Bug# 5531198 hkamdar 21-Sep-2006
21542   End;
21543 
21544 
21545  -------------------------------------------
21546   --Get default status for lines------------
21547   Begin
21548     OPEN get_default_status;
21549     FETCH get_default_status into l_Default_Sts_Code;
21550     CLOSE get_default_status;
21551     If l_Default_Sts_Code IS NULL then
21552        OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
21553        l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
21554           RAISE G_EXCEPTION_HALT_VALIDATION;
21555     End If;
21556   End;
21557   ------------------------------------------
21558  -----Convert PLSQL table of records P_Lines_Tbl into PLSQL Record of tables------
21559   If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
21560               FND_LOG.string(FND_LOG.level_statement
21561 		                 ,l_module_name
21562 				       ,'Count of rows in P_Lines_Tbl='||P_Lines_Tbl.COUNT);
21563   End If;
21564 
21565   FOR i in P_Lines_Tbl.FIRST .. P_Lines_Tbl.LAST LOOP
21566    Begin
21567     ApiLinesRecTab.IDTab(j) := P_Lines_Tbl(i).id;
21568     ApiLinesRecTab.ToKTab(j) := P_Lines_Tbl(i).to_k;
21569     ApiLinesRecTab.ToLineTab(j) := P_Lines_Tbl(i).to_line;
21570     ApiLinesRecTab.LineExistsYNTab(j) := P_Lines_Tbl(i).line_exists_yn;
21571     ApiLinesRecTab.LineExpYNTab(j) := P_Lines_Tbl(i).line_exp_yn;
21572 
21573     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
21574      FND_LOG.string(FND_LOG.level_statement
21575                  ,l_module_name
21576                  ,'ID='||P_Lines_Tbl(i).id
21577               ||', TO_K='||P_Lines_Tbl(i).to_k
21578               ||', TO_LINE='||P_Lines_Tbl(i).to_line
21579               ||', LINE_EXISTS_YN='||P_Lines_Tbl(i).line_exists_yn
21580 	      ||', LINE_EXP_YN='||P_Lines_Tbl(i).line_exp_yn
21581 	      ||', LSE_ID='||P_Lines_Tbl(i).lse_id
21582                   );
21583     End If;
21584     j := j+1;
21585 
21586       EXCEPTION
21587          WHEN OTHERS THEN
21588               NULL;
21589 	      If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
21590 		  FND_LOG.string(FND_LOG.level_unexpected
21591 		                ,l_module_name
21592 					 ,SQLERRM);
21593 	      End If;
21594    End;
21595   End LOOP;
21596 
21597  End If; -- End of check for P_Lines_Tbl.COUNT to be > 0
21598  --------------------------------------------------------------------------------------
21599 
21600 ------------------------Start of BULK INSERT INTO OKC_K_LINES_B_TEMP-----------------
21601  IF (P_Lines_Tbl.COUNT > 0) then ---++++++++++++Start of Check of P_Lines_Tbl.COUNT for
21602 			 	 ---++++++++++++Bulk insert into OKC_K_LINES_B_TEMP
21603 
21604  ------Loop through PLSQL Record of tables of the lines to do bulk inserts into--------
21605  ------OKC_K_LINES_B_TEMP global temporary table----------------------------------------
21606  -- a) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NULL and LINE_EXP_YN = 'Y'
21607  --    (Indicates that line being copied is a top line and that this line and all its sublines
21608  --	need to be queried explicitly from the database and copied)
21609  --
21610 
21611  Begin
21612 
21613  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
21614  INSERT INTO OKC_K_LINES_B_TEMP(
21615   ID
21616  ,LINE_NUMBER
21617  ,CHR_ID
21618  ,CLE_ID
21619  ,CLE_ID_RENEWED
21620  ,DNZ_CHR_ID
21621  ,DISPLAY_SEQUENCE
21622  ,STS_CODE
21623  ,TRN_CODE
21624  ,LSE_ID
21625  ,EXCEPTION_YN
21626  ,OBJECT_VERSION_NUMBER
21627  ,CREATED_BY
21628  ,CREATION_DATE
21629  ,LAST_UPDATED_BY
21630  ,LAST_UPDATE_DATE
21631  ,HIDDEN_IND
21632  ,PRICE_NEGOTIATED
21633  ,PRICE_LEVEL_IND
21634  ,PRICE_UNIT
21635  ,PRICE_UNIT_PERCENT
21636  ,INVOICE_LINE_LEVEL_IND
21637  ,DPAS_RATING
21638  ,TEMPLATE_USED
21639  ,PRICE_TYPE
21640  ,CURRENCY_CODE
21641  ,LAST_UPDATE_LOGIN
21642  ,DATE_TERMINATED
21643  ,START_DATE
21644  ,END_DATE
21645  ,ATTRIBUTE_CATEGORY
21646  ,ATTRIBUTE1
21647  ,ATTRIBUTE2
21648  ,ATTRIBUTE3
21649  ,ATTRIBUTE4
21650  ,ATTRIBUTE5
21651  ,ATTRIBUTE6
21652  ,ATTRIBUTE7
21653  ,ATTRIBUTE8
21654  ,ATTRIBUTE9
21655  ,ATTRIBUTE10
21656  ,ATTRIBUTE11
21657  ,ATTRIBUTE12
21658  ,ATTRIBUTE13
21659  ,ATTRIBUTE14
21660  ,ATTRIBUTE15
21661  ,SECURITY_GROUP_ID
21662  ,CLE_ID_RENEWED_TO
21663  ,PRICE_NEGOTIATED_RENEWED
21664  ,CURRENCY_CODE_RENEWED
21665  ,UPG_ORIG_SYSTEM_REF
21666  ,UPG_ORIG_SYSTEM_REF_ID
21667  ,DATE_RENEWED
21668  ,ORIG_SYSTEM_SOURCE_CODE
21669  ,ORIG_SYSTEM_ID1
21670  ,ORIG_SYSTEM_REFERENCE1
21671  ,PROGRAM_APPLICATION_ID
21672  ,PROGRAM_ID
21673  ,PROGRAM_UPDATE_DATE
21674  ,REQUEST_ID
21675  ,PRICE_LIST_ID
21676  ,PRICE_LIST_LINE_ID
21677  ,LINE_LIST_PRICE
21678  ,ITEM_TO_PRICE_YN
21679  ,PRICING_DATE
21680  ,PRICE_BASIS_YN
21681  ,CONFIG_HEADER_ID
21682  ,CONFIG_REVISION_NUMBER
21683  ,CONFIG_COMPLETE_YN
21684  ,CONFIG_VALID_YN
21685  ,CONFIG_TOP_MODEL_LINE_ID
21686  ,CONFIG_ITEM_TYPE
21687  ,CONFIG_ITEM_ID
21688  ,SERVICE_ITEM_YN
21689  ,PH_PRICING_TYPE
21690  ,PH_PRICE_BREAK_BASIS
21691  ,PH_MIN_QTY
21692  ,PH_MIN_AMT
21693  ,PH_QP_REFERENCE_ID
21694  ,PH_VALUE
21695  ,PH_ENFORCE_PRICE_LIST_YN
21696  ,PH_ADJUSTMENT
21697  ,PH_INTEGRATED_WITH_QP
21698  ,CUST_ACCT_ID
21699  ,BILL_TO_SITE_USE_ID
21700  ,INV_RULE_ID
21701  ,LINE_RENEWAL_TYPE_CODE
21702  ,SHIP_TO_SITE_USE_ID
21703  ,PAYMENT_TERM_ID
21704  ,DATE_CANCELLED
21705  ,TERM_CANCEL_SOURCE
21706  ,ANNUALIZED_FACTOR
21707  ,PAYMENT_INSTRUCTION_TYPE -- hkamdar 29-Mar-2006 Bug # 4722452
21708  ,CANCELLED_AMOUNT
21709  ,LINE_EXISTS_YN
21710  ,DATES_CHANGED_YN
21711  ,GEN_SUBLINE_BSCH_YN
21712  )
21713  SELECT
21714   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
21715  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
21716  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
21717  ,okcB.CLE_ID AS okcB_CLE_ID
21718  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
21719  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
21720  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
21721  ,okcB.STS_CODE AS okcB_STS_CODE
21722  ,okcB.TRN_CODE AS okcB_TRN_CODE
21723  ,okcB.LSE_ID AS okcB_LSE_ID
21724  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
21725  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
21726  ,okcB.CREATED_BY AS okcB_CREATED_BY
21727  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
21728  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
21729  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
21730  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
21731  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
21732  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
21733  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
21734  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
21735  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
21736  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
21737  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
21738  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
21739  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
21740  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
21741  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
21742  ,(CASE
21743     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21744           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21745     THEN nvl(okcB.START_DATE,sysdate)
21746     ELSE l_Hdr_Start_Date
21747     END
21748    ) AS okcB_START_DATE
21749  ,(CASE
21750     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21751           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21752     THEN nvl(okcB.END_DATE,sysdate)
21753     ELSE l_Hdr_End_Date
21754     END
21755    ) AS okcB_END_DATE
21756  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
21757  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
21758  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
21759  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
21760  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
21761  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
21762  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
21763  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
21764  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
21765  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
21766  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
21767  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
21768  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
21769  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
21770  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
21771  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
21772  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
21773  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
21774  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
21775  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
21776  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
21777  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
21778  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
21779  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE --*
21780  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
21781  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1 --*
21782  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
21783  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
21784  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
21785  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
21786  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
21787  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
21788  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
21789  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
21790  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
21791  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
21792  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
21793  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
21794  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
21795  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
21796  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
21797  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
21798  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
21799  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
21800  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
21801  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
21802  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
21803  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
21804  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
21805  ,okcB.PH_VALUE AS okcB_PH_VALUE
21806  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
21807  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
21808  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
21809  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
21810  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
21811  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
21812  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
21813  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
21814  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
21815  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
21816  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
21817  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
21818 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
21819  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
21820  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
21821  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
21822  ,(CASE
21823     WHEN (
21824           nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21825           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
21826          )
21827     THEN 'N'
21828     ELSE 'Y'
21829     END
21830    ) AS okcB_DATES_CHANGED_YN
21831  ,'N' AS okcB_GEN_SUBLINE_BSCH_YN
21832  FROM
21833  OKC_K_LINES_B okcB
21834  WHERE ApiLinesRecTab.ToLineTab(i) IS NULL
21835  AND ApiLinesRecTab.LineExpYNTab(i) = 'Y'
21836  AND okcB.DNZ_CHR_ID = P_From_Chr_ID
21837  CONNECT BY PRIOR okcB.ID = okcB.CLE_ID
21838  START WITH okcB.ID = ApiLinesRecTab.IDTab(i);
21839 
21840    EXCEPTION
21841     WHEN OTHERS THEN
21842               If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
21843                   FND_LOG.string(FND_LOG.level_unexpected
21844                                 ,l_module_name
21845                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  a) :'||SQLERRM);
21846               End If;
21847 
21848      OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
21849      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
21850      RAISE G_EXCEPTION_HALT_VALIDATION;
21851 
21852  End;
21853 
21854  -- b) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NULL and LINE_EXP_YN = 'N'
21855  --    (Indicates that line being copied is a top line and that this line and only all its "Coverage"
21856  --    sublines  need to be queried explicitly from the database and copied. "Coverage" sublines
21857  --    are never shown on the UI so they always have to be queried from the DB and copied)
21858  --
21859 
21860  Begin
21861  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
21862  INSERT INTO OKC_K_LINES_B_TEMP(
21863   ID
21864  ,LINE_NUMBER
21865  ,CHR_ID
21866  ,CLE_ID
21867  ,CLE_ID_RENEWED
21868  ,DNZ_CHR_ID
21869  ,DISPLAY_SEQUENCE
21870  ,STS_CODE
21871  ,TRN_CODE
21872  ,LSE_ID
21873  ,EXCEPTION_YN
21874  ,OBJECT_VERSION_NUMBER
21875  ,CREATED_BY
21876  ,CREATION_DATE
21877  ,LAST_UPDATED_BY
21878  ,LAST_UPDATE_DATE
21879  ,HIDDEN_IND
21880  ,PRICE_NEGOTIATED
21881  ,PRICE_LEVEL_IND
21882  ,PRICE_UNIT
21883  ,PRICE_UNIT_PERCENT
21884  ,INVOICE_LINE_LEVEL_IND
21885  ,DPAS_RATING
21886  ,TEMPLATE_USED
21887  ,PRICE_TYPE
21888  ,CURRENCY_CODE
21889  ,LAST_UPDATE_LOGIN
21890  ,DATE_TERMINATED
21891  ,START_DATE
21892  ,END_DATE
21893  ,ATTRIBUTE_CATEGORY
21894  ,ATTRIBUTE1
21895  ,ATTRIBUTE2
21896  ,ATTRIBUTE3
21897  ,ATTRIBUTE4
21898  ,ATTRIBUTE5
21899  ,ATTRIBUTE6
21900  ,ATTRIBUTE7
21901  ,ATTRIBUTE8
21902  ,ATTRIBUTE9
21903  ,ATTRIBUTE10
21904  ,ATTRIBUTE11
21905  ,ATTRIBUTE12
21906  ,ATTRIBUTE13
21907  ,ATTRIBUTE14
21908  ,ATTRIBUTE15
21909  ,SECURITY_GROUP_ID
21910  ,CLE_ID_RENEWED_TO
21911  ,PRICE_NEGOTIATED_RENEWED
21912  ,CURRENCY_CODE_RENEWED
21913  ,UPG_ORIG_SYSTEM_REF
21914  ,UPG_ORIG_SYSTEM_REF_ID
21915  ,DATE_RENEWED
21916  ,ORIG_SYSTEM_SOURCE_CODE
21917  ,ORIG_SYSTEM_ID1
21918  ,ORIG_SYSTEM_REFERENCE1
21919  ,PROGRAM_APPLICATION_ID
21920  ,PROGRAM_ID
21921  ,PROGRAM_UPDATE_DATE
21922  ,REQUEST_ID
21923  ,PRICE_LIST_ID
21924  ,PRICE_LIST_LINE_ID
21925  ,LINE_LIST_PRICE
21926  ,ITEM_TO_PRICE_YN
21927  ,PRICING_DATE
21928  ,PRICE_BASIS_YN
21929  ,CONFIG_HEADER_ID
21930  ,CONFIG_REVISION_NUMBER
21931  ,CONFIG_COMPLETE_YN
21932  ,CONFIG_VALID_YN
21933  ,CONFIG_TOP_MODEL_LINE_ID
21934  ,CONFIG_ITEM_TYPE
21935  ,CONFIG_ITEM_ID
21936  ,SERVICE_ITEM_YN
21937  ,PH_PRICING_TYPE
21938  ,PH_PRICE_BREAK_BASIS
21939  ,PH_MIN_QTY
21940  ,PH_MIN_AMT
21941  ,PH_QP_REFERENCE_ID
21942  ,PH_VALUE
21943  ,PH_ENFORCE_PRICE_LIST_YN
21944  ,PH_ADJUSTMENT
21945  ,PH_INTEGRATED_WITH_QP
21946  ,CUST_ACCT_ID
21947  ,BILL_TO_SITE_USE_ID
21948  ,INV_RULE_ID
21949  ,LINE_RENEWAL_TYPE_CODE
21950  ,SHIP_TO_SITE_USE_ID
21951  ,PAYMENT_TERM_ID
21952  ,DATE_CANCELLED
21953  ,TERM_CANCEL_SOURCE
21954  ,ANNUALIZED_FACTOR
21955  ,PAYMENT_INSTRUCTION_TYPE
21956  ,CANCELLED_AMOUNT
21957  ,LINE_EXISTS_YN
21958  ,DATES_CHANGED_YN
21959  ,GEN_SUBLINE_BSCH_YN
21960  )
21961  SELECT
21962   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
21963  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
21964  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
21965  ,okcB.CLE_ID AS okcB_CLE_ID
21966  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
21967  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
21968  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
21969  ,okcB.STS_CODE AS okcB_STS_CODE
21970  ,okcB.TRN_CODE AS okcB_TRN_CODE
21971  ,okcB.LSE_ID AS okcB_LSE_ID
21972  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
21973  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
21974  ,okcB.CREATED_BY AS okcB_CREATED_BY
21975  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
21976  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
21977  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
21978  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
21979  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
21980  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
21981  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
21982  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
21983  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
21984  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
21985  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
21986  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
21987  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
21988  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
21989  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
21990  ,(CASE
21991     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21992           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
21993     THEN nvl(okcB.START_DATE,sysdate)
21994     ELSE l_Hdr_Start_Date
21995     END
21996    ) AS okcB_START_DATE
21997 ,(CASE
21998     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
21999           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22000     THEN nvl(okcB.END_DATE,sysdate)
22001     ELSE l_Hdr_End_Date
22002     END
22003    ) AS okcB_END_DATE
22004  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
22005  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
22006  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
22007  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
22008  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
22009  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
22010  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
22011  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
22012  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
22013  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
22014  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
22015  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
22016  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
22017  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
22018  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
22019  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
22020  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
22021  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
22022  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
22023  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
22024  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
22025  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
22026  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
22027  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE
22028  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
22029  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1
22030  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
22031  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
22032  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
22033  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
22034  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
22035  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
22036  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
22037  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
22038  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
22039  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
22040  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
22041  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
22042  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
22043  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
22044  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
22045  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
22046  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
22047  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
22048  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
22049  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
22050  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
22051  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
22052  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
22053  ,okcB.PH_VALUE AS okcB_PH_VALUE
22054  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
22055  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
22056  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
22057  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
22058  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
22059  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
22060  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
22061  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
22062  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
22063  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
22064  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
22065  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
22066 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22067  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
22068  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
22069  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22070  ,(CASE
22071     WHEN (
22072           nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22073           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
22074          )
22075     THEN 'N'
22076     ELSE 'Y'
22077     END
22078    ) AS okcB_DATES_CHANGED_YN
22079  ,'N' AS okcB_GEN_SUBLINE_BSCH_YN
22080  FROM
22081  OKC_K_LINES_B okcB
22082  WHERE okcB.ID = ApiLinesRecTab.IDTab(i)
22083  AND ApiLinesRecTab.ToLineTab(i) IS NULL
22084  AND ApiLinesRecTab.LineExpYNTab(i) = 'N'
22085  AND okcB.DNZ_CHR_ID = P_From_Chr_ID
22086  UNION
22087  SELECT
22088   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcCL_NewID --*
22089  ,okcCL.LINE_NUMBER AS okcCL_LINE_NUMBER
22090  ,decode(okcCL.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcCL_NewChrID --*
22091  ,okcCL.CLE_ID AS okcCL_CLE_ID
22092  ,okcCL.CLE_ID_RENEWED AS okcCL_CLE_ID_RENEWED
22093  ,P_To_Chr_ID AS okcCL_NewDnzChrID --*
22094  ,okcCL.DISPLAY_SEQUENCE AS okcCL_DISPLAY_SEQUENCE
22095  ,okcCL.STS_CODE AS okcCL_STS_CODE
22096  ,okcCL.TRN_CODE AS okcCL_TRN_CODE
22097  ,okcCL.LSE_ID AS okcCL_LSE_ID
22098  ,okcCL.EXCEPTION_YN AS okcCL_EXCEPTION_YN
22099  ,okcCL.OBJECT_VERSION_NUMBER AS okcCL_OBJECT_VERSION_NUMBER
22100  ,okcCL.CREATED_BY AS okcCL_CREATED_BY
22101  ,okcCL.CREATION_DATE AS okcCL_CREATION_DATE
22102  ,okcCL.LAST_UPDATED_BY AS okcCL_LAST_UPDATED_BY
22103  ,okcCL.LAST_UPDATE_DATE AS okcCL_LAST_UPDATE_DATE
22104  ,okcCL.HIDDEN_IND AS okcCL_HIDDEN_IND
22105  ,okcCL.PRICE_NEGOTIATED AS okcCL_PRICE_NEGOTIATED
22106  ,okcCL.PRICE_LEVEL_IND AS okcCL_PRICE_LEVEL_IND
22107  ,okcCL.PRICE_UNIT AS okcCL_PRICE_UNIT
22108  ,okcCL.PRICE_UNIT_PERCENT AS okcCL_PRICE_UNIT_PERCENT
22109  ,okcCL.INVOICE_LINE_LEVEL_IND AS okcCL_INVOICE_LINE_LEVEL_IND
22110  ,okcCL.DPAS_RATING AS okcCL_DPAS_RATING
22111  ,okcCL.TEMPLATE_USED AS okcCL_TEMPLATE_USED
22112  ,okcCL.PRICE_TYPE AS okcCL_PRICE_TYPE
22113  ,okcCL.CURRENCY_CODE AS okcCL_CURRENCY_CODE
22114  ,okcCL.LAST_UPDATE_LOGIN AS okcCL_LAST_UPDATE_LOGIN
22115  ,okcCL.DATE_TERMINATED AS okcCL_DATE_TERMINATED
22116  ,(CASE
22117     WHEN (nvl(okcCL.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22118           nvl(okcCL.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22119     THEN nvl(okcCL.START_DATE,sysdate)
22120     ELSE l_Hdr_Start_Date
22121     END
22122    ) AS okcCL_START_DATE
22123 ,(CASE
22124     WHEN (nvl(okcCL.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22125           nvl(okcCL.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22126     THEN nvl(okcCL.END_DATE,sysdate)
22127     ELSE l_Hdr_End_Date
22128     END
22129    ) AS okcCL_END_DATE
22130  ,okcCL.ATTRIBUTE_CATEGORY AS okcCL_ATTRIBUTE_CATEGORY
22131  ,okcCL.ATTRIBUTE1 AS okcCL_ATTRIBUTE1
22132  ,okcCL.ATTRIBUTE2 AS okcCL_ATTRIBUTE2
22133  ,okcCL.ATTRIBUTE3 AS okcCL_ATTRIBUTE3
22134  ,okcCL.ATTRIBUTE4 AS okcCL_ATTRIBUTE4
22135  ,okcCL.ATTRIBUTE5 AS okcCL_ATTRIBUTE5
22136  ,okcCL.ATTRIBUTE6 AS okcCL_ATTRIBUTE6
22137  ,okcCL.ATTRIBUTE7 AS okcCL_ATTRIBUTE7
22138  ,okcCL.ATTRIBUTE8 AS okcCL_ATTRIBUTE8
22139  ,okcCL.ATTRIBUTE9 AS okcCL_ATTRIBUTE9
22140  ,okcCL.ATTRIBUTE10 AS okcCL_ATTRIBUTE10
22141  ,okcCL.ATTRIBUTE11 AS okcCL_ATTRIBUTE11
22142  ,okcCL.ATTRIBUTE12 AS okcCL_ATTRIBUTE12
22143  ,okcCL.ATTRIBUTE13 AS okcCL_ATTRIBUTE13
22144  ,okcCL.ATTRIBUTE14 AS okcCL_ATTRIBUTE14
22145  ,okcCL.ATTRIBUTE15 AS okcCL_ATTRIBUTE15
22146  ,okcCL.SECURITY_GROUP_ID AS okcCL_SECURITY_GROUP_ID
22147  ,okcCL.CLE_ID_RENEWED_TO AS okcCL_CLE_ID_RENEWED_TO
22148  ,okcCL.PRICE_NEGOTIATED_RENEWED AS okcCL_PRICE_NEGOTIATED_RENEWED
22149  ,okcCL.CURRENCY_CODE_RENEWED AS okcCL_CURRENCY_CODE_RENEWED
22150  ,okcCL.UPG_ORIG_SYSTEM_REF AS okcCL_UPG_ORIG_SYSTEM_REF
22151  ,okcCL.UPG_ORIG_SYSTEM_REF_ID AS okcCL_UPG_ORIG_SYSTEM_REF_ID
22152  ,okcCL.DATE_RENEWED AS okcCL_DATE_RENEWED
22153  ,okcCL.ORIG_SYSTEM_SOURCE_CODE AS okcCL_ORIG_SYSTEM_SOURCE_CODE
22154  ,okcCL.ID AS okcCL_ORIG_SYSTEM_ID1 --*
22155  ,okcCL.ORIG_SYSTEM_REFERENCE1 AS okcCL_ORIG_SYSTEM_REFERENCE1
22156  ,okcCL.PROGRAM_APPLICATION_ID AS okcCL_PROGRAM_APPLICATION_ID
22157  ,okcCL.PROGRAM_ID AS okcCL_PROGRAM_ID
22158  ,okcCL.PROGRAM_UPDATE_DATE AS okcCL_PROGRAM_UPDATE_DATE
22159  ,okcCL.REQUEST_ID AS okcCL_REQUEST_ID
22160  ,okcCL.PRICE_LIST_ID AS okcCL_PRICE_LIST_ID
22161  ,okcCL.PRICE_LIST_LINE_ID AS okcCL_PRICE_LIST_LINE_ID
22162  ,okcCL.LINE_LIST_PRICE AS okcCL_LINE_LIST_PRICE
22163  ,okcCL.ITEM_TO_PRICE_YN AS okcCL_ITEM_TO_PRICE_YN
22164  ,okcCL.PRICING_DATE AS okcCL_PRICING_DATE
22165  ,okcCL.PRICE_BASIS_YN AS okcCL_PRICE_BASIS_YN
22166  ,okcCL.CONFIG_HEADER_ID AS okcCL_CONFIG_HEADER_ID
22167  ,okcCL.CONFIG_REVISION_NUMBER AS okcCL_CONFIG_REVISION_NUMBER
22168  ,okcCL.CONFIG_COMPLETE_YN AS okcCL_CONFIG_COMPLETE_YN
22169  ,okcCL.CONFIG_VALID_YN AS okcCL_CONFIG_VALID_YN
22170  ,okcCL.CONFIG_TOP_MODEL_LINE_ID AS okcCL_CONFIG_TOP_MODEL_LINE_ID
22171  ,okcCL.CONFIG_ITEM_TYPE AS okcCL_CONFIG_ITEM_TYPE
22172  ,okcCL.CONFIG_ITEM_ID AS okcCL_CONFIG_ITEM_ID
22173  ,okcCL.SERVICE_ITEM_YN AS okcCL_SERVICE_ITEM_YN
22174  ,okcCL.PH_PRICING_TYPE AS okcCL_PH_PRICING_TYPE
22175  ,okcCL.PH_PRICE_BREAK_BASIS AS okcCL_PH_PRICE_BREAK_BASIS
22176  ,okcCL.PH_MIN_QTY AS okcCL_PH_MIN_QTY
22177  ,okcCL.PH_MIN_AMT AS okcCL_PH_MIN_AMT
22178  ,okcCL.PH_QP_REFERENCE_ID AS okcCL_PH_QP_REFERENCE_ID
22179  ,okcCL.PH_VALUE AS okcCL_PH_VALUE
22180  ,okcCL.PH_ENFORCE_PRICE_LIST_YN AS okcCL_PH_ENFORCE_PRICE_LIST_YN
22181  ,okcCL.PH_ADJUSTMENT AS okcCL_PH_ADJUSTMENT
22182  ,okcCL.PH_INTEGRATED_WITH_QP AS okcCL_PH_INTEGRATED_WITH_QP
22183  ,okcCL.CUST_ACCT_ID AS okcCL_CUST_ACCT_ID
22184  ,okcCL.BILL_TO_SITE_USE_ID AS okcCL_BILL_TO_SITE_USE_ID
22185  ,okcCL.INV_RULE_ID AS okcCL_INV_RULE_ID
22186  ,okcCL.LINE_RENEWAL_TYPE_CODE AS okcCL_LINE_RENEWAL_TYPE_CODE
22187  ,okcCL.SHIP_TO_SITE_USE_ID AS okcCL_SHIP_TO_SITE_USE_ID
22188  ,okcCL.PAYMENT_TERM_ID AS okcCL_PAYMENT_TERM_ID
22189  ,okcCL.DATE_CANCELLED AS okcCL_DATE_CANCELLED
22190  ,okcCL.TERM_CANCEL_SOURCE AS okcCL_TERM_CANCEL_SOURCE
22191  ,okcCL.ANNUALIZED_FACTOR AS okcCL_ANNUALIZED_FACTOR
22192 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22193  ,NULL AS okcCL_PAYMENT_INSTRUCTION_TYPE
22194  ,okcCL.CANCELLED_AMOUNT AS okcCL_CANCELLED_AMOUNT
22195  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22196  ,(CASE
22197     WHEN (
22198           nvl(okcCL.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22199           nvl(okcCL.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
22200          )
22201     THEN 'N'
22202     ELSE 'Y'
22203     END
22204    ) AS okcCL_DATES_CHANGED_YN
22205  ,'N' AS okcCL_GEN_SUBLINE_BSCH_YN
22206  FROM
22207  OKC_K_LINES_B okcCL
22208  WHERE
22209  okcCL.DNZ_CHR_ID = P_From_Chr_ID
22210  AND ApiLinesRecTab.ToLineTab(i) IS NULL
22211  AND ApiLinesRecTab.LineExpYNTab(i) = 'N'
22212  CONNECT BY PRIOR okcCL.ID = okcCL.CLE_ID
22213  START WITH okcCL.ID = (select a.COVERAGE_ID
22214                              FROM
22215                              OKS_K_LINES_B a
22216                              where a.CLE_ID = ApiLinesRecTab.IDTab(i)
22217                             );
22218 
22219    EXCEPTION
22220     WHEN OTHERS THEN
22221               If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
22222                   FND_LOG.string(FND_LOG.level_unexpected
22223                                 ,l_module_name
22224                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  b) :'||SQLERRM);
22225               End If;
22226 
22227 
22228      OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22229      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22230      RAISE G_EXCEPTION_HALT_VALIDATION;
22231 
22232  End;
22233 
22234 
22235 
22236  -- c) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NOT NULL and LINE_EXISTS_YN = 'N'
22237  --    (Indicates that line being copied is a subline and that its top line as indicated by TO_LINE
22238  --    is being copied as a separate line in ApiLinesRecTab.
22239  --
22240 
22241  Begin
22242 
22243  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
22244  INSERT INTO OKC_K_LINES_B_TEMP(
22245   ID
22246  ,LINE_NUMBER
22247  ,CHR_ID
22248  ,CLE_ID
22249  ,CLE_ID_RENEWED
22250  ,DNZ_CHR_ID
22251  ,DISPLAY_SEQUENCE
22252  ,STS_CODE
22253  ,TRN_CODE
22254  ,LSE_ID
22255  ,EXCEPTION_YN
22256  ,OBJECT_VERSION_NUMBER
22257  ,CREATED_BY
22258  ,CREATION_DATE
22259  ,LAST_UPDATED_BY
22260  ,LAST_UPDATE_DATE
22261  ,HIDDEN_IND
22262  ,PRICE_NEGOTIATED
22263  ,PRICE_LEVEL_IND
22264  ,PRICE_UNIT
22265  ,PRICE_UNIT_PERCENT
22266  ,INVOICE_LINE_LEVEL_IND
22267  ,DPAS_RATING
22268  ,TEMPLATE_USED
22269  ,PRICE_TYPE
22270  ,CURRENCY_CODE
22271  ,LAST_UPDATE_LOGIN
22272  ,DATE_TERMINATED
22273  ,START_DATE
22274  ,END_DATE
22275  ,ATTRIBUTE_CATEGORY
22276  ,ATTRIBUTE1
22277  ,ATTRIBUTE2
22278  ,ATTRIBUTE3
22279  ,ATTRIBUTE4
22280  ,ATTRIBUTE5
22281  ,ATTRIBUTE6
22282  ,ATTRIBUTE7
22283  ,ATTRIBUTE8
22284  ,ATTRIBUTE9
22285  ,ATTRIBUTE10
22286  ,ATTRIBUTE11
22287  ,ATTRIBUTE12
22288  ,ATTRIBUTE13
22289  ,ATTRIBUTE14
22290  ,ATTRIBUTE15
22291  ,SECURITY_GROUP_ID
22292  ,CLE_ID_RENEWED_TO
22293  ,PRICE_NEGOTIATED_RENEWED
22294  ,CURRENCY_CODE_RENEWED
22295  ,UPG_ORIG_SYSTEM_REF
22296  ,UPG_ORIG_SYSTEM_REF_ID
22297  ,DATE_RENEWED
22298  ,ORIG_SYSTEM_SOURCE_CODE
22299  ,ORIG_SYSTEM_ID1
22300  ,ORIG_SYSTEM_REFERENCE1
22301  ,PROGRAM_APPLICATION_ID
22302  ,PROGRAM_ID
22303  ,PROGRAM_UPDATE_DATE
22304  ,REQUEST_ID
22305  ,PRICE_LIST_ID
22306  ,PRICE_LIST_LINE_ID
22307  ,LINE_LIST_PRICE
22308  ,ITEM_TO_PRICE_YN
22309  ,PRICING_DATE
22310  ,PRICE_BASIS_YN
22311  ,CONFIG_HEADER_ID
22312  ,CONFIG_REVISION_NUMBER
22313  ,CONFIG_COMPLETE_YN
22314  ,CONFIG_VALID_YN
22315  ,CONFIG_TOP_MODEL_LINE_ID
22316  ,CONFIG_ITEM_TYPE
22317  ,CONFIG_ITEM_ID
22318  ,SERVICE_ITEM_YN
22319  ,PH_PRICING_TYPE
22320  ,PH_PRICE_BREAK_BASIS
22321  ,PH_MIN_QTY
22322  ,PH_MIN_AMT
22323  ,PH_QP_REFERENCE_ID
22324  ,PH_VALUE
22325  ,PH_ENFORCE_PRICE_LIST_YN
22326  ,PH_ADJUSTMENT
22327  ,PH_INTEGRATED_WITH_QP
22328  ,CUST_ACCT_ID
22329  ,BILL_TO_SITE_USE_ID
22330  ,INV_RULE_ID
22331  ,LINE_RENEWAL_TYPE_CODE
22332  ,SHIP_TO_SITE_USE_ID
22333  ,PAYMENT_TERM_ID
22334  ,DATE_CANCELLED
22335  ,TERM_CANCEL_SOURCE
22336  ,ANNUALIZED_FACTOR
22337  ,PAYMENT_INSTRUCTION_TYPE
22338  ,CANCELLED_AMOUNT
22339  ,LINE_EXISTS_YN
22340  ,DATES_CHANGED_YN
22341  ,GEN_SUBLINE_BSCH_YN
22342  )
22343  SELECT
22344   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
22345  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
22346  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
22347  ,ApiLinesRecTab.ToLineTab(i) AS okcB_CLE_ID --*,okcB.CLE_ID AS okcB_CLE_ID
22348  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
22349  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
22350  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
22351  ,okcB.STS_CODE AS okcB_STS_CODE
22352  ,okcB.TRN_CODE AS okcB_TRN_CODE
22353  ,okcB.LSE_ID AS okcB_LSE_ID
22354  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
22355  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
22356  ,okcB.CREATED_BY AS okcB_CREATED_BY
22357  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
22358  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
22359  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
22360  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
22361  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
22362  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
22363  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
22364  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
22365  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
22366  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
22367  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
22368  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
22369  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
22370  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
22371  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
22372  ,(CASE
22373     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22374           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22375     THEN nvl(okcB.START_DATE,sysdate)
22376     ELSE l_Hdr_Start_Date
22377     END
22378    ) AS okcB_START_DATE
22379  ,(CASE
22380     WHEN (nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22381           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date)
22382     THEN nvl(okcB.END_DATE,sysdate)
22383     ELSE l_Hdr_End_Date
22384     END
22385    ) AS okcB_END_DATE
22386  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
22387  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
22388  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
22389  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
22390  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
22391  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
22392  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
22393  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
22394  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
22395  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
22396  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
22397  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
22398  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
22399  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
22400  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
22401  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
22402  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
22403  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
22404  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
22405  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
22406  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
22407  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
22408  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
22409  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE
22410  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
22411  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1
22412  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
22413  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
22414  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
22415  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
22416  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
22417  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
22418  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
22419  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
22420  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
22421  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
22422  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
22423  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
22424  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
22425  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
22426  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
22427  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
22428  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
22429  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
22430  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
22431  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
22432  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
22433  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
22434  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
22435  ,okcB.PH_VALUE AS okcB_PH_VALUE
22436  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
22437  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
22438  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
22439  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
22440  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
22441  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
22442  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
22443  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
22444  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
22445  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
22446  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
22447  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
22448 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22449  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
22450  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
22451  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22452  ,(CASE
22453     WHEN (
22454           nvl(okcB.START_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date AND
22455           nvl(okcB.END_DATE,sysdate) BETWEEN l_Hdr_Start_Date and l_Hdr_End_Date
22456          )
22457     THEN 'N'
22458     ELSE 'Y'
22459     END
22460    ) AS okcB_DATES_CHANGED_YN
22461  ,'N' AS okcB_GEN_SUBLINE_BSCH_YN
22462  FROM
22463  OKC_K_LINES_B okcB
22464  WHERE okcB.ID = ApiLinesRecTab.IDTab(i)
22465  AND ApiLinesRecTab.ToLineTab(i) IS NOT NULL
22466  AND ApiLinesRecTab.LineExistsYNTab(i) = 'N'
22467  AND okcB.DNZ_CHR_ID = P_From_Chr_ID;
22468 
22469    EXCEPTION
22470     WHEN OTHERS THEN
22471 
22472         /*   IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
22473               FND_LOG.string(FND_LOG.level_unexpected
22474                                 ,l_module_name
22475                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  c) :'||SQLERRM);
22476            END IF; */
22477 
22478 
22479 
22480           OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22481      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22482      RAISE G_EXCEPTION_HALT_VALIDATION;
22483 
22484  End;
22485 
22486  -- d) Bulk insert for all lines in ApiLinesRecTab where TO_LINE is NOT NULL and LINE_EXISTS_YN = 'Y'
22487  --    (Indicates that line being copied is a subline and that its top line as indicated by TO_LINE
22488  --    already exists in the Target Contractis and is not being copied from the Source Contract
22489  --
22490 
22491  Begin
22492 
22493  FORALL i in ApiLinesRecTab.IDTab.FIRST .. ApiLinesRecTab.IDTab.LAST
22494  INSERT INTO OKC_K_LINES_B_TEMP(
22495   ID
22496  ,LINE_NUMBER
22497  ,CHR_ID
22498  ,CLE_ID
22499  ,CLE_ID_RENEWED
22500  ,DNZ_CHR_ID
22501  ,DISPLAY_SEQUENCE
22502  ,STS_CODE
22503  ,TRN_CODE
22504  ,LSE_ID
22505  ,EXCEPTION_YN
22506  ,OBJECT_VERSION_NUMBER
22507  ,CREATED_BY
22508  ,CREATION_DATE
22509  ,LAST_UPDATED_BY
22510  ,LAST_UPDATE_DATE
22511  ,HIDDEN_IND
22512  ,PRICE_NEGOTIATED
22513  ,PRICE_LEVEL_IND
22514  ,PRICE_UNIT
22515  ,PRICE_UNIT_PERCENT
22516  ,INVOICE_LINE_LEVEL_IND
22517  ,DPAS_RATING
22518  ,TEMPLATE_USED
22519  ,PRICE_TYPE
22520  ,CURRENCY_CODE
22521  ,LAST_UPDATE_LOGIN
22522  ,DATE_TERMINATED
22523  ,START_DATE
22524  ,END_DATE
22525  ,ATTRIBUTE_CATEGORY
22526  ,ATTRIBUTE1
22527  ,ATTRIBUTE2
22528  ,ATTRIBUTE3
22529  ,ATTRIBUTE4
22530  ,ATTRIBUTE5
22531  ,ATTRIBUTE6
22532  ,ATTRIBUTE7
22533  ,ATTRIBUTE8
22534  ,ATTRIBUTE9
22535  ,ATTRIBUTE10
22536  ,ATTRIBUTE11
22537  ,ATTRIBUTE12
22538  ,ATTRIBUTE13
22539  ,ATTRIBUTE14
22540  ,ATTRIBUTE15
22541  ,SECURITY_GROUP_ID
22542  ,CLE_ID_RENEWED_TO
22543  ,PRICE_NEGOTIATED_RENEWED
22544  ,CURRENCY_CODE_RENEWED
22545  ,UPG_ORIG_SYSTEM_REF
22546  ,UPG_ORIG_SYSTEM_REF_ID
22547  ,DATE_RENEWED
22548  ,ORIG_SYSTEM_SOURCE_CODE
22549  ,ORIG_SYSTEM_ID1
22550  ,ORIG_SYSTEM_REFERENCE1
22551  ,PROGRAM_APPLICATION_ID
22552  ,PROGRAM_ID
22553  ,PROGRAM_UPDATE_DATE
22554  ,REQUEST_ID
22555  ,PRICE_LIST_ID
22556  ,PRICE_LIST_LINE_ID
22557  ,LINE_LIST_PRICE
22558  ,ITEM_TO_PRICE_YN
22559  ,PRICING_DATE
22560  ,PRICE_BASIS_YN
22561  ,CONFIG_HEADER_ID
22562  ,CONFIG_REVISION_NUMBER
22563  ,CONFIG_COMPLETE_YN
22564  ,CONFIG_VALID_YN
22565  ,CONFIG_TOP_MODEL_LINE_ID
22566  ,CONFIG_ITEM_TYPE
22567  ,CONFIG_ITEM_ID
22568  ,SERVICE_ITEM_YN
22569  ,PH_PRICING_TYPE
22570  ,PH_PRICE_BREAK_BASIS
22571  ,PH_MIN_QTY
22572  ,PH_MIN_AMT
22573  ,PH_QP_REFERENCE_ID
22574  ,PH_VALUE
22575  ,PH_ENFORCE_PRICE_LIST_YN
22576  ,PH_ADJUSTMENT
22577  ,PH_INTEGRATED_WITH_QP
22578  ,CUST_ACCT_ID
22579  ,BILL_TO_SITE_USE_ID
22580  ,INV_RULE_ID
22581  ,LINE_RENEWAL_TYPE_CODE
22582  ,SHIP_TO_SITE_USE_ID
22583  ,PAYMENT_TERM_ID
22584  ,DATE_CANCELLED
22585  ,TERM_CANCEL_SOURCE
22586  ,ANNUALIZED_FACTOR
22587  ,PAYMENT_INSTRUCTION_TYPE
22588  ,CANCELLED_AMOUNT
22589  ,LINE_EXISTS_YN
22590  ,DATES_CHANGED_YN
22591  ,GEN_SUBLINE_BSCH_YN
22592  )
22593  SELECT
22594   To_number(rawtohex(sys_guid()), HexFormatStr) AS okcB_NewID --*
22595  ,okcB.LINE_NUMBER AS okcB_LINE_NUMBER
22596  ,decode(okcB.CHR_ID,NULL,NULL,P_To_Chr_ID) AS okcB_NewChrID --*
22597  ,ApiLinesRecTab.ToLineTab(i) AS okcB_CLE_ID --*
22598  ,okcB.CLE_ID_RENEWED AS okcB_CLE_ID_RENEWED
22599  ,P_To_Chr_ID AS okcB_NewDnzChrID --*
22600  ,okcB.DISPLAY_SEQUENCE AS okcB_DISPLAY_SEQUENCE
22601  ,okcB.STS_CODE AS okcB_STS_CODE
22602  ,okcB.TRN_CODE AS okcB_TRN_CODE
22603  ,okcB.LSE_ID AS okcB_LSE_ID
22604  ,okcB.EXCEPTION_YN AS okcB_EXCEPTION_YN
22605  ,okcB.OBJECT_VERSION_NUMBER AS okcB_OBJECT_VERSION_NUMBER
22606  ,okcB.CREATED_BY AS okcB_CREATED_BY
22607  ,okcB.CREATION_DATE AS okcB_CREATION_DATE
22608  ,okcB.LAST_UPDATED_BY AS okcB_LAST_UPDATED_BY
22609  ,okcB.LAST_UPDATE_DATE AS okcB_LAST_UPDATE_DATE
22610  ,okcB.HIDDEN_IND AS okcB_HIDDEN_IND
22611  ,okcB.PRICE_NEGOTIATED AS okcB_PRICE_NEGOTIATED
22612  ,okcB.PRICE_LEVEL_IND AS okcB_PRICE_LEVEL_IND
22613  ,okcB.PRICE_UNIT AS okcB_PRICE_UNIT
22614  ,okcB.PRICE_UNIT_PERCENT AS okcB_PRICE_UNIT_PERCENT
22615  ,okcB.INVOICE_LINE_LEVEL_IND AS okcB_INVOICE_LINE_LEVEL_IND
22616  ,okcB.DPAS_RATING AS okcB_DPAS_RATING
22617  ,okcB.TEMPLATE_USED AS okcB_TEMPLATE_USED
22618  ,okcB.PRICE_TYPE AS okcB_PRICE_TYPE
22619  ,okcB.CURRENCY_CODE AS okcB_CURRENCY_CODE
22620  ,okcB.LAST_UPDATE_LOGIN AS okcB_LAST_UPDATE_LOGIN
22621  ,okcB.DATE_TERMINATED AS okcB_DATE_TERMINATED
22622  ,(CASE
22623     WHEN (
22624           (nvl(okcB.START_DATE,sysdate) BETWEEN
22625               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22626           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22627           )
22628        AND
22629           (nvl(okcB.END_DATE,sysdate) BETWEEN
22630               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22631           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22632           )
22633          )
22634     THEN nvl(okcB.START_DATE,sysdate)
22635     ELSE (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22636     END
22637    ) AS okcB_START_DATE --okcB.START_DATE AS okcB_START_DATE
22638  ,(CASE
22639     WHEN (
22640           (nvl(okcB.START_DATE,sysdate) BETWEEN
22641               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22642           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22643           )
22644        AND
22645           (nvl(okcB.END_DATE,sysdate) BETWEEN
22646               (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22647           AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22648           )
22649          )
22650     THEN nvl(okcB.END_DATE,sysdate)
22651     ELSE (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22652     END
22653    ) AS okcB_END_DATE --okcB.END_DATE AS okcB_END_DATE
22654  ,okcB.ATTRIBUTE_CATEGORY AS okcB_ATTRIBUTE_CATEGORY
22655  ,okcB.ATTRIBUTE1 AS okcB_ATTRIBUTE1
22656  ,okcB.ATTRIBUTE2 AS okcB_ATTRIBUTE2
22657  ,okcB.ATTRIBUTE3 AS okcB_ATTRIBUTE3
22658  ,okcB.ATTRIBUTE4 AS okcB_ATTRIBUTE4
22659  ,okcB.ATTRIBUTE5 AS okcB_ATTRIBUTE5
22660  ,okcB.ATTRIBUTE6 AS okcB_ATTRIBUTE6
22661  ,okcB.ATTRIBUTE7 AS okcB_ATTRIBUTE7
22662  ,okcB.ATTRIBUTE8 AS okcB_ATTRIBUTE8
22663  ,okcB.ATTRIBUTE9 AS okcB_ATTRIBUTE9
22664  ,okcB.ATTRIBUTE10 AS okcB_ATTRIBUTE10
22665  ,okcB.ATTRIBUTE11 AS okcB_ATTRIBUTE11
22666  ,okcB.ATTRIBUTE12 AS okcB_ATTRIBUTE12
22667  ,okcB.ATTRIBUTE13 AS okcB_ATTRIBUTE13
22668  ,okcB.ATTRIBUTE14 AS okcB_ATTRIBUTE14
22669  ,okcB.ATTRIBUTE15 AS okcB_ATTRIBUTE15
22670  ,okcB.SECURITY_GROUP_ID AS okcB_SECURITY_GROUP_ID
22671  ,okcB.CLE_ID_RENEWED_TO AS okcB_CLE_ID_RENEWED_TO
22672  ,okcB.PRICE_NEGOTIATED_RENEWED AS okcB_PRICE_NEGOTIATED_RENEWED
22673  ,okcB.CURRENCY_CODE_RENEWED AS okcB_CURRENCY_CODE_RENEWED
22674  ,okcB.UPG_ORIG_SYSTEM_REF AS okcB_UPG_ORIG_SYSTEM_REF
22675  ,okcB.UPG_ORIG_SYSTEM_REF_ID AS okcB_UPG_ORIG_SYSTEM_REF_ID
22676  ,okcB.DATE_RENEWED AS okcB_DATE_RENEWED
22677  ,okcB.ORIG_SYSTEM_SOURCE_CODE AS okcB_ORIG_SYSTEM_SOURCE_CODE
22678  ,okcB.ID AS okcB_ORIG_SYSTEM_ID1 --*
22679  ,okcB.ORIG_SYSTEM_REFERENCE1 AS okcB_ORIG_SYSTEM_REFERENCE1
22680  ,okcB.PROGRAM_APPLICATION_ID AS okcB_PROGRAM_APPLICATION_ID
22681  ,okcB.PROGRAM_ID AS okcB_PROGRAM_ID
22682  ,okcB.PROGRAM_UPDATE_DATE AS okcB_PROGRAM_UPDATE_DATE
22683  ,okcB.REQUEST_ID AS okcB_REQUEST_ID
22684  ,okcB.PRICE_LIST_ID AS okcB_PRICE_LIST_ID
22685  ,okcB.PRICE_LIST_LINE_ID AS okcB_PRICE_LIST_LINE_ID
22686  ,okcB.LINE_LIST_PRICE AS okcB_LINE_LIST_PRICE
22687  ,okcB.ITEM_TO_PRICE_YN AS okcB_ITEM_TO_PRICE_YN
22688  ,okcB.PRICING_DATE AS okcB_PRICING_DATE
22689  ,okcB.PRICE_BASIS_YN AS okcB_PRICE_BASIS_YN
22690  ,okcB.CONFIG_HEADER_ID AS okcB_CONFIG_HEADER_ID
22691  ,okcB.CONFIG_REVISION_NUMBER AS okcB_CONFIG_REVISION_NUMBER
22692  ,okcB.CONFIG_COMPLETE_YN AS okcB_CONFIG_COMPLETE_YN
22693  ,okcB.CONFIG_VALID_YN AS okcB_CONFIG_VALID_YN
22694  ,okcB.CONFIG_TOP_MODEL_LINE_ID AS okcB_CONFIG_TOP_MODEL_LINE_ID
22695  ,okcB.CONFIG_ITEM_TYPE AS okcB_CONFIG_ITEM_TYPE
22696  ,okcB.CONFIG_ITEM_ID AS okcB_CONFIG_ITEM_ID
22697  ,okcB.SERVICE_ITEM_YN AS okcB_SERVICE_ITEM_YN
22698  ,okcB.PH_PRICING_TYPE AS okcB_PH_PRICING_TYPE
22699  ,okcB.PH_PRICE_BREAK_BASIS AS okcB_PH_PRICE_BREAK_BASIS
22700  ,okcB.PH_MIN_QTY AS okcB_PH_MIN_QTY
22701  ,okcB.PH_MIN_AMT AS okcB_PH_MIN_AMT
22702  ,okcB.PH_QP_REFERENCE_ID AS okcB_PH_QP_REFERENCE_ID
22703  ,okcB.PH_VALUE AS okcB_PH_VALUE
22704  ,okcB.PH_ENFORCE_PRICE_LIST_YN AS okcB_PH_ENFORCE_PRICE_LIST_YN
22705  ,okcB.PH_ADJUSTMENT AS okcB_PH_ADJUSTMENT
22706  ,okcB.PH_INTEGRATED_WITH_QP AS okcB_PH_INTEGRATED_WITH_QP
22707  ,okcB.CUST_ACCT_ID AS okcB_CUST_ACCT_ID
22708  ,okcB.BILL_TO_SITE_USE_ID AS okcB_BILL_TO_SITE_USE_ID
22709  ,okcB.INV_RULE_ID AS okcB_INV_RULE_ID
22710  ,okcB.LINE_RENEWAL_TYPE_CODE AS okcB_LINE_RENEWAL_TYPE_CODE
22711  ,okcB.SHIP_TO_SITE_USE_ID AS okcB_SHIP_TO_SITE_USE_ID
22712  ,okcB.PAYMENT_TERM_ID AS okcB_PAYMENT_TERM_ID
22713  ,okcB.DATE_CANCELLED AS okcB_DATE_CANCELLED
22714  ,okcB.TERM_CANCEL_SOURCE AS okcB_TERM_CANCEL_SOURCE
22715  ,okcB.ANNUALIZED_FACTOR AS okcB_ANNUALIZED_FACTOR
22716 -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
22717  ,NULL AS okcB_PAYMENT_INSTRUCTION_TYPE
22718  ,okcB.CANCELLED_AMOUNT AS okcB_CANCELLED_AMOUNT
22719  ,nvl(ApiLinesRecTab.LineExistsYNTab(i),'N')
22720  ,(CASE
22721     WHEN (
22722            (nvl(okcB.START_DATE,sysdate) BETWEEN
22723                (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22724            AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i)))
22725        AND
22726            (nvl(okcB.END_DATE,sysdate) BETWEEN
22727                (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22728            AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i)))
22729          )
22730     THEN 'N'
22731     ELSE 'Y'
22732     END
22733    ) AS okcB_DATES_CHANGED_YN
22734  ,(CASE
22735     WHEN (
22736 	   (
22737             (nvl(okcB.START_DATE,sysdate) BETWEEN
22738                 (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22739             AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22740             )
22741           AND
22742             (nvl(okcB.END_DATE,sysdate) BETWEEN
22743                 (select nvl(b.START_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22744             AND (select nvl(b.END_DATE,sysdate) from OKC_K_LINES_B b where b.ID = ApiLinesRecTab.ToLineTab(i))
22745             )
22746            )
22747         AND okcB.DATE_TERMINATED IS NULL
22748          )
22749     THEN 'N'
22750     ELSE 'Y'
22751     END
22752    ) AS okcB_GEN_SUBLINE_BSCH_YN
22753  FROM
22754  OKC_K_LINES_B okcB
22755  WHERE okcB.ID = ApiLinesRecTab.IDTab(i)
22756  AND ApiLinesRecTab.ToLineTab(i) IS NOT NULL
22757  AND ApiLinesRecTab.LineExistsYNTab(i) = 'Y'
22758  AND okcB.DNZ_CHR_ID = P_From_Chr_ID;
22759 
22760    EXCEPTION
22761     WHEN OTHERS THEN
22762            /*
22763               If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
22764                   FND_LOG.string(FND_LOG.level_unexpected
22765                                 ,l_module_name
22766                                 ,'During Bulk Insert into OKC_K_LINES_B_TEMP :  d) :'||SQLERRM);
22767               End If;
22768            */
22769 
22770 
22771          OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22772      l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22773      RAISE G_EXCEPTION_HALT_VALIDATION;
22774  End;
22775 
22776     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
22777       FND_LOG.string(FND_LOG.level_statement
22778                     ,l_module_name
22779                     ,'After Bulk Insert into OKC_K_LINES_B_TEMP'
22780                     );
22781     End If;
22782 
22783 -----------------------------------------------------------------------------
22784 -----Update of OKC_K_LINES_B_TEMP to set CLE_ID to point to the new IDs of
22785 -----Target lines to be created
22786   printTemptable;
22787 
22788  Begin
22789   UPDATE OKC_K_LINES_B_TEMP a
22790    SET a.CLE_ID = (select b.ID
22791                    FROM OKC_K_LINES_B_TEMP b
22792                    WHERE
22793                    b.ORIG_SYSTEM_ID1 = a.CLE_ID
22794                    AND b.DNZ_CHR_ID = P_To_Chr_ID)
22795    WHERE
22796    a.DNZ_CHR_ID = P_To_Chr_ID
22797    AND a.CLE_ID IS NOT NULL
22798    AND a.LINE_EXISTS_YN = 'N';
22799      EXCEPTION
22800       WHEN OTHERS THEN
22801         If (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) then
22802                   FND_LOG.string(FND_LOG.level_unexpected
22803                                 ,l_module_name
22804                                 ,'During update of cle_id in OKC_K_LINES_B_TEMP :'
22805 			       ||SQLERRM
22806                                 );
22807         End If;
22808         OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
22809         l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
22810         RAISE G_EXCEPTION_HALT_VALIDATION;
22811 
22812 
22813  End;
22814 
22815 ------------------------------------------------------------------------------
22816 
22817  -------------Update Dates of Business Process Lines and its children based on Offset Information------
22818  Begin
22819   Update_BP_StartDates(P_From_Chr_ID => P_From_Chr_ID
22820                       ,P_To_Chr_ID => P_To_Chr_ID
22821                       ,x_return_status => l_return_status);
22822 
22823       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
22824              RAISE G_EXCEPTION_HALT_VALIDATION;
22825       End If;
22826 
22827  End;
22828  ------------------------------------------------------------------------------------------------------
22829 ------------------------------------------------------------------------------
22830 
22831 END IF; -----End of Check of P_Lines_Tbl.COUNT > 0+++++++++++++++++++++++
22832         -----for insert into OKC_K_LINES_B_TEMP +++++++++++++++++++++++++
22833 
22834 ---=============================-End of BULK INSERT INTO OKC_K_LINES_B_TEMP===================
22835 
22836 
22837  -----------------------------------------------------------------------------
22838  --Process rows in OKC_K_LINES_B_TEMP and do bulk inserts into OKC_K_LINES_B
22839  --OKS_K_LINES_B and OKC_K_ITEMS
22840  ----------------------------------------------------------------------------
22841  IF (P_Lines_Tbl.COUNT > 0) then  ---Start of Check of P_Lines_Tbl.COUNT > 0 *****************
22842 				 ---for bulk insert into OKC_K_LINES_B,	    *****************
22843                                  ---OKS_K_LINES_B,OKC_K_ITEMS		    *****************
22844 
22845     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
22846       FND_LOG.string(FND_LOG.level_statement
22847                     ,l_module_name
22848                     ,'Start of BULK FETCH from OKC_K_LINES_B_TEMP'
22849 		   ||'Count of Lines in P_Lines_Tbl='||P_Lines_Tbl.COUNT
22850                     );
22851     End If;
22852 
22853 
22854 --------Start of BULK FETCH FROM OKC_K_LINES_B_TEMP---------------
22855  Begin
22856 
22857 
22858 	IF p_include_cancelled_lines = 'Y' AND
22859            p_include_terminated_lines = 'Y' THEN
22860           OPEN GetOKCOKSLinesB_Temp(P_From_Chr_ID, P_To_Chr_ID);
22861         ELSIF p_include_cancelled_lines = 'N' AND
22862               p_include_terminated_lines = 'Y' THEN
22863           OPEN GetOKCOKSLinesB_Temp_termn(P_From_Chr_ID, P_To_Chr_ID);
22864         ELSIF p_include_cancelled_lines = 'Y' AND
22865               p_include_terminated_lines = 'N' THEN
22866           OPEN GetOKCOKSLinesB_Temp_cancel(P_From_Chr_ID, P_To_Chr_ID);
22867         ELSIF p_include_cancelled_lines = 'N' AND
22868               p_include_terminated_lines = 'N' THEN
22869           OPEN GetOKCOKSLinesB_Temp_exclude(P_From_Chr_ID, P_To_Chr_ID);
22870         END IF;
22871 
22872   LOOP
22873    IF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'Y' THEN
22874    FETCH GetOKCOKSLinesB_Temp BULK COLLECT INTO
22875     OKCOKSLinesRecTab.OkcB_OldOKCLineID
22876    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
22877    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
22878    ,OKCOKSLinesRecTab.OkcB_NewChrID
22879    ,OKCOKSLinesRecTab.OkcB_CLE_ID
22880    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
22881    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
22882    ,OKCOKSLinesRecTab.OkcB_STS_CODE
22883    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
22884    ,OKCOKSLinesRecTab.OkcB_LSE_ID
22885    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
22886    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
22887    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
22888    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
22889    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
22890    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
22891    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
22892    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
22893    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
22894    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
22895    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
22896    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
22897    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
22898    ,OKCOKSLinesRecTab.OkcB_START_DATE
22899    ,OKCOKSLinesRecTab.OkcB_END_DATE
22900    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
22901    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
22902    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
22903    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
22904    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
22905    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
22906    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
22907    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
22908    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
22909    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
22910    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
22911    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
22912    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
22913    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
22914    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
22915    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
22916    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
22917    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
22918    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
22919    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
22920    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
22921    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
22922    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
22923    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
22924    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
22925    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
22926    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
22927    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
22928    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
22929    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
22930    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
22931    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
22932    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
22933    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
22934    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
22935    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
22936    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
22937    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
22938    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
22939    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
22940    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
22941    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
22942    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
22943    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
22944    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
22945    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
22946    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
22947    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
22948    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
22949    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
22950    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
22951    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
22952    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
22953    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
22954    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
22955    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
22956    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
22957    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
22958    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
22959    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
22960    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
22961    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
22962    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
22963    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
22964    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
22965 -----------------End of record members for OKC_K_LINES_B columns
22966 -----------------Start of record members for OKS_K_LINES_B columns
22967    ,OKCOKSLinesRecTab.OksB_OldOksLineID
22968    ,OKCOKSLinesRecTab.OksB_NewOksLineID
22969    ,OKCOKSLinesRecTab.OksB_CLE_ID
22970    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
22971    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
22972    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
22973    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
22974    ,OKCOKSLinesRecTab.OksB_CC_NO
22975    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
22976    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
22977    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
22978    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
22979    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
22980    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
22981    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
22982    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
22983    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
22984    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
22985    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
22986    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
22987    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
22988    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
22989    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
22990    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
22991    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
22992    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
22993    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
22994    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
22995    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
22996    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
22997    ,OKCOKSLinesRecTab.OksB_TAX_CODE
22998    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
22999    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23000    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23001    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23002    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23003    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23004    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23005    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23006    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23007    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23008    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23009    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23010    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23011    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23012    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23013    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23014    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23015    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23016    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23017    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23018    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23019    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23020    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23021    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23022    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23023    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23024    ,OKCOKSLinesRecTab.OksB_BASE_READING
23025    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23026    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23027    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23028    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23029    ,OKCOKSLinesRecTab.OksB_PRORATE
23030    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23031    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23032    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23033    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23034    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23035    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23036    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23037    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23038    ,OKCOKSLinesRecTab.OksB_PDF_ID
23039    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23040    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23041    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23042    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23043    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23044    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23045    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23046    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23047    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23048    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23049    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23050    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23051    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23052    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23053    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23054    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23055    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23056    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23057    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23058    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23059    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23060    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23061    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23062 -----------------End of record members for OKS_K_LINES_B columns
23063 -----------------Start of record members for OKC_K_ITEMS columns
23064    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23065    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23066    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23067    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23068    ,OKCOKSLinesRecTab.OkcI_NewChrID
23069    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23070    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23071    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23072    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23073    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23074    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23075    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23076    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23077    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23078    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23079    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23080    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23081    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23082    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23083    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
23084    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
23085 
23086   ELSIF p_include_cancelled_lines = 'Y' AND p_include_terminated_lines = 'N' THEN
23087    FETCH GetOKCOKSLinesB_Temp_CANCEL BULK COLLECT INTO
23088     OKCOKSLinesRecTab.OkcB_OldOKCLineID
23089    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
23090    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
23091    ,OKCOKSLinesRecTab.OkcB_NewChrID
23092    ,OKCOKSLinesRecTab.OkcB_CLE_ID
23093    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
23094    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
23095    ,OKCOKSLinesRecTab.OkcB_STS_CODE
23096    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
23097    ,OKCOKSLinesRecTab.OkcB_LSE_ID
23098    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
23099    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
23100    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
23101    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
23102    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
23103    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
23104    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
23105    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
23106    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
23107    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
23108    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
23109    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
23110    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
23111    ,OKCOKSLinesRecTab.OkcB_START_DATE
23112    ,OKCOKSLinesRecTab.OkcB_END_DATE
23113    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
23114    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
23115    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
23116    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
23117    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
23118    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
23119    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
23120    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
23121    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
23122    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
23123    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
23124    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
23125    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
23126    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
23127    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
23128    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
23129    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
23130    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
23131    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
23132    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
23133    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
23134    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
23135    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
23136    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
23137    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
23138    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
23139    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
23140    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
23141    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
23142    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
23143    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
23144    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
23145    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
23146    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
23147    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
23148    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
23149    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
23150    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
23151    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
23152    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
23153    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
23154    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
23155    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
23156    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
23157    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
23158    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
23159    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
23160    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
23161    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
23162    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
23163    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
23164    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
23165    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
23166    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
23167    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
23168    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
23169    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
23170    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
23171    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
23172    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
23173    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
23174    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
23175    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
23176    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
23177    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
23178 -----------------End of record members for OKC_K_LINES_B columns
23179 -----------------Start of record members for OKS_K_LINES_B columns
23180    ,OKCOKSLinesRecTab.OksB_OldOksLineID
23181    ,OKCOKSLinesRecTab.OksB_NewOksLineID
23182    ,OKCOKSLinesRecTab.OksB_CLE_ID
23183    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
23184    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
23185    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
23186    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
23187    ,OKCOKSLinesRecTab.OksB_CC_NO
23188    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
23189    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
23190    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
23191    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
23192    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
23193    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
23194    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
23195    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
23196    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
23197    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
23198    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
23199    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
23200    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
23201    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
23202    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
23203    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
23204    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
23205    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
23206    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
23207    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
23208    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
23209    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
23210    ,OKCOKSLinesRecTab.OksB_TAX_CODE
23211    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
23212    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23213    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23214    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23215    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23216    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23217    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23218    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23219    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23220    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23221    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23222    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23223    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23224    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23225    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23226    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23227    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23228    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23229    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23230    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23231    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23232    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23233    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23234    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23235    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23236    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23237    ,OKCOKSLinesRecTab.OksB_BASE_READING
23238    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23239    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23240    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23241    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23242    ,OKCOKSLinesRecTab.OksB_PRORATE
23243    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23244    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23245    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23246    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23247    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23248    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23249    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23250    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23251    ,OKCOKSLinesRecTab.OksB_PDF_ID
23252    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23253    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23254    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23255    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23256    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23257    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23258    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23259    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23260    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23261    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23262    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23263    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23264    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23265    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23266    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23267    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23268    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23269    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23270    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23271    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23272    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23273    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23274    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23275 -----------------End of record members for OKS_K_LINES_B columns
23276 -----------------Start of record members for OKC_K_ITEMS columns
23277    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23278    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23279    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23280    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23281    ,OKCOKSLinesRecTab.OkcI_NewChrID
23282    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23283    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23284    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23285    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23286    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23287    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23288    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23289    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23290    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23291    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23292    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23293    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23294    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23295    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23296    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
23297    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
23298 
23299   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'Y' THEN
23300    FETCH GetOKCOKSLinesB_Temp_TERMN BULK COLLECT INTO
23301     OKCOKSLinesRecTab.OkcB_OldOKCLineID
23302    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
23303    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
23304    ,OKCOKSLinesRecTab.OkcB_NewChrID
23305    ,OKCOKSLinesRecTab.OkcB_CLE_ID
23306    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
23307    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
23308    ,OKCOKSLinesRecTab.OkcB_STS_CODE
23309    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
23310    ,OKCOKSLinesRecTab.OkcB_LSE_ID
23311    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
23312    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
23313    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
23314    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
23315    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
23316    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
23317    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
23318    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
23319    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
23320    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
23321    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
23322    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
23323    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
23324    ,OKCOKSLinesRecTab.OkcB_START_DATE
23325    ,OKCOKSLinesRecTab.OkcB_END_DATE
23326    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
23327    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
23328    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
23329    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
23330    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
23331    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
23332    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
23333    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
23334    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
23335    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
23336    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
23337    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
23338    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
23339    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
23340    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
23341    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
23342    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
23343    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
23344    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
23345    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
23346    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
23347    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
23348    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
23349    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
23350    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
23351    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
23352    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
23353    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
23354    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
23355    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
23356    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
23357    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
23358    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
23359    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
23360    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
23361    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
23362    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
23363    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
23364    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
23365    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
23366    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
23367    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
23368    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
23369    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
23370    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
23371    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
23372    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
23373    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
23374    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
23375    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
23376    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
23377    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
23378    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
23379    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
23380    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
23381    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
23382    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
23383    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
23384    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
23385    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
23386    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
23387    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
23388    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
23389    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
23390    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
23391 -----------------End of record members for OKC_K_LINES_B columns
23392 -----------------Start of record members for OKS_K_LINES_B columns
23393    ,OKCOKSLinesRecTab.OksB_OldOksLineID
23394    ,OKCOKSLinesRecTab.OksB_NewOksLineID
23395    ,OKCOKSLinesRecTab.OksB_CLE_ID
23396    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
23397    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
23398    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
23399    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
23400    ,OKCOKSLinesRecTab.OksB_CC_NO
23401    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
23402    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
23403    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
23404    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
23405    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
23406    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
23407    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
23408    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
23409    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
23410    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
23411    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
23412    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
23413    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
23414    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
23415    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
23416    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
23417    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
23418    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
23419    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
23420    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
23421    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
23422    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
23423    ,OKCOKSLinesRecTab.OksB_TAX_CODE
23424    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
23425    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23426    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23427    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23428    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23429    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23430    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23431    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23432    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23433    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23434    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23435    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23436    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23437    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23438    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23439    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23440    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23441    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23442    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23443    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23444    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23445    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23446    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23447    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23448    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23449    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23450    ,OKCOKSLinesRecTab.OksB_BASE_READING
23451    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23452    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23453    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23454    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23455    ,OKCOKSLinesRecTab.OksB_PRORATE
23456    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23457    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23458    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23459    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23460    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23461    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23462    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23463    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23464    ,OKCOKSLinesRecTab.OksB_PDF_ID
23465    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23466    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23467    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23468    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23469    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23470    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23471    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23472    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23473    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23474    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23475    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23476    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23477    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23478    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23479    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23480    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23481    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23482    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23483    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23484    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23485    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23486    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23487    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23488 -----------------End of record members for OKS_K_LINES_B columns
23489 -----------------Start of record members for OKC_K_ITEMS columns
23490    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23491    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23492    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23493    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23494    ,OKCOKSLinesRecTab.OkcI_NewChrID
23495    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23496    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23497    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23498    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23499    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23500    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23501    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23502    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23503    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23504    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23505    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23506    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23507    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23508    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23509    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
23510    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
23511 
23512   ELSIF p_include_cancelled_lines = 'N' AND p_include_terminated_lines = 'N' THEN
23513    FETCH GetOKCOKSLinesB_Temp_EXCLUDE BULK COLLECT INTO
23514     OKCOKSLinesRecTab.OkcB_OldOKCLineID
23515    ,OKCOKSLinesRecTab.OkcB_NewOKCLineID
23516    ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER
23517    ,OKCOKSLinesRecTab.OkcB_NewChrID
23518    ,OKCOKSLinesRecTab.OkcB_CLE_ID
23519    ,OKCOKSLinesRecTab.OkcB_NewDnzChrID
23520    ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE
23521    ,OKCOKSLinesRecTab.OkcB_STS_CODE
23522    ,OKCOKSLinesRecTab.OkcB_TRN_CODE
23523    ,OKCOKSLinesRecTab.OkcB_LSE_ID
23524    ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN
23525    ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER
23526    ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND
23527    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED
23528    ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND
23529    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT
23530    ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT
23531    ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND
23532    ,OKCOKSLinesRecTab.OkcB_DPAS_RATING
23533    ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED
23534    ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE
23535    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE
23536    ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED
23537    ,OKCOKSLinesRecTab.OkcB_START_DATE
23538    ,OKCOKSLinesRecTab.OkcB_END_DATE
23539    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY
23540    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1
23541    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2
23542    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3
23543    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4
23544    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5
23545    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6
23546    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7
23547    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8
23548    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9
23549    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10
23550    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11
23551    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12
23552    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13
23553    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14
23554    ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15
23555    ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID
23556    ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED
23557    ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED
23558    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF
23559    ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID
23560    ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED
23561    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1
23562    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1
23563    ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE
23564    ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID
23565    ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID
23566    ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE
23567    ,OKCOKSLinesRecTab.OkcB_REQUEST_ID
23568    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID
23569    ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID
23570    ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE
23571    ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN
23572    ,OKCOKSLinesRecTab.OkcB_PRICING_DATE
23573    ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN
23574    ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID
23575    ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER
23576    ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN
23577    ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN
23578    ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID
23579    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE
23580    ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID
23581    ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN
23582    ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE
23583    ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS
23584    ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY
23585    ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT
23586    ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID
23587    ,OKCOKSLinesRecTab.OkcB_PH_VALUE
23588    ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN
23589    ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT
23590    ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP
23591    ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID
23592    ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID
23593    ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID
23594    ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE
23595    ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID
23596    ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID
23597    ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED
23598    ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE
23599    ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR
23600    ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE
23601    ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT
23602    ,OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG --pseudo column
23603    ,OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG --pseudo column
23604 -----------------End of record members for OKC_K_LINES_B columns
23605 -----------------Start of record members for OKS_K_LINES_B columns
23606    ,OKCOKSLinesRecTab.OksB_OldOksLineID
23607    ,OKCOKSLinesRecTab.OksB_NewOksLineID
23608    ,OKCOKSLinesRecTab.OksB_CLE_ID
23609    ,OKCOKSLinesRecTab.OksB_NewDnzChrID
23610    ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST
23611    ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID
23612    ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE
23613    ,OKCOKSLinesRecTab.OksB_CC_NO
23614    ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE
23615    ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID
23616    ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE
23617    ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID
23618    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID
23619    ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN
23620    ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD
23621    ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE
23622    ,OKCOKSLinesRecTab.OksB_TERMN_METHOD
23623    ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT
23624    ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT
23625    ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT
23626    ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT
23627    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN
23628    ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER
23629    ,OKCOKSLinesRecTab.OksB_GRACE_DURATION
23630    ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD
23631    ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG
23632    ,OKCOKSLinesRecTab.OksB_PRICE_UOM
23633    ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT
23634    ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN
23635    ,OKCOKSLinesRecTab.OksB_TAX_STATUS
23636    ,OKCOKSLinesRecTab.OksB_TAX_CODE
23637    ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID
23638    ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE
23639    ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE
23640    ,OKCOKSLinesRecTab.OksB_PROD_PRICE
23641    ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE
23642    ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE
23643    ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY
23644    ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT
23645    ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE
23646    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE
23647    ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL
23648    ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY
23649    ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE
23650    ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE
23651    ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY
23652    ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL
23653    ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL
23654    ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY
23655    ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY
23656    ,OKCOKSLinesRecTab.OksB_AMCV_FLAG
23657    ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY
23658    ,OKCOKSLinesRecTab.OksB_USAGE_DURATION
23659    ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD
23660    ,OKCOKSLinesRecTab.OksB_LEVEL_YN
23661    ,OKCOKSLinesRecTab.OksB_USAGE_TYPE
23662    ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED
23663    ,OKCOKSLinesRecTab.OksB_BASE_READING
23664    ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE
23665    ,OKCOKSLinesRecTab.OksB_FULL_CREDIT
23666    ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID
23667    ,OKCOKSLinesRecTab.OksB_BREAK_UOM
23668    ,OKCOKSLinesRecTab.OksB_PRORATE
23669    ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE
23670    ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID
23671    ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED
23672    ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT
23673    ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT
23674    ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION
23675    ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD
23676    ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID
23677    ,OKCOKSLinesRecTab.OksB_PDF_ID
23678    ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN
23679    ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN
23680    ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION
23681    ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN
23682    ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE
23683    ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID
23684    ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN
23685    ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN
23686    ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT
23687    ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE
23688    ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL
23689    ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER
23690    ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID
23691    ,OKCOKSLinesRecTab.OksB_REQUEST_ID
23692    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1
23693    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1
23694    ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE
23695    ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID
23696    ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE
23697    ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER
23698    ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE
23699    ,OKCOKSLinesRecTab.OksB_COVERAGE_ID
23700    ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN
23701 -----------------End of record members for OKS_K_LINES_B columns
23702 -----------------Start of record members for OKC_K_ITEMS columns
23703    ,OKCOKSLinesRecTab.OkcI_OldOkcItemID
23704    ,OKCOKSLinesRecTab.OkcI_NewOkcItemID
23705    ,OKCOKSLinesRecTab.OkcI_CLE_ID
23706    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID
23707    ,OKCOKSLinesRecTab.OkcI_NewChrID
23708    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1
23709    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2
23710    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE
23711    ,OKCOKSLinesRecTab.OkcI_UOM_CODE
23712    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN
23713    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS
23714    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN
23715    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER
23716    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID
23717    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF
23718    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID
23719    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID
23720    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID
23721    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE
23722    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID
23723    ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID LIMIT G_BULK_FETCH_LIMIT;
23724   END IF;
23725 
23726   ---Bulk insert into OKC_K_LINES_B---
23727 
23728   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
23729   INSERT INTO OKC_K_LINES_B(
23730    ID
23731  , LINE_NUMBER
23732  , CHR_ID
23733  , CLE_ID
23734  , DNZ_CHR_ID
23735  , DISPLAY_SEQUENCE
23736  , STS_CODE
23737  , TRN_CODE
23738  , LSE_ID
23739  , EXCEPTION_YN
23740  , OBJECT_VERSION_NUMBER
23741  , HIDDEN_IND
23742  , PRICE_NEGOTIATED
23743  , PRICE_LEVEL_IND
23744  , PRICE_UNIT
23745  , PRICE_UNIT_PERCENT
23746  , INVOICE_LINE_LEVEL_IND
23747  , DPAS_RATING
23748  , TEMPLATE_USED
23749  , PRICE_TYPE
23750  , CURRENCY_CODE
23751  , DATE_TERMINATED
23752  , START_DATE
23753  , END_DATE
23754  , ATTRIBUTE_CATEGORY
23755  , ATTRIBUTE1
23756  , ATTRIBUTE2
23757  , ATTRIBUTE3
23758  , ATTRIBUTE4
23759  , ATTRIBUTE5
23760  , ATTRIBUTE6
23761  , ATTRIBUTE7
23762  , ATTRIBUTE8
23763  , ATTRIBUTE9
23764  , ATTRIBUTE10
23765  , ATTRIBUTE11
23766  , ATTRIBUTE12
23767  , ATTRIBUTE13
23768  , ATTRIBUTE14
23769  , ATTRIBUTE15
23770  , SECURITY_GROUP_ID
23771  , PRICE_NEGOTIATED_RENEWED
23772  , CURRENCY_CODE_RENEWED
23773  , UPG_ORIG_SYSTEM_REF
23774  , UPG_ORIG_SYSTEM_REF_ID
23775  , DATE_RENEWED
23776  , ORIG_SYSTEM_ID1
23777  , ORIG_SYSTEM_REFERENCE1
23778  , ORIG_SYSTEM_SOURCE_CODE
23779  , PROGRAM_APPLICATION_ID
23780  , PROGRAM_ID
23781  , PROGRAM_UPDATE_DATE
23782  , REQUEST_ID
23783  , PRICE_LIST_ID
23784  , PRICE_LIST_LINE_ID
23785  , LINE_LIST_PRICE
23786  , ITEM_TO_PRICE_YN
23787  , PRICING_DATE
23788  , PRICE_BASIS_YN
23789  , CONFIG_HEADER_ID
23790  , CONFIG_REVISION_NUMBER
23791  , CONFIG_COMPLETE_YN
23792  , CONFIG_VALID_YN
23793  , CONFIG_TOP_MODEL_LINE_ID
23794  , CONFIG_ITEM_TYPE
23795  , CONFIG_ITEM_ID
23796  , SERVICE_ITEM_YN
23797  , PH_PRICING_TYPE
23798  , PH_PRICE_BREAK_BASIS
23799  , PH_MIN_QTY
23800  , PH_MIN_AMT
23801  , PH_QP_REFERENCE_ID
23802  , PH_VALUE
23803  , PH_ENFORCE_PRICE_LIST_YN
23804  , PH_ADJUSTMENT
23805  , PH_INTEGRATED_WITH_QP
23806  , CUST_ACCT_ID
23807  , BILL_TO_SITE_USE_ID
23808  , INV_RULE_ID
23809  , LINE_RENEWAL_TYPE_CODE
23810  , SHIP_TO_SITE_USE_ID
23811  , PAYMENT_TERM_ID
23812  , DATE_CANCELLED
23813  , TERM_CANCEL_SOURCE
23814  , ANNUALIZED_FACTOR
23815  , PAYMENT_INSTRUCTION_TYPE -- hkamdar 29-Mar-2006 Bug # 4722452
23816  , CANCELLED_AMOUNT
23817  , CREATION_DATE
23818  , CREATED_BY
23819  , LAST_UPDATE_DATE
23820  , LAST_UPDATED_BY
23821  , LAST_UPDATE_LOGIN
23822   )
23823  SELECT
23824   OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
23825  ,OKCOKSLinesRecTab.OkcB_LINE_NUMBER(i)
23826  ,OKCOKSLinesRecTab.OkcB_NewChrID(i)
23827  ,OKCOKSLinesRecTab.OkcB_CLE_ID(i)
23828  ,OKCOKSLinesRecTab.OkcB_NewDnzChrID(i)
23829  ,OKCOKSLinesRecTab.OkcB_DISPLAY_SEQUENCE(i)
23830  ,decode(p_change_status_YN
23831         ,'Y'
23832         ,l_Default_Sts_Code
23833         ,'N'
23834         ,decode(OKCOKSLinesRecTab.OkcB_CLE_ID(i)
23835                ,NULL
23836                ,l_Default_Sts_Code
23837 	       ,OKCOKSLinesRecTab.OkcB_STS_CODE(i)
23838                )
23839         )
23840  ,OKCOKSLinesRecTab.OkcB_TRN_CODE(i)
23841  ,OKCOKSLinesRecTab.OkcB_LSE_ID(i)
23842  ,OKCOKSLinesRecTab.OkcB_EXCEPTION_YN(i)
23843  ,OKCOKSLinesRecTab.OkcB_OBJECT_VERSION_NUMBER(i)
23844  ,OKCOKSLinesRecTab.OkcB_HIDDEN_IND(i)
23845  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED(i)
23846  ,OKCOKSLinesRecTab.OkcB_PRICE_LEVEL_IND(i)
23847  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT(i)
23848  ,OKCOKSLinesRecTab.OkcB_PRICE_UNIT_PERCENT(i)
23849  ,OKCOKSLinesRecTab.OkcB_INVOICE_LINE_LEVEL_IND(i)
23850  ,OKCOKSLinesRecTab.OkcB_DPAS_RATING(i)
23851  ,OKCOKSLinesRecTab.OkcB_TEMPLATE_USED(i)
23852  ,OKCOKSLinesRecTab.OkcB_PRICE_TYPE(i)
23853  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE(i)
23854  ,OKCOKSLinesRecTab.OkcB_DATE_TERMINATED(i)
23855  ,OKCOKSLinesRecTab.OkcB_START_DATE(i)
23856  ,OKCOKSLinesRecTab.OkcB_END_DATE(i)
23857  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE_CATEGORY(i)
23858  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE1(i)
23859  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE2(i)
23860  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE3(i)
23861  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE4(i)
23862  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE5(i)
23863  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE6(i)
23864  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE7(i)
23865  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE8(i)
23866  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE9(i)
23867  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE10(i)
23868  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE11(i)
23869  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE12(i)
23870  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE13(i)
23871  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE14(i)
23872  ,OKCOKSLinesRecTab.OkcB_ATTRIBUTE15(i)
23873  ,OKCOKSLinesRecTab.OkcB_SECURITY_GROUP_ID(i)
23874  ,OKCOKSLinesRecTab.OkcB_PRICE_NEGOTIATED_RENEWED(i)
23875  ,OKCOKSLinesRecTab.OkcB_CURRENCY_CODE_RENEWED(i)
23876  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF(i)
23877  ,OKCOKSLinesRecTab.OkcB_UPG_ORIG_SYSTEM_REF_ID(i)
23878  ,OKCOKSLinesRecTab.OkcB_DATE_RENEWED(i)
23879  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_ID1(i)
23880  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_REFERENCE1(i)
23881  ,OKCOKSLinesRecTab.OkcB_ORIG_SYSTEM_SOURCE_CODE(i)
23882  ,OKCOKSLinesRecTab.OkcB_PROGRAM_APPLICATION_ID(i)
23883  ,OKCOKSLinesRecTab.OkcB_PROGRAM_ID(i)
23884  ,OKCOKSLinesRecTab.OkcB_PROGRAM_UPDATE_DATE(i)
23885  ,OKCOKSLinesRecTab.OkcB_REQUEST_ID(i)
23886  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_ID(i)
23887  ,OKCOKSLinesRecTab.OkcB_PRICE_LIST_LINE_ID(i)
23888  ,OKCOKSLinesRecTab.OkcB_LINE_LIST_PRICE(i)
23889  ,OKCOKSLinesRecTab.OkcB_ITEM_TO_PRICE_YN(i)
23890  ,OKCOKSLinesRecTab.OkcB_PRICING_DATE(i)
23891  ,OKCOKSLinesRecTab.OkcB_PRICE_BASIS_YN(i)
23892  ,OKCOKSLinesRecTab.OkcB_CONFIG_HEADER_ID(i)
23893  ,OKCOKSLinesRecTab.OkcB_CONFIG_REVISION_NUMBER(i)
23894  ,OKCOKSLinesRecTab.OkcB_CONFIG_COMPLETE_YN(i)
23895  ,OKCOKSLinesRecTab.OkcB_CONFIG_VALID_YN(i)
23896  ,OKCOKSLinesRecTab.OkcB_CONFIG_TOP_MODEL_LINE_ID(i)
23897  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_TYPE(i)
23898  ,OKCOKSLinesRecTab.OkcB_CONFIG_ITEM_ID(i)
23899  ,OKCOKSLinesRecTab.OkcB_SERVICE_ITEM_YN(i)
23900  ,OKCOKSLinesRecTab.OkcB_PH_PRICING_TYPE(i)
23901  ,OKCOKSLinesRecTab.OkcB_PH_PRICE_BREAK_BASIS(i)
23902  ,OKCOKSLinesRecTab.OkcB_PH_MIN_QTY(i)
23903  ,OKCOKSLinesRecTab.OkcB_PH_MIN_AMT(i)
23904  ,OKCOKSLinesRecTab.OkcB_PH_QP_REFERENCE_ID(i)
23905  ,OKCOKSLinesRecTab.OkcB_PH_VALUE(i)
23906  ,OKCOKSLinesRecTab.OkcB_PH_ENFORCE_PRICE_LIST_YN(i)
23907  ,OKCOKSLinesRecTab.OkcB_PH_ADJUSTMENT(i)
23908  ,OKCOKSLinesRecTab.OkcB_PH_INTEGRATED_WITH_QP(i)
23909  ,OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
23910  ,OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
23911  ,OKCOKSLinesRecTab.OkcB_INV_RULE_ID(i)
23912  ,OKCOKSLinesRecTab.OkcB_LINE_RENEWAL_TYPE_CODE(i)
23913  ,OKCOKSLinesRecTab.OkcB_SHIP_TO_SITE_USE_ID(i)
23914  ,OKCOKSLinesRecTab.OkcB_PAYMENT_TERM_ID(i)
23915  ,OKCOKSLinesRecTab.OkcB_DATE_CANCELLED(i)
23916  ,OKCOKSLinesRecTab.OkcB_TERM_CANCEL_SOURCE(i)
23917  ,OKCOKSLinesRecTab.OkcB_ANNUALIZED_FACTOR(i)
23918  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
23919 -- ,OKCOKSLinesRecTab.OkcB_PAYMENT_INSTRUCTION_TYPE(i) -- hkamdar 29-Mar-2006 Bug # 4722452
23920  ,NULL
23921  ,OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i)
23922  ,SYSDATE
23923  ,FND_GLOBAL.USER_ID
23924  ,SYSDATE
23925  ,FND_GLOBAL.USER_ID
23926  ,FND_GLOBAL.LOGIN_ID
23927   FROM
23928   DUAL;
23929 
23930     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
23931       FND_LOG.string(FND_LOG.level_statement
23932                     ,l_module_name
23933                     ,'After BULK INSERT into OKC_K_LINES_B'
23934                     );
23935     End If;
23936 
23937 
23938  ---Bulk insert into OKS_K_LINES_B---
23939 
23940   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
23941   INSERT INTO OKS_K_LINES_B(
23942    ID
23943   ,CLE_ID
23944   ,DNZ_CHR_ID
23945   ,DISCOUNT_LIST
23946   ,ACCT_RULE_ID
23947   ,PAYMENT_TYPE
23948   ,CC_NO
23949   ,CC_EXPIRY_DATE
23950   ,CC_BANK_ACCT_ID
23951   ,CC_AUTH_CODE
23952   ,COMMITMENT_ID
23953   ,LOCKED_PRICE_LIST_ID
23954   ,USAGE_EST_YN
23955   ,USAGE_EST_METHOD
23956   ,USAGE_EST_START_DATE
23957   ,TERMN_METHOD
23958   ,UBT_AMOUNT
23959   ,CREDIT_AMOUNT
23960   ,SUPPRESSED_CREDIT
23961   ,OVERRIDE_AMOUNT
23962   ,CUST_PO_NUMBER_REQ_YN
23963   ,CUST_PO_NUMBER
23964   ,GRACE_DURATION
23965   ,GRACE_PERIOD
23966   ,INV_PRINT_FLAG
23967   ,PRICE_UOM
23968   ,TAX_AMOUNT
23969   ,TAX_INCLUSIVE_YN
23970   ,TAX_STATUS
23971   ,TAX_CODE
23972   ,TAX_EXEMPTION_ID
23973   ,IB_TRANS_TYPE
23974   ,IB_TRANS_DATE
23975   ,PROD_PRICE
23976   ,SERVICE_PRICE
23977   ,CLVL_LIST_PRICE
23978   ,CLVL_QUANTITY
23979   ,CLVL_EXTENDED_AMT
23980   ,CLVL_UOM_CODE
23981   ,TOPLVL_OPERAND_CODE
23982   ,TOPLVL_OPERAND_VAL
23983   ,TOPLVL_QUANTITY
23984   ,TOPLVL_UOM_CODE
23985   ,TOPLVL_ADJ_PRICE
23986   ,TOPLVL_PRICE_QTY
23987   ,AVERAGING_INTERVAL
23988   ,SETTLEMENT_INTERVAL
23989   ,MINIMUM_QUANTITY
23990   ,DEFAULT_QUANTITY
23991   ,AMCV_FLAG
23992   ,FIXED_QUANTITY
23993   ,USAGE_DURATION
23994   ,USAGE_PERIOD
23995   ,LEVEL_YN
23996   ,USAGE_TYPE
23997   ,UOM_QUANTIFIED
23998   ,BASE_READING
23999   ,BILLING_SCHEDULE_TYPE
24000   ,FULL_CREDIT
24001   ,LOCKED_PRICE_LIST_LINE_ID
24002   ,BREAK_UOM
24003   ,PRORATE
24004   ,COVERAGE_TYPE
24005   ,EXCEPTION_COV_ID
24006   ,LIMIT_UOM_QUANTIFIED
24007   ,DISCOUNT_AMOUNT
24008   ,DISCOUNT_PERCENT
24009   ,OFFSET_DURATION
24010   ,OFFSET_PERIOD
24011   ,INCIDENT_SEVERITY_ID
24012   ,PDF_ID
24013   ,WORK_THRU_YN
24014   ,REACT_ACTIVE_YN
24015   ,TRANSFER_OPTION
24016   ,PROD_UPGRADE_YN
24017   ,INHERITANCE_TYPE
24018   ,PM_PROGRAM_ID
24019   ,PM_CONF_REQ_YN
24020   ,PM_SCH_EXISTS_YN
24021   ,ALLOW_BT_DISCOUNT
24022   ,APPLY_DEFAULT_TIMEZONE
24023   ,SYNC_DATE_INSTALL
24024   ,OBJECT_VERSION_NUMBER
24025   ,SECURITY_GROUP_ID
24026   ,REQUEST_ID
24027   ,ORIG_SYSTEM_ID1
24028   ,ORIG_SYSTEM_REFERENCE1
24029   ,ORIG_SYSTEM_SOURCE_CODE
24030   ,TRXN_EXTENSION_ID
24031   ,TAX_CLASSIFICATION_CODE
24032   ,EXEMPT_CERTIFICATE_NUMBER
24033   ,EXEMPT_REASON_CODE
24034   ,COVERAGE_ID
24035   ,STANDARD_COV_YN
24036   ,CREATION_DATE
24037   ,CREATED_BY
24038   ,LAST_UPDATE_DATE
24039   ,LAST_UPDATED_BY
24040   ,LAST_UPDATE_LOGIN
24041   ,COUNTER_VALUE_ID
24042   )
24043   SELECT
24044    OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24045   ,OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24046   ,OKCOKSLinesRecTab.OksB_NewDnzChrID(i)
24047   ,OKCOKSLinesRecTab.OksB_DISCOUNT_LIST(i)
24048   ,OKCOKSLinesRecTab.OksB_ACCT_RULE_ID(i)
24049  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
24050   ,NULL
24051 --  ,OKCOKSLinesRecTab.OksB_PAYMENT_TYPE(i)
24052   ,OKCOKSLinesRecTab.OksB_CC_NO(i)
24053   ,OKCOKSLinesRecTab.OksB_CC_EXPIRY_DATE(i)
24054   ,OKCOKSLinesRecTab.OksB_CC_BANK_ACCT_ID(i)
24055   ,OKCOKSLinesRecTab.OksB_CC_AUTH_CODE(i)
24056  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
24057   ,NULL
24058 --  ,OKCOKSLinesRecTab.OksB_COMMITMENT_ID(i)
24059   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i)
24060   ,OKCOKSLinesRecTab.OksB_USAGE_EST_YN(i)
24061   ,OKCOKSLinesRecTab.OksB_USAGE_EST_METHOD(i)
24062   ,OKCOKSLinesRecTab.OksB_USAGE_EST_START_DATE(i)
24063   ,OKCOKSLinesRecTab.OksB_TERMN_METHOD(i)
24064   ,OKCOKSLinesRecTab.OksB_UBT_AMOUNT(i)
24065   ,OKCOKSLinesRecTab.OksB_CREDIT_AMOUNT(i)
24066   ,OKCOKSLinesRecTab.OksB_SUPPRESSED_CREDIT(i)
24067   ,OKCOKSLinesRecTab.OksB_OVERRIDE_AMOUNT(i)
24068   ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER_REQ_YN(i)
24069  -- hkamdar 17-Apr-2006 Bug # 4722452 as per Aaron's feedback on 07-Apr-2006.
24070   ,NULL
24071 --  ,OKCOKSLinesRecTab.OksB_CUST_PO_NUMBER(i)
24072   ,OKCOKSLinesRecTab.OksB_GRACE_DURATION(i)
24073   ,OKCOKSLinesRecTab.OksB_GRACE_PERIOD(i)
24074   ,OKCOKSLinesRecTab.OksB_INV_PRINT_FLAG(i)
24075   ,OKCOKSLinesRecTab.OksB_PRICE_UOM(i)
24076   ,OKCOKSLinesRecTab.OksB_TAX_AMOUNT(i)
24077   ,OKCOKSLinesRecTab.OksB_TAX_INCLUSIVE_YN(i)
24078   ,OKCOKSLinesRecTab.OksB_TAX_STATUS(i)
24079   ,OKCOKSLinesRecTab.OksB_TAX_CODE(i)
24080   ,OKCOKSLinesRecTab.OksB_TAX_EXEMPTION_ID(i)
24081   ,OKCOKSLinesRecTab.OksB_IB_TRANS_TYPE(i)
24082   ,OKCOKSLinesRecTab.OksB_IB_TRANS_DATE(i)
24083   ,OKCOKSLinesRecTab.OksB_PROD_PRICE(i)
24084   ,OKCOKSLinesRecTab.OksB_SERVICE_PRICE(i)
24085   ,OKCOKSLinesRecTab.OksB_CLVL_LIST_PRICE(i)
24086   ,OKCOKSLinesRecTab.OksB_CLVL_QUANTITY(i)
24087   ,OKCOKSLinesRecTab.OksB_CLVL_EXTENDED_AMT(i)
24088   ,OKCOKSLinesRecTab.OksB_CLVL_UOM_CODE(i)
24089   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_CODE(i)
24090   ,OKCOKSLinesRecTab.OksB_TOPLVL_OPERAND_VAL(i)
24091   ,OKCOKSLinesRecTab.OksB_TOPLVL_QUANTITY(i)
24092   ,OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i)
24093   ,OKCOKSLinesRecTab.OksB_TOPLVL_ADJ_PRICE(i)
24094   ,OKCOKSLinesRecTab.OksB_TOPLVL_PRICE_QTY(i)
24095   ,OKCOKSLinesRecTab.OksB_AVERAGING_INTERVAL(i)
24096   ,OKCOKSLinesRecTab.OksB_SETTLEMENT_INTERVAL(i)
24097   ,OKCOKSLinesRecTab.OksB_MINIMUM_QUANTITY(i)
24098   ,OKCOKSLinesRecTab.OksB_DEFAULT_QUANTITY(i)
24099   ,OKCOKSLinesRecTab.OksB_AMCV_FLAG(i)
24100   ,OKCOKSLinesRecTab.OksB_FIXED_QUANTITY(i)
24101   ,OKCOKSLinesRecTab.OksB_USAGE_DURATION(i)
24102   ,OKCOKSLinesRecTab.OksB_USAGE_PERIOD(i)
24103   ,OKCOKSLinesRecTab.OksB_LEVEL_YN(i)
24104   ,OKCOKSLinesRecTab.OksB_USAGE_TYPE(i)
24105   ,OKCOKSLinesRecTab.OksB_UOM_QUANTIFIED(i)
24106   ,OKCOKSLinesRecTab.OksB_BASE_READING(i)
24107   ,OKCOKSLinesRecTab.OksB_BILLING_SCHEDULE_TYPE(i)
24108   ,OKCOKSLinesRecTab.OksB_FULL_CREDIT(i)
24109   ,OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
24110   ,OKCOKSLinesRecTab.OksB_BREAK_UOM(i)
24111   ,OKCOKSLinesRecTab.OksB_PRORATE(i)
24112   ,OKCOKSLinesRecTab.OksB_COVERAGE_TYPE(i)
24113   ,OKCOKSLinesRecTab.OksB_EXCEPTION_COV_ID(i)
24114   ,OKCOKSLinesRecTab.OksB_LIMIT_UOM_QUANTIFIED(i)
24115   ,OKCOKSLinesRecTab.OksB_DISCOUNT_AMOUNT(i)
24116   ,OKCOKSLinesRecTab.OksB_DISCOUNT_PERCENT(i)
24117   ,OKCOKSLinesRecTab.OksB_OFFSET_DURATION(i)
24118   ,OKCOKSLinesRecTab.OksB_OFFSET_PERIOD(i)
24119   ,OKCOKSLinesRecTab.OksB_INCIDENT_SEVERITY_ID(i)
24120   ,OKCOKSLinesRecTab.OksB_PDF_ID(i)
24121   ,OKCOKSLinesRecTab.OksB_WORK_THRU_YN(i)
24122   ,OKCOKSLinesRecTab.OksB_REACT_ACTIVE_YN(i)
24123   ,OKCOKSLinesRecTab.OksB_TRANSFER_OPTION(i)
24124   ,OKCOKSLinesRecTab.OksB_PROD_UPGRADE_YN(i)
24125   ,OKCOKSLinesRecTab.OksB_INHERITANCE_TYPE(i)
24126   ,OKCOKSLinesRecTab.OksB_PM_PROGRAM_ID(i)
24127   ,OKCOKSLinesRecTab.OksB_PM_CONF_REQ_YN(i)
24128   ,OKCOKSLinesRecTab.OksB_PM_SCH_EXISTS_YN(i)
24129   ,OKCOKSLinesRecTab.OksB_ALLOW_BT_DISCOUNT(i)
24130   ,OKCOKSLinesRecTab.OksB_APPLY_DEFAULT_TIMEZONE(i)
24131   ,OKCOKSLinesRecTab.OksB_SYNC_DATE_INSTALL(i)
24132   ,OKCOKSLinesRecTab.OksB_OBJECT_VERSION_NUMBER(i)
24133   ,OKCOKSLinesRecTab.OksB_SECURITY_GROUP_ID(i)
24134   ,OKCOKSLinesRecTab.OksB_REQUEST_ID(i)
24135   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_ID1(i)
24136   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_REFERENCE1(i)
24137   ,OKCOKSLinesRecTab.OksB_ORIG_SYSTEM_SOURCE_CODE(i)
24138   ,OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
24139   ,OKCOKSLinesRecTab.OksB_TAX_CLASSIFICATION_CODE(i)
24140   ,OKCOKSLinesRecTab.OksB_EXEMPT_CERTIFICATE_NUMBER(i)
24141   ,OKCOKSLinesRecTab.OksB_EXEMPT_REASON_CODE(i)
24142   ,OKCOKSLinesRecTab.OksB_COVERAGE_ID(i)
24143   ,OKCOKSLinesRecTab.OksB_STANDARD_COV_YN(i)
24144   ,SYSDATE
24145   ,FND_GLOBAL.USER_ID
24146   ,SYSDATE
24147   ,FND_GLOBAL.USER_ID
24148   ,FND_GLOBAL.LOGIN_ID
24149   ,OKCOKSLinesRecTab.OksB_COUNTER_VALUE_ID(i)
24150    FROM
24151    DUAL
24152    WHERE
24153    OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL;
24154 
24155     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24156       FND_LOG.string(FND_LOG.level_statement
24157                     ,l_module_name
24158                     ,'After BULK INSERT into OKS_K_LINES_B'
24159                     );
24160     End If;
24161 
24162  ---Bulk insert into OKC_K_ITEMS---
24163 
24164   FORALL i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST
24165   INSERT INTO OKC_K_ITEMS(
24166    ID
24167   ,CLE_ID
24168   ,DNZ_CHR_ID
24169   ,CHR_ID
24170   ,OBJECT1_ID1
24171   ,OBJECT1_ID2
24172   ,JTOT_OBJECT1_CODE
24173   ,UOM_CODE
24174   ,EXCEPTION_YN
24175   ,NUMBER_OF_ITEMS
24176   ,PRICED_ITEM_YN
24177   ,OBJECT_VERSION_NUMBER
24178   ,SECURITY_GROUP_ID
24179   ,UPG_ORIG_SYSTEM_REF
24180   ,UPG_ORIG_SYSTEM_REF_ID
24181   ,PROGRAM_APPLICATION_ID
24182   ,PROGRAM_ID
24183   ,PROGRAM_UPDATE_DATE
24184   ,REQUEST_ID
24185   ,CREATION_DATE
24186   ,CREATED_BY
24187   ,LAST_UPDATE_DATE
24188   ,LAST_UPDATED_BY
24189   ,LAST_UPDATE_LOGIN
24190   )
24191   SELECT
24192     OKCOKSLinesRecTab.OkcI_NewOkcItemID(i)
24193    ,OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
24194    ,OKCOKSLinesRecTab.OkcI_NewDnzChrID(i)
24195    ,OKCOKSLinesRecTab.OkcI_NewChrID(i)
24196    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID1(i)
24197    ,OKCOKSLinesRecTab.OkcI_OBJECT1_ID2(i)
24198    ,OKCOKSLinesRecTab.OkcI_JTOT_OBJECT1_CODE(i)
24199    ,OKCOKSLinesRecTab.OkcI_UOM_CODE(i)
24200    ,OKCOKSLinesRecTab.OkcI_EXCEPTION_YN(i)
24201    ,OKCOKSLinesRecTab.OkcI_NUMBER_OF_ITEMS(i)
24202    ,OKCOKSLinesRecTab.OkcI_PRICED_ITEM_YN(i)
24203    ,OKCOKSLinesRecTab.OkcI_OBJECT_VERSION_NUMBER(i)
24204    ,OKCOKSLinesRecTab.OkcI_SECURITY_GROUP_ID(i)
24205    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF(i)
24206    ,OKCOKSLinesRecTab.OkcI_UPG_ORIG_SYSTEM_REF_ID(i)
24207    ,OKCOKSLinesRecTab.Okc_PROGRAM_APPLICATION_ID(i)
24208    ,OKCOKSLinesRecTab.OkcI_PROGRAM_ID(i)
24209    ,OKCOKSLinesRecTab.OkcI_PROGRAM_UPDATE_DATE(i)
24210    ,OKCOKSLinesRecTab.OkcI_REQUEST_ID(i)
24211    ,SYSDATE
24212    ,FND_GLOBAL.USER_ID
24213    ,SYSDATE
24214    ,FND_GLOBAL.USER_ID
24215    ,FND_GLOBAL.LOGIN_ID
24216    FROM
24217    DUAL
24218    where OKCOKSLinesRecTab.OkcI_OldOkcItemID(i) IS NOT NULL;
24219 
24220     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24221       FND_LOG.string(FND_LOG.level_statement
24222                     ,l_module_name
24223                     ,'After BULK INSERT into OKC_K_ITEMS'
24224                     );
24225     End If;
24226 
24227 
24228   -----------------Start of row by row processing---------------------
24229   FOR i IN OKCOKSLinesRecTab.OkcB_NewOKCLineID.FIRST .. OKCOKSLinesRecTab.OkcB_NewOKCLineID.LAST LOOP
24230 
24231    ------------Re-compute TAX_AMOUNT for a subscription line if the line being copied is a cancelled line------------
24232     BEGIN
24233      /*If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND
24234          OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46 AND
24235          OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG(i) = 'Y') then*/
24236 
24237       --npalepu added condition lse_id IN (7, 8, 9, 10, 11, 13, 18, 25, 35, 46) for bug # 5660131
24238       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
24239           (
24240            (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46 AND OKCOKSLinesRecTab.OkcB_LINE_CANCELLED_FLAG(i) = 'Y')
24241            OR
24242            (OKCOKSLinesRecTab.OkcB_LINE_TERMINATED_FLAG(i) = 'Y')
24243           )
24244          )
24245        then
24246 
24247     /*-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
24248     --lx_rail_rec.AMOUNT := OKCOKSLinesRecTab.OkcB_CANCELLED_AMOUNT(i); --Price Negotiated would be stored in the CANCELLED_AMOUNT column
24249                                                                       --for a cancelled Subscription Line
24250     */
24251 
24252      --npalepu added on 06-NOV-2006 for bug # 5636927
24253      lx_rail_rec.AMOUNT := NULL;
24254      --end npalepu
24255 
24256       OKS_TAX_UTIL_PVT.Get_Tax
24257        ( p_api_version => p_api_version
24258         ,p_init_msg_list => p_init_msg_list
24259         ,p_chr_id	=> P_To_Chr_ID
24260         ,p_cle_id  => OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
24261         ,px_rail_rec => lx_rail_rec
24262         ,x_msg_count => x_msg_count
24263         ,x_msg_data => x_msg_data
24264         ,x_return_status => l_return_status
24265        );
24266 
24267 /*         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24268           IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24269                 x_return_status := l_return_status;
24270                 RAISE G_EXCEPTION_HALT_VALIDATION;
24271           END IF;
24272          END IF;
24273 
24274       UPDATE OKS_K_LINES_B
24275       SET
24276        TAX_AMOUNT = lx_rail_rec.TAX_VALUE
24277       WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24278       AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);  */
24279 /*Commented for bug 14478599 */
24280 
24281 
24282 /*Added for bug 14478599 */
24283    IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24284 
24285         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24286         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24287          FND_LOG.string(FND_LOG.level_statement
24288                         ,l_module_name||'.OKS_TAX_UTIL_PVT.Get_Tax'
24289                         ,'Error occured in Get Tax API for line: x_return_status :'||l_return_status
24290                                                  );
24291         END IF;
24292        END IF;
24293             IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24294                   UPDATE OKS_K_LINES_B
24295                   SET TAX_INCLUSIVE_YN = 'N'
24296                   WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24297                   AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24298             ELSE
24299 
24300                UPDATE OKS_K_LINES_B
24301                SET TAX_AMOUNT = lx_rail_rec.TAX_VALUE
24302                WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24303 	       AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24304 
24305            END IF;
24306   ELSE
24307 
24308                UPDATE OKS_K_LINES_B
24309                SET TAX_AMOUNT = lx_rail_rec.TAX_VALUE
24310                WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24311 	       AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24312 
24313   END IF;
24314 /*Added for bug 14478599 */
24315 
24316 
24317 
24318       If SQL%NOTFOUND then
24319        l_return_status := FND_API.G_RET_STS_ERROR;
24320        RAISE G_EXCEPTION_HALT_VALIDATION;
24321       End If;
24322 
24323      End If;
24324     END;
24325  ------------------------------------------------------------------------------------------------------------------
24326  ------------------------------------------------------------------------------------------------------------------
24327 
24328    ---If (LSE_ID in (1,19)--------------------------------------
24329    ---       a) Instantiate counter events
24330    ---	   b) Copy Line Notes
24331  --------------------------------------------------------------
24332    IF (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 1 OR OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 19) THEN
24333 
24334     --Instantiate Counters Events
24335 
24336     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24337       FND_LOG.string(FND_LOG.level_statement
24338                     ,l_module_name
24339                     ,'Before instantiate_counters_events'
24340                    ||' p_old_cle_id='||OKCOKSLinesRecTab.OkcB_OldOKCLineID(i)
24341 		   ||',p_old_lse_id='||OKCOKSLinesRecTab.OkcB_LSE_ID(i)
24342 		   ||',p_new_cle_id='||OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24343                     );
24344     End If;
24345 
24346     instantiate_counters_events(
24347                      p_api_version   => p_api_version
24348 	            ,p_init_msg_list => p_init_msg_list
24349 		    ,x_return_status => l_return_status
24350 		    ,x_msg_count     => x_msg_count
24351 		    ,x_msg_data      => x_msg_data
24352 		    ,p_old_cle_id    => OKCOKSLinesRecTab.OkcB_OldOKCLineID(i)
24353 		    ,p_old_lse_id    => OKCOKSLinesRecTab.OkcB_LSE_ID(i)
24354 		    ,p_start_date    => OKCOKSLinesRecTab.OkcB_START_DATE(i)
24355 		    ,p_end_date      => OKCOKSLinesRecTab.OkcB_END_DATE(i)
24356 	            ,p_new_cle_id    => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24357                     --npalepu added on 20-mar-2006 for bug # 5102052
24358                     ,p_new_chr_id    => P_To_Chr_ID
24359                     --end npalepu
24360                     );
24361 
24362 		    IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24363 		       RAISE G_EXCEPTION_HALT_VALIDATION;
24364 		    END IF;
24365 
24366     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
24367       FND_LOG.string(FND_LOG.level_statement
24368                     ,l_module_name
24369                     ,'After instantiate_counters_events'
24370                    ||', x_return_status ='||l_return_status
24371                     );
24372     End If;
24373 
24374 
24375    --Copy Line level notes
24376     OKS_COVERAGES_PVT.COPY_NOTES(p_api_version  =>  p_api_version
24377                 	        ,p_init_msg_list =>  p_init_msg_list
24378 			        ,x_msg_count => x_msg_count
24379 			        ,x_msg_data =>  x_msg_data
24380 			        ,x_return_status =>  l_return_status
24381  			        ,p_line_id  => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24382 			        );
24383        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24384         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24385          FND_LOG.string(FND_LOG.level_statement
24386                         ,l_module_name||'.OKS_COVERAGES_PVT.COPY_NOTES'
24387                         ,'After call to copy_notes for line: x_return_status:'||l_return_status
24388                          );
24389         END IF;
24390        END IF;
24391 
24392        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24393         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24394               x_return_status := l_return_status;
24395               RAISE G_EXCEPTION_HALT_VALIDATION;
24396         END IF;
24397        END IF;
24398 
24399    END IF; -----End of LSE_ID check in (1,19)
24400 
24401    -----------Generate new Locked_Price_List_Line_ID for line if a value currently exists----------
24402 
24403    Begin
24404     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_ID(i) IS NOT NULL) then
24405      QP_LOCK_PRICELIST_GRP.Lock_Price(p_source_list_line_id     => OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
24406 	                             ,p_list_source_code        => 'OKS'
24407 				     ,p_orig_system_header_ref     => l_new_contract_number
24408 				     ,p_org_id 			=>   okc_context.get_okc_org_id
24409 				     ,x_locked_price_list_id       => l_locked_price_list_id
24410 				     ,x_locked_list_line_id        => l_locked_price_list_line_id
24411 				     ,x_return_status              => l_return_status
24412 				     ,x_msg_count                  => x_msg_count
24413 				     ,x_msg_data                   => x_msg_data);
24414 
24415        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24416         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24417          FND_LOG.string(FND_LOG.level_statement
24418                         ,l_module_name||'.QP_LOCK_PRICELIST_GRP.Lock_Price'
24419                         ,'After call to Lock_Price API for line: x_return_status :'||l_return_status
24420                         ||'Old Locked Price List Line ID='||OKCOKSLinesRecTab.OksB_LOCKED_PRICE_LIST_LINE_ID(i)
24421 			||'New Locked Price List Line ID='||l_locked_price_list_line_id
24422 			||'New Locked Price List ID='||l_locked_price_list_id
24423                          );
24424         END IF;
24425        END IF;
24426 
24427        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24428         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24429               x_return_status := l_return_status;
24430               RAISE G_EXCEPTION_HALT_VALIDATION;
24431         END IF;
24432        END IF;
24433 
24434 	UPDATE OKS_K_LINES_B
24435 	SET
24436 	 LOCKED_PRICE_LIST_ID = l_locked_price_list_id
24437 	,LOCKED_PRICE_LIST_LINE_ID = l_locked_price_list_line_id
24438 	WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24439         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24440 
24441         If SQL%NOTFOUND then
24442 	  l_return_status := FND_API.G_RET_STS_ERROR;
24443 	  RAISE G_EXCEPTION_HALT_VALIDATION;
24444 	End If;
24445     End If;
24446    End;
24447 
24448  ----------------------------------------------------------------------------------------------------
24449  ------------Generate Transaction Extension for line if a value currently exists--------------------
24450 
24451    Begin
24452     If (OKCOKSLinesRecTab.OksB_OldOksLineID(i) IS NOT NULL AND OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i) IS NOT NULL) then
24453         --Generate new transaction extension id;
24454        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24455         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24456          FND_LOG.string(FND_LOG.level_statement
24457                         ,l_module_name||'.Create_Transaction_Extension'
24458                         ,'Before call to Create_Transaction_Extension for line in COPY_LINE_COMPONENTS'
24459                         ||'Old Trxn ID='||OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
24460                          );
24461         END IF;
24462        END IF;
24463 
24464         OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
24465                                       ,P_Init_Msg_List => p_init_msg_list
24466                                       ,P_Header_ID => NULL
24467                                       ,P_Line_ID => OKCOKSLinesRecTab.OkcB_NewOKCLineID(i)
24468                                       ,P_Source_Trx_Ext_ID => OKCOKSLinesRecTab.OksB_TRXN_EXTENSION_ID(i)
24469 				      ,P_Cust_Acct_ID => OKCOKSLinesRecTab.OkcB_CUST_ACCT_ID(i)
24470                                       ,P_Bill_To_Site_Use_ID => OKCOKSLinesRecTab.OkcB_BILL_TO_SITE_USE_ID(i)
24471                                       ,x_entity_id => l_trxn_extension_id
24472                                       ,x_msg_data => x_msg_data
24473                                       ,x_msg_count => x_msg_count
24474                                       ,x_return_status => l_return_status) ;
24475 
24476 
24477 
24478        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24479         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24480          FND_LOG.string(FND_LOG.level_statement
24481                         ,l_module_name||'.Create_Transaction_Extension'
24482                         ,'After call to Create_Transaction_Extension for line: x_return_status :'||l_return_status
24483                         ||'New Trxn ID='||l_trxn_extension_id
24484                          );
24485         END IF;
24486        END IF;
24487 
24488        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
24489         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
24490               x_return_status := l_return_status;
24491               RAISE G_EXCEPTION_HALT_VALIDATION;
24492         END IF;
24493        END IF;
24494 
24495         UPDATE OKS_K_LINES_B
24496         SET
24497          TRXN_EXTENSION_ID = l_trxn_extension_id
24498         WHERE ID = OKCOKSLinesRecTab.OksB_NewOksLineID(i)
24499         AND ORIG_SYSTEM_ID1 = OKCOKSLinesRecTab.OksB_OldOksLineID(i);
24500 
24501         If SQL%NOTFOUND then
24502           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24503            FND_LOG.string(FND_LOG.level_statement
24504                         ,l_module_name||'.Create_Transaction_Extension'
24505                         ,'After call to Create_Transaction_Extension, Error in Update OKS_K_LINES_B, row not found for update'
24506                          );
24507           END IF;
24508 
24509           l_return_status := FND_API.G_RET_STS_ERROR;
24510           RAISE G_EXCEPTION_HALT_VALIDATION;
24511         End If;
24512 
24513     End If;
24514 
24515    End;
24516 
24517  -------------------------------------------------------------------------------------------------
24518  -----------Copy subscription schedules for subscription lines chosen by user--------
24519  If (OKCOKSLinesRecTab.OkcB_LSE_ID(i) = 46) then
24520    Begin
24521     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24522         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24523          FND_LOG.string(FND_LOG.level_statement
24524                         ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst for Lines chosen by user'
24525                         ,'Before call to OKS_SETUP_UTIL_PUB.copy_subscr_inst for Lines chosen by user'
24526 			||':'||to_char(sysdate,'DD/MM/YY HH:MI:SS')
24527                          );
24528         END IF;
24529     END IF;
24530 
24531     OKS_SETUP_UTIL_PUB.copy_subscr_inst(p_new_chr_id => P_To_Chr_ID
24532                                        ,p_cle_id => OKCOKSLinesRecTab.OkcB_NewOkcLineID(i)
24533 				       ,p_intent => 'COPY'
24534                                        ,x_return_status => l_return_status);
24535 
24536     IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24537      IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24538       FND_LOG.string(FND_LOG.level_statement
24539                      ,l_module_name||'.OKS_SETUP_UTIL_PUB.copy_subscr_inst'
24540                      ,'After call to OKS_SETUP_UTIL_PUB.copy_subscr_inst: x_return_status:'||l_return_status
24541 		      ||':'||to_char(sysdate,'DD/MM/YY HH:MI:SS')
24542                       ||' '||SQLERRM
24543                       );
24544      END IF;
24545     END IF;
24546 
24547     If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24548          RAISE G_EXCEPTION_HALT_VALIDATION;
24549     End If;
24550 
24551    End;
24552  End If;
24553 
24554  -- 03-Nov-2006 hkamdar. Bug# 5623498.
24555  IF OKCOKSLinesRecTab.OkcB_LSE_ID(i) in (7,9,25) AND OKCOKSLinesRecTab.OksB_TOPLVL_UOM_CODE(i) IS NULL THEN
24556 
24557 
24558     OPEN get_toplvl_uom(OKCOKSLinesRecTab.OkcB_OldOKCLineID(i));
24559     FETCH get_toplvl_uom INTO l_toplvl_uom_code;
24560     CLOSE get_toplvl_uom;
24561 
24562     IF l_toplvl_uom_code IS NOT NULL then
24563       UPDATE OKS_K_LINES_B
24564       SET    toplvl_uom_code = l_toplvl_uom_code
24565       WHERE  id = OKCOKSLinesRecTab.OksB_NewOksLineID(i);
24566     END IF;
24567 
24568  END IF;
24569  -- 03-Nov-2006 hkamdar. Bug# 5623498.
24570  ------------------------------------------------------------------------------------------------
24571 
24572  ------------------------------------------------------------------------------------------------
24573 
24574   END LOOP;
24575   --------------------End of row by row processing------------------------
24576 
24577           IF p_include_cancelled_lines = 'Y' AND
24578              p_include_terminated_lines = 'Y' THEN
24579             EXIT WHEN GetOKCOKSLinesB_Temp%NOTFOUND;
24580           ELSIF p_include_cancelled_lines = 'N' AND
24581                 p_include_terminated_lines = 'Y' THEN
24582             EXIT WHEN GetOKCOKSLinesB_Temp_termn%NOTFOUND;
24583           ELSIF p_include_cancelled_lines = 'Y' AND
24584                 p_include_terminated_lines = 'N' THEN
24585             EXIT WHEN GetOKCOKSLinesB_Temp_cancel%NOTFOUND;
24586           ELSIF p_include_cancelled_lines = 'N' AND
24587                 p_include_terminated_lines = 'N' THEN
24588             EXIT WHEN GetOKCOKSLinesB_Temp_exclude%NOTFOUND;
24589           END IF;
24590 
24591  END LOOP;
24592 
24593         IF p_include_cancelled_lines = 'Y' AND
24594            p_include_terminated_lines = 'Y' THEN
24595           CLOSE GetOKCOKSLinesB_Temp;
24596         ELSIF p_include_cancelled_lines = 'N' AND
24597               p_include_terminated_lines = 'Y' THEN
24598           CLOSE GetOKCOKSLinesB_Temp_termn;
24599         ELSIF p_include_cancelled_lines = 'Y' AND
24600               p_include_terminated_lines = 'N' THEN
24601           CLOSE GetOKCOKSLinesB_Temp_cancel;
24602         ELSIF p_include_cancelled_lines = 'N' AND
24603               p_include_terminated_lines = 'N' THEN
24604           CLOSE GetOKCOKSLinesB_Temp_exclude;
24605         END IF;
24606 
24607  End;
24608 --------End of BULK FETCH FROM OKC_K_LINES_B_TEMP---------------
24609 
24610 END IF; ---End of Check of P_Lines_Tbl.COUNT > 0 *****************
24611         ---for bulk insert into OKC_K_LINES_B,     *****************
24612         ---OKS_K_LINES_B,OKC_K_ITEMS               *****************
24613 
24614 
24615  ----------------------------------------------------------------------------
24616  -- Update of OKC_K_LINES_B
24617  --  ii) PRICE_NEGOTIATED on OKC_K_LINES_B for toplines
24618  --
24619  -- Update of OKS_K_LINES_B
24620  -- iii) COVERAGE_ID on OKS_K_LINES_B for toplines with STANDARD_COV_YN = 'N'
24621  --  iv) TAX_AMOUNT on OKS_K_LINES_B for all toplines
24622  --   v) PRICE_UOM on OKS_K_LINES_B as per Partial Period uptake rules, when copying to an existing Target Contract
24623  ----------------------------------------------------------------------------
24624  Begin
24625 
24626    UPDATE OKC_K_LINES_B a
24627    SET a.PRICE_NEGOTIATED = (select sum(b.PRICE_NEGOTIATED)
24628                              from OKC_K_LINES_B b
24629 			     where b.CLE_ID = a.ID
24630 			     AND b.DNZ_CHR_ID = P_To_Chr_ID
24631                              AND b.DATE_CANCELLED IS NULL) --Cancelled sublines shouldn't be included in sum
24632    WHERE
24633    a.DNZ_CHR_ID = P_To_Chr_ID
24634    AND a.CLE_ID IS NULL
24635    AND a.LSE_ID <> 46; -- Subscription Lines do not have sublines. So they shouldnt be updated.
24636 
24637 
24638    UPDATE OKS_K_LINES_B a
24639    SET a.COVERAGE_ID = (select b.ID
24640   			FROM
24641                          OKC_K_LINES_B b
24642                         ,OKC_K_LINES_B_TEMP bt
24643 			WHERE
24644                         b.ID = bt.ID
24645 			AND b.CLE_ID = a.CLE_ID
24646 			AND b.DNZ_CHR_ID = P_To_Chr_ID
24647 			AND b.LSE_ID in (2,20))
24648    WHERE a.DNZ_CHR_ID = P_To_Chr_ID
24649    AND a.STANDARD_COV_YN = 'N'
24650    AND a.CLE_ID in (SELECT b.ID from OKC_K_LINES_B_TEMP b where b.LINE_EXISTS_YN = 'N'
24651                     and b.LSE_ID in (1,19));
24652 
24653 
24654    UPDATE OKS_K_LINES_B a
24655    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
24656                        FROM
24657 		       OKS_K_LINES_B b
24658 		      ,OKC_K_LINES_B c
24659 		       WHERE
24660 		       c.ID = b.CLE_ID
24661 		       AND c.cle_id = a.cle_id
24662 		       AND c.DATE_CANCELLED IS NULL) --Cancelled sublines shouldn't be included in sum
24663    WHERE a.dnz_chr_id = P_To_Chr_ID
24664    and a.CLE_ID = (select b.id
24665   		   FROM
24666 		   OKC_K_LINES_B b
24667 		   WHERE b.cle_id is NULL
24668 		   AND b.id = a.cle_id
24669 		   AND b.LSE_ID <> 46); --Subscription Lines do not have sublines. So they shouldnt be updated.
24670 
24671    --If copying to an existing contract:
24672    ----If the Target Contract has Partial Period Setup on it
24673         --a) Update Price_UOM of Top Lines and its sublines that were copied, with the Price_UOM of the target header.
24674         --b) Update Price_UOM of sublines that were copied to existing top lines with that of the Target top line.
24675    ----Else if the Target Contract doesnt have Partial Period Setup on it
24676         --Update the Price_UOM on the Top Lines/Sublines being copied with the Source Top Line/Subline PRICE_UOM
24677 	--the Price UOM on the TargetHeader/Top Lines is NOT NULL, else retain the Price_UOM on Source TopLine/Sublines
24678 
24679    IF (P_Target_Contract_New_YN = 'N') then
24680     IF (l_TrgContractPPSetupExists_YN = 'Y') then --Partial Period Setup exists in Target Contract Header
24681 
24682      --Update price_uom of copied top lines and their sublines
24683      UPDATE OKS_K_LINES_B a
24684      SET a.PRICE_UOM = l_Target_Hdr_Price_UOM
24685      WHERE a.CLE_ID IN (select bt.id from okc_k_lines_b_temp bt
24686 	                where
24687 		        (bt.cle_id is null --Top Line
24688 		         OR
24689                          (bt.cle_id is not null
24690                           and bt.line_exists_yn = 'N'
24691                           -- hkamdar 05-Oct-2006. Bug# 5361663. Removing Customer, Party and Site Covered levels
24692                           -- as the PRICE_UOM should be NULL for them.
24693                          -- and bt.lse_id in (7,8,9,10,11,13,25,35) --Covered Level Sublines copied with top line
24694                           and bt.lse_id in (7,9,11,13,25) --Covered Level Sublines copied with top line
24695                          -- End hkamdar 05-Oct-2006. Bug# 5361663.
24696                          )
24697                         )
24698                        );
24699 
24700       --Update of PRICE_UOM of Sublines that were copied to existing Top lines.
24701       UPDATE OKS_K_LINES_B a
24702       SET a.PRICE_UOM = (select b.price_uom from oks_k_lines_b b
24703                          where b.cle_id = (select c.cle_id from okc_k_lines_b c
24704                                            where c.id = a.CLE_ID)
24705                         )
24706       WHERE a.CLE_ID IN (select bt.ID from okc_k_lines_b_temp bt
24707 		         where bt.CLE_ID IS NOT NULL
24708                          and bt.LINE_EXISTS_YN = 'Y'
24709       -- hkamdar 05-Oct-2006. Bug# 5361663. Removing Customer, Party and Site Covered levels
24710       -- as the PRICE_UOM should be NULL for them.
24711                          and bt.lse_id NOT IN (8,10,35)
24712       -- End hkamdar 05-Oct-2006. Bug# 5361663.
24713                          );
24714 
24715     ELSIF (l_TrgContractPPSetupExists_YN = 'N') then --Partial Period Setup does not exist in Target Contract Header
24716 
24717     /****Not required: If PPSetup DOES NOT EXIST on Target Header, then the Price UOM on
24718                        copied Top Lines and its sublines will be same as that of the Source Top Line/Sublines.
24719      --Update of PRICE_UOM on copied Top Lines and their Sublines
24720      UPDATE OKS_K_LINES_B a
24721      SET a.PRICE_UOM = nvl(l_Target_Hdr_Price_UOM,a.PRICE_UOM)
24722      WHERE a.CLE_ID IN (select bt.id from okc_k_lines_b_temp bt
24723                         where
24724                         (bt.cle_id is null --Top Line
24725                          OR
24726                          (bt.cle_id is not null
24727                           and bt.line_exists_yn = 'N'
24728                           and bt.lse_id in (7,8,9,10,11,13,25,35) --Covered Level Sublines copied with top line
24729                          )
24730                         )
24731                        );
24732     ******/
24733 
24734       --Update PRICE_UOM of Sub Lines that were copied to existing top lines
24735       UPDATE OKS_K_LINES_B a
24736       SET a.PRICE_UOM = nvl(
24737                             (select b.price_uom from oks_k_lines_b b
24738                              where b.cle_id = (select c.cle_id from okc_k_lines_b c
24739                                                where c.id = a.CLE_ID)
24740                             )
24741                            ,a.PRICE_UOM
24742                            )
24743       WHERE a.CLE_ID IN (select bt.ID from okc_k_lines_b_temp bt
24744                          where bt.CLE_ID IS NOT NULL
24745                          and bt.LINE_EXISTS_YN = 'Y'
24746       -- hkamdar 05-Oct-2006. Bug# 5361663. Removing Customer, Party and Site Covered levels
24747       -- as the PRICE_UOM should be NULL for them.
24748                          and bt.lse_id NOT IN (8,10,35)
24749       -- End hkamdar 05-Oct-2006. Bug# 5361663.
24750                          );
24751 
24752 
24753 
24754     END IF; -- End of check for l_TrgContractPPSetupExists_YN = 'Y'
24755    END IF; --End of check for P_Target_Contract_New_YN = 'N'
24756 
24757   End;
24758  --------------------------------------------------------------------------------
24759  --------------------------------------------------------------------------------
24760  --Update of OKC_K_HEADERS_B.ESTIMATED_AMOUNT and OKS_K_HEADERS_B.TAX_AMOUNT to equal
24761  --sum of OKC_K_LINES_B.PRICE_NEGOTIATED of all top lines and OKS_K_LINES_B.TAX_AMOUNT
24762  --of all top lines respectively
24763   Begin
24764    UPDATE OKC_K_HEADERS_B a
24765    SET a.ESTIMATED_AMOUNT = nvl((select sum(b.PRICE_NEGOTIATED)
24766                              FROM OKC_K_LINES_B b
24767                              where b.DNZ_CHR_ID = a.ID
24768                              and b.CLE_ID IS NULL
24769                              AND b.DATE_CANCELLED IS NULL),0) --Cancelled toplines shouldn't be included in sum.Nvl added for 12636704
24770    WHERE a.ID = P_To_Chr_ID;
24771 
24772    UPDATE OKS_K_HEADERS_B a
24773    SET a.TAX_AMOUNT = (select sum(b.TAX_AMOUNT)
24774                        FROM
24775                        OKS_K_LINES_B b
24776                       ,OKC_K_LINES_B c
24777                        where b.DNZ_CHR_ID = a.CHR_ID
24778                        and b.CLE_ID = c.ID
24779                        and c.CLE_ID IS NULL
24780 		       and c.DATE_CANCELLED IS NULL) -- Cancelled toplines shouldn't be included in sum
24781    WHERE a.CHR_ID = P_To_Chr_ID;
24782 
24783   End;
24784  --------------------------------------------------------------------------------
24785 
24786  -------------Generate new line numbers in OKC_K_LINES_B for newly created lines-----
24787  IF (P_Lines_Tbl.COUNT > 0) then
24788   Begin
24789    GenerateNewLineNumber(P_To_Chr_ID => P_To_Chr_ID
24790                         ,P_Partial_Copy_YN => 'Y'
24791 			,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24792                         ,x_return_status => l_return_Status);
24793 
24794         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24795          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24796           FND_LOG.string(FND_LOG.level_statement
24797                          ,l_module_name||'.GenerateNewLineNumber'
24798                          ,'After call to GenerateNewLineNumber for line: x_return_status :'||l_return_status
24799                           );
24800          END IF;
24801         END IF;
24802 
24803        If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24804               RAISE G_EXCEPTION_HALT_VALIDATION;
24805        End If;
24806   End;
24807  END IF;
24808  -------------------------------------------------------------------------------------
24809 
24810  ------------Copy of OKC_K_LINES_TL--------------------------------------------------
24811  IF (P_Lines_Tbl.COUNT > 0) then
24812   Begin
24813         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24814          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24815           FND_LOG.string(FND_LOG.level_statement
24816                          ,l_module_name||'.copy_okc_k_lines_tl'
24817                          ,'Before call to copy_okc_k_lines_tl'
24818                           );
24819          END IF;
24820         END IF;
24821     copy_okc_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
24822                     ,P_To_Chr_ID   => P_To_Chr_ID
24823                     ,P_Partial_Copy_YN => 'Y'
24824                     ,P_Lines_Count => P_Lines_Tbl.COUNT
24825                      ,x_return_status => l_return_status);
24826 
24827         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24828          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24829           FND_LOG.string(FND_LOG.level_statement
24830                          ,l_module_name||'.copy_okc_k_lines_tl'
24831                          ,'After call to copy_okc_k_lines_tl: x_return_status:'||l_return_status
24832                           ||' '||SQLERRM
24833                           );
24834          END IF;
24835         END IF;
24836 
24837       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24838           RAISE G_EXCEPTION_HALT_VALIDATION;
24839       End If;
24840   End;
24841  END IF;
24842 
24843  --------------------------------------------------------------------------------------
24844  -----------Copy of OKC_PARTY_ROLES_B------------------------------------------------
24845  IF (P_Lines_Tbl.COUNT > 0) then
24846   Begin
24847         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24848          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24849           FND_LOG.string(FND_LOG.level_statement
24850                          ,l_module_name||'.copy_okc_k_party_roles_b'
24851                          ,'Before call to copy_okc_k_party_roles_b'
24852                           );
24853          END IF;
24854         END IF;
24855 
24856    copy_okc_k_party_roles_b(P_From_Chr_ID => P_From_Chr_ID
24857                          ,P_To_Chr_ID   => P_To_Chr_ID
24858                          ,P_Partial_Copy_YN => 'Y'
24859    			 ,P_Lines_Count => P_Lines_Tbl.COUNT
24860                          ,x_return_status => l_return_status);
24861 
24862         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24863          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24864           FND_LOG.string(FND_LOG.level_statement
24865                          ,l_module_name||'.copy_okc_k_party_roles_b'
24866                          ,'After call to copy_okc_k_party_roles_b: x_return_status:'||l_return_status
24867                           ||' '||SQLERRM
24868                           );
24869          END IF;
24870         END IF;
24871 
24872      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24873          RAISE G_EXCEPTION_HALT_VALIDATION;
24874      End If;
24875   End;
24876  END IF;
24877 -------------------------------------------------------------------------------------
24878 ------------Copy of OKC_PARTY_ROLES_TL------------------------------
24879  IF (P_Lines_Tbl.COUNT > 0) then
24880   Begin
24881         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24882          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24883           FND_LOG.string(FND_LOG.level_statement
24884                          ,l_module_name||'.copy_okc_k_party_roles_tl'
24885                          ,'Before call to copy_okc_k_party_roles_tl'
24886                           );
24887          END IF;
24888         END IF;
24889    copy_okc_k_party_roles_tl(P_From_Chr_ID => P_From_Chr_ID
24890                          ,P_To_Chr_ID   => P_To_Chr_ID
24891                          ,P_Partial_Copy_YN => 'Y'
24892  			 ,P_Lines_Count => P_Lines_Tbl.COUNT
24893                          ,x_return_status => l_return_status);
24894 
24895        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24896         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24897          FND_LOG.string(FND_LOG.level_statement
24898                         ,l_module_name||'.copy_okc_k_party_roles_tl'
24899                         ,'After call to copy_okc_k_party_roles_tl: x_return_status:'||l_return_status
24900                          ||' '||SQLERRM
24901                          );
24902         END IF;
24903        END IF;
24904 
24905      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24906          RAISE G_EXCEPTION_HALT_VALIDATION;
24907      End If;
24908   End;
24909  END IF;
24910 ----------------------------------------------------------------------
24911 ------------Copy of OKC_CONTACTS--------------------------------------
24912  IF (P_Lines_Tbl.COUNT > 0) then
24913   Begin
24914         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24915          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24916           FND_LOG.string(FND_LOG.level_statement
24917                          ,l_module_name||'.copy_okc_contacts'
24918                          ,'Before call to copy_okc_contacts'
24919                           );
24920          END IF;
24921         END IF;
24922    copy_okc_contacts(P_From_Chr_ID => P_From_Chr_ID
24923                          ,P_To_Chr_ID   => P_To_Chr_ID
24924                          ,P_Partial_Copy_YN => 'Y'
24925  			,P_Lines_Count => P_Lines_Tbl.COUNT
24926                          ,x_return_status => l_return_status);
24927 
24928         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24929          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24930           FND_LOG.string(FND_LOG.level_statement
24931                          ,l_module_name||'.copy_okc_contacts'
24932                          ,'After call to copy_okc_contacts: x_return_status:'||l_return_status
24933                           ||' '||SQLERRM
24934                           );
24935          END IF;
24936         END IF;
24937       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24938           RAISE G_EXCEPTION_HALT_VALIDATION;
24939       End If;
24940   End;
24941  END IF;
24942 -------------------------------------------------------------------------
24943 ------------Copy of OKC_PRICE_ATT_VALUES-----------------------------
24944  Begin
24945        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24946         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24947          FND_LOG.string(FND_LOG.level_statement
24948                         ,l_module_name||'.copy_okc_price_att_values'
24949                         ,'Before call to copy_okc_price_att_values'
24950                          );
24951         END IF;
24952        END IF;
24953   copy_okc_price_att_values(P_From_Chr_ID => P_From_Chr_ID
24954                             ,P_To_Chr_ID  => P_To_Chr_ID
24955                             ,P_Partial_Copy_YN => 'Y'
24956                             ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24957                             ,P_Lines_Count => P_Lines_Tbl.COUNT
24958                             ,x_return_status => l_return_status) ;
24959 
24960        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24961         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24962          FND_LOG.string(FND_LOG.level_statement
24963                         ,l_module_name||'.copy_okc_price_att_values'
24964                         ,'After call to copy_okc_price_att_values: x_return_status:'||l_return_status
24965                          ||' '||SQLERRM
24966                          );
24967         END IF;
24968        END IF;
24969 
24970      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
24971          RAISE G_EXCEPTION_HALT_VALIDATION;
24972      End If;
24973  End;
24974 ---------------------------------------------------------------------
24975 -----------Copy of OKC_PRICE_ADJUSTMENTS---------------------------
24976  Begin
24977        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24978         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24979          FND_LOG.string(FND_LOG.level_statement
24980                         ,l_module_name||'.copy_okc_price_adjustments'
24981                         ,'Before call to copy_okc_price_adjustments'
24982                          );
24983         END IF;
24984        END IF;
24985 
24986    copy_okc_price_adjustments(P_From_Chr_ID => P_From_Chr_ID
24987                         ,P_To_Chr_ID   => P_To_Chr_ID
24988                         ,P_Partial_Copy_YN => 'Y'
24989 			,P_Target_Contract_New_YN => P_Target_Contract_New_YN
24990                         ,P_Lines_Count => P_Lines_Tbl.COUNT
24991                         ,x_return_status => l_return_status);
24992 
24993        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
24994         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
24995          FND_LOG.string(FND_LOG.level_statement
24996                         ,l_module_name||'.copy_okc_price_adjustments'
24997                         ,'After call to copy_okc_price_adjustments: x_return_status:'||l_return_status
24998                          ||' '||SQLERRM
24999                          );
25000         END IF;
25001        END IF;
25002 
25003      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25004          RAISE G_EXCEPTION_HALT_VALIDATION;
25005      End If;
25006  End;
25007 --------------------------------------------------------------------
25008 ------------Copy of OKS_K_LINES_TL---------------------------------
25009  IF (P_Lines_Tbl.COUNT > 0) then
25010   Begin
25011         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25012          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25013           FND_LOG.string(FND_LOG.level_statement
25014                          ,l_module_name||'.copy_oks_k_lines_tl'
25015                          ,'Before call to copy_oks_k_lines_tl'
25016                           );
25017          END IF;
25018         END IF;
25019    copy_oks_k_lines_tl(P_From_Chr_ID => P_From_Chr_ID
25020                          ,P_To_Chr_ID   => P_To_Chr_ID
25021                          ,P_Partial_Copy_YN => 'Y'
25022  			,P_Lines_Count => P_Lines_Tbl.COUNT
25023                          ,x_return_status => l_return_status);
25024 
25025         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25026          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25027           FND_LOG.string(FND_LOG.level_statement
25028                          ,l_module_name||'.copy_oks_k_lines_tl'
25029                          ,'After call to copy_oks_k_lines_tl: x_return_status:'||l_return_status
25030                           ||' '||SQLERRM
25031                           );
25032          END IF;
25033         END IF;
25034 
25035       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25036           RAISE G_EXCEPTION_HALT_VALIDATION;
25037       End If;
25038   End;
25039  END IF;
25040 ---------------------------------------------------------------------
25041 ------------Copy of OKS_REV_DISTRIBUTIONS--------------------------
25042  IF (P_Lines_Tbl.COUNT > 0) then
25043   Begin
25044         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25045          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25046           FND_LOG.string(FND_LOG.level_statement
25047                          ,l_module_name||'.copy_oks_rev_distributions'
25048                          ,'Before call to copy_oks_rev_distributions'
25049                           );
25050          END IF;
25051        END IF;
25052 
25053    copy_oks_rev_distributions(P_From_Chr_ID => P_From_Chr_ID
25054                          ,P_To_Chr_ID   => P_To_Chr_ID
25055                          ,P_Partial_Copy_YN => 'Y'
25056  			,P_Lines_Count => P_Lines_Tbl.COUNT
25057                          ,x_return_status => l_return_status);
25058 
25059         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25060          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25061           FND_LOG.string(FND_LOG.level_statement
25062                          ,l_module_name||'.copy_oks_rev_distributions'
25063                          ,'After call to copy_oks_rev_distributions: x_return_status:'||l_return_status
25064                           ||' '||SQLERRM
25065                           );
25066          END IF;
25067         END IF;
25068 
25069       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25070           RAISE G_EXCEPTION_HALT_VALIDATION;
25071       End If;
25072   End;
25073  END IF;
25074 ---------------------------------------------------------------------
25075 -------------Copy of OKS_QUALIFIERS----------------------------------
25076  IF (P_Lines_Tbl.COUNT > 0) then
25077   Begin
25078         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25079          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25080           FND_LOG.string(FND_LOG.level_statement
25081                          ,l_module_name||'.copy_oks_qualifiers'
25082                          ,'Before call to copy_oks_qualifiers'
25083                           );
25084          END IF;
25085         END IF;
25086 
25087    copy_oks_qualifiers(P_From_Chr_ID => P_From_Chr_ID
25088                          ,P_To_Chr_ID   => P_To_Chr_ID
25089                          ,P_Partial_Copy_YN => 'Y'
25090  			,P_Lines_Count => P_Lines_Tbl.COUNT
25091                          ,x_return_status => l_return_status);
25092 
25093         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25094          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25095           FND_LOG.string(FND_LOG.level_statement
25096                          ,l_module_name||'.copy_oks_qualifiers'
25097                          ,'After call to copy_oks_qualifiers: x_return_status:'||l_return_status
25098                           ||' '||SQLERRM
25099                           );
25100          END IF;
25101         END IF;
25102 
25103       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25104           RAISE G_EXCEPTION_HALT_VALIDATION;
25105       End If;
25106   End;
25107  END IF;
25108 ----------------------------------------------------------------------
25109 
25110 --------------Update Invoice Rule ID and Accounting Rule ID on all copied top lines (if NULL)----
25111 --------------with that on header. This routine at the same populates the Package variables for
25112 --------------Header Billing attributes
25113   IF (P_Lines_Tbl.COUNT > 0) then
25114     update_line_inv_and_acct_rule(P_To_Chr_ID => P_To_Chr_ID
25115    			         ,P_Partial_Copy_YN => 'Y'
25116 			         ,x_return_status => l_return_status
25117                                  );
25118   END IF;
25119 -------------------------------------------------------------------------------------------------
25120 --errorout_hk('Copy Line Components, P_Target_Contract_New_YN-'||P_Target_Contract_New_YN||',l_SrcContractPPSetupExists_YN-'||l_SrcContractPPSetupExists_YN);
25121 --errorout_hk('Copy Line Components, l_GCDPPSetupExists_YN-'||l_GCDPPSetupExists_YN);
25122   --================Start of Billing Schedule copy for Header and Lines==========
25123   IF (P_Target_Contract_New_YN = 'Y') then
25124    IF ( (l_SrcContractPPSetupExists_YN = 'Y') OR (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'N')) THEN
25125         -- Bulk Copy of Billing Schedule can be done from Source
25126 --errorout_hk('Copy Line Components, Copy of bill sch');
25127    -------------Copy of OKS_STREAM_LEVELS_B---------------------------
25128     Begin
25129        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25130         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25131          FND_LOG.string(FND_LOG.level_statement
25132                         ,l_module_name||'.copy_oks_stream_levels_b'
25133                         ,'Before call to copy_oks_stream_levels_b'
25134                          );
25135         END IF;
25136        END IF;
25137 
25138       copy_oks_stream_levels_b(P_From_Chr_ID => P_From_Chr_ID
25139                               ,P_To_Chr_ID   => P_To_Chr_ID
25140                               ,P_Partial_Copy_YN => 'Y'
25141   	                      ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
25142                               ,P_Lines_Count => P_Lines_Tbl.COUNT
25143                               ,x_return_status => l_return_status);
25144 
25145        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25146         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25147          FND_LOG.string(FND_LOG.level_statement
25148                         ,l_module_name||'.copy_oks_stream_levels_b'
25149                         ,'After call to copy_oks_stream_levels_b: x_return_status:'||l_return_status
25150                          ||' '||SQLERRM
25151                          );
25152         END IF;
25153        END IF;
25154 
25155      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25156          RAISE G_EXCEPTION_HALT_VALIDATION;
25157      End If;
25158    End;
25159   -------------------------------------------------------------------
25160 
25161     -------------Copy of OKS_LEVEL_ELEMENTS---------------------------
25162    Begin
25163        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25164         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25165          FND_LOG.string(FND_LOG.level_statement
25166                         ,l_module_name||'.copy_oks_level_elements'
25167                         ,'Before call to copy_oks_level_elements'
25168                          );
25169         END IF;
25170        END IF;
25171 
25172     copy_oks_level_elements(P_From_Chr_ID => P_From_Chr_ID
25173                           ,P_To_Chr_ID   => P_To_Chr_ID
25174                           ,P_Partial_Copy_YN => 'Y'
25175                           ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
25176                           ,P_Lines_Count => P_Lines_Tbl.COUNT
25177                           ,x_return_status => l_return_status);
25178 
25179        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25180         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25181          FND_LOG.string(FND_LOG.level_statement
25182                         ,l_module_name||'.copy_oks_level_elements'
25183                         ,'After call to copy_oks_level_elements: x_return_status:'||l_return_status
25184                          ||' '||SQLERRM
25185                          );
25186         END IF;
25187        END IF;
25188 
25189      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25190          RAISE G_EXCEPTION_HALT_VALIDATION;
25191      End If;
25192    End;
25193   --------------------------------------------------------------------
25194   --------------Copy of Billing schedules for Skipped Lines-----------
25195    Begin
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_bsch_for_SkippedLines'
25200                        ,'Before call to copy_bsch_for_SkippedLines'
25201                         );
25202        END IF;
25203       END IF;
25204 
25205     copy_bsch_for_SkippedLines(P_To_Chr_ID  => P_To_Chr_ID
25206             			     ,P_From_Chr_ID => P_From_Chr_ID
25207        			     ,P_Partial_Copy_YN => 'Y'
25208                              ,p_init_msg_list => p_init_msg_list
25209                              ,x_return_status => l_return_status
25210                              ,x_msg_count => x_msg_count
25211                              ,x_msg_data => x_msg_data);
25212         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25213          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25214           FND_LOG.string(FND_LOG.level_statement
25215                         ,l_module_name||'.copy_bsch_for_SkippedLines'
25216                         ,'After call to copy_bsch_for_SkippedLines: x_return_status:'||l_return_status
25217                          ||' '||SQLERRM
25218                          );
25219          END IF;
25220         END IF;
25221 
25222 
25223 
25224       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25225           RAISE G_EXCEPTION_HALT_VALIDATION;
25226       End If;
25227 
25228    End;
25229   --------------------------------------------------------------------
25230   ELSIF (l_SrcContractPPSetupExists_YN = 'N' AND l_GCDPPSetupExists_YN = 'Y') THEN
25231   --errorout_hk('Copy Line Components, SRC PP Setup  N and GCD exists, calling create_bsch_using_ppsetup');
25232         create_bsch_using_PPSetup(P_To_Chr_ID        => P_To_Chr_ID
25233                                 ,P_From_Chr_ID      => P_From_Chr_ID
25234                                 ,P_Partial_Copy_YN  => 'Y'
25235                                 ,P_Target_Contract_New_YN => 'Y'
25236                                 ,p_init_msg_list    => p_init_msg_list
25237                                 ,x_return_status    => l_return_status
25238                                 ,x_msg_count        => x_msg_count
25239                                 ,x_msg_data         => x_msg_data);
25240 
25241       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25242           RAISE G_EXCEPTION_HALT_VALIDATION;
25243       End If;
25244 
25245 
25246   END IF; -- End of l_SrcContractPPSetupExists_YN check
25247 
25248  ELSIF (P_Target_Contract_New_YN = 'N') THEN
25249 
25250   IF (P_Lines_Tbl.COUNT > 0) then
25251   --errorout_hk('Copy Line Components, Target is Existing, calling create_bsch_using_ppsetup');
25252         create_bsch_using_PPSetup(P_To_Chr_ID        => P_To_Chr_ID
25253                                  ,P_From_Chr_ID      => P_From_Chr_ID
25254 				 ,P_Partial_Copy_YN  => 'Y'
25255 				 ,P_Target_Contract_New_YN => 'N'
25256 				 ,p_init_msg_list    => p_init_msg_list
25257 				 ,x_return_status    => l_return_status
25258 				 ,x_msg_count        => x_msg_count
25259 				 ,x_msg_data         => x_msg_data);
25260 
25261       If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25262           RAISE G_EXCEPTION_HALT_VALIDATION;
25263       End If;
25264   END IF;
25265 
25266  END IF; --End of P_Target_Contract_New_YN check
25267  --================End of Billing Schedule copy===============================
25268 
25269  --================Start of Coverage Schedule copy for Lines==================
25270 
25271  IF (P_Lines_Tbl.COUNT > 0) then
25272    -------------Copy of OKS_COVERAGE_TIMEZONES------------------------
25273    Begin
25274        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25275         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25276          FND_LOG.string(FND_LOG.level_statement
25277                         ,l_module_name||'.copy_oks_coverage_timezones'
25278                         ,'Before call to copy_oks_coverage_timezones'
25279                          );
25280         END IF;
25281        END IF;
25282 
25283    copy_oks_coverage_timezones(P_From_Chr_ID => P_From_Chr_ID
25284                               ,P_To_Chr_ID   => P_To_Chr_ID
25285                               ,P_Partial_Copy_YN => 'Y'
25286 			      ,P_Lines_Count => P_Lines_Tbl.COUNT
25287                               ,x_return_status => l_return_status);
25288 
25289        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25290         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25291          FND_LOG.string(FND_LOG.level_statement
25292                         ,l_module_name||'.copy_oks_coverage_timezones'
25293                         ,'After call to copy_oks_coverage_timezones: x_return_status:'||l_return_status
25294                          ||' '||SQLERRM
25295                          );
25296         END IF;
25297        END IF;
25298 
25299      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25300          RAISE G_EXCEPTION_HALT_VALIDATION;
25301      End If;
25302    End;
25303   ---------------------------------------------------------------------
25304    -------------Copy of OKS_COVERAGE_TIMES-----------------------------
25305    Begin
25306        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25307         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25308          FND_LOG.string(FND_LOG.level_statement
25309                         ,l_module_name||'.copy_oks_coverage_times'
25310                         ,'Before call to copy_oks_coverage_times'
25311                          );
25312         END IF;
25313        END IF;
25314 
25315    copy_oks_coverage_times(P_From_Chr_ID => P_From_Chr_ID
25316                               ,P_To_Chr_ID   => P_To_Chr_ID
25317                               ,P_Partial_Copy_YN => 'Y'
25318 	          	      ,P_Lines_Count => P_Lines_Tbl.COUNT
25319                               ,x_return_status => l_return_status);
25320 
25321        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25322         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25323          FND_LOG.string(FND_LOG.level_statement
25324                         ,l_module_name||'.copy_oks_coverage_times'
25325                         ,'After call to copy_oks_coverage_times: x_return_status:'||l_return_status
25326                          ||' '||SQLERRM
25327                          );
25328         END IF;
25329        END IF;
25330 
25331      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25332          RAISE G_EXCEPTION_HALT_VALIDATION;
25333      End If;
25334    End;
25335   ---------------------------------------------------------------------
25336  END IF;
25337   --=======================End of Coverage Schedule copy==========================
25338 
25339  --=======================Start of PM Schedule Copy for Line=====================
25340 
25341  IF (P_Lines_Tbl.COUNT > 0) then
25342   -------------Copy of OKS_PM_ACTIVITIES-------------------------------
25343    Begin
25344        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25345         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25346          FND_LOG.string(FND_LOG.level_statement
25347                         ,l_module_name||'.copy_oks_pm_activities'
25348                         ,'Before call to copy_oks_pm_activities'
25349                          );
25350         END IF;
25351        END IF;
25352 
25353    copy_oks_pm_activities(P_From_Chr_ID => P_From_Chr_ID
25354                          ,P_To_Chr_ID   => P_To_Chr_ID
25355                          ,P_Partial_Copy_YN => 'Y'
25356 			 ,P_Lines_Count => P_Lines_Tbl.COUNT
25357                          ,x_return_status => l_return_status);
25358 
25359        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25360         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25361          FND_LOG.string(FND_LOG.level_statement
25362                         ,l_module_name||'.copy_oks_pm_activities'
25363                         ,'After call to copy_oks_pm_activities: x_return_status:'||l_return_status
25364                          ||' '||SQLERRM
25365                          );
25366         END IF;
25367        END IF;
25368 
25369      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25370          RAISE G_EXCEPTION_HALT_VALIDATION;
25371      End If;
25372    End;
25373   ---------------------------------------------------------------------
25374   --------------Copy of OKS_PM_STREAM_LEVELS---------------------------
25375    Begin
25376        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25377         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25378          FND_LOG.string(FND_LOG.level_statement
25379                         ,l_module_name||'.copy_oks_pm_stream_levels'
25380                         ,'Before call to copy_oks_pm_stream_levels'
25381                          );
25382         END IF;
25383        END IF;
25384 
25385    copy_oks_pm_stream_levels(P_From_Chr_ID => P_From_Chr_ID
25386                          ,P_To_Chr_ID   => P_To_Chr_ID
25387                          ,P_Partial_Copy_YN => 'Y'
25388 			 ,P_Lines_Count => P_Lines_Tbl.COUNT
25389                          ,x_return_status => l_return_status);
25390 
25391        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25392         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25393          FND_LOG.string(FND_LOG.level_statement
25394                         ,l_module_name||'.copy_oks_pm_stream_levels'
25395                         ,'After call to copy_oks_pm_stream_levels: x_return_status:'||l_return_status
25396                          ||' '||SQLERRM
25397                          );
25398         END IF;
25399        END IF;
25400 
25401      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25402          RAISE G_EXCEPTION_HALT_VALIDATION;
25403      End If;
25404    End;
25405 
25406   ---------------------------------------------------------------------
25407   -------------Copy of OKS_PM_SCHEDULES--------------------------------
25408    Begin
25409        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25410         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25411          FND_LOG.string(FND_LOG.level_statement
25412                         ,l_module_name||'.copy_oks_pm_schedules'
25413                         ,'Before call to copy_oks_pm_schedules'
25414                          );
25415         END IF;
25416        END IF;
25417 
25418    copy_oks_pm_schedules(P_From_Chr_ID => P_From_Chr_ID
25419                          ,P_To_Chr_ID   => P_To_Chr_ID
25420                          ,P_Partial_Copy_YN => 'Y'
25421 			 ,P_Lines_Count => P_Lines_Tbl.COUNT
25422                          ,x_return_status => l_return_status);
25423 
25424        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25425         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25426          FND_LOG.string(FND_LOG.level_statement
25427                         ,l_module_name||'.copy_oks_pm_schedules'
25428                         ,'After call to copy_oks_pm_schedules: x_return_status:'||l_return_status
25429                          ||' '||SQLERRM
25430                          );
25431         END IF;
25432        END IF;
25433 
25434      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25435          RAISE G_EXCEPTION_HALT_VALIDATION;
25436      End If;
25437    End;
25438   ---------------------------------------------------------------------
25439   --------Creation of PM Stream Levels and PM Schedules for those lines whose dates were changed to fit the target-----
25440   Begin
25441   copy_pm_for_SkippedLines(p_api_version  => p_api_version
25442 			      ,p_init_msg_list => p_init_msg_list
25443 			      ,P_To_Chr_ID => P_To_Chr_ID
25444                               ,x_return_status => l_return_status
25445                               ,x_msg_count  => x_msg_count
25446                               ,x_msg_data   => x_msg_data);
25447 
25448      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25449          RAISE G_EXCEPTION_HALT_VALIDATION;
25450      End If;
25451   End;
25452  ----------------------------------------------------------------------
25453 
25454  END IF;
25455  --=====================End of PM Schedule Copy=================================
25456 
25457  --=====================Start of Action Times copy for Lines====================
25458 
25459  IF (P_Lines_Tbl.COUNT > 0) then
25460   --------------Copy of OKS_ACTION_TIME_TYPES-------------------------
25461    Begin
25462        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25463         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25464          FND_LOG.string(FND_LOG.level_statement
25465                         ,l_module_name||'.copy_oks_action_time_types'
25466                         ,'Before call to copy_oks_action_time_types'
25467                          );
25468         END IF;
25469        END IF;
25470 
25471 
25472    copy_oks_action_time_types(P_From_Chr_ID => P_From_Chr_ID
25473                              ,P_To_Chr_ID   => P_To_Chr_ID
25474                              ,P_Partial_Copy_YN => 'Y'
25475 			     ,P_Lines_Count => P_Lines_Tbl.COUNT
25476                              ,x_return_status => l_return_status);
25477 
25478        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25479         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25480          FND_LOG.string(FND_LOG.level_statement
25481                         ,l_module_name||'.copy_oks_action_time_types'
25482                         ,'After call to copy_oks_action_time_types: x_return_status:'||l_return_status
25483                          ||' '||SQLERRM
25484                          );
25485         END IF;
25486        END IF;
25487 
25488      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25489          RAISE G_EXCEPTION_HALT_VALIDATION;
25490      End If;
25491    End;
25492   ---------------------------------------------------------------------
25493   --------------Copy of OKS_ACTION_TIMES-------------------------------
25494    Begin
25495        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25496         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25497          FND_LOG.string(FND_LOG.level_statement
25498                         ,l_module_name||'.copy_oks_action_times'
25499                         ,'Before call to copy_oks_action_times'
25500                          );
25501         END IF;
25502        END IF;
25503 
25504    copy_oks_action_times(P_From_Chr_ID => P_From_Chr_ID
25505                         ,P_To_Chr_ID   => P_To_Chr_ID
25506                         ,P_Partial_Copy_YN => 'Y'
25507 			,P_Lines_Count => P_Lines_Tbl.COUNT
25508                         ,x_return_status => l_return_status);
25509 
25510        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25511         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25512          FND_LOG.string(FND_LOG.level_statement
25513                         ,l_module_name||'.copy_oks_action_times'
25514                         ,'After call to copy_oks_action_times: x_return_status:'||l_return_status
25515                          ||' '||SQLERRM
25516                          );
25517         END IF;
25518        END IF;
25519 
25520      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25521          RAISE G_EXCEPTION_HALT_VALIDATION;
25522      End If;
25523    End;
25524   ---------------------------------------------------------------------
25525  END IF;
25526 
25527  --=====================End of Action Times copy================================
25528 
25529  --=====================Start of BillRate Schedule copy for Lines===============
25530 
25531  IF (P_Lines_Tbl.COUNT > 0) then
25532   --------------Copy of OKS_BILLRATE_SCHEDULES-------------------------------
25533    Begin
25534        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25535         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25536          FND_LOG.string(FND_LOG.level_statement
25537                         ,l_module_name||'.copy_oks_bill_rate_schedules'
25538                         ,'Before call to copy_oks_bill_rate_schedules'
25539                          );
25540         END IF;
25541        END IF;
25542 
25543    copy_oks_billrate_schedules(P_From_Chr_ID => P_From_Chr_ID
25544                               ,P_To_Chr_ID   => P_To_Chr_ID
25545                               ,P_Partial_Copy_YN => 'Y'
25546 			      ,P_Lines_Count => P_Lines_Tbl.COUNT
25547                               ,x_return_status => l_return_status);
25548 
25549        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25550         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25551          FND_LOG.string(FND_LOG.level_statement
25552                         ,l_module_name||'.copy_oks_bill_rate_schedules'
25553                         ,'After call to copy_oks_bill_rate_schedules: x_return_status:'||l_return_status
25554                          ||' '||SQLERRM
25555                          );
25556         END IF;
25557        END IF;
25558 
25559      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25560          RAISE G_EXCEPTION_HALT_VALIDATION;
25561      End If;
25562    End;
25563 
25564   ---------------------------------------------------------------------
25565  END IF;
25566 
25567  --=====================End of BillRate Schedule copy============================
25568 
25569 
25570    ---------------Copy of OKS_K_SALES_CREDITS---------------------------
25571    Begin
25572        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25573         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25574          FND_LOG.string(FND_LOG.level_statement
25575                         ,l_module_name||'.copy_oks_k_sales_credits'
25576                         ,'Before call to copy_oks_k_sales_credits'
25577                          );
25578         END IF;
25579        END IF;
25580 
25581    copy_oks_k_sales_credits(P_From_Chr_ID => P_From_Chr_ID
25582                            ,P_To_Chr_ID   => P_To_Chr_ID
25583                            ,P_Partial_Copy_YN => 'Y'
25584 			   ,P_Target_Contract_New_YN => P_Target_Contract_New_YN
25585                            ,P_Lines_Count => P_Lines_Tbl.COUNT
25586                            ,x_return_status => l_return_status);
25587 
25588        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25589         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25590          FND_LOG.string(FND_LOG.level_statement
25591                         ,l_module_name||'.copy_oks_k_sales_credits'
25592                         ,'After call to copy_oks_k_sales_credits: x_return_status:'||l_return_status
25593                          ||' '||SQLERRM
25594                          );
25595         END IF;
25596        END IF;
25597 
25598      If (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
25599          RAISE G_EXCEPTION_HALT_VALIDATION;
25600      End If;
25601    End;
25602   ---------------------------------------------------------------------
25603 
25604 
25605     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25606       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25607          FND_LOG.string(FND_LOG.level_procedure
25608                         ,l_module_name||'.End'
25609                         ,',x_return_status='||x_return_status
25610 			||', P_To_Chr_ID ='||P_To_Chr_ID
25611                          );
25612       END IF;
25613     END IF;
25614 
25615 
25616 
25617   EXCEPTION
25618   WHEN G_EXCEPTION_HALT_VALIDATION then
25619     x_return_status := l_return_status;
25620       IF GetOKCOKSLinesB_Temp%ISOPEN THEN
25621         CLOSE GetOKCOKSLinesB_Temp;
25622       ELSIF GetOKCOKSLinesB_Temp_termn%ISOPEN THEN
25623         CLOSE GetOKCOKSLinesB_Temp_termn;
25624       ELSIF GetOKCOKSLinesB_Temp_cancel%ISOPEN THEN
25625         CLOSE GetOKCOKSLinesB_Temp_cancel;
25626       ELSIF GetOKCOKSLinesB_Temp_exclude%ISOPEN THEN
25627         CLOSE GetOKCOKSLinesB_Temp_exclude;
25628       END IF;
25629 
25630     OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
25631     RETURN;
25632 
25633 End copy_line_components;
25634 
25635 --=================================End Copy_Line_Components=========================================
25636 
25637 --===================================Start COPY_CONTRACT===========================================
25638   ----------------------------------------------------------------------------
25639   --Proceudre copy_contract. Copies the contract header and all its components.
25640   ----------------------------------------------------------------------------
25641   PROCEDURE copy_contract(
25642     p_api_version                  IN NUMBER,
25643     p_init_msg_list                IN VARCHAR2 ,
25644     x_return_status                OUT NOCOPY VARCHAR2,
25645     x_msg_count                    OUT NOCOPY NUMBER,
25646     x_msg_data                     OUT NOCOPY VARCHAR2,
25647     p_commit			          IN VARCHAR2 ,
25648     p_chr_id                  	   IN NUMBER,
25649     p_contract_number		   IN VARCHAR2,
25650     p_contract_number_modifier     IN VARCHAR2,
25651     p_to_template_yn			   IN VARCHAR2,
25652     P_renew_ref_yn                 IN VARCHAR2,
25653     x_to_chr_id                       OUT NOCOPY NUMBER,
25654     p_include_cancelled_lines  IN VARCHAR2 DEFAULT 'Y',
25655     p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
25656 
25657     l_api_name        CONSTANT VARCHAR2(30) := 'COPY_CONTRACT';
25658     l_module_name     VARCHAR2(256) := G_APP_NAME || '.plsql.' || G_PKG_NAME || '.' || l_api_name;
25659 
25660     l_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
25661     --l_old_return_status	        VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
25662     l_to_chr_id			NUMBER;
25663     l_cle_id_out		NUMBER;
25664     l_rgp_id			NUMBER;
25665     l_cat_id			NUMBER;
25666     l_cpl_id			NUMBER;
25667     l_cnh_id			NUMBER;
25668     l_result			BOOLEAN;
25669     l_category          VARCHAR2(200); --added for bug 3672759
25670 
25671     --11510
25672     l_source_doc_type VARCHAR2(60);
25673     l_source_doc_ID   NUMBER;
25674     l_target_doc_type VARCHAR2(60);
25675     l_target_doc_id   NUMBER;
25676     l_keep_version VARCHAR2(1);
25677     l_eff_date DATE;
25678     l_profile_value      VARCHAR2(100) :=Nvl(fnd_profile.Value('OKS_COPY_NOTES'),'Y'); --bugfix for 14240229 by ansraj
25679 
25680 
25681     -- 11510 get chr start date for effective date for copy_doc
25682     CURSOR c_art_eff_date (p_doc_type VARCHAR2,p_doc_id NUMBER) IS
25683     SELECT article_effective_date
25684      FROM okc_template_usages_v
25685      WHERE document_type=p_doc_type AND document_id=p_doc_id;
25686 ---------------------------------------------------
25687     CURSOR GetHdrTrxnInfo IS
25688     SELECT
25689      oks.TRXN_EXTENSION_ID
25690     ,okc.BILL_TO_SITE_USE_ID
25691     FROM
25692      OKC_K_HEADERS_ALL_B okc
25693     ,OKS_K_HEADERS_B oks
25694     WHERE
25695     okc.id = oks.chr_id
25696     and okc.id = p_chr_id;
25697 
25698     l_Hdr_Bill_To_Site_Use_ID NUMBER;
25699     l_Hdr_Old_Trxn_Extn_ID NUMBER;
25700     l_Hdr_New_Trxn_Extn_ID NUMBER;
25701 
25702 
25703 ---------------------------------------------------
25704 
25705   BEGIN
25706 
25707 
25708     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25709       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25710          FND_LOG.string(FND_LOG.level_procedure
25711 			,l_module_name||'.Begin'
25712 			,'p_chr_id='|| p_chr_id
25713 			 ||',p_contract_number='||p_contract_number
25714 			 ||',p_contract_number_modifier='||p_contract_number_modifier
25715 			 ||',p_renew_ref_yn='||p_renew_ref_yn
25716 			 ||',p_to_template_yn='||p_to_template_yn
25717 			 ||',p_commit='||p_commit);
25718       END IF;
25719     END IF;
25720 
25721     SAVEPOINT copy_contract;
25722 
25723 
25724 ----------------------------------------------------
25725     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
25726       FND_LOG.string(FND_LOG.level_statement
25727                     ,l_module_name
25728                     ,'Before Is_Copy_Allowed'
25729                     );
25730     End If;
25731 
25732     l_result := IS_COPY_ALLOWED(p_chr_id, NULL);
25733 
25734     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
25735       FND_LOG.string(FND_LOG.level_statement
25736                     ,l_module_name
25737                     ,'After Is_Copy_Allowed'
25738                     );
25739     End If;
25740 
25741     IF NOT l_result Then
25742 	 -- notify caller of an UNEXPECTED error
25743       x_return_status := FND_API.G_RET_STS_ERROR;
25744       RAISE G_EXCEPTION_HALT_VALIDATION;
25745     END IF;
25746 
25747     -- Intitialize globals.
25748     /***
25749     IF g_events.COUNT > 0 THEN
25750        g_events.DELETE;
25751     END IF;
25752     ***/
25753 
25754     IF g_op_lines.COUNT > 0 THEN
25755 	  g_op_lines.DELETE;
25756     END IF;
25757 
25758 
25759 
25760     x_return_status := l_return_status;
25761 
25762      IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25763       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25764          FND_LOG.string(FND_LOG.level_procedure
25765                         ,l_module_name||'.Copy_Contract_Header'
25766                         ,'Before call to Copy_Contract_Header'
25767                          );
25768       END IF;
25769     END IF;
25770 
25771     copy_contract_header(
25772 	      p_api_version		     => p_api_version,
25773            p_init_msg_list		=> p_init_msg_list,
25774            x_return_status 		=> l_return_status,
25775            x_msg_count     		=> x_msg_count,
25776            x_msg_data      		=> x_msg_data,
25777            p_from_chr_id	        => p_chr_id,
25778            p_contract_number		=> p_contract_number,
25779            p_contract_number_modifier	=> p_contract_number_modifier,
25780 	      p_to_template_yn        => p_to_template_yn,
25781 	      p_renew_ref_yn          => p_renew_ref_yn,
25782            x_to_chr_id	           => l_to_chr_id);
25783 
25784     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
25785       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
25786          FND_LOG.string(FND_LOG.level_procedure
25787                         ,l_module_name||'.Copy_Contract_Header'
25788                         ,'After call to Copy_Contract_Header x_return_status='||l_return_status
25789                          );
25790       END IF;
25791     END IF;
25792 
25793     IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25794         x_return_status := l_return_status;
25795         RAISE G_EXCEPTION_HALT_VALIDATION;
25796     END IF;
25797 
25798     x_to_chr_id := l_to_chr_id; --the new contract header id is passed out.
25799 
25800 --===================================Start of Copy Events========================================
25801  --Header Level condition copy no longer supported
25802 --=================================End of Copy Events============================================
25803 
25804 --=================================Start of Copy Contract Document===============================
25805     l_keep_version := 'Y';
25806      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
25807         p_api_version   => p_api_version,
25808         x_return_status => l_return_status,
25809         x_msg_data      => x_msg_data,
25810         x_msg_count     => x_msg_count,
25811         p_chr_id        => p_chr_id,
25812         x_doc_id        => l_source_doc_id,
25813         x_doc_type      => l_source_doc_type
25814     );
25815 
25816         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25817         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
25818             x_return_status := l_return_status;
25819             RAISE G_EXCEPTION_HALT_VALIDATION;
25820         --  ELSE
25821         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
25822         --      x_return_status := l_return_status;
25823         --    END IF;
25824         --  END IF;
25825         END IF;
25826 
25827      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
25828         p_api_version   => p_api_version,
25829         x_return_status => l_return_status,
25830         x_msg_data      => x_msg_data,
25831         x_msg_count     => x_msg_count,
25832         p_chr_id        => l_to_chr_id,
25833         x_doc_id        => l_target_doc_id,
25834         x_doc_type      => l_target_doc_type);
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) THEN
25838             x_return_status := l_return_status;
25839             RAISE G_EXCEPTION_HALT_VALIDATION;
25840         --  ELSE
25841         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
25842         --      x_return_status := l_return_status;
25843         --    END IF;
25844         --  END IF;
25845         END IF;
25846     OPEN c_art_eff_date(l_source_doc_type, l_source_doc_id);
25847     FETCH c_art_eff_date INTO l_eff_date;
25848     CLOSE c_art_eff_date;
25849 
25850       IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25851        IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25852          FND_LOG.string(FND_LOG.level_statement
25853                        ,l_module_name||'.OKC_TERMS_COPY_GRP.copy_doc'
25854                        ,'Before call to OKC_TERMS_COPY_GRP.copy_doc'
25855 		        );
25856        END IF;
25857       END IF;
25858 
25859       OKC_TERMS_COPY_GRP.copy_doc(
25860         p_api_version	     => p_api_version,
25861         x_return_status 	     => l_return_status,
25862         x_msg_count     	     => x_msg_count,
25863         x_msg_data      	     => x_msg_data,
25864         p_source_doc_type      => l_source_doc_type,
25865         p_source_doc_id        => l_source_doc_id,
25866         p_target_doc_type      => l_target_doc_type,
25867         p_target_doc_id        => l_target_doc_id,
25868         p_keep_version         => l_keep_version,
25869         p_article_effective_date => Nvl(l_eff_date,Sysdate),
25870         p_document_number      => p_contract_number,
25871         p_allow_duplicate_terms=>'Y');
25872 
25873        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25874         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25875          FND_LOG.string(FND_LOG.level_statement
25876                         ,l_module_name||'.OKC_TERMS_COPY_GRP.copy_doc'
25877                         ,'After call to OKC_TERMS_COPY_GRP.copy_doc: x_return_status:'||l_return_status
25878                          ||' '||SQLERRM
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) THEN
25885             x_return_status := l_return_status;
25886             RAISE G_EXCEPTION_HALT_VALIDATION;
25887         --  ELSE
25888         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
25889         --      x_return_status := l_return_status;
25890         --    END IF;
25891         --  END IF;
25892         END IF;
25893 --================================End of Copy Contract Document===================================
25894 
25895 --===================-Start of Copy OKS Header attributes ========================================
25896       /*--Call to copy source contract record in OKS_K_HEADERS_B */
25897 	  IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25898 	    IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25899 	      FND_LOG.string(FND_LOG.level_statement
25900 	          ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
25901 	          ,'Before call to oks_setup_util_pub.copy_hdr_attr'
25902 	        	 ||' P_From_Chr_ID = '||p_chr_id
25903 			 ||',P_To_Chr_ID = '||l_to_chr_id
25904 			       );
25905 	    END IF;
25906 	  END IF;
25907 
25908        OKS_SETUP_UTIL_PUB.copy_hdr_attr
25909 	                       (p_chr_id        => p_chr_id --Source Contract Header ID
25910 			       ,p_new_chr_id    => l_to_chr_id --Target Contract Header ID
25911 			       ,p_duration_match => NULL
25912 			       ,p_renew_ref_YN => P_Renew_Ref_YN
25913 			       ,x_return_status => l_return_status);
25914        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25915         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25916          FND_LOG.string(FND_LOG.level_statement
25917                         ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
25918                         ,'After call to oks_setup_util_pub.copy_hdr_attr: x_return_status:'||l_return_status
25919                          ||' '||SQLERRM
25920                          );
25921         END IF;
25922        END IF;
25923 
25924 	  IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25925 	      x_return_status := l_return_status;
25926 	      RAISE G_EXCEPTION_HALT_VALIDATION;
25927 	  END IF;
25928 --===================End of Copy OKS Header attributes===========================================
25929 
25930 --==================Generate new transaction extension for Header================================
25931 
25932    Begin
25933    --Get Header Trxn ID and Bill_To_Site_Use_ID--
25934 
25935    OPEN GetHdrTrxnInfo;
25936    FETCH GetHdrTrxnInfo into l_Hdr_Old_Trxn_Extn_ID,l_Hdr_Bill_To_Site_Use_ID;
25937    CLOSE GetHdrTrxnInfo;
25938 
25939     If (l_Hdr_Old_Trxn_Extn_ID IS NOT NULL AND l_Hdr_Bill_To_Site_Use_ID IS NOT NULL) then
25940 
25941        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25942         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25943          FND_LOG.string(FND_LOG.level_statement
25944                         ,l_module_name||'.Create_Transaction_Extension'
25945                         ,'Before call to Create_Transaction_Extension for Header in COPY_CONTRACT'
25946 			||'Bill to site use id='||l_Hdr_Bill_To_Site_Use_ID
25947                         ||'Old Trxn ID='||l_Hdr_Old_Trxn_Extn_ID
25948                          );
25949         END IF;
25950        END IF;
25951 
25952         OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
25953                                       ,P_Init_Msg_List => p_init_msg_list
25954                                       ,P_Header_ID => l_to_chr_id
25955                                       ,P_Line_ID => NULL
25956                                       ,P_Source_Trx_Ext_ID => l_Hdr_Old_Trxn_Extn_ID
25957 				      ,P_Cust_Acct_ID => NULL
25958                                       ,P_Bill_To_Site_Use_ID => l_Hdr_Bill_To_Site_Use_ID
25959                                       ,x_entity_id => l_Hdr_New_Trxn_Extn_ID
25960                                       ,x_msg_data => x_msg_data
25961                                       ,x_msg_count => x_msg_count
25962                                       ,x_return_status => l_return_status) ;
25963 
25964 
25965        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25966         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
25967          FND_LOG.string(FND_LOG.level_statement
25968                         ,l_module_name||'.Create_Transaction_Extension'
25969                         ,'After call to Create_Transaction_Extension for Header: x_return_status :'||l_return_status
25970                         ||'New Trxn ID='||l_Hdr_New_Trxn_Extn_ID
25971                          );
25972         END IF;
25973        END IF;
25974 
25975        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
25976         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
25977               x_return_status := l_return_status;
25978               RAISE G_EXCEPTION_HALT_VALIDATION;
25979         END IF;
25980        END IF;
25981 
25982        UPDATE OKS_K_HEADERS_B
25983        SET TRXN_EXTENSION_ID = l_Hdr_New_Trxn_Extn_ID
25984        WHERE CHR_ID = l_to_chr_id;
25985 
25986         If SQL%NOTFOUND then
25987           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
25988            FND_LOG.string(FND_LOG.level_statement
25989                         ,l_module_name||'.Create_Transaction_Extension'
25990                         ,'Error in Update OKS_K_HEADERS_B, row not found for update'
25991                          );
25992           END IF;
25993          l_return_status := FND_API.G_RET_STS_ERROR;
25994          RAISE G_EXCEPTION_HALT_VALIDATION;
25995         End If;
25996 
25997 
25998    End If;
25999   End;
26000 
26001 --==================End of Generate new transaction extension for Header=========================
26002 
26003 --===================Start of Copy OKS Header Notes=============================================
26004 IF l_profile_value ='Y' THEN --added for bugfix 14240229 by ansraj
26005 
26006      /*--Call to copy Header notes -----*/
26007 	IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26008 	 IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26009 	  FND_LOG.string(FND_LOG.level_statement
26010 	  		     ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
26011 				,'Before call to oks_coverages_pvt.copy_k_hdr_notes'
26012 				);
26013 	 END IF;
26014 	END IF;
26015 
26016      OKS_COVERAGES_PVT.COPY_K_HDR_NOTES(
26017 	     p_api_version           => p_api_version,
26018 		p_init_msg_list         => p_init_msg_list,
26019 		p_chr_id                => l_to_chr_id, --Target Contract Header ID
26020 		x_return_status         => l_return_status,
26021 		x_msg_count             => x_msg_count,
26022 		x_msg_data              => x_msg_data);
26023 
26024        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26025         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26026          FND_LOG.string(FND_LOG.level_statement
26027                         ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
26028                         ,'After call to oks_coverages_pvt.copy_k_hdr_notes: x_return_status:'||l_return_status
26029                          ||' '||SQLERRM
26030                          );
26031         END IF;
26032        END IF;
26033  END IF; --l_profile_value
26034 
26035        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26036         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR OR
26037             l_return_status = FND_API.G_RET_STS_ERROR) THEN
26038          x_return_status := l_return_status;
26039          RAISE G_EXCEPTION_HALT_VALIDATION;
26040         ELSE
26041 	     x_return_status := l_return_status; -- donot raise exception if l_return_status = 'W'
26042 	END IF;
26043        END IF;
26044 --=====================End of Copy OKS Header Notes=============================================
26045 
26046 --=====================Start of Copy Lines=====================================================
26047        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26048         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26049          FND_LOG.string(FND_LOG.level_statement
26050                         ,l_module_name||'.copy_lines'
26051                         ,'Before call to copy_lines , P_From_Chr_ID='||p_chr_id
26052                        ||' P_To_Chr_ID='||l_to_chr_id
26053 		       ||' P_Renew_Ref_YN='||P_Renew_Ref_YN
26054 		       ||'x_return_status ='||x_return_status
26055  		       ||'Time Stamp before copy_lines :'||to_char(sysdate,'DD-MON-YYYY HH:MI:SS')
26056                          );
26057         END IF;
26058        END IF;
26059        copy_lines(
26060           p_api_version      => p_api_version
26061          ,p_init_msg_list    => p_init_msg_list
26062          ,x_return_status    => l_return_status
26063          ,x_msg_count        => x_msg_count
26064          ,x_msg_data         => x_msg_data
26065          ,P_From_Chr_ID      => p_chr_id
26066          ,P_To_Chr_ID        => l_to_chr_id
26067          ,P_Renew_Ref_YN     => P_Renew_Ref_YN
26068 	 ,p_include_cancelled_lines => p_include_cancelled_lines
26069 	 ,p_include_terminated_lines => p_include_terminated_lines) ;
26070 
26071        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26072         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26073          FND_LOG.string(FND_LOG.level_statement
26074                         ,l_module_name||'.copy_lines'
26075                         ,'After call to copy_lines: x_return_status:'||l_return_status
26076                          ||' '||SQLERRM
26077  		         ||'Time Stamp after copy_lines:'||to_char(sysdate,'DD-MON-YYYY HH:MI:SS')
26078                          );
26079         END IF;
26080        END IF;
26081 
26082        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26083         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR OR
26084             l_return_status = FND_API.G_RET_STS_ERROR) THEN
26085          x_return_status := l_return_status;
26086          RAISE G_EXCEPTION_HALT_VALIDATION;
26087         ELSE
26088              x_return_status := l_return_status; -- donot raise exception if l_return_status = 'W'
26089         END IF;
26090        END IF;
26091 --=====================End of Copy Lines======================================================
26092 
26093 
26094   IF (l_debug = 'Y') THEN
26095      OKC_DEBUG.log('10000 : Exiting Copy_contract ', 2);
26096      OKC_DEBUG.ReSet_Indentation;
26097   END IF;
26098 
26099 /*
26100  IF FND_API.to_boolean(p_commit) THEN
26101                     COMMIT;
26102  END IF;
26103 */
26104 
26105 
26106 
26107   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
26108     IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
26109          FND_LOG.string(FND_LOG.level_procedure
26110                         ,l_module_name||'.End'
26111                         ,'x_to_chr_id='||x_to_chr_id
26112                         ||',x_return_status='||x_return_status);
26113     END IF;
26114   END IF;
26115 
26116   EXCEPTION
26117     WHEN G_EXCEPTION_HALT_VALIDATION THEN
26118             ROLLBACK to copy_contract;
26119 	    IF (l_debug = 'Y') THEN
26120               null;
26121    	    OKC_DEBUG.ReSet_Indentation;
26122 	    END IF;
26123 
26124     WHEN OTHERS THEN
26125       ROLLBACK to copy_contract;
26126       -- store SQL error message on message stack for caller
26127       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
26128       -- notify caller of an UNEXPECTED error
26129       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
26130 	 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
26131 
26132   END COPY_CONTRACT;
26133 --=========================================End COPY_CONTRACT=============================================
26134 
26135 --====================================================================
26136 --Function StatusFitsQAHoldCriteria(p_current_status IN VARCHAR2)
26137 --Function to check to see if the current status of the contract fits the criteria to be changed to QA_HOLD
26138 --===================================================================
26139  Function SeedStatus(p_current_status IN VARCHAR2) RETURN VARCHAR2 IS
26140 l_result OKC_STATUSES_B.STE_CODE%TYPE;
26141  Begin
26142    select ste_code
26143    into l_result
26144    from okc_statuses_b
26145    where code = p_current_status;
26146 
26147       RETURN l_result;
26148 
26149         EXCEPTION
26150           WHEN OTHERS THEN
26151 	   l_result := NULL;
26152 	   FND_MSG_PUB.add_exc_msg(g_pkg_name, 'Error in SeedStatus' , substr(SQLERRM,1,240));
26153            IF (FND_LOG.level_unexpected >= FND_LOG.g_current_runtime_level) THEN
26154             FND_LOG.string(FND_LOG.level_unexpected
26155                    ,'SeedStatus.EXCEPTION'
26156                    ,'Exception in call to SeedStatus : SQLERRM ='||SQLERRM
26157                          );
26158            END IF;
26159  End SeedStatus;
26160 
26161 ------------------------------------------------------------------------------
26162 
26163 --=======================================================================================
26164 --Procedure Party_Cleanup(P_To_Chr_ID IN NUMBER
26165 --			 ,x_return_status OUT NOCOPY VARCHAR2)
26166 --Nulls out all the accounts and other party related information at the Header and Line levels if no parties exist
26167 --at the Contract Header level
26168 --======================================================================================
26169   PROCEDURE Party_Cleanup(P_To_Chr_ID IN NUMBER
26170                          --npalepu added on 5/8/2006 for bug # 5116858
26171                          ,P_From_Chr_ID IN NUMBER
26172                          --end npalepu
26173 		         ,P_Target_Contract_New_YN IN VARCHAR2
26174 			 ,x_return_status OUT NOCOPY VARCHAR2) IS
26175 
26176    l_stage VARCHAR2(100);
26177    CURSOR l_party_csr(P_To_Chr_ID IN  NUMBER) IS
26178    SELECT count(ID)
26179    FROM okc_k_party_roles_b
26180    WHERE dnz_chr_id = P_To_Chr_ID
26181    AND jtot_object1_code = 'OKX_PARTY'
26182    --npalepu added on  for bug # 5116858
26183    AND RLE_CODE in ('CUSTOMER','SUBSCRIBER')
26184    --end npalepu
26185    AND cle_id is null;
26186 
26187    --npalepu added on 5/8/2006 for bug # 5116858
26188    CURSOR l_party_comp_csr IS
26189    SELECT COUNT(*) FROM
26190    (SELECT RLE_CODE,jtot_object1_code
26191    FROM okc_k_party_roles_b
26192    WHERE dnz_chr_id = P_From_Chr_ID
26193    AND cle_id is null
26194    MINUS
26195    SELECT RLE_CODE,jtot_object1_code
26196    FROM okc_k_party_roles_b
26197    WHERE dnz_chr_id = P_To_Chr_ID
26198    AND cle_id is null);
26199 
26200    l_party_comp_count NUMBER;
26201    --end npalepu
26202 
26203    l_api_name        CONSTANT VARCHAR2(30) := 'Party_Cleanup';
26204    l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
26205    l_party_count NUMBER;
26206 
26207   Begin
26208   x_return_status := FND_API.G_RET_STS_SUCCESS;
26209 
26210   OPEN l_party_csr(P_To_Chr_ID);
26211   FETCH l_party_csr into l_party_count;
26212   CLOSE l_party_csr;
26213 
26214   If l_party_count = 0 then
26215    Begin
26216    --Update OKC_K_HEADERS--
26217 
26218     l_stage := 'Updating OKC_K_HEADERS_ALL_B';
26219 
26220     UPDATE OKC_K_HEADERS_ALL_B
26221     SET
26222      CUST_ACCT_ID = NULL
26223     ,BILL_TO_SITE_USE_ID = NULL
26224     ,SHIP_TO_SITE_USE_ID = NULL
26225     ,CUST_PO_NUMBER = NULL
26226     ,CUST_PO_NUMBER_REQ_YN = NULL
26227     ,OBJECT_VERSION_NUMBER = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26228     --npalepu added on 5/17/2006 for bug # 5116858
26229     ,PAYMENT_INSTRUCTION_TYPE = NULL
26230     --end npalepu
26231     WHERE ID = P_To_Chr_ID;
26232 
26233     --Update OKS_K_HEADERS--
26234     l_stage := 'Updating OKS_K_HEADERS_B';
26235     UPDATE OKS_K_HEADERS_B
26236     SET
26237      quote_to_contact_id = NULL
26238     ,quote_to_site_id = NULL
26239     ,quote_to_email_id = NULL
26240     ,quote_to_phone_id = NULL
26241     ,quote_to_fax_id = NULL
26242     ,commitment_id = NULL
26243     ,payment_type = NULL
26244     --npalepu added on 23-may-2006 for bug # 5116858
26245     ,TRXN_EXTENSION_ID = NULL
26246     --end npalepu
26247     ,service_po_number = NULL
26248     ,service_po_required = NULL
26249     ,renewal_po_number = NULL
26250     ,renewal_po_required = NULL
26251     ,renewal_po_used = NULL
26252     ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26253     WHERE CHR_ID = P_To_Chr_ID;
26254 
26255    --Update OKC_K_LINES_B--
26256     l_stage := 'Updating OKC_K_LINES_B';
26257     UPDATE OKC_K_LINES_B
26258     SET
26259      cust_acct_id = NULL
26260     ,bill_to_site_use_id = NULL
26261     ,ship_to_site_use_id = NULL
26262     ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26263     --npalepu added on 5/17/2006 for bug # 5116858
26264     ,PAYMENT_INSTRUCTION_TYPE = NULL
26265     --end npalepu
26266     WHERE DNZ_CHR_ID = P_To_Chr_ID
26267     AND CLE_ID IS NULL;
26268 
26269    --Update OKS_K_LINES_B--
26270     l_stage := 'Updating OKS_K_LINES_B';
26271     UPDATE OKS_K_LINES_B
26272     SET
26273      commitment_id = null
26274     ,cust_po_number = null
26275     ,cust_po_number_req_yn = null
26276     ,payment_type = null
26277     ,CC_NO = null
26278     ,CC_EXPIRY_DATE = null
26279     ,CC_BANK_ACCT_ID = null
26280     ,CC_AUTH_CODE = null
26281     ,TRXN_EXTENSION_ID = null
26282     ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26283     WHERE DNZ_CHR_ID = P_To_Chr_ID
26284     AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL);
26285 
26286    --Delete line level party contacts--
26287     l_stage := 'Deleting from OKC_CONTACTS';
26288     DELETE from okc_contacts
26289     where cpl_id in (SELECT ID from OKC_K_PARTY_ROLES_B WHERE DNZ_CHR_ID = P_To_Chr_ID
26290                      --npalepu removed the condition on 5/8/2006 for bug # 5116858
26291                      /* and JTOT_OBJECT1_CODE = 'OKX_PARTY'  */
26292                      --end npalepu
26293                      and CLE_ID is NOT NULL);
26294 
26295    --Delete line level party roles--
26296     l_stage := 'Deleting from OKC_K_PARTY_ROLES_B';
26297     DELETE from okc_k_party_roles_b
26298     where dnz_chr_id = P_To_Chr_ID
26299     --npalepu removed the condition on 5/8/2006 for bug # 5116858
26300     /* and jtot_object1_code = 'OKX_PARTY' */
26301     --end npalepu
26302     and cle_id is not null;
26303 
26304    End;
26305 
26306   --npalepu added on 5/8/2006 for bug # 5116858
26307   ELSE
26308         OPEN l_party_comp_csr;
26309         FETCH l_party_comp_csr INTO l_party_comp_count;
26310         CLOSE l_party_comp_csr;
26311 
26312         IF l_party_comp_count > 0 THEN
26313           Begin
26314                 --Update OKC_K_LINES_B--
26315                 l_stage := 'Updating OKC_K_LINES_B';
26316                 UPDATE OKC_K_LINES_B
26317                 SET
26318                 cust_acct_id = NULL
26319                 ,bill_to_site_use_id = NULL
26320                 ,ship_to_site_use_id = NULL
26321                 ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26322                 ,PAYMENT_INSTRUCTION_TYPE = NULL
26323                 WHERE DNZ_CHR_ID = P_To_Chr_ID
26324                 AND CLE_ID IS NULL
26325                 AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP);
26326 
26327                 --Update OKS_K_LINES_B--
26328                 l_stage := 'Updating OKS_K_LINES_B';
26329                 UPDATE OKS_K_LINES_B
26330                 SET
26331                 commitment_id = null
26332                 ,cust_po_number = null
26333                 ,cust_po_number_req_yn = null
26334                 ,payment_type = null
26335                 ,CC_NO = null
26336                 ,CC_EXPIRY_DATE = null
26337                 ,CC_BANK_ACCT_ID = null
26338                 ,CC_AUTH_CODE = null
26339                 ,TRXN_EXTENSION_ID = null
26340                 ,object_version_number = decode(P_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26341                 WHERE DNZ_CHR_ID = P_To_Chr_ID
26342                 AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL
26343                                AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP));
26344 
26345                 --Delete line level party contacts--
26346                 l_stage := 'Deleting from OKC_CONTACTS';
26347                 DELETE from okc_contacts
26348                 where cpl_id in (SELECT ID from OKC_K_PARTY_ROLES_B WHERE DNZ_CHR_ID = P_To_Chr_ID
26349                                 and CLE_ID is NOT NULL
26350                                 AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL
26351                                                AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP)));
26352 
26353                 --Delete line level party roles--
26354                 l_stage := 'Deleting from OKC_K_PARTY_ROLES_B';
26355                 DELETE from okc_k_party_roles_b
26356                 where dnz_chr_id = P_To_Chr_ID
26357                 and cle_id is not null
26358                 AND CLE_ID in (select ID from okc_k_lines_b where DNZ_CHR_ID = P_To_Chr_ID and CLE_ID IS NULL
26359                                AND id in (SELECT ID FROM OKC_K_LINES_B_TEMP));
26360           End;
26361         END IF;
26362   --end npalepu
26363   End If;
26364     EXCEPTION WHEN OTHERS THEN
26365      If (l_party_csr%ISOPEN) then
26366        CLOSE l_party_csr;
26367      End If;
26368      --npalepu added on 5/8/2006 for bug # 5116858
26369      If (l_party_comp_csr%ISOPEN) then
26370        CLOSE l_party_comp_csr;
26371      End If;
26372      --end npalepu
26373      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
26374      FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name||':'||l_stage, substr(SQLERRM,1,240));
26375 
26376 END Party_Cleanup;
26377 
26378 --==============================================================================
26379 --Procedure PURGE_OKC_K_LINES_B_TEMP
26380 --==============================================================================
26381   Procedure PURGE_OKC_K_LINES_B_TEMP IS PRAGMA AUTONOMOUS_TRANSACTION;
26382   l_api_name VARCHAR2(30) := 'PURGE_OKC_K_LINES_B_TEMP';
26383   l_schema_name VARCHAR2(3) := 'OKC';
26384   l_statement VARCHAR2(200) := 'TRUNCATE TABLE '
26385                             ||l_schema_name
26386                             ||'.'
26387                             ||'OKC_K_LINES_B_TEMP';
26388 
26389   Begin
26390    EXECUTE IMMEDIATE l_statement;
26391      EXCEPTION
26392        WHEN OTHERS THEN
26393           FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
26394           RAISE;
26395 
26396   End PURGE_OKC_K_LINES_B_TEMP;
26397 
26398 --=====================================================================================
26399 --Procedure COPY_COMPONENTS
26400 --====================================================================================
26401 
26402  PROCEDURE copy_components(
26403     p_api_version                  IN NUMBER,
26404     p_init_msg_list                IN VARCHAR2 ,
26405     x_return_status                OUT NOCOPY VARCHAR2,
26406     x_msg_count                    OUT NOCOPY NUMBER,
26407     x_msg_data                     OUT NOCOPY VARCHAR2,
26408     p_from_chr_id                  IN NUMBER,
26409     p_to_chr_id                  IN NUMBER,
26410     p_contract_number		     IN VARCHAR2,
26411     p_contract_number_modifier     IN VARCHAR2,
26412     p_to_template_yn			IN VARCHAR2 ,
26413     p_components_tbl			IN api_components_tbl,
26414     p_lines_tbl				IN api_lines_tbl,
26415     p_change_status_YN                IN VARCHAR2 ,--Added for Update_Service requirement(Bug 4747648)
26416                                                            --If 'Y', status of new line is default status(DEFAULT value)
26417                                                            --If 'N', status from Source Line is retained
26418     p_return_new_top_line_ID_YN    IN VARCHAR2 , --Added for Update_Service requirement(Bug 4747648)
26419                                                            --If 'Y' then the new line IDs of the copied top lines need to be
26420                                                            --published
26421  							   --If 'N', then dont need to be published (DEFAULT value)
26422     x_to_chr_id                    OUT NOCOPY NUMBER,
26423     p_published_line_ids_tbl       OUT  NOCOPY published_line_ids_tbl,
26424     p_include_cancelled_lines IN VARCHAR2 DEFAULT 'Y',
26425     p_include_terminated_lines IN VARCHAR2 DEFAULT 'Y') IS
26426 
26427     l_components_tbl  api_components_tbl := p_components_tbl;
26428     l_lines_tbl       api_lines_tbl := p_lines_tbl;
26429     l_return_status	  VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
26430     l_old_return_status	  VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
26431     l_cle_id_out      NUMBER;
26432     l_to_chr_id          NUMBER;
26433     l_cnh_id          NUMBER;
26434     l_rgp_id          NUMBER;
26435     l_cat_id          NUMBER;
26436     l_cpl_id          NUMBER;
26437     l_from_cle_id     NUMBER;
26438     l_to_cle_id       NUMBER;
26439     i                 NUMBER := 0;
26440     j                 NUMBER := 0;
26441     l_old_lse_id      NUMBER;
26442     l_result		  BOOLEAN;
26443 
26444     --11510
26445     l_source_doc_type VARCHAR2(60);
26446     l_source_doc_ID   NUMBER;
26447     l_target_doc_type VARCHAR2(60);
26448     l_target_doc_ID   NUMBER;
26449     l_keep_version VARCHAR2(1);
26450     l_eff_date DATE;
26451     l_category          VARCHAR2(200); --added for bug 3764231
26452 
26453     -- 11510 get chr start date for effective date for copy_doc
26454     CURSOR c_art_eff_date (p_doc_type VARCHAR2,p_doc_id NUMBER) IS
26455     SELECT article_effective_date
26456      FROM okc_template_usages_v
26457      WHERE document_type=p_doc_type AND document_id=p_doc_id;
26458 
26459 
26460 
26461     CURSOR GetHdrTrxnInfo IS
26462     SELECT
26463      oks.TRXN_EXTENSION_ID
26464     ,okc.BILL_TO_SITE_USE_ID
26465     FROM
26466      OKC_K_HEADERS_ALL_B okc
26467     ,OKS_K_HEADERS_B oks
26468     WHERE
26469     okc.id = oks.chr_id
26470     and okc.id = p_from_chr_id;
26471 
26472     l_Hdr_Bill_To_Site_Use_ID NUMBER;
26473     l_Hdr_Old_Trxn_Extn_ID NUMBER;
26474     l_Hdr_New_Trxn_Extn_ID NUMBER;
26475 
26476 
26477     --Added for Update_Service requirement(Bug 4747648)
26478     --This cursor gets the IDs of the newly copied top lines along with its source line ids
26479     CURSOR GetTopLinesFromTemp IS
26480     SELECT
26481     ID      as NEW_LINE_ID
26482     ,ORIG_SYSTEM_ID1 as OLD_LINE_ID
26483     FROM
26484     OKC_K_LINES_B_TEMP
26485     where
26486     CLE_ID IS NULL;
26487 
26488     l_old_line_id number;
26489     l_new_line_id number;
26490     p_published_line_ids_ctr NUMBER := 0;
26491 
26492     l_Target_Contract_New_YN VARCHAR2(1):= 'N' ;
26493 
26494     l_api_name        CONSTANT VARCHAR2(30) := 'COPY_COMPONENTS';
26495     l_module_name     VARCHAR2(256) := G_APP_NAME ||'.plsql.' || G_PKG_NAME || '.' || l_api_name;
26496 
26497 --npalepu added on 01-AUG-2006 for bug # 5402978
26498 l_msg_count         NUMBER;
26499 l_msg_data          VARCHAR2(2000):=null;
26500 --end npalepu
26501 
26502   BEGIN
26503 
26504   SAVEPOINT copy_components;
26505 
26506 --added for bug 2950549
26507  fnd_msg_pub.initialize;
26508 IF (l_debug = 'Y') THEN
26509    OKC_DEBUG.log('200 : Calling IS_COPY_ALLOWED');
26510 END IF;
26511 
26512     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
26513       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
26514          FND_LOG.string(FND_LOG.level_procedure
26515                         ,l_module_name||'.Begin'
26516                         ,'p_from_chr_id='|| p_from_chr_id
26517                          ||',p_contract_number='||p_contract_number
26518                          ||',p_contract_number_modifier='||p_contract_number_modifier
26519                          ||',p_to_template_yn='||p_to_template_yn);
26520       END IF;
26521     END IF;
26522 
26523     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
26524       FND_LOG.string(FND_LOG.level_statement
26525                     ,l_module_name
26526                     ,'Before Is_Copy_Allowed'
26527                     );
26528     End If;
26529 
26530 	l_result := IS_COPY_ALLOWED(p_from_chr_id, NULL);
26531 
26532 
26533     If (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) then
26534       FND_LOG.string(FND_LOG.level_statement
26535                     ,l_module_name
26536                     ,'After Is_Copy_Allowed'
26537                     );
26538     End If;
26539 
26540 
26541 	If NOT l_result Then
26542 	  -- notify caller of an UNEXPECTED error
26543 	  x_return_status := FND_API.G_RET_STS_ERROR;
26544 	  raise G_EXCEPTION_HALT_VALIDATION;
26545 	End If;
26546 
26547     -- Intitialize globals.
26548    /***
26549     IF g_events.COUNT > 0 THEN
26550        g_events.DELETE;
26551     END IF;
26552    ***/
26553 
26554     IF g_party.COUNT > 0 THEN
26555        g_party.DELETE;
26556     END IF;
26557 
26558 
26559     x_return_status := l_return_status;
26560 
26561 IF (l_debug = 'Y') THEN
26562    OKC_DEBUG.log('250 : x_return_status : '||x_return_status);
26563    OKC_DEBUG.log('250 : p_to_chr_id : '||p_to_chr_id);
26564 END IF;
26565 
26566     IF p_to_chr_id IS NULL THEN
26567       l_Target_Contract_New_YN := 'Y'; --Indicates to copy_lines API
26568 				       --whether the Target Contract being copied to
26569 				       --was pre-existing or was created as part of Copy
26570 
26571     IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
26572       IF (FND_LOG.test(FND_LOG.level_procedure, l_module_name)) THEN
26573          FND_LOG.string(FND_LOG.level_procedure
26574                         ,l_module_name||'.Copy_Contract_Header'
26575                         ,'Before call to Copy_Contract_Header'
26576                          );
26577       END IF;
26578     END IF;
26579 
26580       copy_contract_header(
26581 	   p_api_version		=> p_api_version,
26582            p_init_msg_list		=> p_init_msg_list,
26583            x_return_status 		=> l_return_status,
26584            x_msg_count     		=> x_msg_count,
26585            x_msg_data      		=> x_msg_data,
26586            p_from_chr_id		=> p_from_chr_id,
26587            p_contract_number		=> p_contract_number,
26588            p_contract_number_modifier	=> p_contract_number_modifier,
26589 	   p_to_template_yn             => p_to_template_yn,
26590 	   p_renew_ref_yn               => 'N',
26591            x_to_chr_id			=> l_to_chr_id);
26592 
26593      IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26594       IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26595          FND_LOG.string(FND_LOG.level_statement
26596                         ,l_module_name||'.copy_contract_header'
26597                         ,'After call to copy_contract_header: x_return_status:'||l_return_status
26598                          ||' '||SQLERRM
26599                          );
26600       END IF;
26601      END IF;
26602 
26603       IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26604           x_return_status := l_return_status;
26605           RAISE G_EXCEPTION_HALT_VALIDATION;
26606       END IF;
26607 
26608     ELSE
26609       l_return_status := get_chrv_rec(p_to_chr_id,g_chrv_rec);
26610       l_to_chr_id := p_to_chr_id;
26611     END IF;
26612 
26613     x_to_chr_id := l_to_chr_id;
26614 
26615 IF (l_debug = 'Y') THEN
26616    OKC_DEBUG.log('300 : After copy_contract_header  ');
26617    OKC_DEBUG.log('300 : x_to_chr_id : '||x_to_chr_id);
26618    OKC_DEBUG.log('300 : x_return_status : '||l_return_status);
26619 END IF;
26620 -------------------------------------End of Copy Contract Header--------------------
26621 
26622   IF l_components_tbl.COUNT >0 THEN
26623 
26624 -------------------------------------Start of Copy Events--------------------------
26625 --Header level condition copy no longer supported
26626 -------------------------------End of Copy Events---------------------------------
26627 
26628 -------------------------------Start of Copy Party Roles-------------------------
26629     i := l_components_tbl.FIRST;
26630     LOOP
26631         -- IF l_components_tbl(i).component_type = 'Parties' THEN
26632         -- skekkar bug 2802203 ( base bug 2794662 )
26633         IF l_components_tbl(i).component_type = 'PARTIES' THEN
26634           l_old_return_status := l_return_status;
26635           copy_party_roles (
26636                p_api_version    => p_api_version,
26637                p_init_msg_list  => p_init_msg_list,
26638                x_return_status  => l_return_status,
26639                x_msg_count      => x_msg_count,
26640                x_msg_data       => x_msg_data,
26641                p_cpl_id         => l_components_tbl(i).id,
26642                p_cle_id         => NULL,
26643                p_chr_id         => l_to_chr_id,
26644                p_rle_code       => l_components_tbl(i).attribute1,
26645                x_cpl_id         => l_cpl_id);
26646 
26647           IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26648           --IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26649               x_return_status := l_return_status;
26650               RAISE G_EXCEPTION_HALT_VALIDATION;
26651           --  ELSE
26652           --    IF l_old_return_status <> OKC_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26653           --      x_return_status := l_return_status;
26654           --    END IF;
26655           --  END IF;
26656           END IF;
26657 
26658         END IF;
26659         EXIT WHEN i = l_components_tbl.LAST;
26660         i := l_components_tbl.NEXT(i);
26661     END LOOP;
26662 
26663 -------------------------------End of Copy Party Roles---------------------------
26664 -------------------------------Start of Copy Doc----------------------------------
26665     --
26666     -- new 11510 code
26667     i := l_components_tbl.FIRST;
26668     l_old_return_status := l_return_status;
26669     LOOP
26670 	IF l_components_tbl(i).component_type = 'ARTICLES' THEN
26671 -- temporary: copy all document articles after one article component to copy found
26672 
26673     l_keep_version := 'Y'; -- keep version as was doing before
26674 
26675      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
26676         p_api_version   => p_api_version,
26677         x_return_status => l_return_status,
26678         x_msg_data      => x_msg_data,
26679         x_msg_count     => x_msg_count,
26680         p_chr_id        => p_from_chr_id,
26681         x_doc_type      => l_source_doc_type,
26682         x_doc_id        => l_source_doc_id
26683     );
26684 
26685         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26686         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26687             x_return_status := l_return_status;
26688             RAISE G_EXCEPTION_HALT_VALIDATION;
26689         --  ELSE
26690         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26691         --      x_return_status := l_return_status;
26692         --    END IF;
26693         --  END IF;
26694         END IF;
26695      OKC_TERMS_UTIL_GRP.Get_Contract_Document_Type_ID(
26696         p_api_version   => p_api_version,
26697         x_return_status => l_return_status,
26698         x_msg_data      => x_msg_data,
26699         x_msg_count     => x_msg_count,
26700         p_chr_id        => x_to_chr_id,
26701         x_doc_type      => l_target_doc_type,
26702         x_doc_id        => l_target_doc_id
26703     );
26704 
26705         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26706         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26707             x_return_status := l_return_status;
26708             RAISE G_EXCEPTION_HALT_VALIDATION;
26709         --  ELSE
26710         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26711         --      x_return_status := l_return_status;
26712         --    END IF;
26713         --  END IF;
26714         END IF;
26715     OPEN c_art_eff_date(l_source_doc_type, l_source_doc_id);
26716     FETCH c_art_eff_date INTO l_eff_date;
26717     CLOSE c_art_eff_date;
26718 
26719 
26720     OKC_TERMS_COPY_GRP.copy_doc(
26721         p_api_version	     => p_api_version,
26722         x_return_status	     => l_return_status,
26723         x_msg_count    	     => x_msg_count,
26724         x_msg_data     	     => x_msg_data,
26725         p_source_doc_type    => l_source_doc_type,
26726         p_source_doc_id      => l_source_doc_id,
26727         p_target_doc_type    => l_target_doc_type,
26728         p_target_doc_id      => l_target_doc_id,
26729         p_keep_version       => l_keep_version,
26730         p_article_effective_date => Nvl(l_eff_date,Sysdate),
26731         p_document_number    => p_contract_number,
26732         p_allow_duplicate_terms=>'Y'
26733     );
26734 
26735         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26736         --  IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
26737             x_return_status := l_return_status;
26738             RAISE G_EXCEPTION_HALT_VALIDATION;
26739         --  ELSE
26740         --    IF l_old_return_status <> FND_API.G_RET_STS_ERROR THEN -- do not overwrite error with warning.
26741         --      x_return_status := l_return_status;
26742         --    END IF;
26743         --  END IF;
26744         END IF;
26745 
26746        EXIT; -- exit after one article component to copy found
26747       ELSE
26748        EXIT WHEN i = l_components_tbl.LAST;
26749   	   i := l_components_tbl.NEXT(i);
26750 	   END IF;
26751     END LOOP;
26752 -- end of new 11510 code
26753 
26754   END IF; -- End of Check for l_components_tbl.COUNT > 0
26755 
26756 ----------------------------------End of Copy Doc----------------------------------
26757 
26758 -------------------------------Start of Create Vendor if missing-----------------
26759    Begin
26760        create_vendor_if_missing(P_From_Chr_ID => P_From_Chr_ID
26761                                ,P_To_Chr_ID => l_to_chr_id
26762                                ,p_api_version => p_api_version
26763                                ,p_init_msg_list => p_init_msg_list
26764                                ,x_msg_count => x_msg_count
26765                                ,x_msg_data => x_msg_data
26766                                ,x_return_status => l_return_status);
26767 
26768        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26769               x_return_status := l_return_status;
26770               RAISE G_EXCEPTION_HALT_VALIDATION;
26771        END IF;
26772    End;
26773 
26774 -------------------------------End of Create Vendor if missing-------------------
26775 
26776 -------------Copy of OKS Hdr Attributes and its components-----------------------
26777 ---This should happen only if new header is being created
26778  IF (l_Target_Contract_New_YN = 'Y') then
26779 
26780  --===================-Start of Copy OKS Header attributes ========================================
26781   Begin
26782       /*--Call to copy source contract record in OKS_K_HEADERS_B */
26783           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26784            IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26785                  FND_LOG.string(FND_LOG.level_statement
26786                           ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
26787                           ,'Before call to oks_setup_util_pub.copy_hdr_attr'
26788 			 ||' P_From_Chr_ID = '||p_from_chr_id
26789 			 ||',P_To_Chr_ID = '||l_to_chr_id
26790                           );
26791            END IF;
26792           END IF;
26793 
26794        OKS_SETUP_UTIL_PUB.copy_hdr_attr
26795                                (p_chr_id        => p_from_chr_id --Source Contract Header ID
26796                                ,p_new_chr_id    => l_to_chr_id --Target Contract Header ID
26797                                ,p_duration_match => NULL
26798 			       ,p_renew_ref_YN => 'N'
26799                                ,x_return_status => l_return_status);
26800        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26801         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26802          FND_LOG.string(FND_LOG.level_statement
26803                         ,l_module_name||'.oks_setup_util_pub.copy_hdr_attr'
26804                         ,'After call to oks_setup_util_pub.copy_hdr_attr: x_return_status:'||l_return_status
26805                          ||' '||SQLERRM
26806                          );
26807         END IF;
26808        END IF;
26809 
26810        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26811               x_return_status := l_return_status;
26812               RAISE G_EXCEPTION_HALT_VALIDATION;
26813        END IF;
26814   End;
26815  --===================End of Copy OKS Header attributes===========================================
26816 
26817 
26818  --==================Generate new transaction extension for Header================================
26819 
26820   Begin
26821    --Get Header Trxn ID and Bill_To_Site_Use_ID--
26822 
26823    OPEN GetHdrTrxnInfo;
26824    FETCH GetHdrTrxnInfo into l_Hdr_Old_Trxn_Extn_ID,l_Hdr_Bill_To_Site_Use_ID;
26825    CLOSE GetHdrTrxnInfo;
26826 
26827     If (l_Hdr_Old_Trxn_Extn_ID IS NOT NULL AND l_Hdr_Bill_To_Site_Use_ID IS NOT NULL) then
26828 
26829        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26830         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26831          FND_LOG.string(FND_LOG.level_statement
26832                         ,l_module_name||'.Create_Transaction_Extension'
26833                         ,'Before call to Create_Transaction_Extension for Header in COPY_COMPONENTS'
26834                         ||'Bill to site use id='||l_Hdr_Bill_To_Site_Use_ID
26835                         ||'Old Trxn ID='||l_Hdr_Old_Trxn_Extn_ID
26836                          );
26837         END IF;
26838        END IF;
26839 
26840         OKS_UTIL_PUB.create_transaction_extension(P_Api_Version => p_api_version
26841                                       ,P_Init_Msg_List => p_init_msg_list
26842                                       ,P_Header_ID => l_to_chr_id
26843                                       ,P_Line_ID => NULL
26844                                       ,P_Source_Trx_Ext_ID => l_Hdr_Old_Trxn_Extn_ID
26845 				      ,P_Cust_Acct_ID => NULL
26846                                       ,P_Bill_To_Site_Use_ID => l_Hdr_Bill_To_Site_Use_ID
26847                                       ,x_entity_id => l_Hdr_New_Trxn_Extn_ID
26848                                       ,x_msg_data => x_msg_data
26849                                       ,x_msg_count => x_msg_count
26850                                       ,x_return_status => l_return_status) ;
26851 
26852 
26853        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26854         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26855          FND_LOG.string(FND_LOG.level_statement
26856                         ,l_module_name||'.Create_Transaction_Extension'
26857                         ,'After call to Create_Transaction_Extension for Header: x_return_status :'||l_return_status
26858                         ||'New Trxn ID='||l_Hdr_New_Trxn_Extn_ID
26859                          );
26860         END IF;
26861        END IF;
26862 
26863        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26864         IF (l_return_status = FND_API.G_RET_STS_ERROR OR l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
26865               x_return_status := l_return_status;
26866               RAISE G_EXCEPTION_HALT_VALIDATION;
26867         END IF;
26868        END IF;
26869 
26870        UPDATE OKS_K_HEADERS_B
26871        SET TRXN_EXTENSION_ID = l_Hdr_New_Trxn_Extn_ID
26872        WHERE CHR_ID = l_to_chr_id;
26873 
26874         If SQL%NOTFOUND then
26875           IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26876            FND_LOG.string(FND_LOG.level_statement
26877                         ,l_module_name||'.Create_Transaction_Extension'
26878                         ,'Error in Update OKS_K_HEADERS_B, row not found for update'
26879                          );
26880           END IF;
26881          l_return_status := FND_API.G_RET_STS_ERROR;
26882          RAISE G_EXCEPTION_HALT_VALIDATION;
26883         End If;
26884 
26885 
26886    End If;
26887   End;
26888 
26889 --==================End of Generate new transaction extension for Header=========================
26890 
26891 
26892  --===================Start of Copy OKS Header Notes=============================================
26893   Begin
26894      /*--Call to copy Header notes -----*/
26895         IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26896          IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26897           FND_LOG.string(FND_LOG.level_statement
26898                              ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
26899                                 ,'Before call to oks_coverages_pvt.copy_k_hdr_notes'
26900                                 );
26901          END IF;
26902         END IF;
26903 
26904      OKS_COVERAGES_PVT.COPY_K_HDR_NOTES(
26905              p_api_version           => p_api_version,
26906                 p_init_msg_list         => p_init_msg_list,
26907                 p_chr_id                => l_to_chr_id, --Target Contract Header ID
26908                 x_return_status         => l_return_status,
26909                 x_msg_count             => x_msg_count,
26910                 x_msg_data              => x_msg_data);
26911 
26912        IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26913         IF (FND_LOG.test(FND_LOG.level_statement, l_module_name)) THEN
26914          FND_LOG.string(FND_LOG.level_statement
26915                         ,l_module_name||'.oks_coverages_pvt.copy_k_hdr_notes'
26916                         ,'After call to oks_coverages_pvt.copy_k_hdr_notes: x_return_status:'||l_return_status
26917                          ||' '||SQLERRM
26918                          );
26919         END IF;
26920        END IF;
26921 
26922        IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26923         IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR OR
26924             l_return_status = FND_API.G_RET_STS_ERROR) THEN
26925          x_return_status := l_return_status;
26926          RAISE G_EXCEPTION_HALT_VALIDATION;
26927         ELSE
26928              x_return_status := l_return_status; -- donot raise exception if l_return_status = 'W'
26929         END IF;
26930        END IF;
26931   End;
26932 --=====================End of Copy OKS Header Notes=============================================
26933 
26934  End If; -- End of check for l_Target_Contract_New_YN = 'Y'
26935 
26936 
26937 ------------End of Copy of OKS Hdr Attributes and its components------------------
26938 
26939  ------------If copying to an existing contract and status of contract is------------------
26940  ------------'Active','Signed', or 'Expired' change status to------------------
26941  ------------'QA_Hold'---------------------------------------------------------------------
26942  Begin
26943   IF (
26944       l_Target_Contract_New_YN <> 'Y' AND
26945       (l_lines_tbl.COUNT > 0 OR l_components_tbl.COUNT > 0)
26946      ) THEN
26947    IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
26948      FND_LOG.string(FND_LOG.level_statement
26949                     ,l_module_name
26950                     ,'Current Target Contract Status : '||g_chrv_rec.sts_code
26951                     );
26952    END IF;
26953    --npalepu modified below on 01-AUG-2006 for bug # 5402978. Added Hold status also.
26954    /* IF SeedStatus(p_current_status => g_chrv_rec.sts_code) in ('ACTIVE','SIGNED','EXPIRED') then */
26955    IF SeedStatus(p_current_status => g_chrv_rec.sts_code) in ('ACTIVE','SIGNED','EXPIRED','HOLD') and g_chrv_rec.sts_code <> 'QA_HOLD' then   ----Added QA_Hold condition for bug 13086910
26956     --npalepu added on 01-AUG-2006 for bug # 5402978
26957        BEGIN
26958                 okc_version_pub.save_version
26959                         (p_chr_id         => P_To_Chr_ID,
26960                          p_api_version    => 1.0,
26961                          p_init_msg_list  => 'T',
26962                          x_return_status  => l_return_status,
26963                          x_msg_count      => l_msg_count,
26964                          x_msg_data       => l_msg_data,
26965                          p_commit         => 'F'
26966                         );
26967 
26968                 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26969                         x_return_status := l_return_status;
26970                         RAISE G_EXCEPTION_HALT_VALIDATION;
26971                 End If;
26972 
26973                 oks_contract_hdr_pub.save_version
26974                                (p_api_version   => 1.0,
26975                                 p_init_msg_list => 'T',
26976                                 x_return_status => l_return_status,
26977                                 x_msg_count     => l_msg_count,
26978                                 x_msg_data      => l_msg_data,
26979                                 p_chr_id        => P_To_Chr_ID);
26980 
26981                 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
26982                         x_return_status := l_return_status;
26983                         RAISE G_EXCEPTION_HALT_VALIDATION;
26984                 End If;
26985        END;
26986      --end npalepu
26987 
26988     update okc_k_headers_all_b
26989     set sts_code = 'QA_HOLD'
26990    ,object_version_number = decode(l_Target_Contract_New_YN,'Y',object_version_number,object_version_number+1)
26991     where id = l_to_chr_id;
26992 
26993     --Update Status field in OKC_CONTACTS table.
26994     /*cgopinee Bug fix for 6882512*/
26995     OKC_CTC_PVT.update_contact_stecode(p_chr_id => l_to_chr_id,
26996                                x_return_status=>l_return_status);
26997 
26998     IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
26999           RAISE G_EXCEPTION_HALT_VALIDATION;
27000     END IF;
27001 
27002    End If;
27003 
27004   End If;
27005  End;
27006 -------------------------------------------------------------------------------------------
27007 ------------------------Copy Lines starts here -------------------------
27008  Begin
27009      copy_line_components(
27010       p_api_version   => p_api_version
27011      ,p_init_msg_list => p_init_msg_list
27012      ,x_return_status => l_return_status
27013      ,x_msg_count     => x_msg_count
27014      ,x_msg_data      => x_msg_data
27015      ,P_From_Chr_ID   => P_From_Chr_ID
27016      ,P_To_Chr_ID     => l_to_chr_id
27017      ,P_Target_Contract_New_YN => l_Target_Contract_New_YN
27018      ,P_Lines_Tbl     => l_lines_tbl
27019      ,p_change_status_YN => p_change_status_YN --Added for Update_Service requirement(Bug 4747648)
27020                                                            --If 'Y', status of new line is default status
27021                                                            --If 'N', status from Source Line is retained
27022      ,p_return_new_top_line_ID_YN => p_return_new_top_line_ID_YN --Added for Update_Service requirement(Bug 4747648)
27023 								 --If 'Y', the new line IDs of copied Top Lines need to be
27024 								 --published
27025       ,p_include_cancelled_lines => p_include_cancelled_lines
27026       ,p_include_terminated_lines => p_include_terminated_lines);
27027 
27028         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
27029           x_return_status := l_return_status;
27030           RAISE G_EXCEPTION_HALT_VALIDATION;
27031         End If;
27032 
27033  End;
27034 -----------------------Copy Lines ends here--------------------------
27035 -----------------------Party Cleanup---------------------------------
27036 
27037  Begin
27038      Party_Cleanup(P_To_Chr_ID => l_to_chr_id
27039                   --npalepu added on 5/8/2006 for bug # 5116858
27040                   ,P_From_Chr_ID   => P_From_Chr_ID
27041                   --end npalepu
27042                   ,P_Target_Contract_New_YN => l_Target_Contract_New_YN
27043                   ,x_return_status => l_return_status);
27044 
27045         IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
27046           x_return_status := l_return_status;
27047           RAISE G_EXCEPTION_HALT_VALIDATION;
27048         End If;
27049 
27050  End;
27051 
27052 ---------------------------------------------------------------------
27053 -----------------------Returning New Top Line IDs--------------------
27054 --Added for Update_Service requirement(Bug 4747648)
27055 
27056  IF p_return_new_top_line_ID_YN = 'Y' then
27057    Begin
27058     OPEN GetTopLinesFromTemp;
27059     LOOP
27060     FETCH GetTopLinesFromTemp into
27061      l_New_Line_ID
27062     ,l_Old_Line_ID;
27063        EXIT WHEN GetTopLinesFromTemp%NOTFOUND;
27064        p_published_line_ids_tbl(p_published_line_ids_ctr).OLD_LINE_ID := l_Old_Line_ID;
27065        p_published_line_ids_tbl(p_published_line_ids_ctr).NEW_LINE_ID := l_New_Line_ID;
27066        p_published_line_ids_ctr := p_published_line_ids_ctr + 1;
27067     END LOOP;
27068      /*fix for bug6959607*/
27069      If (GetTopLinesFromTemp%ISOPEN) then
27070        CLOSE GetTopLinesFromTemp;
27071      End If;
27072    End;
27073 
27074    --Purge Global Temporary Table when called from Update Service
27075    --This is to support splitting of line into more than 2 lines
27076    --so that Update of CLE_ID in OKC_K_LINES_B_TEMP doesn't run into
27077    --multiple rows with same orig_system_id1
27078    Begin
27079     /*delete from okc_k_lines_b_temp;*/
27080     PURGE_OKC_K_LINES_B_TEMP;
27081    End;
27082 
27083  END IF;
27084 
27085 --------------------------------------------------------------------
27086   IF (l_debug = 'Y') THEN
27087      OKC_DEBUG.log('10000 : Exiting Procedure OKS_COPY_CONTRACT_PVT.copy_components ', 2);
27088      OKC_DEBUG.ReSet_Indentation;
27089   END IF;
27090 
27091   IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
27092    FND_LOG.string(FND_LOG.level_procedure
27093      ,l_module_name||'.END'
27094      ,'Exiting copy_components '
27095     ||', x_return_status='||x_return_status
27096     ||', x_to_chr_id = '||x_to_chr_id
27097       );
27098   END IF;
27099 
27100 
27101   EXCEPTION
27102     WHEN G_EXCEPTION_HALT_VALIDATION THEN
27103       ROLLBACK to copy_components;
27104 
27105     WHEN OTHERS THEN
27106       -- store SQL error message on message stack for caller
27107       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27108       ROLLBACK to copy_components;
27109      FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name, substr(SQLERRM,1,240));
27110 
27111   END copy_components;
27112 
27113 --===============================End Copy_Components=====================================
27114 
27115 
27116 END OKS_COPY_CONTRACT_PVT;