Investigations showed that there were no currency and thus also no base currency enabled. While it is not possible to use a fantasy-abbreviation for a region during the use of the install wizard, in this case a new region code should have been used that was changed between versions. The region used was Turkey for this case. Old code before: TRL. New code now: TRY
This left the table KCST_CURRENCIES without any currency enabled, no base currency was shown either.
Enable one language as a first step – take the Euro as an example:
1) Check table KCST_CURRENCIES and note the ID of the currency that is needed and the one that needs to be enabled. In our example we went to enable the EUR. EUR : CURRENCY_ID = 25
2) Run the following query to enable the Euro as Currency: UPDATE KCST_CURRENCIES SET ENABLED_FLAG = 'Y' WHERE CURRENCY_CODE = ‘EUR’;
3) Run the following query to ‘activate’ the Euro as Base Currency: UPDATE KCST_CURRENCIES SET BASE_CURRENCY_FLAG = 'Y' WHERE CURRENCY_CODE = ‘EUR’;
4) If any other currencies need to be enabled, set to Y for ENABLED_FLAG appropriately as in step 2)
However, we then also need to set the base currency in at LEAST this other place:
5) UPDATE KNTA_SERVER_PARAMETERS set value = 25 where description = ‘System Base Currency ID’;
Last parameter and value of course also dependent on the currency chosen as base in step 3. Whichever base currency is checked therefore, choose the value for that in the table KCST_CURRENCIES.
BE AWARE that after you have set this currency and you have financial data in the database, you will NEVER AGAIN be able to change this value otherwise you’ll corrupt the financial data for the whole application. EVERYTHING is stored in base currency and if you change that after having worked with the instance, everything will corrupt in respect to that financial data.
Cheers.. Utkarsh Mishra
-- Remember to give Kudos to answers! (click the KUDOS star)