Skip to Content
avatar image
Former Member

BPC 10.1 NW script logic *destination_app

Hi all,

I have this script

*XDIM_MEMBERSET VERSION = %VERSION_SET%
*XDIM_MEMBERSET ZEIT_M = %ZEIT_M_SET%
*XDIM_MEMBERSET BEWEGUNGSART = F_CLO
*XDIM_MEMBERSET AUDITID = INPUT
*XDIM_MEMBERSET BUSINESS_PARTNER = BP.NONE
*XDIM_MEMBERSET IC_PROFITCENTER = IC.NONE
*XDIM_MEMBERSET PROFITCENTER = PC.NONE
*XDIM_MEMBERSET SCOPE = S_NONE
*XDIM_MEMBERSET WAEHRUNG = LC
*DESTINATION_APP = Rates
*SKIP_DIM = AUDITID,BUSINESS_PARTNER,IC_PROFITCENTER,LEGAL_STRUKTUR,PROFITCENTER,SCOPE,WAEHRUNG,BEWEGUNGSART
*ADD_DIM INPUTCURRENCY = EUR,R_ENTITY=Global
*RENAME_DIM POSITIONEN = R_ACCOUNT
*WHEN POSITIONEN
*IS 3117040000
*REC(EXPRESSION=1,POSITIONEN=AVG)
*REC(EXPRESSION=1,POSITIONEN=CLO)
*ENDWHEN

Which is supposed to write data from one model to another. However, when I validate the script I get an error message saying "invalid Dimension BEWEGUNGSART in model rates.

I do agree with the error, the Dimension BEWEGUNGSART does not exist in the rates model, hence it is listed in the *SKIP_DIM section. The same is true for the other dimensions listed in that section. Yet they do not produce an error.

Would anyone have any idea what the cause for this error could be and how I could avoid it?

Thanks,
Arnold

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

8 Answers

  • Best Answer
    Nov 29, 2016 at 03:33 PM

    Something like:

    *SELECT(%T%,ID,ZEIT_M,[TIMEID]>=20170100 AND [CALC]=N) //all future periods starting from 2017.01
    *XDIM_MEMBERSET VERSION = XXX //or all versions
    *XDIM_MEMBERSET R_ENTITY=Global
    *XDIM_MEMBERSET INPUTCURRENCY = EUR
    *XDIM_MEMBERSET R_ACCOUNT=AVG,CLO
    *XDIM_MEMBERSET ZEIT_M = %T%
    
    *WHEN_REF_DATA = MASTER_DATA //Loop master data
    *WHEN R_ACCOUNT
    *IS *
    *REC(EXPRESSION=1)
    *ENDWHEN

    Result in UJKT:

    LGX:
    *XDIM_MEMBERSET R_ENTITY=Global
    *XDIM_MEMBERSET INPUTCURRENCY = EUR
    *XDIM_MEMBERSET R_ACCOUNT=AVG,CLO
    *XDIM_MEMBERSET TIME = 2017.01,2017.02,2017.03,2017.04,2017.05,2017.06,2017.07,2017.08,2017.09,2017.10,2017.11,2017.12
    *WHEN_REF_DATA = MASTER_DATA
    *WHEN R_ACCOUNT
    *IS *
    *REC(EXPRESSION=1)
    *ENDWHEN
    ----------------------------------------------------------------------
    LOG:
    LOG BEGIN TIME:2016-11-29 18:39:04
    FILE:\ROOT\WEBFOLDERS\ENV1 \ADMINAPP\Rates\TEST.LGF
    USER:V.KALININ
    APPSET:ENV1
    APPLICATION:Rates
    [INFO] GET_DIM_LIST(): I_APPL_ID="Rates", #dimensions=6 
    CATEGORY,INPUTCURRENCY,MEASURES,R_ACCOUNT,R_ENTITY,TIME
    
    #dim_memberset=4 
    R_ENTITY:Global,1 in total.
    INPUTCURRENCY:EUR,1 in total.
    R_ACCOUNT:AVG,CLO,2 in total.
    TIME:2017.01,2017.02,2017.03,2017.04,2017.05,...12 in total.
    REC :1
    CALCULATION BEGIN:
    QUERY PROCESSING DATA
    QUERY TIME : 1.00 ms. 0  RECORDS QUERIED OUT.
    QUERY REFERENCE DATA
    QUERY TIME : 0.00 ms. 0  RECORDS QUERIED OUT.
    CALCULATION TIME IN TOTAL :0.00 ms.
    144  RECORDS ARE GENERATED.
    CALCULATION END.
    ENDWHEN ACCUMULATION: 144  RECORDS ARE GENERATED.
    DATA TO WRITE BACK:
    CATEGORY    INPUTCURRENCY    R_ACCOUNT    R_ENTITY    TIME    SIGNEDDATA
    Actual    EUR    CLO    Global    2017.04    1.00 
    Actual_BudgetRate    EUR    CLO    Global    2017.04    1.00 
    Actual_LYOwnership    EUR    CLO    Global    2017.04    1.00 
    Budget    EUR    CLO    Global    2017.04    1.00 
    Forecast    EUR    CLO    Global    2017.04    1.00 
    Plan    EUR    CLO    Global    2017.04    1.00 
    Actual    EUR    AVG    Global    2017.05    1.00 
    Actual_BudgetRate    EUR    AVG    Global    2017.05    1.00 
    Actual_LYOwnership    EUR    AVG    Global    2017.05    1.00 
    Budget    EUR    AVG    Global    2017.05    1.00 
    Forecast    EUR    AVG    Global    2017.05    1.00 
    Plan    EUR    AVG    Global    2017.05    1.00 
    Actual    EUR    CLO    Global    2017.05    1.00 
    Actual_BudgetRate    EUR    CLO    Global    2017.05    1.00 
    Actual_LYOwnership    EUR    CLO    Global    2017.05    1.00 
    Budget    EUR    CLO    Global    2017.05    1.00 
    Forecast    EUR    CLO    Global    2017.05    1.00 
    Plan    EUR    CLO    Global    2017.05    1.00 
    Actual    EUR    AVG    Global    2017.06    1.00 
    Actual_BudgetRate    EUR    AVG    Global    2017.06    1.00 
    Actual_LYOwnership    EUR    AVG    Global    2017.06    1.00 
    Budget    EUR    AVG    Global    2017.06    1.00 
    Forecast    EUR    AVG    Global    2017.06    1.00 
    Plan    EUR    AVG    Global    2017.06    1.00 
    Actual    EUR    CLO    Global    2017.06    1.00 
    Actual_BudgetRate    EUR    CLO    Global    2017.06    1.00 
    Actual_LYOwnership    EUR    CLO    Global    2017.06    1.00 
    Add comment
    10|10000 characters needed characters exceeded

  • Nov 29, 2016 at 02:17 PM

    I see no issues with your code.

    Please show screenshots of model administration - current and Rates

    Please show screenshot of UJKT running the script

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Nov 29, 2016 at 02:50 PM

    This is the UJKT log

    LGX:*XDIM_MEMBERSET VERSION = TEST-IC*XDIM_MEMBERSET ZEIT_M = 2015.12*XDIM_MEMBERSET BEWEGUNGSART = F_CLO*XDIM_MEMBERSET AUDITID = INPUT*XDIM_MEMBERSET BUSINESS_PARTNER = BP.NONE*XDIM_MEMBERSET IC_PROFITCENTER = IC.NONE*XDIM_MEMBERSET PROFITCENTER = PC.NONE*XDIM_MEMBERSET SCOPE = S_NONE*XDIM_MEMBERSET WAEHRUNG = LC*DESTINATION_APP = Rates*SKIP_DIM = AUDITID,BUSINESS_PARTNER,IC_PROFITCENTER,LEGAL_STRUKTUR,PROFITCENTER,SCOPE,WAEHRUNG,BEWEGUNGSART*ADD_DIM INPUTCURRENCY = EUR,R_ENTITY=Global*RENAME_DIM POSITIONEN = R_ACCOUNT*WHEN POSITIONEN*IS 3117040000*REC(EXPRESSION=1,POSITIONEN=AVG)*REC(EXPRESSION=1,POSITIONEN=CLO)*ENDWHEN
    
    -------------------------------------------------------------------------------------------------------------------------------------
    
    LOG:FILE:\ROOT\WEBFOLDERS\XX\ADMINAPP\Konsolidierung\TEST.LGFUSER:XXXAPPSET:YYYAPPLICATION:Konsolidierung[INFO] GET_DIM_LIST(): I_APPL_ID="Konsolidierung", #dimensions=12 AUDITID,BEWEGUNGSART,BUSINESS_PARTNER,IC_PROFITCENTER,LEGAL_STRUKTUR,MEASURES,POSITIONEN,PROFITCENTER,SCOPE,VERSION,WAEHRUNG,ZEIT_M#dim_memberset=9 VERSION:TEST-IC,1 in total.ZEIT_M:2015.12,1 in total.BEWEGUNGSART:F_CLO,1 in total.AUDITID:INPUT,1 in total.BUSINESS_PARTNER:BP.NONE,1 in total.IC_PROFITCENTER:IC.NONE,1 in total.PROFITCENTER:PC.NONE,1 in total.SCOPE:S_NONE,1 in total.WAEHRUNG:LC,1 in total.REC :1REC :1CALCULATION BEGIN:QUERY PROCESSING DATAQUERY TIME : 0.00 ms. 4  RECORDS QUERIED OUT.QUERY REFERENCE DATACALCULATION TIME IN TOTAL :0.00 ms.8  RECORDS ARE GENERATED.CALCULATION END.SCRIPT RUNNING TIME IN TOTAL:0.00 s.

    Screenshots are attached.

    Add comment
    10|10000 characters needed characters exceeded

  • Nov 29, 2016 at 02:58 PM

    Try to paste script text to empty form... may be some invisible symbol is inserted

    Add comment
    10|10000 characters needed characters exceeded

  • Nov 29, 2016 at 03:25 PM

    Sorry, but the idea in general is strange...

    You want to perform writes after each change in consolidation model?

    It's better to create a simple script using *WHEN_REF_DATA = MASTER_DATA

    for all periods in Rates cube.

    Then just run it to fill 1 into Eur

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Nov 29, 2016 at 03:19 PM

    Let me give you the idea behind the script. I want the system to automatically save a rate of 1 for the EUR average and closing rate when data is entered onto a specific account in the consolidation model. Eventually there should be a scope of just one LEGAL_STRUKTUR element (one entity) but I am still testing, so I left this out.

    The idea would be to run this as part of the default just like the currency conversion. When I add the above code to the default script I get the above error. When I create a new script the above code validates just fine. But when I call that new script from the default I get the same error again when validating the default.

    As we do not currently have any non EUR entities we do not currently need the conversion. But we know this will change in 2018 and I want to already have everything in place by then without having to manually enter the rates. Especially since the client regularly creates new Versions.

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Nov 29, 2016 at 03:38 PM

    I would need to run that in the rates model, correct? And re-run it when we create new versions and new members in the time dimension, correct?

    Add comment
    10|10000 characters needed characters exceeded

    • Yes, in rates model!

      And if you need the same 1 for all version members - just don't scope version.

      You don't need to specify added members, the script will fill everything automatically.

      The script will run 0 seconds :)

  • avatar image
    Former Member
    Nov 29, 2016 at 03:49 PM

    Thank you!

    Add comment
    10|10000 characters needed characters exceeded