Dynamic Bands on Fact Table measure

I'm trying to create income bands on my fact table, not sure how to go about it or if its possible.
I have a fact table that consists of
Date, TranType, AdvKey, AdvGrpKey, Amount
Each Adviser belongs to an AdvGrp. 
I want to be able to group on AdvKey or AdvGrpKey and have the summed amounts (income) allocated to income bands.
So when I group on Adviser, they will be assigned an income band, ie 0-10k, 10-50k, 50-100k, same applies when the grouping is changed to the Group Level.
The facttable has about 2 million rows.
The income is how much is generated from the advisers and adviser group, so this will change over time.
Can this be done and can it be done dynamically.
I can't think of any way to do it with a dimension, as there is no way to link back to the fact table.
Any ideas on how to solve this would be much appreciated.
Thanks
Jon

Hi Richard,
Thanks for taking the time to respond to my query.
I'm struggling to work out what your query is doing, and how to use it.
So I took your query and replaced bits of it with my data, however the output is not as expected.
While I try to work out what is going on, I'm hoping you happen to read this first, and might be so kind as to throw me a few pointers.
I tweaked my fact table to only have AdvKey now. The parent child relationship is in the DimIFADetails now, which is the Advisor Group level and the Adviser level. The query below is looking at the Advisor Group level.
with
member measures.NewAmount as Measures.Amount * -1
member measures.WTH as (MyGroups.item(Measures.r),Measures.MyRange)
member measures.MyRange as
cstr(round(Measures.NewAmount/10000,0)*10000)+"-"+cstr(round(Measures.NewAmount/1000+1,0)*10000-1)
set MyGroups as
Order(nonempty([Dim IFA Details].[Parent Key].[Adviser Group], Measures.NewAmount)
,Measures.MyRange, BASC)
member measures.r as rank([Dim IFA Details].[Parent Key], MyGroups)
member measures.RangeTot as iif((MyGroups.item(Measures.r-2),Measures.MyRange) = Measures.MyRange ,
Measures.NewAmount +(Measures.RangeTot,MyGroups.item(Measures.r-2)),
Measures.NewAmount)
member Measures.RangeTotal as
iif((MyGroups.item(Measures.r),Measures.MyRange)=Measures.MyRange,
null,Measures.RangeTot)
select {Measures.MyRange,Measures.RangeTotal
, measures.newamount, measures.r, measures.WTH
} on 0,
nonempty(MyGroups,Measures.RangeTotal) on 1
from
[Income and Emails Cube]
My Amount field is negative and shouldnt be so I added a new measure to deal with it now.
Below are the results I am getting
New amount is the summed amount of my adviser groups, the value I wish to put in bands.
The new amount falls in the correct MyRange, so thats good.
But its generating too many MyRange values ie the first six rows and fall into the first MyRange.
Not sure what is going on with RangeTotal.
I put up the other columns hoping it might shed some light, but at this point, I'm a little lost.
I want to be able to switch between showing Advisers and Adviser Groups, and display the bands.
I'm hoping you might hand hold me through this.
Regards
Jon

Similar Messages

  • Calc problem with fact table measure used as part of bridge table model

    Hi all,
    I'm experiencing problems with the calculation of a fact table measure ever since I've used it as part of a calculation in a bridge table relationship.
    In a fact table, PROJECT_FACT, I had a column (PROJECT_COST) whose default aggregate was SUM. Whenever PROJECT_COST was used with any dimension, the proper aggregation was done at the proper levels. But, not any longer. One of the relationships PROJECT_FACT has is with a dimension, called PROJECT.
    PROJECT_FACT contains details of employees and each day they worked on a PROJECT_ID. So for a particular day, employee, Joe, might have a PROJECT_COST of $80 for PROJECT_ID 123, on the next day, Joe might have $40 in PROJECT_COST for the same project.
    Dimension table, PROJECT, contains details of the project.
    A new feature was added to the software - multiple customers can now be charged for a PROJECT, where as before, only one customer was charged.
    This percentage charge break-down is in a new table - PROJECT_BRIDGE. PROJECT_BRIDGE has the PROJECT_ID, CUSTOMER_ID, BILL_PCT. BILL_PCT will always add up to 1.
    So, the bridge table might look like...
    PROJECT_ID CUSTOMER_ID BILL_PCT
    123          100     .20
    123          200     .30
    123          300     .50
    456 400 1.00
    678 400 1.00
    Where for project 123, is a breakdown for multiple customers (.20, .30. .50).
    Let's say in PROJECT_FACT, if you were to sum up all PROJECT_COST for PROJECT_ID = 123, you get $1000.
    Here are the steps I followed:
    - In the Physical layer, PROJECT_FACT has a 1:M with PROJECT_BRIDGE as does PROJECT to PROJECT_BRIDGE (a 1:M).
    PROJECT_FACT ===> PROJECT_BRIDGE <=== PROJECT
    - In the Logical layer, PROJECT has a 1:M with PROJECT_FACT.
    PROJECT ===> PROJECT_FACT
    - The fact logical table source is mapped to the bridge table, PROJECT_BRIDGE, so now it has multiple tables it maps to (PROJECT_FACT & PROJECT_BRIDGE). They are set for an INNER join.
    - I created a calculation measure, MULT_CUST_COST, using physical columns, that calculates the sum of the PROJECT_COST X the percentage amount in the bridge table. It looks like: SUM(PROJECT_FACT.PROJECT_COST * PROJECT_BRIDGE.BILL_PCT)
    - I brought MULT_CUST_COST into the Presentation layer.
    We still want the old PROJECT_COST around until it get's phased out, so it's in the Presentation layer as well.
    Let's say I had a request with only PROJECT_ID, MULT_CUST_COST (the new calculation), and PROJECT_COST (the original). I'd expect:
    PROJECT_ID MULT_CUST_COST PROJECT_COST
    123          $1000     $1000
    I am getting this for MULT_CUST_COST, however, for PROJECT_COST, it's tripling the value (possibly because there are 3 percent amounts?)...
    PROJECT_ID MULT_CUST_COST PROJECT_COST
    123          $1000 (correct)      $3000 (incorrect, it's been tripled)
    If I were to look at the SQL, it would have:
              SELECT SUM(PROJECT_COST),
    SUM(PROJECT_FACT.PROJECT_COST * PROJECT_BRIDGE.BILL_PCT),
                   PROJECT_ID
              FROM ...
              GROUP BY PROJECT_ID
    PROJECT_COST used to work correctly before modeling a bridge table.
    Any ideas on what I did wrong?
    Thanks!

    Hi
    Phew, what a long question!
    If I understand correctly I think the problem lies with your old cost measure, or rather combining that with you new one in the same request. If you think about it, your query as explained above will bring back 3 rows from the database which is why your old cost measure is being multiplied. I suspect that if you took it out of the query, your bridge table would be working properly for the new measure alone?
    I would consider migrating your historic data into the bridge table model so that you have a single type of query. For the historic data each would have a single row in the bridge with a 1.0 BILL_PCT.
    Best of luck,
    Paul
    http://total-bi.com

  • How do I use Derived Table to dynamically choose fact table

    How do I use the Derived Table functionality to dynamically choose a fact table?
    I am using BO XI R2 querying against Genesys Datamart kept in Oracle 10g.  The datamart contains aggregated fact tables at different levels (no_agg, hour, day, week, etc...) I would like to build my universe so that if the end user chooses a parameter to view reports at daily granularity, then the daily fact table is used;  choose hourly granularity, then hourly fact table is used, etc....
    I tried using dynamic SQL in Oracle Syntax, but Business Obljects Universe didn't like that type of coding.
    The tables look something like this:
    O_LOB1_NO_AGG o
    inner join V_LOB1_NO_AGG v on o.object_id = v.object_id
    inner join T_LOB1_NO_AGG t on v.timekey = t.timekey
    Likewise, in the 'hour', 'day', 'week', etc... fact tables, the Primary Key to Foreign Key names and relationships are the same.  And the columns in each O_, V_, T_ fact table is the same, or very similar (just aggregated at different levels of time).
    I was thinking of going a different route and using aggregate aware; but there are many Lines of Business (20+) and multiple time dimensions (7) and I believe aggregate aware would require me to place all relevant tables in the Universe as separate objects, which would create a large Universe with multiple table objects,  and not be maintenance-friendly. I also was going to dynamically choose Line of Business (LOB) in the derived tables, based on the end user choosing a parameter for LOB, but that is out-of-scope for my current question.  But that information sort of points you down the train of thought I am travelling. Thanks for any help you can provide!

    You can create a derived table containing a union like the following:
    select a,b,c from DailyFacts where (@prompt('View'....) = 'Daily' and (<rest of your where conditions here if necessary>)
    union
    (select a,b,c from MonthlyFacts where (@prompt('View'....) = 'Monthly' and (<rest of your where conditions here if necessary>))
    union
    (select a,b,c from YearlyFacts where (@prompt('View'....) = 'Yearly' and (<rest of your where conditions here if necessary>))
    I assume that you are familiar with the @prompt syntax
    Regards,
    Stratos

  • Measure value in intermediate fact table

    Hi I have a schenario where i have a measure in intermediate fact table ( in a many to many relation ship ) and i am not able to handle this.
    I have file summary fact that has file details - names , spaceGB , share details , cost per GB, Total cost of file ( SpaceGB * Cost per GB)
    Share dim that has regular relationship. 
    We have another mapping table (fact) that gives many to many relationship between Shares and Cost Center and there is a allocation percentage associates with a share across different costcenters
    Share        Costcenter          Allocation%
    Share 1     CostCeneter1      50%
    Share 1     CostCeneter2     50%
    everything works fine as long as i dont show allocation % how do i handle allocation % to get cost center cost.

    Hi Vin444,
    According to your description, there is a measure in intermediate fact table which you are not able to handle this in database level, now what you want is showing intermediate fact table measure value, rithg?
    As pey my understanding, you can join the tables based on the intermediate fact table on datasource view. A named query is a SQL expression represented as a table. In a named query, you can specify an SQL expression to select rows and columns returned from
    one or more tables in one or more data sources. So in your scenario, you can join the tables using named query instead of database level.
    http://msdn.microsoft.com/en-IN/library/ms175683.aspx
    http://msdn.microsoft.com/en-IN/library/ms174778.aspx
    If I have anything misunderstood, please point it out.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Tabular: fast patterns for dynamic banding of measures by 'effective date'?

    I've implemented
    http://www.powerpivotpro.com/2012/04/aged-debtorsdynamic-banding-in-dax/ but it's very slow - 5min+ to render a simple excel pivot table that's filtered to 2 invoices from a model that's ~130meg and has around 500k invoice payment
    schedule rows in the largest fact table. Cube deployed to server as opposed to power pivot/excel. I changed some of the logic to get rid of the 'as at' dynamic filtering in the linked blog and use a timeline instead to select all the dates from
    the beginning of time to my effective date, but it's still 30sec+ refreshes.. Just wondering if there's better patterns out there that use v2 dax and are faster. My transposing might've also introduced some inefficient logic because I don't have a central
    'transactional' table to work from.
    My model looks like - [table](relevant columns,...)
    [invoice](invoice date) 1:m [payment schedule](due date, amount due) 1:m [Payment] (payment amt, payment date)
    in words: an invoice is raised. An invoice can be made up of part payments that are due at different times, a payment can be for part or all of a payment schedule.
    The model works for 'as at now' reporting, but I'd like to implement a banded aged debtor report as at a specific date in a way that is usable.
    My current implementation doesn't include all the features and it's already pushing a minute of excel processing for a very filtered subset of data. Don't want to imagine how long it'd take for the full set.
    some data
    -- invoices
    SELECT *
    FROM (Values
    (1,'1 jan 2015'),
    (2,'15 jan 2015'),
    (3,'20 jan 2015'),
    (4,'21 jan 2015')
    ) as t(InvoiceID,InvoiceDate)
    --payment schedule
    SELECT *
    FROM (Values
    (1,1,'1 feb 2015',$100),
    (2,2,'15 feb 2015',$50),
    (3,2,'15 mar 2015',$50),
    (4,3,'20 feb 2015',$50),
    (5,3,'20 mar 2015',$50),
    (6,4,'21 feb 2015',$25),
    (7,4,'21 mar 2015',$25),
    (8,4,'21 apr 2015',$25),
    (9,4,'21 may 2015',$25)
    ) as t(PaymentScheduleID,InvoiceID,DateDue,AmountDue)
    -- payments
    SELECT *
    FROM (Values
    (1,1,'10 Jan 2015',$50),
    (2,1,'11 Jan 2015',$50),
    (3,2,'10 feb 2015',$50),
    (4,4,'25 feb 2015',$50)
    ) as t(PaymentID,PaymentScheduleID,DatePaid,AmountPaid)
    The bands I have are
    BandID Band Label BandStart BandEnd
    1 Future -999999999 -31
    2 Current -30 0
    3 1-30 days 1 30
    4 31-60 days 31 60
    5 61-90 days 61 90
    6 91-120 days 91 120
    7 120+ days 121 999999999
    anything due more than 30 days into the future is 'future', anything due in the next 30 days is current, anything that's due in the past is overdue.
    The 'effective date' filter should exclude any invoices that were raised in after the effective date and exclude any payments made after the effective date.
    expected output:
    Thanks
    Jakub @ Adelaide, Australia Blog

    See if the blog below helps:
    https://cwebbi.wordpress.com/category/dax

  • How to handle 3 different fact tables and measures within a DAX query?

    I am writing a DAX query in DAX studio in Excel against a tabular model that has 4 different Fact tables, but they share the same dimensions. (There's some long story I can't get into here, but unfortunately this is the structure) I want to
    include measures from the 4 fact tables, summarize by the dimensions in a single query output that can be used for a pivot table.  So far I have something like this:
     EVALUATE
    FILTER
        SUMMARIZE
            FactTable1,
            DimensionTable1[Value],        DimensionTable2[Value],
            DimensionTable3[Value],
            Dimensiontable4[Value],
            'dimDateTime'[Month PST],
            DimDateTIme[FiscalYear PST],
            "Measure Score",
            FactTable1[Measure 1],
            "Measure Score 2",
            FactTable1[Measure 2],
        ,Company[CompanyName]="Company ABC" 
    What I want to do is summarize the 3 fact tables by the same dimensions, but I am not sure how to do that within a DAX query.  I am getting an error if I try to include another table statement in the original SUMMARIZE function, even though the FACTS
    do share the same dimension.  Is there an easy way to do this?

    You can use ADDCOLUMNS to add the data from other tables, but you need to use within the SUMMARIZE the fact table that determines the cardinality of the output. If you are not sure (e.g. you project cost and revenues from two fact tables by month and there
    could me months with cost and no revenues, but also months with revenues and no costs), then you should use CROSSJOIN and then FILTER.
    You query might be written as (please note CALCULATETABLE instead of FILTER to improve performance):
    EVALUATE
    CALCULATETABLE (
        ADDCOLUMNS (
            SUMMARIZE (
                FactTable1,
                DimensionTable1[Value],
                DimensionTable2[Value],
                DimensionTable3[Value],
                Dimensiontable4[Value],
                'dimDateTime'[Month PST],
                DimDateTIme[FiscalYear PST]
            "Measure Score", FactTable1[Measure 1],
            "Measure Score 2", FactTable1[Measure 2]
        Company[CompanyName] = "Company ABC"
    Marco Russo http://www.sqlbi.com http://www.powerpivotworkshop.com http://sqlblog.com/blogs/marco_russo

  • Fact table with datetime measure showing #value error while browsing the cube

    Hi All,
    I have a cube with a fact table having datetime measure.
    when I browse the cube, I am able to see the data for all measures except  for the measure with the datetime as datatype.
    Thanks in advance.

    Hi jarugulalaks,
    Actually this forum is to discuss:
    Visual Studio WPF/SL Designer, Visual Studio Guidance Automation Toolkit, Developer Documentation and Help System, and Visual Studio Editor.
    To make this issue clearly, would you mind letting us know more information about this issue? Whether it is the VS IDE issue? Which language are you using? Which kind of app are you developing? Maybe you could share us a screen shot about it.
    But like this case posted by you here:
    https://social.msdn.microsoft.com/Forums/vstudio/en-US/bc2d30b8-a60d-4f0f-a273-b7cf0f5aaed5/value-error-for-datetime-measure-in-ssas?forum=visualstudiogeneral#bc2d30b8-a60d-4f0f-a273-b7cf0f5aaed5
    If it is the SSAS issue, please post this issue to the SSAS forum for dedicated support.
    Best Regards,
    Jack
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Fact table showing incorrect quantity measure

    Hi,
    I have a scenario where i have a fact table with multiple rows and two quantity fields.  My source system holds sales by "package" which can contain any number of components.  The grain of my invoice table is component level.  See
    structure below:
    PACKAGE1
    - Component1 - each package contains 2 of these
    - Component2 - each package contains 1 of these
    So if i am reporting a sale of PACKAGE1, for a quantity of 2 - component1 had a total sales quantity of 4 and component2 has a total sales quantity of 2.  However the package was only sold 2 of, but because of the sum aggregation, i see a total quantity
    sold for PACKAGE1  of 6, but it should only show 2 at that level.  I have looked at semi-additive measures but am unsure of how this would work in this scenario, or which option would work best for me here.
    My fact table has 2 rows, each of which reference the component as one dimension and the package as another dimension.
    As a workaround, I have created a calculation to divide the quantity by the number of package components (so it would show a 1 for each of the component lines in my fact table), but then the sales quantities of the components reported are incorrect.
    What is the best approach for this?  
    Thanks in advance,
    Dom

    Hi Dominic, 
    Thank you for your question.  
    I am trying to involve someone more familiar with this topic for a further look at this issue. Sometime delay might be expected from the job transferring. Your patience is greatly appreciated.  
    Thank you for your understanding and support. 
    Thanks,
    Simon Hou
    TechNet Community Support

  • Fact table is joining with Other table having values for measures

    I have one Fact table named Fact1 where i am going to create some calculation measures based on the values in Table2.
    How should be the physical join between them and the logical join.
    Earlier we had those VALUES in Fact1 only
    Why we created table Table2 is there was bit confusion for the aggregation in Fact1.
    We are bit confused on whether to make Table2 as dimension or Fact as it is having some measures and not having the foreign keys
    How we have to proceed now..!! Please help us!!?

    I have one Fact table named Fact1 where i am going to create some calculation measures based on the values in Table2.
    How should be the physical join between them and the logical join.
    Earlier we had those VALUES in Fact1 only
    Why we created table Table2 is there was bit confusion for the aggregation in Fact1.
    We are bit confused on whether to make Table2 as dimension or Fact as it is having some measures and not having the foreign keys
    How we have to proceed now..!! Please help us!!?

  • Multiple fact tables using one measure

    Hi Experts,
    Multiple fact tables using single measure .For example Measure name is amount . This measure is using 5 fact tables. By using this info , i have to create bmm layer document . In bmm layer documents columns are like logical table name ,column name, logical sourc name . could you please help me out to draft the document ?

    Hi ,
    My question is five fact tables are there, day level two different fact tables , period and week fact tables are there .
    Above all tables are using single measure . how to design these fact tables with measure in bmm layer ?
    Please kindly give reply .
    Thanks in advance.

  • Adding Dimension field ($) in measures (fact) table in logical layer

    Hi,
    I have a field (amount) in the dimension table. I would like to add this field in the fact table at the logical layer. Dimension table and fact table had physical joins. Can I add into fact table and still do aggregation on that field based on the other dimensions linked to fact table. I working on Siebel Analytics version 7.8. Any help would be greatly appreciated.
    Thanks in advance,
    RK

    Check here : How to create a measure from data that is stored in a dimension table
    http://gerardnico.com/wiki/dat/obiee/bi_server/design/fact_table/obiee_measures_dimension
    Cheers
    Nico

  • Constructing Calculated Measures in MDX for different measures using same columns in a fact table

    Hello,
    i have a fact table with 2 columns corresponding to dimensions Dim1, Dim2. In the same table i have 4 other columns Value_Type(int), INT_VALUE(int), FLOAT_VALUE(float), TEXT_VALUE(string). There are a number of measures which are identified by Value_Type and
    depending on their nature could be written in one of the 3 columns (INT_VALUE(int), FLOAT_VALUE(float), TEXT_VALUE(string)) Let's say Measure1 with Measure_Type=1 is age, 2 is account balance and 3 is Name for clarity. There could be other measure types that
    use these 3 same columns for data. So the sample fact table looks like this
    Dim1 Dim2 Measure_Type INT_VALUE FLOAT_VALUE TEXT_VALUE
    10 10 1 25
    10 10 2 2000,34
    10 10 3 John
    10 20 1 28
    10 20 2 3490,23
    10 20 3 Frank
    My task is to write an MDX query for each Dim1, Dim2 combination which returns all 3 measures in the same row. The idea is to construct a calculated member for each Measure that returns value from the right field. For example for Measure1 we take INT_VALUE
    with measure_type=1. The problem is i don't know how to construct MDX query for these calculated members. Can you please help me?
    So my final goal is to write an MDX query that returns all measures in one row for each set of Dim1, Dim2
    SELECT [Measure1], [Measure2], [Measure3] ON COLUMNS,
    NON EMPTY [Dim1].[Dim1].[Dim1].Members*[Dim2].[Dim2].[Dim2].Members ON ROWS
    FROM [Cube]
    Dim1 Dim2 Measure1 Measure2 Measure3
    10 10 25 2000,34 John
    10 20 28 3490,23 Frank

    Hi Kosmipt,
    I would combine the "INT_VALUE", "FLOAT_VALUE" and "TEXT_VALUE" columns into one with STRING data type for the fact table. And there should be one dimension to store the Measure_Type informations. Then in cube, you can write MDX scope for every one of
    "Measure_Type" dimension members. For example,
    scope(
                [Measures].[M]
        [DimMType].[MType].&[1]= CINT([Measures].[M]);                                                                                                                             
    end scope;
    Once the cube is built by the above way, you can write MDX like something like the following to achieve your purpose.
    WITH member [Measures].[Measure1] AS ([DimMType].[MType].&[1],[Measures].[M])
             member [Measures].[Measure2] AS ([DimMType].[MType].&[2],[Measures].[M])
             member [Measures].[Measure3] AS ([DimMType].[MType].&[3],[Measures].[M])
    thanks,
    Jerry

  • Join fact tables with different grain without upsetting measures?

    Say I am a business analyst at a university, and I have two analytical cubes available to me:  an Enrollment Cube and an Admissions Cube.  The Enrollment Cube has a grain of Student and Semester, whereas the Admission Cube has a grain of Student, Application and Semester (a potential student can have more than one application in a semester).  Is there any way for the OLAP developer that makes these cubes to make it so that I can use both cubes' fact tables without messing up their corresponding measures, such that I can create such analyses as the following:
    County
    Semester
    Acceptance Rate (Admission Fact)
    Retention Rate (Enrollment Fact)
    County A
    1
    30%
    88%
    2
    60%
    87%
    3
    42%
    84%
    County B
    1
    90%
    100%

    One suggestion is to create a view that joins the 2 fact tables and then create a cube with measures mapped to the view for analysis purposes.  However, this would be using the measures of the new cube for the analysis.

  • Can a measure map to multiple fact tables

    Hi Experts,
    Can A Measure in an Universe map to multiple fact tables? For example, we have sales detail table by day and store and product, and have sales summary table by day and region and (product) department. We like to create a measure to map to both detail table and summary table. When I run query includes store and product,  the query will automatically use the sales detail table; and query can automatically choose the summary table when it only includes region and department. Our database table could be in  Teradata and Oracle. Can we achieve it and how? If a measure can't achieve this (dimension awareness), what the other option we can have and how to do it?
    Thank you,
    Richard

    Hi Sion,
    After I make the tables incompatible with the dimension objects on different levels, the measure can point to the right table if my query only include Store and Product or only include Region and Department. But in some scenario, the business could ask to include both Store and Region or Item and Department in same query. The current approach doesn't work on this further request. In our database, we have store table including Region with other higher level organization information, Product table including Department with other higher level product information, and we also have separated Region table and Department table. Could we make the objects more flexible u2013 query will be against aggregation sales table if dimension objects in query are only on higher level and will against detail sales table if some of dimension objects are on high level and some on low level? 
    Many thanks,
    Richard

  • How to Synchronize cube measures with relational fact tables?

    Dear all,
    I built a simple analysis cube on Oracle 10g R2 using AWM.
    The problem is when I change in the column associated with a base measure of my cube and then do cube or measure maintenance using the maintenance wizard of AWM, the measure value does not change and does not reflect the changes i made in the fact table.
    Please tell me how to keep the cube measures on sync with the fact table columns
    Thanks for helping

    Hi there,
    if you delete data in your fact table, i would asume that you have to delete the data in the cube, too. This is not done by "maintain cube".
    According to your load strategy you have delelete the old data e.g. for the whole cube or just for a given time data (day/month).
    You can use the dml command "clear" or just search in this forum for "clear cube".
    Maybe this helps you to "synchronize cube".
    If not, the questions would be:
    Is new data loaded in the cube correctly?
    Is updated data loaded in the cube correctly?
    Is data in the cube, which is not present in the fact tables?
    Good luck!
    Ed

Maybe you are looking for