SaaS News Hubb
Advertisement
  • Home
  • News
  • Software Engineering
  • Software Development
  • SAAS Applications
  • Contact Us
No Result
View All Result
  • Home
  • News
  • Software Engineering
  • Software Development
  • SAAS Applications
  • Contact Us
No Result
View All Result
SaaS News Hubb
Home SAAS Applications

Changes in Acumatica Multicurrency for Developers

by admin
April 6, 2022
in SAAS Applications
0
SHARES
2
VIEWS
Share on FacebookShare on Twitter


Introduction

The business logic developer teams in Acumatica have been reworking the multicurrency implementation for some time now to make it easier to understand and customize. With this work, there are some important changes in the functionality of our multicurrency implementation that affect developers that we believe is important to share with you.

New Graph Extension

We have a new generic graph extension: MultiCurrencyGraph that stores the common multicurrency logic. From this graph extension developers should derive their specific currency graph extension to support multicurrency in their graph. The details of this process are described in this article from Acumatica help portal:

Platform API: Implementation of the Multicurrency Support on a Custom Form

However, switching to the new logic may require some changes from partner developers. The changes will affect you if there are DAC fields in your custom DACs or DAC extensions that store money in some currency. In this case you need to review your code and adjust it to these changes. Moreover, this can be especially important to customization developers that integrate their code with Acumatica modules.

Overview of Changes

To show why it is important I must first make an overview of changes in the multicurrency.

There are now two sets of currency attributes for DAC fields. Old attributes are located in the PX.Objects.CM namespace and the new set is in the PX.Objects.CM.Extensions namespace. Most currency attributes in these two sets have the same names.

For example, there are both PX.Objects.CM.PXDBBaseCuryAttribute and PX.Objects.CM.Extensions.PXDBBaseCuryAttribute.

This makes the switch to the new multicurrency implementation easier since you don’t have to learn new attribute names or remember two sets of attributes. But at the same time, it makes it easier to miss the incorrect currency attribute from the wrong namespace during the review of a DAC code. So please be careful.

When you declare or review a DAC field in a DAC/DAC extension that will store some currency dependent information (for example, money amount in some currency) you will need to declare on the DAC field property an appropriate currency attribute from one of these two sets.

It is very important to NOT mix old legacy attributes and new currency graph extensions because this will result in issues within the system.

First, you need to find out which graphs use the DAC containing the aforementioned DAC field.

The old currency attributes in the PX.Objects.CM namespace contain the multi-currency support implementation inside of them.

With the new currency attributes, the PX.Objects.CM.Extensions namespace rely on the multicurrency graph extensions which now contain multicurrency implementation support.

New Currency Attributes

We have new currency attributes which are designed to work together with the currency graph extensions. Therefore, the following rules apply:

  1. If all graphs using your DAC do not have corresponding currency graph extensions and you are not going to introduce a new currency graph extension, then you should use the old currency attributes.
  2. If all graphs using your DAC have corresponding currency graph extensions, then you should use the new currency attributes.
  3. If only some of the graphs using your DAC have corresponding currency graph extensions, you need to declare cache attached graph events for these graphs for your DAC fields. In the cache attached event declaration, you should declare a currency attribute suitable for the graph. Use rules 1 and 2 to do this.

This covers the basics of how to choose a currency attribute. You can find more details in these two articles from our help portal:

Platform API: Implementation of the Multicurrency Support on a Custom Form

Platform API: Insertion of a Multicurrency Document

The Importance of Integrating the Changes in the Currency Attributes

Now let’s return to the reason why it is important to integrate these changes.

First, the old currency attributes are now legacy and thus won’t receive a lot of support and improvements going forward. There is a possibility that they will be discarded at some point in the future when all Acumatica modules and large customizations are migrated to the new multicurrency implementation.

Second, some customizations must integrate the changes in multicurrency to work correctly on newer and future versions of Acumatica.

As I have mentioned previously, the old attributes must not be mixed with the new currency graph extensions.

Imagine a situation when there is a customization that extends the PX.Objects.APTran DAC with a custom DAC field SomeBusinessSpecificAmt that uses an old currency attribute. The APTran DAC is used on the “Bills and Adjustments” screen. In this case, the business logic of the screen is stored in the PX.Objects.AP.APInvoiceEntry graph.

Now if Acumatica developers add a currency graph extension to this graph and you publish this customization the old and new multicurrency logic will become mixed. This will lead to errors in the system.

Summary

Acumatica developers have been reworking multicurrency support in Acumatica modules for the past several years. They are gradually integrating these changes into various Acumatica modules.

The history of changes we have made over time looks something like this:

  • Acumatica 2018R2: the support was added to the Opportunity graph in CRM
  • Acumatica 2019:  the Field Services module implemented with the new multicurrency functionality
  • After Field Services, the support was added to quotes and proformas in projects
  • In Acumatica 2021R2: AP, AR, and other finance modules were reworked
  • Currently, developers are reworking the distribution modules

The customizations that extend these modules should integrate the changes we have made to multicurrency that we have outlined here today.

Please review your customization in the following cases:

  • Customizations that contain custom DACs with DAC fields storing currency related data and graph extensions to existing Acumatica graphs that use these custom DACs in their logic
  • Customizations that contain custom DAC extensions to Acumatica DACs and these DAC extensions declare DAC fields with currency related data

Should you have any questions, please post these in our Community Developer public Forum – Miscellaneous Developer Topics.

Happy Coding!





Source link

Previous Post

What Employees Should Consider Before Joining the Great Resignation

Next Post

Make it. Sell it. Ship it. Done!

Related Posts

SAAS Applications

Global Email Template – Insert Custom Entity fields?

May 22, 2022
SAAS Applications

How to auto populate a field value from entity form to HTML web resource section (Note Entity adx.annotations.html)?

May 21, 2022
SAAS Applications

Sell Premier: The Superior CRM Solution for Sales

May 20, 2022
SAAS Applications

Forum Post: Seeking an Administrator

May 20, 2022
SAAS Applications

How AI Changes the Future of Sales and Marketing

May 19, 2022
SAAS Applications

Dynamics 365 CE Edit Filter Criteria Error

May 19, 2022

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Most Popular

Software Engineering

Clubs Poker with Taylor Crane

May 22, 2022
Software Development

2022 Tech Investment Trends – Cybersecurity, Cloud & IT Infrastructure

May 22, 2022
SAAS Applications

Global Email Template – Insert Custom Entity fields?

May 22, 2022
Software Engineering

Make your open-source project public before you’re ready (Ep. 444)

May 21, 2022
Software Engineering

A Survey of Causal Inference Applications at Netflix | by Netflix Technology Blog | May, 2022

May 21, 2022
Software Engineering

CloudGraph with Tyson Kunovsky – Software Engineering Daily

May 21, 2022
Software Development

Developer Onboarding Best Practices | Pluralsight

May 21, 2022
Software Development

How to Connect WordPress to Cloud Storage Services

May 21, 2022
SAAS Applications

How to auto populate a field value from entity form to HTML web resource section (Note Entity adx.annotations.html)?

May 21, 2022

© 2022 Sass News Hubb All rights reserved.

Use of these names, logos, and brands does not imply endorsement unless specified. By using this site, you agree to the Privacy Policy

Navigate Site

  • Home
  • News
  • Software Engineering
  • Software Development
  • SAAS Applications
  • Contact Us

Newsletter Sign Up

No Result
View All Result
  • Home
  • News
  • Software Engineering
  • Software Development
  • SAAS Applications
  • Contact Us