Dimensional model design for multiple relations btween a fact and dimension
Hi,
I'm new here, sorry if I ask dummy questions.
I need to develop a dimensional datamodel to create some reports. The initial model has a transaction table. A transaction can be related to one or more customers, because of that the there is a customer_id column, but it can contains more id's, separated by commas. The customer table is standard : id/ name/etc.
I need to create a report (I'm using OBI 10g if this is relevant) to show all the transactions related to a customer (prompt) and the report must contain the some transaction details, the id's of all customers related to that transaction and their names.
For example, if I have a transaction with tranz_name = 'transaction_name' and customer_id = '1,2,3' and I need to select all the transactions related to customer 1, I need to show in the report :
'transaction_name' , '1,2,3' , 'Customer_1, Customer2, Customer_3'.
How can I design the dimensional datamodel to have support for this report? I was thinking to create an additional "cust_id" column in the fact table and for the above transaction to load 3 records in the fact table, by filling the cust_id with only one id (the PK of the fact table will be transaction_id + cust_id). But I have 2 problems :
a) How can I create the "CustomerNames" column in the report?
b) How can I select unique transactions if "all customers" is selected in the prompt?
Thanks in advance for your help