55: END;
56:
57: -- Get the list of facts
58:
59: FUNCTION Get_Facts_To_Process(p_process_id IN NUMBER) return BSC_DBGEN_STD_METADATA.tab_clsFact IS
60:
61:
62: l_facts BSC_DBGEN_STD_METADATA.tab_clsFact ;
63: l_fact_tmp BSC_DBGEN_STD_METADATA.tab_clsFact ;
58:
59: FUNCTION Get_Facts_To_Process(p_process_id IN NUMBER) return BSC_DBGEN_STD_METADATA.tab_clsFact IS
60:
61:
62: l_facts BSC_DBGEN_STD_METADATA.tab_clsFact ;
63: l_fact_tmp BSC_DBGEN_STD_METADATA.tab_clsFact ;
64: BEGIN
65:
66: l_facts := BSC_DBGEN_BSC_READER.Get_Facts_To_Process(p_process_id);
59: FUNCTION Get_Facts_To_Process(p_process_id IN NUMBER) return BSC_DBGEN_STD_METADATA.tab_clsFact IS
60:
61:
62: l_facts BSC_DBGEN_STD_METADATA.tab_clsFact ;
63: l_fact_tmp BSC_DBGEN_STD_METADATA.tab_clsFact ;
64: BEGIN
65:
66: l_facts := BSC_DBGEN_BSC_READER.Get_Facts_To_Process(p_process_id);
67: --l_fact_tmp := BSC_DB_AK_READER.Get_Facts_To_Process(p_process_id);
72: return l_facts;
73: END;
74:
75:
76: FUNCTION Get_Measures_For_Fact(p_fact IN VARCHAR2, p_dim_set IN NUMBER, p_include_derived_columns IN BOOLEAN default false) return BSC_DBGEN_STD_METADATA.tab_clsMeasure IS
77: BEGIN
78: --IF (g_metadata_source = BSC_DBGEN_STD_METADATA.BSC) THEN
79: return BSC_DBGEN_BSC_READER.Get_Measures_For_Fact(p_fact, p_dim_set, p_include_derived_columns);
80: --ELSE
74:
75:
76: FUNCTION Get_Measures_For_Fact(p_fact IN VARCHAR2, p_dim_set IN NUMBER, p_include_derived_columns IN BOOLEAN default false) return BSC_DBGEN_STD_METADATA.tab_clsMeasure IS
77: BEGIN
78: --IF (g_metadata_source = BSC_DBGEN_STD_METADATA.BSC) THEN
79: return BSC_DBGEN_BSC_READER.Get_Measures_For_Fact(p_fact, p_dim_set, p_include_derived_columns);
80: --ELSE
81: -- return BSC_DB_AK_READER.Get_Measures_For_Fact(p_fact, p_dim_set);
82: -- END IF;
94: -- PARAMETERS:
95: -- AUTHOR/DATE - MODIFICATIONS (AUTHOR/DATE/DESCRIPTION):
96: --***************************************************************************
97:
98: FUNCTION Get_Periodicities_For_Fact(p_fact IN VARCHAR2) RETURN BSC_DBGEN_STD_METADATA.tab_ClsPeriodicity IS
99:
100:
101: BEGIN
102:
99:
100:
101: BEGIN
102:
103: -- IF (g_metadata_source = BSC_DBGEN_STD_METADATA.BSC) THEN
104: return BSC_DBGEN_BSC_READER.Get_Periodicities_For_Fact(p_fact);
105: --ELSE
106: --return BSC_DB_AK_READER.Get_Periodicities_For_Fact(p_fact);
107: --END IF;
125: --
126: -- AUTHOR/DATE - MODIFICATIONS (AUTHOR/DATE/DESCRIPTION):
127: --***************************************************************************
128: Function get_dimensions_for_fact(p_fact IN VARCHAR2, p_dim_set IN NUMBER, p_include_missing_levels IN BOOLEAN default false)
129: RETURN BSC_DBGEN_STD_METADATA.tab_clsDimension IS
130:
131:
132: BEGIN
133:
130:
131:
132: BEGIN
133:
134: --IF (g_metadata_source = BSC_DBGEN_STD_METADATA.BSC) THEN
135: return BSC_DBGEN_BSC_READER.get_dimensions_for_fact(p_fact, p_dim_set, p_include_missing_levels);
136: --ELSE
137: --return BSC_DB_AK_READER.get_dimensions_for_fact(p_fact, p_dim_set);
138: --END IF;
168: ) is */
169: function get_parents_for_level(
170: p_level_name varchar2,
171: p_num_levels number default 1000000
172: ) RETURN BSC_DBGEN_STD_METADATA.tab_ClsLevelRelationship is
173:
174:
175: Begin
176: return BSC_DBGEN_BSC_READER.get_parents_for_level(p_level_name, p_num_levels);
185: ) is */
186: function get_children_for_level(
187: p_level_name varchar2,
188: p_num_levels number default 1000000
189: ) RETURN BSC_DBGEN_STD_METADATA.tab_ClsLevelRelationship is
190:
191:
192: Begin
193: return BSC_DBGEN_BSC_READER.get_children_for_level(p_level_name, p_num_levels);
210: -- note that this will populate only the following attributes
211: -- level_id, level_pk, level_pk_datatype
212: function get_level_info(
213: p_level varchar2
214: ) return BSC_DBGEN_STD_METADATA.clsLevel is
215:
216:
217: l_level BSC_DBGEN_STD_METADATA.clsLevel ;
218:
213: p_level varchar2
214: ) return BSC_DBGEN_STD_METADATA.clsLevel is
215:
216:
217: l_level BSC_DBGEN_STD_METADATA.clsLevel ;
218:
219: Begin
220: return BSC_DBGEN_BSC_READER.get_level_info(p_level);
221: Exception when others then
228: /* Requested Signature
229: procedure get_kpi_for_dim(
230: p_levels dbms_sql.varchar2_table,
231: p_kpi out nocopy bsc_aw_adapter_dim.kpi_for_dim_tb) */
232: function get_facts_for_levels(p_levels dbms_sql.varchar2_table) return BSC_DBGEN_STD_METADATA.tab_clsFact is
233:
234:
235: l_facts BSC_DBGEN_STD_METADATA.tab_clsFact ;
236: l_fact_tmp BSC_DBGEN_STD_METADATA.tab_clsFact;
231: p_kpi out nocopy bsc_aw_adapter_dim.kpi_for_dim_tb) */
232: function get_facts_for_levels(p_levels dbms_sql.varchar2_table) return BSC_DBGEN_STD_METADATA.tab_clsFact is
233:
234:
235: l_facts BSC_DBGEN_STD_METADATA.tab_clsFact ;
236: l_fact_tmp BSC_DBGEN_STD_METADATA.tab_clsFact;
237: Begin
238: l_facts := BSC_DBGEN_BSC_READER.get_facts_for_levels(p_levels);
239: --dbms_output.put_line('Chk1');
232: function get_facts_for_levels(p_levels dbms_sql.varchar2_table) return BSC_DBGEN_STD_METADATA.tab_clsFact is
233:
234:
235: l_facts BSC_DBGEN_STD_METADATA.tab_clsFact ;
236: l_fact_tmp BSC_DBGEN_STD_METADATA.tab_clsFact;
237: Begin
238: l_facts := BSC_DBGEN_BSC_READER.get_facts_for_levels(p_levels);
239: --dbms_output.put_line('Chk1');
240: --l_fact_tmp := BSC_DB_AK_READER.get_kpis_for_levels;
395:
396:
397: l_dim_sets dbms_sql.number_table;
398: Begin
399: --IF get_fact_source(to_number(p_kpi)) = BSC_DBGEN_STD_METADATA.BSC THEN
400: l_dim_sets := BSC_DBGEN_BSC_READER.get_dim_sets_for_fact(to_number(p_fact));
401: --ELSE -- AK report
402: --l_dim_sets(1) := 0;
403: --END IF;
587: p_bt_level_pks out nocopy dbms_sql.varchar2_table
588: ) is*/
589: function get_levels_for_table(
590: p_table_name varchar2
591: ) return BSC_DBGEN_STD_METADATA.tab_clsLevel is
592:
593:
594: l_table_type VARCHAR2(100):='TABLE';
595: Begin
615: p_fact varchar2,
616: p_dim_set varchar2,
617: p_base_table varchar2,
618: p_include_derived_columns boolean )
619: return BSC_DBGEN_STD_METADATA.tab_clsMeasure IS
620:
621:
622: Begin
623: return BSC_DBGEN_BSC_READER.get_b_table_measures_for_fact(p_fact, p_dim_set, p_base_table, p_include_derived_columns);
688: p_dim_set varchar2,
689: p_levels out nocopy dbms_sql.varchar2_table) is*/
690: function get_zero_code_levels(
691: p_fact varchar2,
692: p_dim_set varchar2) return BSC_DBGEN_STD_METADATA.tab_clsLevel is
693:
694:
695: Begin
696: return BSC_DBGEN_BSC_READER.get_zero_code_levels(p_fact, p_dim_set) ;
845: end;
846:
847: -- reqd by venu to identify dim level changes
848: -- will return only the children used by facts implemented as AW
849: function get_parents_for_level_aw(p_level_name varchar2, p_num_levels number default 1000000) RETURN BSC_DBGEN_STD_METADATA.tab_ClsLevelRelationship is
850: begin
851: return bsc_dbgen_bsc_reader.get_parents_for_level_aw(p_level_name, p_num_levels);
852: end;
853:
852: end;
853:
854: -- reqd by venu to identify dim level changes
855: -- will return only the children used by facts implemented as AW
856: function get_children_for_level_aw(p_level_name varchar2, p_num_levels number default 1000000) RETURN BSC_DBGEN_STD_METADATA.tab_ClsLevelRelationship is
857: begin
858: return bsc_dbgen_bsc_reader.get_children_for_level_aw(p_level_name, p_num_levels);
859: end;
860:
896: end if;
897: if g_num_partitions <2 then
898: return null;
899: end if;
900: l_stmt := ' partition by list('|| BSC_DBGEN_STD_METADATA.BSC_BATCH_COLUMN_NAME||') (';
901: for i in 1..g_num_partitions loop
902: if (i>1) then -- need comma
903: l_stmt := l_stmt ||',';
904: end if;
965: close cProperty;
966: l_index := p_property_list.first;
967: loop
968: if (p_property_list(l_index) is not null) then
969: --dbms_output.put_line('calling parse with prop='||l_db_property||' name='||p_property_list(l_index)||', '|| BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT
970: -- ||', null, '||BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
971: l_property_values(l_index) := bsc_dbgen_utils.parse_value(l_db_property, p_property_list(l_index),
972: BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT,
973: null,
966: l_index := p_property_list.first;
967: loop
968: if (p_property_list(l_index) is not null) then
969: --dbms_output.put_line('calling parse with prop='||l_db_property||' name='||p_property_list(l_index)||', '|| BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT
970: -- ||', null, '||BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
971: l_property_values(l_index) := bsc_dbgen_utils.parse_value(l_db_property, p_property_list(l_index),
972: BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT,
973: null,
974: BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
968: if (p_property_list(l_index) is not null) then
969: --dbms_output.put_line('calling parse with prop='||l_db_property||' name='||p_property_list(l_index)||', '|| BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT
970: -- ||', null, '||BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
971: l_property_values(l_index) := bsc_dbgen_utils.parse_value(l_db_property, p_property_list(l_index),
972: BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT,
973: null,
974: BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
975: else
976: l_property_values(l_index) := null;
970: -- ||', null, '||BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
971: l_property_values(l_index) := bsc_dbgen_utils.parse_value(l_db_property, p_property_list(l_index),
972: BSC_DBGEN_STD_METADATA.BSC_ASSIGNMENT,
973: null,
974: BSC_DBGEN_STD_METADATA.BSC_PROPERTY_SEPARATOR);
975: else
976: l_property_values(l_index) := null;
977: end if;
978: exit when l_index=p_property_list.last;
981: return l_property_values;
982:
983: end;
984:
985: function get_partition_info(p_table_name varchar2) return BSC_DBGEN_STD_METADATA.clsTablePartition IS
986: cursor cPartitionType(p_owner varchar2) IS
987: select table_name, partitioning_type, partition_count from all_part_tables where table_name=p_table_name
988: and owner=p_owner;
989:
1003: from all_tab_partitions where table_name=p_table_name
1004: and table_owner = pOwner
1005: order by partition_position;
1006:
1007: l_table_partition BSC_DBGEN_STD_METADATA.clsTablePartition;
1008: l_partition BSC_DBGEN_STD_METADATA.clsPartitionInfo;
1009: l_partition_null BSC_DBGEN_STD_METADATA.clsPartitionInfo;
1010: l_count number := 1;
1011: begin
1004: and table_owner = pOwner
1005: order by partition_position;
1006:
1007: l_table_partition BSC_DBGEN_STD_METADATA.clsTablePartition;
1008: l_partition BSC_DBGEN_STD_METADATA.clsPartitionInfo;
1009: l_partition_null BSC_DBGEN_STD_METADATA.clsPartitionInfo;
1010: l_count number := 1;
1011: begin
1012: if (g_bsc_schema is null) then
1005: order by partition_position;
1006:
1007: l_table_partition BSC_DBGEN_STD_METADATA.clsTablePartition;
1008: l_partition BSC_DBGEN_STD_METADATA.clsPartitionInfo;
1009: l_partition_null BSC_DBGEN_STD_METADATA.clsPartitionInfo;
1010: l_count number := 1;
1011: begin
1012: if (g_bsc_schema is null) then
1013: bsc_apps.init_bsc_apps;
1051: p_fact in varchar2,
1052: p_dim_set in number,
1053: p_b_table_name in varchar2,
1054: p_col_type in varchar2
1055: ) return BSC_DBGEN_STD_METADATA.tab_clsColumnMaps IS
1056: --BSC_DBGEN_STD_METADATA.tab_clsLevel
1057: Begin
1058: return bsc_dbgen_bsc_reader.get_fact_cols_from_b_table(p_fact, p_dim_set, p_b_table_name, p_col_type);
1059: Exception when others then
1052: p_dim_set in number,
1053: p_b_table_name in varchar2,
1054: p_col_type in varchar2
1055: ) return BSC_DBGEN_STD_METADATA.tab_clsColumnMaps IS
1056: --BSC_DBGEN_STD_METADATA.tab_clsLevel
1057: Begin
1058: return bsc_dbgen_bsc_reader.get_fact_cols_from_b_table(p_fact, p_dim_set, p_b_table_name, p_col_type);
1059: Exception when others then
1060: raise;