RPASCE Helper Functions and API for IW
RPASCE provides a package RP_G_RPAS_HELPER_PKG
with useful methods that can be called from custom code.
Following are the types that are available in RP_G_RPAS_HELPER_PKG
:
TYPE t_pair IS RECORD(
l_level varchar2(10),
l_dim varchar2(10)
);
TYPE dim_level_array is varray(8) of t_pair;
TYPE level_array is varray(50) of varchar2(10);
Following are the functions that are available in RP_G_RPAS_HELPER_PKG
.
function get_fact_name(meas_name_in IN varchar2) return varchar2;
This function returns the fact name based on the measure name passed. Measure name is defined in Configuration.
declare
l_fact varchar2(30);
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
end;
function get_na_value(fact_name_in IN varchar2) return varchar2;
Function returns NA Value for a fact.
declare
l_fact varchar2(30);
l_na_value number;
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
l_na_value := rp_g_rpas_helper_pkg.get_na_value(l_fact);
end;
function get_logical_space(fact_name_in IN varchar2) return number;
Function returns logical space for a fact. Logical space is the unpopulated space for a fact.
declare
l_fact varchar2(30);
l_log_space number;
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
l_log_space := rp_g_rpas_helper_pkg.get_logical_space(l_fact);
end;
function get_fact_group_name(fact_name_in IN varchar2) return varchar2;
Function returns the Fact Group name for a fact.
declare
l_fact varchar2(30);
l_group varchar2(30);
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
l_group := rp_g_rpas_helper_pkg.get_fact_group_name(l_fact);
end;
function get_table_name(fact_name_in IN varchar2) return varchar2;
Function returns the Oracle table name that contains the fact as a column.
declare
l_fact varchar2(30);
l_table varchar2(30);
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
l_table := rp_g_rpas_helper_pkg.get_table_name(l_fact);
end;
function get_number_of_partitions return integer;
Function returns the number of partitions in PDS.
declare
l_parts number;
begin
l_parts := rp_g_rpas_helper_pkg.get_number_of_partitions;
end;
function get_partition_level return varchar2;
Function returns the level at which is PDS is partitioned
(for example, dept
,clss
).
declare
l_part_level varchar2(30);
begin
l_part_level := rp_g_rpas_helper_pkg.get_partition_level;
end;
function clear_fact(fact_name_in varchar2) return boolean;
Function will clear the data for the fact.
declare
l_result boolean;
begin
l_result := rp_g_rpas_helper_pkg.clear_fact('drtynslsu');
end;
function get_base_intx(fact_name_in IN varchar2) return varchar2;
Function returns the base intersection of the fact.
declare
l_fact varchar2(30);
l_intx varchar2(30);
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
l_intx := rp_g_rpas_helper_pkg.get_base_intx(l_fact);
end;
function intx_to_level(intx_in IN varchar2) return dim_level_array;
Function returns the levels and dimensions that are part of an intersection in an array.
declare
l_fact varchar2(30);
l_intx varchar2(30);
l_array dim_level_array;
begin
l_fact := rp_g_rpas_helper_pkg.get_fact_name('drtynslsu');
l_intx := rp_g_rpas_helper_pkg.get_base_intx(l_fact);
l_array := rp_g_rpas_helper_pkg.intx_to_level(l_intx);
end;
function get_parent_levels(level_in IN varchar2) return level_array;
This returns all the parent levels of the passed level.
declare
l_array level_array;
begin
l_array := rp_g_rpas_helper_pkg.get_parent_levels('styl');
end;
function get_child_levels(level_in IN varchar2) return level_array;
This returns all the child levels of the passed level.
declare
l_array level_array;
begin
l_array := rp_g_rpas_helper_pkg.get_child_levels('styl');
end;
function is_higher_level(level1_in IN varchar2, level2_in IN varchar2) return boolean;
Function
return true if level1_in
is higher than level2_in
. Otherwise false.
declare
l_val boolean;
begin
l_val := rp_g_rpas_helper_pkg.is_higher_level('styl', 'dept');
end;
function is_lower_level(level1_in IN varchar2, level2_in IN varchar2) return boolean;
Function
return true if level1_in
is lower than level2_in
. Otherwise false.
declare
l_val boolean;
begin
l_val := rp_g_rpas_helper_pkg.is_lower_level('dept', 'styl');
end;