Accounting Period Overrides For Voucher Creation
Introduction
For the VROOZI Integration, we will be importing vouchers into ERP using the existing logic for assigning accounting periods. If we can find the accounting period for the invoice date we'll assign it there, if not we will find the next available open period for that company and division. This is working well, but this is causing a scenario at Cal-Maine where CONNECT users will import vouchers into a period that is open, but is also in the process of being balanced and closed out.
To solve this, we've added a configuration in CONNECT that will allow users to define when to close accounting periods to connect. The period may still be open in ERP while it is being closed out, but CONNECT will already treat it as closed and look for the next available period.
Prerequisites
To override accounting period statuses, you will only need security permission access to the configuration in CONNECT.
Configuration
Power User → Config Features
Before we can see the configuration, we'll need to enable the "Accounting Period Overrides" feature, under the "Accounting" tab.
Settings → User Profiles
For each user that can manage these configurations, we'll need to grant them security access to the "Accounting Period Overrides" screen.
Managing Accounting Periods
Accounting → Configuration → Accounting Period Overrides
On this form, we will enter accounting periods that we would want to close.
Entering a Company will only close the period for that company, leaving the company empty will close all periods with that code, regardless of the company.
Accounting Period codes are entered and saved to match the format displayed in ERP, but they can be entered without spaces. This field is required, and can't match another company/period combination already entered.
Effective Close Date. This is the date and time that CONNECT will start treating the period as closed. Unlike ERP accounting period close, this was designed as a date so we can "set it and forget it". If we know in advance that we want the periods locked to connect starting at a certain date or time we can configure this in advance and CONNECT will start ignoring the periods once invoices come in after that date.
Here are the functions for the form:
Save - Save any changes made since the form was loaded.
Close - Close the form. This will not prompt the user to save changes before closing.
Add - Navigate the user to the new item row position to create a new configuration.
Delete - Delete the selected row.
Reload - Reload the form, undoing any changes made since it was loaded.
Override Accounting Periods in Action.
CONNECT is using the rules defined in ERP to find valid accounting periods. An exception was added to cross-reference these periods against the accounting period override configuration.
If a valid accounting period is found from ERP, but it is effectively disabled in this config for connect, it will be disregarded. We'll then look for the next available, open period for that invoice's target company. This period is also referenced against the configurations. If it is closed it will also be disregarded. If this period is disregarded the invoice will fail the import and an error message will be posted back to VROOZI, moving the invoice into a "rejected" status.
Here's an example of the setup in action:
I created some configurations including two for 2021-07. one with no company, but one with company "C2". The "C2" configuration is not effective until July, well past the period close date in ERP. Configurations with company codes matching the invoice will take priority, so I expect an invoice for this period to pass.
I import an invoice for that Company and period, and it is accepted by CONNECT and ERP.
Now, I remove the company period. This one takes effect on 5/13, and I'm creating invoices for 5/14. I also have the next period closed in here. Since both are closed we'll get an error message,
The configuration is found, and a specific error message informs me that the override fails the import. had I not closed 2021-8, it would have been picked up and the invoice approved.