* fix: Exchange gain and loss booking on multi-curreny invoice reconciliation
* test: Update test cases
* chore: Ignore SQL linting rule
* chore: Joural Entry for exchange gainand loss booking
* chore: Journal entry for exchange gain loss booking
* test: Update test case
* chore: Default exchange gain and loss account
* refactor: new type for JE - Exchange Gain or Loss
* refactor: skip few validations for Exchanage Gain Or Loss type Jour
* refactor: ERR create 2 journals for handling zero and non-zero compa
1. Additional check box accounts table to identify accounts with zero balance
2. Accounts with zero balance only in either of the 2 currencies will be handled on separate Journal
* refactor: skips few validation for allowing 0 debit/credit
* fix: General Ledger presentaion currency
* test: fix test case in general ledger
* test: fix failing test case in AR report
Some implementations of DocField.get_route_options_for_new_doc() returned no value instead of an empty object in some cases, which caused a JavaScript error.
* fix: set_amounts after deductions and losses are set
* test: difference_amount changes after update_references_in_payment_entry
* chore: linter
* fix: use kwargs instad of destructing a dict
[skip ci]
* fix(test): test payment entry difference_amount after payment reconciliation.
Added a button of Auto Reconcile, to reconcile the bank entries as per the matching reference number with the bank transaction and count of transactions reconciled message will be pop up on clicking the auto reconcile button.
On bank reconciliation, transactions will be filtered as per date selected in 'from_date' and 'to_date' fields , In dialog, all the bank entries will be fetched as per the posting date selected and if filtered by reference date checkbox is tick then then there will be two fields 'from_reference_date' and 'to_reference_date' then all bank entries in dialog box came as per reference date, selected. And by default journal entry checkbox is tick.
Also sorted the bank transactions and bank entries as per ascending order date wise.
* fix: return promise
* fix: use after_refresh hook instead of promise
# Because there is already a before_refresh hook. I think it makes sense to do the same for after.