Skip to Content
0
May 13, 2013 at 01:22 PM

BPC 10.0 Problem with Currency Conversion

276 Views

Hi experts,

i am experiencing some issues with currency conversion after upgrading to BPC 10.0.

In BPC 7.5 we used the following Script Logic:

*LOOKUP RATE

*DIM R_ACCT=ITEM.RATETYPE
*DIM R_ENTITY="GLOBAL"
*DIM KURS:INPUTCURRENCY=COMPANY.CURRENCY
*DIM MEASURES="PERIODIC"


*ENDLOOKUP

*WHEN ITEM
*IS *
*REC(EXPRESSION=%VALUE%*LOOKUP(KURS),CURRENCY=EUR)


*ENDWHEN

When starting this ScriptLogic via Run Package in BPC 10.0 all values will be appended in the target currency.

For an example to understand this issue better:

  1. Data entry in LC (EUR) = 1.000
  2. Target Currency is EUR with exchange rate of 1,0 (since LC = EUR).
  3. when starting currency conversion the first time, the value is calculated correctly and i find 1.000 with LC and 1.000 with EUR
  4. Starting the package again converts 1.000 in LC again and appends it to the value in EUR. -> 1.000 LC = 2.000 EUR.

I tried using target mode when modifying the package. The original package script is:

PROMPT(SELECTINPUT,,,,"%ENTITY_DIM%,%CATEGORY_DIM%,%CURRENCY_DIM%,%TIME_DIM%")

TASK(/CPMB/FX_RESTATMENT_LOGIC,SUSER,%USER%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,SAPPSET,%APPSET%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,SAPP,%APP%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,SELECTION,%SELECTION%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,LOGICFILENAME,FXTRANS.LGF)

and i added targetmode:

PROMPT(SELECTINPUT,,,,"%ENTITY_DIM%,%CATEGORY_DIM%,%CURRENCY_DIM%,%TIME_DIM%")

PROMPT(RADIOBUTTON,%TARGETMODE%,"Handling of records in target",0,{"Append","Overwrite records with match key","Replace data in same data region of Entity, Category, Time and Audit ID"},{"0","1","2"})

TASK(/CPMB/FX_RESTATMENT_LOGIC,SUSER,%USER%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,SAPPSET,%APPSET%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,SAPP,%APP%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,SELECTION,%SELECTION%)

TASK(/CPMB/FX_RESTATMENT_LOGIC,LOGICFILENAME,FXTRANS.LGF)

TASK(/CPMB/LOAD_IP,TARGETMODE,%TARGETMODE%)

This delivers the following error:

Failed to analyze instruction /CPMB/LOAD_IP,TARGETMODE,%TARGETMODE%

As another solution i tried using the original FXTRANS.lgf but in that case we get the error that no suitable category was found in our application, using the script:

*RUN_PROGRAM CURR_CONVERSION

CATEGORY = %VERSION_SET%

CURRENCY = EUR

TID_RA = %TIME_SET%

RATEENTITY = GLOBAL

*ENDRUN_PROGRAM

I hope someone can help me in this case, since currency conversion is essential and does not seem to work in the moment.

And acutally i am out of ideas.

Thx and regards,

Florian