FOX on Agg level of a Multiprovider - clarification

Hi,
Iam facing a problem with FOX not generating new records.
Scenario:
There are projectization% foreach WBS and Costelement wise in the source Cube.(ZHR_PROJ)
The Target cube(ZOF_R01) has no %s in it initially on opening the layout but only AMOUNTs. Layout is restricted with target cube-ZOF_R01. On executing the Plng Func, I want to copy the projectization%s foreach WBS and not Costelement wise in the Source cube(zhr_proj) to the WBS and Costelements in target cube(zof_r01). The set of CostElements in Source & Target cubes are completely DISJOINT sets.
The data trace(execute with trace) data records are as below:
Series     Data     Change Indicator     WBS Element     Cost Element     Amount (Group Crcy)     Projectization %     InfoProvider
1     Before     Unchanged     CT.0001.AU10.10.01.001     300010                   5,889.08          0.0     ZOF_R01
1     After     Unchanged     CT.0001.AU10.10.01.001     300010                   5,889.08          0.0     ZOF_R01
2     Before     Unchanged     CT.0001.AU10.10.01.001     307080                   5,000.00           0.0     ZOF_R01
2     After     Unchanged     CT.0001.AU10.10.01.001     307080                   5,000.00          0.0     ZOF_R01
3     Reference Data          CT.0001.AU10.10.01.001     300020                   5,889.08          0.0     ZOF_R01
4     Reference Data          CT.0001.AU10.10.01.001     300030                       0.00          40.0     ZHR_PROJ
5     Reference Data          CT.0001.AU10.10.01.001     300040                       0.00          40.0     ZHR_PROJ
6     Reference Data          CT.0001.AU10.10.01.001     300050                       0.00          40.0     ZHR_PROJ
7     Reference Data          CT.0001.AU10.10.01.001     300070                       0.00          40.0     ZHR_PROJ
8     Reference Data          CT.0001.AU10.10.01.001     300080                       0.00          40.0     ZHR_PROJ
9     Reference Data          CT.0001.AU10.10.01.001     300110                       0.00          40.0     ZHR_PROJ
10     Reference Data          CT.0001.AU10.10.01.001     300190                       0.00          40.0     ZHR_PROJ
11     Reference Data          CT.0001.AU10.10.01.001     301060                       0.00          40.0     ZHR_PROJ
12     Reference Data          CT.0001.AU10.10.01.001     307080                   5,000.00          0.0     ZOF_R01
What is expected is :
1     Before     Unchanged     CT.0001.AU10.10.01.001     300010                                 5,889.08          0.0     ZOF_R01
1     After     Unchanged     CT.0001.AU10.10.01.001     300010                   5,889.08          40.0     ZOF_R01
2     Before     Unchanged     CT.0001.AU10.10.01.001     307080                   5,000.00          0.0     ZOF_R01
2     After     Unchanged     CT.0001.AU10.10.01.001     307080                   5,000.00          40.0     ZOF_R01
FOX written as follows:
TOTAL_P =  0.
FOREACH L_WBS,L_CE.
          L_PROJP = {ZPROJ_P, L_CE, ZHR_PROJ, L_WBS}.
          TOTAL_P = TOTAL_P + L_PROJP.
     {ZPROJ_P, L_CE, ZOF_R01,   L_WBS} = TOTAL_P.
ENDFOR.
Do I need to consider Costelement in the Agg level? because while calculating the %s i need to do it at WBS wise , whereas while assigning it to target i need to assign it to Costelement and WBS wise.
Just to sumup:
Source:(ZHR_PROJ)
WB1   CE1   20%
WB1   CE2   30%
WB2   CE2   35%
WB3   CE1   25%
WB1   CE4   35%
Target:(ZOF_R01) - before execution
CE10   WB1 $500  0%
CE10   WB2 $300  0%
Target:(ZOF_R01) - After execution(what is expected)
CE10   WB1 $500  85%
CE10   WB2 $300  35%
Is this possible?
Can anybody suggest  good examples of FOX with foreach in reference data, foreach in selection..?
Thanks
Shyam

Hi,
     Did you change the  0INFOPROVIDER restriction after changing the key figure mapping in the multiprovider?
Because even if you change the mapping, you have to change the query restriction also.
Can you share the requirement for which you are trying to include both the planning cube and it's aggregation level in the same multiprovider?
Because normally if the aggregation level is included in the multiprovider then there is no need to include the corresponding planning cube and vice versa.
Regards,
Balajee

Similar Messages

  • Problems creating aggregation levels over a Multiprovider

    Hi experts,
    When I create a aggregation level over a multiprovider the system returns an error " Infoprovider XX cannot be used for definition". I have read other threads with the same question and its solutions. I have checked my system and all is correct. The multiprovider has linked five infoproviders, one as real time.
    Any Idea?
    Please, it is very urgent to solve this.
    Thanks a lot in advance.

    Hi Mayank and Ravi,
    I have checked the identification of chars and kf. The realtime cube has five chars and a kf. All of them are assigned with all cubes witch are linked with the multiprovider.
    I have tried by removing the realtime cube and the system shows the same error message. I have also tried by reactivating the cubes and multicube.
    Any idea?
    Thanks.

  • Agg level, filter and plng function

    Hi,
    I have selected all objects from infoprovider  in agg level.
    In FILTER i selecte 5 characterists and gave restrictions.
    In planning function [COPY), I selected  7 characteristics and gave from change and TO change criteria.
    In planning sequece i gave the agglevel, filter and planning function.
    1. What will happen when i execute to planning function when i selected more number of characteristics which are not in filter?
    2. Will this impact in any way when i create input ready query?
    3. What are the main things that need to be considered when creating inupt ready query?
    Thanks
    Annie

    Copy function will work for those models which you have included in Filter.
    Regards
    Githen

  • Aggregation level on single level basis or multiprovider

    Hello,
    we use IP 7.0 and have a planning cube for CO-PA data, as well as a multiprovider combining the actual cube and the planning cube for COPA data. We need to implement a planning tool in which planning simple planning functions are needed on the single basis (copy, revaluation, multiply,manual planning ...) as well as on the multi-provider (top-down with reference data).
    -> on which level(s) should we define the aggregation level? Do we need to define it on the multiprovider (in order to do the top-down) or can we split it up (single level and multi-provider) and define a workbook with a manual planning function on the single level AND including the top-down based on the multiprovider?
    thanks
    Dries

    I agree with Gregor,
    I think it is more logical to configure your Aggregation Level on top of your Multi-Provider, especially since you already have a need to view ref data from Actuals to perform calculations on your Planned.  You can always restrict your 'simple' functions to the appropriate InfoProvider.
    As for the FOx question, you can always restrict to each InfoProvider when writing your FOx (either inside the FOx code or using the FOx conditions).
    Regards,
    Zane

  • Aggregation table - Diffrent agg levels for base table and agg table

    Is it possible to have Different aggregation level for base table and Aggregation. Say sum on a column in AGG table and Count for the same column in Fact table.
    Example
    Region,Day_product,sales person, customer are dimensions and Call is a fact measure
    FACT_TABLE has columns Region, Day, Product, Sales person,Customer, Call
    AGG_TABLE has columns Region, Month,Product, call
    We already have a Logical Table definition for the fact table say FACT_CALL
    We have a Logical column called No of customers.
    For the Data source as FACT_TABLE Formula for the column is "Customer" and Aggregation level is count distinct.
    But agg table we already have a calculated column call TOT_CUSTOMERS. which is been calculated and aggregated in the ETL.
    IF we map this to the logical column we have to set the formula as TOT_CUSTOMERS and we need to define aggregation type as SUM as this is at REGION, MONTH AND Product level. But OBI does not allow to do so.
    Is there a work around for this? Can you please let us know.
    Regard
    Arun D

    The way BI server picks up the table that would satisfy the query is through column mappings and contents levels. You have set the column mappings to TOT_CUSTOMER, which is right. When it comes to aggregation, since its already precalculated through ETL, you want to set the aggregation to SUM. Which I would say - is not correct, you can set the aggregation to COUNT DISTIMCT which is same as that of the detailed fact. But set the content levels to month in date table, and appropriate levels in region etc., So now BI Server will be aware of how to aggregate the rows when it chooses the agg table.

  • Query on MC (on agg level on cube) not input ready

    Hello xperts,
    aggregation level A is placed on infoprovider P and contains all characterstics and KYFs from P.
    A query containing KYFs X,Y and Z built on A is input ready for KYFs X,Y and Z.
    The query displays the correct values for
    X = 10
    Y = 20
    Z = 30
    So far everything is good ... but then it gets nasty!
    Multiprovider M sits on top of A (and InfoPovider P is also included in M).
    In an identical copy of above query built on multiprovider M the keyfigures (rows) are restricted through 0INFOPROVIDER:
    row 1 with KYF X: 0INFOPROVIDER = A
    row 2 with KYF Y: 0INFOPROVIDER = A + P
    row 3 with KYF Z: 0INFOPROVIDER = P
    The query is NOT input ready and the values displayed are:
    X = nil
    Y = nil
    Z = 30
    Why???
    Key figures in M are mapped:
    X from A only
    Y from A and P
    Z from P only
    Changing how the key figure in M are mapped as per below does not help:
    X from A and P
    Y from A and P
    Z from A and P
    The query is in change mode, X,Y and Z are marked as planning. restricting by 0INFOPROVIDER in the filter does not help either.
    We are on 7.0 SP 23.
    Any ideas out there?

    Hi,
         Did you change the  0INFOPROVIDER restriction after changing the key figure mapping in the multiprovider?
    Because even if you change the mapping, you have to change the query restriction also.
    Can you share the requirement for which you are trying to include both the planning cube and it's aggregation level in the same multiprovider?
    Because normally if the aggregation level is included in the multiprovider then there is no need to include the corresponding planning cube and vice versa.
    Regards,
    Balajee

  • Cannot activate agg level

    Hello all
    After i added new cube to a multiprovider, i have tried to activate one of thr aggregation levels, and i get this error: " Aggregation level ZIP_QTR2: InfoProvider ZBCSINCGE cannot be used for definition
    Aggregation level ZIP_QTR2 is inconsistent ".
    ZBCSINCGE is an info object,
    What is the reason?
    Best to all
    Yuval

    Hi Yuval,
    Can u confirm wheather u've created an aggregation level on a the new cube that u've added or on the multiprovider?
    It could be because of two probelms:
    - Real time cube is not active & turned into 'Planning mode'; or
    - you must have tried creating an aggregation level on a multi-provider
    Actually, Aggregation level must be created only on the Real time Infoprovider & cannot be created on a multi provider.

  • Which function? Agg level to Agg level

    I want to be able to allow an Admin to plan Key Figures per Cost Center. Each Cost Center and Fiscal Period may have different key figures (planned hours).
    I will then have a goal maintainer who will work with these planned hours at Employee Detail level. Using a MultiProvider to show employees and Actual Hours, I want to also show the planned hours as assigned to their cost center.
    My question, how can I have these planned hours at Cost Center level be copied to every employee within the Cost Center? When creating the hours for cost center, it creates an entry in the Real-Time cube with "not assigned" employee.
    example:
    Cost Center 9999 Fiscal year/period 001/2007 - Admin sets Planned Goal to 15 hours for the entire cost center.
    This creates an entry in the plan cube for 15 plan hours assigned to "not assigned" employee.
    Then Goal Maintainer comes in viewing data through MultiProvider that contains employees actual hours. If this person is allowed to alter employee 11111 and 11112 in cost center 9999, I want both of these employees to show the assigned 15 hours for 001/2007.
    What function would I use for this, and how do I set it up? I've tried many alternatives, but keep getting different errors.

    Hi Gregor,
    You're answer was a LOT of help, but I'm still having a few issues.
    I ended up not using the characteristic relationship because the MD Attribute Cost Center is not always going to be the same as the cost center they are billing. I created a filter as I would in the query to filter Fiscal Year, FY Variant, Cost Center/Controlling area, as well as the doc/proj types to make sure we are only copying to employees with Client Chargeable hours.
    My copy function is working Great if I am to copy from employee # to a single personnel number within this cost center.
    I am unable to use * as the employee 'to' value (states * is an invalid character). I attempted to keep the 'to' value blank, as well as use the 'to' value "not" # (using less than/greater than character for not =, not allowing me to input this character in the forum) but this would fail stating invalid combination.
    Any insight?
    Edited by: Cote Adams on Oct 1, 2008 8:31 PM
    Edited by: Cote Adams on Oct 1, 2008 8:32 PM
    Edited by: Cote Adams on Oct 1, 2008 8:32 PM

  • Unable to create Aggregation level on Multiprovider

    Hello Experts,
    I am getting the following error when activating a newly created aggregation level on a certain Multiprovider.
    Error : Aggregation level B2MP01L02: InfoProvider 0COMP_CODE cannot be used for definition.
    0comp_code is a characteristic that I have included in a dimension of the Multiprovider. In the same dimension, i have another characteristic opcomp_code whose reference characteristic is also 0comp_code.
    Could this be the source of the error? There are already many queries built on the Multiprovider, I am reluctant in deleting opcomp_code and check the impact while activating the Agg level.
    Has anyone encountered this issue?
    Any help will be greatly appreciated.
    Thanks,
    Nitish.

    Hi Nitisch,
    it seems that you get message RSPLS192, cf. long text of the message.
    Not all multiproviders can be used as a basis for an aggregation level. The multiprovider has to contain at least one real-time InfoCube and not aggregation levels (aggregation levels cannot be nested).
    Regards,
    Gregor

  • Aggregation Level on Multiprovider

    Hi All,
    I have a planning function on aggregation level built on multiprovider.
    When I try to Execute the planning function,the report is throwing an error as below-
    *InfoProvider YF2_OTIFA is being used in manual planning or in a planning function. YF2_OTIFA is a MultiProvider or an aggregation level based on a MultiProvider. You are trying to create a data record for InfoProvider YF2MM_C1 but this InfoProvider is not contained in the MultiProvider.
    System Response
    The data record is invalid.
    Procedure
    Correct the entries in manual planning or check the parameterization of the planning function.*
    Any Inputs?
    regards,
    Rajendra

    Hi Einstein,
    Thanks for your valuable answer.
    And sorry for delayed responce.
    Yes you are right.I am using Web as front end and using data binding with query results.
    Can you pls elaborate what you mean by use Infoprovider as a condition in the planning function
    regards,
    Rajendra
    Edited by: Rajendra.Vmath on Jun 1, 2009 8:07 AM

  • MultiProvider with two real-time InfoCubes?

    Hi,
    I created a multiprovider with two real-time Infocubes.  I need to create a formula in FOX editor where I have to update only one InfoCube. Is it possible? If so, I am looking for syntax with InfoCube name in the formula. The KeyFigures have the same names in both InfoCubes.
    Any help would be appreciated.
    Thank you,
    Vidya

    Hi Pratyush,
    I am using IP. I created Aggregation Level, Filter, etc. It created a characteristic "0INFOPROV" and I used that cha. to read data and to write the data. It did not work.
    Here is the problem.
    - We have one basic cube (history data: HCUBE) and two transactional cubes (actual data: ACUBE and plan data: PCUBE)
    - Created a multiprovider (MULTI) for HCUBE, ACUBE, PCUBE
    - Also created Agg level and filter
    - Note: Three cubes have the same Key Figure (0Amount)
    - Created a planning function and tried something like {KF, PCUBE} = {KF, MULTI} (as suggested by Andrey)
    - Task is to read data from HCUBE and ACUBE and only write to PCUBE.
    -  I am able to read data but unable to write data.
    Any ideas?
    Thank you,
    Vidya

  • Error : Reading from Aggregation Level not permitted

    Hello Gurus,
          Could somebody please give some help or advice regarding this?
    I have a multiprovider on a regular cube and an aggregation level, for some reason the multicube gives me the following error message when I try to display data using listcube.
    Reading from Aggregation Level is not permitted
    Message no. RSPLS801
    Also the  Query on the multicube does not display data for any of the KF's in the Agg Level but when I create a query on the Agg level itself it is fine.
    Any suggestions?
    Thanks.
    Swaroop.
    Edited by: Swaroop Chandra on Dec 10, 2009 7:29 PM

    Hi,
    transaction LISTCUBE does not support all InfoProviders, e.g. aggregation level are not supported. LISTCUBE is a 'low level' to read data from the BW persistence layer, e.g. InfoCubes. Since aggregation level always read transaction data via the so called planning buffer and the planning buffer technically is a special OLAP query LISTCUBE does not support aggregation level.
    Regards,
    Gregor

  • Obtain a value of the  char ( In a FOX formula) when CHAR is Modifiable

    Hi ,
      We are doing Integrated planning in NW04S BI.
      Assume we have a Agg level field1, field2, field3, field4 and Amount field.
    we defined a filter with Field1 and Field2.
    We have defined Field3 and Field4 as changeable in the Planning function ( FOX)
    In the planning function, we can use OBJ() to obtain values for Fiield1 and Field2 BUT not Field3 and Field4.
    We have processing logic where we need to know the field value of Field4 and Field5 for the data object.
    Is there a way to obtain Charteristic value, when the chartestics are actually defined as' To be changed' in the FOX planning function?
    Appreciate your help.
    BPSIP

    Shyam,
    While your answer is helpful, I would request you to provide a little detail of the exact syntax. For example, I have provided the logic below. Please let me know if I get the correct syntax of the FOREACH .
    Thanks
    assume field1, field2, field3, field4 all are info object in BI and are part of the Aggregation level.
    field3 and field4 are configured as 'To be changed' in the planning function.
    Here is the FOX CODE
    data   v_field1 type field1.
    data   v_field2 type field2.
    data   v_field3 type field3.
    data   v_field4 type field4.
    v_field1 = obj().
    v_field2 = obj().
    foreach v_field3.
    if v_field3 is initial.
    I like to do some complex processing here. for some
    reason, looks like it's not working, PLEASE HELP WITH *THE CORRECT SYNTAX for reading and comparing the value *of v_field1 for this data block.
    endif.
    endfor.
    end of  FOX CODE

  • How to realize special scenario with FOX formula - FOREACH, variables

    Hello,
    we want to use the integrated planning for the following thing within the portal:
    A salesman should add manual values (planned turnover) for his top 10 customers. The rest of his yearly budget should be distributed automatically and equally to the rest of his customers.
    I thought a lot about it and arrived at the conclusion that:
    - we have somehow to put the salesman number into a variable maybe also the year for which the planning should be done -- Which possibilities are given to do this?
    - We need an additional flag that tells if this customer has to be planned / was planned manually.
    After the manual planning a planning function (FOX formula) has to be executed in order to
    1. get the budget that was already planned manually
        use of FOREACH in combination with an IF clause
        -- Which kind of FOREACH do I have to use?
    2. calculated total budget - manual planned budget = budget that has to be distributed
        after FOREACH
    3. count on how many customers the distribution has to be done and calculate the
        turnover per customer (rest budget / counted customers)
        use of another FOREACH loop which counts every value that hasn't got the flag set
    4. distribute the remaining budget on the customers that weren't planned manually
        -- Can it be done with something like turnover=value that should be assigned ?
    Maybe it's simple to realize this scenario but I'm a absolute "newbie" on that theme.
    Thanks
    Bettina

    Hi,
    I have been following this thread for quite long, here's my take on this
    1. Please create all the master data like sales man, customers in BI. for the key customers  add an attribute to key customer which can be a single character field.
    2. Add Sales man as an attribute to customer master and maintain values for each customer.
    3. Create an exit variable for customer number, this should read value from the sales man variable and populate all the key customers.
    4. Create an agg level with the above 2 and the required time characteristic. There will be 3 variables on the input ready query a. sales man number b. key customer exit variable c. some time period variable.
    5. Create a planning function of type generate combination for the agg level created in the above step. Add this function to the work book or the web template.
    6. Now salesman will be able to go in and create his budget for the key customers.
    Annual budget entry
    1. Create an agg level without customer, add salesman and time characteristics.
    2. create a query which will allow to enter data (yearly budget) for the salesman.
    Allocation to non key customers
    1. Create an agg level that should create the missing combinations sales man and non key customers. If designed properly the first agg level can also be used for this function.
    2. Create a fox function which with foreach loop for customer and sales man if the amount is 0 add 1 to counter, also read the value wtih customer as blank (yearly budget), lastly if the amount is not blank sum up the amount. This will help in getting the balance amount.
    3. get balance figure as total - allocated. One more foreach loop same as above if the amount is blank then amount = balance / counter.
    Tried to answer
    thanks

  • Copy On FOX basic to transactional

    hello,
    How to use FOX for copy.
    i have 1 multiprovider(Actual data, Basic Cube)-> MAREA with characteristic: A1,A2,A3,A4,A5,A6, key figure 0Amount.
    1 transactional cube -> BAREA, characteristic A1,A2,B1,B2,B3 Key figure: 0Amount, OQuantity, Zamount.
    i want to copy data from MAREA to BAREA which B2 = 'PI' + A4.
    thanks
    Riny

    BAREA contains characteristic planItem,subplanitem,fungsi,version,FY,Period.
    Keyfigure : amount,quantity,zaount.
    MAREA (Multiprovider, from 3 cube) contains : planitem,costelement,costcenter,controllingarea,wbs,order,fungsi,version,FY,Period.
    Keyfigure : amount,quantity.
    PI at my previous email means Planitem.
    at planning level, i select characteristic planItem,subplanitem,fungsi,version,FY,Period,order.
    i have tried FOX
    to be change : subplanitem,order,planarea.
    code :
    {SPI,#,BAREA} = {#,ORD,MAREA}
    184 data records were read, 0 of them were changed, 0 generated
    but if in selected characteristics at planning level, i just select characteristics that same with BAREA. it's work.data from MAREA can be copy to BAREA.
    i need to restrict characteristic order that data contain 'ORXXXX' and have to exclude Cost center exlude '1010101'.
    may someone help me.. how to solve it?
    Riny
    thank you

Maybe you are looking for

  • CRM 5.0 - IC WebClient - Subject Profile

    Hi Gurus (I've posted this on CRM - Web Application but not having any joy) Having major issues with this so could someone please guide me. We have 3 Transactions 1. Service Ticket (Service Process) Business Transaction Category Service Process - Wit

  • Window Workflow foundation instance clear after redeployment in window azure

    Iv developed workflow with .netframework 4.5 , the worflow works properly on my windows 7 machine but when i published it on windows azure it worked fine but when i published new version  it gets this error The execution of an InstancePersistenceComm

  • Makepkg and incorrect file extension of the source archive

    Hi, I want to create a PKGBUILD for a program distributed as a .tar.gz source archive, except that it's really a .tar archive. Thus, makepkg fails because it uses the wrong tar option. Now I'm wondering what the best way is to deal with this situatio

  • Lost ODBC Connection from development environment

    Using LV 7.1 and an Active-X based ODBC Connection scheme to a MySQL database which has worked flawlessly up until now.  I've just written an application which accesses the database to generate a 'recipe' for our operators to follow.  This is poked i

  • Page Containing Errors?

    I am trying to sign into my skype account and when I click the msn account it acts like its going to login, but instead it is saying this page contains errors. I have the newest version; however I am running windows Vista on the computer; I NEED this