TODATE time series function in OBIEE 11g
Hi,
I have a problem with time series function. I have month level in time dimension hierarchy.
I have used below expression to get month to date results in my reports.
column
expression----> TODATE(fact.measure, hierarchy.Month level);
when i am using this column in my reports it is showing null values. The below error i am getting in view log files
----------------> Converted to null because it's grain is below query's grain
Note: Here i have measures, year,qtr,month,day,shift,hour in single physical table in physical layer.
Is it a problem to have measures and time columns in a single physical table?
Please let me know if you have any solution.
Thanks,
Avinash
Yes, it shud be a prob. Try using seperate tables for fact n timedim
Similar Messages
-
Regarding Time Series Graph in OBIEE 11g
Hi,
I need to create a time-series graph in OBIEE 11g. However, the value for time on the x-axis of the graph automatically comes for days.
Is there any way to change it to hours or minutes?
Thanks,
Naman MisraYes, it shud be a prob. Try using seperate tables for fact n timedim
-
Perf issues with Time series function in OBIEE
Attached is the SQL:
SELECT SUM (T256675.ACTIVITY_GLOBAL2_AMT) AS c1,
SUM (T256675.ACTIVITY_GLOBAL3_AMT) AS c2
FROM X_FINANCIAL_HIERARCHY_DH T610485 /* Dim_X_GLACCT_ALTVIEW_D */,
X_FINANCIAL_HIERARCHY_DH T610414 /* Dim_X_MGMT_ENTITY_D */,
W_GL_ACCOUNT_D T256463 /* Dim_W_GL_ACCOUNT_D */,
W_GL_BALANCE_F T256675 /* Fact_W_GL_BALANCE_F */,
SAWITH3,
SAWITH6
WHERE ( T256463.ROW_WID = T256675.GL_ACCOUNT_WID
AND T256463.X_FIN_HIER1_WID = T610485.ROW_WID
AND T256463.X_FIN_HIER5_WID = T610414.ROW_WID
AND T256675.BALANCE_DT_WID = SAWITH3.c3
AND SAWITH6.c1 = SAWITH3.c1
AND T610414.ACCOUNT_HIER8_NAME = 'Worldwide'
AND T610414.HIERARCHY_SOURCE = 'EntityMgmt'
AND T610485.ACCOUNT_HIER7_NAME = 'Controllable Expenses'
AND T610485.HIERARCHY_SOURCE = 'AltViews'
AND SAWITH6.c3 = '2009 / 11'
AND SAWITH6.c2 >= SAWITH3.c2
The SAWITH3 and SAWITH6 dimensions using time series fuctions are causing a full table scan on W_GL_BALANCE_F and W_GL_ACCOUNT_D . Though we are interested in just getting 2009/11 data; the queries generated by time series function TODATE is taking us against entire W_DAY_D data and is causing several performance issues.
W_GL_BALANCE_F table has index on GL_ACCOUNT_WID and BALANCE_DT_WID.
How can we force to use index on these columns for better performance.
Please advise us on the right approach to improve performance.
SQL for SAWITH3
===========
WITH SAWITH0 AS
SELECT T31328.ROW_WID AS c3, T31328.PER_NAME_FSCL_QTR AS c4,
ROW_NUMBER () OVER (PARTITION BY T31328.PER_NAME_FSCL_QTR ORDER BY T31328.PER_NAME_FSCL_QTR DESC)
AS c5,
T31328.PER_NAME_FSCL_MNTH AS c6,
ROW_NUMBER () OVER (PARTITION BY T31328.PER_NAME_FSCL_QTR, T31328.PER_NAME_FSCL_MNTH ORDER BY T31328.PER_NAME_FSCL_QTR DESC,
T31328.PER_NAME_FSCL_MNTH DESC) AS c7
FROM W_DAY_D T31328 /* Dim_W_DAY_D_Common */),
SAWITH1 AS
SELECT CASE
WHEN CASE SAWITH0.c5
WHEN 1
THEN SAWITH0.c3
ELSE NULL
END IS NOT NULL
THEN RANK () OVER (ORDER BY CASE SAWITH0.c5
WHEN 1
THEN SAWITH0.c3
ELSE NULL
END ASC NULLS LAST)
END AS c1,
CASE
WHEN CASE SAWITH0.c7
WHEN 1
THEN SAWITH0.c3
ELSE NULL
END IS NOT NULL
THEN RANK () OVER (PARTITION BY SAWITH0.c4 ORDER BY CASE SAWITH0.c7
WHEN 1
THEN SAWITH0.c3
ELSE NULL
END ASC NULLS LAST)
END AS c2,
SAWITH0.c3 AS c3, SAWITH0.c4 AS c4, SAWITH0.c6 AS c5
FROM SAWITH0),
SAWITH2 AS
SELECT MIN (SAWITH1.c1) OVER (PARTITION BY SAWITH1.c4) AS c1,
MIN (SAWITH1.c2) OVER (PARTITION BY SAWITH1.c4, SAWITH1.c5)
AS c2,
SAWITH1.c3 AS c3
FROM SAWITH1),
SAWITH3 AS
SELECT DISTINCT SAWITH2.c1 + 5 AS c1, SAWITH2.c2 AS c2,
SAWITH2.c3 AS c3
FROM SAWITH2),
SQL for SAWITH6
===========
SAWITH4 AS
SELECT T31328.PER_NAME_FSCL_MNTH AS c3, T31328.ROW_WID AS c4,
T31328.PER_NAME_FSCL_QTR AS c5,
ROW_NUMBER () OVER (PARTITION BY T31328.PER_NAME_FSCL_QTR ORDER BY T31328.PER_NAME_FSCL_QTR DESC)
AS c6,
ROW_NUMBER () OVER (PARTITION BY T31328.PER_NAME_FSCL_QTR, T31328.PER_NAME_FSCL_MNTH ORDER BY T31328.PER_NAME_FSCL_QTR DESC,
T31328.PER_NAME_FSCL_MNTH DESC) AS c7
FROM W_DAY_D T31328 /* Dim_W_DAY_D_Common */),
SAWITH5 AS
SELECT CASE
WHEN CASE SAWITH4.c6
WHEN 1
THEN SAWITH4.c4
ELSE NULL
END IS NOT NULL
THEN RANK () OVER (ORDER BY CASE SAWITH4.c6
WHEN 1
THEN SAWITH4.c4
ELSE NULL
END ASC NULLS LAST)
END AS c1,
CASE
WHEN CASE SAWITH4.c7
WHEN 1
THEN SAWITH4.c4
ELSE NULL
END IS NOT NULL
THEN RANK () OVER (PARTITION BY SAWITH4.c5 ORDER BY CASE SAWITH4.c7
WHEN 1
THEN SAWITH4.c4
ELSE NULL
END ASC NULLS LAST)
END AS c2,
SAWITH4.c3 AS c3, SAWITH4.c5 AS c4
FROM SAWITH4),
Thanks
Srini PendemHi Srini,
I've had quite a bit of performance issues with ToDate and Ago. I tended to create materialized views on my fact tables that would materialize those values as columns and that way I would avoid having to use the ToDate or Ago functions. Is there any chance you can implement a similar solution and bypass the time series functions entirely?
Just to check, those tables belong to BI Apps, right? If so, you can log an SR about the performance issue since it's an issue with the model that Oracle sold you.
Good luck!
-Joe -
Time series functions in OBIEE
Hi
I am new to OBIEE.
In Report i want to use the AGO function to find the previous quarter revenue
But the AGO function requires time dimension level as shown in following syntax
how should i insert it in the function
Syntax
AGO(expr, [time_level], offset)
Thanks
SravanthiOnce you have day dimension with checked for 'Time dimension'
you can see day dimension in rpd expression builder, once you select the function you'll choose each columns.
for ref:
Check these links
http://gerardnico.com/wiki/dat/obiee/ago
or
http://iniu.net/content/obiee-time-comparison-using-time-series-function-ago
Pls mark as correct -
Using Time Series Functions in Answers 11g
Hi All,
I am using OBIEE v11.1.13, I want to use Time series AGO function in Answers level, its syntax is:
AGO(expr, level, interval)
for level part: should i only give the <name of the level in the hierarchy>, is it compulsary that i should introduce the Hierarchy to presentation layer?
Thanks,
Richafor level part: should i only give the <name of the level in the hierarchy>, is it compulsary that i should introduce the Hierarchy to presentation layer?Hierarchy shud be present at presentation layer so that you can select the level from there and work on Time Series functions in answers.
-
Unable to take 2800 rows in time series chart in obiee 11g --bug in obiee
Hi,
in x axis there are 2800 rows containg timestap values and and y axis it contains values but it shocking that it is not not taking even 2800 rows in charts
thanksHi,
you can find instanconfig.xml file under below path
obiee installed drive:\Oracle\Middleware\instances\instance1\config\OracleBIPresentationServicesComponent\coreapplication_obips1
Just FYI, you can update <chart> conntent under </ServerInstance> look at the <views> tag and put like below..
For example mine is,
<Views>
<Pivot>
<MaxCells>6500000</MaxCells>
<MaxVisibleColumns>100</MaxVisibleColumns>
<MaxVisiblePages>1000</MaxVisiblePages>
<MaxVisibleRows>65000</MaxVisibleRows>
<MaxVisibleSections>25</MaxVisibleSections>
<DefaultRowsDisplayed>500</DefaultRowsDisplayed>
<!--This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager--><DefaultRowsDisplayedInDelivery>75</DefaultRowsDisplayedInDelivery>
<!--This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager--><DefaultRowsDisplayedInDownload>64000</DefaultRowsDisplayedInDownload>
<!--This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager--><DisableAutoPreview>false</DisableAutoPreview>
</Pivot>
<Table>
<MaxCells>6500000</MaxCells>
<MaxVisiblePages>1000</MaxVisiblePages>
<MaxVisibleRows>65000</MaxVisibleRows>
<MaxVisibleSections>25</MaxVisibleSections>
<DefaultRowsDisplayed>500</DefaultRowsDisplayed>
<!--This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager--><DefaultRowsDisplayedInDelivery>75</DefaultRowsDisplayedInDelivery>
<!--This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager--><DefaultRowsDisplayedInDownload>64000</DefaultRowsDisplayedInDownload>
</Table>
*<Charts>*
*<MaxVisibleColumns>20000</MaxVisibleColumns>*
*<MaxVisiblePages>10000</MaxVisiblePages>*
*<MaxVisibleRows>20000</MaxVisibleRows>*
*<MaxVisibleSections>250</MaxVisibleSections>*
*<JavaHostReadLimitInKB>40960</JavaHostReadLimitInKB>*
*</Charts>*
</Views>
<Dashboard>
keep in b/w <views> and </views> xml tag
after that you need to restart bi presentation services. then test it out.
FYI:
Starting/Stoping by individual BI COmponents:(Via OPMN)
=========================================================
stesp to starting bi presentation services alone,
D:\Oracle\Middleware\instances\instance1\bin>opmnctl stopproc ias-component=cor
eapplication_obips1
opmnctl stopproc: stopping opmn managed processes...
D:\Oracle\Middleware\instances\instance1\bin>opmnctl startproc ias-component=co
reapplication_obips1
opmnctl startproc: starting opmn managed processes...
Thanks
Deva
Edited by: Devarasu on Jun 19, 2012 4:54 PM
Edited by: Devarasu on Jun 19, 2012 4:57 PM -
Hi Gurus,
How to implement time series(i.e. year ago,qtr ago,month ago) functions with out using any functions in 10G.
how many types of imports we have in the physical layer.
Thanks,Hi,
Time series functions can be implemented in the BMM layer with a new logical column.
Refer these links to implement
http://allaboutobiee.blogspot.in/2012/03/time-series-functions-in-obiee.html
http://gerardnico.com/wiki/dat/obiee/function_time
mark if helpful/correct..
thanks,
prassu -
Dear BO Gurus,
I am a newbie to business object. I would like to ask are there any ready made time series functions which can be used in the BO Semantic layer (universe).
Like Year to Date, Year Ago. Functions like TODATE and AGO functions found in OBIEE semantic layer (siebel analytics). It was just simple there, I had to use the function on the semantic layer and BI server would raise the query to get the answer.
The syntax was
Todate(measure, time_dim_attribute)
Ago(measure, Time_Dim_Attribute, period)
Thanks & Regards
IshaqDear Gurus,
There is no DB function in oracle to do this (AGO/TODATE).
OBIEE issues time-series queries, in the form of AGO and TODATE. AGO gives you, for example, the value of sales one month ago or one quarter ago, whilst TODATE gives you the total of sales month-to-date, or quarter-to-date, or year-to-date. Both of these time-series functions rely on the existence of a time dimension in your business model and mapping layer, with the period you can refer to in the AGO and TODATE functions being determined by what levels you have in this time dimension.
This eliminates the need to create and store complex time-based
reporting tables.
I would only like to know does the universe designer has this sort of functionality which is present in OBIEE semantic layer. Or I need to create and store time-based reporting tables.
The question can best be answered by some-one has worked on both the BI platforms (OBIEE and BO).
Thanks & Regards
Ishaq -
Time series functions are not working in OBIEE for ESSBASE data source
Hi All,
I am facing a problem in OBIEE as I am getting error messages for measure columns with Time series functions(Ago,ToDate and PeriodRolling) in both RPD and Answers.
Error is "Target database does not support Ago operation".
But I am aware of OBIEE supports Time Series functions for Essbase data source.
using Hyperion 9.3.1 as data source and obiee 11.1.1.5.0 as reporting tool.
Appreciate your help.
Thanks,
AravindHi,
is because the time series function are not supported for the framentation content, see the content of the oracle support:
The error occurs due to the fact the fragmented data sources are used on some Time series measures. Time series measures (i.e. AGO) are not supported on fragmented data sources.
Confirmation is documented in the following guide - Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository > Process of Creating and Administering Dimensions
Ago or ToDate functionality is not supported on fragmented logical table sources. For more information, refer to “About Time Series Conversion Functions” on page 197.
Regards,
Gianluca -
How can you build time series measures in OBIEE without using TODATE AGO fu
How can you build time series measures in OBIEE without using TODATE and AGO function?
Please provide steps to build time series
measures in OBIEE without using TODATE and
AGO function. Dashboard results not storing
in cache when using TODATE and AGO functions.
eventhough its cached users queries not
hitting cache because queries doesn't match
exact date time when using TODATE and AGO
functions. so I want to build queries using
sysdate and some simple calculations. Please
send your inputs/ideas for my questions..
Thanks in AdvanceThis can be using Msum function in answers. Use the following formula, here dollars is my metric. Change the formula based on your metric.
Msum("Sales Measures".Dollars ,2) - "Sales Measures".Dollars
the report will be cached and better performed compared with time series. check ti
- Madan Thota -
How to apply time series function on physical columns in OBIEE RPD
Hi,
I know a way to apply time series function(Ago and ToDate) by using existing logical columns as the source. I have set the chronological key and created time dimension. In the expressiion builder for the same Time Dimension appears at the Top so that we can use its level.
But I couldn't apply a time series function when i have to create a logical column using physical columns. In the expression builder for the same, Time dimension does not appear in the list. Neither can i use any column from the time dimension. Please let me know a way to do it.
Thanks.Time series functions are - by design and purpose - only valid for derived logical columns and not useable inside physical mappings.
If you want / need to do it on a physical level, then abandon the time series functions and do it the old-school way with multiple LTS instances. -
How to use time series functions for this requirement
we are on OBIEE 11g (11.1.1.5)
Any pointers and links are really helpful.
I have a requirement where YTD sales are displayed in a column. We wan to compare that number to what that number was last year at the same time. Tried to use TODATE, AGO and it did not work.
|| used for column seperation below.
ProductGroup || YTD Sales Rev||YTD Sales Rev 1 Year Ago||YTD Sales Rev 2 Years Ago
Climate Solutions || 1.7 mil (1/1/2011 - 7/1/2011) || 1.45 mil (1/1/2010 - 7/1/2010) || 1.15 mil (1/1/2009 - 7/1/2009)
Thanks in advance
kris
Edited by: user566193 on Aug 10, 2011 6:06 PMKris,
Basically you want to combine the 2 time series functions here i.e. TODATE & AGO.
Here you go..
You can create first a YTD logical column in BMM say YTD Sales Rev..Then create another logical column with calculation as AGO(YTD Sales Rev, YEARDIM, 1) or AGO(YTD Sales Rev, MONTHDIM, 12).
Similarly, you create other measures...OBIEE 11g has time series function in Answers as well but I'd say try to create using RPD as you to calculate 1 logical column based on another. Better to push it on RPD side.
Hope this helps -
Use of time series functions with horizontally fragmented fact tables
Hi Guys,
in OBIEE 10g it wasn't possible to use time series functions [AGO, TO_DATE] on horizontally fragmented fact tables. This was due to be fixed in 11g.
Has this been fixed? Has somebody used this new functionality? What the the limitations?
Tkx
EmilHello,
Can you give us some examples for "horizontally fragmented fact tables", we can tell you whether we can do that or not?
Thanks, -
SQL for Time Series Functions AGO and YTD
When we use a time series function such as AGO or TODATE, OBIEE creates 2 physical queries. One query reads the calendar table. The other query reads the fact table without any date filter in the WHERE clause. Then the results of the 2 queries are stitched together. The query on the fact table returns a lot of rows because there is no filter on date.
Is there a way to force OBIEE to put a filter on the date when performing the physical query on the fact table when using AGO or TODATE?
Thanks,
Travis
v11.1.1.6We do have a date filter on the analysis. We need the analysis to show sales for a certain month and sales for that month a year ago, so we use the AGO function. However, it is really slow because it does a physical query on the sales table without filtering on date and then filters the results of that physical query by the dates from the physical query on the calendar table.
-
Drilldowns on measure columns based on time series functions.
Guys,
I am new to OBIEE and i need your Help!! I have a dashbaord report which shows the sales USD for the colums below.
REGION , PRIOR MONTH , CURRENT MONTH PRIOR YEAR , CURRENT MONTH PRIOR YEAR MTD , CURRENT MTD , ACTUALS YTD.
All the measures are logical columns caluculated in the RPD using the Time Series Functions. The dasboard report has a Prompt Calender Date and all the measure values are caluclated based on the date entered in the prompt.
For example if the Calender Date on the prompt is 5/31/2011 then the value for the PRIOR MONTH will the sales for APR-2011 and the value for CURRENT MONTH PRIOR YEAR will be MAY-2010 and so on.
The business requirement is to provide the drill down capability on these measure columns. When i click the sales number on the prior month column it should give me all the detailed transactions for the month of APR-2011 considering the prompt for calender date is 31-MAY-2011.
I have provided drilldowns based on the Navigation using the column interatcion but i am unable to understand how to provide the drilldown on the measure columns using the time series functions to caluclate the sales for PRIOR MONTH. CURRENT MONTH PRIOR YEAR...etc.
Please Help!!!
Thanks,
Sandeep.1. Create an alias fact table (Year Ago) to pull last year value.
2. Extend your fact table to store another measure (last year sales)
3. Based on volume of granular data and query pattern on year ago measures, you may create aggregate fact tables.
hope this helps.
Maybe you are looking for
-
What files do I need to download for NI6025E
We have a program that uses nidaqex.h and nidaq32.lib. The program is written in Borland C++ Builder 2006. Now we need to get the program to work in a newer PC. The old Borland C++ Builder 2006 refuses to install on the newer PC so we planed to use E
-
I use lion 10.7.2 and iPhoto latest version but when I export a slide show when I play it . It plays about half of the slide show and screen become white ? How can I solve it ? Is it bug or my computer problem
-
Query as Web Services!!! What are its uses and why do we need it?
What are its uses and why do we need it.. if other tools like Dashboard and crystal reports and Webi can connect to universe and create reports and Analytics...
-
MacBook has fatal error on startup
Hi, My macbook has just this morning - when I needed to email an assignment to a professor of course - has started to experience fatal errors on startup. The computer starts up normally,and once the desktop has loaded, a dialog comes up saying someth
-
E2010 Public Folder Store on Exchange 2003...
Gents; I have added my first Exchange 2010 Public folder to the Exchange 2003-Exchange 2010 setup. I used the '.\AddReplicaToPFRecursive.ps1 ' script to add it. Toady my users on Exchange 2003 are having trouble seeing new items on those public fol