DBA Data[Home] [Help]

PACKAGE BODY: APPS.IBE_JPCV_MIGRATION_PVT

Source


1 PACKAGE BODY ibe_jpcv_migration_pvt AS
2 /* $Header: IBEVJMGB.pls 120.1 2005/08/09 22:39:09 appldev ship $ */
3 
4 G_PKG_NAME  CONSTANT VARCHAR2(30):= 'IBE_JPCV_MIGRATION_PVT';
5 G_FILE_NAME CONSTANT VARCHAR2(12):= 'IBEVJMGB.pls';
6 
7 TYPE GENERIC_CSR IS REF CURSOR;
8 
9 PROCEDURE Migrate_Sequence
10   (
11    p_old_seq IN VARCHAR2,
12    p_new_seq IN VARCHAR2
13   )
14 IS
15   cv1 GENERIC_CSR;
16   l_old_num NUMBER;
17   l_new_num NUMBER;
18 
19   l_seq_sql1 VARCHAR2(200);
20   l_seq_sql2 VARCHAR2(200);
21 BEGIN
22   IF (p_old_seq = 'jtf_dsp_sections_b_s1')
23     AND (p_new_seq = 'ibe_dsp_sections_b_s1') THEN
24     l_seq_sql1 := 'SELECT jtf_dsp_sections_b_s1.nextval FROM dual';
25     l_seq_sql2 := 'SELECT ibe_dsp_sections_b_s1.nextval FROM dual';
26   ELSIF (p_old_seq = 'jtf_dsp_section_items_s1')
27     AND (p_new_seq = 'ibe_dsp_section_items_s1') THEN
28     l_seq_sql1 := 'SELECT jtf_dsp_section_items_s1.nextval FROM dual';
29     l_seq_sql2 := 'SELECT ibe_dsp_section_items_s1.nextval FROM dual';
30   ELSIF (p_old_seq = 'jtf_dsp_msite_sct_sects_s1')
31     AND (p_new_seq = 'ibe_dsp_msite_sct_sects_s1') THEN
32     l_seq_sql1 := 'SELECT jtf_dsp_msite_sct_sects_s1.nextval FROM dual';
33     l_seq_sql2 := 'SELECT ibe_dsp_msite_sct_sects_s1.nextval FROM dual';
34   ELSIF (p_old_seq = 'jtf_dsp_msite_sct_items_s1')
35     AND (p_new_seq = 'ibe_dsp_msite_sct_items_s1') THEN
36     l_seq_sql1 := 'SELECT jtf_dsp_msite_sct_items_s1.nextval FROM dual';
37     l_seq_sql2 := 'SELECT ibe_dsp_msite_sct_items_s1.nextval FROM dual';
38   ELSIF (p_old_seq = 'jtf_msites_b_s1')
39     AND (p_new_seq = 'ibe_msites_b_s1') THEN
40     l_seq_sql1 := 'SELECT jtf_msites_b_s1.nextval FROM dual';
41     l_seq_sql2 := 'SELECT ibe_msites_b_s1.nextval FROM dual';
42   ELSIF (p_old_seq = 'jtf_msite_resps_b_s1')
43     AND (p_new_seq = 'ibe_msite_resps_b_s1') THEN
44     l_seq_sql1 := 'SELECT jtf_msite_resps_b_s1.nextval FROM dual';
45     l_seq_sql2 := 'SELECT ibe_msite_resps_b_s1.nextval FROM dual';
46   ELSIF (p_old_seq = 'jtf_msite_prty_accss_s1')
47     AND (p_new_seq = 'ibe_msite_prty_accss_s1') THEN
48     l_seq_sql1 := 'SELECT jtf_msite_prty_accss_s1.nextval FROM dual';
49     l_seq_sql2 := 'SELECT ibe_msite_prty_accss_s1.nextval FROM dual';
50   ELSIF (p_old_seq = 'jtf_msite_currencies_s1')
51     AND (p_new_seq = 'ibe_msite_currencies_s1') THEN
52     l_seq_sql1 := 'SELECT jtf_msite_currencies_s1.nextval FROM dual';
53     l_seq_sql2 := 'SELECT ibe_msite_currencies_s1.nextval FROM dual';
54   ELSIF (p_old_seq = 'jtf_msite_languages_s1')
55     AND (p_new_seq = 'ibe_msite_languages_s1') THEN
56     l_seq_sql1 := 'SELECT jtf_msite_languages_s1.nextval FROM dual';
57     l_seq_sql2 := 'SELECT ibe_msite_languages_s1.nextval FROM dual';
58   ELSIF (p_old_seq = 'jtf_msite_orgs_s1')
59     AND (p_new_seq = 'ibe_msite_orgs_s1') THEN
60     l_seq_sql1 := 'SELECT jtf_msite_orgs_s1.nextval FROM dual';
61     l_seq_sql2 := 'SELECT ibe_msite_orgs_s1.nextval FROM dual';
62   ELSIF (p_old_seq = 'jtf_dsp_context_b_s1')
63     AND (p_new_seq = 'ibe_dsp_context_b_s1') THEN
64     l_seq_sql1 := 'SELECT jtf_dsp_context_b_s1.nextval FROM dual';
65     l_seq_sql2 := 'SELECT ibe_dsp_context_b_s1.nextval FROM dual';
66   ELSIF (p_old_seq = 'jtf_dsp_obj_lgl_ctnt_s1')
67     AND (p_new_seq = 'ibe_dsp_obj_lgl_ctnt_s1') THEN
68     l_seq_sql1 := 'SELECT jtf_dsp_obj_lgl_ctnt_s1.nextval FROM dual';
69     l_seq_sql2 := 'SELECT ibe_dsp_obj_lgl_ctnt_s1.nextval FROM dual';
70   ELSIF (p_old_seq = 'jtf_dsp_lgl_phys_map_s1')
71     AND (p_new_seq = 'ibe_dsp_lgl_phys_map_s1') THEN
72     l_seq_sql1 := 'SELECT jtf_dsp_lgl_phys_map_s1.nextval FROM dual';
73     l_seq_sql2 := 'SELECT ibe_dsp_lgl_phys_map_s1.nextval FROM dual';
74   ELSIF (p_old_seq = 'jtf_dsp_tpl_ctg_s1')
75     AND (p_new_seq = 'ibe_dsp_tpl_ctg_s1') THEN
76     l_seq_sql1 := 'SELECT jtf_dsp_tpl_ctg_s1.nextval FROM dual';
77     l_seq_sql2 := 'SELECT ibe_dsp_tpl_ctg_s1.nextval FROM dual';
78   END IF;
79   --
80   -- Do first nextval for the old sequence
81   --
82   OPEN cv1 FOR l_seq_sql1;
83   FETCH cv1 INTO l_old_num;
84   CLOSE cv1;
85 
86   --
87   -- Do first nextval for the new sequence
88   --
89   OPEN cv1 FOR l_seq_sql2;
90   FETCH cv1 INTO l_new_num;
91   CLOSE cv1;
92 
93   WHILE (l_new_num <= l_old_num) LOOP
94 
95     -- increment the value of new sequence number
96     OPEN cv1 FOR l_seq_sql2;
97     FETCH cv1 INTO l_new_num;
98     CLOSE cv1;
99 
100   END LOOP;
101 
102 END Migrate_Sequence;
103 
104 --
105 -- Return 0 if the table specified by p_table_name has no rows in it
106 -- Return 1 if the table specified by p_table_name has at least has 1 row in it
107 --
108 PROCEDURE Does_Row_Exists
109   (
110    p_table_name       IN VARCHAR2,
111    p_primary_col_name IN VARCHAR2,
112    x_count            OUT NOCOPY NUMBER
113   )
114 IS
115   cv1 GENERIC_CSR;
116 BEGIN
117 
118   OPEN cv1 FOR 'SELECT 1 FROM ' || p_table_name ||
119     ' WHERE ' || p_primary_col_name || ' >= 10000 AND rownum = 1';
120   FETCH cv1 INTO x_count;
121   IF (cv1%NOTFOUND) THEN
122     x_count := 0;
123   ELSE
124     x_count := 1;
125   END IF;
126   CLOSE cv1;
127 
128 END Does_Row_Exists;
129 
130 PROCEDURE Log_Table_Migration_Start
131   (
132    p_module_name          IN VARCHAR2,
133    p_src_table_name       IN VARCHAR2,
134    p_dst_table_name       IN VARCHAR2
135   )
136 IS
137 BEGIN
138  IF ( FND_LOG.LEVEL_EVENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN
139   FND_MESSAGE.Set_Name('IBE', 'IBE_MIG_TABLE_INSERT_SELECT_ST');
140   FND_MESSAGE.Set_Token('DST_TABLE_NAME', p_dst_table_name);
141   FND_MESSAGE.Set_Token('SRC_TABLE_NAME', p_src_table_name);
142   FND_LOG.Message(FND_LOG.LEVEL_EVENT, p_module_name, TRUE);
143  END IF;
144 END Log_Table_Migration_Start;
145 
146 PROCEDURE Log_Table_Migration_Finish
147   (
148    p_module_name          IN VARCHAR2,
149    p_src_table_name       IN VARCHAR2,
150    p_dst_table_name       IN VARCHAR2
151   )
152 IS
153 BEGIN
154  IF ( FND_LOG.LEVEL_EVENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN
155   FND_MESSAGE.Set_Name('IBE', 'IBE_MIG_TABLE_INSERT_SELECT_FN');
156   FND_MESSAGE.Set_Token('DST_TABLE_NAME', p_dst_table_name);
157   FND_MESSAGE.Set_Token('SRC_TABLE_NAME', p_src_table_name);
158   FND_LOG.Message(FND_LOG.LEVEL_EVENT, p_module_name, TRUE);
159  END IF;
160 END Log_Table_Migration_Finish;
161 
162 END ibe_jpcv_migration_pvt;