Welcome to this Blog which shows you how to define more than one Accounting Task in Sage X3.
Why should you consider setting up multiple Accounting Tasks?
Well, in its simplest configuration, Accounting Tasks tries to carry out all of the following operations for all eligible transactions each time it is launched:
- Posting operation: creation of accounting entries.
- Matching operation: completion of matching operations.
- Balance update operation: task updating balances (general, dimension, etc.) distinct from the creation task of accounting entries.. This last operation depends on the UPDBALBTC - Balance update desynchronization parameter (CPT chapter, ACC group): if the parameter is set to 'No', the balance update is performed at the same time as the creation of accounting entries.
Depending on the through-put of Transactions and the frequency with which Accounting Tasks is executed, this can cause a delay in processing due to slow performance or locking conflicts with other Functions.
By setting up multiple Accounting Tasks, performance can be improved.
In order to set up multiple Accounting Tasks, set MULBATCH – Multi-instance batch task parameter (CPT chapter, ACC group) to Yes in Parameters > General Parameters > Parameter Values (ADPVAL).
Once you set up multiple Accounting Tasks, there are several alternatives to using the default configuration - in each case, there is a different method of dividing the Task into smaller chunks - in the Parameters > Financial > Accounting Interface > Accounting Tasks (GESBTC).
- Specify different Criteria for each Accounting Task
- Control the duration of an instance of ACCENTRY process by limiting the number of Transactions processed in each run
- Use different Accounting Task processes for different Operations - for example, set up three Accounting Tasks, one for Posting, one for Matching and one for Balance Update
1. Specify different Criteria for each Accounting Task
When setting up multiple ACCENTRY lines, every line except the last one *must* have criteria but the last entry *can* have a blank Criteria as a "catch-all" so no transactions are missed - this is not enforced, but you may still decide to add a line with no Criteria to provide a "catch-all".
When you click in the field, it defaults to 'CPY="XXXX"' - i.e. only Transactions with Company "XXXX" will be processed by the particular ACCENTRY process.
What's not so obvious is that the Criteria can mention any fields which are present in the tables relating to the Operations included in the ACCENTRY process - "Accounting" and "Balance Update" Operations reference the GACCTMP table while the "Matching" Operation references the MTCBATCH table.
In line 1, only selecting from GACCTMP where CAT is 1 or 3 (Journal Categories Actual or Inactive simulation) for Accounting
In line 2, selecting from GACCTMP and MTCBATCH where CPY is GB011
In line 3, selecting from GACCTMP where ORIMOD is 5 (Sales)
In line 4, selecting from GACCTMP where ORIMOD is 6 or 8 (Purchasing or Manufacturing)
Note, in line 4, you'd get an error about ORIMOD if you included Matching because ORIMOD isn't a field in the MTCBATCH table.
2. Controlling the duration of each ACCENTRY execution
Note that the options available in GESBTC have changed from V11 to V12 as the execution of Accounting Tasks is now controlled through Recurring Tasks.
Prior to V12, there were four parameters governing the execution behaviour of Accounting Tasks function - it was a case of balancing these four parameters to improve the speed/duration of each run using "No. of pieces per lot" and "Timing between 2 lots" with the frequency of (shorter) runs using "Time between 2 searches" and "Time between 2 statuses". These settings are applied to all the ACCENTRY tasks individually.
In Version 12, GESBTC now only allows you to specify the "Number of records" for each individual Task, along with flagging a Task as being Active or not - the rest of the behaviour is now controlled by the Recurring Task
3. Using different Accounting Task process for different Operations
As demonstrated in option 1 above, separate ACCENTRY processes can be set up to run the three types of Operation in any combination and with additional Criteria - if you wanted to set up three ACCENTRY processes to do the three Operations
The CAT field should always have a non-zero value, so the Criteria for all three are effectively "blank" - i.e. any Transactions will be picked up.
So, you can see there are some powerful mechanisms for reducing the scope of individual ACCENTRY processes and therefore speeding up the processing of transactions and the duration of individual ACCENTRY processes.