Report with non aggregated and aggregated columns from different facts.

Hi,
We have got requirement as follows,
1) We have two dimension tables, and two fact(Fact1 and Fact2) table in physical.
2) In BMM we have made hierarchies for both dimensions, and are joins both logical fact table.
3)In fact1, we are having three measures of which we have made two as aggregation sum, and one is non aggregated(It contains character).
4)Fact2 have two measures, both are aggregation as sum.
5)Now here the problem arises, we want to make a report with some columns from dim and non aggrgated column from fact1 and and aggregated column fact2
How to resolve the above issue.
Regards,
Ankit

As suggested you really want to move your none-aggregated fact attributes to a logical dimension (using the same physical table as the logical fact). Map this in the BMM layer as a snowflake, Place a hierarchy on this dimension with (at minimum) Total -> Detail levels, then on the other fact table you want to include in the report, set the content level on your other fact measures to the 'Total' level for your new logical Dim and it will allow them to be present in the same report.

Similar Messages

  • OBIEE Group By on 2 facts and concatenated columns from different dimensions

    Hi
    I have a different kind of problem involving 2 fact tables with different dimensional attributes.
    Fact 1 has Dim Attributes ( Cust,Facility )
    Measure - Gross Amount
    Fact2 has Dim attributes (Cust,Facility and Risk Group )
    Measure : Exposure Amount
    Since we have 2 facts with different dimensions,
    to exclude the 'Risk Group' dimension column from the group by for the Fact1,
    we set the 'Gross Amount' measure to total level (Risk Group Dimension ) in contents tab.
    So the values from both the fact tables appears in the same report correctly.
    But in the same report we have another requirement where the rating column from the customer dimension has to be concatenated with the ratings column in the facility dimension.
    We have to concatenate customer.rating with the facility.rating and display it in the report.
    when we just pull the individual columns from the dimensions into the report it works fine.
    But when we try to concatenate the 2 columns and show it in the report,
    the concatenated column does not appear in the select or the group by in the SQL Fact2.( Generated by OBIEE )
    The other fact1 has the concatenated column in the select as well as the group by clause ( Generated by OBIEE )
    As a result the report shows the concatenated values only for the results from the Fact1. But the results from Fact2 does not have the concatenated column values.
    The report should look like the below:
    Custor.Name,     Customer.Id,     Facility.Name,     Facility.Id,     Customer.Rating/Facility.Rating,     Risk Group,     Gross Amount,     Exposure Amount
    ===========    =========      ===========     =========   ========================      =========     ===========     ===============
    JPMC                123                    GROSS               123               08/10                                                  LNL                    45,000               25,000
    CLAIRE               456                    NET                    456               07/10                                                  RNK                    50,000               30,000
    Thanks,
    Chandra

    As suggested you really want to move your none-aggregated fact attributes to a logical dimension (using the same physical table as the logical fact). Map this in the BMM layer as a snowflake, Place a hierarchy on this dimension with (at minimum) Total -> Detail levels, then on the other fact table you want to include in the report, set the content level on your other fact measures to the 'Total' level for your new logical Dim and it will allow them to be present in the same report.

  • How to create report with Fixed Labels and Dynamic Columns

    I have static column labels in left side of report and field in 3 columns coming dynamically from 3 different command queries.
    Please let me know how to create it..Following is the sample data for report.

    Following is the sample report. Left side lables are fixed.
    I tried using pivot table functionality, earlier discussed in the forum.
    But they are creating huge no.of records. As it will turn the rows into columns.
    Is there any way to get this report done normally.?

  • Form report with both edit and column link

    hi experts,
    How can we create form report with both edit and column link. Ie, the form should have both the Edit link and column link. When we click on the edit link(in page1) it should go for the page2 and the page2 should display the corresponding row fields which should be editable. but when i click the column link it should bring me to the next page but the corresponding values of the column should not be editable.
    Regars,
    KK

    hi,
    Here i have achieved this by making the column link and page navigation.

  • Summary Report with 4 Dimensions and 5 Facts

    Hello OBIEE Czars:
    I have a problem.
    I am trying to make a summary report with 4 Dimensions and 5 Facts.
    Out of that only 2 Dimensions are Confirmed.
    Now when I try to bring in all the facts, I get view display error.
    I searched forum for similar issues.
    So I have tried following so far.
    1) Add other dimensions as source and set level to Total for those dims.
    - After doing this, I dont get view display error, but I get blank rows for couple of facts.
    2) I am already aggregating all the measures.
    Please help me out.
    This forum has been very helpful so far.
    Thanks.
    ~Vinay

    Hi
    This method seems fine until you run a request that includes a filter on an unconformed dimension.
    The SQL itself should be quite straightforward (see below) but the BI Server instance does not seem to be joining this data correctly after posting the 2 separate queries to the database.
    SELECT
    x.dim1, x.dim2
    x.fact1_agg_measure
    y.fact2_agg_measure
    FROM
    SELECT
    dim1, dim2
    SUM(fact1.measure) fact1_agg_measure
    FROM
    dim1,
    dim2, --UNCONFORMED+
    fact1
    WHERE
    .... .... join fact1 to dimensions as normal
    AND dim2 = 'BUSINESS_IDENTFIER'
    GROUP BY
    dim1, dim2
    ) x,
    SELECT
    dim1
    SUM(fact2.measure) fact2_agg_measure
    FROM
    dim1,
    fact2
    WHERE
    .... .... join fact2 to dimensions as normal
    GROUP BY
    dim1
    ) y
    WHERE
    x.dim1 = y.dim1
    The result set returned in Answers is firstly a correctly aggregated record plus ALL rows from the second query above ??
    Just wondering if anyone else has come across this issue?
    cheers
    Tony

  • How to generate report with dynamic variable number of columns?

    How to generate report with dynamic variable number of columns?
    I need to generate a report with varying column names (state names) as follows:
    SELECT AK, AL, AR,... FROM States ;
    I get these column names from the result of another query.
    In order to clarify my question, Please consider following table:
    CREATE TABLE TIME_PERIODS (
    PERIOD     VARCHAR2 (50) PRIMARY KEY
    CREATE TABLE STATE_INCOME (
         NAME     VARCHAR2 (2),
         PERIOD     VARCHAR2 (50)     REFERENCES TIME_PERIODS (PERIOD) ,
         INCOME     NUMBER (12, 2)
    I like to generate a report as follows:
    AK CA DE FL ...
    PERIOD1 1222.23 2423.20 232.33 345.21
    PERIOD2
    PERIOD3
    Total 433242.23 56744.34 8872.21 2324.23 ...
    The TIME_PERIODS.Period and State.Name could change dynamically.
    So I can't specify the state name in Select query like
    SELECT AK, AL, AR,... FROM
    What is the best way to generate this report?

    SQL> -- test tables and test data:
    SQL> CREATE TABLE states
      2    (state VARCHAR2 (2))
      3  /
    Table created.
    SQL> INSERT INTO states
      2  VALUES ('AK')
      3  /
    1 row created.
    SQL> INSERT INTO states
      2  VALUES ('AL')
      3  /
    1 row created.
    SQL> INSERT INTO states
      2  VALUES ('AR')
      3  /
    1 row created.
    SQL> INSERT INTO states
      2  VALUES ('CA')
      3  /
    1 row created.
    SQL> INSERT INTO states
      2  VALUES ('DE')
      3  /
    1 row created.
    SQL> INSERT INTO states
      2  VALUES ('FL')
      3  /
    1 row created.
    SQL> CREATE TABLE TIME_PERIODS
      2    (PERIOD VARCHAR2 (50) PRIMARY KEY)
      3  /
    Table created.
    SQL> INSERT INTO time_periods
      2  VALUES ('PERIOD1')
      3  /
    1 row created.
    SQL> INSERT INTO time_periods
      2  VALUES ('PERIOD2')
      3  /
    1 row created.
    SQL> INSERT INTO time_periods
      2  VALUES ('PERIOD3')
      3  /
    1 row created.
    SQL> INSERT INTO time_periods
      2  VALUES ('PERIOD4')
      3  /
    1 row created.
    SQL> CREATE TABLE STATE_INCOME
      2    (NAME   VARCHAR2 (2),
      3       PERIOD VARCHAR2 (50) REFERENCES TIME_PERIODS (PERIOD),
      4       INCOME NUMBER (12, 2))
      5  /
    Table created.
    SQL> INSERT INTO state_income
      2  VALUES ('AK', 'PERIOD1', 1222.23)
      3  /
    1 row created.
    SQL> INSERT INTO state_income
      2  VALUES ('CA', 'PERIOD1', 2423.20)
      3  /
    1 row created.
    SQL> INSERT INTO state_income
      2  VALUES ('DE', 'PERIOD1', 232.33)
      3  /
    1 row created.
    SQL> INSERT INTO state_income
      2  VALUES ('FL', 'PERIOD1', 345.21)
      3  /
    1 row created.
    SQL> -- the basic query:
    SQL> SELECT   SUBSTR (time_periods.period, 1, 10) period,
      2             SUM (DECODE (name, 'AK', income)) "AK",
      3             SUM (DECODE (name, 'CA', income)) "CA",
      4             SUM (DECODE (name, 'DE', income)) "DE",
      5             SUM (DECODE (name, 'FL', income)) "FL"
      6  FROM     state_income, time_periods
      7  WHERE    time_periods.period = state_income.period (+)
      8  AND      time_periods.period IN ('PERIOD1','PERIOD2','PERIOD3')
      9  GROUP BY ROLLUP (time_periods.period)
    10  /
    PERIOD             AK         CA         DE         FL                                             
    PERIOD1       1222.23     2423.2     232.33     345.21                                             
    PERIOD2                                                                                            
    PERIOD3                                                                                            
                  1222.23     2423.2     232.33     345.21                                             
    SQL> -- package that dynamically executes the query
    SQL> -- given variable numbers and values
    SQL> -- of states and periods:
    SQL> CREATE OR REPLACE PACKAGE package_name
      2  AS
      3    TYPE cursor_type IS REF CURSOR;
      4    PROCEDURE procedure_name
      5        (p_periods   IN     VARCHAR2,
      6         p_states    IN     VARCHAR2,
      7         cursor_name IN OUT cursor_type);
      8  END package_name;
      9  /
    Package created.
    SQL> CREATE OR REPLACE PACKAGE BODY package_name
      2  AS
      3    PROCEDURE procedure_name
      4        (p_periods   IN     VARCHAR2,
      5         p_states    IN     VARCHAR2,
      6         cursor_name IN OUT cursor_type)
      7    IS
      8        v_periods          VARCHAR2 (1000);
      9        v_sql               VARCHAR2 (4000);
    10        v_states          VARCHAR2 (1000) := p_states;
    11    BEGIN
    12        v_periods := REPLACE (p_periods, ',', ''',''');
    13        v_sql := 'SELECT SUBSTR(time_periods.period,1,10) period';
    14        WHILE LENGTH (v_states) > 1
    15        LOOP
    16          v_sql := v_sql
    17          || ',SUM(DECODE(name,'''
    18          || SUBSTR (v_states,1,2) || ''',income)) "' || SUBSTR (v_states,1,2)
    19          || '"';
    20          v_states := LTRIM (SUBSTR (v_states, 3), ',');
    21        END LOOP;
    22        v_sql := v_sql
    23        || 'FROM     state_income, time_periods
    24            WHERE    time_periods.period = state_income.period (+)
    25            AND      time_periods.period IN (''' || v_periods || ''')
    26            GROUP BY ROLLUP (time_periods.period)';
    27        OPEN cursor_name FOR v_sql;
    28    END procedure_name;
    29  END package_name;
    30  /
    Package body created.
    SQL> -- sample executions from SQL:
    SQL> VARIABLE g_ref REFCURSOR
    SQL> EXEC package_name.procedure_name ('PERIOD1,PERIOD2,PERIOD3','AK,CA,DE,FL', :g_ref)
    PL/SQL procedure successfully completed.
    SQL> PRINT g_ref
    PERIOD             AK         CA         DE         FL                                             
    PERIOD1       1222.23     2423.2     232.33     345.21                                             
    PERIOD2                                                                                            
    PERIOD3                                                                                            
                  1222.23     2423.2     232.33     345.21                                             
    SQL> EXEC package_name.procedure_name ('PERIOD1,PERIOD2','AK,AL,AR', :g_ref)
    PL/SQL procedure successfully completed.
    SQL> PRINT g_ref
    PERIOD             AK         AL         AR                                                        
    PERIOD1       1222.23                                                                              
    PERIOD2                                                                                            
                  1222.23                                                                              
    SQL> -- sample execution from PL/SQL block
    SQL> -- using parameters derived from processing
    SQL> -- cursors containing results of other queries:
    SQL> DECLARE
      2    CURSOR c_period
      3    IS
      4    SELECT period
      5    FROM   time_periods;
      6    v_periods   VARCHAR2 (1000);
      7    v_delimiter VARCHAR2 (1) := NULL;
      8    CURSOR c_states
      9    IS
    10    SELECT state
    11    FROM   states;
    12    v_states    VARCHAR2 (1000);
    13  BEGIN
    14    FOR r_period IN c_period
    15    LOOP
    16        v_periods := v_periods || v_delimiter || r_period.period;
    17        v_delimiter := ',';
    18    END LOOP;
    19    v_delimiter := NULL;
    20    FOR r_states IN c_states
    21    LOOP
    22        v_states := v_states || v_delimiter || r_states.state;
    23        v_delimiter := ',';
    24    END LOOP;
    25    package_name.procedure_name (v_periods, v_states, :g_ref);
    26  END;
    27  /
    PL/SQL procedure successfully completed.
    SQL> PRINT g_ref
    PERIOD             AK         AL         AR         CA         DE         FL                       
    PERIOD1       1222.23                           2423.2     232.33     345.21                       
    PERIOD2                                                                                            
    PERIOD3                                                                                            
    PERIOD4                                                                                            
                  1222.23                           2423.2     232.33     345.21                       

  • Please help to get onhand stock report with last purchase and billed date warehouse and item wise

    please help to get onhand stock report with last purchase and billed date warehouse and item wise

    Hi Rajeesh Ambadi...
    Try This
    SELECT distinct T0.ITEMCODE , t1.ItemName, T0.ONHAND as 'Total Qty',  
      T1.LASTPURDAT ,t1.LastPurPrc
    FROM OITW T0 INNER JOIN OITM T1 ON T0.ITEMCODE = T1.ITEMCODE
    INNER JOIN OITB T2 ON T1.ITMSGRPCOD=T2.ITMSGRPCOD left join ibt1 t3 on t3.itemcode = t0.itemcode and t3.whscode = t0.whscode
    WHERE
    T0.ONHAND>0
    AND T0.WhsCode ='[%0]'
    Hope Helpful
    Regards
    Kennedy

  • End User will build the report by himself by choosing the columns from tabl

    We are using Oracle 10g Application server (Forms and Report Services), Forms and Report., our most urgent requirement is End User have to build the required reports by him Like wizards style, (Example Adhoc, MIS reports)., More clear, from the form we want to show all the tables structures, queries, after that end user will choose some columns from the form and specified the condition by himself to run the report after that he will press start button , then automatically report has build for the selected columns from the end user., and this report is parmanent afterwords., he can use any time.
    Like this kind of report building is possiable , anyone has faced same situation.

    Yes it is.
    In BW, this can be achieved by using document management. The option will be available to the user via context menu in the report (goto-->documents - text/pdf/img etc). In your case user can choose to create/change/display a 'text' document, which will be attached to the report.
    cheers,

  • Remove Enable, Disable and Delete columns from searchUser.do

    Hello,
    What jsp form do I need to modify to remove the enable, disable and delete columns from the searchUser.do page? I edited tjspSearchUserResultsTiles.jsp but that didn't seem to do it.
    Thanks

    Hi,
    TableGenerator.jsp is the general jsp so you shouldn't modify it.You need to extend tcSearchUserAction.java class aand create a custom class.You need to over ride populateColumnHeadings and populateTableData.
    I won't suggest this approach until you are very much familiar with struts development and oim classes.
    Regards
    Nitesh

  • Share Analytics Reports with non-Siebel Users

    Hello,
    We are on version 7.8.2.4 of Siebel Analytics and are on a UNIX platform.
    I am working on a project that is required to share reports with non-Siebel users. We are hoping to accomplish this through Analytics Delivers, but are open to suggestions or alternatives.
    I have found that an iBot (under the Advanced tab) can be used in conjunction with custom Javascript or VB to FTP the report results in a pdf format to a specified location on the server. The Analytics Scheduler Bookshelf document explains how to do this starting on page 50.
    However, there is a note within this document that says this functionality is only supported on Windows platforms. Unfortunately, our servers are on a UNIX platform. I have been told the possible reason for only supporting this functionality on a Windows platform is because there is not a service analogous to the ActiveX Scripting.FileSystemObject control which is called in the Javascript described in the document mentioned above.
    This leads me to my question: Has anyone ever used this custom Javascript functionality with iBots on a UNIX platform or is there a similar approach that can be used instead? Has anyone found another way to share Analytics reports with non-Siebel users?
    Thanks,
    Andrea Thomas
    [email protected]

    Hi Andrea,
    I don't have experience with ftp-ing a pdf to a specific location. But I do have 2 alternatives:
    1. Use a public dashboard
    http://oraclebizint.wordpress.com/2008/06/30/oracle-bi-ee-1013332-public-reports-and-dashboards-bypassing-authentication/
    2. Set up SA System subject area, to email the pdf to non-Siebel Analytics users.
    http://oraclebizint.wordpress.com/2008/04/25/oracle-bi-ee-101332-sa-system-subject-area-autoloading-profiles-and-bursting/
    In the external table you use for the SA System subject area, it is possible to add 'fake' users with their e-mail addresses.
    Regards,
    Stijn

  • Project mat. proc. report with monthly breakup and cumulative for year

    Hi All,
    can any body suggest a report for  "Project material procurement report  with monthly breakup and cumulative total for a financial year "
    Thanks in Advance.
    Regards,

    Hi Ahmed,
    Thank you very much for the response.
    I am seeking the std sreport which can give the details for the project material consumption report with monthly breakup with the cumulative month total to year.
    ex. jan 10 units , june -10 units , nov 10 units, total (year) =30
    regards,

  • Run Report with Pass Number and Varchar Lexical Parameter values

    Dear Sir/Madam
    Due to an urgent change required to a report I would most appreciate it if you can please advise me if it is possible to get this report working by either passing in multiple lexical parameters or one signle lexical parameter when calling the SRW.RUN_REPORT command with the following methods:
    Firstly: When calling report with a run_no and spr_cd passed in through one lexical:
    cmd_line: REPORT=D:\DEV\REMITTANCE.rdf BACKGROUND=YES BATCH=NO DESFORMAT=PDF DESTYPE=FILE DESNAME=D:\DEV\REMITTANCE.pdf
    CP_L_PARAM=RUN_NO=TO_NUMBER(28) AND SPR_CD=SUPP1
    Both with a TO_NUMBER and without, whereby I attempt to do a SUBSTR within the query of the called report to derive the RUN_NO Oracle Reports fails to accept the SUBSTR.
    Secondly: I am now trying to call the with passing two lexical parameters into the report as follows:
    cmd_line: REPORT=D:\DEV\REMITTANCE.rdf BACKGROUND=YES BATCH=NO DESFORMAT=PDF DESTYPE=FILE DESNAME=D:\DEV\REMITTANCE.pdf
    CP_L_RUN_NO=||TO_CHAR(lv_run_no)|| CP_L_SPR_CD=||lv_spr_cd;          
    NOTE: The above is an output of the actual command line and not what is passed into the command line, thus the quotes are missing. Please also note that the report is running fine with the only a hard coded RUN_NO value PASSED without the SPR_CD.
    Unfortunately this is also causing issues as the RUN_NO is a number and as you know you can only pass in strings.
    Your urgent help is required on this matter please as our client is expecting a solution this afternoon.
    Hope to hear form you soon.
    Kind regards
    Andrew Mason

    Dont Worry I've worked it out...

  • Report with material number and planned delivery time

    Is there any standard report with material number and planned delivery time ?

    Hi,
    I do not know any standard report. Please try SE16 + MARC...
    BR
    Csaba

  • Slight roadblock in "DW 8 with ASP, ColdFusion, and PHP: Training from the Source"

    I'm working my way through Dreamweaver 8 with ASP,
    ColdFusion, and PHP:
    Training from the Source. I've come to the middle of Lesson 6
    and have hit
    my first obstacle in learning PHP. I'm following the
    instructions to format
    the output of the tour price calculator, but my issue is with
    where to place
    the following PHP code: <?php setlocale(LC_MONETARY,
    'en_US'); echo
    money_format('%i', $tourPrice); ?>
    I placed it before the DOCTYPE and when that didn't work, I
    tried inserting
    right before the code that retrieves the tour price (in the
    body of the
    page). That didn't work either.
    I also tried changing money_format to number_format and
    manually inserting
    the $, but when I tested everything, the output printed as
    follows:
    The estimated cost of your tour is
    $0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000500.
    I'm not quite sure where I've gone wrong.
    Thanks for any help,
    Heather

    Coach Bob wrote:
    > David,
    >
    > I would like to understand better your comment about the
    money_format. The
    > ability to use it is dependent on the host system's
    support of the C library
    > function strfmon(), correct? So if a user were
    developing on a windows box with
    > a local WAMP install it would not work while it may work
    on their *nix-based
    > Web host?
    Check the PHP documentation - it tells you all you need to
    know:
    http://www.php.net/manual/en/function.money-format.php
    > I will see to it that it gets corrected in the next
    version of the book!
    I've no idea what relationship you have with "Training from
    the Source",
    but I find it interesting - to say the least - that you need
    to the ask
    the author of a rival book.
    David Powers, Adobe Community Expert
    Author, "Foundation PHP for Dreamweaver 8" (friends of ED)
    Author, "PHP Solutions" (friends of ED)
    http://foundationphp.com/

  • How to create 2D array with 3 rows and unlimit column?

    how to create 2D array with 3 rows and unlimit column?

    Here are images of what I described in my previous post
    Message Edited by JoeLabView on 11-14-2007 07:56 AM
    Attachments:
    2D-array_code.PNG ‏7 KB
    2D-array_values.PNG ‏13 KB

Maybe you are looking for