.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

Range dimension - possible with Relative Time Periods?

Posted By:      Posted Date: September 28, 2010    Points: 0   Category :Sql Server
Hi All,

I have a Date_Range dimension with members 7 days, 30 days and 90 days only.
Although all reporting needs could be well address using existing date dimension and
MDX filter or range operator I need a physical Date_Range dimension.

It seems possible to address my requirement (implementing Date_Range dimension) by Handling Relative Time Periods .
The blog post (by Chris) is rather old and I did not find updates on it or recent similar articles.

Please share your thoughts on how best to address this requirement.


Prakash Gautam

View Complete Post

More Related Resource Links

Dimension Range over time

Is there a method for categorizing measures into ranged dimension attributes over time.  Consider the SQL:       SELECT date, sales = SUM(sales), segment = CASE WHEN SUM(sales) BETWEEN 0 AND 99 THEN 0 WHEN SUM(sales) BETWEEN 100 AND 199 THEN 100 ELSE 300 END      FROM tabl1      WHERE date BETWEEN '01/01/1900' AND '12/31/1900'   Date Sales Segment 1/1/1900 100 100 1/2/1900 150 100 1/3/1900 49 0 1/4/1900 175 100 1/5/1900 99 2 … … … Is it possible to apply this logic across a time range?  For example, this is on a daily basis, is it possible to do this on a monthly, yearly basis or for a range like '01/02/1900' - '05/25/1900' at monthly rollup? Month Sales Segment January 999 300 February 1 0 March 500 300 April 199 100 May 99 0 … … … I've done this using keys on the fact table; they aren't dynamic, but aggregate the measures into defined buckets January 1900, February 1900, etc.  My keys on the fact table are at the monthly level.

T-SQL query, average of daily time periods over a date range



I'm building a report in Crystal Reports using a SQL command against a T-SQL 2005 telephony database.

I need to be able to run the query across a given datetime range, 6 months for example and bring back a 5 day display (Mon-Fri) with a group for every 15 minute interval in each day.

The group figures need to contain an average of the amount of calls presented for each 15 minute interval on any day across the whole datetime range, so for example the Monday 10:00 - 10:15 figure would be an average of all calls presented in every 10:00-10:15 range on each of the Mondays that fall within the datetime range.

I've got a query built now that gives total presented figures grouped by these intervals across one week but I can't figure out how to do this average function across a range.

Does anyone have any idea how I'd go about accomplishing this? I'm pretty new to SQL but keen to learn so any pointers on functions to research etc would be very much appreciated.

Thanks alot in advance, Andy.

Query for detail view across one week included below for table/fields etc...



count(DISTINCT Calls.SessionID) as Presented, min(Calls.startDateTime) as DateTime

INNER JOIN QueueDetail
ON Calls.sessionID =  Queues.sessionID
AND Calls.sessionSeqNum =  QueueDet

Time Dimension Enhancement with Business intelligence Issue

Hi all, I want to add a year over year growth using the BI wizard (Time diemsion enhancement) but when I try to add this enhancement via the wizard then this last one has the button next disabled with a waning that says   A time dimension is required to enable this functionality. Ensure that you have a dimension of type Time, that contains at least one hierarchy with a level flagged as a time period. Inspite of the fact that I added that time dimsension with one hierarchy Time hierarchy Calendar Year Calendar Semester Calendar Quarter Time Key(With namecolumn defined as a named calculation that repsents the day with this format  yyyy, dd mm ) Me personaly I have a doubt about the last condition of the warning (with a level flagged as a time period) but I dont know exactly 1. If my doubt is right 2. What shoud I do to enhance the cube in this context using the time dimension enhancement The complexity resides in the simplicity

Unable to get Lastperiods 4 periods in time hierarchy at different levels.

Hi, I am unable to get last 4 periods when the weeks are falling at two different months. Example: The calendarsales contains the following hierachy : Year, HalfYear, Quarter, Month, Week August month contains the following weeks:1033,1034,1035 July month contains the follwing weeks: 1032,1031,1030. So i am selecting the week 1035 and i need last 4 weeks till 1032. But the below qry is returning last 3 weeks 1035,1034,1033. It is unable to retrieve 1032 as it is coming under previous month of July.  Below is the mdx query i am using. **************************************** WITH     SET ORDEREDCAT AS   Order ( [Dim_Product].[ProductDefaultHierarchy].[Category]. MEMBERS ,[Measures].[Sales Units] , BDESC )     MEMBER [Measures].[SalesUnits_L_4WKBP] AS   Sum ( ( {   LastPeriods (4 ,[Dim_RetailerSalesCalendar].[CalendarSales]. CurrentMember ) } ,[Measures].[Sales Units] ) )     SELECT     NON EMPTY {[OrderedCat]} ON 1 ,{ [Measures].[SalesUnits_L_4WKBP]     } ON 0 FROM   [Aroyale] WHERE   {[Dim_Retailer].[Retailer].&[5]}* {[Dim_RetailerSalesCalendar].[CalendarSales].[week].&[1035]} ***************************** Please can any one help me on this. Regards, Srini.

Time dimension not grouping correctly

Hello, I'm new to SSAS but I did some reading and some training already. This is my third cube and I'm having trouble with my time dimension.. - first I browse the cube and drag the year and month to the columns section and it correctly renders only the times to which I have data - then I drag my workstation dimention to the rows section and it's also shows the wks fine. - Then I add my counter dimention to the rows section and it correctly shows up as a sub set of workstations. - The problem: When I drop my value fact it renders different value to each counter but show the same value for ANY time, including future dates. (time dimension generated with SSAS) Let me explain the cube, maybe you have seen something similar or could have some insight. Fact: A hourly based table with counters for my workstations. Columns: Datetime, wksid, counterName, and value (value aggregated by max()) Dimention Workstation: id, name Dimension Time: timeid, date, year, month, semester, etc. Dimension counter: id, countername All columns were connected to the correct related columns in the data source view. Why would the cube fail to correctly aggregate my facts by different dates? Any clue? Please let me know if you need any clarification.. Thanks in advance!

SSAS 2K5 - Server time dimension

Hi, I'm building a cube and I want to add a time dimension. I don't have any time table in my OLTP (Source) database. So I tried to use the wizards from SSAS to create a time (date) dimension. I have choosed the "Server time dimension" one. It did create all what I need with all the hierarchies. But when I tried to add time business intelligence with the wizard, it doesnt see my new time dimension. I have checked if the type was "time" for the dimension and It was ok. So I don't know why the Time intelligence can't see my time table .... btw, I start the Business Intelligence wizard from the cube.   Thanks

Shell Dimension - Not Time based

Hi   I am creating a shell dimension to create a hierarchy.  The idea is we want to know how much revenue we make from new accounts.  So I have created an account dimension and linked that to the Revenue fact.  I also created a Fact linked to the Date and User dims that will show the date the user was created.  By doing this, I was able to create a calculated measure that will show me total revenue, plus the revenue that is only for new players for a specific month: with member NewRev as aggregate( exists(DESCENDANTS([User Account].[User Account].[All], [User Account].[User Account].[User Account Key]) , [Date].[Date - Calendar Month].currentmember , "User Registration") , [Measures].[Revenue])   select {[Measures].[Revenue]  , NewRev} on columns , [Date].[Date - Calendar Month].[Calendar Month].&[201008] on rows from [Revenue] Sorry it is a bit messy, testing at the moment. What I would like to do is create a shell dimensions so I can create a hierarchy that will show new and returning players as members.  It would have an all level, or the user could split the revenue by this dim.  I set things up like the Time calculations shell dim, but am a bit stuck with how to create the mdx so that it will work with any measure. What would I change to do this? Regards Michael

Getting Query Time Out Problem in Particular Dimension?

We are getting query time out problem in particular dimension in SSAS. can any one help on this?  

How big is your time dimension ?

Hi, We have a time dimension which is used by around 90 columns out of 20 tables. We have a fixed time table which started in 1800-01-01 and ends in 2199-12-31. This gives around 150000 members in that dimension. That does hurt the performances and the users complain like why does the time start in 1800 ?. So we created a view a which says give the last 5 years and coming 2 years. Users are happy and the performance is fine. Until one day we added another system. That system has some "strange" dates in it. They are dates like 1900-01-01 ,1901-01-01,1966-02-23, 1995-04-31 but also 2017-01-01, 2019-01-01 or 2022-05-01 or even 2098-03-04. The guy who build the export says : I am not validating but only exporting what the user has entered. The guy who build the import says : I am only importing data and I validate only the type (dates like 2020-03-35 are rejected) So what should I do, make time big again and have angry users and bad performance ? I can make filters so that they won't show up but I don't like losing data and the check reports will fail. I can replace them with another date but I don't like that since I am manipulating data. I can convert them to unknown but I don't like that too. Any other suggestions ? And is a time dimension with 400 x 365 members big ? Constantijn    

Range dimension: how to address this requirement?

Hi All,

Let me describe the requirement using 'FactInternetSales' table.

I have a Date_Range dimension with members 7 days, 14 days, 30 days, etc. To associate this dimension I need
DateRangeKey in the FactInternetSales table but FactInternetSales doen't have TimeKey (it has OrderDateKey, DueDateKey, ShipDateKey).
So how I can calculate DateRangeKey in the FactInternetSales named query using OrderDateKey, DueDateKey or ShipDateKey as they relate to their respective dimension but I need DateRangeKey from TimeKey (I guess OrderDateKey - 7, etc would work instead of TimeKey )?

Without Date_Range dimension I can meet some of my reporting requirement using filter or range operator but not all and for
performance I would like to use Date_Range dimension instead of filter or range.

Any help will be greatly appreciated.


Time Dimension


HI All,


I have seen that in on our cubes, the time dimension is setup as a regular type dimension instead of time. How would it affect the users? What's the process to change it back to time dimension? Please advise..


Thanks in advance.

Add time to time dimension?



I have a time dimension in my cube that I've been using successfully for 2 years. The problem is probably a lack of forecasting in my part, but it stopped at september 30 th 2010 and I don't know how to "add time" to it. It is a table called Dimtime.time and was created automatically by Analysis Services 2005.

time dimension order month


hi guys,

i use this mdx query: "select {[Measures].[NoOfCustomers]} ON COLUMNS,
  Hierarchize(Union({[Occupation].[All Occupation]}, [Occupation].[All Occupation].Children)) ON ROWS
from [loans]
where Tail(Descendants([REPORT DATE].[All Report Date]))"

All Report Date









All Report Date











Thanks in advance


SSAS adding a time dimension and using it



(Using SQL Server 2008 R2)

Im rather new to SQL Server and certainly to SSAS. AT the moment I am working on a project in which I need to implement SSAS on a SQL Server. The database originates from UniVerse and it does not have a time table I can use as a dimension.


I have found a script that will be able to set up the time dimension table, but:

-how do I add it to the database


-how do I make it available to be chosen as a dimension?





Map the start and end datetime fields of an historical dimension to the time dimension and the fact



I have a dimension with some historical attributes and I use start and end datetime fields to save the outdated records. I assume that when the cube is processed, each record in the fact tables is mapped to the matching record in the dimension by using the combination of the key attribute with the start and end datetime fields. My question is how to configure the mechanism so that it will know which field is the datetime field and use it to do the comparisons with the start and end fields?


Time Dimension for YTD using assigned Month and Year integers without Date datatype


Hi, most time dimensions are setup using a base Date field in the fact table, and they have plenty of issues for time analysis as it is. However my fact sales records have the time aspect assigned by pre-calculated periods, because depending on various factors, monthly final invoices are all raised on varying days (usually 2nd friday of month but can change). The monthly period is therefore not a straight calendar month. Probably a very common scenario.

So, the invoicing system already assigns the year (ie 2009, 2010, 2011) and monthly period (1, 2, 3 ... 12 with 3 representing march, even though that might represent 13th march to 9th april) and I want to use those as Time dim so we can do YTD, growth-on-prev-year etc.

It looks like its best to setup 2 Dimensions to link to 2 DataColumns/Attributes in the Fact table (say, FYear and FMonth, both integers). That way I can assigned attribute names like March to key column 3. If I combined them into 1 dimension with both fields making up a single key column, would have to either repeat the month names or link it to another Star schema I believe.

I can use the Add Business Intelligence wizard to make the Dimensions into Time ones instead of regular but I'm still not totally sure if this is the best structure/method and once done, how to use the YTD calcs to show in the cube browser (and my MDX knowle

Compare the values of a measure with reference to a time dimension


Hi experts, i am a novice on Analysis Services and i have this necessity:

I want to create a calculated member that compare the values of a dimension with reference to a time dimension.

Example :

Sales Year 2009   Sales year 2010   %Var

I have found this model of calc below but i not know well Analysis Services.

How can i implement this function? My time dimension named [Tempo].[Anno].[Anno] and my measure named [Measures].[Importo Neg]


// Test for current coordinate being on (All) member.



[<<Target Dimension>>].[<<Target Hierarchy>>].CurrentMember.

ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend