BPC 7.5NW Allocation Logic

Hello Gurus,
Suppose we need to allocate rent 1000(source) to 2 entities A & B ( ex: 500,500).. After send & refresh in input schedule , the source will become zero. Now, for some other purpose, we once agn press send & refresh button to enter some other data. But, when we do so, our allocation logic should not execute. If it is executed, then ZERO will b allocated to both entities as zero is current source value. So, how can we do this in allocation logic. Can I have the code plz. Its urgent

Hello,
You can achieve this by utilizing additional Dimensions in your RUNALLOCATION, like DataSrc. Idea is, that you have your initial value in Account  = C, DataSrc = Manual, but when you make Account 'C' zero you post it to DataSrc  = Posted.
In report you keep DataSrc = Manual if you need to show the old value or DataSrc = <ALL> if you need to show value zero.
This way RUNALLOCATION will post only values user entered without taking into affect offsets posted.
Hope you got the idea.
Regards,
Gersh

Similar Messages

  • Using a variable in an allocation routine in SAP BPC 7.5NW

    Below is a very simple BPC allocation routine I wrote.  The data originally sits on a dummy profit center and needs to be allocated to all itu2019s relevant profit centers. These relevant profit centers can be derived from the profit center hierarchy (BPC_ + ID of entity).
    When I hardcode the Profitcenter and the entity, the routine works (as below). But what I really want is that it works variable as in the line that I commented out. Any idea whether this could work (BPC 7.5NW)  ? If not, I am afraid I need to go to ABAP, which is really a pitty
    //ALLOCATION PROCEDURE CONVERSION RATE
    //=====================================
    *RUNALLOCATION
    *FACTOR=1
    *DIM SEBACCOUNT WHAT=CONV_RATE; WHERE=<<<; USING=<<< ; TOTAL=<<<
    //*DIM PROFCENT WHAT=DUMPC; WHERE=BAS(BPC_"%ENTITY_SET%");USING=<<<; TOTAL=<<<
    *DIM PROFCENT WHAT=DUMPC; WHERE=BAS(BPC_OKB);USING=<<<; TOTAL=<<<
    *DIM ENTITY WHAT=OKB; WHERE=<<<; USING=<<< ; TOTAL=<<<
    *ENDALLOCATION
    Thanks
    Nico

    Gersh,
    It works now. I have implemented the below code (ENTITY needed to contain the variable as well). The relationship profitcenter and entity is very important as it derives the relevant profitcenters from the profit center hierarchy (e.g. all profitcenters under the legalentity node).
    //ALLOCATION PROCEDURE CONVERSION RATE
    //=====================================
    *FOR %ENT% = %ENTITY_SET%
    *RUNALLOCATION
    *FACTOR=1
    *DIM SEBACCOUNT WHAT=CONV_RATE; WHERE=<<<; USING=<<< ; TOTAL=<<<
    *DIM PROFCENT WHAT=DUMPC; WHERE=BAS(BPC_%ENT%);USING=<<<; TOTAL=<<<
    *DIM CATEGORY WHAT=FCSTCUR; WHERE=<<<; USING=<<< ; TOTAL=<<<
    *DIM ENTITY WHAT=%ENT%; WHERE=<<<; USING=<<<; TOTAL=<<<
    *ENDALLOCATION
    *NEXT
    Thanks
    Nico

  • BPC Run Allocation Logic

    Dear All,
    I am new in BPC world so i want ur help in solving one error
    when running allocation logic, it is not accepting more than 1 member in the denominator
    the factor i am using is 1/using
    can u pls help on this
    thanks.

    Can you please post the logic and the error you are getting?
    Thanks,
    John

  • BPC 7.5NW consolidation error

    Hi,
    We are using BPC 7.5 NW version (7.50.04). We changed standard dimension 'GROUPS' to dimension type 'R' and included it in our legal applications.
    We are using below logic to run both currency conversion and legal consolidation.
    *RUN_PROGRAM CURR_CONVERSION
          CATEGORY = %C_CATEGORY_SET% 
          GROUP = %GROUPS_SET%
          TID_RA = %TIME_SET%
          RATEENTITY = GLOBAL
    *ENDRUN_PROGRAM
    *RUN_PROGRAM CONSOLIDATION
        CATEGORY = %C_CATEGORY_SET%
        GROUP = %GROUPS_SET%
        TID_RA = %TIME_SET%
    *ENDRUN_PROGRAM
    The standard data manager package with process chain 'LEGAL_CONSOLIDATION' fails with error message 'Member "G_CG2" not exist'. G_CG2 is a member of GROUP dimension. When we executed the below logic (with hardcoded variables) in BW transaction UJKT, it worked fine and posted values correctly.
    *RUN_PROGRAM CURR_CONVERSION
          CATEGORY = C_100
          GROUP = G_CG2
          TID_RA = 2008.DEC
          RATEENTITY = GLOBAL
    *ENDRUN_PROGRAM
    *RUN_PROGRAM CONSOLIDATION
        CATEGORY = C_100
        GROUP = G_CG2
        TID_RA = 2008.DEC
    *ENDRUN_PROGRAM
    Any idea, why system is not able to recognize 'G_CG2' when we use data manager package? In BPC 7.5NW, is it mandatory to use both 'R' and 'G' type dimensions? SAP Help has different contradictory views !!!

    Hi Nilanjan,
    We are using 'GROUPS' dimension of type 'R'.
    The above dimension has members of both GROUPS and CURRENCY (ex: G_CG1, G_CG2, LC, USD etc).
    1) Run currency translation for 'USD'. The logic works fine if i change it as follows:
    *RUN_PROGRAM CURR_CONVERSION
    CATEGORY = %C_CATEGORY_SET%
    CURRENCY = %GROUPS_SET%
    TID_RA = %TIME_SET%
    RATEENTITY = GLOBAL
    *ENDRUN_PROGRAM
    2) Run currency translation for 'G_CG2'. The logic works if i change it as follows:
    *RUN_PROGRAM CURR_CONVERSION
    CATEGORY = %C_CATEGORY_SET%
    GROUP = %GROUPS_SET%
    TID_RA = %TIME_SET%
    RATEENTITY = GLOBAL
    *ENDRUN_PROGRAM
    3) Run COI for 'G_CG2'. The logic works if i change it as follows:
    *RUN_PROGRAM CURR_CONVERSION
    CATEGORY = %C_CATEGORY_SET%
    GROUP = %GROUPS_SET%
    TID_RA = %TIME_SET%
    RATEENTITY = GLOBAL
    *ENDRUN_PROGRAM
    4) The logic is executed successfully from BW UJKT if i hardcode the values for 'GROUPS' dimension.

  • Script logic - how to use a selection variable within an allocation logic

    Hi,
    I want to implement a simple top-down distribution to distribute values from a yearly budget (Y20xx.TOTAL) to a quarter budget (Q20xx.Q1, ... Q20xx.Q4) using the actuals of the previous year as reference.
    If we hard code the members it works fine:
    *RUNALLOCATION
    *FACTOR=USING/TOTAL
    *DIM ACCOUNT WHAT=ACC_NOT_ASSIGNED; WHERE=BAS(FIN); USING=<<<; TOTAL=<<<
    *DIM TIME WHAT=Y2009.TOTAL; WHERE=BAS(Q2009.TOTAL); USING=BAS(Q2008.TOTAL); TOTAL=<<<
    *DIM CATEGORY WHAT=SBO; WHERE=<<<; USING=ACTUAL; TOTAL=<<<
    *ENDALLOCATION
    Of course, we want to make this dynamic, using the values inputted in the selection screen of the package: time, entity and category.
    So if we start with write the following logic, it does not work anymore:
    *RUNALLOCATION
    *FACTOR=USING/TOTAL
    *DIM ACCOUNT WHAT=ACC_NOT_ASSIGNED; WHERE=BAS(FIN); USING=<<<; TOTAL=<<<
    *DIM TIME WHAT=%TIME_DIM%; WHERE=BAS(Q2009.TOTAL); USING=BAS(Q2008.TOTAL); TOTAL=<<<
    *DIM CATEGORY WHAT=%CATEGORY_DIM%; WHERE=<<<; USING=ACTUAL; TOTAL=<<<
    *ENDALLOCATION
    So, how to use the selection variables in this allocation logic? %TIME%, %CATEGORY% also did not work ...
    regards
    Dries
    solved it ...
    Edited by: Dries Paesmans on Feb 22, 2009 8:31 PM

    Hi Dries,
    Looks like you solved this, but if I can just add a small point -- when you use syntax like this:
    *DIM ACCOUNT WHAT=ACC_NOT_ASSIGNED; WHERE=BAS(FIN);
    *DIM TIME WHAT=Y2009.TOTAL; WHERE=BAS(Q2009.TOTAL);
    each time the logic runs, it will scan through the dimension from the FIN and Q2009.TOTAL members, one level at a time, until it reaches the base members (where calc = 'n'). This may happen very quickly, if the dimension has very few levels, but could take a bit of extra time if it's a particularly deep dimension. (By which I mean many levels of hierarchy -- not some 1970's Pink Floyd musical reference.)
    You may speed things up by using a member property instead of the BAS(xyz). Flag all the base members using a specific property value, and that way the logic engine can pick up the complete list of members in the WHERE clause, in a single query.
    *DIM Account What=ACC_NOT_ASSIGNED; Where=[FloydProperty]="DarkSideOfTheMoon"; ...
    This adds some maitenance work in the dimension, which may be problematic if your admins are changing it regularly (and will cause problems if they forget to update this particular property).
    I can't predict how much time this will save you (maybe not much at all), but anyway I figure you'd want to know exactly what work you're asking the system to perform.
    Regards,
    Tim

  • Transport of Security objects in BPC 7.5NW

    As a part of NW BPC transports, changed the entries in table UJT_TRANS_CHG. For the 1st transport (from DEV to QA)wanted to transport ALL objects including Security and Teams. So, selected 'Development' for ALL objects under this table.
    After the transport collection via tcode UJBPCTR and importing into QA, found that 'Users', 'Teams'  and 'Task Profiles' did NOT transport. 'Member Access Profiles' did transport to QA.
    I expected 'Users', 'Teams'  and 'Task Profiles' also to be transported. We are on SAP BPC 7.5NW, SP4.
    Am I missing something here ?
    Thanks in Advance.

    Hi
    we had the same problem and didn't know if Security objects could be transported, but we found the BPC User Mass Management Tool.
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/d0cdbccf-0def-2d10-298d-f4223de9a6ed&overridelayout=true
    This could help you to export the security objects in DEV and import the objects in PRD.
    The transports you need for the ZUJE_MASS_USER_MGMT   Programm you found on page 46 in the document mentioned above.
    Please let me know if we could help you.

  • BPC 7.5NW Report Issues When Requesting Year To Date Data

    Dynamic reports built with 2 row expansions (Cost Ctr, Account) up to 3 columns (not expansions, set to different categories with excel formulas for variance calculations...Act vs. Bud for example) result in error messages (error retrieving data and another related error messge) when requesting YTD data vs. Periodic data.  The report runs fast and properly with Periodic measure.  When running with the YTD measure, attempts to reduce the report data volume by removing comparative categories and removing formatting (after ranges) still results in YTD data retrieve errors.
    Has anyone else had similar issues with BPC 7.5NW, SP9, and YTD data not pulling into reports?  What are the common causes for issues with YTD data retrieval?  Given the design by SAP of the BPC NW product and promotion of using BPC for both Periodic and YTD data, should I expect this report to work properly, meaning that I can get output with YTD data without long runtimes or errors that result in terminating the report?  Thank you.

    Hi,
    This would do it :SQL> !cat q.sql
    with t (dt, val) as (
         select to_date('2011/01/04','yyyy/mm/dd'), 123 from dual union all
         select to_date('2011/04/09','yyyy/mm/dd'), 234 from dual union all
         select to_date('2011/06/28','yyyy/mm/dd'), 345 from dual union all
         select to_date('2011/10/18','yyyy/mm/dd'), 456 from dual union all
         select to_date('2011/12/23','yyyy/mm/dd'), 567 from dual union all
         select to_date('2012/01/07','yyyy/mm/dd'), 678 from dual union all
         select to_date('2012/05/13','yyyy/mm/dd'), 789 from dual union all
         select to_date('2012/07/19','yyyy/mm/dd'), 890 from dual union all
         select to_date('2012/08/30','yyyy/mm/dd'), 901 from dual union all
         select to_date('2012/09/22','yyyy/mm/dd'), 012 from dual
    ------ end of sample data ------
    select *
    from t
    where dt >= trunc( add_months(trunc( &&dateexec. ,'month'),-1) ,'year')
    and dt < trunc( &&dateexec. ,'month')
    undefine dateexecThe dateexec parameter is just here to "simulate" sysdate of different points in year.
    <i>(your actual query would have sysdate where the dateexec parameter appears)</i>
    SQL> @q
    Enter value for dateexec: sysdate
    DT                         VAL
    07/01/2012 00:00:00        678
    13/05/2012 00:00:00        789
    19/07/2012 00:00:00        890 sysdate does the current year up to previous month.
    SQL> @q
    Enter value for dateexec: to_date('20120122','yyyymmdd')
    DT                         VAL
    04/01/2011 00:00:00        123
    09/04/2011 00:00:00        234
    28/06/2011 00:00:00        345
    18/10/2011 00:00:00        456
    23/12/2011 00:00:00        567when ran in january, it retrieves all the previous year.

  • Error when running allocation logic

    I am running the following allocation logic and get the following error:
    *RUNALLOCATION
    *FACTOR=USING/TOTAL
    *DIM P_ACCT WHAT=CE0004010; WHERE=CE0004020; USING=CE0004030; TOTAL=<<<
    *DIM ENTITY WHAT=A1000; WHERE=<<<; USING=<<<; TOTAL=<<<
    *DIM TIME WHAT=2009.JAN; WHERE=>>>; USING=BAS(2009.TOTAL); TOTAL=<<<
    *ENDALLOCATION
    UJP_RULE_EXCEPTION:Missing [] on property name: WHAT=CE0004010. I get this error when executing the script using the program "UJK_SCRIPT_LOGIC_TESTER". I also get a similar error when running it via the data manager package.
    Any thoughts on why this error is happening?

    Hi Sanjay,
    I think you are using formula property for any of the dimension member used in the Allocation logic.
    FYI Allocation will not work fine for the dimension members which is calculated using the formula written in the formula Property.
    There is no problem with your script it looks fine.
    Hope this might help you.
    Regards,
    G.Vijaya Kumar

  • Addition of values after allocation logic instead of overwrite 7.50.05 NW

    Hi Gurus
    I am writing an allocation logic where I am allocating some values in a ratio of sales. but there is already some value in the fields i am allocating into and after this logic, the new vales are overwriting the existing one. But my requirement is to add those values in exsting values. Please let me know how to do it.
    as a work around, I am copying the values into a differnt account, then running the allocation on that one and then adding this into the original account. is there any easier way for this.
    Regards
    Swathi

    Hi Swathi,
    Overwriting is the nature of planning. So, not only allocation overwrites results - all planning functions do this. The only exception is if you do multiple calculations in same construct - those will be added. Reason for this is, that user can run same planning function multiple times and you don't want those results to add up.
    So, if you want to summarize what was there before allocation and after you have to have additional Dimension, DataSrc for example, and have values in that Dimension different in existing data and in allocated. This will keep them separate. In report, do not show break-down by that additional Dimension and you'll see total of the old value and the new one.
    Please let me know if this is not what you were looking for.
    Gersh

  • BPC 7.5NW Performance Document

    Hi Experts,
    Please help me to get BPC 7.5NW performance document or related document if anyone has.
    Thanks in Advance,
    regards,
    Hari

    Hi,
    The following document might have some pointers that you are looking for
    performance analysis and tuning guide for BPC - Link below.
    [http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e08c2aa2-6c58-2e10-3588-e6ed2e7c04f8?QuickLink=index&overridelayout=true]
    Thanks,
    Sreeni

  • BPC 7.5NW - Client SP6 - Unable to log in to clients on older versions

    REPOSTED UNDER BPC 7.5NW FORUM
    Edited by: Sunil Narahari on Mar 7, 2011 2:04 PM

    I'm having a similar problem with 10.5.2 Leopard server and client -- no Tiger involved.
    I have the green light on the login screen and am able to log in as an OD administrator, but regular OD users are rejected with a login window shake. I never specified any home directories because they were auto-generated on machines locally when I logged in with the OD administrator.
    Apple phone support were able to duplicate my problem and had me do an Enterprise Data Capture. Apple engineers were also able to duplicate my problem. Here is some of what phone support emailed me:
    +I got a reply from engineering. They said they were able to duplicate the issue with a 10.5 up to a 10.5.2 client with no home directory specified. The only current workaround is to set up an automount location for home directories and specify a home location place for the users. The clients do not have to be bound to the server, they just need to have a home folder directory specified.+
    +Engineering is aware of the issue and are working on it. For now this is the only workaround we have.+
    I haven't had a chance to try this Apple workaround, but maybe it will help you.

  • NW BPC7.5 Allocation logic issue

    Dear all,
    I have an allocation logic for OPEX on diffrent entities
    *FOR %CURRACCT%=BAS(P0000011)
    *RUNALLOCATION
    *FACTOR=USING/100
    *DIM P_ACCT WHAT=%CURRACCT%; WHERE=%CURRACCT%; USING=OPEXSHARE
    *DIM P_DataSrc WHAT=MANUAL; WHERE=MANUAL; USING=GLOBALASSUMPTIONS
    *DIM P_ENTITY WHAT=C001; WHERE=C002; USING =C002
    *DIM P_CostCtr WHAT=100010; WHERE=200010; USING=100010
    *ENDALLOCATION
    *NEXT
    the logic validated is succesflly.
    The problem is when ever i enter data in any of the account in BAS(P0000011) , the data is allocating all the members of BAS(P0000011).
    My requirement is for which account i enter data allocate to the specific account under BAS(P0000011) based on company allocation rate.
    Please help on it.

    Sorry, I mis-read your script. I tough that you have a FOR/NEXT loop an base-members of P0000011. I don't see what your FOR/NEXT loop is doing in that form. Definitely it will take from total of all accounts under P0000011 and post it to ALL of them; and this IS were MS and NW versions are different.
    If you want to allocate data from 1 Account under P0000011 to same account, you should define a variable that is a list of BAS(P0000011)  account and use that variable in FOR/NEXT loop. This way ALLOCATION will take amount only form that Account and post it to same account without touching other accounts.
    Gersh

  • Using property value in Allocation Logic.

    Hi All,
    Can we use a property value from one dimension as ID for different dimension in the Allocation Logic?
    I have a category Actual which has a value of 2011 in the property YEAR.
    I need to use 2011 in DIM TIME statement.If somehow i can get the 2011 value into a variable then i can use that variable in the DIM TIme statement.
    EX:
    *SELECT(%TIMEYEAR%,"ID",.....................................)   (This is where i need help ..in writing the statement)
    DIM TIME WHAT = [YEAR]=%TIMEYEAR%;  WHERE = %TIMEYEAR%(1).INP;   USING = %TIMEYEAR%(1).INP;
    This would mean:
    DIM TIME WHAT=[YEAR]=2011;   WHERE=2012.INP;   USING=2012.INP;
    Can we get this to work in Allocation Logic?I need to know if i can get the value of the property into the variable?
    Any help is appreciated.
    Thanks,
    KK

    Hi
    I believe using the category property "YEAR" in the logic may not be a good idea. In case of next year, you need to change the property value "YEAR" to 2012...... and so on.
    If you want to bring the current year as variable you can use system variable %YEAR%
    %YEAR% - Returns current calendar year
    DIM TIME WHAT = YEAR=%YEAR%; WHERE = %YEAR%(1).INP; USING = %YEAR%(1).INP;
    Try and let me know
    Thanks

  • Measures:YTD behavior in BPC 7.5NW

    All,
    Has anyone come across this?
    When I execute EVDRE and use measures, my PERIODIC and QTD are working fine. But YTD is working incorrectly and the behaves just like QTD. Account I am doing is for EXP account. I am on BPC 7.5NW Pack 4. Any help is appreciated?

    Hi Danny,
    You can try changing the text description of your application in the admin console and resaving it, which should reset the delivered measure formulas. However, I wonder if there is something wrong with your time hierarchy. How is your Time dimension hierarchy set up?
    Ethan

  • Introducing own allocation logic

    Hi,
    I have a requirement in which I need to allocate notification activity to a particular user by using own allocation logic as soon as the notification activity is spawned.
    Please let me know is it possible and how?
    Reds,
    KS

    Hi,
    Yes - adding any activity to a workflow will include extra overhead, both in terms of processing time and data storage. This is particularly important if the activity is going to be revisited a number of times, since the previous states are also archived within the workflow schema.
    To be honest, I wouldn't worry too much about it - adding an extra activity which determines the recipient has to be done at some stage, and should not be too costly in terms of either performance or storage.
    If you notice a difference, even through careful monitoring of the system, I'd be surprised - assuming that the logic to determine the recipient is fairly straightforward.
    HTH,
    Matt
    WorkflowFAQ.com - the ONLY independent resource for Oracle Workflow development
    Alpha review chapters from my book "Developing With Oracle Workflow" are available via my website http://www.workflowfaq.com
    Have you read the blog at http://thoughts.workflowfaq.com ?
    WorkflowFAQ support forum: http://forum.workflowfaq.com

Maybe you are looking for