DBA Data[Home] [Help]

APPS.FII_UDD2_MAINTAIN_PKG dependencies on FII_UDD2_HIER_GT

Line 480: -- to different parents within FII_UDD2_HIER_GT (the TMP hierarchy table)

476:
477:
478: -- **************************************************************************
479: -- This procedure will check for child value multiple assignments
480: -- to different parents within FII_UDD2_HIER_GT (the TMP hierarchy table)
481:
482: PROCEDURE Detect_Diamond_Shape IS
483:
484: --The first cursor is to find all flex_value_id which has multiple parents;

Line 489: FROM FII_UDD2_HIER_GT

485: --we look at records such as (P1,A,A) and (P2,A,A)
486: Cursor Dup_Assg_Cur IS
487: SELECT count(parent_value_id) parents,
488: child_value_id flex_value_id
489: FROM FII_UDD2_HIER_GT
490: WHERE next_level_value_id = child_value_id
491: AND parent_level = next_level - 1
492: GROUP BY child_value_id
493: HAVING count(parent_value_id) > 1;

Line 502: FROM FII_UDD2_HIER_GT

498: SELECT parent_value_id,
499: parent_flex_value_set_id,
500: child_value_id,
501: child_flex_value_set_id
502: FROM FII_UDD2_HIER_GT
503: WHERE child_value_id = p_child_value_id
504: AND next_level_value_id = child_value_id
505: AND parent_level = next_level - 1;
506:

Line 638: INSERT INTO fii_UDD2_hier_gt (

634: FOR direct_children_rec IN direct_children_csr(p_vset_id, p_root_node)
635: LOOP
636:
637: /* Inserting record with all parents */
638: INSERT INTO fii_UDD2_hier_gt (
639: parent_level,
640: parent_value_id,
641: child_value_id,
642: next_level,

Line 703: FROM fii_UDD2_hier_gt

699: CURSOR MAIN_CSR is
700: SELECT parent_level, parent_value_id, next_level, next_level_value_id,
701: child_level, child_value_id, child_flex_value_set_id,
702: parent_flex_value_set_id
703: FROM fii_UDD2_hier_gt
704: ORDER BY parent_level, child_level;
705:
706: l_flex_value VARCHAR2(150);
707: p_parent_id NUMBER(15);

Line 716: g_phase := 'Truncate table FII_UDD2_HIER_GT';

712: FII_MESSAGE.Func_Ent(func_name => 'FII_UDD2_MAINTAIN_PKG.'||
713: 'Flatten_UD2_Dim_Hier');
714: END IF;
715:
716: g_phase := 'Truncate table FII_UDD2_HIER_GT';
717: FII_UTIL.truncate_table ('FII_UDD2_HIER_GT', 'FII', g_retcode);
718:
719: -----------------------------------------------------------------
720:

Line 717: FII_UTIL.truncate_table ('FII_UDD2_HIER_GT', 'FII', g_retcode);

713: 'Flatten_UD2_Dim_Hier');
714: END IF;
715:
716: g_phase := 'Truncate table FII_UDD2_HIER_GT';
717: FII_UTIL.truncate_table ('FII_UDD2_HIER_GT', 'FII', g_retcode);
718:
719: -----------------------------------------------------------------
720:
721: UDIM2_parent_node := p_root_node;

Line 741: insert into fii_UDD2_hier_gt (

737:
738: INSERT_IMM_CHILD_NODES (p_vset_id, p_root_node);
739:
740: g_phase := 'Insert all the self records';
741: insert into fii_UDD2_hier_gt (
742: parent_level,
743: parent_value_id,
744: next_level,
745: next_level_value_id,

Line 763: from (select distinct child_value_id,child_level,child_flex_value_set_id from fii_udd2_hier_gt);

759: child_flex_value_set_id,
760: child_flex_value_set_id,
761: 'N',
762: 'N'
763: from (select distinct child_value_id,child_level,child_flex_value_set_id from fii_udd2_hier_gt);
764:
765: IF (FIIDIM_Debug) THEN
766: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
767: END IF;

Line 766: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');

762: 'N'
763: from (select distinct child_value_id,child_level,child_flex_value_set_id from fii_udd2_hier_gt);
764:
765: IF (FIIDIM_Debug) THEN
766: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
767: END IF;
768:
769: g_phase := 'Insert self record for the top node';
770: INSERT INTO fii_UDD2_hier_gt

Line 770: INSERT INTO fii_UDD2_hier_gt

766: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
767: END IF;
768:
769: g_phase := 'Insert self record for the top node';
770: INSERT INTO fii_UDD2_hier_gt
771: (parent_level,
772: parent_value_id,
773: next_level,
774: next_level_value_id,

Line 794: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');

790: 'N',
791: 'N');
792:
793: IF (FIIDIM_Debug) THEN
794: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
795: END IF;
796:
797: --Insert the UNASSIGNED to the hierarchy table.
798: --Use G_TOP_NODE_ID as the parent

Line 802: INSERT INTO fii_UDD2_hier_gt

798: --Use G_TOP_NODE_ID as the parent
799: g_phase := 'Insert the UNASSIGNED to the hierarchy table';
800:
801: -- First one is (G_TOP_NODE_ID, UNASSIGNED, UNASSIGNED)
802: INSERT INTO fii_UDD2_hier_gt
803: (parent_level,
804: parent_value_id,
805: next_level,
806: next_level_value_id,

Line 826: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');

822: 'N',
823: 'N');
824:
825: IF (FIIDIM_Debug) THEN
826: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
827: END IF;
828:
829: -- Another one is (UNASSIGNED, UNASSIGNED, UNASSIGNED)
830: INSERT INTO fii_UDD2_hier_gt

Line 830: INSERT INTO fii_UDD2_hier_gt

826: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
827: END IF;
828:
829: -- Another one is (UNASSIGNED, UNASSIGNED, UNASSIGNED)
830: INSERT INTO fii_UDD2_hier_gt
831: (parent_level,
832: parent_value_id,
833: next_level,
834: next_level_value_id,

Line 854: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');

850: 'N',
851: 'N');
852:
853: IF (FIIDIM_Debug) THEN
854: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
855: END IF;
856:
857: -- Insert a dummy super top node (-999) to the hierarchy table
858: -- (the dummy value set id is -998)

Line 861: INSERT INTO fii_UDD2_hier_gt

857: -- Insert a dummy super top node (-999) to the hierarchy table
858: -- (the dummy value set id is -998)
859: g_phase := 'Insert a dummy top node (-999) to the hierarchy table';
860:
861: INSERT INTO fii_UDD2_hier_gt
862: (parent_level,
863: parent_value_id,
864: next_level,
865: next_level_value_id,

Line 883: FROM fii_UDD2_hier_gt

879: child_flex_value_set_id,
880: -998,
881: 'N',
882: 'N'
883: FROM fii_UDD2_hier_gt
884: WHERE child_value_id = parent_value_id;
885:
886: IF (FIIDIM_Debug) THEN
887: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');

Line 887: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');

883: FROM fii_UDD2_hier_gt
884: WHERE child_value_id = parent_value_id;
885:
886: IF (FIIDIM_Debug) THEN
887: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIER_GT');
888: END IF;
889:
890: --Call FND_STATS to collect statistics after populating the table
891: g_phase := 'gather_table_stats for FII_FIN_ITEM_HIER_GT';

Line 904: -- We use (just created) TMP table FII_UDD2_HIER_GT for this purpose

900: --If so, we will report the problem, and error out the program
901:
902: -- The following block checks for child value multiple assignments
903: -- to different parents within the value sets
904: -- We use (just created) TMP table FII_UDD2_HIER_GT for this purpose
905: g_phase := 'Call Detect_Diamond_Shape';
906:
907: Detect_Diamond_Shape;
908:

Line 1019: -- FII_UDD2_HIER_GT (full version) the LVS records

1015: END Get_UD2_Mapping_GT;
1016:
1017: -- **************************************************************************
1018: -- Populate the pruned User Defined Dimension2 hierarchy FII_UDD2_HIERARCHIES by deleting from
1019: -- FII_UDD2_HIER_GT (full version) the LVS records
1020:
1021: PROCEDURE Get_Pruned_UD2_GT IS
1022:
1023: Begin

Line 1030: --Delete from FII_UDD2_HIER_GT for child value set not equal to

1026: FII_MESSAGE.Func_Ent(func_name => 'FII_UDD2_MAINTAIN_PKG.'||
1027: 'Get_Pruned_UD2_GT');
1028: END IF;
1029:
1030: --Delete from FII_UDD2_HIER_GT for child value set not equal to
1031: --the master value set and not equal to the UNASSIGNED value set.
1032: g_phase := 'Delete FII_UDD2_HIER_GT #1';
1033:
1034: Delete from FII_UDD2_HIER_GT

Line 1032: g_phase := 'Delete FII_UDD2_HIER_GT #1';

1028: END IF;
1029:
1030: --Delete from FII_UDD2_HIER_GT for child value set not equal to
1031: --the master value set and not equal to the UNASSIGNED value set.
1032: g_phase := 'Delete FII_UDD2_HIER_GT #1';
1033:
1034: Delete from FII_UDD2_HIER_GT
1035: Where child_flex_value_set_id <> G_MASTER_VALUE_SET_ID
1036: And child_flex_value_set_id <> G_FII_INT_VALUE_SET_ID;

Line 1034: Delete from FII_UDD2_HIER_GT

1030: --Delete from FII_UDD2_HIER_GT for child value set not equal to
1031: --the master value set and not equal to the UNASSIGNED value set.
1032: g_phase := 'Delete FII_UDD2_HIER_GT #1';
1033:
1034: Delete from FII_UDD2_HIER_GT
1035: Where child_flex_value_set_id <> G_MASTER_VALUE_SET_ID
1036: And child_flex_value_set_id <> G_FII_INT_VALUE_SET_ID;
1037:
1038: IF (FIIDIM_Debug) THEN

Line 1039: FII_UTIL.Write_Log('Deleted ' || SQL%ROWCOUNT || ' rows form FII_UDD2_HIER_GT');

1035: Where child_flex_value_set_id <> G_MASTER_VALUE_SET_ID
1036: And child_flex_value_set_id <> G_FII_INT_VALUE_SET_ID;
1037:
1038: IF (FIIDIM_Debug) THEN
1039: FII_UTIL.Write_Log('Deleted ' || SQL%ROWCOUNT || ' rows form FII_UDD2_HIER_GT');
1040: END IF;
1041:
1042: --Finally, update the columns next_level_is_leaf_flag, is_leaf_flag again
1043: --for the latest FII_UDD2_HIER_GT

Line 1043: --for the latest FII_UDD2_HIER_GT

1039: FII_UTIL.Write_Log('Deleted ' || SQL%ROWCOUNT || ' rows form FII_UDD2_HIER_GT');
1040: END IF;
1041:
1042: --Finally, update the columns next_level_is_leaf_flag, is_leaf_flag again
1043: --for the latest FII_UDD2_HIER_GT
1044: g_phase := 'Update next_level_is_leaf_flag, is_leaf_flag';
1045:
1046: --Update the column next_level_is_leaf_flag
1047: --We look at those records (P,A,A) in which A is a leaf value

Line 1048: Update fii_UDD2_hier_gt tab1

1044: g_phase := 'Update next_level_is_leaf_flag, is_leaf_flag';
1045:
1046: --Update the column next_level_is_leaf_flag
1047: --We look at those records (P,A,A) in which A is a leaf value
1048: Update fii_UDD2_hier_gt tab1
1049: Set next_level_is_leaf_flag = 'Y'
1050: Where tab1.next_level_value_id = tab1.child_value_id
1051: and tab1.next_level_value_id IN (
1052: select /*+ ordered */ tab3.next_level_value_id

Line 1053: from fii_UDD2_hier_gt tab3,

1049: Set next_level_is_leaf_flag = 'Y'
1050: Where tab1.next_level_value_id = tab1.child_value_id
1051: and tab1.next_level_value_id IN (
1052: select /*+ ordered */ tab3.next_level_value_id
1053: from fii_UDD2_hier_gt tab3,
1054: fii_UDD2_hier_gt tab2
1055: where tab2.parent_value_id = tab3.parent_value_id
1056: and tab3.parent_value_id = tab3.child_value_id
1057: group by tab3.next_level_value_id

Line 1054: fii_UDD2_hier_gt tab2

1050: Where tab1.next_level_value_id = tab1.child_value_id
1051: and tab1.next_level_value_id IN (
1052: select /*+ ordered */ tab3.next_level_value_id
1053: from fii_UDD2_hier_gt tab3,
1054: fii_UDD2_hier_gt tab2
1055: where tab2.parent_value_id = tab3.parent_value_id
1056: and tab3.parent_value_id = tab3.child_value_id
1057: group by tab3.next_level_value_id
1058: having count(*) = 1);

Line 1061: FII_UTIL.Write_Log('Updated ' || SQL%ROWCOUNT || ' rows in FII_UDD2_HIER_GT');

1057: group by tab3.next_level_value_id
1058: having count(*) = 1);
1059:
1060: IF (FIIDIM_Debug) THEN
1061: FII_UTIL.Write_Log('Updated ' || SQL%ROWCOUNT || ' rows in FII_UDD2_HIER_GT');
1062: END IF;
1063:
1064: --Update the column is_leaf_flag
1065: --We look at all records (A,A,A) in which A is a leaf value

Line 1066: Update fii_UDD2_hier_gt

1062: END IF;
1063:
1064: --Update the column is_leaf_flag
1065: --We look at all records (A,A,A) in which A is a leaf value
1066: Update fii_UDD2_hier_gt
1067: Set is_leaf_flag = 'Y'
1068: Where parent_value_id = child_value_id
1069: and next_level_is_leaf_flag = 'Y';
1070:

Line 1072: FII_UTIL.Write_Log('Updated ' || SQL%ROWCOUNT || ' rows in FII_UDD2_HIER_GT');

1068: Where parent_value_id = child_value_id
1069: and next_level_is_leaf_flag = 'Y';
1070:
1071: IF (FIIDIM_Debug) THEN
1072: FII_UTIL.Write_Log('Updated ' || SQL%ROWCOUNT || ' rows in FII_UDD2_HIER_GT');
1073: END IF;
1074:
1075: IF (FIIDIM_Debug) THEN
1076: FII_MESSAGE.Func_Succ(func_name => 'FII_UDD2_MAINTAIN_PKG.'||

Line 1303: FROM FII_UDD2_HIER_GT;

1299: FII_USER_ID,
1300: SYSDATE,
1301: FII_USER_ID,
1302: FII_LOGIN_ID
1303: FROM FII_UDD2_HIER_GT;
1304:
1305: IF (FIIDIM_Debug) THEN
1306: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows in FII_FULL_UDD2_HIERS');
1307: END IF;

Line 1317: --Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table

1313: tabname => 'FII_FULL_UDD2_HIERS');
1314:
1315: --==============================================================--
1316:
1317: --Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table
1318: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';
1319:
1320: Get_Pruned_UD2_GT;
1321:

Line 1318: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';

1314:
1315: --==============================================================--
1316:
1317: --Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table
1318: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';
1319:
1320: Get_Pruned_UD2_GT;
1321:
1322: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table

Line 1322: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table

1318: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';
1319:
1320: Get_Pruned_UD2_GT;
1321:
1322: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table
1323: g_phase := 'Copy TMP hierarchy table to the final pruned dimension table';
1324:
1325: FII_UTIL.truncate_table ('FII_UDD2_HIERARCHIES', 'FII', g_retcode);
1326:

Line 1363: FROM FII_UDD2_HIER_GT;

1359: FII_USER_ID,
1360: SYSDATE,
1361: FII_USER_ID,
1362: FII_LOGIN_ID
1363: FROM FII_UDD2_HIER_GT;
1364:
1365: IF (FIIDIM_Debug) THEN
1366: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_UDD2_HIERARCHIES');
1367: END IF;

Line 1550: FROM FII_UDD2_HIER_GT;

1546: FII_USER_ID,
1547: SYSDATE,
1548: FII_USER_ID,
1549: FII_LOGIN_ID
1550: FROM FII_UDD2_HIER_GT;
1551:
1552: IF (FIIDIM_Debug) THEN
1553: FII_UTIL.Write_Log('Inserted ' || SQL%ROWCOUNT || ' rows into FII_FULL_UDD2_HIERS');
1554: END IF;

Line 1564: --Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table

1560: tabname => 'FII_FULL_UDD2_HIERS');
1561:
1562: --==============================================================--
1563:
1564: --Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table
1565: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';
1566:
1567: Get_Pruned_UD2_GT;
1568:

Line 1565: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';

1561:
1562: --==============================================================--
1563:
1564: --Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table
1565: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';
1566:
1567: Get_Pruned_UD2_GT;
1568:
1569: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table

Line 1569: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table

1565: g_phase := 'Delete/Update FII_UDD2_HIER_GT for pruned hierarchy table';
1566:
1567: Get_Pruned_UD2_GT;
1568:
1569: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table
1570: g_phase := 'Copy TMP hierarchy table to the final pruned dimension table';
1571:
1572: -- Incremental Dimension Maintence
1573: -- All data is now in the temporary table FII_UDD2_HIER_GT,

Line 1573: -- All data is now in the temporary table FII_UDD2_HIER_GT,

1569: --Copy FII_UDD2_HIER_GT to the final (pruned) dimension table
1570: g_phase := 'Copy TMP hierarchy table to the final pruned dimension table';
1571:
1572: -- Incremental Dimension Maintence
1573: -- All data is now in the temporary table FII_UDD2_HIER_GT,
1574: -- we need to maintain the permanent table FII_UDD2_HIERARCHIES
1575: -- by diffing the 2 tables.
1576: -- The maintenance is done by 2 statements, one INSERT and one DELETE.
1577:

Line 1600: FROM FII_UDD2_HIER_GT);

1596: next_level_is_leaf_flag, is_leaf_flag,
1597: child_level, child_value_id,
1598: parent_flex_value_set_id,
1599: child_flex_value_set_id, NVL(next_level_value_sort_order, -92883)
1600: FROM FII_UDD2_HIER_GT);
1601:
1602:
1603: IF (FIIDIM_Debug) THEN
1604: FII_UTIL.Write_Log('Deleted ' || SQL%ROWCOUNT || ' rows from FII_UDD2_HIERARCHIES');

Line 1642: FROM FII_UDD2_HIER_GT

1638: FII_USER_ID,
1639: SYSDATE,
1640: FII_USER_ID,
1641: FII_LOGIN_ID
1642: FROM FII_UDD2_HIER_GT
1643: MINUS
1644: SELECT parent_level,
1645: parent_value_id,
1646: next_level,