Rollup and Datamart concepts for compressed cube

Hi all,
I loaded the data into cube and i compressed it ( collapse ),
Then I have 2 questions
1. Can i use the  Rollup option now?
2. Can I load the data into another cube by using the compressed cube?
good answers are rewarded
Regards
Ram

hi sri
Its not like we cannot do rollup before compression. You are right we do rollup to fill the aggregates. When you will do compression the request id will be deleted and the data will move from F table to E table. There will be no requst id at all.
We do rollup based on Request only. If there is no request how can u do rollup. the same requst will not be availabe for reporting if u dont do the Rollup to aggregates.
Regards
Khaja

Similar Messages

  • Datamart works for Compressed data

    Hello
    We created Datamart for the Billing Cube and needs to send the data to New Billing Cube.
    I question like for the Old Cube for which Datamart is created, got some compressed records.
    So when iam loading the data from Datamart to new cube, will it be possible for me to get the compressed records too.
    Do we need to load differently for compressed records.
    Please provide some solution if anyone has faced this, it will be very helpful for me.
    Thanks in advance

    Hello,
    when you load data from one cube to another, all records will be passed; compressed and not compressed.
    Furthermore, if you are creating a new cube and need to load all the data from the old cube to the new cube, I recommend to compress the old cube fully, update indexes, and create statistics on it; the selection and fetching of data will be faster.
    Hope this helps...
    Olivier.

  • Can we use actual and plan data for same cube?

    hi friends,
    can we use actual data and plan data in same cube in bps.
    Thanking u
    suneel.

    Hi,
    Let us take std cube 0SD_C03 where we store billing info,sales order info and delivery info. But still in reporting we can get values without any mismatch in their respective KF. It is possible because of a cahracterstic called Documnet category which gets values in update rule by constant .
    Similarly we can have 2 types of data (plan and actual) in a single cube by having different value for a characterstic. Most frequently used characterstics for this are 0VERSION and Value type.
    With rgds,
    Anil Kumar Sharma .P

  • How to use regular expression using pattern and match concept for this scenario?

    Hi Guys,
    I have a string "We have 7 tutorials for Java, 2 tutorials for Javascript and 1 tutorial for Oracle"
    I need to replace the numbers based on the below condition.
    if more then 5, replace with many
    if less then 5, replace with a few
    if it is 1, replace with "only one"
    below is my code, I am missing the equating part to replace the numbers could any one of you please help me out fixing this.
    private static String REGEX="(\\d+)";
      private static String INPUT="We have 7 tutorials for Java, 2 tutorials for Javascript and 1 tutorial for Oracle";
      //String pattern= "(.*)(\\d+)(.*)";
      private static String REPLACE = "replace with many";
      public static void main(String[] args) {
      // Create a Pattern object
           Pattern r = Pattern.compile(REGEX);
        // Now create matcher object.
           Matcher m = r.matcher(INPUT);
           //replace the value 7 by the replace string
    //How to equate the (\\d+)  greater than a number  and use it the below code.
                  INPUT = m.replaceAll(REPLACE);
           //Print the final Result;
            System.out.println(INPUT);
    Thanks and Regards,

    Hi,
    Try the following which makes use of  "appendReplacement" instead with the "start" and "end" methods to locate and check the searched "regExp" string before dynamically setting the "replace" string:
    String regExp = "\\d+";
    String input = "We have 7 tutorials for Java, 2 tutorials for Javascript and 1 tutorial for Oracle";
    String replace;
    Pattern p = Pattern.compile(regExp);
    // get a matcher object
    Matcher m = p.matcher(input);
    StringBuffer sb = new StringBuffer();
    while (m.find()) {
       Integer x = Integer.valueOf(input.substring(m.start(), m.end()));
       replace = (x >= 5) ? "many" : (x == 1) ? "only one" : "few";
       m.appendReplacement(sb, replace);
    m.appendTail(sb);
    System.out.println(sb.toString());
    HTH.
    Regards,
    Rajen
    P.S: Please mark the post as answered/helpful if it resolves your issue for the benefit of all community members.

  • Build and Drop Indices for Info Cube

    Hi,
    How or Where can we Build Indices and Drop Indices on Info Cube?
    Thanks & Best Regards,
    Venkata.

    Hi Venkata,
    Although you can, you don't have to do it manually, you can add these process (drop index and build index) to the process chain where you load the InfoCube.
    If you don't how pass me your email and I send a document.
    regards,
    Sebastián.-

  • Datamart from a compressed cube

    Hi All,
    is it possible to perform an export datasource on a cube that has been compressed and then load the data it into another cube ?
    I get the following error when I do the above
    "No corresponding requests were found for request REQU_3YQUNVFWZQRR87ZPBRYDHE97C in the ODS/Cube"
    Please suggest if you have any ideas.
    Best Regards,
    Sanjay

    Hi Sanjay,
    Yes.It is possible to create an export data source on a cube that is compressed.
    Is it an error OR just a warning.
    Bye
    Dinesh

  • How to choose the characteristics and key figures for a cube

    Hi Gurus,
    To create a CO-PA cube, based on a DataSource, what chars and kfs should I select from std objects? I have the list of fields from the datasource, but how to interpret what infoobject/s are relevant for each io?

    To create a CO-PA cube, based on a DataSource, what chars and kfs should I select from std objects? I have the list of fields from the datasource, but how to interpret what infoobject/s are relevant for each io?
    Hi,
    For CO-PA since it is a generated DataSource, except for the common characteristics ( E.g. Company Code, Controlling Area ) where you get standard InfoObjects for all other Characteristics and Key Figures you end up creating custom or Z characteristics and key figures. This is unavoidable.
    Assigning points is the only way of saying thanks in SDN
    Thanks,
    Shan.

  • How to identify the source column and source table for a measure

    Does anyone have a query that I can use to positively identify the source column and source table for a cube measure in an SSAS cube?  Visual Studio shows ID, Name, and Source, but it is nearly worthless in a large cube and database.
    Also - the same for a dimension would be great.
    If no query exists for this, can someone please explain how to find the source column/table for a measure and for a dimension?
    Thanks.

    DMVs don’t expose the DataSourceView content. AMO is much better suited for object model operations like
    this than the DMVs. PowerShell is also sometimes an option, but in this case C# code would be much easier because analyzing the contents of the DataSourceView is much easier using the .Net DataSet class.
    Hope this helps.
    Reeves
    Denver, CO

  • AVG aggregation in compressed cube

    We are using OWB10gR2 and have designed a compressed cube with eight dimensions, one of them is the TIME dimension with standard year and week hierarchy. The (single) measure is not summed over the time but we have to calculate the average over time.
    What the cube is calculating is sometimes correct, but not always. I tried a bunch of things (having time dimension with only one hierarchy, partitioning the cube or not, ...) to get that problems solved but without result. OLAP 10gR2 should be able to calculated average in a compressed cube so I assume that the code OWB is generating is not correct.
    Has anybody ever designed a compressed cube with an aggregation different from SUM?? It this possible using OWB?

    Hi,
    Even you compress the Cube you can delete the data from Cube by selective deleteion. You can delete based on your Dates/Characters...etc.. you see my blog..
    in  https://wiki.sdn.sap.com/wiki/display/profile/Surendra+Reddy
    Using Selective Deletion in Process Chains
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/business-intelligence/s-u/using%20selective%20deletion%20in%20process%20chains.pdf
    Thanks
    Reddy

  • How to delete the rollup and compress request from the cube

    Hi Experts,
    I have a requirement, one request was updated into the cube and it was been rollup and then compressed.  As the request was compressed so based on request id we cant perform the deletion.
    So it is possible with selective deletion.  Now before performing the selective deletion do i need to deactivate the aggregates. 
    Help me out on this.
    Regards
    Prasad

    Hi.........
    U hav to deactivate the aggregates................bcoz.........Selective deletion is only possible with uncompressed requests...............ie from F fact table...........after compression data moves from F fact table to E fact table.............. you can't do selective deletion on E fact table.........So first deactivate the aggregates............then do the selective deletion..............then again activate the aggregates..............and do the aggregate filling job manually in RSA1..............but I will suggest u delete the request...............bcoz any how u hav to deactivate the aggregates............and in case of selective deletion u hav to be very particular................if ur load is not taking much time............then delete the request and repeat the load............
    Regards,
    Debjani...........

  • Relation between Rollup and compression.

    Hi All,
    Is there a relation between rollup and compression ? i.e if i compress the cube, will the rollup job be faster ?

    Hi,
    Thanks for all your replies. Now the picture is crystal clear.
    1. A compression job moves data from F table to E table. This is also applicable for aggregates. If you schedule a compression job for a cube, the aggregates are automatically compressed( You can also compress aggregates of a cube without compressing the cube. There are programs avalibale for the same).
    2. Assume that you have not done compression . If you load the data to base cube ,it takes more time to create the indexes after loading.
    3) Assume that you have done compression . If you load the data to base cube ,it takes less time than 2 point to create the indexes after loading.
    On similar lines, if aggregates of a cube  are compressed before rollup, then rollup will be faster. This is what exactly I have experienced. I had a cube which had 1000 request. It was never compressed. The rollup job for the cube used to take around 60,000 seconds. I compressed 900 requests. Now the rollup job gets over in 2400 seconds.So the conclusion is the following:
    <b>When aggregates of a cube are compressed, the rollup job runs faster.</b>
    Message was edited by: Tej Trivedi

  • ROLLUP AND CUBE OPERATORS IN ORACLE 8I

    제품 : PL/SQL
    작성날짜 : 2000-06-29
    ========================================
    ROLLUP AND CUBE OPERATORS IN ORACLE 8I
    ========================================
    PURPOSE
    ROLLUP 과 CUBE Operator에 대해 설명하고자 한다.
    Explanation
    ROLLUP operator는 SELECT문의 GROUP BY절에 사용된다.
    SELECT절에 ROLLUP 을 사용함으로써 'regular rows'(보통의 select된 data)와
    'super-aggregate rows'(총계)을 구할 수 있다. 기존에는 select ... union select
    를 이용해 구사해야 했었던 것이다. 'super-aggregate rows'는 'sub-total'
    (중간 Total, 즉 소계)을 포함한다.
    CUBE operator는 Cross-tab에 대한 Summary를 추출하는데 사용된다. 모든 가능한
    dimension에 대한 total을 나타낸다. 즉 ROLLUP에 의해 나타내어지는 item total값과
    column total값을 나타낸다.
    NULL값은 모든 값에 대한 super-aggregate 을 나타낸다. GROUPING() function은
    모든 값에 대한 set을 나타내는 null값과 column의 null값과 구별하는데 쓰여진다.
    GROUPING() function은 GROUP BY절에서 반드시 표현되어야 한다. GROUPING()은 모든
    값의 set을 표현합에 있어서 null이면 1을 아니면 0을 return한다.
    ROLLUP과 CUBE는 CREATE MATERIALIZED VIEW에서 사용되어 질수 있다.
    Example
    아래와 같이 테스트에 쓰여질 table과 data을 만든다.
    create table test_roll
    (YEAR NUMBER(4),
    REGION CHAR(7),
    DEPT CHAR(2),
    PROFIT NUMBER );
    insert into test_roll values (1995 ,'West' , 'A1' , 100);
    insert into test_roll values (1995 ,'West' , 'A2' , 100);
    insert into test_roll values (1996 ,'West' , 'A1' , 100);
    insert into test_roll values (1996 ,'West' , 'A2' , 100);
    insert into test_roll values (1995 ,'Central' ,'A1' , 100);
    insert into test_roll values (1995 ,'East' , 'A1' , 100);
    insert into test_roll values (1995 ,'East' , 'A2' , 100);
    SQL> select * from test_roll;
    YEAR REGION DE PROFIT
    1995 West A1 100
    1995 West A2 100
    1996 West A1 100
    1996 West A2 100
    1995 Central A1 100
    1995 East A1 100
    1995 East A2 100
    7 rows selected.
    예제 1: ROLLUP
    SQL> select year, region, sum(profit), count(*)
    from test_roll
    group by rollup(year, region);
    YEAR REGION SUM(PROFIT) COUNT(*)
    1995 Central 100 1
    1995 East 200 2
    1995 West 200 2
    1995 500 5
    1996 West 200 2
    1996 200 2
    700 7
    7 rows selected.
    위의 내용을 tabular로 나타내어 보면 쉽게 알 수 있다.
    Year Central(A1+A2) East(A1+A2) West(A1+A2)
    1995 (100+NULL) (100+100) (100+100) 500
    1996 (NULL+NULL) (NULL+NULL) (100+100) 200
    700
    예제 2: ROLLUP and GROUPING()
    SQL> select year, region, sum(profit),
    grouping(year) "Y", grouping(region) "R"
    from test_roll
    group by rollup (year, region);
    YEAR REGION SUM(PROFIT) Y R
    1995 Central 100 0 0
    1995 East 200 0 0
    1995 West 200 0 0
    1995 500 0 1
    1996 West 200 0 0
    1996 200 0 1
    700 1 1
    7 rows selected.
    참고) null값이 모든 값의 set에 대한 표현으로 나타내어지면 GROUPING function은
    super-aggregate row에 대해 1을 return한다.
    예제 3: CUBE
    SQL> select year, region, sum(profit), count(*)
    from test_roll
    group by cube(year, region);
    YEAR REGION SUM(PROFIT) COUNT(*)
    1995 Central 100 1
    1995 East 200 2
    1995 West 200 2
    1995 500 5
    1996 West 200 2
    1996 200 2
    Central 100 1
    East 200 2
    West 400 4
    700 7
    위의 내용을 tabular로 나타내어 보면 쉽게 알 수 있다.
    Year Central(A1+A2) East(A1+A2) West(A1+A2)
    1995 (100+NULL) (100+100) (100+100) 500
    1996 (NULL+NULL) (NULL+NULL) (100+100) 200
    100 200 400 700
    예제 4: CUBE and GROUPING()
    SQL> select year, region, sum(profit),
    grouping(year) "Y", grouping(region) "R"
    from test_roll
    group by cube (year, region);
    YEAR REGION SUM(PROFIT) Y R
    1995 Central 100 0 0
    1995 East 200 0 0
    1995 West 200 0 0
    1995 500 0 1
    1996 West 200 0 0
    1996 200 0 1
    Central 100 1 0
    East 200 1 0
    West 400 1 0
    700 1 1
    10 rows selected.
    ===============================================
    HOW TO USE ROLLUP AND CUBE OPERATORS IN PL/SQL
    ===============================================
    Release 8.1.5 PL/SQL에서는 CUBE, ROLLUP 이 지원되지 않는다. 8i에서는 DBMS_SQL
    package을 이용하여 dynamic SQL로 구현하는 방법이 workaround로 제시된다.
    Ordacle8i에서는 PL/SQL block에 SQL절을 직접적으로 위치시키는 Native Dynamic SQL
    (참고 bul#11721)을 지원한다.
    Native Dynamic SQL을 사용하기 위해서는 COMPATIBLE 이 8.1.0 또는 그 보다 높아야
    한다.
    SVRMGR> show parameter compatible
    NAME TYPE VALUE
    compatible string 8.1.0
    예제 1-1: ROLLUP -> 위의 예제 1과 비교한다.
    SQL> create or replace procedure test_rollup as
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    begin
    select year, region, sum(profit), count(*)
    into my_year, my_region, my_sum, my_count
    from test_roll
    group by rollup(year, region);
    end;
    Warning: Procedure created with compilation errors.
    SQL> show errors
    Errors for PROCEDURE TEST_ROLLUP:
    LINE/COL ERROR
    10/8 PL/SQL: SQL Statement ignored
    13/18 PLS-00201: identifier 'ROLLUP' must be declared
    SQL> create or replace procedure test_rollup as
    type curTyp is ref cursor;
    sql_stmt varchar2(200);
    tab_cv curTyp;
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    begin
    sql_stmt := 'select year, region, sum(profit), count(*) ' ||
    'from test_roll ' ||
    'group by rollup(year, region)';
    open tab_cv for sql_stmt;
    loop
    fetch tab_cv into my_year, my_region, my_sum, my_count;
    exit when tab_cv%NOTFOUND;
    dbms_output.put_line (my_year || ' '||
    nvl(my_region,' ') ||
    ' ' || my_sum || ' ' || my_count);
    end loop;
    close tab_cv;
    end;
    SQL> set serveroutput on
    SQL> exec test_rollup
    1995 Central 100 1
    1995 East 200 2
    1995 West 200 2
    1995 500 5
    1996 West 200 2
    1996 200 2
    700 7
    PL/SQL procedure successfully completed.
    예제 2-1: ROLLUP and GROUPING() -> 위의 예제 2와 비교한다.
    SQL> create or replace procedure test_rollupg as
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    my_g_region int;
    my_g_year int;
    begin
    select year, region, sum(profit),
    grouping(year), grouping(region)
    into my_year, my_region, my_sum, my_count,
    my_g_year, my_g_region
    from test_roll
    group by rollup(year, region);
    end;
    Warning: Procedure created with compilation errors.
    SQL> show error
    Errors for PROCEDURE TEST_ROLLUPG:
    LINE/COL ERROR
    12/4 PL/SQL: SQL Statement ignored
    17/13 PLS-00201: identifier 'ROLLUP' must be declared
    SQL> create or replace procedure test_rollupg as
    type curTyp is ref cursor;
    sql_stmt varchar2(200);
    tab_cv curTyp;
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    my_g_region int;
    my_g_year int;
    begin
    sql_stmt := 'select year, region, sum(profit), count(*), ' ||
    'grouping(year), grouping(region) ' ||
    'from test_roll ' ||
    'group by rollup(year, region)';
    open tab_cv for sql_stmt;
    loop
    fetch tab_cv into my_year, my_region, my_sum, my_count,
    my_g_year, my_g_region;
    exit when tab_cv%NOTFOUND;
    dbms_output.put_line (my_year || ' '||my_region ||
    ' ' || my_sum || ' ' || my_count ||
    ' ' || my_g_year || ' ' || my_g_region);
    end loop;
    close tab_cv;
    end;
    Procedure created.
    SQL> set serveroutput on
    SQL> exec test_rollupg
    1995 Central 100 1 0 0
    1995 East 200 2 0 0
    1995 West 200 2 0 0
    1995 500 5 0 1
    1996 West 200 2 0 0
    1996 200 2 0 1
    700 7 1 1
    PL/SQL procedure successfully completed.
    예제 3-1: CUBE -> 위의 예제 3과 비교한다.
    SQL> create or replace procedure test_cube as
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    begin
    select year, region, sum(profit), count(*)
    into my_year, my_region, my_sum, my_count
    from test_roll
    group by cube(year, region);
    end;
    Warning: Procedure created with compilation errors.
    SQL> show error
    Errors for PROCEDURE TEST_CUBE:
    LINE/COL ERROR
    10/4 PL/SQL: SQL Statement ignored
    13/13 PLS-00201: identifier 'CUBE' must be declared
    SQL> create or replace procedure test_cube as
    type curTyp is ref cursor;
    sql_stmt varchar2(200);
    tab_cv curTyp;
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    begin
    sql_stmt := 'select year, region, sum(profit), count(*) ' ||
    'from test_roll ' ||
    'group by cube(year, region)';
    open tab_cv for sql_stmt;
    loop
    fetch tab_cv into my_year, my_region, my_sum, my_count;
    exit when tab_cv%NOTFOUND;
    dbms_output.put_line (my_year || ' '||
    nvl(my_region,' ') ||
    ' ' || my_sum || ' ' || my_count);
    end loop;
    close tab_cv;
    end;
    Procedure created.
    SQL> set serveroutput on
    SQL> exec test_cube
    1995 Central 100 1
    1995 East 200 2
    1995 West 200 2
    1995 500 5
    1996 West 200 2
    1996 200 2
    Central 100 1
    East 200 2
    West 400 4
    700 7
    PL/SQL procedure successfully completed.
    예제 4-1: CUBE and GROUPING() -> 위의 예제 4와 비교한다.
    SQL> create or replace procedure test_cubeg as
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    my_g_region int;
    my_g_year int;
    begin
    select year, region, sum(profit),
    grouping(year), grouping(region)
    into my_year, my_region, my_sum, my_count,
    my_g_year, my_g_region
    from test_roll
    group by cube(year, region);
    end;
    Warning: Procedure created with compilation errors.
    SQL> show error
    Errors for PROCEDURE TEST_CUBEG:
    LINE/COL ERROR
    12/4 PL/SQL: SQL Statement ignored
    17/13 PLS-00201: identifier 'CUBE' must be declared
    SQL> create or replace procedure test_cubeg as
    type curTyp is ref cursor;
    sql_stmt varchar2(200);
    tab_cv curTyp;
    my_year test_roll.year%type;
    my_region test_roll.region%type;
    my_sum int;
    my_count int;
    my_g_region int;
    my_g_year int;
    begin
    sql_stmt := 'select year, region, sum(profit), count(*), ' ||
    'grouping(year), grouping(region) ' ||
    'from test_roll ' ||
    'group by cube(year, region)';
    open tab_cv for sql_stmt;
    loop
    fetch tab_cv into my_year, my_region, my_sum, my_count,
    my_g_year, my_g_region;
    exit when tab_cv%NOTFOUND;
    dbms_output.put_line (my_year || ' '||my_region ||
    ' ' || my_sum || ' ' || my_count ||
    ' ' || my_g_year || ' ' || my_g_region);
    end loop;
    close tab_cv;
    end;
    Procedure created.
    SQL> set serveroutput on
    SQL> exec test_cubeg
    1995 Central 100 1 0 0
    1995 East 200 2 0 0
    1995 West 200 2 0 0
    1995 500 5 0 1
    1996 West 200 2 0 0
    1996 200 2 0 1
    Central 100 1 1 0
    East 200 2 1 0
    West 400 4 1 0
    700 7 1 1
    PL/SQL procedure successfully completed.
    Reference Ducumment
    Note:67988.1

    Hello,
    As previously posted you should use export and import utilities.
    To execute exp or imp statements you have just to open a command line interface, for instance,
    a DOS box on Windows.
    So you don't have to use SQL*Plus or TOAD.
    About export/import you may care on the mode, to export a single or a list of Tables the Table mode
    is enough.
    Please, find here an example to begin:
    http://wiki.oracle.com/page/Oracle+export+and+import+
    Hope this help.
    Best regards,
    Jean-Valentin

  • Different aggregation operators for the measures in a compressed cube

    I am using OWB 10gR2 to create a cube and its dimensions (deployed into a 10gR2 database). Since the cube has 11 dimensions I set all dimensions to sparse and the cube to compressed. The cube has 4 measures, two of them have SUM as aggregation operator for the TIME dimensions the other two should have AVERAGE (or FIRST). I have SUM for all other dimensions.
    After loading data into the cube for the first time I realized that the aggregation for the TIME dimension was not always (although sometimes) correct. It was really strange because either the aggregated values were correct (for SUM and for AVERAGE) or seemed to be "near" the correct result (like average of 145.279 and 145.281 is 145.282 instead of 145.280 or 122+44+16=180 instead of 182). For all other dimensions the aggregation was OK.
    Now I have the following questions:
    1. Is it possible to have different aggregations for different measures in the same COMPRESSED cube?
    2. Is it possible to have the AVERAGE or FIRST aggregation operator for measures in a COMPRESSED cube?
    For a 10gR1 database the answer would be NO, but for a 10gR2 database I do not know. I could not find the answer, neither in the Oracle documentation nor somewhere else.

    What I found in Oracle presentation is that in 10GR2 compressed cube enhancements support all aggregation methods except weighted methods (first, last, minimum, maximum and so on). It is from September 2005 so maybe something changed since then.
    Regarding your question about the results I think it is caused by the fact that calculation are made on doubles and then there is a compression, so maybe precsion is lost a little bit :(. I really am curious whether it is because of numeric (precision loss) issues.

  • Help needed for running Aggregation map for a compressed cube

    Hello everybody,
    I am having problem in running an Aggregation map using a model on a compressed cube. Please find the model and Aggregation map descriptions below.
    ---Model
    DEFINE MYMODEL MODEL
    MODEL
    DIMENSION this_aw!ACCOUNT
    ACCOUNT('NIBT') = nafill(OPINC 0) + nafill(OTHINC 0)
    END
    -----Aggregation Map
    DEFINE MY_AGGMAP AGGMAP
    AGGMAP
    MODEL MYMODEL PRECOMPUTE(ALL)
    AGGINDEX OFF
    END
    While running the aggregate on an uncompressed cube the Model is working fine but when I am trying to aggregate a compressed cube it is throwing me error (String index out of range: -1). I would appreciate if anyone could provide some thought to this problem.
    The cubes has five dimensions apart of ACCOUNT and it is partitioned by PERIOD. I am using Oracle 10g 10.2.0.4.0 with AWM.
    Thanks,
    Vishal
    Edited by: user7740133 on Sep 16, 2008 5:23 PM

    Vishal,
    I am not sure of using composites to run the model but you can limit your dimensions values to some values(which has data) and then run the model on cube_prt_topvar and aggregate the cube using default aggmap. You have to limit all dimensions to all before you run the agggmap.
    I just saw the account model you posted initially. In your scenario you can limit your account dimension to have only three values 'NIBT' 'OPINC' 'OTHINC' and for other dimension to all. Now when you run the model you will not get values aggregated for account but for others you will see the aggregated value. If you would like to aggregate values for account also then I would suggest you to limit all the dimensions to leaf level and then run the model and then aggregate the cube using default aggmap.
    Hope this helps.
    Thanks
    Brijesh
    Edited by: BGaur on Oct 25, 2008 1:10 PM

  • Difference between BW statistcs for a cube and for overall system

    Hai all,
               We have a BW system with a process chain for Bw statistics for the whole system. I made a process chain with DB statistics for one my cube. I am sorry. I have little knowledge of the statistics.
    My question is would be useful to have statistics for the whole system or perhaps a BW statistics cube
    or
    Constructing DB statistics every time when cube is loaded?
    Which one is advantageous and more recommended? I would appreciate if somebody could refer me to some kind of documentation on this topic.
    Thank you very much.

    I'm a little fuzzy on what statistics you are discussing.
    There are Database statistics that are collected on the tables in your BW and there are 'BW Statistics" cubes that contain operational data about what goes on in your BW, how many queries have run, load times, compress times, etc.
    It sounds to me like what you are describing is there is one Process Chain that is loading data to the BW Statistics cubes, and you created another chain that is collecting Database statistics.
    This is just a guess on my part.  What is loaded to the BW Statistics cube is completly different data used for different purposes than database statistics.
    BW Statistics are loaded to InfoCubes that are named  0BWTC_C* .  What Process Types are being used in these two Process Chains - that would clear this up.

Maybe you are looking for

  • HotSpot and Windows 8.1

    I recently purchased and Lenovo Yoga Idea Pad II computer (and tablet) that has Window's 8.1.  I can't get my Galaxy S4 Hotspot to work with it.  It never shows up on my list of available wireless networks.  I have registered the computer and tried t

  • Is there a way to list files that I am working on in a Panel?

    I am evaluating FM9 and MadCap Blaze. Blaze has a feature where I can view all folders and topics in a tree view on the left side of the workspace (they call it Content Explorer). It really helps me stay organized to see the entire tree and I really

  • Pages update not happening

    Pages & Keynote update is not happening ? Pls advise from 1 week message says installing

  • How to set correct date format in OAF when column is Varchar2

    All, We have used personalization to render a couple of fields in OAF and these fields are date fields. However, these fields point to attribute fields which are defined as varchar2 in the VO. We would prefer not to extend the VO to change the data t

  • Cannot start FIMSynchronizationService after applying ServicePack for SharePoint 2013 Server

    Dear all, Yesterday we have applied SP1 for SharePoint 2013 on our SharePoint Farm (1 one server + 1 db server). Unfortunately the FIMSynchronizationService (Forefront Identity Manager Synchronization Service) will not start anymore after applying th