Hi,
Issue
Default currency has been changed to ZAR (South African Rands) in Locale settings. In Opportunities Edit view & Detail view; currency fields are showing as -99 instead of ZAR .
Instance:
OS: Unknown
Web Server: Apache Tomcat
PHP Version: Unknown
DB: Unknown
SuiteCRM Version: 8.9.2
Reason for not knowing much about the instance is my superior has that info on lock down. I only have access to the frontend.
Installation:
Self-hosted On-prem
Relatively new. Running for a few months
Admin Rights: Only on the frontend
SSH Access: No
Logs
I do not have access to logs either unfortunately.
Verify the ZAR currency record
Go to Admin ā Currencies .
Ensure the South African Rand exists
Check the Locale settings
Under Admin ā Locale , confirm:
Default Currency = ZAR
Currency symbol is not blank.
Run Repair tools
If someone with backend access can do it:
Browser cache
Since SuiteCRM 8 is a Symfony/Angular application, clear the browser cache or test in a private browsing window.
Possible SuiteCRM 8.9.2 bug
There have been several currency and locale fixes in later 8.x releases. If this only started after changing the default currency, it may be an issue already fixed in a newer release. (Issues Ā· SuiteCRM/SuiteCRM-Core Ā· GitHub )
SuiteCRM Currency: Managing Currencies and Exchange Rates @BastianHammer
Go to Admin > Locale .
Look at the very top section for System Currency settings.
Manually rephrase the core standard currency Display Label field text directly to ZAR or R .
Set the ISO 4217 code to ZAR.
Click Save .
Hi @rsp ,
Thank you for your reply.
I have done all of the above. However, the issue still persists. It still shows -99 even in a private window on a different browser.
Is there anything else I may be missing?
Check out the below issue on the SuiteCRM GitHub pages.
opened 03:10PM - 04 Nov 25 UTC
Type: Bug
Priority:Important
Status: Fix Proposed
Severity: Moderate
### Issue
Listview displays non-usd currency columns in user's default currency⦠. However, this is not desirable in most circumstances.
For instance, the record is USD:
<img width="402" height="419" alt="Image" src="https://github.com/user-attachments/assets/d50891d5-ce9a-4f81-bfe2-518ec67f6802" />
graphql returns in original currency,
"records": [
{
"id": "0b7c54b9-97eb-4c0c-bac7-d31933abe585",
"module": "PR_Property",
"type": "PR_Property",
"attributes": {
"sales_price": "2350.000000",
"currency_id": "-99",
However, displayed in user's currency:
<img width="1351" height="304" alt="Image" src="https://github.com/user-attachments/assets/8c58b070-adbf-4135-b75f-130346b6e83b" />
### Possible Fix
modifications to core/app/core/src/lib/services/currency/currency.service.ts getFieldCurrencyValue and getCurrencyId methods. I'll create a pull request.
### Steps to Reproduce the Issue
```bash
1.Change user default currency non-USD (-99)
2.Create an record in USD (-99),
3.Field displayed in listview should be non usd. For instance total_cost, not total_cost_usd.
...
```
### Context
_No response_
### Version
8.9.0
### What browser are you currently using?
Chrome
### Browser Version
_No response_
### Environment Information
PHP 8.1.2
### Operating System and Version
ubuntu, kernel: 6.17.6-1-default
hotfix ā advocotek:hotfix
opened 03:15PM - 04 Nov 25 UTC
Fix for issue https://github.com/SuiteCRM/SuiteCRM-Core/issues/792
I ran into this problem myself recently. From my notes I had to fix the metadata on the field in the detailview like this:
ācurrency_idā => [
ānameā => ācurrency_idā,
ātypeā => āidā,
āinitDefaultProcessā => ācurrency-defaultā,
āfunctionā => āgetCurrencyDropDownā,
āgroupā => ācurrency_idā,
āreportableā => false,
],
in:
public/legacy/custom/modules/Opportunities/metadata/detailviewdefs.php
Also ensure you have currency set correctly in admin
1 Like
Is it a known issue in the SuiteCRM Version: 8.9.2 ?