How to prioritise obiee to select logical fact out of 2 logical fact tables

Hi All,
I have a scenario where in I have 2 Logical Fact tables F1 and F2 and 2 Logical Dim tables D1 and D2.
Both Logical Dim tables are joined to F1 and F2 i.e.(D1-F1-D2) and (D1-F2-D2). When a user selects columns from D1 and D2 it always select F1.
I would like OBIEE to select F2 instead of F1. Is this possible?
With Regards
Prads

You need to mention the levels in content tab of LTSs depends on the joins to dimensions.
It automatically picks the right LTS based on the dimensions selected in criteria & levels in the content tab of your LTSs.
Anyways, if you want to make f2 as main LTSs put that in first position under Sources folder.

Similar Messages

  • How do I get the selected value only out of a tree control?

    If I use the value property and create an indicator, it gives me another tree, not an array of selected values...I can use an event structure to get it with a CV Event using the new value terminal but I know that there must be a simpler, better way.  Can anyone answer this one quickly?

    Check out the "Family Tree.vi" example that ships with LV.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • IMac desktop using OS X Lion How can I highlight a selected text in an email?

    iMac desktop using OS X Lion
    How can I highlight a selected text in an email? 

    Send the table as an attachment, either a spreadsheet (if the recipient needs to be able to edit it) or a PDF.

  • How to show message on selection screen  status bar if alv is empty.

    Hi,
            Can anyone tell me how to show message on selection screen status bar when our final internal table or alv is empty .
           i am getting message on alv status bar, where no data is in alv but i want to stop it to selection screen and show message there only.
    Regards,
    Ranu

    Hi,
    After populating the final internal table do this check,
    if it_final [] is initial.
    message 'No data available' TYPE 'S' DISPLAY LIKE 'E'.
    exit.
    endif.
    This will be displayed in the selection screen itself
    Regards,
    Vikranth

  • How to define our own selection screen for logical database  in abap-hr?

    Hi Friends,
    Can u please help me
    How to define your own selection screens for  logical database.
    we use to do like(goto->attributes-HRReportcatagerious ).but How to desin using  customer table like t599c, t599f and how to add to my logical database?
    Thanks in advance
    charan

    check out this online help
    http://help.sap.com/saphelp_erp2004/helpdata/en/9f/dba65c35c111d1829f0000e829fbfe/frameset.htm
    Regards
    Raja

  • How to create a new selection screen IN LOGICAL DATABASE PNPCE

    how to create a new selection screen LDBS PNPCE

    Hello Ankit,
    Do you want to create a new selection screen in LDB PNPCE, or do you want to create a new selection screen in one of your reports using LDB PNPCE?
    For later (which is more common), you can use HR Report Category.
    Hope this helps.
    Best Regards,
    Biraju Rajyaguru

  • Data Modeling:Criteria to add a logical column to a DIM or FACT table

    Hi,
    Scenario:
    Physical Layer:
    - Table_T has following columns: COL_A, COL_B, COL_C
    - COL_C is a measure. COL_A and COL_B refer to dimensions.
    - COL_A is primary key of Table_A, COL_B is primary key of Table_B
    BMM Layer:
    1- Dimension table: DIM_A(TABLE_A), Fact table: contains COL_A, COL_B, COL_C
    2- Dimension tables: DIM_A(TABLE_A), DIM_B(TABLE_B), Fact table: contains COL_A, COL_B, COL_C
    Additional Information:
    We can model the BMM layer using the above-mentioned approaches, but either of the two will have some advantages over the other to model COL_B. Some of the advantages of (2) as highlighted by the OBIEE team:
    a). Drill down capability will be supported for COL_B,
    b). Useful in scenarios where multiple facts need to refer to TABLE_B.
    Concern:
    We agree with the above technical comments but if someone can provide us with more insight on both the approaches and how an end user can benefit from either approach, it will help us a lot.
    We basically need to understand what are the implications if we leave something as just an attribute on the fact and do not model it as a dimension.
    Thank you,
    Abhishek
    P.S. The OBI Server Admin guide does provide us with useful information on the implementation aspect, but we need more information from the end user's perspective.

    Very similar to the question below. In pure terms your FACT table should contain no Dimension attributes, Facts tables should contain measures.
    Where you have a Physical table that contains a mixture of aggregates and non-aggregate Dimension Attributes then you should split them out in the logical layer into 2 Logical Tables one for the Fact one for the Dimension.
    From an end user perspective (certainly the ones I have coached) it is easy for them to understand the the Measures are all in one place, and then if they need to slice and dice then they select the appropriate attributes from the Dimension folders.

  • How to deal with dynamic selection screen elements when macros are used?

    Hello experts,
    This is regarding the dynamic selection screen elements. Actually the requirement is to modify the existing standard report program RFUMSV00 by copying it into a Z report, adding a few selection screen elements and new fields in the output. I actually did everything required except for the one thing that is going out of my reach.
    There are a certain fields which are coming when they are not supposed to get displayed. I don't understand the code because of its obsoleteness. Neither can I debug it because it is just data declaration.
    This is the code where there is a fault. If I copy the entire code into a new Z report, I'm getting new fields like Entry Date, Document Type, Reference Transaction,  Reference key, Logical system.
      DEFINE selection_screen_line.
      selection-screen: begin of line.
      parameters &3 like &4 default 'X' modif id mc4.
      selection-screen: comment (30) &1 for field &3 modif id mc4.
      selection-screen: comment pos_low(10) text-019
                        for field &2 modif id mc4.  "neu
      parameters &2 like rfums_alv-variante modif id mc4.
      selection-screen:
          position pos_high.
      selection-screen: pushbutton (15) text-028
                        user-command &5 modif id mc4.
      selection-screen end of line.
    END-OF-DEFINITION.
    Kindly, suggest me the right solution.

    In the program attributes ( SE38 > RFUMSV00 > GOTO > Properties ), you will find a logical database BRF declared. The include DBBRFSEL is part of the selection screen of this logical database.
    The selection screen is actually the selection screen of this logical database.
    Under the Logical Database field, there is a Selection screen field where you can input which selection screen of the logical database to be used.
    But, this is just to change the selection screen that is displayed. To completely suppress it you need to remove logical database declaration from the properties of the program and call it inside your program through function module.
    You cannot just remove it from the declaration because many of its variables are used in the program.
    So call it using function module as the first step in INITIALIZATION section of the program.
    The syntax and function module to call it in your program can be found in the following thread :
    How to hide the selection screen of a Logical datebase?
    Regards,
    Ashish

  • How do I use 2 Core Audio devices at the same time in Logic w/out switching

    Hello, I use the Aardvark Direct Mix usb3 as my audio interface for mic and guitar. I just upgraded to Logic Pro 7 today and was hoping someone could tell me how I could use the Built-in Audio Core Audio driver along with the Direct Mix USB Core Audio Driver at the same time without having to switch Core Audio Driver's and than rebooting Logic. It is very frustrating doing that as well as not being able to hear my Logic audio during playback/record mode when I am trying to record via the USB3. WHat can I do? Thanks! If ther are both core audio, why can I not just use both of them at the same time? Why must a switch back and forth? Thanks!
    [email protected]

    THanks everyone! awsome article! Thanks for posting it, nh!
    The weird thing is, once I go up to the Menu and select Open Aggregate Device Editor in the AUDIO/MIDI setup utility and try to add a new Aggregate Device setup (step # 6 from the link), the only audio device available is the "Built-in Audio". What's weird is when I have the main Audio MIDI Setup utility open, every single drop-down menu/tab has the "Direct Mix USB 3 1.0.9.1" device right beneath the "Built-in Audio" option. To me that says that the core audio device is indeed recognized by my computer (obviously since I can record with it using Logic). Can anyone help me with this one? Any suggestions?
    Not that it should matter but, the hardware audio interface that I am using is made by the no-longer-existant company once known as Aardvark. I actually had to purchase a third party Core Audio driver just to have it recognized by OS X.
    This is the website where I purchased my audio driver :
    http://www.usb-audio.com/
    A little more on how this device and it's core audio driver function within Logic . . . (Hopefully this might clarify something I may be screwing up) . . .
    I launch Logic with its default Built-in Audio which allows playback of audio from the app. I than go up to Audio Hardware and Drivers and than drop the flip down Driver menu down to the second option, "Direct Mix USB 3 1.0.9.1." Logic than prompts me that I should try to (re)launch Logic Pro to load the appropriate CoreAudio.. I do that. Now I am ready to record guitar through the Direct Mix USB3, I just can't hear anything (unless I use head phones as an output from the Direct Mix).
    Anyway, you all probably already knew what I meant so explaining that was pointless. But my question is, if the Driver is obviously recognized by my comp in both the Audio MIDI Setup and in Logic, than why won't the Direct Mix device show up as a possibility for setting up an aggregate device? Any suggestions? Thanks!
    Power Mac G5 Dual 2.7Ghz 4.5gigs of RAM   Mac OS X (10.4.7)  
    Power Mac G5 Dual 2.7Ghz 2.5gigs of RAM   Mac OS X (10.4)  

  • How to access OBIEE report in J2EE application?

    Hi All,
    I need to integrate OBIEE with my J2ee application. The scenario is something like
    i need to access the reports(that were created by BI Answers) via my j2ee application. I will provide a simple screen and the user will enter a value and i need to pass the value to OBIEE .Then it will filter out the data based on that value and shows to the user.
    I have tried it by using GO URL and i am able to access the OBIEE environment but when i tried to pass the value it doesn't navigate.Even i am not able to search a particular report.
    How could i proceed? Should i use some variable to store the data that is passed for search in OBIEE?
    Pls help me t solve out this. Any idea is highly appreciated.
    Thanks
    Ashok

    STEP 1: Like any other add-on project, refer SBO UI and DI COM to your project. Initialize SBO APPLICATION object and SBO COMPANY object and listen to events. (This is standard add-on project steps)
    STEP 2: Add a Dataset to the project. This is used as a data source to your Crystal Reports. (For more information on this search for Push Technique Crystal Reports)
    STEP 3: Add a Windows Form to your Project.
    STEP 4: Add a Crystal Report Control to it.
    STEP 5: Design report based on dataset added above.
    STEP 6: Launch this Form with required parameters and selection criteria when any even happens.
    Remember there is lot stuff available on net if you search with PUSH TECHNIQUE CRYSTAL REPORT. SAP SDN has lot answers for adding Crystal Reports integration to SAP Business One Add-On.
    HTH
    B Ravi Shankar

  • How can i declare a selection screen in a DP program with transaction code.

    hi friends,
    How can i declare a selection screen in a DP program with transaction code. What are the events and flow logic..

    Search in SCN/Google for Module-pool programming basics.

  • How to can we do selection-screen modification for LDB?

    Hi All,
    I have custom field in my selection-screen of LDB PNP.
    Can you people please let me know how can I put the selection-screen modificaiton For ex:
    i have created
    parameters a as checbox.
    select-options: p_btrtl for p0001-btrtl no-intervals.
    now If the check box is selected then p_btrtl we can enter values or esle If check box is not selected then p_btrtl will be grayed out, ( I.e. SCREEN-INPUT = 0)
    This is simple from ABAP without LDB. But with LDB can we achieve?????????????
    Satish
    Edited by: Satish Vasireddy on Jun 23, 2010 4:05 PM

    you can use the following logic for the additional selection validation. I have done by using PNP LDB. Ex : I have done for one of the field in IT0377.
    SELECT-OPTIONS: s_bplan FOR p0377-bplan.
    *&      Form  check_selection_0377
      This subroutine is used to check the selection screen
    FORM check_selection_0377.
      LOOP AT p0377 WHERE pltyp  IN s_bplan
                     AND levl1 IN s_lti
                     AND   begda LE pn-endda
                     AND   endda GE pn-begda.
        CALL FUNCTION 'HR_CHECK_AUTHORITY_INFTY'
          EXPORTING
            tclas            = 'A'
            pernr            = pernr-pernr
            infty            = p0377-infty
            subty            = p0377-subty
            begda            = pn-begda
            endda            = pn-endda
            level            = 'R'
          EXCEPTIONS
            no_authorization = 1
            internal_error   = 2
            OTHERS           = 3.
        IF NOT sy-subrc IS INITIAL.
          DELETE p0377.
        ENDIF.
      ENDLOOP.
    selection not found and no value selected
      IF sy-subrc NE 0.
        READ TABLE s_bplan.
        IF sy-subrc EQ 0.
          REJECT.
        ENDIF.
        READ TABLE s_lti.
        IF sy-subrc EQ 0.
          REJECT.
        ENDIF.
      ENDIF.
    ENDFORM.                    " check_selection_0377
    Regards,
    Preetham

  • How to utilize index in selection statement

    hi
    how to utilize index in selection statement and how is it reduces performance whether another alternative is there to reduce performance .
    thanks

    Hi Suresh,
    For each SQL statement, the database optimizer determines the strategy for accessing data records. Access can be with database indexes (index access), or without database indexes (full table scan).The cost-based database optimizer determines the access strategy on the basis of:
    *Conditions in the WHERE clause of the SQL statement
    *Database indexes of the table(s) affected
    *Selectivity of the table fields contained in the database indexes
    *Size of the table(s) affected
    *The table and index statistics supply information about the selectivity of table fields, the selectivity of combinations of table fields, and table size.     Before a database access is performed, the database optimizer cannot calculate the exact cost of a database access. It uses the information described above to estimate the cost of the database access.The optimization calculation is the amount by which the data blocks to be read (logical read accesses) can be reduced. Data blocks show the level of detail in which data is written to the hard disk or read from the hard disk.
    <b>Inroduction to Database Indexes</b>
    When you create a database table in the ABAP Dictionary, you must specify the combination of fields that enable an entry within the table to be clearly identified. Position these fields at the top of the table field list, and define them as key fields.
    After activating the table, an index is created (for Oracle, Informix, DB2) that consists of all key fields. This index is called a primary index. The primary index is unique by definition. As well as the primary index, you can define one or more secondary indexes for a table in the ABAP Dictionary, and create them on the database. Secondary indexes can be unique or non-unique. Index records and table records are organized in data blocks.
    If you dispatch an SQL statement from an ABAP program to the database, the program searches for the data records requested either in the database table itself (full table scan) or by using an index (index unique scan or index range scan). If all fields requested are found in the index using an index scan, the table records do not need to be accessed.
    A data block shows the level of detail in which data is written to the hard disk or read from the hard disk. Data blocks may contain multiple data records, but a single data record may be spread across several data blocks.
    Data blocks can be index blocks or table blocks. The database organizes the index blocks in the form of a multi-level B* tree. There is a single index block at root level, which contains pointers to the index blocks at branch level. The branch blocks contain either some of the index fields and pointers to index blocks at leaf level, or all index fields and a pointer to the table records organized in table blocks. The index blocks at leaf level contain all index fields and pointers to the table records from the table blocks.
    The pointer that identifies one or more table records has a specific name. It is called, for example, ROWID for Oracle databases. The ROWID consists of the number of the database file, the number of the table block, and the row number within the table block.
    The index records are stored in the index tree and sorted according to index field. This enables accelerated access using the index. The table records in the table blocks are not sorted.
    An index should not consist of too many fields. Having a few very selective fields increases the chance of reusability, and reduces the chance of the database optimizer selecting an unsuitable access path.
    <b>Index Unique Scan</b>
    If, for all fields in a unique index (primary index or unique secondary index), WHERE conditions are specified with '=' in the WHERE clause, the database optimizer selects the access strategy index unique scan.
    For the index unique scan access strategy, the database usually needs to read a maximum of four data blocks (three index blocks and one table block) to access the table record.
    <b><i>select * from VVBAK here vbeln = '00123' ......end select.</i></b>
    In the SELECT statement shown above, the table VVBAK is accessed. The fields MANDT and VBELN form the primary key, and are specified with '=' in the WHERE clause. The database optimizer therefore selects the index unique scan access strategy, and only needs to read four data blocks to find the table record requested.
    <b>Index Range Scan</b>
    <b><i>select * from VVBAP here vbeln = '00123' ......end select.</i></b>
    In the example above, not all fields in the primary index of the table VVBAP (key fields MANDT, VBELN, POSNR) are specified with '=' in the WHERE clause. The database optimizer checks a range of index records and deduces the table records from these index records. This access strategy is called an index range scan.
    To execute the SQL statement, the DBMS first reads a root block (1) and a branch block (2). The branch block contains pointers to two leaf blocks (3 and 4). In order to find the index records that fulfill the criteria in the WHERE clause of the SQL statement, the DBMS searches through these leaf blocks sequentially. The index records found point to the table records within the table blocks (5 and 6).
    If index records from different index blocks point to the same table block, this table block must be read more than once. In the example above, an index record from index block 3 and an index record from index block 4 point to table records in table block 5. This table block must therefore be read twice. In total, seven data blocks (four index blocks and three table blocks) are read.
    The index search string is determined by the concatenation of the WHERE conditions for the fields contained in the index. To ensure that as few index blocks as possible are checked, the index search string should be specified starting from the left, without placeholders ('_' or %). Because the index is stored and sorted according to the index fields, a connected range of index records can be checked, and fewer index blocks need to be read.
    All index blocks and table blocks read during an index range scan are stored in the data buffer at the top of a LRU (least recently used) list. This can lead to many other data blocks being forced out of the data buffer. Consequently, more physical read accesses become necessary when other SQL statements are executed
    <b>DB Indexex :Concatenation</b>
         In the concatenation access strategy, one index is reused. Therefore, various index search strings also exist. An index unique scan or an index range scan can be performed for the various index search strings. Duplicate entries in the results set are filtered out when the search results are concatenated.
    <i><b>Select * from vvbap where vbeln in ('00123', '00133', '00134').
    endselect.</b></i>
    In the SQL statement above, a WHERE condition with an IN operation is specified over field VBELN. The fields MANDT and VBELN are shown on the left of the primary index. Various index search strings are created, and an index range scan is performed over the primary index for each index search string. Finally, the result is concatenated.
    <b>Full Table Scan</b>
    <b><i>select * from vvbap where matnr = '00015'.
    endselect</i></b>
    If the database optimizer selects the full table scan access strategy, the table is read sequentially. Index blocks do not need to be read.
    For a full table scan, the read table blocks are added to the end of an LRU list. Therefore, no data blocks are forced out of the data buffer. As a result, in order to process a full table scan, comparatively little memory space is required within the data buffer.
    The full table scan access strategy is very effective if a large part of a table (for example, 5% of all table records) needs to be read. In the example above, a full table scan is more efficient than access using the primary index.
    <i><b>In Brief</b></i>
    <i>Index unique scan:</i> The index selected is unique (primary index or unique secondary index) and fully specified. One or no table record is returned. This type of access is very effective, because a maximum of four data blocks needs to be read.
    <i>Index range scan:</i> The index selected is unique or non-unique. For a non-unique index, this means that not all index fields are specified in the WHERE clause. A range of the index is read and checked. An index range scan may not be as effective as a full table scan. The table records returned can range from none to all.
    <i>Full table scan:</i> The whole table is read sequentially. Each table block is read once. Since no index is used, no index blocks are read. The table records returned can range from none to all.
    <i>Concatenation:</i> An index is used more than once. Various areas of the index are read and checked. To ensure that the application receives each table record only once, the search results are concatenated to eliminate duplicate entries. The table records returned can range from none to all.
    Regards,
    Balaji Reddy G
    ***Rewards if answers are helpful

  • TS2755 On new IOS 7, when I message contacts, it selects thier old contact number, despite the fact I have deleted/edited their number in my contacts list. IOnly by going through contacts, can I message the correct number. The old number does not appear t

    On new IOS 7, when I message contacts, it selects thier old contact number, despite the fact I have deleted/edited their number in my contacts list. Only by going through contacts, can I message the correct number. The old number does not appear there, so I am unsure where "messages" is picking up the old number, it doesn't appear that "messages" is synching with "contacts". Any ideas how to fix this?

    On new IOS 7, when I message contacts, it selects thier old contact number, despite the fact I have deleted/edited their number in my contacts list. Only by going through contacts, can I message the correct number. The old number does not appear there, so I am unsure where "messages" is picking up the old number, it doesn't appear that "messages" is synching with "contacts". Any ideas how to fix this?

  • How to read data after select multiple record by checkbox,

    hi experts
    i  m using simple report with check box , and itab whcih contain records
    how to read data after select multiple record by checkbox,
    thanks

    Hi Prashant,
       Try using this logic.This Code displays the list with check boxes. When you check a checkbox and press a button say 'Select All' or 'De Select all' or 'Display'. It will read the data of those records.
    DATA :
      fs_flight TYPE type_s_flight,
      fs_flight1 TYPE type_s_flight1.
    * Internal tables to hold Flight  Details                             *
    DATA :
      t_flight LIKE
      STANDARD TABLE
            OF fs_flight,
      t_flight1 LIKE
       STANDARD TABLE
             OF fs_flight1.
    SET PF-STATUS 'SELECT' .
    PERFORM selection.
    PERFORM displaybasic .
    *                      AT USER COMMAND EVENT                          *
    AT USER-COMMAND.
      PERFORM selectall .
    *&      Form  SELECTION
    *      Select query to reteive data from SPFLI table
    *  There are no interface parameters to be passed to this subroutine.
    FORM selection .
      SELECT  carrid                       " Airline Code
              connid                       " Flight Connection Number                  
        FROM  spfli
        INTO TABLE t_flight.
      DESCRIBE TABLE t_flight LINES w_lines .
    ENDFORM.                               " SELECTION
    *&      Form  DISPLAYBASIC
    *      Display the basic list with SPFLI data
    *  There are no interface parameters to be passed to this subroutine.
    FORM displaybasic .
      LOOP AT t_flight INTO fs_flight.
        WRITE :
             w_check AS CHECKBOX,
             w_mark,
             fs_flight-carrid UNDER text-001,
             fs_flight-connid UNDER text-002.
      ENDLOOP.                             " LOOP AT T_FLIGHT..
      CLEAR fs_flight-carrid .
      CLEAR fs_flight-connid.
    ENDFORM.                               " DISPLAYBASIC
    *&      Form  SELECTALL
    *      To check all the checkboxes with a 'selectall' push button
    *  There are no interface parameters to be passed to this subroutine.
    FORM selectall .
      CASE sy-ucomm.
        WHEN 'SELECT_ALL'.
          w_check = 'X'.
          w_line = 4 .
          DO w_lines TIMES.
            READ LINE w_line .
            MODIFY LINE w_line FIELD VALUE w_check .
            ADD 1 TO w_line .
          ENDDO.                           " DO W_LINES TIMES
          CLEAR w_line.
        WHEN 'DESELECTAL'.
          w_check = space.
          w_line = 4 .
          DO w_lines TIMES.
            READ LINE w_line FIELD VALUE w_mark .
            IF w_mark = space .
              MODIFY LINE w_line FIELD VALUE w_check .
            ENDIF.                         " IF W_MARK = SPACE
            ADD 1 TO w_line .
          ENDDO.                           " DO W_LINES TIMES
        WHEN 'DISPLAY'.
    IF sy-lilli BETWEEN 4 AND w_lines .
        DO w_lines TIMES.
          READ LINE w_num FIELD VALUE w_check INTO w_check
                                     fs_flight-carrid INTO fs_flight-carrid
                                     fs_flight-connid INTO fs_flight-connid.
          IF sy-subrc = 0.
            IF w_check = 'X'
              SELECT  carrid
                      connid
                      fldate               " Flight date
                      seatsmax             " Maximum capacity in economy
                      seatsocc             " Occupied seats in economy class
                FROM  sflight
                INTO  TABLE t_flight1
               WHERE  carrid = fs_flight-carrid
                 AND  connid = fs_flight-connid.
              LOOP AT t_flight1 INTO fs_flight1.
                WRITE :
                  / fs_flight-carrid UNDER text-001,
                    fs_flight-connid UNDER text-002,
                    fs_flight1-fldate UNDER text-007,
                    fs_flight1-seatsmax UNDER text-008,
                    fs_flight1-seatsocc UNDER text-009.
              ENDLOOP.
            ENDIF.                         " IF SY-SUBRC = 0
          ENDIF.                           " IF W_CHECK = 'X'.
          ADD 1 TO w_num.
        ENDDO.                             " DO W_LINES TIMES
        CLEAR w_check.
        w_num = 0.
      ELSE .
        MESSAGE 'INVALID CURSOR POSITION ' TYPE 'E' .
      ENDIF.                               " IF SY-LILLI BETWEEN..
    ENDCASE.                             " CASE SY-UCOMM
    ENDFORM.                               " SELECTALL
    Much Regards,
    Amuktha.

Maybe you are looking for