DBA Data[Home] [Help]

APPS.BSC_AW_READ dependencies on BSC_AW_DBMS_AW

Line 162: bsc_aw_dbms_aw.execute('allstat');

158: end if;
159: if g_workspace_attached is null or g_workspace_attached=false then
160: attach_workspace;
161: end if;
162: bsc_aw_dbms_aw.execute('allstat');
163: if l_kpi_in_cache then
164: --check to make sure that the kpi has not been modified. this will detach and attach workdspace if reqd. remove cache
165: if check_kpi_change(l_kpi) then
166: detach_workspace;

Line 755: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' to NULL');

751: Begin
752: l_count:=p_dim_set.limit_track.count;
753: for i in 1..p_dim_set.limit_track(l_count).limit_dim.count loop
754: if l_cache.exists(p_dim_set.limit_track(l_count).limit_dim(i).level_name)=false then
755: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' to NULL');
756: l_cache(p_dim_set.limit_track(l_count).limit_dim(i).level_name):=true;
757: end if;
758: --limit_track.limit_dim.dim_name CAN BE NULL!!!
759: if p_dim_set.limit_track(l_count).limit_dim(i).dim_name is not null then

Line 763: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).dim_name||' to NULL');

759: if p_dim_set.limit_track(l_count).limit_dim(i).dim_name is not null then
760: --this if clause eliminates dim with no concat dim like TYPE
761: if p_dim_set.limit_track(l_count).limit_dim(i).dim_name <> p_dim_set.limit_track(l_count).limit_dim(i).level_name then
762: if l_cache.exists(p_dim_set.limit_track(l_count).limit_dim(i).dim_name)=false then
763: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).dim_name||' to NULL');
764: l_cache(p_dim_set.limit_track(l_count).limit_dim(i).dim_name):=true;
765: end if;
766: end if;
767: end if;

Line 785: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' TO ALL');

781: - limit CC dim to cube
782: */
783: for i in 1..p_dim_set.limit_track(l_count).limit_dim.count loop
784: if p_dim_set.limit_track(l_count).limit_dim(i).value='^ALL' then
785: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' TO ALL');
786: else
787: --we need to handle time or any dim limited with the TO option. ie limit month_5_cal_1 to ''1.2004'' TO ''12.2004''
788: --input in BIS_PMV_PAGE_PARAMETER_TBL will be '1.2004 TO 12.2004'. we need to convert it to ''1.2004'' TO ''12.2004''
789: --when limiting, we use execute_ne so that even if the user has not loaded the kpi or is specifying unloaded values, we do not

Line 801: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||

797: l_upper_period:=l_parse_values(2).parameter;
798:
799: if substr(l_lower_period,1,instr(l_lower_period,'.') -1) = substr(l_lower_period,instr(l_lower_period,'.')+1) then
800: validate_limit_range(l_lower_period,l_upper_period,p_parameters);
801: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||
802: ''''||l_lower_period||''' TO '''||l_upper_period||'''');
803: else
804: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||
805: ''''||l_parse_values(1).parameter||''' TO '''||l_parse_values(2).parameter||'''');

Line 804: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||

800: validate_limit_range(l_lower_period,l_upper_period,p_parameters);
801: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||
802: ''''||l_lower_period||''' TO '''||l_upper_period||'''');
803: else
804: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||
805: ''''||l_parse_values(1).parameter||''' TO '''||l_parse_values(2).parameter||'''');
806: end if;
807:
808: else

Line 809: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||

805: ''''||l_parse_values(1).parameter||''' TO '''||l_parse_values(2).parameter||'''');
806: end if;
807:
808: else
809: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.limit_track(l_count).limit_dim(i).level_name||' ADD '||
810: ''''||p_dim_set.limit_track(l_count).limit_dim(i).value||'''');
811: end if;
812: end if;
813: if p_dim_set.limit_track(l_count).limit_dim(i).dim_name is not null then

Line 815: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).dim_name||' ADD '||

811: end if;
812: end if;
813: if p_dim_set.limit_track(l_count).limit_dim(i).dim_name is not null then
814: if p_dim_set.limit_track(l_count).limit_dim(i).dim_name <> p_dim_set.limit_track(l_count).limit_dim(i).level_name then
815: bsc_aw_dbms_aw.execute('limit '||p_dim_set.limit_track(l_count).limit_dim(i).dim_name||' ADD '||
816: p_dim_set.limit_track(l_count).limit_dim(i).level_name);
817: end if;
818: end if;
819: end loop;

Line 897: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);

893: l_dim:=p_dim_set.limit_track(l_count).limit_dim(i).level_name;
894: end if;
895: --
896: if bsc_aw_utility.in_array(l_dim_cache,l_dim)=false then
897: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);
898: bsc_aw_dbms_aw.execute('dfn '||l_cube||' boolean <'||l_dim||'>');
899: bsc_aw_dbms_aw.execute(l_cube||' = true across '||l_composite);
900: bsc_aw_dbms_aw.execute('limit '||l_dim||' to '||l_cube);
901: l_dim_cache(l_dim_cache.count+1):=l_dim;

Line 898: bsc_aw_dbms_aw.execute('dfn '||l_cube||' boolean <'||l_dim||'>');

894: end if;
895: --
896: if bsc_aw_utility.in_array(l_dim_cache,l_dim)=false then
897: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);
898: bsc_aw_dbms_aw.execute('dfn '||l_cube||' boolean <'||l_dim||'>');
899: bsc_aw_dbms_aw.execute(l_cube||' = true across '||l_composite);
900: bsc_aw_dbms_aw.execute('limit '||l_dim||' to '||l_cube);
901: l_dim_cache(l_dim_cache.count+1):=l_dim;
902: end if;

Line 899: bsc_aw_dbms_aw.execute(l_cube||' = true across '||l_composite);

895: --
896: if bsc_aw_utility.in_array(l_dim_cache,l_dim)=false then
897: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);
898: bsc_aw_dbms_aw.execute('dfn '||l_cube||' boolean <'||l_dim||'>');
899: bsc_aw_dbms_aw.execute(l_cube||' = true across '||l_composite);
900: bsc_aw_dbms_aw.execute('limit '||l_dim||' to '||l_cube);
901: l_dim_cache(l_dim_cache.count+1):=l_dim;
902: end if;
903: --

Line 900: bsc_aw_dbms_aw.execute('limit '||l_dim||' to '||l_cube);

896: if bsc_aw_utility.in_array(l_dim_cache,l_dim)=false then
897: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);
898: bsc_aw_dbms_aw.execute('dfn '||l_cube||' boolean <'||l_dim||'>');
899: bsc_aw_dbms_aw.execute(l_cube||' = true across '||l_composite);
900: bsc_aw_dbms_aw.execute('limit '||l_dim||' to '||l_cube);
901: l_dim_cache(l_dim_cache.count+1):=l_dim;
902: end if;
903: --
904: end if;

Line 908: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);

904: end if;
905: end loop;
906: end if;
907: Exception when others then
908: bsc_aw_dbms_aw.execute_ne('delete '||l_cube);
909: log_n('Exception in limit_dim_to_composite '||sqlerrm);
910: raise;
911: End;
912:

Line 962: bsc_aw_dbms_aw.execute('push '||p_dim_set.levels(p_parameters(i).parameter_name).dim_name);

958: agg_dim_flag:=true;
959: end if;
960: if agg_dim_flag then
961: if bsc_aw_utility.in_array(l_dim_aggregate,p_dim_set.levels(p_parameters(i).parameter_name).dim_name)=false then
962: bsc_aw_dbms_aw.execute('push '||p_dim_set.levels(p_parameters(i).parameter_name).dim_name);
963: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' TO NULL');
964: l_dim_aggregate(l_dim_aggregate.count+1):=p_dim_set.levels(p_parameters(i).parameter_name).dim_name;
965: end if;
966: --if this level at which aggregatino is sought has zero code, and the value requested is zero then we need to limit

Line 963: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' TO NULL');

959: end if;
960: if agg_dim_flag then
961: if bsc_aw_utility.in_array(l_dim_aggregate,p_dim_set.levels(p_parameters(i).parameter_name).dim_name)=false then
962: bsc_aw_dbms_aw.execute('push '||p_dim_set.levels(p_parameters(i).parameter_name).dim_name);
963: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' TO NULL');
964: l_dim_aggregate(l_dim_aggregate.count+1):=p_dim_set.levels(p_parameters(i).parameter_name).dim_name;
965: end if;
966: --if this level at which aggregatino is sought has zero code, and the value requested is zero then we need to limit
967: --the level name dim to include zero code level also

Line 970: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' ADD '''||

966: --if this level at which aggregatino is sought has zero code, and the value requested is zero then we need to limit
967: --the level name dim to include zero code level also
968: if l_zero_specified then
969: if p_dim_set.levels(p_parameters(i).parameter_name).zero_level is not null then
970: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' ADD '''||
971: p_dim_set.levels(p_parameters(i).parameter_name).zero_level||'.'||p_dim_set.levels(p_parameters(i).parameter_name).level_name||'''');
972: end if;
973: end if;
974: if p_dim_set.levels(p_parameters(i).parameter_name).aggregated='N' then

Line 976: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' ADD '''||

972: end if;
973: end if;
974: if p_dim_set.levels(p_parameters(i).parameter_name).aggregated='N' then
975: for j in 1..p_dim_set.drill_down_levels(p_parameters(i).parameter_name).child_level.count loop
976: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).level_name_dim||' ADD '''||
977: p_dim_set.drill_down_levels(p_parameters(i).parameter_name).rel_level_name(j)||'''');
978: /*rel_level_name will contain only those where there is no pre-aggregation. if agg is at city level and country data is asked, then
979: rel_level_name contains country.state and state.city so data can rollup from city to country */
980: /*

Line 997: bsc_aw_dbms_aw.execute(p_dim_set.levels(p_parameters(i).parameter_name).relation_name||'('||

993: Q:what about precalculated indicators where users specify aggregated data for all the levels. they also specify data for
994: 0. does this mean we dont aggregate these kpis?
995: */
996: if l_zero_specified then
997: bsc_aw_dbms_aw.execute(p_dim_set.levels(p_parameters(i).parameter_name).relation_name||'('||
998: p_dim_set.drill_down_levels(p_parameters(i).parameter_name).child_level(j)||' ''0'')=NA');
999: end if;
1000: end loop;
1001: --

Line 1002: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).dim_name||' ADD DESCENDANTS using '||

998: p_dim_set.drill_down_levels(p_parameters(i).parameter_name).child_level(j)||' ''0'')=NA');
999: end if;
1000: end loop;
1001: --
1002: bsc_aw_dbms_aw.execute('limit '||p_dim_set.levels(p_parameters(i).parameter_name).dim_name||' ADD DESCENDANTS using '||
1003: p_dim_set.levels(p_parameters(i).parameter_name).relation_name);
1004: /*to be on the safe side, we keep only those levels where there is data aggregated. we should not go lower
1005: for now, lets assume that parent.child is limited correctly so that drill down to descendants will come down only to the point where top most
1006: agg data is available*/

Line 1033: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);

1029: agg_cal_flag:=false;
1030: for i in 1..l_periodicity.count loop
1031: if p_dim_set.calendar.periodicity(l_periodicity(i)).aggregated='N' then
1032: if agg_cal_flag=false then
1033: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1034: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' TO NULL');
1035: agg_cal_flag:=true;
1036: end if;
1037: for j in 1..p_dim_set.calendar.drill_down_levels(l_periodicity(i)).child_level.count loop

Line 1034: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' TO NULL');

1030: for i in 1..l_periodicity.count loop
1031: if p_dim_set.calendar.periodicity(l_periodicity(i)).aggregated='N' then
1032: if agg_cal_flag=false then
1033: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1034: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' TO NULL');
1035: agg_cal_flag:=true;
1036: end if;
1037: for j in 1..p_dim_set.calendar.drill_down_levels(l_periodicity(i)).child_level.count loop
1038: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' ADD '''||

Line 1038: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' ADD '''||

1034: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' TO NULL');
1035: agg_cal_flag:=true;
1036: end if;
1037: for j in 1..p_dim_set.calendar.drill_down_levels(l_periodicity(i)).child_level.count loop
1038: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' ADD '''||
1039: p_dim_set.calendar.drill_down_levels(l_periodicity(i)).rel_level_name(j)||'''');
1040: end loop;
1041: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' ADD DESCENDANTS using '||p_dim_set.dim_set.calendar.relation_name);
1042: end if;

Line 1041: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' ADD DESCENDANTS using '||p_dim_set.dim_set.calendar.relation_name);

1037: for j in 1..p_dim_set.calendar.drill_down_levels(l_periodicity(i)).child_level.count loop
1038: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.calendar.level_name_dim||' ADD '''||
1039: p_dim_set.calendar.drill_down_levels(l_periodicity(i)).rel_level_name(j)||'''');
1040: end loop;
1041: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' ADD DESCENDANTS using '||p_dim_set.dim_set.calendar.relation_name);
1042: end if;
1043: end loop;
1044: --now, limit the dim to the values in the composite. this is for performance
1045: --earlier, we had a call here : limit_dim_to_composite(p_dim_set,p_parameters);

Line 1063: bsc_aw_dbms_aw.execute('pop '||l_dim_aggregate(i));

1059: /*aggregate on dim */
1060: if l_dim_aggregate.count>0 then
1061: for i in 1..l_dim_aggregate.count loop
1062: aggregate_cubes_dim(p_dim_set,l_agg_measures,l_dim_aggregate(i));
1063: bsc_aw_dbms_aw.execute('pop '||l_dim_aggregate(i));
1064: end loop;
1065: end if;
1066: /*now aggregate on time if needed */
1067: if agg_cal_flag then

Line 1069: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);

1065: end if;
1066: /*now aggregate on time if needed */
1067: if agg_cal_flag then
1068: aggregate_cubes_calendar(p_dim_set,l_agg_measures);
1069: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);
1070: end if;
1071: --if there are non std agg, (agg formula), do them now. the dim have been brought back to the higher levels
1072: aggregate_formula(p_dim_set,l_measures);
1073: /*correct forecast */

Line 1108: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);

1104: l_display_cubes(l_display_cubes.count+1):=p_dim_set.measure(upper(l_measures(i))).display_cube;
1105: end if;
1106: end loop;
1107: l_projection_dim:=bsc_aw_adapter_kpi.get_projection_dim(p_dim_set.dim_set);
1108: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1109: bsc_aw_dbms_aw.execute('push '||l_projection_dim);
1110: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1111: bsc_aw_dbms_aw.execute('limit '||l_projection_dim||' TO ''Y''');
1112: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' TO NULL');

Line 1109: bsc_aw_dbms_aw.execute('push '||l_projection_dim);

1105: end if;
1106: end loop;
1107: l_projection_dim:=bsc_aw_adapter_kpi.get_projection_dim(p_dim_set.dim_set);
1108: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1109: bsc_aw_dbms_aw.execute('push '||l_projection_dim);
1110: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1111: bsc_aw_dbms_aw.execute('limit '||l_projection_dim||' TO ''Y''');
1112: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' TO NULL');
1113: --bug:5954342 changed the dbms_aw.execute api to dbms_aw.execute_ne to shadow errors thrown in case of

Line 1110: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);

1106: end loop;
1107: l_projection_dim:=bsc_aw_adapter_kpi.get_projection_dim(p_dim_set.dim_set);
1108: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1109: bsc_aw_dbms_aw.execute('push '||l_projection_dim);
1110: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1111: bsc_aw_dbms_aw.execute('limit '||l_projection_dim||' TO ''Y''');
1112: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' TO NULL');
1113: --bug:5954342 changed the dbms_aw.execute api to dbms_aw.execute_ne to shadow errors thrown in case of
1114: --non existing values

Line 1111: bsc_aw_dbms_aw.execute('limit '||l_projection_dim||' TO ''Y''');

1107: l_projection_dim:=bsc_aw_adapter_kpi.get_projection_dim(p_dim_set.dim_set);
1108: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1109: bsc_aw_dbms_aw.execute('push '||l_projection_dim);
1110: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1111: bsc_aw_dbms_aw.execute('limit '||l_projection_dim||' TO ''Y''');
1112: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' TO NULL');
1113: --bug:5954342 changed the dbms_aw.execute api to dbms_aw.execute_ne to shadow errors thrown in case of
1114: --non existing values
1115: for i in 1..p_periodicity.count loop

Line 1112: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' TO NULL');

1108: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1109: bsc_aw_dbms_aw.execute('push '||l_projection_dim);
1110: bsc_aw_dbms_aw.execute('push '||p_dim_set.calendar.aw_dim);
1111: bsc_aw_dbms_aw.execute('limit '||l_projection_dim||' TO ''Y''');
1112: bsc_aw_dbms_aw.execute('limit '||p_dim_set.calendar.aw_dim||' TO NULL');
1113: --bug:5954342 changed the dbms_aw.execute api to dbms_aw.execute_ne to shadow errors thrown in case of
1114: --non existing values
1115: for i in 1..p_periodicity.count loop
1116: if p_dim_set.calendar.periodicity(p_periodicity(i)).aggregated='N' then

Line 1117: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim||' TO '''||

1113: --bug:5954342 changed the dbms_aw.execute api to dbms_aw.execute_ne to shadow errors thrown in case of
1114: --non existing values
1115: for i in 1..p_periodicity.count loop
1116: if p_dim_set.calendar.periodicity(p_periodicity(i)).aggregated='N' then
1117: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim||' TO '''||
1118: p_dim_set.calendar.periodicity(p_periodicity(i)).current_period||'''');
1119: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.aw_dim||' ADD '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim);
1120: end if;
1121: end loop;

Line 1119: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.aw_dim||' ADD '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim);

1115: for i in 1..p_periodicity.count loop
1116: if p_dim_set.calendar.periodicity(p_periodicity(i)).aggregated='N' then
1117: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim||' TO '''||
1118: p_dim_set.calendar.periodicity(p_periodicity(i)).current_period||'''');
1119: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.aw_dim||' ADD '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim);
1120: end if;
1121: end loop;
1122: if p_dim_set.dim_set.cube_design='datacube' then
1123: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');

Line 1123: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');

1119: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.calendar.aw_dim||' ADD '||p_dim_set.calendar.periodicity(p_periodicity(i)).aw_dim);
1120: end if;
1121: end loop;
1122: if p_dim_set.dim_set.cube_design='datacube' then
1123: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');
1124: for i in 1..l_measures.count loop
1125: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.dim_set.measurename_dim||' ADD '''||l_measures(i)||'''');
1126: end loop;
1127: end if;

Line 1125: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.dim_set.measurename_dim||' ADD '''||l_measures(i)||'''');

1121: end loop;
1122: if p_dim_set.dim_set.cube_design='datacube' then
1123: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');
1124: for i in 1..l_measures.count loop
1125: bsc_aw_dbms_aw.execute_ne('limit '||p_dim_set.dim_set.measurename_dim||' ADD '''||l_measures(i)||'''');
1126: end loop;
1127: end if;
1128: for i in 1..l_cubes.count loop
1129: l_pt_comp:=null;

Line 1140: bsc_aw_dbms_aw.execute(l_stmt);

1136: end if;
1137: if l_pt_comp is not null then
1138: l_stmt:=l_stmt||' across '||l_pt_comp;
1139: end if;
1140: bsc_aw_dbms_aw.execute(l_stmt);
1141: end loop;
1142: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);
1143: bsc_aw_dbms_aw.execute('pop '||l_projection_dim);
1144: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);

Line 1142: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);

1138: l_stmt:=l_stmt||' across '||l_pt_comp;
1139: end if;
1140: bsc_aw_dbms_aw.execute(l_stmt);
1141: end loop;
1142: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);
1143: bsc_aw_dbms_aw.execute('pop '||l_projection_dim);
1144: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);
1145: end if;
1146: Exception when others then

Line 1143: bsc_aw_dbms_aw.execute('pop '||l_projection_dim);

1139: end if;
1140: bsc_aw_dbms_aw.execute(l_stmt);
1141: end loop;
1142: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);
1143: bsc_aw_dbms_aw.execute('pop '||l_projection_dim);
1144: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);
1145: end if;
1146: Exception when others then
1147: log_n('Exception in correct_forecast '||sqlerrm);

Line 1144: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);

1140: bsc_aw_dbms_aw.execute(l_stmt);
1141: end loop;
1142: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);
1143: bsc_aw_dbms_aw.execute('pop '||l_projection_dim);
1144: bsc_aw_dbms_aw.execute('pop '||p_dim_set.calendar.aw_dim);
1145: end if;
1146: Exception when others then
1147: log_n('Exception in correct_forecast '||sqlerrm);
1148: raise;

Line 1254: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' to NULL');

1250: l_countvar_cubes(l_countvar_cubes.count+1):=p_dim_set.measure(upper(p_std_measures(i))).countvar_cube;
1251: l_display_cubes(l_display_cubes.count+1):=p_dim_set.measure(upper(p_std_measures(i))).display_cube;
1252: end if;
1253: end loop;
1254: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' to NULL');
1255: /*Q:can we assume that if there is display cube, it alone needs to be aggregated
1256: Q: here, we do not worry about partitions because we aggregate all partitions*/
1257: for i in 1..p_std_measures.count loop
1258: if p_dim_set.measure(upper(p_std_measures(i))).display_cube is null then

Line 1259: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||

1255: /*Q:can we assume that if there is display cube, it alone needs to be aggregated
1256: Q: here, we do not worry about partitions because we aggregate all partitions*/
1257: for i in 1..p_std_measures.count loop
1258: if p_dim_set.measure(upper(p_std_measures(i))).display_cube is null then
1259: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||
1260: p_dim_set.measure(upper(p_std_measures(i))).cube||'''');
1261: else
1262: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||
1263: p_dim_set.measure(upper(p_std_measures(i))).display_cube||'''');

Line 1262: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||

1258: if p_dim_set.measure(upper(p_std_measures(i))).display_cube is null then
1259: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||
1260: p_dim_set.measure(upper(p_std_measures(i))).cube||'''');
1261: else
1262: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||
1263: p_dim_set.measure(upper(p_std_measures(i))).display_cube||'''');
1264: end if;
1265: end loop;
1266: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);

Line 1266: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);

1262: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.aggmap_operator.measure_dim||' ADD '''||
1263: p_dim_set.measure(upper(p_std_measures(i))).display_cube||'''');
1264: end if;
1265: end loop;
1266: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1267: /*if datacube, we need to limit measurename dim */
1268: if p_dim_set.dim_set.cube_design='datacube' then
1269: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');
1270: for i in 1..p_std_measures.count loop

Line 1269: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');

1265: end loop;
1266: bsc_aw_dbms_aw.execute('push '||p_dim_set.dim_set.measurename_dim);
1267: /*if datacube, we need to limit measurename dim */
1268: if p_dim_set.dim_set.cube_design='datacube' then
1269: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');
1270: for i in 1..p_std_measures.count loop
1271: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' ADD '''||p_std_measures(i)||'''');
1272: end loop;
1273: end if;

Line 1271: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' ADD '''||p_std_measures(i)||'''');

1267: /*if datacube, we need to limit measurename dim */
1268: if p_dim_set.dim_set.cube_design='datacube' then
1269: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' to NULL');
1270: for i in 1..p_std_measures.count loop
1271: bsc_aw_dbms_aw.execute('limit '||p_dim_set.dim_set.measurename_dim||' ADD '''||p_std_measures(i)||'''');
1272: end loop;
1273: end if;
1274: --aggregate cubes with countvar cubes
1275: flag:=false;

Line 1294: bsc_aw_dbms_aw.execute(l_stmt);

1290: l_stmt:=l_stmt||l_countvar_cubes(i)||' ';
1291: end if;
1292: end loop;
1293: if flag then
1294: bsc_aw_dbms_aw.execute(l_stmt);
1295: end if;
1296: /*no countvar cubes */
1297: flag:=false;
1298: l_stmt:='aggregate ';

Line 1311: bsc_aw_dbms_aw.execute(l_stmt);

1307: end if;
1308: end loop;
1309: l_stmt:=l_stmt||' using '||p_agg_map;
1310: if flag then
1311: bsc_aw_dbms_aw.execute(l_stmt);
1312: end if;
1313: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);
1314: Exception when others then
1315: log_n('Exception in aggregate_cubes '||sqlerrm);

Line 1313: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);

1309: l_stmt:=l_stmt||' using '||p_agg_map;
1310: if flag then
1311: bsc_aw_dbms_aw.execute(l_stmt);
1312: end if;
1313: bsc_aw_dbms_aw.execute('pop '||p_dim_set.dim_set.measurename_dim);
1314: Exception when others then
1315: log_n('Exception in aggregate_cubes '||sqlerrm);
1316: raise;
1317: End;

Line 1333: bsc_aw_dbms_aw.execute(l_cube||'('||p_dim_set.dim_set.measurename_dim||' '''||

1329: l_cube:=p_dim_set.measure(upper(p_measures(i))).display_cube;
1330: end if;
1331: if p_dim_set.dim_set.cube_design='datacube' then
1332: /*5458597. measurename dim has mixed case. earlier it was p_dim_set.dim_set.measurename_dim||' '''||p_measures(i)||''')=*/
1333: bsc_aw_dbms_aw.execute(l_cube||'('||p_dim_set.dim_set.measurename_dim||' '''||
1334: p_dim_set.measure(upper(p_measures(i))).measure||''')='||p_dim_set.measure(upper(p_measures(i))).agg_formula.agg_formula);
1335: else
1336: bsc_aw_dbms_aw.execute(l_cube||'='||p_dim_set.measure(upper(p_measures(i))).agg_formula.agg_formula);
1337: end if;

Line 1336: bsc_aw_dbms_aw.execute(l_cube||'='||p_dim_set.measure(upper(p_measures(i))).agg_formula.agg_formula);

1332: /*5458597. measurename dim has mixed case. earlier it was p_dim_set.dim_set.measurename_dim||' '''||p_measures(i)||''')=*/
1333: bsc_aw_dbms_aw.execute(l_cube||'('||p_dim_set.dim_set.measurename_dim||' '''||
1334: p_dim_set.measure(upper(p_measures(i))).measure||''')='||p_dim_set.measure(upper(p_measures(i))).agg_formula.agg_formula);
1335: else
1336: bsc_aw_dbms_aw.execute(l_cube||'='||p_dim_set.measure(upper(p_measures(i))).agg_formula.agg_formula);
1337: end if;
1338: end if;
1339: end loop;
1340: Exception when others then

Line 1577: bsc_aw_dbms_aw.execute(l_stmt);

1573: l_stmt:=p_display_cube||'='||p_cube;
1574: if l_pt_comp is not null then
1575: l_stmt:=l_stmt||' across '||l_pt_comp;
1576: end if;
1577: bsc_aw_dbms_aw.execute(l_stmt);
1578: Exception when others then
1579: log_n('Exception in copy_data_display_cubes '||sqlerrm);
1580: raise;
1581: End;

Line 1594: bsc_aw_dbms_aw.init_all;

1590: g_debug:=false;
1591: end if;
1592: bsc_aw_utility.init_all(g_debug);
1593: BSC_AW_MD_API.init_all;
1594: bsc_aw_dbms_aw.init_all;
1595: bsc_aw_management.init_all;
1596: g_std_dim:=bsc_aw_adapter_dim.get_std_dim_list;
1597: if nvl(bsc_aw_utility.get_parameter_value('FILE LOG'),'N')='Y' then
1598: g_log_type:='file log';