Hi,
I have an SSAS cube that queries a DW to return property repair data. Currently the cube focuses on repair data (costs) and appointment data (number of appointments, number overdue etc). There is naturally a 1:M relationship between orders and appointments.
The cube is set up as follows:
---------- DimEmployee
/
FactOrders<------------------ DimOrder <------------ DimProperty
/ \
/ ---------- DimDate
/ /
/ /
FactAppointments <--- DimAppointment <
The dimension usage is as follows:
<o:p> </o:p> | Measure Groups | <o:p> </o:p> |
Dimensions | Fact Orders | Fact Appointments |
Dim Order | Order Number Key | Order Number Key |
Dim Appointment | <o:p> </o:p> | Appointment Key |
Dim Date (Order Issued Date) | Dim Order (referenced) | Dim Order (referenced) |
Dim Date (Order Target Completion Date) | Dim Order (referenced) | Dim Order (referenced) |
Dim Date (Order Completed Date) | Dim Order (referenced) | Dim Order (referenced) |
Dim Date (Appointment Assignment Start) | <o:p> </o:p> | Dim Appointment (referenced) |
Dim Date (Appointment Assignment End) | <o:p> </o:p> | Dim Appointment (referenced) |
Dim Date (Appointment Target Date) | <o:p> </o:p> | Dim Appointment (referenced) |
When I query the cube via Excel and use the order completed date dimension (for example) to "filter" the resutls, I can see the results for both measure groups "filtering" as expected (e.g. if I select July 2018 completions, I will see FactOrders results for those orders, plus all corresponding appoinements from FactAppointments.
I want to do the same but in reverse i.e. query an appointment completion date (Appointment Assignment Start) and see both measure groups "filtering" as above. I assume I will need to add a referenced relationsip to DimAppointment on the Appointment Assignment Start/End/Appointment Target dimensions under FactOrders, however as there is no relationship in the DSV between (I believe) FactOrders and DimAppointment I am unable to do this?
I have tried to establish a relationship between FactOrders and DimAppointment but this creates a 1:M relationship where FactOrders is on the "one" side of the relationship. I am therefore unable to actually create any relationships as I get the following error (which I assume is down to the 1:M relationship):
"The 'Assignment Start Key' intermediate granularity attribute of the 'Dim Appointment' measure group dimension does not have an attribute hierarchy enabled."
I have checked the dimension itself and the key in question does have attribute hierarchy enabled, although I have not defined any actual hierarchies within DimAppointment (don't think I need to?).
I am at a loss as to how to define a relationship between FactOrders and DimAppointment - any suggestions?