Thursday, 9 November 2017

Bank Recon 4.16.1115.3520 is available

Bank Recon 4.16.1115.3520 is available for download from the Twenty57 Partner Portal. Thank you to Shivkant for the development work.

The following has been included since the previous blog post. All these versions are available for download.

Version 4.16.1115.3520 (9 November 2017)

 - Bank Statement import validations can now be done across bank statement types by enabling the setting on the specific account. You can for example import a SBSA file, followed by a CATS file, and the bank statement validations will be triggered. If the setting is not enabled, the current logic which prevents bank statement validation across types remains in place.

Wednesday, 19 July 2017

Bank Recon 4.16.1113.3515 is available

Bank Recon 4.16.1113.3515 is available for download from the Twenty57 Partner Portal

The following has been included in this version.

Version 4.16.1113.3515 (19 July 2017)

- Bug on starting the service - The following functionality was failing on some service starts
           o process items that have been killed (in the busy state) will be updated to Error, and 
           o items in the Pending State will be re-initiated.

Wednesday, 21 June 2017

Bank Recon 4.16.1111.3511 is available

Bank Recon 4.16.1111.3511 is available for download from the Twenty57 Partner Portal. Thank you to Russell and Shivkant.

The following has been included in this version.

Version 4.16.1111.3511 (21 June 2017)

 - Journal Rule Speed Improvement (Underlying query simplification and performance improvement)

 - Service Recovery Improvements. Upon starting the service,
           o process items that have been killed (in the busy state) will be updated to Error, and
           o items in the Pending State will be re-initiated.
         Previously these status updates would not occur automatically and pending processes would not automatically be re-initiated.

Wednesday, 7 June 2017

Bank Recon 4.16 is available

Bank Recon 4.16.1110.3508 is available for download from the Twenty57 Partner Portal. Thank you to Shivkant for the development work.

The following has been included since the previous blog post. All these versions are available for download.

Version 4.16.1110.3508 (7 June 2017)

 - Suggest Functionality now includes a configuration option to disable the MOD (10) rounding exclusion for exact matches.

Version 4.16.1109.3506 (9 April 2017)

 - Last Key Value can now be larger than 2^32 - 1
 - Using OR conditions in journal rules no longer allows selecting transactions from accounts other than the currently selected account

Version 4.15.1108.3502 (24 February 2017)

 - When manually creating a bank batch, there is an option to use the last statement type of the account
 o When selected, the specific statement validations for the statement number will be enforced
 o When unselected, the standard validations will apply (Opening/Closing balance)
 - Tag transaction removal
 o Cashbook/Bank transactions can be removed from Tags by any user with the "Save/Edit" tags right for the related domain
- SWIFT MT940: The SWIFT MT940 parser has been extended to parse the new 2016 Account identification tag (:25P:)
 o Existing documents are parsed as per usual

 - Object reference error on the Recon Viewer screen has been resolved 
o The error would occur when a user without the ReconciliationDelete right navigated to the ReconViewer screen by selecting
  a ReconID link from a cashbook / bank transaction
 - Object reference error occurring when deleting a bank batch no longer occurs and the audit process log is created successfully

Version 4.14.1101.3480 (19 January 2017)

 - A new process type has been added, 'Bank Batch Delete'
           o Manually deleting a bank batch creates a process log with a message showing the original batch details
  o This allows the event to be audited
  o Even though this event is audited, it should only be used for deleting manually created bank batches
  o Bank batches created by way of bank statement import should be rolled back, since multiple batches can be created for a single bank statement

 - Manual Recon totals bar displays correctly when using comma as decimal separator
 - Configurable columns on the Domain Group/Domain/Account selection screen are now correctly aligned and consistent with the standard columns

Version 4.13.1098.3469 (15 December 2016)

 - Bank enrichment amount condition
            o When applying Bank enrichments, an optional condition can be specified for the amount which will determine whether to apply the enrichment
o Supported conditions include None, Amount zero, Amount negative and Amount positive
 - Process Log
           o The Process Log can now be filtered by Process Type, StartTime, EndTime and/or Process Status

 - Import definition test function
  o When executing import definitions, numeric parameters used with a greater than condition are not incremented before applying the query
  o Date parameters used with the equals condition or the greater than or equal to condition are incremented before applying the query
  o The "Test" function on the import definition page was not applying the logic above leading to a difference in the data displayed by the test function
    and the data which would be returned on the next run of the import definition
  o The actual value of the @keyValue parameter is now displayed when using the "Test" function
  o The results returned by the "Test" function will match the results returned by the import definition on the next run
 - Bank batches
  o  Statement Date has been added to the Bank batches grid

Version 4.12.1093.3456 (05 December 2016)

 - Cashbook Import error: "invalid column length from the bcp client for colid..."
o Truncating the Cashbook transactions details (300 -> 100) for insertion in the Allocation table has been fixed
o When a cashbook import returns data larger than the cashbook table can accommodate, the value is truncated to the maximum length
  prior to inserting (200 characters for reference fields and 300 characters for the description)
 - Cashbook imports ending in a warning now appear on the Rollback cashbook screen
o The process cannot end in a warning unless transactions were committed
 - Bank Statements list
   o There is a new menu item available to Site Administrators
   o Setup > Site Configuration > Bank Statements
   o Individual Bank statements can be selected/deselected for use by the application
   o The goal for the future is to allow installation of plugins without requiring a new version of the application
 - Swift Parser
   o There is a new plugin 'Swift'
   o This plugin will parse MT940 and MT950 files and ignore other swift messages (900,910,...) without failing
   o The main benefit is that the plugin will parse a file containing a mixture of message types
   o It is off by default
   o To activate, navigate to the Bank Statements list, deactivate both of 'Twenty57.BankRecon.BankStatements.SWIFTMT940.dll' and
 'Twenty57.BankRecon.BankStatements.SWIFTMT950.dll'. Then activate 'Twenty57.BankRecon.BankStatements.SWIFT.dll'
   o Without deactivating the SWIFTMT940 and SWIFTMT950 plugins, they will always detect and attempt to parse the Swift file first
 - AutoRecon transfer consolidation
   o There are 2 new configuration options on the ReconRule editor:
 o 'Consolidate Transfers':
- When selected and the rule is run across accounts, transactions will be consolidated and reconciled per account prior to transfer
- This may avoid the creation of many transactions, since only 2 transactions will be created for the transfer
  per account instead of 2 transactions created for each transferred transaction
- The default setting is off
 o 'Transfer Account' = [Use first Bank Account] or [Use Account with most transactions]
- When reconciling across accounts, Bank Recon must choose an account to transfer transactions to
- A new option is available to limit the number of transferred transactions by selecting the transfer account as the account
  with most transactions meaning that fewer transactions need to be transferred
- The default is [User first Bank Account]
   o The major gain in reducing the number of transactions created when transferring across accounts is by selecting the 'Consolidate' option

 - MSDTC is no longer required on the TagEditor screen
 - Unreconciled table maintenance
  o The maintenance of the unreconciled tables (CashbookTransactionUnreconciled and BankTransactionUnreconciled) can now be switched off
  o The process has been adjusted so as not to interfere with other processes and to ensure that only one update of the tables is running at any one time
    - This will reduce load on the server as well as resolve some concurrency issues associated with updating the tables
  o The unreconciled tables are used by the Suggest process and may be used by the Recon rules themselves
  o To turn off the unreconciled table maintenance, you must have the Suggest process switched off and ensure that none of your Recon rules
    reference the unreconciled tables directly (since they will then not match anything)
- Any recon rules using the unreconciled tables directly can be changed as follows:
  1. Any reference to CashbookTransactionUnreconciled should be changed to CashbookTransactionUnreconciledView
  2. Any reference to BankTransactionUnreconciled should be changed to BankTransactionUnreconciledView
- Then add the following application setting to the process service configuration file:
  1. add key="" value="false"

Version 4.11.1088.3433 (26 October 2016)

 - Flexcube transaction reversals are now parsed and reflected on the BankTransaction as Reference3 = 'Reversal'
 - MT940 / MT950 reversals are imported as BankTransaction.Reference9 = 'Reversal'
 - Individual reconciliations created when reconciling across accounts can be individually unreconciled or the entire batch can be unreconciled
   o These are created when transferring transactions from source accounts to the Recon account

 - "Reconciliation done successfully" message displays immediately after reconciling directly without a balancing entry
o Previously, the message would only show on returning to the manual reconciliation screen
o This message still display when returning to the Manual Reconciliation screen after creating a balancing entry
 - Bank transaction - Bulk import bug for bankstatements with no statement number has been resolved
         o When multiple statements are found in the import directory, Bank Recon needs to order the statements to import correctly.
  It does this by using the associated Statement number / Statement date
o In the case that a bank format does not use a statement number and the statement dates are equal, Bank Recon will use the
  ordering of the selected files as shown on the Bank Transaction import screen (top to bottom).
 - When reconciling across accounts and using Helper data, the ReconID's attached to Helper data rows were incorrectly assigned to the transfer Recons
    instead of the Recon in the working account
         o This has been resolved and the ReconID assigned to matched helper data will match the BankTransaction account (Recon account)

 - GL Account names are displayed on the Journal rule list and editor screens in addition to the GL account number
      o <Account Name> - <Account Number>

Version 4.10.1086.3422 (28 September 2016)

 - Auto journal entries can now be consolidated in the same way as with manual entries
           o To use this feature, the Consolidate option should be selected on the Journal rule
 - When testing a classic Recon rule with Helper data, the matched Helper data can be viewed along with the cashbook / bank data

 - Manual Reconciliation balancing entry error (Cashbook Transaction ID 0 does not exist)
o Bank Recon can fail to create a balancing entry due a number of reasons including:
   i.  the user does not have create cashbook batch / auto journal permissions
   ii. there are no open batches
o Previously, the actual error was being swallowed and "Cashbook Transaction ID 0 does not exist" was displayed
 - "One of the Recons does not balance.". A scenario was discovered when a rule returns matches using multiple ReconHelpers, BankRecon was
         not mapping the correct ReconHelpers to the correct match. This meant that importing the missing Helpers from the data set
would retrieve helpers from the wrong data set and the result would not balance. This has been resolved

 - Oracle cashbook imports were failing on first connection and subsequently succeeding due to an as yet unknown cause
               o To mitigate this, the Oracle cashbook import definition supports retrying the connection a configurable number of times
    using a configurable interval between retries
  o A cashbook import will show a warning on the process log when the connection needed to be retried and fail if the number
    of retries exceeds the configured setting

Friday, 26 August 2016

Bank Recon 4.9 is available

Bank Recon 4.9.1082.3412 is available for download from the Twenty57 website. Thank you to Shivkant and Shaun for the development work.

New Bank Statements

- FlexCube
- Montran

For more information on these formats, contact the Digiata office for assistance.


Unreconcile performance improvements have been made to support unreconciling a larger number of transactions. This will be most noticeable when unreconciling a recon involving many transferred transactions from different source accounts.

The account save performance has been improved and will be more noticeable in domains with a large number of GL accounts.

Manual Recon transaction selection performance has been improved. This mainly affected IE 8 users.

GL Account usability

When an account has many linked GL accounts, asides from being difficult to locate GL accounts, the application may become slow or even exceed the limitations of the web server as specified in the web.config file (maxRequestLength).

The GL Account list includes a search box with autocomplete:

In the case that the number of GL accounts for the domain is larger than the web.config setting "bankrecon.glaccount.dropdownlimit", the Account editor will show an search control from which GL accounts may be added to the list:

The selected GL accounts may be associated with the account be unchecking the "ALL" checkbox. In this case, only the GL accounts displayed are are associated with the account.

The selected GL accounts may be disassociated with the account by checking the "ALL" checkbox. In this case, all GL accounts are associated with the account except for the selection.


  • The MT940 / MT950 parsers now compare statement numbers correctly when importing a batch of statements with alternate formats of the Statement number tag (:28C)
    • Statement number only:

    • Statement number and sequence number:

  • The IE status bar dependency has been removed. The text previously shown on the status bar is now shown as HTML.

    • This avoids having to allow javascript to update the status bar in IE (as well as display it in the first place).
    • The control totals are now available to Chrome users. (There is no status bar in Chrome)
    • This affects the Manual Recon screen, Cashbook/Bank transaction screens and Transfer Cashbook transactions screen.


  • The Manual Recon suggest undo command no longer times out

  • Export to excel bug with control characters
    • Excel files underlying structure is xml and so invalid xml characters are converted to blanks prior to creating the export

  • The Cashbook transaction allocation editor "Save & Reconcile" double-click bug has been fixed.
    • The button will no longer submit multiple requests when double-clicked (It will disable after the first click and enable after)

  • The Report viewer control Oracle parameter bug has been fixed

Structure changes

The ReconCancelBankDetailsTransaction table has been removed. This table was previously used for unreconciling a recon linking Bank transactions directly to Helper Bank transactions.

Direct Bank transaction to Helper bank transaction recons were removed in 2014.


In the immediate future, we will be looking at introducing the Helper data into the front-end. In particular, the Recon rule test functions and recon viewer will display any matched Helper data for verification purposes. The Manual recon screen will be extended to utilise the Helper data for matching in a non-obtrusive fashion.

Friday, 1 July 2016

Bank Recon 4.8 has been updated

An issue was found with the Easy Recon rule batch processing mode and the changes have been reverted. We will add batch processing for the Easy rules in an upcoming major version. The updated version (4.8.1068.3360) is available on the Twenty57 website.

Thursday, 30 June 2016

Bank Recon 4.8 is available

Bank Recon 4.8.1067.3358 is available for download from the Twenty57 website. Thank you to Shivkant for the development work.

Accounting Periods

The Accounting Period list screen has been updated to allow multiple consecutive accounting periods to be closed.

Each period up to and including the selected period will be closed consecutively.
Compatibility Headers

Compatibility headers have been added for users of Internet explorer who use a default document mode prior to IE9. The header will ensure that pages render using IE9 document mode.
GenericCSV parser

The Generic CSV parser now supports both of ‘dd/MM/yyyy’ and ‘dd-MM-yyyy’ as date formats. The GenericCSV statement number validation bug has been resolved. The statement number is no longer validated.
Unreconciled table concurrency improvements

Unreconciled table maintenance concurrency has been improved. The AutoRecon and Cashbook import processes will no longer fail when the unreconciled table maintenance process fails, but the process will end in a warning.
Helper Data matching (Bank <-> ReconHelperBankTransaction match)

This fix affects Recon rules using Helper data with the the option to create journal entries for missing Cashbook transactions selected. Previously, at least one Cashbook transaction would need to match to a ReconHelperCashbookTransaction for the match to succeed.
This is because the underlying ReconHelper set was determined by the Cashbook <-> ReconHelperCashbook match.
Now, the ReconHelper set can be determined by the Bank <-> ReconHelperBankTransaction alone and no Cashbook transactions need to match for journal entries to be created using the linked ReconHelperCashbook transactions.

Recon failure error messages (One of the Recons does not balance)

After a reconciliation fails due to an imbalance between the cashbook and bank when using Helper Data, it has frequently been due to one or more cashbook transactions matching to more than one ReconHelperCashbook transaction. In this case, Bank Recon will show the first 10 duplicates, so that they can be excluded from the match or used to update the Recon rule appropriately.
Easy Recon rule performance

The Easy recon rule editor now generates rules using Batch processing by default. This results in performance improvements in the case that grouping is used and the rule returns many groups.
Recon viewer

The Recon viewer screen has been updated to account for a large number of transferred transactions. When Reconciliations are run across accounts and a large number of transactions are transferred, displaying them all on one screen may result in timeouts,
server errors (maxRequestLength exceeded) or generally poor performance.

We have added paging on the ReconViewer to handle this case.

The page size is a web config application setting, 
<add key="bankrecon.reconviewer.pagesize" value="10"/>

Increasing the value will affect performance and may require the maximum request length to be increased when the value is large. The default value is 10 items.

Services User

A new user type has been added. Existing users who login to the front-end are known as end-users. The new user type is a service user. Service users cannot login to the front-end. Service users must have a password set, as they are used for the webservice integration. The Service user details are not updated by Active Directory.

Manual Recon balancing entries

There is a new web configuration setting:
<add key="bankrecon.glaccount.dropdownlimit" value="1000"/>

The setting affects the cashbook transaction allocation editor when creating a balancing entry. When an account is linked to more GL accounts than specified by the value, the GLAccount dropdown becomes an autocompleting textbox.

The default value is 1000. Setting the value to 0 will always use the autocomplete textbox. Setting the value to a very large number will always use the dropdown.