6: IS
7: CURSOR item_catalog_group_cursor
8: IS
9: SELECT ITEM_CATALOG_GROUP_ID
10: FROM MTL_ITEM_CATALOG_GROUPS_B;
11:
12: l_status VARCHAR2(1);
13: l_industry VARCHAR2(1);
14: l_schema VARCHAR2(30);
27:
28: --First delete all records in the denorm table.
29: DELETE EGO_ITEM_CAT_DENORM_HIER;
30:
31: --Now for each record in the MTL_ITEM_CATALOG_GROUPS_B table
32: --insert the complete child heirarchy into the denorm table.
33: FOR cat_rec IN item_catalog_group_cursor
34: LOOP --{
35: INSERT INTO EGO_ITEM_CAT_DENORM_HIER(PARENT_CATALOG_GROUP_ID, CHILD_CATALOG_GROUP_ID)
34: LOOP --{
35: INSERT INTO EGO_ITEM_CAT_DENORM_HIER(PARENT_CATALOG_GROUP_ID, CHILD_CATALOG_GROUP_ID)
36: SELECT cat_rec.ITEM_CATALOG_GROUP_ID PARENT_CATALOG_GROUP_ID
37: , IC.ITEM_CATALOG_GROUP_ID CHILD_CATALOG_GROUP_ID
38: FROM MTL_ITEM_CATALOG_GROUPS_B IC
39: CONNECT BY PRIOR ITEM_CATALOG_GROUP_ID = PARENT_CATALOG_GROUP_ID
40: START WITH ITEM_CATALOG_GROUP_ID = cat_rec.ITEM_CATALOG_GROUP_ID;
41:
42: l_num_rows_inserted := l_num_rows_inserted + SQL%ROWCOUNT;
66: --{
67: CURSOR old_parent_hierarchy
68: IS
69: SELECT PARENT_CATALOG_GROUP_ID
70: FROM MTL_ITEM_CATALOG_GROUPS_B IC
71: CONNECT BY PRIOR PARENT_CATALOG_GROUP_ID = ITEM_CATALOG_GROUP_ID
72: START WITH ITEM_CATALOG_GROUP_ID = p_old_parent_id;
73:
74: CURSOR new_parent_hierarchy
73:
74: CURSOR new_parent_hierarchy
75: IS
76: SELECT PARENT_CATALOG_GROUP_ID
77: FROM MTL_ITEM_CATALOG_GROUPS_B IC
78: CONNECT BY PRIOR PARENT_CATALOG_GROUP_ID = ITEM_CATALOG_GROUP_ID
79: START WITH ITEM_CATALOG_GROUP_ID = p_catalog_group_id;
80:
81: l_num_rows_updated NUMBER := 0;
103: INSERT INTO EGO_ITEM_CAT_DENORM_HIER(PARENT_CATALOG_GROUP_ID
104: , CHILD_CATALOG_GROUP_ID)
105: ( SELECT p_catalog_group_id PARENT_CATALOG_GROUP_ID,
106: IC.ITEM_CATALOG_GROUP_ID CHILD_CATALOG_GROUP_ID
107: FROM MTL_ITEM_CATALOG_GROUPS_B IC
108: CONNECT BY PRIOR ITEM_CATALOG_GROUP_ID = PARENT_CATALOG_GROUP_ID
109: START WITH ITEM_CATALOG_GROUP_ID = p_catalog_group_id );
110: l_num_rows_updated := l_num_rows_updated + SQL%ROWCOUNT;
111:
116: DELETE FROM EGO_ITEM_CAT_DENORM_HIER
117: WHERE PARENT_CATALOG_GROUP_ID = p_old_parent_id
118: AND CHILD_CATALOG_GROUP_ID IN
119: ( SELECT IC.ITEM_CATALOG_GROUP_ID
120: FROM MTL_ITEM_CATALOG_GROUPS_B IC
121: CONNECT BY PRIOR ITEM_CATALOG_GROUP_ID = PARENT_CATALOG_GROUP_ID
122: START WITH ITEM_CATALOG_GROUP_ID = p_catalog_group_id );
123: l_num_rows_updated := l_num_rows_updated + SQL%ROWCOUNT;
124:
131: DELETE FROM EGO_ITEM_CAT_DENORM_HIER
132: WHERE PARENT_CATALOG_GROUP_ID = old_parent_rec.PARENT_CATALOG_GROUP_ID
133: AND CHILD_CATALOG_GROUP_ID IN
134: ( SELECT IC.ITEM_CATALOG_GROUP_ID
135: FROM MTL_ITEM_CATALOG_GROUPS_B IC
136: CONNECT BY PRIOR ITEM_CATALOG_GROUP_ID = PARENT_CATALOG_GROUP_ID
137: START WITH ITEM_CATALOG_GROUP_ID = p_catalog_group_id );
138: l_num_rows_updated := l_num_rows_updated + SQL%ROWCOUNT;
139: --}
153: INSERT INTO EGO_ITEM_CAT_DENORM_HIER(PARENT_CATALOG_GROUP_ID
154: , CHILD_CATALOG_GROUP_ID)
155: ( SELECT new_parent_rec.PARENT_CATALOG_GROUP_ID PARENT_CATALOG_GROUP_ID,
156: IC.ITEM_CATALOG_GROUP_ID CHILD_CATALOG_GROUP_ID
157: FROM MTL_ITEM_CATALOG_GROUPS_B IC
158: CONNECT BY PRIOR ITEM_CATALOG_GROUP_ID = PARENT_CATALOG_GROUP_ID
159: START WITH ITEM_CATALOG_GROUP_ID = p_catalog_group_id );
160: l_num_rows_updated := l_num_rows_updated + SQL%ROWCOUNT;
161: --}