I need some guidance on how to design a cube which I think needs multiple fact tables. The main problem I am facing is how to link the fact tables. I currently have a people based cube used to track head count by organization. I want to add a new data source of people information which tracks project assignment. Later I will also be adding another new source of data for tracking hours. The common factor for all this is tracking people. I will illustrate my current cube in a very basic manner.
FactEmployee : employeeID, employeeName, organizationID, statusID
DimOrganization (parent/child) : organizationID, organizationName, parentOrganizationID
DimEmployeeStatus : statusID, statusName
This simple design gives the basic idea behind our current cube. Users can get a head count by organization and status. No big surprises here.
Next I want to add project assignment information. If this were a separate cube I would probably do something like this:
FactAssignment : employeeID, projectID, assignmentYearMonth, percentAllocated
DimProject : projectID, projectName, projectStatusID
DimProjectStatus : projectStatusID, projectStatusName
There are many other attributes but this shows the basic idea. My goal is to tie these two fact tables together by employeeID so that I could select a particular organization and get all the projects under that organization by finding all the employees who report to that organization. My attempts so far to merge this data result incorrect values for the assignment tables. For example, if I try to query by organization and sum the percent allocated values it shows the sum of all the employees for each list organization. The organization dimension is not linked to the assignment results.
I think I'm missing something basic but I am not sure where to search for guidance. Any tips would be appreciated.