Beneficiary TB Concepts
Introduction
A beneficiary TB is used to produce a trial balance for a beneficiary when each beneficiary is represented either by its own subaccount or by a character in the account code. For example in the following accounts, the beneficiary is represented by a subaccount:
801 |
Balance b/fwd |
801/01 |
Balance b/fwd – Beneficiary 1 |
801/02 |
Balance b/fwd – Beneficiary 2 |
803 |
Additions |
803/01 |
Additions - Beneficiary 1 |
803/02 |
Additions - Beneficiary 2 |
811 |
Income for period |
811/01 |
Income for period - Beneficiary 1 |
811/02 |
Income for period - Beneficiary 2 |
In the next example, the beneficiary is represented by the second character in the account code and subaccounts are not used:
8101 |
Balance b/fwd – Beneficiary 1 |
8103 |
Additions - Beneficiary 1 |
8111 |
Income for period - Beneficiary 1 |
8201 |
Balance b/fwd – Beneficiary 2 |
8203 |
Additions - Beneficiary 2 |
8211 |
Income for period - Beneficiary 2 |
The problem with either coding scheme is that it is difficult, or impossible, to use a RangeDef to list the account descriptions in a description column, beneficiary 1’s balances in the first numeric column and beneficiary 2’s balances in the second numeric column. Users who use this structure usually end up having to pick up each account individually in the accounts page. This means that if extra nominals are added, the accounts page needs to be edited to include them.
A Beneficiary TB avoids this problem by mapping the nominal accounts that are actually used to nominals that are easier to report on with a RangeDef or a RangeCode.
Beneficiaries represented by a subaccount
For the sample subaccounts above, we perform a mapping and specify a Filter in the Beneficiary TB. The first beneficiary’s TB is set up as a TB Loading Instruction for letter g and has a Filter of ???/01. The second beneficiary’s TB is set up as a TB Loading Instruction for letter h with a Filter of ???/02. ???/01 means the trial balance should exclude any value that is not on an /01 subaccount. So the trial balance for letter g holds the /01 subaccounts. But the main accounts are calculated from the subaccounts, so the letter g trial balance also holds the same balances on the main accounts.
This means that we have mapped the balances from subaccounts on to main accounts as follows.
Account Code |
Description |
First beneficiary’s TB |
Second beneficiary’s TB |
801 |
Balance b/fwd |
g,801 gives 801/01 |
h,801 gives 801/02 |
803 |
Additions |
g,803 gives 803/01 |
h,803 gives 803/02 |
811 |
Income for period |
g,811 gives 811/01 |
h,811 gives 811/02 |
This mapping only takes place when the trial balances are passed across to Saved Trial Balances in Accounts Production. The nominal ledger in Trust Accounts is unchanged. The mapped accounts are easier to report on: the description column is a RangeDef on the main accounts; beneficiary 1 is a RangeCode on letter g; and beneficiary 2 is a RangeCode on letter h.
Beneficiaries represented by a character in the main account
For the sample main accounts the mapping takes part in two stages. The first beneficiary’s TB is set up as a TB Loading Instruction for letter g. In the first stage the Filter is ?1??. This gives a trial balance that only includes accounts in which the second character is a 1. The second stage is to map the accounts with a 1 as the second character to a 0. The Mapping is ?1??->?0??. Since all the accounts after filtering have a 1 as the second digit, we could also write the Mapping as ????->?0??.
The result is as follows:
Account Code |
Description |
First beneficiary’s TB |
Second beneficiary’s TB |
8001 |
Balance b/fwd |
g,8001 gives 8101 |
h,8001 gives 8201 |
8003 |
Additions |
g,8003 gives 8103 |
h,8003 gives 8203 |
8011 |
Income for period |
g,8011 gives 8111 |
h,8011 gives 8211 |
With this Filter and Mapping, the second character of the nominal account becomes 0 in all cases and the balances that were on codes starting 81 are now available using g,80xx. For the second beneficiary we set up a TB Loading Instruction for letter h:
- Filter: ?2??
- Mapping: ?2??->?0??
With this TB Loading Instruction, the balances that were on codes starting 82 are now available using h,80xx. Again this makes it easy to write RangeDefs to list each beneficiary as follows.
Formula |
Results |
=AP("RangeDef,8001,8099,g,-1,0,gh") |
Lists the accounts descriptions for accounts 8001 to 8099 if there’s a balance on the g’s or h’s trial balance. |
=AP("Rangecode,8001,8099,g,-1,0,gh") |
Lists the balances on the main accounts of g’s trial balance if there’s a balance on either g’s or h’s trial balance. g’s trial balance holds the values that were previously on 8101, 8103, 8111 etc, i.e. the “81 accounts”. |
=AP("Rangecode,8001,8099,h,-1,0,gh") |
Lists the balances on the main accounts of h’s trial balance if there’s a balance on either g’s or h’s trial balance. h’s trial balance holds the values that were previously on 8201, 8203, 8211 etc, i.e. the “82 accounts”. |