views:

316

answers:

3

Hello!

I have a fact table that has a column with dates loaded from an MS Access source. The thing is, some of the values are NULL and the SSAS won't let me refer my DATE dimension to it.

Is it better to solve it at the SSIS stage or is there some solution at the SSAS?

Thank you very much for you help.

+8  A: 

Best practice is not to have any NULL values in a Fact table.

Instead, create a MAX date in the Date dimension table (or an 'UnknownValue', usually -1) and key to that.

Mitch Wheat
The purpose of Dimensional Databases is that there should be no NULL values so that they can always INNER JOIN (fact and dim tables)
adolf garlic
+1  A: 

Each member of a hierarchy has a property "HideMemberIf". Setting this to "NoName", should hide the null values from the Dimension Browser and allow processing of the cube.

Also you could created Named Calculations in the Datamart View. The Named Calculation would use the ISNULL function, which can fill in values in place of nulls. Then of course build your Time Dimension off of these Named Calculations instead of the raw data fields.

Again, it's better not to have any nulls in your data altogether, but you can usually fix this inside the Cube.

derby
+2  A: 

Sometimes it is undesirable for non-technical reasons to fix the nulls in the DSV or source system. In that case you can use the unknown member and null processing properties to work around this issue:

http://technet.microsoft.com/en-us/library/ms170707.aspx

I have done this when trying to highlight the data qualities problems or for fast prototyping purposes.

JasonHorner