SSAS Cube Only Displays Total Values

cubedimensionfacttablessas

When browsing my cube it shows the correct invoice values by date when I select only a date type (the date table was generated by SSAS with hierarchies), but if I add the customer name it shows the combined value of the invoices for the date period, rather than the total per customer. I expect to see the total value for the customer that month, not the overall monthly total.

Excel Example

My tables are joined with foreign keys and the DSV shows a star schema. A simplified version of the schema is below.

factInvoice
invoicePK
customerFK -> customerPK
dateFK -> datePK

dimDate
datePK

dimCustomer
customerPK

The dimension usage tab shows both dimensions are linked to the invoice table.

dimension usage tab

Please can somebody shed some light on why this is happening? I'm sure I'm missing something pretty basic here! Thanks.

Best Answer

The Customer dimension is joined to the measure group at a non-key granularity. If the Customer Name attribute isn't related to the attribute you join on then data repeats in reports. You need to do one of two things:

  1. Recommended. Change the fact table to have the surrogate key of the dimension. Then change the Dimension Usage tab to join to the key of the dimension.
  2. Change the dimension to change which column is used as the key of the dimension. Make sure the fact table has this column. Fix the Dimension Usage tab to join to the dimension key.