Logic behind dimension in OBIEE

hi,
Can anyone explain me logic of diamensions in OBIEE? On what basis v need to select chronological keys from DB?
IF u have any real time scenario the post it
IF anyone have any case studies of OBIEE...plz post it

hi User,
Refer : http://www.rittmanmead.com/2007/04/obi-ee-time-dimensions-and-time-series-calculations/
Thanks,
Saichand.v

Similar Messages

  • Urgent - How to join multiple facts and dimensions in OBIEE rpd??

    Hi,
    In my RPD I have 3 facts and 4 dimensions and the joins defined are as below
    Physical layer - All joins are FK and inner (1:N)
    FACTA-------------- DIM_TIME, DIM_CUST,DIM_CAL
    FACTB-------------- DIM_TIME, DIM_CUST,DIM_CAL
    FACTC-------------- DIM_TIME, DIM_CUST,DIM_CAL, DIM_XYZ
    BM layer - All joins are complex, inner
    The logical table F1 pulls columns from FACTA, FACTB and FACTC . Complex join exists between all 4 dimensions DIM_TIME, DIM_CUST,DIM_CAL, DIM_XYZ to logical table F1.
    Issue: I need to build a report with $ column from FACTA, FACTB and FACTC and need to add filter conditions using columns from DIM_TIME, DIM_CUST,DIM_CAL, DIM_XYZ.
    However when ever I add a filter condition from DIM_XYZ the physical query generated is not generating code to access data from FACTA and FACTB. Instead it is subsituting a NULL and just pulls data frm FACTC.
    My Questions: What is the best way to build the physical and BMM layer using FACTA, FACTB,FACTC, DIM_TIME, DIM_CUST,DIM_CAL and DIM_XYZ??
    I need to resolve this issue ASAP so any help is appreciated. Thanks
    Edited by: user11935561 on Feb 10, 2010 6:27 AM
    Edited by: user11935561 on Feb 10, 2010 6:28 AM

    You can find the same issue in
    Logic of queries in OBIEE
    or
    Connection between 2 fact tables
    Follow the link
    http://there-n-back-again.blogspot.com/2009/04/oracle-analytics-how-to-report-over-non.html
    Put 'All' or 'Total' at levels for dim_xxx for those facts you need in your report from facta and factb
    Regards
    Nicolae

  • Setting up a TIME dimension in OBIEE

    Hi,
    We have an Oracle OLAP Cube built using AWM v10.2.0.3A. We have also created a relational view for this cube (using the OLAP view generator) and are now using this view as a data source in OBIEE v.10.1.3.3.2.
    As part of defining the Time dimension in the Business Model Layer of OBIEE repository, we have done all the relevant mappings to the TIME dimension as in the AWM Cube and have marked the dimension as type 'TIME'. Also, for the TIME logical table, we have defined each level (All Years, Year, Month, Quarter, and Day) to have its own chronological key with unique values at all levels. The primary key for our TIME table in the business layer is 'Day'. This level 'Day' is mapped to TIME_DAY_LVLDSC column of the relational view created over the AWM cube. The data type for this column is "VARCHAR". (We basically picked up all the 'Description' columns while creating the view over the cube!)
    With this background of the TIME dimension structure, here is the problem scenario:
    When we try to create a report with one AGO and one TODATE function defined over the "Day" level (both are defined as logical columns), then the report takes forever to run and never comes back with any data/error even for a handful of rows. We are seeking the forum's help on the following:
    1. Is it necessary for the primary key 'Day' of the TIME logical table to be of type DATE? If yes, does this mean that we have to change the column data type in our cube (or select a 'date' type column to be a part of the view and then redo the mapping in the repository) or do we just make a change to the column data type in the physical layer of OBIEE repository?
    2. Going by the description above, is there something missing (other than point 1. above) in the setup of the TIME dimension in OBIEE so as to make it usable for Time Series type of calculations/functions?
    Any help is much appreciated.
    Thanks and Regards,
    Piyush

    Hi Wildmight,
    Thanks a lot for your kind inputs.
    1. No, VARCHAR is fine. You should have also defined unique time keys in your time dimension (Quarter Year, Month Year) and check box 'time dimension' in the properties of your time dimension.
    -->> The Time dimension that we have defined in the Business layer of the repository is mapped to the respective level columns in the AWM cube and has already got unique members at each level. We are using the "Description (LVLDSC)" columns for each level and have defined the "Description" column to have unique values at each level. A sample data set looks like :
    Year:
    2007
    2008
    Quarter:
    QUARTER1 2007
    QUARTER2 2007
    QUARTER1 2008
    QUARTER2 2008
    Month:
    JANUARY 2007
    FEBRUARY 2007
    JANUARY 2008
    FEBRUARY 2008
    Day:
    Monday, January 1st 2007
    Tuesday, January 2nd 2007
    So in the above case, do we still need to define a unique key for each level like Quarter Year, Month Quarter, etc.? (Please note that the check box for 'TIME' dimension is checked !)
    2. Is your AGO based on TODATE? or your TODATE based on AGO?
    -->> I am not sure what this really means - however I can tell you that we have created two new logical columns (in the fact table in Business Layer) : one to show the measure as TODATE for Day level, and the other to show the measure as Day Ago.
    So it means that we are trying to create two reports with three columns as below:
    - Day     Measure on Day     Measure Todate (Day)
    - Day     Measure on Day     Measure Day Ago (Day, 1)
    I hope I have been able to clarify the problem scenario with this. Does this setup seem correct to you?
    Many thanks for your help.
    Best Regards,
    Piyush

  • Could you please help me understand the logic behind certain things in OSX?

    Ok, so I try to be an open-minded guy, and I bear no particular allegiance to either OS. I own a Sony TZ and a Mac mini, and my wife has a MacBook Pro. I use both Oses.
    There are certain things I have trouble understanding in th Mac OS, so what I'd really like to understand the logic behind certain design decisions in the OS, and why these might be better ways of accomplishing things. I know how to get around all of the things I mention, so I'm not looking for instructions; rather I'm looking for well-thought out explanations for why these features are the way they are.
    *1. Programs don't quit when you close the window.*
    - This totally puzzles me. Why design it so that program windows are independent are from the running program itself? There must be a reason, cold someone explain how this is more efficient? To me, it's simpler to click an X on the window you are working on to completely shut down a program, rather than to either mouse through menus to select quit, or be obligated to using Command Q keyboard shortcut.
    *2. Menu bars are on the desktop.*
    - Related to the first point, why make the main thing framing your desktop be something which is always changing depending on the program? Why have file menus outside the main window of the program. Having the menu bar on the desktop then necessitates an additional area, the dock, which has to be used as a launch bar and to tell you what programs are currently running. That obligates you to having 3 different areas of screen: 1 for program menus, 1 for running programs, and the program window itself. This seems very inefficient to me. Not to mention all the messy-looking floating palettes all over the place, again because everything is separated and not nicely contained in a single program window.
    - Really, having a changing menu bar that frames the desktop isn't even consistent wth the whole desktop metaphor, which is that you place things on a desktop, like programs, files, etc. Are you changing the whole desk everytime you load a new program, yet the wallpaper stays the same? Doesn't seem to be logically consistent to me.
    *3. No delete key.*
    - This one really gets me. Why make such a commonly used key be a function key (Fn + Backspace)? Why make the user press a secondary key for a major function?
    *4. No Cut command.*
    - I read something about how Cut doesn't actually make sense when moving files around, but I obviously didn't fully understand it. Why make the user command drag, when you can just do Ctrl X??.
    *5. Launching Apps from the Finder.*
    - This seems weird to me, that you find and launch applications from the same thing you use to view files. Program icons in the finder are placeholders for the entire program, not files, yet they are found in the file viewer. Again, to me this seems logically mixed. I really dislike scrolling through Finder to look for apps. I know there is Spotlight and the dock (used as a quicklauncher), but these are really just workarounds for a setup which seems inherently illogical. To me at least, a menu of applications make more sense, ie, the start menu.
    Anyway, those are all I can think of now, although there are other things aout OSX that don't make sense to me.
    Thanks in advance! If I can understand Apple's reasoning and it is convincingly better, that will go a long way towards making me more comfortable with this OS.

    1. Programs don't quit when you close the window.
    That's really more a matter of what you're used to. It comes down to a programming decision as to what Apple and Microsoft considered to make sense. MS thinks that if there are no open windows, you're done using the app. Apple thinks you aren't necessarily done yet, as others have mentioned. I certainly wouldn't want Photoshop to quit every time I closed the last open image I was working on. Would be nice though if Safari would quit when I close the last open browser window. It's quick to relaunch if you really weren't done with it, so wouldn't be much of a bother to have it shut down with the last window.
    2. Menu bars are on the desktop.
    Makes way more sense the Microsoft's approach of repeating the same file menu on every open document in a program. How many places do you need to see File, Options and other common menu headings?
    2. Menu bars are on the desktop.
    Related to number two. The forward app is the only one you can directly work in, so why not have the menu bar change to reflect the choices for that application? When you go back to the previous app you were in, the menu bar changes back. So what loss of functionality is there? It comes back to not having menu bars on every single open window. There's no need or purpose for it.
    3. No delete key.
    Backspace does the same thing.
    4. No Cut command.
    Command+X, not Ctrl+X. This is Mac, not Windows. There's also very little need to ever do this from the keyboard. If you're moving files that are on the same drive/partition, then just drag and drop from the target folder window to the source. It's automatically a move. If going from one physical drive or partition to another, it's automatically a copy. Press and hold the Command key during the drag to make it a move.
    Besides, you don't really think Windows cuts the entire folder or file contents into RAM, do you? If your computer has 4 GB of RAM, and you cut 12 GB of data, it of course can't possibly fit in the clipboard. All Windows does when you do a cut is visually remove the files and folders from the screen. If the items are going to a location on the same drive/partition, it does the same thing as if you did a drag and drop move. The file table is simply updated to reflect the new file or folder locations. If it's to a different drive/partition, it then performs a copy then delete action, same as OS X.
    5. Launching Apps from the Finder.
    A program is just as much a file as any other file. It takes up space on the drive. The OS of course knows what to do with it when you double click an app. Same as it knows what to do when you double click a document related to an app. Windows is no different. An .exe file is also just as much a file as a .doc file. The .exe extension tells Windows to try and treat it as a program to load into RAM. It's not just a simple placeholder. The program has to be made up of something.

  • What is the logic behind the start routine

    Dear One's,
    Kindly take a moment and explain the logic behind this start routine written in update rules of ODS.
    PROGRAM UPDATE_ROUTINE.
    $$ begin of global - insert your declaration only below this line  -
    $$ end of global - insert your declaration only before this line   -
    The follow definition is new in the BW3.x
    TYPES:
      BEGIN OF DATA_PACKAGE_STRUCTURE.
         INCLUDE STRUCTURE /BIC/CST_T07_O006.
    TYPES:
         RECNO   LIKE sy-tabix,
      END OF DATA_PACKAGE_STRUCTURE.
    DATA:
      DATA_PACKAGE TYPE STANDARD TABLE OF DATA_PACKAGE_STRUCTURE
           WITH HEADER LINE
           WITH NON-UNIQUE DEFAULT KEY INITIAL SIZE 0.
    FORM startup
      TABLES   MONITOR STRUCTURE RSMONITOR "user defined monitoring
               MONITOR_RECNO STRUCTURE RSMONITORS " monitoring with record n
               DATA_PACKAGE STRUCTURE DATA_PACKAGE
      USING    RECORD_ALL LIKE SY-TABIX
               SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
      CHANGING ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
    $$ begin of routine - insert your code only below this line        -
    fill the internal tables "MONITOR" and/or "MONITOR_RECNO",
    to make monitor entries.
    DATA: ITAB_/BIC/AT07_O00600 TYPE SORTED TABLE OF /BIC/AT07_O00600
          WITH HEADER LINE
          WITH UNIQUE DEFAULT KEY INITIAL SIZE 0,
          DATA_PACKAGE_NEW TYPE STANDARD TABLE OF DATA_PACKAGE_STRUCTURE
          WITH HEADER LINE
          WITH NON-UNIQUE DEFAULT KEY INITIAL SIZE 0.
    sort the datapackage based on lead number and lead program definition
    SORT DATA_PACKAGE BY /BIC/TLDNR /BIC/TLDPRGFTE.
    from the resources ODS read all lead values based on the values those
    SELECT * FROM /BIC/AT07_O00600 INTO TABLE
             ITAB_/BIC/AT07_O00600
             FOR ALL ENTRIES IN DATA_PACKAGE
             WHERE /BIC/TLDNR = DATA_PACKAGE-/BIC/TLDNR.
    FIELD-SYMBOLS: <LS_DATA_PACKAGE> TYPE DATA_PACKAGE_STRUCTURE.
    FIELD-SYMBOLS: <LS_/BIC/AT07_O00600> TYPE /BIC/AT07_O00600.
    loop at internal table of ODS to check if there are lead program defin
    from the source which mean the values of lead program definition in OD
    values of lead program definition in datapackage.
       LOOP AT ITAB_/BIC/AT07_O00600 ASSIGNING <LS_/bic/at07_o00600>.
         READ TABLE DATA_PACKAGE
          TRANSPORTING NO FIELDS
          WITH KEY
          /BIC/TLDNR = <LS_/bic/at07_o00600>-/BIC/TLDNR
          /BIC/TLDPRGFTE = <LS_/bic/at07_o00600>-/BIC/TLDPRGFTE
          BINARY SEARCH.
          IF SY-SUBRC <> 0.
    new lines with zero values are inserted because there are no correspon
    DATA_PACKAGE_NEW-/BIC/TLDNR = <LS_/BIC/AT07_O00600>-/BIC/TLDNR.
    DATA_PACKAGE_NEW-/BIC/TLDPRGFTE = <LS_/BIC/AT07_O00600>-/BIC/TLDPRGFTE.
      DATA_PACKAGE_NEW-/BIC/TLDFTE = 0.
      APPEND DATA_PACKAGE_NEW.
         ENDIF.
      ENDLOOP.
    append the new records which are created for the leads in the datapack
      APPEND LINES OF DATA_PACKAGE_NEW TO DATA_PACKAGE.
    reset the sorting of the datapackage back to its original state
      SORT DATA_PACKAGE.
    if abort is not equal zero, the update process will be canceled
      ABORT = 0.
    $$ end of routine - insert your code only before this line         -
    ENDFORM.
    Thanks in advance

    hi,
    it's retrieve data from table /BIC/AT07_O00600
    and add to data package, so your records will be more than from source
    hope this helps.

  • Add logic behind 'Update Opportunity Totals' button in Oracle CRM On Demand

    HI,
    I need to add custom logic behind 'Update Opportunity Totals' button in Oracle CRM On Demand. Can anyone please let me know where can I implement this logic? Where can I find already implemented code of  'Update Opportunity Totals' button.
    Thanks,
    RM

    Pl post this in a Siebel related forum
    HTH
    Srini

  • Program/Logic behind the Copy functionality in SE38 Transaction

    Hi,
    In SE38 by using the copy option, Program along with sub-objects can be copied to another object.
    Please let me know the Program/Logic behind that functionality.
    Also let me know is there any option in SAP to copy program from one system to another system.
    Thanks,
    Madhuri.

    Hi Madhuri
    This is tha Program logic behind copying object thru se38
    where p_operation would have the value 'COPY'' in it.
      DATA: l_request TYPE REF TO cl_wb_request,
            l_wb_todo_request TYPE REF TO cl_wb_request,
            l_object_name TYPE seu_objkey,
            l_object_type TYPE seu_objtyp,
            l_program_state TYPE REF TO cl_wb_program_state.
      IF trdir-subc = 'I'.
        l_object_type = swbm_c_type_prg_include.
        CALL METHOD cl_wb_object_type=>get_concatenated_key_from_id
          EXPORTING
            p_key_component1 = space
            p_key_component2 = rs38m-programm
            p_external_id    = l_object_type
          RECEIVING
            p_key            = l_object_name.
      ELSE.
        l_object_type = swbm_c_type_prg_source.
        l_object_name = rs38m-programm.
      ENDIF.
      CREATE OBJECT l_program_state.
      CREATE OBJECT l_request
          EXPORTING p_object_type =  l_object_type
                    p_object_name = l_object_name
                    p_operation   = p_operation
                    p_object_state = l_program_state .
      CALL METHOD
        wb_pgeditor_initial_screen->mngr->request_tool_access
        EXPORTING
          p_wb_request      = l_request
        IMPORTING
          p_wb_todo_request = l_wb_todo_request
        EXCEPTIONS
          action_cancelled  = 1
          no_tool_found     = 2.
      IF sy-subrc NE 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        EXIT.
      ENDIF.

  • Logic behind MC46 & MC50

    Hi Everybody,
    I want to know the logic behind
    1)MC46 i.e. Report for Non moving & slow moving stock
    2)MC50- Report for Dead stock
    My client wants to know the logic behind these reports.
    What i need to explain them exactly?
    Please guide.

    The logic behind these reports is to identify dead and slow moving stock (and it's monetary value) in order to make a stocking decision such as to promote the material (reduce price), scrap the material (full or partial stock quantities). These reports may also help in future demand/forecast planning.
    Dead and slow moving stock has lots of negative impacts on an organisation such as increased inventory levels (monet tied up in stock), reduced stock turn and wasted physical warehouse space (particularly if dead/slow moving stock is preventing a fast moving item from being in the warehouse/plant).
    Regards,
    Matt

  • What is the logic behind the list of default colors in the color tab of the score options in the project settings interface?

    I desperately want to know why each note is assigned it's particular color in the score tab of the projects settings interface...
    Was this done at random or is there some logic behind it all?  Einstein and Newton have completely different ideas about note/color association...their theorys can be easily found on the internet.  I've messed around with applying their ideas to the user pallette just for fun.  Now, I really want to know if the makers of Logic chose the colors they did for the factory defaults for a particular reason.  Please help if you can!

    hi,
    it's retrieve data from table /BIC/AT07_O00600
    and add to data package, so your records will be more than from source
    hope this helps.

  • What is Apple's logic behind this?

    I open a file (any kind will do) and make some changes. After I'm done, I hit CMD + W to close the file and the program correctly asks if I want to save my changes, close without saving, or cancel closing the file. The Save button is highlighted on the button and outside the button. If I hit the tab button, the outside highlight moves to the different buttons, but the button highlight remains on the Save option, so when I hit enter, it thinks I'm saying to Save.
    Can anyone explain the logic behind this? I just don't get why Apple thinks this is an efficient/right way to do things. Thanks for any helpful answers.

    Hi--
    To actually select the button that has focus (the outside highlight), hit the space bar.
    I suspect the rationale is something like this: they don't want to override the usual functionality of the buttons, but just offer a second or third way to select buttons.
    Many, if not most apps, particularly in the situation you describe, already have pretty solid keyboard shortcuts for the three buttons. Of course, "enter" for "Save", "esc" for "Cancel", and "command"-"d" almost always works for "Don't Save". From observation, of those people who use keyboard shortcuts in dialogs, this is by far the most common way they do it. I don't think I've ever seen anyone use the tab key in dialog boxes (and I think it's off by default except for navigating between text boxes).
    charlie

  • What's the logic behind the prefixes in User Tips?

    I'm browsing through the User Tips, and maybe my memory is fuzzy, but I don't recall all those prefixes in the subject lines.
    e.g. kmosx, kmos, k.mac, kad, kaw, etc.
    Is there a logic behind it somewhere that would be useful for searching? e.g. put one in the search box and get all the User Tips on such-and-such topic?
    If so, can someone please sticky-post a glossary in the User Tips forum?
    Thanks.

    Hi, Marlinespike - These are Knowledge Base keywords. A glossary of these keywords is here:
    http://docs.info.apple.com/article.html?artnum=75178
    Tuttle
    1457/8165

  • Time Dimension in OBIEE

    Hi all,
    I have an essbase cube with 2 dimensions related to time.
    Year and Time (that contains Qtr, Months and days).
    I'm working with OBIEE and would like to know if I can create 1 Time dimension that combines Year and Time so I can have:
    2010
    - QTR1
    -- Jan
    -- Feb
    -- Mar
    2011
    - QTR1
    -- Jan
    -- Feb
    -- Mar
    I read the OBIEE tutorials but it doesn't show how to do this. May be is not possible?
    Thanks

    Hi
    One cannot modify the cube dimensions from OBIEE. Also, even in OBIEE, you get the data for the intersection of at least one member from each dimension. Which looks like:
    Year Time Time
    2010 QTR1 Jan, Feb, Mar
    2011 QTR1 Jan, Feb, Mar
    But, you can use some options like 'hide column' etc in order not to show a particular dimension(s) in the report.
    Regards
    Vikas

  • Significance & logic behind GBB in FI MM integration

    Hi
    Can some one pls explain me the logic behind GBB in FI MM integration. I was not able to explain clearly when I was asked this question.
    Pls do reply to me
    Thanks,
    Lavanya

    Hello,
    Materials management automatic account determination is a major integration point between FI & MM.  We will configure the a/c assignment for the processing key like BSX, WRX, GBB etc., BSX is used to determine the inventory a/c to which MM transaction are posted, WRX for GR/IR and GBB for Offsettings.
    Ex: You could use it to determine which inv a/c to use to increase inventory through a goods receipt or which inv a/c to use to decrease inventory through a goods issue. Just double click on processing key BSX and system will ask you for the chart of accounts for which you wish to configure the automatic a/c assignment. After entering the appropriate chart of a/c then system presented you posting procedure rules screen. Here you will get three different control indicators that you can set like Dr/Cr, Valuation modifier and Valuation class.
    Thanks
    Para

  • Logic behind ZMNG field of 2LIS__04_P_COMP datasource

    Hello Experts,
    Cab anyone please tell me How ZMNG field of 2LIS__04_P_COMP datasource populates...?
    what is logic behind ZMNG?

    Hi,
    ZMNG or target consumption quantity is basically requirements quantity
    on the basis of the quantity produced.
    Target consumption quantity
    Definition
    Requirements quantity on the basis of the quantity produced.
    If the component quantity is constant for each order, the target
    consumption quantity corresponds to the requirements quantity, otherwise
    the target consumption quantity is calculated using the following
    formula:
    Quantity of goods received * required quantity per order unit of measure
    order item quantity * ( order item quantity - quantity of scrap from
    an order item )
    make sure you have note 1497825 installed.
    Colin

  • What is the logic behind the oracle database connections....

    Hi,
    We have crontab alerts are enabled for the oracle database client connection.
    For Production databases the alerts are coming continuously until it gets connected.
    For QA databases it will throw the message that the oracle client connection fails and again it will prompt whenever it gets connected.
    Please let me know the logic behind these scnerions.
    Pavan..
    Edited by: dm_ptldba on Feb 14, 2012 6:45 AM

    Hi,
    Thanks for the update, Sorry the question was not clear. let me put it in a clear way.
    Following is our crontab which alerts us if any database/listener goes down. But it alerts us only once for one successful/unsuccessful connection. For Eg: If the crontab not able to connect to the database for once then it throws an alert only once and waits for a successful connection.
    I would like to change the logic in this crontab in such a way that, it should keep on alerting us for all the unsuccessful connections and once or twice for successful connection.
    . /home/oracle/.bash_profile
    . /opt/oracle/cron/cron_email
    sidfile=/home/oracle/scripts/db-list.txt
    dboutfile=/home/oracle/scripts/dboutfile.tmp
    echo $ORACLE_HOME
    TNS_DIR=$ORACLE_HOME/network/admin
    ORA_BIN=$ORACLE_HOME/bin
    cat $sidfile | while read SIDNAME
    do
    $ORA_BIN/sqlplus -s system/******@$SIDNAME 2> /dev/null >> $dboutfile <<EOF
    @/home/oracle/scripts/db_up.sql
    EOF
    if [ $? -eq 0 ]
    then
    STATUS=1
    if [ -f /home/oracle/scripts/${SIDNAME}-down.txt ]
    then
    /bin/mail -s "Alert :Oracle database instance \"${SIDNAME}\" is up & connected..." [email protected] </dev/null
    rm -rf /home/oracle/scripts/${SIDNAME}-down.txt
    fi
    else
    if [ -f /home/oracle/scripts/${SIDNAME}-down.txt ]; then
    echo "";
    else
    touch /home/oracle/scripts/${SIDNAME}-down.txt
    echo ${SIDNAME} "not Connected ..."
    /bin/mail -s "Alert :Oracle database instance \"${SIDNAME}\" is down......" [email protected] </dev/null
    fi
    fi
    done
    Thank you.
    PTLDBA

Maybe you are looking for