Using aggregates in AGO function

Hello!
I want to use AGO function that would use aggregates.
Requirements:
I want to be able to make year-to-year comparision, where I compare period based on specific dates
This same year-to-year comparision I want to speed up using aggregated fact tables grouped on months level.
I created aggregated SALES table and aggregated time table (group by month) and it works OK with normal queries. It uses aggregated tables when apropriate (possible)
When I use AGO function it always goes to fact table, which time dimension is at lowest level (i.e. date). How can I force BI server to use monthly aggregated tables in AGO function?
Any tip, workaround?
BI server 10.1.3.2.1
Thank you,
Gorazd
Message was edited by:
gor
Message was edited by:
gor

I tested it and in case of AGO function it goes to detailed fact table SALES instead on agg_sales. Any tips?
Gorazd
Message was edited by:
gor

Similar Messages

  • Using text in AGO function

    Hi guys,
    I have a factless fact (indicator and some textual field) that I need to display for previous year.
    I need somehow to use it in AGO function - I'm getting error message that AGO can only accept aggregated measure.
    Any ideas?

    Great tip! I'll try...Mma - nice to see you back in action :-)...Worked like a charm!
    Message was edited by:
    wildmight

  • Problem using Ago function

    Hi all,
    My problem is that when i use ago function it displays next months value for example first column shows balance of april month and next to it ago column displays balance of the may not march. I am really confused. Please help,
    AGO(SR02BriefIncome.sr02_cube.BALANCE, SR02BriefIncome.timesDim."times Detail", 1);

    Hi Nico,
    Another question in relation to Ago function; I need to get value/balance a year ago which is 12 months ago, and also previous year's last months balances; the problem is that Ago function takes only integer, I have tried to put a variable, Is there is way i can get balances of the previous year's last month because it will be much easier to get it using built-in ago function.
    Also i need help with your answer for thread How to use row values in Presentation or Administration for calculation
    Re: How to use row values in Presentation or Administration for calculation
    "Yes, I forgot this one. Of course, this solution work when you have a pivot column.
    If you talk about period to period comparison, really often I must do a share like this one : ($2-$5)/$5.
    And unfortunately, this is not possible in a calculated item. Is it ?"
    We have a lot of reports with inter-row calculations, we have already used a lot sql model but we would like use answer also. Can u explain it with exact examples or steps.
    thank you again,

  • AGO function in OBIEE to display weekly sales data of this year vs last yea

    All,
    I would to create an analysis that display this year sales numbers vs last year by weekly
    I was able to do this at month level by specifying the offset value to 12 to the AGO function in repository.
    I am not able to do at week level.
    Can someone please help?
    Thanks

    Check the W_DAY_D or W_WEEK_D for number of weeks per year, validate the year/4 then its leap year then 53
    Use this in ago function at <<Number of Periods>>.
    I think you have to go for 53 based on these tables some times 54.

  • How can I use AGO function with aggregates

    I use aggregated table and a detailed table
    I have time hierarchy whose lowest level is date. For sales I
    created year-to-year (YTD) comparision with AGO function. It
    works OK.
    BUT, I want to speed it up, so I used aggregates. I created new
    time table grouped by MONTH and corresponding agg_SALES table. I
    created connections and mapped the fields. It works OK for
    normal queries, that means my queries at month level use
    aggregates. BUT when I add YTD measures or YAGO measure in query, it goes to
    then SALES table whose grain is date.
    How can I force BI Server to use AGO function with aggregates?
    I use OBIEE 10.1.3.4
    Thank you
    Ishaq
    (Question originally taken from ITtoolbox and posted by Gorazd)
    SORRY - THE QUESTION IS IN THE WRONG FORUM
    Edited by: ishaq12 on Nov 19, 2008 12:21 PM

    Hi,
    you can not do it in Administration tool but you can set agregation for that field in Answers (fx->Agregation rule->Sum) and effect should be the same. Note that it may not work properly on Oracle 10g as generated SQL is not 100% recognized, on 11g everything is OK (at least in my case).
    Regards,
    Marko
    Edited by: user10449532 on 2008.11.19 06:29

  • AGO ToDate  function not using aggregates

    I use aggregated table and a detailed table
    I have time hierarchy whose lowest level is date. For sales I
    created year-to-year (YTD) comparision with AGO function. It
    works OK.
    BUT, I want to speed it up, so I used aggregates. I created new
    time table grouped by MONTH and corresponding agg_SALES table. I
    created connections and mapped the fields. It works OK for
    normal queries, that means my queries at month level use
    aggregates. BUT when I add YTD measures or YAGO measure in query, it goes to
    then SALES table whose grain is date.
    How can I force BI Server to use AGO function with aggregates?
    I use OBIEE 10.1.3.4
    Thank you
    Ishaq
    (Question originally taken from ITtoolbox and posted by Gorazd)

    Hi,
    you can not do it in Administration tool but you can set agregation for that field in Answers (fx->Agregation rule->Sum) and effect should be the same. Note that it may not work properly on Oracle 10g as generated SQL is not 100% recognized, on 11g everything is OK (at least in my case).
    Regards,
    Marko
    Edited by: user10449532 on 2008.11.19 06:29

  • Proper use of AGO function

    Dear All,
    I have to report on cubes that have their data aggregated on the day level. Standard reporting works fine. Now I want to do some historic comparison. I therefore created some calculation columns in Administrator, e.g.
    AGO(fact, dim_time.month,1)
    which shall give me the value of the fact just one month (and quarter and year in other columns) ago. If I report this on a daily basis, e.g day, fact, fact_month_ago I can see the report and calculation is correct, fact_month_ago is exactly the sam as fact from one month ago.
    But now I start to aggregate such a report to the month level (in Answers). So the report is month, fact, fact_month_ago. Now, some months are correct some are different. Looking deeper into this I assume this belongs to the number of days in a month. February has 28 days, so in the monthly report 28 lines are aggregated, even for the fact_month_ago table.
    In this case month_ago is January, which has 31 days, but 29 to 31 are not aggregated, as the report goes only from feb 1st to feb 28th.
    In the end the sum of the month_ago calculation is unequal to the sum of the last month.
    Does this mean I cannot use AGO function to calcualte things like that, or is there any trick or other function that would help here ?
    Regards,
    Knut

    You can have problem if you are going in a lower level such as week or date but if you stay on the month level, normally you must have the good result.
    Check here to have an example of this problem:
    http://obiee101.blogspot.com/2009/01/obiee-leap-year-challenge.html
    Otherwise, check your set up:
    http://gerardnico.com/wiki/dat/obiee/bi_server/design/dimension/time_dimension_parameters_for_ago_and_td_functions#timecalender_dimension_design_verification
    See each punt that are listed under the paragraph Time/Calender Dimension Design Verification. A good time dimension is the key for a good result with the time series function.
    Cheers
    Nico

  • SSRS countrow Aggregate error(Aggregate and lookup functions cannot be used in query parameter expressions.)

    Below expression works fine with text box but gives error in dataset expression.
    ="SET FMTONLY OFF select  "+ join(Parameters!Column.Value,",") +" FROM pamcustom.dbo.vw_HFL_HFD_HotfileData INNER JOIN pamcustom.dbo.HFL_HFB_HotFileBatch  on BatchID = HFB_intBatchID where BatchID ="+Parameters!BatchId.Value+"
    and "+Parameters!cmbTranType.Value+" "+ iif(CountRows("DS_Aml_Mnr_Iss_Desc")=Parameters!Mnr_Iss_Desc.count," "," and aml_mnr_iss_desc in "+"('" & join(Parameters!Mnr_Iss_Desc.Value,"','")
    & "')")+iif(CountRows("ds_ReportingCategory")=Parameters!ReportingCategory.count," "," and ReportingCategory in "+"('" & join(Parameters!ReportingCategory.Value,"','") & "')")+iif(CountRows("ds_NAICSubGroup")=Parameters!NAICSubGroup.count,"
    "," and naicsubgroup in "+"('" & join(Parameters!NAICSubGroup.Value,"','") & "')")+iif(CountRows("ds_PortTrading")=Parameters!PortTrading.count," "," and porttrading in "+"('"
    & join(Parameters!PortTrading.Value,"','") & "')")+iif(CountRows("ds_GL_LE")=Parameters!GL_LE.count," "," and gl_le in "+"('" & join(Parameters!GL_LE.Value,"','") &
    "')")+iif(CountRows("ds_coagroup")=Parameters!cmbCoaGrp.count," "," and coagroup in "+"('" & join(Parameters!cmbCoaGrp.Value,"','") & "')")+iif(CountRows("Portfolio")=Parameters!cmbPort.count,"
    "," and portfolio in "+"('" & join(Parameters!cmbPort.Value,"','") & "')")+IIf(IsNothing(Parameters!txtSecID.Value)," "," and secid in ('"+Replace(Parameters!txtSecID.Value,",","','")+"')")+iif(IsNothing(Parameters!minPortFilter.Value)
    and IsNothing(Parameters!MinPort.Value)," "," and portfolio "+Parameters!minPortFilter.Value+Parameters!MinPort.Value)+iif(IsNothing(Parameters!maxPortFilter.Value) and IsNothing(Parameters!MaxPort.Value)," ","
    and portfolio "+Parameters!maxPortFilter.Value+Parameters!MaxPort.Value)+iif(IsNothing(Parameters!minCoaFilter.Value) and IsNothing(Parameters!txtMinCoa.Value)," "," and portfolio "+Parameters!minCoaFilter.Value+Parameters!txtMinCoa.Value)+iif(IsNothing(Parameters!maxCoaFilter.Value)
    and IsNothing(Parameters!txtMaxCoa.Value)," "," and portfolio "+Parameters!maxCoaFilter.Value+Parameters!txtMaxCoa.Value)
    I guess the error " Aggregate and lookup functions cannot be used in query parameter expressions." is because I am using CountRow to ensure that if all values of multi select all selected i will not use that filter in where clause.
    Pls. guide...

    Hi, Include your parameter total count in the dataset for parameter and instead of using countrows() function use the count from dataset in the expression.
    Hope this helps.........
    Ione

  • Error in using aggregate function in Outer Query in Siebel Analytics

    Hi,
    When I am using aggregate function in outer query in Siebel Analytics I am facing error.
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 59111] The SQL statement must include a GROUP BY clause. (HY000)
    Bellow is the code.
    SELECT test1.username saw_0, test1.desg saw_1,COUNT (test2.querydate) saw_2
    FROM (SELECT POSITION.CBL username,
    POSITION.CBP desg
    FROM "CM"
    WHERE (POSITION.BPTCD = 'Marketing')
    AND (POSITION.EDate =TIMESTAMP '1899-01-01 00:00:00'
    ) test1,
    (SELECT users.UN username,
    measures."Query Count" querycount,
    measures."Max Total Time" secs,
    topic.db dashboardname,
    "Query Time".DATE querydate
    FROM "Plan"
    WHERE (topic."Dashboard Name" IN ('DS'))) test2
    WHERE test2.username = LOWER (test1.username)
    AND test2.dashboardname = 'DS'
    GROUP BY test1.username, test1.desg

    Should your query be a valid SQL query?
    I can't think that the query you have would be valid in a SQL plus window.
    Chris

  • Using Aggregate function in queries

    Hi all,
              Please take a look on this query and suggest me why i'm getting the error..
    This is my simple query using aggregate function in it..
    SELECT T1.NAME, T1.DESCRIPTION, SUM(T2.QUANTITY)
    FROM TABLE1 T1, TABLE2 T2
    WHERE T1.ID=T2.ID
    GROUP BY T1.NAME, T1.DESCRIPTION
    Above query added with a sub-query in the select segment..
    SELECT T1.NAME, T1.DESCRIPTION, SUM(T2.QUANTITY), (SELECT AVG(T3.PRICE) FROM TABLE1 TT1, TABLE3 T3 WHERE TT1.ID=T3.ID AND TT1.ID=T1.ID) AV_PRICE
    FROM TABLE1 T1, TABLE2 T2
    WHERE T1.ID=T2.ID
    GROUP BY T1.NAME, T1.DESCRIPTION
    When i add a sub-query which has aggregate function in it, i'm getting the 'ORA-00979: not a GROUP BY expression' error.

    What is your DB Version. Your query works without any issue in my DB. I used WITH clause to create the sample data. The query highlighted in BLUE is the actual query.
    SQL> select * from v$version where rownum = 1;
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi
    SQL> with table1
      2  as
      3  (
      4    select 1 id, 'karthick' name, 'user name' description from dual
      5  ),
      6  table2
      7  as
      8  (
      9    select 1 id, 100 quantity from dual
    10  ),
    11  table3
    12  as
    13  (
    14    select 1 id, 10 price from dual
    15  )
    16  select t1.name
    17       , t1.description
    18       , sum(t2.quantity)
    19       , (
    20           select avg(t3.price)
    21             from table1 tt1
    22                , table3 t3
    23            where tt1.id = t3.id
    24              and tt1.id = t1.id
    25         ) av_price
    26    from table1 t1
    27       , table2 t2
    28   where t1.id = t2.id
    29   group
    30      by t1.name
    31       , t1.description;
    NAME     DESCRIPTI SUM(T2.QUANTITY)   AV_PRICE
    karthick user name              100         10
    SQL>

  • How to use Ago function in BIEE with mysql database

    Hi experts,
    Ago function works well in Oracle database,but when I tried a mysql database,it didn't show results as expected. Anyone knows how to use Ago with mysql as data source?

    Hi Gurus, need help

  • How to use Aggregate Functions during Top N analysis?

    Say i want to find top 5 highest salaries and their totals and average. In that case how to use aggregate functions. Please give me an example on this.
    Regards,
    Renu
    Message was edited by:
    user642387

    Hi,
    Yes, you can do that with aggregate functions.
    First, do a sub-query to retrieve all the salaries (in descending order), then say "WHERE ROWNUM <= 5" in the main query. Use the aggregate SUM and AVG functions in the main query.
    Analytic functions are easier to use for jobs like this, once you get familiar with them. If you're not leaving the field this month, then it's probably worthwhile for you to get familiar with analytic functions.

  • Facing problem while using aggregate functions.

    I am trying to use aggregate functions such as sum, count in my CQL query.
    It is not giving me an error but i am unable to get the correct output out of that.
    Query is:
    <?xml version="1.0" encoding="UTF-8"?>
    <wlevs:config xmlns:wlevs="http://www.bea.com/ns/wlevs/config/application"
    xmlns:jdbc="http://www.oracle.com/ns/ocep/config/jdbc">
    <processor>
    <name>APL_EFW_CostEvent_Processor</name>
    <rules>
         <view id="CostEventView"
              schema="eventName eventType eventId opportunityStatusId opportunity_cost APL_Event_Inbound"><![CDATA[
                   SELECT      X.eventName, X.eventType,
                        X.eventId, X.opportunityStatusId,
                        X.opportunity_cost,X.APL_Event_Inbound
                        from APL_EFW_Master_Inbound_Channel
                        XMLTable (
                             '/' PASSING BY VALUE APL_EFW_Master_Inbound_Channel.APL_Event_Inbound as "."
                        COLUMNS
                             eventId char(256) PATH 'fn:data(Event/EventHeader/eventId)',
                             eventName char(256) PATH 'fn:data(Event/EventHeader/eventName)',
                             eventType char(256) PATH 'fn:data(Event/EventHeader/eventType)',
                                  opportunityStatusId char(256) PATH                               'fn:data(Event/ApplicationDataArea/opportunity/opportunity_details/opportunity_status)',
                                  opportunity_cost char(256) PATH                               'fn:data(Event/ApplicationDataArea/opportunity/opportunity_details/opportunity_cost)',
                                  APL_Event_Inbound xmltype path '/'
                        ) AS X
                   ]>
         </view>
    <query id="CostEventQuery">
              <![CDATA[
                   SELECT
                        XMLELEMENT("opportunity",
                             XMLELEMENT("cost_opportunity",
                                  XMLFOREST(X.opportunity_cost))) as APL_Event_Inbound
                             FROM CostEventView
                             MATCH_RECOGNIZE (
                             MEASURES
                                  A.opportunity_cost as opportunity_cost
                                  PATTERN (B A+) within 30000 milliseconds
                                  DEFINE
                                  A as sum(A.opportunity_cost)> 1000                    )
                        as X
              ]]>
              </query>
    </rules>
    </processor>
    </wlevs:config>
    The problem i am getting is when the value is getting compared with the opportunity cost rather than with the sum of oppCost
    A as sum(A.opportunityCost)>1000
    A as A.opportunityCost >1000
    Both the cases are treated as same .

    It would help if you could provide sample input data and associated output that illustrates the problem

  • Problem while using aggregate functions in EJB QL 2.1

    Hai all,
       I am using aggregate function as follows
       select max(c.id) from customer as c
      for this iam selected check box EJB QL 2.1 in persistent.xml
      this is validated by nwds, but while deploying server raising error like ejb ql syntax error.
      Actually according to EJB QL 2.1 this is a valid query, what i need to do for run this same query .
      Anybody please help me in this regard
    Regards
    Somaraju

    Beevin
      Both two are not even validated,
      but with the first one as select max(c.id) from customer as c , in this case it is validated but while deploying it is error as , object must be return
      But when i saw  the ejb2.1 specification we can write this type of queries also ?
      Is it problem with was any thing
    Regards
    Somaraju

  • Error while using Ago function

    hi all,
    OBI 11.1.1.7.1
    I am unable to view data on result tab. No value returned in Calcutated Attribute. Please Help
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 22040] To use Ago function, the storage level of the query ('[Time Dim.PAY_DT]') must be a static level.Please have your System Administrator look at the log for more details on this error. (HY000)
    Regards,
    Nivedita

    Substr("Fin Account".ASSET_NUM, 1, instr(Fin Account".ASSET_NUM, ':')+1)
    or
    Substr("Fin Account".ASSET_NUM, instr(Fin Account".ASSET_NUM, ':')+1,50)
    i think you should use 3 parameters, did you try that if it would work?
    additionally check what is the default format of your data: go to column properties -> data format; if its text then ok; otherwise you will have to cast the number to char; in such a case the above could be:
    Substr(cast("Fin Account".ASSET_NUM as char(20)), 1, instr(cast(Fin Account".ASSET_NUM as char(20)), ':')+1)
    or
    Substr(cast("Fin Account".ASSET_NUM as char(20)), instr(cast(Fin Account".ASSET_NUM as char(20)), ':')+1,50)
    Edited by: UserMB on Jun 25, 2009 6:17 AM

Maybe you are looking for

  • FI661 Maintain default revenue element in controlling in SD

    Hello, I would like to ask you for a little help. We are trying to post down payment (document type FAZ) in SD module. During saving of FAZ document we got error message with actualization. In transaction SM13 we found, that error is caused in functi

  • Flash starts, some browers quit loading. Flash left blank.

    The Flash file loads, but the contents of that file aren't loading by some browsers. Primarily seems to be an issue with Safari, Chrome, and FireFox, mostly on macs. The browser simply stops loading the file after it starts, and it is then left blank

  • Backgrounds.swf, what is it and how to create?

    It had been a while since I played with Flex Style Explorer app, so I was messing around with the backgrounds and it inserts the code Application { backgroundImage: Embed(source="assets/backgrounds.swf#retroFifties"); If I wish to use this, how do I

  • FB4 Beta 2: Stopped working today. Is that intentional?

    Hello, I have 47 days left on my beta2. It worked yesterday, but not today. Is that intentional?

  • Jdeveloper 9i - Debugger Question

    Some more info: 1> I start java in debug mode set PATH=d:\jdev9i\jdk\jre\bin;%PATH% cd d:\jdev9i\j2ee\home java -ojvm -XXdebug,detached,port4000 -jar oc4j.jar 2> You'll see the following message: *** Port is 4000 *** *** Connect debugger anytime for