Value based reports

Hi friends,
I have column which contains 3 values , ex :Column A contains values 1,2,3.
and i have 3 reports.like Rep1,Rep2,and Rep3.
If i click on value 1 , it should go to Rep1........
How can i give?
Thanks....

Chaitanya wrote:
Hi friends,
I have column which contains 3 values , ex :Column A contains values 1,2,3.
and i have 3 reports.like Rep1,Rep2,and Rep3.
If i click on value 1 , it should go to Rep1........
How can i give?
Thanks....Not sure if 11G lets you do this out of the box but in 10G There is two approaches (should work in 11G) :
1) Create a case statement on the values and construct a GOURL path to the target reports, format the column as HTML and the values will be presented as a hyperlink.
2) Put the three target reports in a seperate sections on a dashboard page , create a dashboard prompt to select which report you want , follow this guide to dynamically show the report section based on the value in the dashboard prompt and pass the correct value to the prompt using GOURL : http://obiee101.blogspot.com/2010/07/obiee-using-prompt-as-report-selector.html
Neither approaches are that elegant, cant you just give all three choices to the end user via nav links and let them choose which one they want to navigate to? Much easier, out of the box and easier to maintain.

Similar Messages

  • Value based reporting

    Hi,
    I have a data target and one of the field is "FLAG" along with chars and key figures. I have the report too on top of it.
    The Flag field will have two values "N" and "C" . Here is "N" means not changed and "C" means changed. I want to send the report ONLY when that flag having value "C". If there is no records with "C", the report should not send to user.
    Could you please share your thoughts on this ..???
    Nandan

    Hi Nandan,
    When you publish the query and select send email, in the last tab, there is a setting for filters. In that tab select the flag characteristic and set its value as C.
    Hope it helps
    Regards
    Yasemin...

  • How exclude values based on text in web report

    hi ,
    i wanted some clarifications
    how to exclude values based on text in web report.

    hi ,
    we had following  requirement.
    in web reprot we had sales group as a drill down.
    now our client wants we can restict sales group values  based on text.
    like  11 -  XXXX.
    here 11 key value and xxxx is the text.
    as of now we can restrict values based on key values.
    but client wants we can restrict values based on text.
    if you have any ideas on that plz let me know.
    Regards,
    Murali

  • Multiplying 2 values based on an If statement in SSRS reports

    I am working on a pretty complicated report, and I am unable to get the values to multiply correctly on one line.  The expression is simple, if the value in textbox293 is greater then the value in textbox294 then multiply textbox293 by textbox289 else
    multiply textbox294 by textbox289.  
    In SSRS terms IIF(textbox293.value > textbox294.value, textbox293.value * textbox289.value, textbox294.value * textbox289.value)
    I am using the actual formulas that I used to get the values, they have a nested IIF statement to return 0.00 if the value is less < 0.  I am also rounding to 6 decimal places on 1 value to ensure I get the correct value out to 4 decimal places.
    I have checked all of the value on the report up to this point are correct, and are displaying correctly.  I have broken apart my IIF statement to make it easier to read: 
    =IIF(IIF((Sum(Fields!RSR_MIN_2.Value, "Revenue") + IIF((Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance"))
    * (Sum(Fields!RGF_MIN_2.Value, "Revenue") / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"))< 0, 0.00, (Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value,
    "End_Fund_Balance")) * (round(Sum(Fields!RGF_MIN_2.Value, "Revenue") / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"),6))))/(First(Fields!WADA2011_1.Value, "Second_Year_Preceeding_WADA")) < 0, 0.00, (Sum(Fields!RSR_MIN_2.Value,
    "Revenue") + IIF((Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance")) * (Sum(Fields!RGF_MIN_2.Value, "Revenue")
    / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"))< 0, 0.00, (Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance"))
    * (round(Sum(Fields!RGF_MIN_2.Value, "Revenue") / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"),6))))/(First(Fields!WADA2011_1.Value, "Second_Year_Preceeding_WADA"))) 
    >
     =IIF((Sum(Fields!RSR_MIN_1.Value, "Revenue") + IIF((Sum(Fields!SR_MINUS_1.Value, "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(Sum(Fields!RGF_MIN_1.Value,
    "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"))< 0, 0.00, (Sum(Fields!SR_MINUS_1.Value, "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(round(Sum(Fields!RGF_MIN_1.Value,
    "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"),6)))) / (First(Fields!WADA2012_1.Value, "Second_Year_Preceeding_WADA")) < 0, 0.00, (Sum(Fields!RSR_MIN_1.Value, "Revenue") + IIF((Sum(Fields!SR_MINUS_1.Value,
    "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(Sum(Fields!RGF_MIN_1.Value, "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"))<
    0, 0.00, (Sum(Fields!SR_MINUS_1.Value, "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(round(Sum(Fields!RGF_MIN_1.Value, "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"),6))))
    / (First(Fields!WADA2012_1.Value, "Second_Year_Preceeding_WADA")))
    IIF((Sum(Fields!RSR_MIN_2.Value, "Revenue") + IIF((Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance")) * (Sum(Fields!RGF_MIN_2.Value,
    "Revenue") / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"))< 0, 0.00, (Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance"))
    * (round(Sum(Fields!RGF_MIN_2.Value, "Revenue") / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"),6))))/(First(Fields!WADA2011_1.Value, "Second_Year_Preceeding_WADA")) < 0, 0.00, (Sum(Fields!RSR_MIN_2.Value, "Revenue")
    + IIF((Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance")) * (Sum(Fields!RGF_MIN_2.Value, "Revenue") / First(Fields!RGF_MIN_2.Value,
    "Rev_Code5899"))< 0, 0.00, (Sum(Fields!SR_Minus_2.Value, "Certificated_Exp") - First(Fields!RSR_MIN_2.Value, "Rev_Code5899") - First(Fields!End_Fund_min2.Value, "End_Fund_Balance")) * (round(Sum(Fields!RGF_MIN_2.Value,
    "Revenue") / First(Fields!RGF_MIN_2.Value, "Rev_Code5899"),6))))/(First(Fields!WADA2011_1.Value, "Second_Year_Preceeding_WADA"))) * (first(Fields!WADA2013_1.Value,"Second_Year_Preceeding_WADA"))
    IIF((Sum(Fields!RSR_MIN_1.Value, "Revenue") + IIF((Sum(Fields!SR_MINUS_1.Value, "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(Sum(Fields!RGF_MIN_1.Value,
    "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"))< 0, 0.00, (Sum(Fields!SR_MINUS_1.Value, "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(round(Sum(Fields!RGF_MIN_1.Value,
    "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"),6)))) / (First(Fields!WADA2012_1.Value, "Second_Year_Preceeding_WADA")) < 0, 0.00, (Sum(Fields!RSR_MIN_1.Value, "Revenue") + IIF((Sum(Fields!SR_MINUS_1.Value,
    "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(Sum(Fields!RGF_MIN_1.Value, "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"))<
    0, 0.00, (Sum(Fields!SR_MINUS_1.Value, "Certificated_Exp")-first(Fields!RSR_MIN_1.Value,"Rev_Code5899")-first(Fields!End_FundMinus1.Value,"End_Fund_Balance"))*(round(Sum(Fields!RGF_MIN_1.Value, "Revenue")/first(Fields!RGF_MIN_1.value,"Rev_Code5899"),6))))
    / (First(Fields!WADA2012_1.Value, "Second_Year_Preceeding_WADA"))) * (first(Fields!WADA2013_1.Value,"Second_Year_Preceeding_WADA")))
    A screen shot of the report:
    The value in the bottom box should be: 37,080,118.75
    I have tried:
    =IIF(ReportItems!Textbox293.Value > ReportItems!Textbox294.Value, ReportItems!Textbox293.Value * ReportItems!Textbox289.Value, ReportItems!Textbox294.Value * ReportItems!Textbox289.Value) and I get a scope error.
    I have also tried 
    =IIF(CDbl(Fields!Textbox293.Value) > CDbl(Fields!Textbox294.Value), CDbl(FieldsTextbox293.Value) * CDbl(Fields!Textbox289.Value), CDbl(Fields!Textbox294.Value) * CDbl(Fields!Textbox289.Value))
    I get the same scope error, part of the problem here is that in order to get things to display correctly each row in this section of the report is a different table
    Row1 = tablix19
    Row2 = tablix20
    Row3 = tablix21
    Any help here would be great

    Hello,
    In your case, we can try to use Report Variables to resolve the issue. In SSRS, when we have a complex calculation we can create a variable in the report. Variable can be used more than once in a report. Please refer to the following steps:
    Open Report Properties dialog box.
    Click Variables in the left pane. Then, add specific variable.
    (Note: Suppose we have create two variables: textbox293, textbox294)
    After that, we can use following expression to calculate the effect:
    =IIF(Variables! textbox293.Value > Variables! textbox294.Value,
    Variables! textbox293.Value * ReportItems!Textbox289.Value,
    Variables! textbox294.Value * ReportItems!Textbox289.Value)
    Reference:
    Report and Group Variables Collections References
    If the issue is persist, please feel free to let me know.
    Regards,
    Alisa Tang
    If you have any feedback on our support, please click
    here.
    Alisa Tang
    TechNet Community Support

  • How can I use Server level variables in a business model based report

    hi gems..
    I have declared one server level variable in the BI Analytics repository.
    Now I have made one business model based report.
    In one column I want to use that server level varible.
    I go to the formula tab of that column and then clicked on variable--> session --> put the name of the variable and click ok.
    But when i viewed the report, it is not showing the dates, rather it is showing the date format I chosed i.e DD-MMM-YYYY.
    please help..

    actually the previous problem got resolved...
    Now when I am trying to apply a filter on a particular column using that server variable, then it is showing that the varible has no value definition.
    I have clicked on the filter tab of that column-->add-->variables-->session variables-->then I put the name of the variable-->click OK.
    the following error is comming-
    Error Codes: YQCO4T56:OPR4ONWY:U9IM8TAC:OI2DL65P
    Odbc driver returned an error (SQLExecDirectW).
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 23005] The repository variable, Variable_name, has no value definition. (HY000)
    I have made that server variable from manage-->variables-->(right click) create new initialisation block-->gave the name and wrote the query and aslo gave the connection pool name and test that and it worked fine..

  • Problem using default value of report parameter 1 to validate parameter 2 passed in to report

    I am having a problem with an SSRS report using the default value of report parameter 1 to validate parameter 2 passed in to report (via C#) instead of using the value of parameter 1 that is also passed into the report.  Here are the
    simplified details:
    Using SSDT, SQL Server 2008 R2
    SSRS report has 2 parameters:
    P1 -- text, hidden, default value 'R1', ... front-end C# code can pass 'R2' or 'R1'
    P2 -- text, allows multiple values, list of available values provided by stored procedure (sproc_list) that takes P1 value as a parameter.  Hence, sproc_list either provides a list for P1 = 'R1' or P1 = 'R2'.
    List for P1 = 'R1' is 'A', 'B', 'C'
    List for P1 = 'R2' is 'A', 'B', 'D'
    Values for P1 and P2 can be passed in via C# to the report.
    The C# front-end displays 2 report choices to the user, R1 and R2, where both choices call the same RDL; but choice R1 passes in 'R1' for P1, and the choice R2 passes in 'R2' for P1.
    Upon a users 1st time use of the report no parameters are passed in.  Then when the user exits the report, the parameter value for P2 that was chosen is saved off to a file for R1 or R2, and used the next time the user selects the report.
    Everything always works fine for report R1 since the default value for P1 is 'R1'.
    When R2 is chosen and the user selects 'D' as the value for P2, runs the report, then exits, the P2 value of 'D' for R2 is saved to a file.  When the user returns the next day to run report R2, 'R2' is passed for P1, and 'D' is passed for P2.
    This is when the problem occurs.  The value of 'D' for P2 is validated against a list generated for P2 based on the default value of 'R1' for parameter P1.  Hence, SSRS considers 'D' an invalid value for P2 and blanks out the P2 parameter. 
    The user can then use the drop down list for P2 and choose 'D', but this defeats the purpose of saving the parameter values to be used the next time.
    Why is the stored procedure that provides a list of available values for parameter P2 using the default value of 'R1' for parameter P1 instead of using the value of 'R2' passed into the report for parameter P1?

    Hi Tom,
    Sorry for my delay.
    If I understand correctly, you have two parameter in your report. It is a couple of cascading parameter. If we have choose ‘R1’ of P1, the P2 values is A, B, C. ‘R2’ of P1, corresponding P2 values is A, B, D. What your requirement is to save the end use
    select option of these two parameters.
    In SSRS, if we have configure the parameter with default value. When we run the report, the parameter will fill with the default value to filter data. If we want to save the last status we are render the report, we need to update the default value of P1.
    If we are query the default value from database, if possible, we can
    update the database try to resolve the issue.  Alternatively, we can set the dynamic default value for the parameter.
    Hope this helps.
    Regards,
    Alisa Tang
    Alisa Tang
    TechNet Community Support

  • Ajax based report and pagination

    Hi I have searched through the web for ajax based report in Apex. I have found the following link as very useful. http://apex.oracle.com/pls/otn/f?p=31517:98
    Here content of one page is pulled to the current page. It works fine. Pagination is also working exactly as the Apex reports. But I was thinking of something different, not pulling the content from other page. I have done it myself as follows.
    1. Take an HTML region called Parameter
    2. Take a select list in the parameter region with LOV query
    name : P2_DEPTNO
    LOV : Select dname d,deptno r
    from dept
    3.Take an HTML region
    Source : <div id=ajx></div>
    4. Create an Application Item called F103_DEPTNO
    5. Create an Application Process
    Name : getEmpTable
    Source:
    declare
    v_deptno number(3);
    begin
    OWA_UTIL.mime_header ('text/xml', FALSE);
    HTP.p ('Cache-Control: no-cache');
    HTP.p ('Pragma: no-cache');
    OWA_UTIL.http_header_close;
    HTP.prn ('<table>');
    HTP.prn ('<tr>');
    htp.prn('<th>Employee Number</th>');
    htp.prn('<th>Employee Name</th>');
    htp.prn('<th>Salary</th>');
    htp.prn('<th>Department</th>');
    htp.prn('<th>Job</th>');
    htp.prn('<th>Hiredate</th>');
    HTP.prn ('</tr>');
    foR R in (select empno,ename,sal,deptno,job,hiredate from emp where deptno= :F103_DEPTNO )
    LOOP
    htp.prn('<tr>');
    htp.prn('<td>'||r.empno||'</td>');
    htp.prn('<td>'||r.ename||'</td>');
    htp.prn('<td>'||r.sal||'</td>');
    htp.prn('<td>'||r.deptno||'</td>');
    htp.prn('<td>'||r.job||'</td>');
    htp.prn('<td>'||r.hiredate||'</td>');
    htp.prn('</tr>');
    END LOOP;
    END IF;
    HTP.prn ('</table>');
    end;
    6. Write a javascript Function in HTML Header
    Source:
    <script language = "JavaScript" type="text/javascript">
    function GetEmployees()
    var get = new htmldb_Get(null,&APP_ID.,'APPLICATION_PROCESS=getEmpTable',0);
    get.add('F103_DEPTNO',html_GetElement('P2_DEPTNO').value);
    gReturn = get.get();
    document.getElementById('ajx').innerHTML = gReturn;
    get = null;
    </script>
    7. Go to edit page item of P2_DEPTNO and in HTML Form Element Attributes write onchange="GetEmployees()"
    8. Run and test.
    Ajax based report works fine.
    In the link specified above pagination works fine.
    In my example very few records will appear but in case there are a lot of records appear then it is a must to manage it with pagination, letting only a few records to appear in each page. But in my example I have no idea how to manage pagination. Need help from the experts. Please notify..
    Regards
    Hasan Al Mamun
    Programmer
    Bangladesh Bank
    Dhaka, Bangladesh
    Edited by: hasan_al_mamun on Jan 19, 2011 10:58 AM
    Edited by: hasan_al_mamun on Jan 19, 2011 11:20 AM
    Edited by: hasan_al_mamun on Jan 19, 2011 11:24 AM

    Hi,
    You need to work with ROWNUM of result set. Create two hidden items, one for record_start_rownum and other for record_end_rownum. You need to add where clause to your SELECT query in Application process. Then your query will look like
    select *
      from ( select a.*, rownum r
               from ( select empno,ename,sal,deptno,job,hiredate from emp where deptno= :F103_DEPTNO  ) a
              where rownum < :P1_ record_start_rownum )
    where r > :P1_record_end_rownumYou may find following asktom link interesting..
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:76812348057
    Regards,
    Hari

  • Calculate Average value based on Day ??

    Hello,
    I am trying to calculate the Average value based on a day. The data is presented as follows...
    Day          SOCount
    Mon                34
    Mon                 56
    Mon                 67
    Tues               24
    Tues               25
    Tues               23
    Weds              45
    Weds              69
    The issue im having is that the Day column needs to be grouped first and the SOCount sumed together. Then the Average SO Count needs to be calculate based on this.
    Thanks

    Thanks for the reply,
    The solution you have provided only gives me the average of the count of the SO Count, not the actual average of all the values added together then  divided by the count..
    The report i am creating only has charts in it. So i am trying to create a chart showing the
    Average Sale Order Value by day.
    I should have metioned this from the start, sorry.
    Is it possible to do ?
    Edited by: davitali on Nov 4, 2011 6:32 AM

  • OLAP on 11g and Materialised Views with Multiple Value-Based Hierarchies

    Hello OLAPians
    I am trying to setup Orable BIEE to report on an OLAP cube with pre-aggregated data. As OBIEE is not able to hook into the OLAP directly i have to create an SQL cubeview.
    Currently i am on a 10g OLAP environment and am using the oracle sample SQL cubeview generator to create an SQLview of my cube.
    The cube itself has multiple dimensions and these dimensions have multiple VALUE-based (ragged) hierarchies and dimension members can be shared across hierarchies also.
    Initially i had a problem running the view generator plugin because there is a bug within it that does not finish if there are multiple value-based hierarchies present. I was able to get around this by manually editing the limitmap for the cubeview and manually creating the SQL view.
    The question that i want to ask is how robust is the 11g materialised views with multiple value-based hierarchies and the sharing of dimension members across different hierarchies?
    Has anyone successfully been able to create a cubeview and import it into OBIEE without the hassle of manually editing the limitmap?
    A problem arises with the value-based setup whereby if the client creates a newer depth in the ragged hierarchy, i need to manually create the limitmap and the cube-view over again, and then re-map the BI Administration mappings.

    The simple answer to your question,
    how robust is the 11g materialised views with multiple value-based hierarchies...?is that materialized views are not supported on top of value-based hierarchies in 11g. The reason is that it is not possible to write a reasonable SQL statement that aggregates a fact over a value-based hierarchy. Such a SQL statement is necessary if we want to create a rewritable MV on top of the cube.
    But I suspect this is not what you are really asking. If you are trying to set up OBIEE on top of the cube in 10g using the view generator, then you will probably want to use the "ET VIEWS" that are generated automatically in 11g. These are generated whether or not you enable materialized views on top of your cube. I am not aware of any issues with the generated value-based hierarchy view support in 11g. Members may be shared between value hierarchies and you will not need to generate or modify limit maps.

  • KE30 - Form Based Report - TDD not appearing

    Dear COPA Experts,
    I am facing one strange issue with reporting of Top Down Distribution of Actual Data.
    After executing Top Down Distribution of Actual Data, i have checked T-Code : KE30 - Form Based Report but it does not shows me distributed data then i have created one more PA report without Form, and this basic report shows me distributed data.
    I have checked T-Code : KE24 and found data is accurately posted via TDD :
       But is not showing in Form Based Report :
    However, it shows in Basic Report :
    Please guide me how to get distributed data on Form Based Report ???
    Thanks in Advance for your time !!!
    Regards,
    Zain Bashir

    Hello Zain,
    I often face similar problems when using form based reports.
    The layout which is part  of your report (and where the lines and columns are defined)
    includes the selections (e.g. within a column) also.
    Example:
    User does not find values posted on a cost center within the report.
    The FI-document shows the cost center but also an SD-order item.
    Result: The CC-posting is just a statistical one.
    If the layout does not include the statistical posting the report does not present them.
    Therefore: I advise to check the layout and the
    column-, line- and general selections.
    Hope it helps (and that you evaluate).
    With kind regards
    Thomas

  • Restricting the Prompt Values based on Fact table data

    Hi,
    We need dashboard prompts in OBIEE reports that will fetch data from dimension tables. Our all dimensions are conformed dimension having joined with multiple fact tables.
    Because prompts are showing data from dimension table, it is showing all dimension data and few data might not present in the particular fact table that we have used in the report.
    For Example:
    We have one Calendar dimension table that has 20 years data that means all dates. Now we have two fact tables Fact1 and Fact2.
    In Fact1 we have records related to only 2007 Years data. And In Fact2 We have 2008 years data.
    Now We are creating two separate reports in two separate page in one dashboard where the prompt is same. That is Calendar date prompt.
    So In report1, The prompt will be Calendare and Result will be from Fact1. But as the calendar prompt from Calendar dimension, it showing all 20 years data though only 2007 years data is valie.
    Similarly for Report2, It is showing all calendar dates in the prompt where Fact2 is having 2008 year data.
    I want to show only 2007 years dates in the prompt for Report1 and 2008 years dates for Report2. That means I want to restrict prompt values based on the fact.
    It will be great if someone can suggest on this.
    Regards,
    SS

    Hi, I have a similar problem.
    I have two dimensions: time and customer.
    The two dimensions are joined into two Fact Table (Order, Forecast).
    I created a dashboard prompt with two selections: the first is the Year (time dimension) and the second is the Region (customer dimension) with the option "cosntraint."
    When I select a Year, not all Regions are shown, but only those that are present in one of two fact table for the year chosen. Which fact table?
    What criteria will limit the values of the Region?
    Thanks

  • Security for value based hierarchy + OLAP

    Hi,
    I am using row-level security mechanism described here: http://www.rittmanmead.com/2012/03/obiee-11g-security-week-row-level-security/
    It works well for level based hierarchies... but is there a way to apply it to value based OLAP hierarchy in OBIEE 11.1.1.6?
    My case is:
    - I have parent-child value based hierarchy representing management structure with various depth.
    - of course facts are always linked to leaf members of hierarchy
    - I need to apply security at different levels. E.g. Office manager should have access to one/multiple offices information (basically all employees he manage currently + his previous office before he was moved)
    - In report I display presentation hierarchy that starts at country level and then manager drill to his offices
    - At country level, manager should see a measure aggregate only for his offices (not whole country)
    In relational database there is no problem:
    - I follow rittman blog
    - create session variable that store list of all leaf members of hierarchy (employees) managed by manager
    - with OBIEE "Manage"->"Identity" I apply filter on fact table and get right measure aggregates at all levels of hierarchy
    Issue for OLAP:
    - with OBIEE "Manage"->"Identity" I apply filter on OLAP value based hierarchy
    - in case of filter "MY_BMM"."Org Str"."Org Str Key" = VALUEOF(NQ_SESSION."LEAFS_LIST") -> when manager include hierarchy column to report there are no results because hierarchy starts at country level and he have no access to country data
    - to workaround it I tried: "MY_BMM"."Org Str"."Org Str Key" = VALUEOF(NQ_SESSION."LEAFS_LIST_AND_ALL_ANCESTORS") -> manager can see all aggregates at country level because he have access to country, and OLAP just use country level aggregate
    - IsDescendant("MY_BMM"."Org Str" , VALUEOF(NQ_SESSION."OFFICE_ID")) will work only for single office as we can not use row wise variables here
    One solution I can imagine is to create additional level based dimension that have only 2 levels: "All"->"Org Str Leaf". Then apply filter on this "artifitial" dimension. It is not perfect solution to duplicate dimensions only for security purposes... that's why I ask you for advice if you know better way?
    Regards,
    mudi

    Here is an example, how to set security in OBIEE 11.1.1.5 (or future versions)  against  Oracle OLAP dimensions.
    *(1). Create the Oracle OLAP Hierarchy Descendant View against Value-based hierarchy*
    These views return a row for each ancestor-descendent relationship in the hierarchy. As you can see how easy it is.
    CREATE OR REPLACE VIEW DEPT_DESCENDANTS
    AS
    SELECT 'DEPT' "DIMENSION", 'DEPTHIER' "HIER", ancestor, descendant
    FROM TABLE(OLAP_TABLE('BAWOLAP.BNSOLAP DURATION QUERY', null, 'LIMIT DEPT_HIERLIST TO 'DEPTHIER''',
    'DMNS DESCENDANT AS VARCHAR2(60) FROM DEPT
    DMNS GID_VAL AS NUMBER FROM ___AW_GID_DIMENSION
    MSR ANCESTOR AS VARCHAR2(60) FROM DEPT_FAMILYRELVAL'
    where ancestor is not null
    *(2). Create the User ACL Tables and Populate with Data*
    Create an Access Control list test table by user and Dept. Later this will be populated with production data.
    create table user_dept_acls
    username varchar2(30),
    dept varchar2(60)
    insert into user_dept_acls(username, dept) values ('user1', 'GWM');
    insert into user_dept_acls(username, dept) values ('user1', 'GT');
    insert into user_dept_acls(username, dept) values ('user1', 'SC');
    insert into user_dept_acls(username, dept) values ('user2', 'GWM');
    insert into user_dept_acls(username, dept) values ('user2', 'GT');
    insert into user_dept_acls(username, dept) values ('user3', 'SC');
    commit;
    *(3). Create an Init Block Connection Pool*
    Oracle BI EE requires a separate Connect Pool for Init blocks. It does not allow the default query connection pool to be reused for init blocks. So, we need to create a new init block.
    *(4). Create the ACL Session Variables*
    These session variables hold the list of all members that the user may access.
    Example Session Variable: DEPT_ACL
    Init Block: "Init DEPT_ACL"
    SQL:
    select 'DEPT_ACL', account from user_DEPT_acls where username = ':USER'
    union all
    select 'DEPT_ACL', descendant
    from DEPT_descendants
    where ancestor in (select account from user_DEPT_acls where username = ':USER')
    union all
    select 'DEPT_ACL', ancestor
    from DEPT_descendants
    where descendant in (select account from user_DEPT_acls where username = ':USER')
    The first query block of the init block SQL just selects the members explicitly entered into the ACL table. The second block selects all the descendants of those members from the descendants view. The third block selects all the ancestors to ensure that the user has access to all the members in the drill path starting from the root member.
    Make sure that row-wise initialization is checked in the Variable Target section of the init block.
    *(5). Add the Data Filters*
    In our test case we assigned the data filters to the BIAuthor role, but the filters should be added to whatever role makes the most sense.
    Data filter on "BNSGL"."Department":
    "BNSGL"."Department"."Dept" = VALUEOF(NQ_SESSION."DEPT_ACL")
    *(6). Log in as a Normal User and Query the Hierarchy*
    The user can only see to the members to which they are granted access in the ACL table plus all ancestors and descendants of those members.
    Drill down to the bottom of the hierarchy.
    *(7). Look at the Query Log*
    In the nqquery.log we see that the session variable is expanded into an IN list in the physical SQL query. The BI Server breaks the IN list into two IN lists to avoid the Oracle SQL limit of 1,000 items per IN list.
    Edited by: Nasar Ali-Khan on Jul 2, 2012 8:14 AM

  • Change Column Value based on Characteristic in Rows

    I am not sure it is possible.
    We have product prices at different levels of customer hierarchy.
    Channel > Division > Region > Market
    One Region can have multiple Markets.  Each market can have different Rates.  But the Region will have a different Rate which many not be the average rate of all market (assigned as part of master data)
    I have a column for Product Price.  So when a Report is run at Market Level it should use Market Rate.  If Market is Removed and Region is dragged into the report it should use Region Rate for Product Price.
    Product Price is Restricted by Rate Type value to determine which Rate is used.
    Is there a way to dynamically determine the define the column value based on the characteristic value in the ROWS.
    Thanks

    Hi,
    For every CHAR like Market/Region there will be some key. For example Maket1 = 11 and Market2 = 22. If that key is a number then you may create replacement path variable on that and convert the same in numbers then you may create various CKF (for various rate type) and put "If" condtion and check for those replacement path CKF and use the apprpriate one.
    You need to write some tricky formula at CKF levels. This is one of the way to achieve that.
    I hope it will help.
    Thanks,
    S

  • Prompt Default Value based in drilled result

    I am navigating(drill using action link) from an analysis to a dashboard where I have a prompt for currency. I want this to be initialized to a dynamic default value based on the column values.
    Master Analysis
    Country
    valid currency
    Drill
    India
    C1
    Link1
    India
    C2
    Link2
    China
    C4
    Link3
    India
    C3
    Link4
    China
    C5
    Link5
    Child Dashboard Prompt after clicking Drill (if i click any link against india)
    Header 1
    Header 2
    Currency
    C1
    Bla bla
    Child Dashboard Prompt after clicking Drill (if i click any link against China)
    Header 1
    Header 2
    Currency
    C4
    Bla bla
    Is there any way to achieve this in OBIEE 11g?

    Hi,
    If you are using the same presentation column (same TableName.ColumnName) in your analysis and in the prompt, then the values would be passed when you click on the link. If thats not the case, you can have a look at the below post:
    Navigate from report to dashboard and pass values between different column
    Thanks
    Hyder

  • Level Based vs. Value Based hier: advantages, disadvantages and limitations

    Could someone give an overview about the advantages, disadvantages and limitations when comparing OLAP Level to Value based hierarchies?
    Thanks,
    Marcio

    OLAP can handle both types of hierarchies. No performance advantage using one over the other (while loading cube or querying).
    If you are "pushing" dimensional-security inside OLAP, in that case also it does not matter.
    Cube-based MVs (with query-rewrite) can only be created if the hierarchies are level-based. Are you going to need that?
    Generally there are other "non-olap" factors:
    (#1). Which reporting tool will be used. Does it provide better reporting capabilities if the source is parent-child or level-based?
    (#2). Are there any reporting requirements that will need "level" information when selecting data.
    (#3). Are there are any security requirements that will be handled in "reporting-layer" which will need level-based information.
    Although in case of (#1) and (#2), you can "expose" an olap's parent-child hierarchy as "level-based" hierarchy to the reporting tool using internal GID (grouping-id) information.
    OBIEE 11.1.1.5 (and future versions) works well with OLAP metadata, and with any type of hierarchy in olap.
    For other reporting tools, you have to see what features are available.
    In short, its the source system, the reporting tool and the reporting requirements that will dictate what type of hierarchy should be stored in OLAP.

Maybe you are looking for