I have a cube with several fact tables and a dim date. The fact tables have date fields but when I try to deploy, deployment fails because there is no relation between the fact table and any dimensions. Also when I check my dimension usage I don't see any relations detected. I don't understand why the fact table date attributes are not "relating" to the dim date.
When I look within the data source view I see a relationship between the date fields in my fact tables and dim date but no relation in the cube, where should I look to fix it?
You have to check their connection inside the Dimension Usage (2nd tab of a Analysis project). At this point you have to state the relationships between facts and dimensions.
From the solution, double click cubename, then go to dimension usage tab, if you don't see date dimension there, right click somewhere and say add and then follow wizard...
Related
We have a slowly changing dimension ETL package, which reads data from Task table to update DimTask table. The thing is that, we added a new column 'Category' into Task table, and want DimTask to slowly change on it (that is, once the value of 'Category' of one TaskID is changed in Task table, we want to add a new row in DimTask table to record this new value with new start and end date).
So we inert 'Category' into both Task and DimTask table, then we added the 'Category' in advanced editor of the ETL package, as well as the OLE DB Source and Insert Destination. The Error here is that, the advanced editor says 'There must be at least one column of Fixed, Changing, or Historical type on the input of a Slowly Changing Dimension transform.'
We are not sure why this appears, does this mean we have to use the Slowly changing dimension Wizard to go through the process (like choose primary key, which columns are historical) all over again each time we want to update the slowly changing dimension?
Is there any way we could only add this new column? Because we have hundreds of other columns in the table and it would costs lots of time to go through the Wizard again.
Thanks a lot for your help!
Oh we found that the column type of 'Input columns' under slowly changing dimension's advanced editor's 'Input and Output Properties' would be automatically deleted when adding a new column. Once we fill the Column types (especially the Key type), the ETL starts to work.
enter image description here
I need some help and I know I am not the only one to deal with this issue but I am wondering if you might have some ideas on how to handle the situation of comparing two rows of data filling out start and end dates.
To give you some context, we have a huge hierarchy (approx 8,000 rows and about 12 columns wide) that is updated each year. Sometimes the values change and sometimes they don’t. When the values don’t change, then I don’t need to adjust the dates. When the values do change and a new row is added, I need to change the data.
I have attached some fake data to try and illustrate my data. I am building this in MS Access, so I think this is more of a DBA type question that is going to be manipulated via a recordset type method.
In my example I have two tables – Old Table and New Table. In each table there is a routing code field that represents my join field and primary key for this table.
The Old table represents existing data - tblMain. The New Table represents the data to be appended - tblTemp.
To append the data, I have an append query set up in Access. I perform a left join between the Old and New tables, joining on every field and append the rows that are null in the Old table. That’s fine and that is not where my issue is.
What is causing me issue is how to fill out the start and end dates.
So as you can see from my tables, we are running a zoo. Let’s just say for the sake of the argument, our zoo started off pretty simple and has become more sophisticated. We now want our hierarchy to expand out and become a bit more detailed as we are now capturing the type of animal (Level 4) and the native location (Level 5).
As you can see when comparing one table to another the routing codes are the same, so the append query has to have a join on each field. When you do this, you return the Result Table which is essentially the Old and New tables stacked on top of each other. You might think about a Union query but this is going to give me duplicates and I don’t want that.
If you notice in the Result Table there is a Start and End Date. Let’s just say I get the start and end dates via message box that pops up upon the import of the data and is held in a variable. I think there are dates in my real data but still trying to verify this.
So how do I compare (pseudo code for the logic needed)?
• For each routing code:
Compare Levels 1-5
If the routing code is the same but Levels 1 -5 are not the same
fill out the end date of the old record
fill out the start date of the new record
This idea of comparing two records and filling out a data is quite prevalent in my organization but I haven’t found a way of creating the logic that consistently works so any help or suggestions would be appreciated.
Old Table
New Table
Result Table
I have a starting date, and an end date in tableau, is there a way to create a calculated field with all date (months) ranging from my start date to my end date?
If you're just looking for a visual solution, if you place a Month(date) discrete dimension in your columns bar, right click on it and click on 'Show missing values'. That would force nulls to show, e.g.
Although what you have specifically asked for sounds like you're looking to do 'data densification' or 'data padding'. You'd have to think about how that generated data would relate to the existing data.
It might also be easier to create a static file with the month/year in columns and (left) join that to the data set you are using. Then you have something you can reuse. I'd recommend that approach.
I am new to SSAS. Have added a new dimension to cube and when i see under members it shows the value of that columns but under browser section when i drag and drop the dimension it does not display anything
We need more information on what steps you took to get where you're at.
Do you have a relationship between the dimension and measure group?
Did you process the dimension, the cube?
I believe what is happening is that you haven't included a measure in the cube browser so it returned only the report dates which have a value for the "default measure". If you go to the first tab of the cube designer and right click on the cube node above the measure groups list on the left and choose Properties you will see a DefaultMeasure property. You can set that property to choose the measure which is the "default measure" when a user doesn't specify a measure in their report.
However I would recommend just dragging a measure into the cube browser to explicitly tell it to show report dates that have a value in that measure.
I also prefer not setting the DefaultMeasure property and adding the following to the MDX script so that the default measure is always null. That forces users to explicitly add a measure to their pivot so it is clear what they want.
CREATE MEMBER CURRENTCUBE.[Measures].[NullCalc] as NULL
,VISIBLE=0;
ALTER CUBE CURRENTCUBE UPDATE DIMENSION Measures, DEFAULT_MEMBER=[Measures].[NullCalc];
So I have a database schema and now I need to create a Cube for Analysis Services. I am, however, having an issue with one of the columns.
Here is what I did:
1. Create the Data Source
2. Create the Data Source View
3. Create dimensions, and this is where the problem is...
So my database has 10 tables and most of them work fine except for one. One table 'CustomerSatisfaction' has the columns 'year' 'quarter' 'customerSatisfactionValue' and 'productID'. Now when I create dimensions from this table I can't see the 'quater' column.
Basically I use the create dimension wizard but on the 'Select Dimension Attributes' section of the wizard I can't see the 'quarter' column. Any ideas why this is? I really want 'quarter' to be an attribute but it doesn't seem to be working...
Thanks for any help!
Is quarter listed as a column in the data source view?
If so, open up the dimension designer and drag the attribute from the data source view (on the right) to the attribute list (left).
If not, you'll need to fix the dimension query / refresh the table column listing in the data source view.