'Old value' not updated properly in the [sys_audit] table for a Currency field when its value is updated after a change of the exchange rate. The 'Old value' is the base amount and should be the previous entered amount.DescriptionThe 'Old value' is not updated properly in the [sys_audit] table for a Currency field when its value is updated after a change of the exchange rate. The 'Old value' is the base amount and should be the previous entered amount.Steps to Reproduce Pre-requisites:1. Make sure the following System Properties are defined as mentioned:glide.i18n.single_currency = falseglide.system.locale = empty or en.US2. Make sure one of the 'Project Management' plugin is active.3. Have a user with Country = France Replication steps:1. Impersonate the user with Country = France2. Create a new record in the [pm_project] table.3. Save the Project.4. Switch to the Advanced View to display the Currency fields.5. Enter an amount in € in one of the currency field (say € 10).6. Save the Project.7. Check the [fx_currency_instance] table for the Project and observe the following:Currency/Amount = EUR 10Base Currency/Base Amount = USD 11.582 (rate was 1.1582 > see step 11)8. Check the [sys_audit] table for the Project and observe that you have a record for the currency field which has been recorded:Old value = 0.0000New value = 109. Go to: System Localization > Translations > Exchange Rates10. Select the most current rate for currency USD. Here the rate was 1.158211. Change the rate (for example to 1.17) and save. This is to simulate that the rate has changed since the Project for created.12. Go back to the Project record created at step 2 (or refresh the page), change the amount from € 10 to € 20, and save.13. Check the [fx_currency_instance] table for the Project and observe the following which is correct:Currency/Amount = EUR 20Base Currency/Base Amount = USD 23.414. Check the [sys_audit] table for the Project and observe that a new record for the currency field has been recorded:Old value = 11.5820New value = 20 > Expected behavior: The value on the 'Old value' column should match the value in the 'New column' of the previous record (10). > Actual behavior: The value on the 'Old value' column does not match the value in the 'New column' of the previous record. It's the base amount of the value in the 'New column' of the previous record.WorkaroundThis is expected behavior and by design in all currently supported releases. This functionality is intended as there are mutliple use cases which can affect the 'Old value' in the audit history. Specifically if a user changes the currency code, if users with different session locales update the currency value, or if a user switches locales. This is why we have a pre-existing way to set up a consistent audit of currencies via the System Property named 'glide.sys.audit_currency_value'. This System Property can be used as an alternative for auditing. It will replace the previous value in the audit record with the currency code and value as it was entered on the form. This will allow more accurate tracking of 'Old' and 'New' values when users are in a non default session locale. Documentation about this System Property can be found here.Related Problem: PRB1327082