Function for linking two dimensions

Hi
I've a scenario in which i've 6 dimensions where two dimensions should be linked. Let's say i've a Dimension called Employees and another one called Roles.
If i select an employee my Roles pov or page should only populate those roles which that employee is assigned.
They want to see the employee and role name on screen. I'm using Hyperion Financial Reporting
Regards
Celvin
Edited by: user10091507 on Oct 8, 2008 5:38 AM

the only way dimension members from different dimenasions can be linked is by data.
meaning you always fetch data on some dimension member combination. By using suppress missing option, you will get only the combinations of members which has data.
I think the best way for you might be to use employee as UserPOV and Role as page. Then use missing suppress option.
So when you will run the report for selected employee, it will automatically remove the role on which that employee dont have data.
Hope this works for you.
Thanks,
Rahul

Similar Messages

  • How to create menu function for link to open file

    Hi,
    I need help how to create menu function for link to access file and allow user to save the file when click on it.
    The file will keep inside server.
    Thank you.
    Regards,
    Wilson

    I need help how to create menu function for link to access file and allow user to save the file when click on it.
    The file will keep inside server.AFAIK, you have to write a custom code to achieve this and Oracle does not provide this functionality.
    If you want to store the file as an attachment, please see (How to Store Image/PDF Attachments on the File System in 11i and R12 (like Attachment File Directory) [ID 294525.1]).
    Thanks,
    Hussein

  • Query for Linking Two Tables without Reference

    Hi Folks,
    Good Day!
    I have this dilemma on how to link two tables without a reference. In the Business Partner Master Data, there is a field for the Territory which is from the table OTER. This OTER focuses on its description. Once you have added the particular Territory for that Business Partner, it is being stored in the Territory field of the BP right? Our client wants to have an automated way of searching for the Business Partner's Profit Center in creating a Sales Order wherein it is the same as the Business Partner's Territory. The Profit Center is from the table OPRC.
    When I create a Sales Order, after I have entered the Business Partner/Customer Code, the Profit Center should have the value of the Profit Center Code wherein it is the Business Partner's Territory. My query will go like this:
    Enter the BP/Customer Code automatically the Profit Center code where Profit Name = BP's Territory.
    OTER and OCRD don't have connections. How can it be?
    I'm thinking of retrieving the Territory first before the Profit Center but can you suggest of any other way?
    Thank you much!
    Regards,
    Fringe

    Hi Fringe,
    Okay, I already understood your case here. I presume your configuration as follows:
    OTER (Territory)
    territryID - descript
    1 - Philippine
    2 - Indonesia
    3 - Germany
    OPRC (Cost Centre)
    PrcCode - PrcName
    25 - Philippine
    33 - Indonesia
    47 - Germany
    Was above illustration correct? Then, you could use this formatted search in Cost Centre / Dimension field in Sales Order rows
    SELECT PrcCode FROM OPRC WHERE PrcName=(
    SELECT TOP 1 descript FROM OTER T0
    INNER JOIN OCRD T1 ON T0.territryID=T1.Territory
    WHERE T1.CardCode=$[OCRD.CardCode.0])
    However, I suggest you use a little bit different approach here. Since you can't define Territory Code / Territory ID (you could only type the Territory name, Philippine etc.), why don't you standardize Territory name with Cost Centre code? Let say, you define Philippine as PHI, Indonesia as INA, Germany as DEU and so on. Therefore, user can read the Cost Centre or more precisely Distribution Rules in Sales Order form in more familiar way.
    OTER (Territory)
    territryID - descript
    1 - PHI
    2 - INA
    3 - DEU
    OPRC (Cost Centre)
    PrcCode - PrcName
    PHI - Philippine
    INA - Indonesia
    DEU - Germany
    When FMS worked in Sales Order document, your user will read PHI instead of 25, should be more familiar to them. With that being said, you could use simpler FMS
    SELECT descript FROM OTER T0
    INNER JOIN OCRD T1 ON T0.territryID=T1.Territory
    WHERE T1.CardCode=$[OCRD.CardCode.0]
    You only need to maintain consistency between Territory Name and Cost Centre code. Just my two cents. Hope this help.
    Best Regards,
    Hendry Wijaya

  • How to use Remote key for linking two repository

    Hi,
    I have a challenge like not to repeate common tables like Company_code,Currency,Vendor name,customer name across all repositories.
    Is there any way I can use 'Remote key' to link different repository.
    I can create a Main table with all common attributes required across the repository but want to know how I can connect it to different repository.
    For example to get company-code in Vendor table , how can I link Company-code main table(customized) in another repository may be thru 'Remote key'.
    Going thru java api route is not prefffered for the sake of simple solution.
    Appreciate your help in providing any idea and detail steps for the process.
    -regards, Reo

    could you confirm the name and the existence of this file "IOMM_20121213_060736.csv" ?
    same error like:
    http://www.oracle-base.com/articles/9i/external-tables-9i.php
    if the load files have not been saved in the appropriate directory the following result will be displayed.
    SQL> SELECT *
      2  FROM   countries_ext
      3  ORDER BY country_name;
    SELECT *
    ERROR at line 1:
    ORA-29913: error in executing ODCIEXTTABLEOPEN callout
    ORA-29400: data cartridge error
    KUP-04040: file Countries1.txt in EXT_TABLES not found
    ORA-06512: at "SYS.ORACLE_LOADER", line 14
    ORA-06512: at line 1Edited by: Fran on 10-ene-2013 23:32

  • OBIEE-can we link two dimension tables belonging to different fact tables?

    Hi ,
    I have just started with OBIEE concepts....need your views on this issue:
    Fact 1 -> Dim 1, Dim2,Dim3 and so on..
    Fact 2 -> Dim a, Dim b,Dimc and so on...
    If I link Dim1 and Dim a with a valid key ,would that distort the star schemas to slowflake in BMM layer?
    Thanks in advance!
    Neha

    I don't see this that would make it snowflake more like what I think as conforming dimensions. You need to make sure the grain of the measures is at what level , the they are same grain then you should be good however if they are different then you would start seeing null values.
    Fact Measures use the same, conformed dimensions like Dim1 and Dim a if you trying to generate from multiple facts, the BI server was able to automatically stitch them together into a single result set. If they came from the same fact table that's easy as its only one single table, but if you are pulling from different fact tables, the conformed dimensions would allow them to be stitched into the same report
    Conformance means that these sources can be mapped to a common structure – the same levels – and also the same data members.
    Mark if helps.
    Thanks,
    SVS

  • ALV table with two dimensions and a link in each cell to a document

    Hi,
    I want to create an ALV output for a 2-dimension table. The table should look like:
    ---  |  Col1  |  Col2  | ...
    L1 | Cell11 | Cell12 | ...
    L2 | Cell21 | Cell22 | ...
    Do you have any hints how I could implement such a two dimensional ALV with different links when clicking on Cell11, Cell12, Cell21, ....
    Thanks for your help!
    Caroline

    if u use OO ALV,
    1.on clicking CELL1, CELL2 etc, to get different links,
    u can put hotspot for the fields in fieldcat
    and u can handle method
    button_click event of cl_gui_alv_grid.
          CLASS LCL_EVENT_RECEIVER DEFINITION
    CLASS LCL_EVENT_RECEIVER DEFINITION.
      PUBLIC SECTION.
        METHODS HANDLE_CLICK_ROW_COL
        FOR EVENT CLICK_ROW_COL OF CL_GUI_ALV_GRID
        IMPORTING ROW_ID COL_ID.
    ENDCLASS.                    "cl_event_receiver DEFINITION
          CLASS CL_EVENT_RECEIVER IMPLEMENTATION
    CLASS LCL_EVENT_RECEIVER IMPLEMENTATION.
      METHOD HANDLE_BUTTON_CLICK.
        perform button_click using ROW_ID COL_ID.
      ENDMETHOD .                    "handle_top_of_page
    ENDCLASS .                    "cl_event_receiver
    2.
    FOR GETTING TWO DIMENSIONS, HANDLE PRINT_TOP_OF_PAGE
    and using write statements, build a row at the top of grid.
    or else
    IN THE LAYOUT , U CAN PLACE BUTTONS JUST ABOVE THE CUSTOM CONTAINER

  • Linking two documents in deski

    Hello Experts
        I am new to BO i am trying to link two documents in Deski But i am facing some problem.Can anyone explain me what are steps we need to do for linking two documents.
    Regards,
    Shanmugam

    Hi,
    Following information might be helpful in resolving your query.
    When  link Report1 to Report 2 (universe1.column = universe2.column) so that Report 1 displays only those rows having the Office Number in Report2.
    Cause
    Report pulling data from different universes with different dadabases.
    Resolution
    To get this data by editing the query in the querypannel with  "Select Query Results" operand ,place the universe2.column in condition pane and run the report the we can get correct results from different universe with different databases.
    Regards,
    Sarbhjeet Kaur

  • Saving two dimensions od image for web

    Hi there,
    I have made script (with your help ) to export images for web with dimensions 300x300 px. Now I want that my script do one more resize of that files so that i get two files one 300x300 and another 66x66 px. I will post my script and ask you to hel me find the bug
    And one more question. My script exports file name + jpg but it also keeps orginal extension so I get ie. FileName.psd.jpg
    can you help me fixing this in my script... else is fine...
    thank you,
    Voah
    Edit:
    In the meen time I managed to resolve the problem so here is the new script
    But I have one more thing I would like to do. I have to manually make folder "300x300 and "66x66" or my script stops. How coud I make that script make that folders? (under inputFolder/300x300/ and inputFolder/66x66/)
    // Save current dialog preferences
    var startDisplayDialogs = app.displayDialogs;    
    // Save current unit preferences
    var originalRulerUnits = preferences.rulerUnits;
    preferences.rulerUnits = Units.PIXELS;
    var inputFolder = Folder.selectDialog("Select the input folder");
    //var outputFolder = Folder.selectDialog("Select the output folder");
    ProcessImages();
    function ProcessImages() {
      var filesOpened = 0;
    //   if ( inputFolder == null || outputFolder == null)
         if ( inputFolder == null) {
                alert("No source folder selected");
    //     if ( outputFolder == null) {
    //       alert("No output folder selected");
    //else{
      var fileList = inputFolder.getFiles();
      for ( var i = 0; i < fileList.length; i++ ) {
           if ( fileList[i] instanceof File && ! fileList[i].hidden) {
                     open( fileList[i] );
                     ResizeImage();
                     filesOpened++;
      return filesOpened;
    function ExportPng(filePrefix, fileSuffix){
    try
    var docRef = app.activeDocument;
    var docName = app.activeDocument.name.slice(0,-4);
    var saveOptions = new ExportOptionsSaveForWeb();
    saveOptions.quality = 70;
    saveOptions.format = SaveDocumentType.JPEG;
    saveOptions.optimized = true;
    docRef.exportDocument(File(app.activeDocument.path+'/300x300//'+docName+'.jpg'), ExportType.SAVEFORWEB, saveOptions);
    catch (e)
    alert("Error encountered when attempting to save the image. \r\r" + e);
    return;
    // funkcija export 2
    function ExportPng2(filePrefix, fileSuffix){
    try
    var docRef = app.activeDocument;
    var docName = app.activeDocument.name.slice(0,-4);
    var saveOptions = new ExportOptionsSaveForWeb();
    saveOptions.quality = 70;
    saveOptions.format = SaveDocumentType.JPEG;
    saveOptions.optimized = true;
    docRef.exportDocument(File(app.activeDocument.path+'/66x66//'+docName+'.jpg'), ExportType.SAVEFORWEB, saveOptions);
    catch (e)
    alert("Error encountered when attempting to save the image. \r\r" + e);
    return;
    function ResizeImage()
    if (app.documents.length > 0) {
        var docRef = app.activeDocument;
        var n = docRef.pathItems.length;
            if((n>0)&&(docRef.pathItems[0].name!="Work path" ))  {
                 docRef.pathItems[0].makeSelection();
                 docRef.selection.invert();
                 docRef.selection.clear();
                 docRef.selection.deselect();
       function fitImage() {
    var docRef = app.activeDocument;
    docRef.trim()
    var docWidth = docRef.width.as("px");
    var docHeight = docRef.height.as("px");       
    if (docWidth / docHeight > 4.8)
        docRef.rotateCanvas (315)
        docRef.trim()
    else if (docHeight / docWidth > 4.8)
        docRef.rotateCanvas(45)
        docRef.trim()
    if (docWidth < docHeight)
              docRef.resizeImage(undefined, UnitValue(270,"px"), 72,  ResampleMethod.BICUBIC )
          else if (docWidth > docHeight)
                          docRef.resizeImage(UnitValue(270,"px"),undefined, 72,  ResampleMethod.BICUBIC )
          else if (docWidth == docHeight)
                    docRef.resizeImage(UnitValue(270,"px"),UnitValue(270,"px"), 72,  ResampleMethod.BICUBIC )
    docWidth = docRef.width.as("px");
    docHeight = docRef.height.as("px");       
    if (docWidth < docHeight)
                        docRef.resizeCanvas(UnitValue(300,"px"), UnitValue(300,"px"), AnchorPosition.MIDDLECENTER);
          else if (docWidth > docHeight)
                docRef.resizeCanvas(UnitValue(300,"px"), UnitValue(300,"px"), AnchorPosition.MIDDLECENTER);
          else if (docWidth == docHeight)
                docRef.resizeCanvas(UnitValue(300,"px"), UnitValue(300,"px"), AnchorPosition.MIDDLECENTER);
    var docRef = app.activeDocument;
    var savedState = docRef.activeHistoryState;
    fitImage();
    app.displayDialogs = DialogModes.NO;
    ExportPng( File( "",".jpg" ))
    docRef.resizeImage(UnitValue(66,"px"),UnitValue(66,"px"), 72,  ResampleMethod.BICUBIC );
                ExportPng2( File( "",".jpg" ))
    docRef.close(SaveOptions.DONOTSAVECHANGES);
    docRef = null;
    // Reset app preferences
    app.displayDialogs = startDisplayDialogs;
    preferences.rulerUnits = originalRulerUnits;

    Does this help?
    main();
    function main(){
    var originalRulerUnits = preferences.rulerUnits;
    preferences.rulerUnits = Units.PIXELS;
    var inputFolder = Folder.selectDialog("Select the input folder");
    if(inputFolder == null) return;
    var fileList = inputFolder.getFiles(/\.(jpg|tif|psd|png)$/i);
    var outputFolder1 = Folder(inputFolder + "/300x300");
    if(!outputFolder1.exists) outputFolder1.create();
    var outputFolder2 = Folder(inputFolder + "/66x66");
    if(!outputFolder2.exists) outputFolder2.create();
    for (var a in fileList){
    open(fileList[a]);
    var Name = decodeURI(activeDocument.name).replace(/\.[^\.]+$/, '');
    app.activeDocument.trim(TrimType.TRANSPARENT);
    FitImage(300,300);
    var saveFile = File(outputFolder1 + "/" + Name + ".jpg");
    SaveForWeb(saveFile,70);
    FitImage(66,66);
    var saveFile = File(outputFolder2 + "/" + Name + ".jpg");
    SaveForWeb(saveFile,70);
    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
    preferences.rulerUnits = originalRulerUnits;
    function FitImage( inWidth, inHeight ) {
    var desc = new ActionDescriptor();
    var unitPixels = charIDToTypeID( '#Pxl' );
    desc.putUnitDouble( charIDToTypeID( 'Wdth' ), unitPixels, inWidth );
    desc.putUnitDouble( charIDToTypeID( 'Hght' ), unitPixels, inHeight );
    var runtimeEventID = stringIDToTypeID( "3caa3434-cb67-11d1-bc43-0060b0a13dc4" );
    executeAction( runtimeEventID, desc, DialogModes.NO );
    function SaveForWeb(saveFile,jpegQuality) {
    var sfwOptions = new ExportOptionsSaveForWeb();
       sfwOptions.format = SaveDocumentType.JPEG;
       sfwOptions.includeProfile = false;
       sfwOptions.interlaced = 0;
       sfwOptions.optimized = true;
       sfwOptions.quality = jpegQuality;
    activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, sfwOptions);

  • Please help---merge function for two arrays.

    I am trying to create a merge function that merges two sorted arrays into a third array. I know what I am supposed to do, at least in theory, but I have been completely unsuccessful with actually getting the code to work. Since it is private, you can't directly access the arrays, you have to just reference them. could someone please help me out.
    import java.io.*;
    class OrdArray
    private long[] a;
    private int nElms;
    public OrdArray(int max)
    a = new long[max];
    nElms = 0;
    public int size()
    { return nElms;}
    public int find(long searchKey)
    int lowerBound = 0;
    int upperBound = nElms-1;
    int curIn;
    while(true)
    curIn = (lowerBound + upperBound) / 2;
    if(a[curIn]==searchKey)
    return curIn;
    else if (lowerBound > upperBound)
    return nElms;
    else
    if(a[curIn] < searchKey)
    lowerBound = curIn + 1;
    else
    upperBound = curIn - 1;
    public void insert(long value)
    int j;
    for(j=0; j<nElms; j++)
    if(a[j] > value)
    break;
    for(int k=nElms; k>j; k--)
    a[k] = a[k-1];
    a[j] = value;
    nElms++;
    public boolean delete(long value)
    int j = find(value);
    if(j==nElms)
    return false;
    else
    for(int k=j; k<nElms; k++)
    a[k] = a[k+1];
    nElms--;
    return true;
    public void display()
    for(int j=0; j<nElms; j++)
    System.out.print(a[j] + " ");
    System.out.println("");
    public void merge(OrdArray array, OrdArray array1)
    }//this is the start of the merge function. I am stuck and not real sure where to go from here.
    public long getElm(int index)
    return a[index];
    }//end class OrdArray
    class OrderedApp
    public static void main(String[]args)
    int maxSize = 100;
    OrdArray arr, arr1, arr2;
    arr = new OrdArray(maxSize);
    arr1 = new OrdArray(maxSize);
    arr2 = new OrdArray(maxSize);
    arr.insert(77);
    arr.insert(99);
    arr.insert(44);
    arr.insert(55);
    arr.insert(22);
    arr1.insert(88);
    arr1.insert(11);
    arr1.insert(00);
    arr1.insert(66);
    arr1.insert(33);
    arr2.merge(arr, arr1);
    arr.display();
    System.out.println("--------------------");
    arr1.display();
    System.out.println("--------------------");
    arr2.display();
    }

    If I use ArrayList<Long>, would I have to change private long[]a to ArrayList<long>, cause if so, I am not able to do that.
    I am supposed to add a merge() method to megre the two source arrays into an ordered destination array.
    public void merge(OrdArray array, OrdArray array1)
    mergeSize = array.nElems + array1.nElems;
    int i = 0;
    int j = 0;
    int k = 0;
    while (i = 0; i < array.nElems; i++) {
              if {array.getElm(i) < array1.getElm(j)
                                                              //how do you move to the next set of values
                                                              //and to move which variables are incremented
                                                              //how do you test if the flush loop should be      called, hint if( == )
                   while (j = mergeSize - array.nElems; j <= mergeSize; j++) { 
                                   this.a[j] = array1.a;
    //again how do you move to next value and placeholder
         //which indices are incremented
    //copy/paste and change the variables for the other value being smaller
    public long getElm(int index)
    return a[index];
    this is all I have started, but i don't really understand all the comments because I haven't used java in a long time. Like I said, I understand what needs to be done and what order to do it in, but getting the code down to do that is really rough

  • I have forgotten my security questions for my apple ID there was no link to reset questions nor was their a section for the two-step Verification. What do I do?

    i have forgotten my apple ID security questions the is no link to send to my rescue email nor is the a section for the two-step verification method.  What do I do??

    Alternatives for Help Resetting Security Questions and/or Rescue Mail
         1. If you have a rescue email address or a Security Questions issue, then see:
             If you forgot the answers to your Apple ID security questions - Apple Support.
             Manage your Apple ID primary, rescue, alternate, and notification email addresses - Apple Support
         2. Fill out and submit this form. Select the topic, Account Security. You must
             have a Rescue Email to use this option.
         3. This is the only option if you do not already have a valid Rescue Email.
             These are telephone numbers for contacting Apple Support in your country.
             Apple ID- Contacting Apple for help with Apple ID account security. Select
             the appropriate country and call. Ask to speak to the Account Security Team.
         4. Account security issues almost always require you to speak directly to an
             Apple representative to securely establish your identity as the account holder.
             You can set it up so that Apple calls you, either immediately or at a time
             convenient to you.
                1. Go to www.apple.com/support.
                2. Choose Contact Support and click Contact Us.
                3. Choose Other Apple ID Topics and choose the appropriate topic for
                    your issue.
                4. Follow the onscreen instructions.
             Note: If you have already forgotten your security questions, then you cannot
             set up a rescue email address in order to reset them. You must set up
             the rescue email address beforehand.
    Your Apple ID: Manage My Apple ID.
                            Apple ID- All about Apple ID security questions.

  • Why is the Star Transformation using two indexes for the same dimension?

    Hi,
    Recently, I have made an investigation about the Star Transformation feature. I have found a strange test case, which plays an important role in my strategy for our overall DWH architecture. Here it is:
    The Strategy:
    I would like to have the classical Star Transformation approach (single column Bitmap Indexes for each dimension foreign key column in the fact table), together with additional Bitmap Join Indexes for some of the dimension attributes, which would benefit from the materialization of the join (bitmap merge operation will be skipped/optimized).
    The query:
    select dp.brand, ds. region_name, dc.region_name
         , count(*), sum(f.extended_price)
      from fact_line_item  f
         , dim_part       dp
         , dim_supplier   ds
         , dim_customer   dc
    where dp.mfgr        = 10                 -- dimension selectivity = 1/10 --> acttual/fact selectivity = 6/10
       and f.part_dk      = dp.dk
       and ds.region_name = 'REGION #1' -- dimension selectivity = 1/9
       and f.supplier_dk  = ds.dk
       and dc.region_name = 'REGION #1' -- dimension selectivity = 1/11
       and f.customer_dk  = dc.dk
    group by dp.brand, ds. region_name, dc.region_name
    The actual plan:
    | Id  | Operation                              | Name                        | Starts | E-Rows | Cost (%CPU)| A-Rows |   A-Time   | Buffers | Reads  |
    |   0 | SELECT STATEMENT                       |                             |      1 |        |  3247 (100)|      1 |00:01:42.05 |     264K|    220K|
    |   1 |  HASH GROUP BY                         |                             |      1 |      2 |  3247   (1)|      1 |00:01:42.05 |     264K|    220K|
    |*  2 |   HASH JOIN                            |                             |      1 |  33242 |  3037   (1)|    217K|00:01:29.67 |     264K|    220K|
    |*  3 |    TABLE ACCESS FULL                   | DIM_SUPPLIER                |      1 |   1112 |   102   (0)|   1112 |00:00:00.01 |     316 |      4 |
    |*  4 |    HASH JOIN                           |                             |      1 |  33245 |  2934   (1)|    217K|00:01:29.10 |     264K|    220K|
    |*  5 |     TABLE ACCESS FULL                  | DIM_CUSTOMER                |      1 |    910 |   102   (0)|    910 |00:00:00.08 |     316 |      8 |
    |*  6 |     HASH JOIN                          |                             |      1 |  33248 |  2831   (1)|    217K|00:01:28.57 |     264K|    220K|
    |*  7 |      TABLE ACCESS FULL                 | DIM_PART                    |      1 |     10 |     3   (0)|     10 |00:00:00.01 |       6 |      0 |
    |   8 |      PARTITION RANGE ALL               |                             |      1 |  36211 |  2827   (1)|    217K|00:01:28.01 |     264K|    220K|
    |   9 |       TABLE ACCESS BY LOCAL INDEX ROWID| FACT_LINE_ITEM              |      6 |  36211 |  2827   (1)|    217K|00:01:33.85 |     264K|    220K|
    |  10 |        BITMAP CONVERSION TO ROWIDS     |                             |      6 |        |            |    217K|00:00:07.09 |   46980 |   3292 |
    |  11 |         BITMAP AND                     |                             |      6 |        |            |     69 |00:00:08.33 |   46980 |   3292 |
    |  12 |          BITMAP MERGE                  |                             |      6 |        |            |    193 |00:00:02.09 |    2408 |   1795 |
    |  13 |           BITMAP KEY ITERATION         |                             |      6 |        |            |   4330 |00:00:04.66 |    2408 |   1795 |
    |  14 |            BUFFER SORT                 |                             |      6 |        |            |     60 |00:00:00.01 |       6 |      0 |
    |* 15 |             TABLE ACCESS FULL          | DIM_PART                    |      1 |     10 |     3   (0)|     10 |00:00:00.01 |       6 |      0 |
    |* 16 |            BITMAP INDEX RANGE SCAN     | FACT_LI__P_PART_DIM_KEY_BIX |     60 |        |            |   4330 |00:00:02.11 |    2402 |   1795 |
    |* 17 |          BITMAP INDEX SINGLE VALUE     | FACT_LI__P_PART_MFGR_BJX    |      6 |        |            |   1747 |00:00:06.65 |     890 |    888 |
    |  18 |          BITMAP MERGE                  |                             |      6 |        |            |    169 |00:00:02.78 |   16695 |    237 |
    |  19 |           BITMAP KEY ITERATION         |                             |      6 |        |            |   5460 |00:00:01.56 |   16695 |    237 |
    |  20 |            BUFFER SORT                 |                             |      6 |        |            |   5460 |00:00:00.02 |     316 |      0 |
    |* 21 |             TABLE ACCESS FULL          | DIM_CUSTOMER                |      1 |    910 |   102   (0)|    910 |00:00:00.01 |     316 |      0 |
    |* 22 |            BITMAP INDEX RANGE SCAN     | FACT_LI__P_CUST_DIM_KEY_BIX |   5460 |        |            |   5460 |00:00:02.07 |   16379 |    237 |
    |  23 |          BITMAP MERGE                  |                             |      6 |        |            |    170 |00:00:03.65 |   26987 |    372 |
    |  24 |           BITMAP KEY ITERATION         |                             |      6 |        |            |   6672 |00:00:02.23 |   26987 |    372 |
    |  25 |            BUFFER SORT                 |                             |      6 |        |            |   6672 |00:00:00.01 |     316 |      0 |
    |* 26 |             TABLE ACCESS FULL          | DIM_SUPPLIER                |      1 |   1112 |   102   (0)|   1112 |00:00:00.01 |     316 |      0 |
    |* 27 |            BITMAP INDEX RANGE SCAN     | FACT_LI__S_SUPP_DIM_KEY_BIX |   6672 |        |            |   6672 |00:00:02.74 |   26671 |    372 |
    The Question:
    Why is the Star Transformation using both indexes FACT_LI__P_PART_DIM_KEY_BIX and FACT_LI__P_PART_MFGR_BJX for the same dimension criteria (dp.mfgr = 10)?? The introduction of the additional Bitmap Join Index actually make Oracle to do the work twice !!!
    Anybody, any idea ?!?

    Dom, here it is the plan with the predicates:
    | Id  | Operation                              | Name                        | Starts | E-Rows | Cost (%CPU)| A-Rows |   A-Time   | Buffers | Reads  |
    |   0 | SELECT STATEMENT                       |                             |      1 |        |  3638 (100)|      1 |00:06:41.17 |     445K|    236K|
    |   1 |  HASH GROUP BY                         |                             |      1 |      2 |  3638   (1)|      1 |00:06:41.17 |     445K|    236K|
    |*  2 |   HASH JOIN                            |                             |      1 |  33242 |  3429   (1)|    217K|00:08:18.02 |     445K|    236K|
    |*  3 |    TABLE ACCESS FULL                   | DIM_SUPPLIER                |      1 |   1112 |   102   (0)|   1112 |00:00:00.03 |     319 |    313 |
    |*  4 |    HASH JOIN                           |                             |      1 |  33245 |  3326   (1)|    217K|00:08:17.47 |     445K|    236K|
    |*  5 |     TABLE ACCESS FULL                  | DIM_CUSTOMER                |      1 |    910 |   102   (0)|    910 |00:00:00.01 |     319 |    313 |
    |*  6 |     HASH JOIN                          |                             |      1 |  33248 |  3223   (1)|    217K|00:08:16.63 |     445K|    236K|
    |*  7 |      TABLE ACCESS FULL                 | DIM_PART                    |      1 |     10 |     3   (0)|     10 |00:00:00.01 |       6 |      0 |
    |   8 |      PARTITION RANGE ALL               |                             |      1 |  36211 |  3219   (1)|    217K|00:08:16.30 |     445K|    236K|
    |   9 |       TABLE ACCESS BY LOCAL INDEX ROWID| FACT_LINE_ITEM              |      6 |  36211 |  3219   (1)|    217K|00:08:40.89 |     445K|    236K|
    |  10 |        BITMAP CONVERSION TO ROWIDS     |                             |      6 |        |            |    217K|00:00:32.00 |   46919 |  19331 |
    |  11 |         BITMAP AND                     |                             |      6 |        |            |     69 |00:00:34.50 |   46919 |  19331 |
    |  12 |          BITMAP MERGE                  |                             |      6 |        |            |    193 |00:00:00.58 |    2353 |      1 |
    |  13 |           BITMAP KEY ITERATION         |                             |      6 |        |            |   4330 |00:00:00.10 |    2353 |      1 |
    |  14 |            BUFFER SORT                 |                             |      6 |        |            |     60 |00:00:00.01 |       6 |      0 |
    |* 15 |             TABLE ACCESS FULL          | DIM_PART                    |      1 |     10 |     3   (0)|     10 |00:00:00.01 |       6 |      0 |
    |* 16 |            BITMAP INDEX RANGE SCAN     | FACT_LI__P_PART_DIM_KEY_BIX |     60 |        |            |   4330 |00:00:00.07 |    2347 |      1 |
    |* 17 |          BITMAP INDEX SINGLE VALUE     | FACT_LI__P_PART_MFGR_BJX    |      6 |        |            |   1747 |00:01:23.64 |     882 |    565 |
    |  18 |          BITMAP MERGE                  |                             |      6 |        |            |    169 |00:00:09.14 |   16697 |   7628 |
    |  19 |           BITMAP KEY ITERATION         |                             |      6 |        |            |   5460 |00:00:02.19 |   16697 |   7628 |
    |  20 |            BUFFER SORT                 |                             |      6 |        |            |   5460 |00:00:00.01 |     316 |      0 |
    |* 21 |             TABLE ACCESS FULL          | DIM_CUSTOMER                |      1 |    910 |   102   (0)|    910 |00:00:00.01 |     316 |      0 |
    |* 22 |            BITMAP INDEX RANGE SCAN     | FACT_LI__P_CUST_DIM_KEY_BIX |   5460 |        |            |   5460 |00:00:08.78 |   16381 |   7628 |
    |  23 |          BITMAP MERGE                  |                             |      6 |        |            |    170 |00:00:21.46 |   26987 |  11137 |
    |  24 |           BITMAP KEY ITERATION         |                             |      6 |        |            |   6672 |00:00:10.29 |   26987 |  11137 |
    |  25 |            BUFFER SORT                 |                             |      6 |        |            |   6672 |00:00:00.01 |     316 |      0 |
    |* 26 |             TABLE ACCESS FULL          | DIM_SUPPLIER                |      1 |   1112 |   102   (0)|   1112 |00:00:00.01 |     316 |      0 |
    |* 27 |            BITMAP INDEX RANGE SCAN     | FACT_LI__S_SUPP_DIM_KEY_BIX |   6672 |        |            |   6672 |00:00:20.94 |   26671 |  11137 |
    Predicate Information (identified by operation id):                                                                                                  
       2 - access("F"."SUPPLIER_DK"="DS"."DK")                                                                                                           
       3 - filter("DS"."REGION_NAME"='REGION #1')                                                                                                        
       4 - access("F"."CUSTOMER_DK"="DC"."DK")                                                                                                           
       5 - filter("DC"."REGION_NAME"='REGION #1')                                                                                                        
       6 - access("F"."PART_DK"="DP"."DK")                                                                                                               
       7 - filter("DP"."MFGR"=10)                                                                                                                        
      15 - filter("DP"."MFGR"=10)                                                                                                                        
      16 - access("F"."PART_DK"="DP"."DK")                                                                                                               
      17 - access("F"."SYS_NC00017$"=10)                                                                                                                 
      21 - filter("DC"."REGION_NAME"='REGION #1')                                                                                                        
      22 - access("F"."CUSTOMER_DK"="DC"."DK")                                                                                                           
      26 - filter("DS"."REGION_NAME"='REGION #1')                                                                                                        
      27 - access("F"."SUPPLIER_DK"="DS"."DK")                                                                                                           
    Note                                                                                                                                                 
       - star transformation used for this statement                                                                                                     

  • Suggest book on SAP HR Functional for beginners

    Dear All,
    Request you to suggest me a book for SAP HR Functional
    for beginners.
    Thanks in advance for the help.
    Regards,
    Taranjit

    Benefit Administration:
    This section of the Implementation Guide (IMG) is where you set the SAP Benefits Administration component.
    Here you enter in the system all the details of the benefit plans offered by your company.
    Benefit Area:
    Benefit areas allow you to have separate administration of different benefit plan pools. This division is primarily for administrational purposes and would not normally be used for eligibility
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Benefit Area
    Assign Currency to Benefit Area:
    In this step, you specify the currency for the benefit area
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Assign Currency
    this step, you enter the providers of the benefit plans you offer.
    This could be the Insurance company, or Health Maintenance Organization that receives the benefit plan costs
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Benefit Providers
    In this step, you set relevant benefit area for your Customizing activities
    If you have more than one benefit area to set up, you must set up each independently. After you have set up all the plans in one area, you must return to this view, set the next current benefit area and work through the IMG again, setting up the new benefit area.
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Set Current Benefit Area
    Benefit Plan Types:
    In this step, you enter the benefit plan types that you require for the plan categories predefined in the system.
    The following plan categories are provided by MSD:
    • Health Plans
    o Medical
    o Dental
    o Vision
    • Insurance Plans
    o Basic Life
    o Supplemental Life
    o Accidental Death & Dismember
    • Savings Plans
    o 403B
    o 457
    o PERS (Public Employees retirement Scheme for CP Benefit Plan) & TRS
    (Teachers Retirement Scheme for TP Benefit Plan)
    • Flexible Spending Accounts
    o Health care
    o Dependent care
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Plan Attributes &#61664; Define Benefit Plan Types
    Define Benefit Plan Status:
    It is important that you assigning statuses in order to be able to control the availability of plans with a minimum of effort. For example, you can control whether or not employees can enroll in a plan simply by changing its status
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Plan Attributes &#61664; Define Benefit Plan Status
    Benefit Plan Status:
    In this step, you define parameter groups. You decide which groups you require in two stages:
    1. You consider which costs, credits, coverage and employee and employer contributions for your plans vary according to the age, salary and/or seniority of employees (or possibly the age of the employee's spouse).
    2. You determine the different ways in which you need to divide your employees according to different value ranges for these criteria.
    It is not possible to define overlaps of ranges for a criterion within a single parameter group. Therefore, if you require different employee groupings for different plans, you need to create a separate parameter group.
    For each unique combination of criteria and their values, you need to define a parameter group.
    In this step, you simply create the parameter groups to which you assign groups for the individual criteria in the following steps. You later refer to the parameter groups, where applicable, in the individual rule variants for plans. Since one parameter group can be referenced by multiple plans, Customizing effort is kept to a minimum. In the plan variant, you also have the flexibility of being able to specify that you only want to use certain criteria values belonging to a parameter group, for example, age ranges
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Employee Groupings &#61664; Define Employee Criteria Groups &#61664; Define Parameter Groups
    Age Groups:
    In this step, you define the age groups for the parameter groups that you defined in a previous step.
    Depending on your needs, you may find for some parameter groups, you can leave out this step, if for example there is no requirement to differentiate between employees based on age
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Employee Groupings &#61664; Define Employee Criteria Groups &#61664; Define Age Groups
    Age Groups under Parameter grouping “PAR1”
    Cost Groupings:
    In the parameter group you could differentiate between employees based upon age, salary and seniority. Here you can further differentiate between employees, based on other employee criteria, such as geographical location, job classification, marital status and so on. Only set up this feature, if you find that the parameter group does not adequately cover your needs, when specifying costs for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Employee Groupings &#61664; Define Cost Groupings
    Coverage Groupings:
    In the parameter group you could differentiate between employees based upon age, salary and seniority. Here you can further differentiate between employees, based on other employee criteria, such as geographical location, employment contract, residence status and so on. Only set up this feature, if you find that the parameter group does not adequately cover your needs, when specifying coverage for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Employee Groupings &#61664; Define Coverage Groupings
    Employee Contribution Groupings:
    In the parameter group you could differentiate between employees based upon age, salary and seniority. Here you can further differentiate between employees, based on other employee criteria, such as geographical location, weekly hours, residence status and so on. Only set up this feature, if you find that the parameter group does not adequately cover your needs, when specifying employee contribution for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Employee Groupings &#61664; Define Employee Contribution Groupings
    the parameter group you could differentiate between employees based upon age, salary and seniority. Here you can further differentiate between employees, based on other employee criteria, such as geographical location, weekly hours, residence status and so on. Only set up this feature, if you find that the parameter group does not adequately cover your needs, when specifying employee contribution for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Basic Settings &#61664; Define Employee Groupings &#61664; Define Employer Contribution Groupings
    the parameter group you could differentiate between employees based upon age, salary and seniority. Here you can further differentiate between employees, based on other employee criteria, such as geographical location, weekly hours, residence status and so on. Only set up this feature, if you find that the parameter group does not adequately cover your needs, when specifying employee contribution for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Define Employer Contribution Groupings
    the parameter group you could differentiate between employees based upon age, salary and seniority. Here you can further differentiate between employees, based on other employee criteria, such as geographical location, weekly hours, residence status and so on. Only set up this feature, if you find that the parameter group does not adequately cover your needs, when specifying employee contribution for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Define Options for Health Plans
    Dependent Coverage Options:
    In this step, you define the dependent coverage that are used in health plans.
    Define all possible variations that you need, because this view is not specific to any plan or plan option
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Define Dependent Coverage Options
    Number of Dependents:
    In this step, you can restrict participation in a health plan under a dependent coverage option to certain types of dependent, as determined by the subtypes of the Family/Related Persons infotype (0021). You can also define a minimum and maximum number of persons of a particular type that can be covered. During enrollment, the system only includes those dependent coverage options in the benefit offer for which the appropriate dependents are available
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Define Minimum and Maximum Number of Dependents
    Define Cost Variants:
    In this step you define cost variants to determine which factors influence the cost of a health plan for an employee. Variants are plan-specific; each plan has its own variant(s).
    You do not enter any actual costs in this step. You simply define how costs vary according to:
    • Plan
    • Option
    • Dependent coverage
    • Employee data
    Before you start to define cost variants, you need to do the following:
    1. Determine how often costs vary for all the combinations of option and dependent coverage that you have defined in each plan.
    This indicates how many cost variants you need. You can use the same cost variant more than once, for example, if costs are always identical for the dependent coverages 'employee only' and 'employee plus family' within a plan, regardless of the plan option
    2. Determine how costs vary according to employee data.
    This determines how you need to set up your variants using employee groupings.
    For each variant, you can specify a parameter group and cost grouping to determine cost. You can also indicate whether the gender of employees and whether or not they are smokers are cost criteria
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Define Cost Variants
    Cost Rules:
    You need to define costs for each possible combination of employee grouping in the criteria you have attributed to each variant. If you have not specified any criteria in a variant, you assign one rule only
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Define Cost Rule
    Health Plan Attributes:
    In this step, you bring together all the definitions relevant to the health plan that you have made in the previous steps.
    You assign to each health plan:
    • Its options
    • Relevant dependent coverages
    • The cost variants for the combination of options and dependent coverages
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Health Plans &#61664; Assign Health Plan Attributes
    Insurance Plans:
    In this step, you define general data for insurance plans
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Define Insurance Plan General Data
    Coverage Variants:
    In this step, you define coverage variants to determined which factors influence the coverage an employee is entitled to in a plan. Variants are plan-specific; each plan has its own variant(s).
    You do not enter any actual coverage in this step. You simply define how coverage varies according to:
    • Plan
    • Coverage option
    • Employee data
    Before you start to define coverage variants, you need to do the following:
    1. Determine how often coverage varies for different coverage options.
    This indicates how many coverage variants you need. Note the following:
    • If a plan has set coverages (including salary multiples), you need a
    coverage variant for each.
    • If a plan allows employees to choose any amount of coverage within a
    range, you need only one coverage variant.
    • If a plan has options, you will need a coverage variant for each option.
    2. Determine how coverage varies according to employee data.
    This determines how you need to set up your variants using employee groupings. For each variant, you can specify a parameter group and coverage grouping to determine coverage
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664;
    Coverage Rules:
    In this step, you define the actual coverages for a plan.
    You need to define coverage for each possible combination of employee grouping in the criteria you have attributed to each variant. If you have not specified any criteria in a variant, you assign one rule only.
    Coverage can be defined as a flat amount or as a factor of salary
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Define Coverage Rules
    Cost Variants:
    In this step you define cost variants to determine which factors influence the cost of an insurance plan for an employee. Variants are plan-specific; each plan has its own variant(s).
    You do not enter any actual costs in this step. You simply define how costs vary according to:
    • Plan
    • Coverage option
    • Employee data
    Before you start to define cost variants, you need to do the following:
    1. Determine how often cost varies for different coverage options:
    • If an insurance plan has set flat coverage options and flat costs, you need
    to define a cost variant for each flat cost.
    • If you have set flat coverage options and the flat costs are directly
    proportional to the coverage stated in the flat cost, you need only one
    cost variant.
    • If an employee can choose any amount of coverage within a range and the
    cost of the coverage is directly proportional to the coverage, you need
    only one cost variant.
    2. Determine how costs vary according to employee data.
    This determines how you need to set up your variants using employee groupings.
    For each variant, you can specify a parameter group and cost grouping to determine cost. You can also indicate whether the gender of employees and whether or not they are smokers are cost criteria
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Define Cost Variants
    Cost Rules:
    You need to define costs for each possible combination of employee grouping in the criteria you have attributed to each variant. If you have not specified any criteria in a variant, you assign one rule only
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Define Cost Rules
    Insurance Plan Attributes:
    In this step, you bring together all those parts of an insurance plan, that you have already defined in the previous few steps.
    You define the insurance plan options, then associate to each insurance plan:
    • Cost variant
    • Coverage variant
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Assign Insurance Plan Attributes
    Combined Coverage Limits:
    When you define coverages for plans such as insurance, you can set limits on the coverage amount. This is often used when the coverage is an amount dynamically calculated when the employee chooses her coverage.
    However these limits apply only to one plan and yet you might need to define limits which combine the coverages of more than one plan.
    In this chapter, you define these combined limits as follows:
    1. The limit that might span 2 or more plans is reduced to a mathematical equation, where there is an amount on one side and plan coverages on the other side. The two sides of this equation are then DIVIDED BETWEEN the two views in this chapter.
    2. The first view defines the limit in monetary terms which is one side of the equation. It also defines the operator (equals, is greater than, and so on).
    3. The second view defines the other side of the equation in terms of the plan coverages
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Combined Coverage &#61664; Combined Coverage
    Combined Coverage Limit Expressions:
    In this step, you enter the second half of the equation, as discussed in combined coverage
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Combined Coverage &#61664; Define Combined Coverage Limit Expressions
    Imputed Income for Selected Benefits:
    In this section of the IMG, you define the criteria needed to calculate Imputed Income.
    Imputed Income is based upon benefits paid for by the employer and calculated using rates set by the Internal Revenue Service (IRS). This value is then treated as taxable income for the employee
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Combined Coverage &#61664; Review Age Groups for Imputed Income
    Review Calculation Factors for Imputed Income:
    In this step, you check that the Imputed Income Rate Table entries are correct.
    The imputed income age groups are associated with the rates/factors set by the IRS
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Insurance Plans &#61664; Combined Coverage &#61664; Review Calculation Factors for Imputed Income
    Savings Plans:
    In this step, you define general data for savings plans.
    You have defined the relevant type, status, and provider for each plan in the Basic Settings section of the Benefits IMG
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Savings Plans &#61664; Define Savings Plan General Data
    Employee Contribution Variants:
    In this step you define employee contribution variants to determine which factors influence the permitted employee contribution to a plan. Variants are plan-specific; each plan has its own variant(s).
    You do not enter any actual contributions in this step. You simply define how contributions vary according to:
    • Plan
    • Option (only for plans in the plan category Miscellaneous)
    • Employee data
    Before you start to define variants, you need to do the following:
    1. Determine how often employee contributions vary for plans and any plan options.
    This indicates how many contribution variants you need.
    2. Determine how employee contributions vary according to employee data.
    This determines how you need to set up your variants using employee groupings.
    For each variant, you can specify a parameter group and employee contribution grouping to determine employee contribution
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Savings Plans &#61664; Define Employee Contribution Variants
    Employee Contribution Rules:
    In this step, you define the employee contribution limits for each plan.
    You need to define employee contributions limits for each possible combination of employee grouping in the criteria you have attributed to each variant. If you have not specified any criteria in a variant, you assign one rule only.
    You can define minimum and maximum employee contribution in the following ways:
    • As a fixed amount
    • As a percentage of salary
    • As a contribution unit
    In Payroll, the total employee contribution is the sum of these amounts
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Savings Plans &#61664; Define Employee Contribution Rules
    Employer Contribution Variants:
    In this step you define employer contribution variants to determine which factors influence the contribution the employer makes to a plan. Variants are plan-specific; each plan has its own variant(s).
    You do not enter any actual contribution in this step. You only define how contributions vary according to:
    • Plan
    • Option (only for plans in the plan category Miscellaneous)
    • Employee data
    Before you start to define variants, you need to do the following:
    1. Determine how often employee contributions vary for plans and any plan options.
    This indicates how many contribution variants you need.
    2. Determine how employee contributions vary according to employee data.
    This determines how you need to set up your variants using employee groupings.
    For each variant, you can specify a parameter group and employer contribution grouping to determine employer contribution
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Savings Plans &#61664; Define Employer Contribution Variants
    Employer Contribution Rules:
    In this step, you define limits for the contributions made by the employer to employee plans. You so this for each employer contribution variant for each plan.
    You need to define employer contributions limits for each possible combination of employee grouping in the criteria you have attributed to each variant. If you have not specified any criteria in a variant, you assign one rule only.
    You can define the employer contribution and the contribution limit in either of the following ways:
    • As a fixed amount / as an amount per unit contributed by the employee
    • As a percentage of employee base salary or employee contribution
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Savings Plans &#61664; Define Employer Contribution Rules
    Assign Savings Plan Attributes:
    In this step, you complete the definition of savings plans by bringing together the relevant elements that you have already defined:
    • EE contribution variant
    • ER contribution variant
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Savings Plans &#61664; Assign Savings Plan Attributes
    Flexible Spending Accounts (FSAs):
    In this step, you define general data for flexible spending accounts (FSAs).
    Requirements
    You have created the appropriate plan type , plan status, and benefit provider in the preceding steps
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Flexible Spending Accounts (FSAs) &#61664; Define Spending Account General Data
    Assign Spending Account Attributes:
    In this step, you enter the details of your flexible spending accounts including contribution limits, an employer contribution variant (if required), and rules for the reimbursement of claims
    IMG Path: Personnel Management &#61664; Benefits &#61664; Plans &#61664; Flexible Spending Accounts (FSAs) &#61664; Assign Spending Account Attributes
    Flexible Administration:
    In this chapter, you define the flexible aspects of your Benefits administration. You define the availability of plans to your employees, in terms of the plans themselves. You also define aspects of the enrollment process.
    you enter parameters that apply to processing within an entire benefits area, including:
    • Open enrollment period dates
    • Default validity dates for adjustment/standard plan records
    • Advance availability of future plans
    • Dependent age limits
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Define Administrative Parameters
    Benefit Adjustment Groupings:
    In this step, you define adjustment groupings. These groupings allow you to specify different adjustment permissions for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Benefits Adjustment Reasons &#61664; Define Benefit Adjustment Groupings
    Benefit Adjustment Reasons:
    In this step, you define adjustment reasons to control changes to employee enrollments according to company policy.
    The adjustment reason types that you define here are assigned as subtypes of Adjustment Reasons records (infotype 0378) in HR Master Data. Since a record can only have one subtype, a new record must be created for every adjustment reason an employee experiences.
    According to the adjustment concept, an employee can only make changes to her enrollments if she has an Adjustment Reasons record (infotype 0378) with the required adjustment reason as a subtype. The only exceptions to this are if changes are made during an open enrollment period or if an anytime adjustment reason is assigned to the plan type.
    In addition to defining adjustment reasons for certain events that can trigger changes, you may also want to define a special adjustment reason to allow changes to plans at any time
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Benefits Adjustment Reasons &#61664; Define Benefit Adjustment Reasons
    Adjustment Permissions:
    In this section, you assign adjustment permissions to each benefit plan type for an adjustment reason and any adjustment grouping that you have defined.
    Note that the elements for which you can define permissions are automatically determined by the system, dependent on the plan category
    Health Plans:
    In this step, you define the changes permitted for all plans of this type. You do this for each combination of adjustment reason, adjustment grouping, and plan type
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Benefits Adjustment Reasons &#61664; Define Adjustment Permissions &#61664; Health Plans
    this step, you define the changes permitted for all plans of this type. You do this for each combination of adjustment reason, adjustment grouping, and plan type
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Benefits Adjustment Reasons &#61664; Define Adjustment Permissions &#61664; Insurance Plans
    Savings Plans:
    In this step, you define the changes permitted for all plans of this type. You do this for each combination of adjustment reason, adjustment grouping, and plan type
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Benefits Adjustment Reasons &#61664; Define Adjustment Permissions &#61664; Savings Plans
    Spending Accounts:
    In this step, you define the changes permitted for all plans of this type. You do this for each combination of adjustment reason, adjustment grouping, and plan type
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Benefits Adjustment Reasons &#61664; Define Adjustment Permissions &#61664; Spending Account
    Programs:
    In this section of the IMG, you define benefit programs and the eligibility restrictions and termination conditions for the plans within these programs.
    Within a program, eligibility for plans can be determined on two levels:
    • Program groupings control eligibility on a high level (macro-eligibility) by allocating an employee a defined program, depending on his/her organizational and employment data.
    • Eligibility rules are optional and control eligibility on a low level (micro-eligibility) by determining whether an employee can participate in a plan within the relevant program. An employee must fulfill the conditions defined in the rule in order to be able to enroll. Eligibility rules are assigned to plans in programs by means of an eligibility variant.
    First Program Grouping:
    In this step, you define first program groupings. Later, you define programs for a combination of first and second program groupings.
    Identical attributes are available for the setup of both the first and second program groupings, and they are therefore interchangeable. The fact that you determine macro-eligibility for a program using two dimensions means that you are able to make finer distinctions between groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Define First Program Grouping
    Second Program Grouping:
    In this step, you define second program groupings. Later, you define programs for a combination of first and second program groupings.
    Identical attributes are available for the setup of both the first and second program groupings, and they are therefore interchangeable. The fact that you determine macro-eligibility for a program using two dimensions means that you are able to make finer distinctions between groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Define Second Program Grouping
    Employee Eligibility:
    In this section of the IMG, you define the criteria according to which you control eligibility for individual benefit plans within a benefits program (definition of micro-eligibility). You perform the following steps to set up eligiblity requirements:
    • You define eligibility grouping to identify groups of employees for whom
    certain eligibility criteria apply.
    • You create eligibility variants, which you later use to link eligibility
    rules to programs.
    • If necessary, you define dynamic eligibility conditions relating
    specifically to actual hours worked/length of service, or zip codes.
    • You bring your definitions together in the eligibility rule, where you
    can also specify further conditions for enrollment.
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Employee Eligibility &#61664; Define Eligibility Groupings
    Eligibility Variants:
    In this step, you define eligibility variants. These consist simply of an identifier and a description
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Employee Eligibility &#61664; Define Eligibility Variants
    Eligibility Rules:
    In this step, you define eligibility rules for the benefit plans offered by your organization. You define these rules for combinations of eligibility grouping and eligibility variant, thereby determining the eligibility conditions that will apply for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Employee Eligibility &#61664; Define Eligibility Rules
    Participation Termination:
    In this section of the implementation guide you define criteria for the termination of benefit plans
    Termination Groupings:
    In this section of the implementation guide you define criteria for the termination of benefit plans
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Participation Termination &#61664; Define Termination Groupings
    Termination Variants:
    In this step, you define termination variants. These consist simply of an identifier and a description
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Participation Termination &#61664; Define Termination Variants
    Termination Rules:
    In this step, you define termination rules. You define these rules for every combination of termination grouping and termination variant, thereby determining the coverage continuation periods and termination day that will apply for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Participation Termination &#61664; Define Termination Rules
    Define Benefit Programs:
    In this step, you define termination rules. You define these rules for every combination of termination grouping and termination variant, thereby determining the coverage continuation periods and termination day that will apply for different groups of employees
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Programs &#61664; Define Benefit Programs
    Dependent/Beneficiary Eligibility:
    In this step, you define family member groupings and determine how family members are allocated to these groupings
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Dependent/Beneficiary Eligibility &#61664; Define Family Member Groupings
    Dependent Eligibility Rule Variants:
    In this step, you define the dependent eligibility variants to which you want to assign dependent eligibility rules. You also specify whether you wish to use a family member grouping in the associated eligibility rule to restrict eligibility to types of family members with certain characteristics
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Dependent/Beneficiary Eligibility &#61664; Define Dependent Eligibility Rule Variants
    Dependent Eligibility Rules:
    In this step, you define dependent eligibility rules to determine which types of family member are eligible as dependents. You then assign your rules to the appropriate plans by means of a rule variant in the step Assign Eligibility Rule Variant to Plan
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Dependent/Beneficiary Eligibility &#61664; Define Dependent Eligibility Rules
    Beneficiary Eligibility Rule Variants:
    In this step, you define the beneficiary eligibility variants to which you assign beneficiary eligibility rules in the next step. You also specify the following:
    • Whether you want to use a family member grouping in the associated eligibility rule to restrict eligibility to types of family members with certain characteristics
    • Whether the following apply for plans to which the variant is assigned:
    &#61607; The employee can be a beneficiary
    &#61607; Contingency beneficiaries can be named
    &#61607; Spouse approval is required if beneficiaries other than the spouse are to be amed (the system only takes this setting into consideration for plans of the category avings)
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Dependent/Beneficiary Eligibility &#61664; Define Beneficiary Eligibility Rule Variants
    Beneficiary Eligibility Rules:
    In this step, you define beneficiary eligibility rules to determine which types of family member are eligible as beneficiaries. You then assign your rules to the appropriate plans by means of a rule variant in the step Assign Eligibility Rule Variant to Plan
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Dependent/Beneficiary Eligibility &#61664; Define Beneficiary Eligibility Rules
    Assign Eligibility Rule Variant to Plan:
    In this step, you assign dependent eligibility variants and beneficiary eligibility variants to plans, thereby assigning the eligibility rules associated with these variants
    IMG Path: Personnel Management &#61664; Benefits &#61664; Flexible Administration &#61664; Dependent/Beneficiary Eligibility &#61664; Assign Eligibility Rule Variant to Plan
    COBRA Plans:
    In this step, you specify which health plans that you have already defined in the system are COBRA-relevant.
    When a clerk collects COBRA-qualified beneficiaries, the system only considers employee enrollments in the plans you select here as legitimate cases where COBRA must be offered to the employee
    IMG Path: Personnel Management &#61664; Benefits &#61664; COBRA &#61664; Choose COBRA Plans
    this step, you determine for which flexible spending accounts (FSAs) you will offer continuation of coverage under COBRA. You need to do this for each benefit area separately
    IMG Path: Personnel Management &#61664; Benefits &#61664; COBRA &#61664; Choose COBRA Spending Accounts
    Qualifying Event Coverage Periods:
    In this step, you define the events that qualify individuals for COBRA coverage, and the periods of permitted coverage continuation for each qualifying event type. COBRA legislation states the following regarding coverage continuation periods:
    • In the case of Termination of employment and Reduction in working hours, only 18 months coverage must be provided. If qualified beneficiaries are determined to be disabled within 60 days of the COBRA event, they are entitled to a further 11 months of coverage, as are the other qualified beneficiaries who experienced the original event.
    • For all other qualifying events except Bankruptcy of employer, a qualified beneficiary is entitled to 36 months continuation coverage, and there is no extension provision for disability.
    • In the case of the event Bankruptcy of employer, the coverage continuation period is the life of the retired employee or retired employee's widow/widower. You therefore do not need to define a continuation period in this case.
    IMG Path: Personnel Management &#61664; Benefits &#61664; COBRA &#61664; Define Qualifying Event Coverage Periods
    Assign COBRA Events to Personnel Actions:
    In this step, you define how the system recognizes COBRA-qualifying events from employee personnel actions (infotype 0000) records. You do this by creating a link between the two.
    The only COBRA-qualifying event types that you assign to personnel actions are:
    • Termination
    • Death of employee
    • Reduction in hours
    You need to assign these COBRA-qualifying event types since they are based on customizable entries in your HR master data and therefore cannot be delivered as standard.
    When the system collects COBRA-qualified beneficiaries, it considers employee records within the date range you specify in two stages as follows:
    1. The system searches for employee personnel action (infotype 0000) records. The COBRA qualifying events assigned to any personnel actions found are collected.
    2. The system checks other employee infotype records for specific information which corresponds to COBRA-qualifying event types
    IMG Path: Personnel Management &#61664; Benefits &#61664; COBRA &#61664; Assign COBRA Events to Personnel Actions
    Notification and Payment Intervals:
    In this step, you define details of COBRA administration for those states where state law concerning COBRA differs from federal law.
    Federal regulations are reflected in the state settings for the District of Columbia, which is also the system default.
    If you must comply with state regulations that differ from the federal regulations, you should create a new state entry. Otherwise, you can use the DC version for all employees, regardless of which state they reside in
    IMG Path: Personnel Management &#61664; Benefits &#61664; COBRA &#61664; Define Notification and Payment Intervals
    heck this one and let me know if there is anything else even arun has also given nice response so if u have any query pls revert back
    6

  • How to get Distinct Count of Products across two dimensions

    Hi,
    I have two dimensions, Item and Presentations. I need to get distinct count of products for IMD_Id + Merc_Pres_Id. IMD_Id is the lowest member in Item and Merc_Pres_Id is lowest in Presentation. My MDX query is given below but when I apply filters to
    slice it, it does not work and does not give right count. It always gives the count for all.
    /* Last Year Demand - Demand for 12 months back of selected months */
    With
    Member [Measures].[LYDemand]
    as
    Sum(
    Generate(
    EXISTING[All Date].[Fiscal Month Name].[Fiscal Month Name].Members,
    {parallelperiod([All Date].[Fiscal Month Name].[Fiscal Month Name], 12
    ,[All Date].[Fiscal Month Name].CurrentMember)}
    ,[Measures].[Proj Demand]
    /* Last to last Year Demand - Demand for 24 back of selected months */
    Member [Measures].[LLYDemand]
    as
    Sum(
    Generate(
    EXISTING[All Date].[Fiscal Month Name].[Fiscal Month Name].Members,
    {parallelperiod([All Date].[Fiscal Month Name].[Fiscal Month Name], 24
    ,[All Date].[Fiscal Month Name].CurrentMember)}
    ,[Measures].[Proj Demand]
    /* Current Year Active Products */
    Member [Measures].[CYCount]
    as
    CASE
    WHEN
    [Measures].[Proj Demand] > 0
    THEN
    DistinctCount(Existing(([All Items].[IMD Id].[IMD Id],[All Merchandise Presentations].[Merch
    Pres Key].[Merch Pres Key])))
    ELSE
    NULL
    END
    /* Last year Active Products */
    Member [Measures].[LYCount]
    as
    CASE
    WHEN
    [Measures].[LYDemand] > 0
    THEN
    DistinctCount(([All Items].[IMD Id].[IMD Id],[All Merchandise Presentations].[Merch Pres Key].[Merch Pres
    Key], [All Items].[Style Name].CurrentMember, (StrToMember('[All Date].[Fiscal Month Name].&[201401]',CONSTRAINED).Lag(12)
    : StrToMember('[All Date].[Fiscal Month Name].&[201411]',CONSTRAINED).Lag(12))))
    ELSE
    NULL
    END
    /* Last to last Year Active Products */
    Member [Measures].[LLYCount]
    as
    CASE
    WHEN
    [Measures].[LLYDemand] > 0
    THEN
    DistinctCount(([All Items].[IMD Id].[IMD Id],[All Merchandise Presentations].[Merch Pres Key].[Merch Pres
    Key], [All Items].[Style Name].CurrentMember, (StrToMember('[All Date].[Fiscal Month Name].&[201401]',CONSTRAINED).Lag(24)
    : StrToMember('[All Date].[Fiscal Month Name].&[201411]',CONSTRAINED).Lag(24))))
    ELSE NULL END
    SELECT
    [Measures].[CYCount], [Measures].[LYCount], [Measures].[LLYCount],
    [Measures].[Proj Demand],[Measures].[LYDemand],[Measures].[LLYDemand]
    ON
    COLUMNS,
    Non
    Empty([All Items].[Demand Center Name].[Demand Center Name], [All Items].[Style Name].[Style Name])
    ON ROWS
    FROM
    (SELECT (StrToSet('[All Items].[Style].[ALL]'))
    ON COLUMNS
    FROM
    (SELECT (StrToSet('[All Items].[Demand Center].[ALL]'))
    ON COLUMNS
    FROM
    (select (STRTOSET('[All Items].[Merch Group].&[MG-110]'))
    on Columns
    FROM
    (SELECT (StrToSet('[All Merchandise Presentations].[Merch Pres Chnl Dkey].&[MPC-1]'))
    ON COLUMNS
    From
    [FMI Forecasting]
    WHERE {strToMember('[All Date].[Fiscal Month
    Name].&[201401]',CONSTRAINED) :
    StrToMember('[All Date].[Fiscal Month Name].&[201411]',CONSTRAINED)}
    Requirements are as follows:
    1. Distinct Count should not include products where Proj Demand is 0, when I am using Filter function to remove products with 0 demand, query is really slow and execution time goes up from 35- 40 secs to 8-9 Minutes.
    2. When we apply filter (parameters) Distinct Count should be in the context of filters( which are mentioned in the select statement like Style, Demand Center and Merch Group). Currently after applying filters count does not change.
    Thanks for help.

    Hi Skd78,
    Thank you for your question. 
    I am trying to involve someone more familiar with this topic for a further look at this issue. Sometime delay might be expected from the job transferring. Your patience is greatly appreciated. 
    Thank you for your understanding and support.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Not exists / union - two dimensions nothing in the fact folder, possible???

    What I am trying to do is (in functional terms) produce an invoices on hold report.
    This has two distinct characteristics - some invoices are coding but on hold (easy - see first part of the SQL below), but some invoices have no coding, nothing in the FACT folder and I need to show two dimension folders which currently only join via the FACT folder - is this possible??
    equivalent SQL =>
    select supp.supplier_name, inv.invoice_number, inv.invoice_amount, dis.amount, code.segment1||'/||code.segment2
    from     AP_INVOICES_MV inv
    ,          ap_suppliers_mv supp
    ,       ap_holds_mv hold
    ,      AP_INVOICE_DISTRIBUTIONS dis
    ,     gl_coding code
    where inv.invoice_key = hold.invoice_key
    and    inv.supplier_key = supp.supplier_key
    and  inv.invoice_id = dis.invoice_id
    and   dis.code_key = code.code_key
    and   hold.holds <> 'No Holds'
    union
    select supp.supplier_name, inv.invoice_number, inv.invoice_amount, 0 amount, 'XXXXX/XXXX' gl_code
    from     AP_INVOICES_MV inv
    ,          ap_suppliers_mv supp
    ,       ap_holds_mv hold
    where inv.invoice_key = hold.invoice_key
    and    inv.supplier_key = supp.supplier_key
    and   hold.holds <> 'No Holds'
    and   not exists
    (select 'x'
    from    ap_invoice_distributions dis
    where dis.invoice_id = inv.invoice_id)
    order by 1, 2, 4 ascMy problems are; -
    1. is that the second part of the union (not exists section) requires me to join two DIMENSION tables without going via the FACT table is this possible?? (If so how - what JOINS would I need on between the FACT and the DIMENSIONS and would this significantly impede running speed generally)
    2. Given that even when writing direct database requests the FROM part of the SQL is the subject area, not the tables, the tool writes the joins for you, how can I write the equivalent of the above??
    n.b.
    AP_INVOICES_MV - DIMENSION
    ap_suppliers_mv - DIMENSION
    ap_holds_mv - DIMENSION
    gl_coding code - DIMENSION
    AP_INVOICE_DISTRIBUTIONS FACT
    With the structure following the classic STAR with all folders described in the dimensions equi joining to the FACT folder, BUT some in the invoices dimension will not have corresponding values in the FACT folder (un-coded invoices).
    With thanks for your input,
    Robert.

    Try this app: http://tyorex.com/iWorkConverter
    Batch convert Pages files to doc and pdf.

  • Linking two Queries but the values are corrupted

    I have started linking two queries from the same Cube.  The invoiced value from the pre-query shows the correct value from SAP.  When I use this prequery into another query and look at the same invoiced value key figure, the result has changed and is not correct anymore.  Please advise what I am doing wrong.
    Any help would be most appreciated.
    Ray

    Hi Bhanu, the replacement path is on the Dimension Sales Document.  I have tried to use the same variable on the Key Figure Net Value (Invoice).  I also tried for a later attempt to use a different Key Figure in the prequery as net weight, just in case they added together.
    Am I right that I should be using the same key figure Net Value (Invoice) in both queries?
    Thanks
    Ray

Maybe you are looking for

  • Error while using window.open() in JSP page

    I am getting error while using window.open() in my JSP page. This is code in my JSP page, <h:commandLink onclick="loadContextSensitiveHelp(#{setNewDayStatusBean. cycleStatusViewObject.helpUrl});" value="Help"> function loadContextSensitiveHelp(helpPa

  • Export to DNG and burn exports to DVD

    I thought this option under export was the answer to my dreams! but no. It seems that there is no multi-session option on the burn to DVD, so unless I want to use a new DVD for every set of images I download and export to my back up disc as DNGs, I s

  • Increment Date

    Hi, I have a function which returns me the current date which is displayed on OAF page in the format mm/dd/yyyy. I have to change this current date to tomorrow's date by incrementing it at the point where the returned value is stored in AM as i cant

  • How can I Manually Insert an Image into a Picture Control?

    Hi,         I am able to insert an image programmatically into a picture control. But I want to insert an image into the picture control without any code that is manually. How can I Do that? Thanks in Advance Regars, Malleswari

  • Link to Document in Collaboration Project?

    You can use the link on doc properties in the doc dir of 4.5. That link will take you to said document. Can you do the same for a doc in a collab project??