BPS User exit Allocations

Hi Experts,
I am brand new to BPS and I have to write code for BPS user exit for allocations.
i have to read the ods to obtain the rule for sender cost center. for each sender cost center exit needs to determine net posted values for cost elements by referencing postings made in BPS cost center planning area. and this updates needs to made in cost center planning area.
the same thing i have to do for receiver side.  each of receiver's receives proportion of corresponding sender assessment amount and this should be posted against specified characteristic like sub-region, profit center etc which are obtained from ODS.
is any one of you have any sample code ? please guide me.
thanks in advance

Hi Ravi,
What i have to is, I have to read one ODS table (a rule table ) which has key fields like allocation, start date and segment number and data fields like sequence number, rule, sender percentage,assessment / distribution rule, field group, version, sender cost center, sender cost element low and high, company code, receiver profit center, primary lc, sub lc, sub-region, controlling area and cost element.
Now for each sender cost center in ODS, i have to write BPS User Exit, that will determine net posted values for cost elements listed in ODS, by referencing postings made in BPS cost center planning area(PACCA) and updates is made to PACCA.. The amount field is there in the list of "Fields to be Changed" in the planning level where this Exit will trigger.
On Receiver side, receiver postings is based on referencing ODS sender cost center. Each receiver receives proportion of corresponding sender assessment amount (based on percentage) and this is posted to the specified value field to the specified receiver characteristics like sub-region, profit center, sub LC and/or LC which will be obtained from again ODS. The weighting that each receiver gets is determined by the exit referencing the dta in BPS COPA planning area (PAREVCOG) for specified plan version and value field (as listed in rules stored in ODS) and determining the weighting that each receiver should get. This updates will made to PAREVCOG.
Ravi, This is high level requirement.
Now, it would be great, if you have something similar or you can guide me how exactly I have to proceed step by step. I am really new to BPS so some sample code it would be great help.
Regards,
SKS

Similar Messages

  • BPS User Exit Variable based on Planning Package Selection

    Hi,
    I'm implementing a SAP BW-BPS planning layout to be integrated into the CRM we user interface.
    Most of the characteristic selections come from the CRM fields that need to be filled by the user when creates a trade promotion.
    The charcteristic selections work (as standard) just if in the planning level I flag "Selection in Package", then in package these selections are dinamically defined from what the user select in the CRM fields at runtime.
    My problem is that I have to build a BPS User Exit variable to filter, in the planning level, the proper Planning Area based on the CRM Sales Organization value.
    The characteristic CRM Sales Organization belongs to whose chararcteristic the value is determined dinamically in the planning package.
    Is it possible for a BPS user exit variable, set in the planning level, to catch the value of a characteristic selection made at planning package?
    Many thanks for your help.
    Alessandro

    Hi Indu,
    Many thanks for your answer.
    I have already took a look at the document posted by you but I didn't find the solution to my problem.
    This because i have to create a user exit variable that need to get the value of the characteristic selection in package.
    I mean in the planning level I will have the user exit variable that restrict the planning area and, his function module, need to read, at runtime, what is the value of the characteristic CRM Sales Organization restricted in package by CRM.
    So I don't have any idea to which BPS internal table I have referred to in my funcion module to catch the value of the CRM Sales Organization dinamically filtered by CRM.
    Many thanks,
    Alessandro

  • BPS Allocations User Exit

    Hi Gurus,
    I am new to the world of BPS and as being a developer I need to write User Exit for Allocations.
    Is any one of you have developed User Exit for BPS Allocations? if any does, it would be great if you can pass the code, for User Exit BPS Allocations.
    Your help is highly appreciated.
    Thanks and Regards,

    Hi Ravi,
    What i have to is, I have to read one ODS table (a rule table ) which has key fields like allocation, start date and segment number and data fields like sequence number, rule, sender percentage,assessment / distribution rule, field group, version, sender cost center, sender cost element low and high, company code, receiver profit center, primary lc, sub lc, sub-region, controlling area and cost element.
    Now for each sender cost center in ODS, i have to write BPS User Exit, that will determine net posted values for cost elements listed in ODS, by referencing postings made in BPS cost center planning area(PACCA) and updates is made to PACCA.. The amount field is there in the list of "Fields to be Changed" in the planning level where this Exit will trigger.
    On Receiver side, receiver postings is based on referencing ODS sender cost center. Each receiver receives proportion of corresponding sender assessment amount (based on percentage) and this is posted to the specified value field to the specified receiver characteristics like sub-region, profit center, sub LC and/or LC which will be obtained from again ODS. The weighting that each receiver gets is determined by the exit referencing the dta in BPS COPA planning area (PAREVCOG) for specified plan version and value field (as listed in rules stored in ODS) and determining the weighting that each receiver should get. This updates will made to PAREVCOG.
    Ravi, This is high level requirement.
    Now, it would be great, if you have something similar or you can guide me how exactly I have to proceed step by step. I am really new to BPS so some sample code it would be great help.
    Regards,
    SKS

  • AFS User Exit for Allocation Run Sorting

    Hi Gurus,
    can you please help us in order to identify which BAPI or User Exit needs to be used to perform a custom sorting on AFS Allocation Run?
    My aim is to perform a specific calculation on a single field of the requirement sorting table (/AFS/SOFN_V-SOFNA) during ARun processing..
    Given a specific value of this field (that will be EDATU - confirmed delivery date) I want to assign a dynamic value based on a comparison with an external table, in order to determine whether EDATU belongs to range A, B or C
    Any idea?
    Thanks in advance for your help
    Regards, Alessio

    solved with the help of SAP note.

  • User Exit for reading data from a hierarchy in BW-BPS

    Hello Forum,
    How can i fetch all the records from a particular node in a Hierarchy using a user exit in a variable in BW-BPS,
    Plz Help,
    Regards,
    KK

    Hi,
    This is a sample code that may help you.
    DATA: BEGIN OF wa_val,
            from TYPE rsleaffrom,
            to   TYPE rsleafto,
          END OF wa_val,
          tb_val LIKE wa_val OCCURS 0 WITH HEADER LINE,
          tb_grpval_ce LIKE wa_val OCCURS 0 WITH HEADER LINE,
            tb_ce_val   TYPE rshi_t_hienode,
            tb_ce_intervl TYPE rshi_t_interval,
            wa_hiedirkey TYPE rshi_s_rshiedirkey,
            tb_node_val TYPE rshi_t_hienode,
            tb_interval TYPE rshi_th_interval,
            wa_interval TYPE rshi_s_interval,
    SELECT SINGLE hieid objvers FROM /bi0/haccount
                    INTO wa_hiedirkey
                    WHERE nodename = group-name.
      CALL FUNCTION 'RSSH_HIERARCHY_READ'
        EXPORTING
          i_rshiedirkey     = wa_hiedirkey
          i_date            = sy-datum
        IMPORTING
          e_t_rsnodes       = tb_node_val
          e_th_rsinterval   = tb_interval
        EXCEPTIONS
          invalid_hierarchy = 1
          name_error        = 2
          iobj_not_found    = 3
          OTHERS            = 4.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    thanks
    pratyush

  • Create new BPS documents from "COPY DOCUMENTS" user exit.

    Hi Gerd,
    thank you so much for your reply.
    I'm continuing other thread here. (Copy "document icon" to new sheet from "SEM-BPS 1" sheet)
    <b> We've a layout that doesn't use macros. </b>
    We'd like to attach a document for each line that is entered on this layout. All the document attribute characteristics are included in this layout.
    Document contents & technical name can be any thing.
    Should I be able to do this?
    This ensures that users be able to edit documents on other layouts which is crucial.
    I tested this For couple of lines and I was successful.
    Before I'd like to start implementing this, I appreciate your inputs on the prcoess that I follow if this is an effective way of doing?
    Any concerns from the performance side?
    any other hidden issues/concerns that you might be familiar with?
    1) I'm reading all document attribute characteristic values of the layout new lines from the user exit.
    2) I've created one variable for each "document attribute characteristic"
    3) I've created "COPY DOCUMENTS planning function" and included variables in the parameter group
    4) user exit in step 1 fills all variables (fills only 1 value at a time) & passes to "COPY DOCUMENTS parameter group"
    4) due to restriction of only single entry variables usage in
    "COPY plannig funciton", I'm using "API_SEMBPS_FUNCTION_EXECUTE" and executing "COPY DOCUMENTS planning funciton" as many times as number of new lines
    5) if there are 6 new lines, user exit in step 1 loops 6 times & calls "API_SEMBPS_FUNCTION_EXECUTE" 6 times which inturn executes "COPY DOCUMENTS planning funciton" 6 times
    Am I on the right & effective path?
    Is there any better approach?
    Appreciate your inputs

    Hi,
    This is one way you can do that. The bad side of your implementation is that the planning function is called 6 times. It would be better to copy the coding of the planning function and modify it in such a way that you can do all of the steps in one go. If the performance is all right I would still leave it the way it is as then you do not have to change to coding.
    Best regards,
    Gerd

  • Badi or user exit for allocation run (J3AT)

    hi friends,
    we r using the SAP AFS in that i need to put the sales order value check for F status material while saving the allocation run. for that i need the badi or user exit where i will get the values of all the F status mateial before i save the allocation run. so that i can perform the check on sales order values.
    regards,
    vicky.

    Hello vicky
    can you please tell me the note number that solved this problem, thanks.

  • User-exit in sem-bps

    In SEM-BPS, I have a layout for manually entering data. The purpose is to enter values for a list of cost centers. This list
    of cost centers should change according to a SKF (statistical key figure) entered in the layout's header.
    The list of cost centers linked to a given SKF is read from a database table.
    This whole process is achieved with the use of a variable of type user-exit.
    However, I have two problems:
    1) If I change the SKF in the layout's header, I'm not beeing able to force another read to the database table, in order to
    refresh the cost center list;
    2) I'm not being able to detect the SKF selected in header, altough I'm using the function API_SEMBPS_VARIABLE_GETDETAIL to
    do so, wich returns all the SKF's (statistical key figures)
    Can anybody help me ?
    Thank you,
    Ricardo
    PS: Here is the exit, in its present state:
    <b>FUNCTION ZLACT_SFK_CC.
    ""Interface local:
    *"  IMPORTING
    *"     VALUE(I_AREA) TYPE  UPC_Y_AREA
    *"     VALUE(I_VARIABLE) TYPE  UPC_Y_VARIABLE
    *"     VALUE(I_CHANM) TYPE  UPC_Y_CHANM OPTIONAL
    *"     VALUE(ITO_CHANM) TYPE  UPC_YTO_CHA
    *"  EXPORTING
    *"     REFERENCE(ETO_CHARSEL) TYPE  UPC_YTO_CHARSEL
      DATA: ls_charsel TYPE upc_ys_charsel,
            seqno type i,
            tab_val_sel LIKE UPC_YS_API_VARSEL occurs 0 with header line,
            tab_val_sel_all LIKE UPC_YS_API_VARSEL occurs 0 with header line,
            head like UPC_YS_API_HEAD occurs 0 with header line.
      CLEAR:
      eto_charsel, eto_charsel[] ,
      tab_val_sel, tab_val_sel[] ,
      ls_charsel, char_value, seqno,
      t_ccusto, t_ccusto[],
      t_iest, t_iest[].
      case i_variable.
        WHEN 'PRVCCIE'.
    Get value of statistical key figure entered in layout's header****
    CALL FUNCTION 'API_SEMBPS_VARIABLE_GETDETAIL'
       EXPORTING
         I_AREA                   = 'PRRVS'
         I_VARIABLE               = 'PRVSK'
       TABLES
         ETK_VARSEL              = tab_val_sel.
    select cost center list from database table ***********************
        select
          from ZPR_CC_IE_CG
          appending corresponding fields of table t_ccusto
          where iest = tab_val_sel-low.
          clear:seqno.
          loop at tab_val_sel.
            ADD 1 TO seqno.
            ls_charsel-low   = tab_val_sel-low.
            ls_charsel-seqno = seqno.
            ls_charsel-opt   = 'EQ'.
            ls_charsel-sign  = 'I'.
            ls_charsel-chanm = '0STKEYFIG'.
            INSERT ls_charsel INTO TABLE eto_charsel.
          endloop.
          loop at t_ccusto.
            ADD 1 TO seqno.
            ls_charsel-low   = t_ccusto-ccusto.
            ls_charsel-seqno = seqno.
            ls_charsel-opt   = 'EQ'.
            ls_charsel-sign  = 'I'.
            ls_charsel-chanm = i_chanm.
            INSERT ls_charsel INTO TABLE eto_charsel.
          ENDLOOP.
      when others.
    *do nothing
      ENDCASE.
    endfunction.</b>

    Hello,
    I use the exit in the planning level and I link the exit to a variable for "0FISCPER".  I copy the data from a "Non-transactional Cube" to a "Transactional Cube" derictly of the period end closing.  I still need the data in previous month for calculations in BPS.  Maybe, I can use your code.
    Thanks and best regards
    Constant

  • BPS Attribute as Variable filled with User-Exit

    Hello,
    how is it possible to set a variable from the type "attribute" in BPS with an User-Exit?
    Example: Characteristic = Material, Attribute = Material class
    How can I set valid entries for Material class in a User-Exit?
    Thanks for help in advance
    Eckhard

    Eckhard,
    You can solve this by using characteristic relationship type exit. there you can put a function where you can find the values for the attribute material class.
    greets,
    Jeroen

  • Ugrent help. User exit- Read data from BW BPS layout and write to ODS

    Hi,
    I am new to BW BPS and have a req. where i need to read data from BPS layout (EXCEL) and write it to ODS.
    Is there any function module or user exit which read data from excel layout and upload it to ODS. Or can any one help me out how can i write a code for this.
    It is urgent and i need your help.
    Appreciate any kind of input.
    Thanks
    Mamatha

    Dear Mamatha,
    read following documents. i hope it will work for you.
    [http://www.geocities.com/cynarad/reference_for_bps_programming.pdf]
    [Accessing BW Master Data in BPS Functions using ABAP ( Exit Function )|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d3dcc423-0b01-0010-4382-aa3e0784b61e]
    Regards,
    Malik
    Give me points if its helpful for you.

  • Problem with execute User-exit  in BPS

    hi all.
    I made user-exit for BPS, the function is validate values in master tables.
    the user insert datas in layout and the response time is very slow.
    We analyzed and the program called the user-exit  the same number of times exist in the layout.
    there was any way to make the process into data packets and not data by data or to make it faster processing
    Thanks
    Francisco.

    put filters wrapping your user -exit code so that the latter is accessed only for the necessary cases.

  • User Exit for Allocation Strategy

    Hi,
    This is wrt to IS - Retail Allocations. I have been trying to serach a standard user exit for Allocation strategies as mentioned in SAP Help, but unable to find it.
    The text is as follows
    http://help.sap.com/saphelp_46c/helpdata//EN/12/085290470311d1894a0000e8323352/content.htm
    You also determine the goods movements (for example, direct-store-delivery) at this point. You can have the system suggest the sites. To do this, you enter an allocation rule or a site group. You can include your own allocation strategy via a user exit. You can change any default data suggested by the system
    Please help me find the user exits for allocation strategies.
    Best Regards
    Prashant Kedare
    Moved to the right forum. Please post questions in the right forums in the future.
    Edited by: kishan P on Aug 31, 2010 3:23 PM

    Hi
    User exits avialbale are
    M06E0004
    Changes to communication structure for release of purchasing document
    M06E0005
    Role determination for release of purchasing documents
    You can use the user exits & change your RS determination & role determination
    Thanks & Regards
    Kishore

  • BPS Help with user exit.----- Quick one for Marc.B?

    Hi All,
           I'm using an user exit to prefix the GL/account with '2' to make it a stat account.In the fields to be changed , i have included all the characteristics like gl account,region,line of business...key fig name..etc.However when i run the exit, my key figure amount is doubling up.Need a quick fix or a second pair of eyes..also found that xth_data cannot be used in MODIFY statement because of hash table .so I'm using a collect.But as soon as i exit out of the loop, the key figure amount doubles....any pointers????
    Here is the code.................................
    FUNCTION Z_SEM_PREFIX_2ACCOUNTS.
    ""Local interface:
    *"  IMPORTING
    *"     REFERENCE(I_AREA) TYPE  UPC_Y_AREA
    *"     REFERENCE(I_PLEVEL) TYPE  UPC_Y_PLEVEL
    *"     REFERENCE(I_PACKAGE) TYPE  UPC_Y_PACKAGE
    *"     REFERENCE(I_METHOD) TYPE  UPC_Y_METHOD
    *"     REFERENCE(I_PARAM) TYPE  UPC_Y_PARAM
    *"     REFERENCE(IT_EXITP) TYPE  UPF_YT_EXITP
    *"     REFERENCE(ITO_CHASEL) TYPE  UPC_YTO_CHASEL
    *"     REFERENCE(ITO_CHA) TYPE  UPC_YTO_CHA
    *"     REFERENCE(ITO_KYF) TYPE  UPC_YTO_KYF
    *"  EXPORTING
    *"     REFERENCE(ET_MESG) TYPE  UPC_YT_MESG
    *"  CHANGING
    *"     REFERENCE(XTH_DATA) TYPE  HASHED TABLE
      DATA:
        ls_data   TYPE t_s_alloc,
        lth_data  TYPE t_th_alloc.
    *Loop thru the data and check if its a valid GL account.
    *If its a valid GL account, Prefix '2' to the beginning of the
    *account and also add 'DDD' to the transaction type in order to
    *identify the record.once the prefixing is over , you will have the  old as well as the new set of records.
    *records as they will not have the 'LOB' flag in the transaction type.
      lth_data = xth_data.
      LOOP AT lth_data INTO ls_data.
        if ls_data-s_chas-0gl_account
                                    is not initial.
           if ls_data-s_chas-0gl_account+3(1) = '0' AND
             ls_data-s_chas-0gl_account+4(1) <> '0'.
              concatenate '000' '2'
              ls_data-s_chas-0gl_account+4(6)
              into ls_data-s_chas-0gl_account.
              ls_data-s_chas-zoctrtype = 'LOB'.
           endif.
       endif.
      collect ls_data into lth_data.
      ENDLOOP.
    DELETE Lth_data
            where s_chas-0gl_account+3(1) <> '2' and
                  s_chas-zbpsflag = 'C'.
      xth_data = lth_data.
    ENDFUNCTION.

    Hi Sudz,
    you got it almost right. If you do the collect the system will add the changed records to the exiting ones since you start with lth_data = xth_data. So use the following logic:
    start with empty table
    refresh lth_data.
    now process all exiting data
    LOOP AT xth_data INTO ls_data.
    if ls_data-s_chas-0gl_account is not initial.
    if ls_data-s_chas-0gl_account+3(1) = '0' AND
    ls_data-s_chas-0gl_account+4(1) <> '0'.
    concatenate '000' '2' ls_data-s_chas-0gl_account+4(6)
    into ls_data-s_chas-0gl_account.
    ls_data-s_chas-zoctrtype = 'LOB'.
    endif.
    endif.
    and collect the new data
    collect ls_data into lth_data.
    ENDLOOP.
    return only the new data
    xth_data = lth_data.
    Regards,
    Marc
    SAP NetWeaver RIG

  • Badi or user exit for allocation run (Tcode-J3AT) on save button

    hi friends,
    i m searching for the BADI or user exit for the Tcode J3AT on the save button press. if u know any badi or user exit for same pls let me know.
    thanks and regards,
    vicky.

    solved with the help of SAP note.

  • User exit to prevent setting status , if there is no budget allocated to WBS

    Hi PS Experts,
    Is it normal to experience unlimited purchases if you have forgotten to add budget $$ against WBS?
    Customer has following steps
    1) User create Project & user status is CREA which prevents most traxn
    2) User will allocate budget to WBS & set user status to OPEN which will allow Release of project.
    3) Release project & create PR/PO
    under step 2, if they forget to add budget any amount of procurement can be done against that WBS.
    We are looking at any user exit to prevent release of WBS which doesn't have budget $$ assigned to it.
    Are there any?
    Thank you so much for help,
    Jatin

    Hi Shishir,
    I am experiencing unlimited PR/PO  allowed for WBS without budget/forget to add budget(Blank entry).
    Is there a configuration which treats 'Blank' as 0. We are experiencing 'Blank' treated as unlimited( 999999999)
    In MM-Physical inventory, there is 'Radio' button to mark 'Zero Count' to make sure user whats to decelare 'Zero' instead of 'Forgot to enter'.Much in similar way , something like this is happening here.
    This is probably system reading 'Blank' field as non-zero. is there a way to alter this behavior?
    Best Regards,
    Jatin

Maybe you are looking for

  • WHY CAN I NOT GET DSL OR UVERSE SERVICE AT MY HOME.

    I would like to know why i cannot get either internet service at my home.  its a new home i understand.  but you have a UVERSE fiber cable running under my front yard.  you have DSL wiring under my front yard.  i have  a box in my front yard.  and ye

  • A question about compatiblilty of JDBC

    Hi, there, I have a question about JDBC 3.0 in JDK1.4.1. We build a .jar using JDK1.4.1 and this .jar file provides JDBC 3.0 interface. I then tried to call the interface under JDK1.3.1 but it keeps asking me about the getParameterMetaData() in Prepa

  • Synchronous HTTP - RFC Scenario: Timeout

    Hello together, I have just implemented a synchronous HTTP --> RFC scenario. When I test the implementation using the HTTP testing tool within the Runtime Workbench everything works fine. However when I use an external HTTP Client I get a timeout exc

  • OrdImageDomain could not be found

    Hi, I tried to deploy Order Entry bc4j to o8i, but I got ORA-29521: referenced name oracle/ord/im/OrdImageDomain could not be found message. There seems to be a problem with OrdImage column. How can I resolve this problem? I use jdev3.2 and o8.1.7. T

  • Cant restore data to my z10

    hi, recently my z10 was not functioning properly so i tried to re-start it but it did not happen i saw some comments on these forums and updated the software of the device and also did a factory reset now i am unable to restore my data to the z10 usi