2023.3.7
Feature Flags
We developed a functionality that will allow you to enable or disable new features in Fynapse.
When a new feature is released it is by default disabled in the vNext and vCurrent environments. This allows you to decide when you want to start testing how the feature will affect your existing configuration and business logic.
If, after consulting with the release documentation to assess the impact on your configuration, you want to start testing the new feature, you can enable it using the feature flag.
For more details, refer to Feature Flags.
You can see how a feature flag is switched on in the video preview for Unposted Journals.
Unposted Journals
Released under Feature Flag
We developed a functionality that will allow Fynapse to differentiate between posted Journals and unposted Journals.
Unposted Journals are Journals with a future posting date, e.g. Journals for deferred payments.
The major change is the introduction of a new Unposted Journals Entity to store the unposted Journals. Previously, all generated Journals, both posted and unposted, are stored in the Journals Entity. After this enhancement, the unposted Journals will be stored in a separate Entity and will only be moved to the Journals Entity after their posting date arrives and they are posted.
This means that after the enhancement is enabled new future dated Journals will not appear in extracts from the Journals Entity. You will have to create a separate extract which will contain only unposted Journals.
The diagram below illustrates the current flow for Journals and how it will change after this enhancement is enabled:
This enhancement changes the backend logic for how Journals are processed. This means that if you switch on the feature flag to enable it, newly generated unposted Journals will be stored in a different Entity. If you then switch the flag off, the unposted Journals will not appear in queries of extracts until their Posting Date is reached and they are processed into the posted Journals Entity.
When you switch on the feature flag, the backend logic for processing Journals will change. However, there will be no migration for already generated Journals. This means that if you already had processed Journals with a future date, those Journals will still be visible in the posted Journals Entity. So some future dated Journals will exist in the Journal Entity and the newly generated future posted Journals will exist in the Unposted Journals Entity. This will clear up naturally, as the Posted Date for the previously generated future dated Journals will be reached.
Error Management
We developed a new Errors screen that will show you all processing errors thrown in Fynapse presented in a user-friendly grid. The also includes a flexible search option that allows you to quickly filter errors using selected attributes. Once you find data that you are interested in, you can download it to a CSV file with only one click.
This is a part of an ongoing implementation of a new Error Management functionality.
For more details, refer to Errors.
Multiple Currencies
Calculating Functional Amount from Transaction Amount
As part of the on-going implementation of support for multiple currencies, we developed the ability to calculate the Functional Amount based on the input Transaction Amount. The Functional Currency will be calculated as follows:
Transaction Amount*exchange rate for a specified date
The exchange rates can be stored in the newly implemented Exchange Rate Entity, which contains the following properties:
- Source Currency which corresponds to the currency of the Transaction Amount
- Target Currency which corresponds to the currency of the Functional Amount
- Date which corresponds to the Core Date
- Rate which is the exchange rate for a given Source Currency to Target Currency on a given Date
Based on these information Fynapse will verify 3 properties from the Business Event against the Exchange Rate Entity:
- Core Date to Date
- Source Currency to Transaction Amount
- Target Currency to Functional Amount
Once these three are identified, Fynapse will know which exchange rate to apply to a given Transaction Amount on a given Core Date and the Functional Amount will be calculated and populated in the Journal.
For more details about the calculation logic, refer to Multiple Currencies.
Aggregating Balances in Functional Currency
As part of the on-going implementation of support for multiple currencies, we developed the ability to aggregate balances in Functional Currency.
When you enable support for multiple currencies, then on the Balances you will be able to select which currency you want to aggregate the balances by: Transaction Currencies, Functional Currencies, or both.
You can also select Transaction Currency and Functional Currency as filtering criteria when creating a query.
For more details about balances, refer to Balances.
Deduplication
We implemented an enhancement in the deduplication functionality. Previously, when an Entity with transaction data, such as Business Events or Journals, was deleted and created again, and records previously processed were uploaded for processing again, Fynapse would consider these records duplicates and remove them.
Now, you can reupload the same data to be processed again after an Entity was deleted and then created again.
Due to this change the deduplication functionality will not work for several hours after the update to the 2023.3.7 version because the backend logic will change. Please be careful not to ingest the same data twice during this window.