mirror of
https://github.com/OCA/account-reconcile.git
synced 2025-01-20 12:27:39 +02:00
[MIG10] migrate account-banking-reconciliation module to odoo v10, including qweb reports
This commit is contained in:
committed by
Murtuza Saleh
parent
7c40c48090
commit
7bcc254c25
@@ -18,7 +18,9 @@
|
||||
"security/ir.model.access.csv",
|
||||
"views/account_banking_reconciliation.xml",
|
||||
"views/account_move_line.xml",
|
||||
"report/bank_statement_report.xml"],
|
||||
"report/bank_statement_report.xml",
|
||||
"views/report_bank_statement_summary.xml",
|
||||
"views/report_bank_statement_detail.xml"],
|
||||
"demo": [],
|
||||
"installable": False,
|
||||
"installable": True,
|
||||
}
|
||||
|
||||
@@ -5,153 +5,157 @@
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
import time
|
||||
|
||||
from openerp.osv import fields, osv
|
||||
from openerp.tools.translate import _
|
||||
import openerp.addons.decimal_precision as dp
|
||||
from odoo import fields, models, api, _
|
||||
from odoo.exceptions import UserError
|
||||
import odoo.addons.decimal_precision as dp
|
||||
from operator import itemgetter
|
||||
from odoo.tools.float_utils import float_round
|
||||
|
||||
|
||||
class bank_acc_rec_statement(osv.osv):
|
||||
def check_group(self, cr, uid, ids, context=None):
|
||||
class bank_acc_rec_statement(models.Model):
|
||||
|
||||
@api.multi
|
||||
def check_group(self):
|
||||
"""Check if following security constraints are implemented for groups:
|
||||
Bank Statement Preparer– they can create, view and delete any of the Bank Statements provided the Bank Statement is not in the DONE state,
|
||||
or the Ready for Review state.
|
||||
Bank Statement Verifier – they can create, view, edit, and delete any of the Bank Statements information at any time.
|
||||
NOTE: DONE Bank Statements are only allowed to be deleted by a Bank Statement Verifier."""
|
||||
model_data_obj = self.pool.get('ir.model.data')
|
||||
res_groups_obj = self.pool.get('res.groups')
|
||||
group_verifier_id = model_data_obj._get_id(cr, uid, 'ursa_npg_bank_account_reconciliation', 'group_bank_stmt_verifier')
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
model_data_obj = self.env['ir.model.data']
|
||||
res_groups_obj = self.env['res.groups']
|
||||
group_verifier_id = model_data_obj._get_id('account_banking_reconciliation', 'group_bank_stmt_verifier')
|
||||
|
||||
for statement in self:
|
||||
if group_verifier_id:
|
||||
res_id = model_data_obj.read(cr, uid, [group_verifier_id], ['res_id'])[0]['res_id']
|
||||
group_verifier = res_groups_obj.browse(cr, uid, res_id, context=context)
|
||||
res_id = model_data_obj.browse(group_verifier_id).res_id
|
||||
group_verifier = res_groups_obj.browse([res_id])
|
||||
group_user_ids = [user.id for user in group_verifier.users]
|
||||
if statement.state!='draft' and uid not in group_user_ids:
|
||||
raise osv.except_osv(_('User Error !'),
|
||||
_("Only a member of '%s' group may delete/edit bank statements when not in draft state!" %(group_verifier.name)))
|
||||
if statement.state!='draft' and self.env.uid not in group_user_ids:
|
||||
raise UserError(_("Only a member of '%s' group may delete/edit bank statements when not in draft state!" %(group_verifier.name)))
|
||||
return True
|
||||
|
||||
def copy(self, cr, uid, id, default={}, context=None):
|
||||
@api.model
|
||||
def copy(self, default={}):
|
||||
default.update({
|
||||
'credit_move_line_ids': [],
|
||||
'debit_move_line_ids': [],
|
||||
'name': '',
|
||||
})
|
||||
return super(bank_acc_rec_statement, self).copy(cr, uid, id, default=default, context=context)
|
||||
return super(bank_acc_rec_statement, self).copy(default=default)
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
self.check_group(cr, uid, ids, context) # Check if the user is allowed to perform the action
|
||||
return super(bank_acc_rec_statement, self).write(cr, uid, ids, vals, context=context)
|
||||
@api.multi
|
||||
def write(self, vals):
|
||||
self.check_group() # Check if the user is allowed to perform the action
|
||||
return super(bank_acc_rec_statement, self).write(vals)
|
||||
|
||||
def unlink(self, cr, uid, ids, context=None):
|
||||
@api.model
|
||||
def unlink(self):
|
||||
"Reset the related account.move.line to be re-assigned later to statement."
|
||||
statement_line_obj = self.pool.get('bank.acc.rec.statement.line')
|
||||
self.check_group(cr, uid, ids, context) # Check if the user is allowed to perform the action
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
statement_line_obj = self.env['bank.acc.rec.statement.line']
|
||||
self.check_group() # Check if the user is allowed to perform the action
|
||||
for statement in self:
|
||||
statement_lines = statement.credit_move_line_ids + statement.debit_move_line_ids
|
||||
statement_line_ids = map(lambda x: x.id, statement_lines)
|
||||
statement_line_obj.unlink(cr, uid, statement_line_ids, context=context) # call unlink method to reset
|
||||
return super(bank_acc_rec_statement, self).unlink(cr, uid, ids, context=context)
|
||||
statement_line_brws = statement_line_obj.browse(statement_line_ids)
|
||||
statement_line_brws.unlink() # call unlink method to reset
|
||||
return super(bank_acc_rec_statement, self).unlink()
|
||||
|
||||
def check_difference_balance(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def check_difference_balance(self):
|
||||
"Check if difference balance is zero or not."
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
for statement in self:
|
||||
|
||||
if statement.cleared_balance_cur:
|
||||
if statement.difference_cur != 0.0:
|
||||
raise osv.except_osv(_('Warning!'),
|
||||
_("Prior to reconciling a statement, all differences must be accounted for and the Difference balance must be zero." \
|
||||
raise UserError(_("Prior to reconciling a statement, all differences must be accounted for and the Difference balance must be zero." \
|
||||
" Please review and make necessary changes."))
|
||||
else:
|
||||
if statement.difference != 0.0:
|
||||
raise osv.except_osv(_('Warning!'),
|
||||
_("Prior to reconciling a statement, all differences must be accounted for and the Difference balance must be zero." \
|
||||
raise UserError(_("Prior to reconciling a statement, all differences must be accounted for and the Difference balance must be zero." \
|
||||
" Please review and make necessary changes."))
|
||||
return True
|
||||
|
||||
def action_cancel(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def action_cancel(self):
|
||||
"Cancel the the statement."
|
||||
self.write(cr, uid, ids, {'state': 'cancel'}, context=context)
|
||||
self.write({'state': 'cancel'})
|
||||
return True
|
||||
|
||||
def action_review(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def action_review(self):
|
||||
"Change the status of statement from 'draft' to 'to_be_reviewed'."
|
||||
# If difference balance not zero prevent further processing
|
||||
self.check_difference_balance(cr, uid, ids, context=context)
|
||||
self.write(cr, uid, ids, {'state': 'to_be_reviewed'}, context=context)
|
||||
self.check_difference_balance()
|
||||
self.write({'state': 'to_be_reviewed'})
|
||||
return True
|
||||
|
||||
def action_process(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def action_process(self):
|
||||
"""Set the account move lines as 'Cleared' and Assign 'Bank Acc Rec Statement ID'
|
||||
for the statement lines which are marked as 'Cleared'."""
|
||||
account_move_line_obj = self.pool.get('account.move.line')
|
||||
statement_line_obj = self.pool.get('bank.acc.rec.statement.line')
|
||||
# If difference balance not zero prevent further processing
|
||||
self.check_difference_balance(cr, uid, ids, context=context)
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
self.check_difference_balance()
|
||||
for statement in self:
|
||||
statement_lines = statement.credit_move_line_ids + statement.debit_move_line_ids
|
||||
for statement_line in statement_lines:
|
||||
#Mark the move lines as 'Cleared'mand assign the 'Bank Acc Rec Statement ID'
|
||||
account_move_line_obj.write(cr, uid, [statement_line.move_line_id.id],
|
||||
{'cleared_bank_account': statement_line.cleared_bank_account,
|
||||
statement_line.move_line_id.write({'cleared_bank_account': statement_line.cleared_bank_account,
|
||||
'bank_acc_rec_statement_id': statement_line.cleared_bank_account and statement.id or False
|
||||
}, context=context)
|
||||
})
|
||||
|
||||
self.write(cr, uid, [statement.id], {'state': 'done',
|
||||
'verified_by_user_id': uid,
|
||||
'verified_date': time.strftime('%Y-%m-%d')
|
||||
}, context=context)
|
||||
statement.write({'state': 'done',
|
||||
'verified_by_user_id': self.env.uid,
|
||||
'verified_date': time.strftime('%Y-%m-%d')
|
||||
})
|
||||
return True
|
||||
|
||||
def action_cancel_draft(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def action_cancel_draft(self):
|
||||
"""Reset the statement to draft and perform resetting operations."""
|
||||
account_move_line_obj = self.pool.get('account.move.line')
|
||||
statement_line_obj = self.pool.get('bank.acc.rec.statement.line')
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
for statement in self:
|
||||
statement_lines = statement.credit_move_line_ids + statement.debit_move_line_ids
|
||||
line_ids = []
|
||||
statement_line_ids = []
|
||||
for statement_line in statement_lines:
|
||||
statement_line_ids.append(statement_line.id)
|
||||
statement_line_ids.append(statement_line)
|
||||
|
||||
if statement_line.move_line_id:
|
||||
line_ids.append(statement_line.move_line_id.id) # Find move lines related to statement lines
|
||||
line_ids.append(statement_line.move_line_id) # Find move lines related to statement lines
|
||||
|
||||
# Reset 'Cleared' and 'Bank Acc Rec Statement ID' to False
|
||||
account_move_line_obj.write(cr, uid, line_ids, {'cleared_bank_account': False,
|
||||
'bank_acc_rec_statement_id': False,
|
||||
}, context=context)
|
||||
line_ids.write({'cleared_bank_account': False,
|
||||
'bank_acc_rec_statement_id': False,
|
||||
})
|
||||
# Reset 'Cleared' in statement lines
|
||||
statement_line_obj.write(cr, uid, statement_line_ids, {'cleared_bank_account': False,
|
||||
'research_required': False
|
||||
}, context=context)
|
||||
statement_line_ids.write({'cleared_bank_account': False,
|
||||
'research_required': False
|
||||
})
|
||||
# Reset statement
|
||||
self.write(cr, uid, [statement.id], {'state': 'draft',
|
||||
'verified_by_user_id': False,
|
||||
'verified_date': False
|
||||
}, context=context)
|
||||
|
||||
statement.write({'state': 'draft',
|
||||
'verified_by_user_id': False,
|
||||
'verified_date': False
|
||||
})
|
||||
return True
|
||||
|
||||
def action_select_all(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def action_select_all(self):
|
||||
"""Mark all the statement lines as 'Cleared'."""
|
||||
statement_line_obj = self.pool.get('bank.acc.rec.statement.line')
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
for statement in self:
|
||||
statement_lines = statement.credit_move_line_ids + statement.debit_move_line_ids
|
||||
statement_line_ids = map(lambda x: x.id, statement_lines)
|
||||
statement_line_obj.write(cr, uid, statement_line_ids, {'cleared_bank_account': True}, context=context)
|
||||
statement_line_ids.write({'cleared_bank_account': True})
|
||||
return True
|
||||
|
||||
def action_unselect_all(self, cr, uid, ids, context=None):
|
||||
@api.multi
|
||||
def action_unselect_all(self):
|
||||
"""Reset 'Cleared' in all the statement lines."""
|
||||
statement_line_obj = self.pool.get('bank.acc.rec.statement.line')
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
for statement in self:
|
||||
statement_lines = statement.credit_move_line_ids + statement.debit_move_line_ids
|
||||
statement_line_ids = map(lambda x: x.id, statement_lines)
|
||||
statement_line_obj.write(cr, uid, statement_line_ids, {'cleared_bank_account': False}, context=context)
|
||||
statement_line_ids.write({'cleared_bank_account': False})
|
||||
return True
|
||||
|
||||
def _get_balance(self, cr, uid, ids, name, args, context=None):
|
||||
def _get_balance(self):
|
||||
"""Computed as following:
|
||||
A) Deposits, Credits, and Interest Amount: Total SUM of Amts of lines with Cleared = True
|
||||
Deposits, Credits, and Interest # of Items: Total of number of lines with Cleared = True
|
||||
@@ -160,60 +164,38 @@ class bank_acc_rec_statement(osv.osv):
|
||||
Cleared Balance (Total Sum of the Deposit Amount Cleared (A) – Total Sum of Checks Amount Cleared (B))
|
||||
Difference= (Ending Balance – Beginning Balance) - cleared balance = should be zero.
|
||||
"""
|
||||
res = {}
|
||||
account_precision = self.pool.get('decimal.precision').precision_get(cr, uid, 'Account')
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
res[statement.id] = {
|
||||
'sum_of_credits': 0.0,
|
||||
'sum_of_debits': 0.0,
|
||||
'sum_of_credits_cur': 0.0,
|
||||
'sum_of_debits_cur': 0.0,
|
||||
'sum_of_ucredits': 0.0,
|
||||
'sum_of_udebits': 0.0,
|
||||
'sum_of_ucredits_cur': 0.0,
|
||||
'sum_of_udebits_cur': 0.0,
|
||||
'cleared_balance': 0.0,
|
||||
'cleared_balance_cur': 0.0,
|
||||
'uncleared_balance': 0.0,
|
||||
'uncleared_balance_cur': 0.0,
|
||||
'difference': 0.0,
|
||||
'difference_cur': 0.0,
|
||||
'sum_of_credits_lines': 0.0,
|
||||
'sum_of_debits_lines': 0.0,
|
||||
'sum_of_ucredits_lines': 0.0,
|
||||
'sum_of_udebits_lines': 0.0
|
||||
}
|
||||
account_precision = self.env['decimal.precision'].precision_get('Account')
|
||||
for statement in self:
|
||||
for line in statement.credit_move_line_ids:
|
||||
res[statement.id]['sum_of_credits'] += line.cleared_bank_account and round(line.amount, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_credits_cur'] += line.cleared_bank_account and round(line.amountcur, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_credits_lines'] += line.cleared_bank_account and 1.0 or 0.0
|
||||
res[statement.id]['sum_of_ucredits'] += (not line.cleared_bank_account) and round(line.amount, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_ucredits_cur'] += (not line.cleared_bank_account) and round(line.amountcur, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_ucredits_lines'] += (not line.cleared_bank_account) and 1.0 or 0.0
|
||||
statement.sum_of_credits += line.cleared_bank_account and float_round(line.amount, account_precision) or 0.0
|
||||
statement.sum_of_credits_cur += line.cleared_bank_account and float_round(line.amountcur, account_precision) or 0.0
|
||||
statement.sum_of_credits_lines += line.cleared_bank_account and 1.0 or 0.0
|
||||
statement.sum_of_ucredits += (not line.cleared_bank_account) and float_round(line.amount, account_precision) or 0.0
|
||||
statement.sum_of_ucredits_cur += (not line.cleared_bank_account) and float_round(line.amountcur, account_precision) or 0.0
|
||||
statement.sum_of_ucredits_lines += (not line.cleared_bank_account) and 1.0 or 0.0
|
||||
for line in statement.debit_move_line_ids:
|
||||
res[statement.id]['sum_of_debits'] += line.cleared_bank_account and round(line.amount, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_debits_cur'] += line.cleared_bank_account and round(line.amountcur, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_debits_lines'] += line.cleared_bank_account and 1.0 or 0.0
|
||||
res[statement.id]['sum_of_udebits'] += (not line.cleared_bank_account) and round(line.amount, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_udebits_cur'] += (not line.cleared_bank_account) and round(line.amountcur, account_precision) or 0.0
|
||||
res[statement.id]['sum_of_udebits_lines'] += (not line.cleared_bank_account) and 1.0 or 0.0
|
||||
statement.sum_of_debits += line.cleared_bank_account and float_round(line.amount, account_precision) or 0.0
|
||||
statement.sum_of_debits_cur += line.cleared_bank_account and float_round(line.amountcur, account_precision) or 0.0
|
||||
statement.sum_of_debits_lines += line.cleared_bank_account and 1.0 or 0.0
|
||||
statement.sum_of_udebits += (not line.cleared_bank_account) and float_round(line.amount, account_precision) or 0.0
|
||||
statement.sum_of_udebits_cur += (not line.cleared_bank_account) and float_round(line.amountcur, account_precision) or 0.0
|
||||
statement.sum_of_udebits_lines += (not line.cleared_bank_account) and 1.0 or 0.0
|
||||
|
||||
res[statement.id]['cleared_balance'] = round(res[statement.id]['sum_of_debits'] - res[statement.id]['sum_of_credits'], account_precision)
|
||||
res[statement.id]['cleared_balance_cur'] = round(res[statement.id]['sum_of_debits_cur'] - res[statement.id]['sum_of_credits_cur'], account_precision)
|
||||
res[statement.id]['difference'] = round((statement.ending_balance - statement.starting_balance) - res[statement.id]['cleared_balance'], account_precision)
|
||||
res[statement.id]['difference_cur'] = round((statement.ending_balance - statement.starting_balance) - res[statement.id]['cleared_balance_cur'], account_precision)
|
||||
res[statement.id]['uncleared_balance'] = round(res[statement.id]['sum_of_udebits'] - res[statement.id]['sum_of_ucredits'], account_precision)
|
||||
res[statement.id]['uncleared_balance_cur'] = round(res[statement.id]['sum_of_udebits_cur'] - res[statement.id]['sum_of_ucredits_cur'], account_precision)
|
||||
return res
|
||||
statement.cleared_balance = float_round(statement.sum_of_debits - statement.sum_of_credits, account_precision)
|
||||
statement.cleared_balance_cur = float_round(statement.sum_of_debits_cur - statement.sum_of_credits_cur, account_precision)
|
||||
statement.difference = float_round((statement.ending_balance - statement.starting_balance) - statement.cleared_balance, account_precision)
|
||||
statement.difference_cur = float_round((statement.ending_balance - statement.starting_balance) - statement.cleared_balance_cur, account_precision)
|
||||
statement.uncleared_balance = float_round(statement.sum_of_udebits - statement.sum_of_ucredits, account_precision)
|
||||
statement.uncleared_balance_cur = float_round(statement.sum_of_udebits_cur - statement.sum_of_ucredits_cur, account_precision)
|
||||
|
||||
# refresh data
|
||||
def refresh_record(self, cr, uid, ids, context=None):
|
||||
|
||||
@api.multi
|
||||
def refresh_record(self):
|
||||
retval = True
|
||||
refdict = {}
|
||||
|
||||
# get current state of moves in the statement
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
for statement in self:
|
||||
|
||||
if statement.state == 'draft':
|
||||
for cr_item in statement.credit_move_line_ids:
|
||||
@@ -225,14 +207,14 @@ class bank_acc_rec_statement(osv.osv):
|
||||
refdict[dr_item.move_line_id.id] = dr_item.cleared_bank_account
|
||||
|
||||
# for the statement
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
for statement in self:
|
||||
|
||||
# process only if the statement is in draft state
|
||||
if statement.state == 'draft':
|
||||
account_id = statement.account_id and statement.account_id.id
|
||||
ending_date = statement.ending_date
|
||||
suppress_ending_date_filter = statement.suppress_ending_date_filter
|
||||
vals = self.onchange_account_id(cr, uid, ids, account_id, ending_date, suppress_ending_date_filter, context=context)
|
||||
vals = self.onchange_account_id(statement.account_id, statement.ending_date, statement.suppress_ending_date_filter)
|
||||
|
||||
# list of credit lines
|
||||
outlist = []
|
||||
@@ -253,22 +235,23 @@ class bank_acc_rec_statement(osv.osv):
|
||||
inlist.append(item)
|
||||
|
||||
# write it to the record so it is visible on the form
|
||||
retval = self.write(cr, uid, ids, {'last_ending_date':vals['value']['last_ending_date'],'starting_balance': vals['value']['starting_balance'],
|
||||
'credit_move_line_ids':outlist, 'debit_move_line_ids': inlist}, context=context)
|
||||
retval = self.write({'last_ending_date':vals['value']['last_ending_date'],'starting_balance': vals['value']['starting_balance'],
|
||||
'credit_move_line_ids':outlist, 'debit_move_line_ids': inlist})
|
||||
|
||||
return retval
|
||||
|
||||
# get starting balance for the account
|
||||
def get_starting_balance(self, cr, uid, account_id, ending_date, context=None):
|
||||
# get starting balance for the account
|
||||
@api.multi
|
||||
def get_starting_balance(self, account_id, ending_date):
|
||||
|
||||
result = (False,0.0)
|
||||
reslist=[]
|
||||
statement_obj = self.pool.get('bank.acc.rec.statement')
|
||||
statement_obj = self.env['bank.acc.rec.statement']
|
||||
domain = [('account_id', '=', account_id), ('state', '=', 'done')]
|
||||
statement_ids = statement_obj.search(cr, uid, domain, context=context)
|
||||
statement_ids = statement_obj.search(domain).ids
|
||||
|
||||
# get all statements for this account in the past
|
||||
for statement in statement_obj.browse(cr, uid, statement_ids, context=context):
|
||||
for statement in statement_obj.browse(statement_ids):
|
||||
if statement.ending_date < ending_date:
|
||||
reslist.append((statement.ending_date, statement.ending_balance))
|
||||
|
||||
@@ -279,175 +262,162 @@ class bank_acc_rec_statement(osv.osv):
|
||||
|
||||
return result
|
||||
|
||||
def onchange_account_id(self, cr, uid, ids, account_id, ending_date, suppress_ending_date_filter, context=None):
|
||||
account_move_line_obj = self.pool.get('account.move.line')
|
||||
statement_line_obj = self.pool.get('bank.acc.rec.statement.line')
|
||||
@api.onchange('account_id','ending_date','suppress_ending_date_filter')
|
||||
def onchange_account_id(self):
|
||||
account_move_line_obj = self.env['account.move.line']
|
||||
statement_line_obj = self.env['bank.acc.rec.statement.line']
|
||||
val = {'value': {'credit_move_line_ids': [], 'debit_move_line_ids': []}}
|
||||
if account_id:
|
||||
for statement in self.browse(cr, uid, ids, context=context):
|
||||
statement_line_ids = statement_line_obj.search(cr, uid, [('statement_id', '=', statement.id)], context=context)
|
||||
if self.account_id:
|
||||
for statement in self:
|
||||
statement_line_ids = statement_line_obj.search([('statement_id', '=', statement.id)])
|
||||
# call unlink method to reset and remove existing statement lines and
|
||||
# mark reset field values in related move lines
|
||||
statement_line_obj.unlink(cr, uid, statement_line_ids, context=context)
|
||||
statement_line_ids.unlink()
|
||||
|
||||
# Apply filter on move lines to allow
|
||||
#1. credit and debit side journal items in posted state of the selected GL account
|
||||
#2. Journal items which are not cleared in previous bank statements
|
||||
#3. Date less than or equal to ending date provided the 'Suppress Ending Date Filter' is not checkec
|
||||
domain = [('account_id', '=', account_id), ('move_id.state', '=', 'posted'), ('cleared_bank_account', '=', False)]
|
||||
if not suppress_ending_date_filter:
|
||||
domain += [('date', '<=', ending_date)]
|
||||
line_ids = account_move_line_obj.search(cr, uid, domain, context=context)
|
||||
for line in account_move_line_obj.browse(cr, uid, line_ids, context=context):
|
||||
domain = [('account_id', '=', self.account_id.id), ('move_id.state', '=', 'posted'), ('cleared_bank_account', '=', False)]
|
||||
if not self.suppress_ending_date_filter:
|
||||
domain += [('date', '<=', self.ending_date)]
|
||||
line_ids = account_move_line_obj.search(domain).ids
|
||||
for line in account_move_line_obj.browse(line_ids):
|
||||
|
||||
if not line.journal_id.centralisation:
|
||||
amount_currency = (line.amount_currency < 0) and (-1*line.amount_currency) or line.amount_currency
|
||||
res = {
|
||||
'ref': line.ref,
|
||||
'date': line.date,
|
||||
'partner_id': line.partner_id.id,
|
||||
'currency_id': line.currency_id.id,
|
||||
'amount': line.credit or line.debit,
|
||||
'amountcur': amount_currency,
|
||||
'name': line.name,
|
||||
'move_line_id': line.id,
|
||||
'type': line.credit and 'cr' or 'dr'
|
||||
}
|
||||
|
||||
if res['type'] == 'cr':
|
||||
val['value']['credit_move_line_ids'].append(res)
|
||||
else:
|
||||
val['value']['debit_move_line_ids'].append(res)
|
||||
amount_currency = (line.amount_currency < 0) and (-1*line.amount_currency) or line.amount_currency
|
||||
res = {
|
||||
'ref': line.ref,
|
||||
'date': line.date,
|
||||
'partner_id': line.partner_id.id,
|
||||
'currency_id': line.currency_id.id,
|
||||
'amount': line.credit or line.debit,
|
||||
'amountcur': amount_currency,
|
||||
'name': line.name,
|
||||
'move_line_id': line.id,
|
||||
'type': line.credit and 'cr' or 'dr'
|
||||
}
|
||||
|
||||
if res['type'] == 'cr':
|
||||
val['value']['credit_move_line_ids'].append(res)
|
||||
else:
|
||||
val['value']['debit_move_line_ids'].append(res)
|
||||
|
||||
# look for previous statement for the account to pull ending balance as starting balance
|
||||
prev_stmt=self.get_starting_balance(cr, uid, account_id, ending_date, context=context)
|
||||
prev_stmt=self.get_starting_balance(self.account_id.id, self.ending_date)
|
||||
val['value']['last_ending_date'] = prev_stmt[0]
|
||||
val['value']['starting_balance'] = prev_stmt[1]
|
||||
|
||||
return val
|
||||
|
||||
def get_default_company_id(self):
|
||||
return self.env['res.users'].browse([self.env.uid]).company_id.id
|
||||
|
||||
_name = "bank.acc.rec.statement"
|
||||
_columns = {
|
||||
'name': fields.char('Name', required=True, size=64, states={'done':[('readonly', True)]}, help="This is a unique name identifying the statement (e.g. Bank X January 2012)."),
|
||||
'account_id': fields.many2one('account.account', 'Account', required=True,
|
||||
states={'done':[('readonly', True)]}, domain="[('company_id', '=', company_id), ('type', '!=', 'view')]",
|
||||
help="The Bank/Gl Account that is being reconciled."),
|
||||
'ending_date': fields.date('Ending Date', required=True, states={'done':[('readonly', True)]}, help="The ending date of your bank statement."),
|
||||
'last_ending_date': fields.date('Last Stmt Date', help="The previous statement date of your bank statement."),
|
||||
'starting_balance': fields.float('Starting Balance', required=True, digits_compute=dp.get_precision('Account'), help="The Starting Balance on your bank statement.", states={'done':[('readonly', True)]}),
|
||||
'ending_balance': fields.float('Ending Balance', required=True, digits_compute=dp.get_precision('Account'), help="The Ending Balance on your bank statement.", states={'done':[('readonly', True)]}),
|
||||
'company_id': fields.many2one('res.company', 'Company', required=True, readonly=True,
|
||||
help="The Company for which the deposit ticket is made to"),
|
||||
'notes': fields.text('Notes'),
|
||||
'verified_date': fields.date('Verified Date', states={'done':[('readonly', True)]},
|
||||
help="Date in which Deposit Ticket was verified."),
|
||||
'verified_by_user_id': fields.many2one('res.users', 'Verified By', states={'done':[('readonly', True)]},
|
||||
help="Entered automatically by the “last user” who saved it. System generated."),
|
||||
'credit_move_line_ids': fields.one2many('bank.acc.rec.statement.line', 'statement_id', 'Credits',
|
||||
domain=[('type','=','cr')], context={'default_type':'cr'}, states={'done':[('readonly', True)]}),
|
||||
'debit_move_line_ids': fields.one2many('bank.acc.rec.statement.line', 'statement_id', 'Debits',
|
||||
domain=[('type','=','dr')], context={'default_type':'dr'}, states={'done':[('readonly', True)]}),
|
||||
'cleared_balance': fields.function(_get_balance, method=True, string='Cleared Balance', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total Sum of the Deposit Amount Cleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Cleared",
|
||||
multi="balance"),
|
||||
'difference': fields.function(_get_balance, method=True, type='float', string='Difference', digits_compute=dp.get_precision('Account'),
|
||||
help="(Ending Balance – Beginning Balance) - Cleared Balance.", multi="balance"),
|
||||
'cleared_balance_cur': fields.function(_get_balance, method=True, string='Cleared Balance (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total Sum of the Deposit Amount Cleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Cleared",
|
||||
multi="balance"),
|
||||
'difference_cur': fields.function(_get_balance, method=True, type='float', string='Difference (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="(Ending Balance – Beginning Balance) - Cleared Balance.", multi="balance"),
|
||||
'uncleared_balance': fields.function(_get_balance, method=True, string='Uncleared Balance', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total Sum of the Deposit Amount Uncleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Uncleared",
|
||||
multi="balance"),
|
||||
'uncleared_balance_cur': fields.function(_get_balance, method=True, string='Unleared Balance (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total Sum of the Deposit Amount Uncleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Uncleared",
|
||||
multi="balance"),
|
||||
'sum_of_credits': fields.function(_get_balance, method=True, string='Checks, Withdrawals, Debits, and Service Charges Amount', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total SUM of Amts of lines with Cleared = True",
|
||||
multi="balance"),
|
||||
'sum_of_debits': fields.function(_get_balance, method=True, type='float', string='Deposits, Credits, and Interest Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = True", multi="balance"),
|
||||
'sum_of_credits_cur': fields.function(_get_balance, method=True, string='Checks, Withdrawals, Debits, and Service Charges Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total SUM of Amts of lines with Cleared = True",
|
||||
multi="balance"),
|
||||
'sum_of_debits_cur': fields.function(_get_balance, method=True, type='float', string='Deposits, Credits, and Interest Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = True", multi="balance"),
|
||||
'sum_of_credits_lines': fields.function(_get_balance, method=True, string='Checks, Withdrawals, Debits, and Service Charges # of Items',
|
||||
type='float', help="Total of number of lines with Cleared = True",
|
||||
multi="balance"),
|
||||
'sum_of_debits_lines': fields.function(_get_balance, method=True, type='float', string='Deposits, Credits, and Interest # of Items',
|
||||
help="Total of number of lines with Cleared = True", multi="balance"),
|
||||
'sum_of_ucredits': fields.function(_get_balance, method=True, string='Uncleared - Checks, Withdrawals, Debits, and Service Charges Amount', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total SUM of Amts of lines with Cleared = False",
|
||||
multi="balance"),
|
||||
'sum_of_udebits': fields.function(_get_balance, method=True, type='float', string='Uncleared - Deposits, Credits, and Interest Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = False", multi="balance"),
|
||||
'sum_of_ucredits_cur': fields.function(_get_balance, method=True, string='Uncleared - Checks, Withdrawals, Debits, and Service Charges Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total SUM of Amts of lines with Cleared = False",
|
||||
multi="balance"),
|
||||
'sum_of_udebits_cur': fields.function(_get_balance, method=True, type='float', string='Uncleared - Deposits, Credits, and Interest Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = False", multi="balance"),
|
||||
'sum_of_ucredits_lines': fields.function(_get_balance, method=True, string='Uncleared - Checks, Withdrawals, Debits, and Service Charges # of Items',
|
||||
type='float', help="Total of number of lines with Cleared = False",
|
||||
multi="balance"),
|
||||
'sum_of_udebits_lines': fields.function(_get_balance, method=True, type='float', string='Uncleared - Deposits, Credits, and Interest # of Items',
|
||||
help="Total of number of lines with Cleared = False", multi="balance"),
|
||||
'suppress_ending_date_filter': fields.boolean('Remove Ending Date Filter', help="If this is checked then the Statement End Date filter on the transactions below will not occur. All transactions would come over."),
|
||||
'state': fields.selection([
|
||||
name = fields.Char('Name', required=True, size=64, states={'done':[('readonly', True)]}, help="This is a unique name identifying the statement (e.g. Bank X January 2012).")
|
||||
account_id = fields.Many2one('account.account', 'Account', required=True,
|
||||
states={'done':[('readonly', True)]}, domain="[('company_id', '=', company_id)]",
|
||||
help="The Bank/Gl Account that is being reconciled.")
|
||||
ending_date = fields.Date('Ending Date', required=True, states={'done':[('readonly', True)]}, default=time.strftime('%Y-%m-%d'), help="The ending date of your bank statement.")
|
||||
last_ending_date = fields.Date('Last Stmt Date', help="The previous statement date of your bank statement.")
|
||||
starting_balance = fields.Float('Starting Balance', required=True, digits_compute=dp.get_precision('Account'), help="The Starting Balance on your bank statement.", states={'done':[('readonly', True)]})
|
||||
ending_balance = fields.Float('Ending Balance', required=True, digits_compute=dp.get_precision('Account'), help="The Ending Balance on your bank statement.", states={'done':[('readonly', True)]})
|
||||
company_id = fields.Many2one('res.company', 'Company', required=True, readonly=True,
|
||||
default=get_default_company_id,help="The Company for which the deposit ticket is made to")
|
||||
notes = fields.Text('Notes')
|
||||
verified_date = fields.Date('Verified Date', states={'done':[('readonly', True)]},
|
||||
help="Date in which Deposit Ticket was verified.")
|
||||
verified_by_user_id = fields.Many2one('res.users', 'Verified By', states={'done':[('readonly', True)]},
|
||||
help="Entered automatically by the “last user” who saved it. System generated.")
|
||||
credit_move_line_ids = fields.One2many('bank.acc.rec.statement.line', 'statement_id', 'Credits',
|
||||
domain=[('type','=','cr')], states={'done':[('readonly', True)]})
|
||||
debit_move_line_ids = fields.One2many('bank.acc.rec.statement.line', 'statement_id', 'Debits',
|
||||
domain=[('type','=','dr')], states={'done':[('readonly', True)]})
|
||||
cleared_balance = fields.Float(compute='_get_balance', string='Cleared Balance', digits_compute=dp.get_precision('Account'),
|
||||
help="Total Sum of the Deposit Amount Cleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Cleared")
|
||||
difference = fields.Float(compute='_get_balance', string='Difference', digits_compute=dp.get_precision('Account'),
|
||||
help="(Ending Balance – Beginning Balance) - Cleared Balance.")
|
||||
cleared_balance_cur = fields.Float(compute='_get_balance', string='Cleared Balance (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total Sum of the Deposit Amount Cleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Cleared")
|
||||
difference_cur = fields.Float(compute='_get_balance', string='Difference (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="(Ending Balance – Beginning Balance) - Cleared Balance.")
|
||||
uncleared_balance = fields.Float(compute='_get_balance', string='Uncleared Balance', digits_compute=dp.get_precision('Account'),
|
||||
help="Total Sum of the Deposit Amount Uncleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Uncleared")
|
||||
uncleared_balance_cur = fields.Float(compute='_get_balance', string='Unleared Balance (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total Sum of the Deposit Amount Uncleared – Total Sum of Checks, Withdrawals, Debits, and Service Charges Amount Uncleared")
|
||||
sum_of_credits = fields.Float(compute='_get_balance', string='Checks, Withdrawals, Debits, and Service Charges Amount', digits_compute=dp.get_precision('Account'),
|
||||
type='float', help="Total SUM of Amts of lines with Cleared = True")
|
||||
sum_of_debits = fields.Float(compute='_get_balance', string='Deposits, Credits, and Interest Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = True")
|
||||
sum_of_credits_cur = fields.Float(compute='_get_balance', string='Checks, Withdrawals, Debits, and Service Charges Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = True")
|
||||
sum_of_debits_cur = fields.Float(compute='_get_balance', string='Deposits, Credits, and Interest Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = True")
|
||||
sum_of_credits_lines = fields.Float(compute='_get_balance', string='Checks, Withdrawals, Debits, and Service Charges # of Items',
|
||||
help="Total of number of lines with Cleared = True")
|
||||
sum_of_debits_lines = fields.Float(compute='_get_balance', string='Deposits, Credits, and Interest # of Items',
|
||||
help="Total of number of lines with Cleared = True")
|
||||
sum_of_ucredits = fields.Float(compute='_get_balance', string='Uncleared - Checks, Withdrawals, Debits, and Service Charges Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = False")
|
||||
sum_of_udebits = fields.Float(compute='_get_balance', string='Uncleared - Deposits, Credits, and Interest Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = False")
|
||||
sum_of_ucredits_cur = fields.Float(compute='_get_balance', string='Uncleared - Checks, Withdrawals, Debits, and Service Charges Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = False")
|
||||
sum_of_udebits_cur = fields.Float(compute='_get_balance', string='Uncleared - Deposits, Credits, and Interest Amount (Cur)', digits_compute=dp.get_precision('Account'),
|
||||
help="Total SUM of Amts of lines with Cleared = False")
|
||||
sum_of_ucredits_lines = fields.Float(compute='_get_balance', string='Uncleared - Checks, Withdrawals, Debits, and Service Charges # of Items',
|
||||
help="Total of number of lines with Cleared = False")
|
||||
sum_of_udebits_lines = fields.Float(compute='_get_balance', string='Uncleared - Deposits, Credits, and Interest # of Items',
|
||||
help="Total of number of lines with Cleared = False")
|
||||
suppress_ending_date_filter = fields.Boolean('Remove Ending Date Filter', help="If this is checked then the Statement End Date filter on the transactions below will not occur. All transactions would come over.")
|
||||
state = fields.Selection([
|
||||
('draft','Draft'),
|
||||
('to_be_reviewed','Ready for Review'),
|
||||
('done','Done'),
|
||||
('cancel', 'Cancel')
|
||||
],'State', select=True, readonly=True),
|
||||
}
|
||||
_defaults = {
|
||||
'state': 'draft',
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
|
||||
'ending_date': time.strftime('%Y-%m-%d'),
|
||||
}
|
||||
],'State', select=True, readonly=True, default='draft')
|
||||
|
||||
_order = "ending_date desc"
|
||||
_sql_constraints = [
|
||||
('name_company_uniq', 'unique (name, company_id, account_id)', 'The name of the statement must be unique per company and G/L account!')
|
||||
]
|
||||
|
||||
|
||||
class bank_acc_rec_statement_line(osv.osv):
|
||||
class bank_acc_rec_statement_line(models.Model):
|
||||
_name = "bank.acc.rec.statement.line"
|
||||
_description = "Statement Line"
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=64, help="Derived from the related Journal Item.", required=True),
|
||||
'ref': fields.char('Reference', size=64, help="Derived from related Journal Item."),
|
||||
'partner_id': fields.many2one('res.partner', string='Partner', help="Derived from related Journal Item."),
|
||||
'amount': fields.float('Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Derived from the 'debit' amount from related Journal Item."),
|
||||
'amountcur': fields.float('Amount in Currency', digits_compute=dp.get_precision('Account'),
|
||||
help="Derived from the 'amount currency' amount from related Journal Item."),
|
||||
'date': fields.date('Date', required=True, help="Derived from related Journal Item."),
|
||||
'statement_id': fields.many2one('bank.acc.rec.statement', 'Statement', required=True, ondelete='cascade'),
|
||||
'move_line_id': fields.many2one('account.move.line', 'Journal Item', help="Related Journal Item."),
|
||||
'cleared_bank_account': fields.boolean('Cleared? ', help='Check if the transaction has cleared from the bank'),
|
||||
'research_required': fields.boolean('Research Required? ', help='Check if the transaction should be researched by Accounting personal'),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', help="The optional other currency if it is a multi-currency entry."),
|
||||
'type':fields.selection([('dr','Debit'),('cr','Credit')], 'Cr/Dr'),
|
||||
}
|
||||
name = fields.Char('Name', size=64, help="Derived from the related Journal Item.", required=True)
|
||||
ref = fields.Char('Reference', size=64, help="Derived from related Journal Item.")
|
||||
partner_id = fields.Many2one('res.partner', string='Partner', help="Derived from related Journal Item.")
|
||||
amount = fields.Float('Amount', digits_compute=dp.get_precision('Account'),
|
||||
help="Derived from the 'debit' amount from related Journal Item.")
|
||||
amountcur = fields.Float('Amount in Currency', digits_compute=dp.get_precision('Account'),
|
||||
help="Derived from the 'amount currency' amount from related Journal Item.")
|
||||
date = fields.Date('Date', required=True, help="Derived from related Journal Item.")
|
||||
statement_id = fields.Many2one('bank.acc.rec.statement', 'Statement', required=True, ondelete='cascade')
|
||||
move_line_id = fields.Many2one('account.move.line', 'Journal Item', help="Related Journal Item.")
|
||||
cleared_bank_account = fields.Boolean('Cleared? ', help='Check if the transaction has cleared from the bank')
|
||||
research_required = fields.Boolean('Research Required? ', help='Check if the transaction should be researched by Accounting personal')
|
||||
currency_id = fields.Many2one('res.currency', 'Currency', help="The optional other currency if it is a multi-currency entry.")
|
||||
type = fields.Selection([('dr','Debit'),('cr','Credit')], 'Cr/Dr')
|
||||
|
||||
def create(self, cr, uid, vals, context=None):
|
||||
account_move_line_obj = self.pool.get('account.move.line')
|
||||
@api.model
|
||||
def create(self, vals):
|
||||
account_move_line_obj = self.env['account.move.line']
|
||||
# Prevent manually adding new statement line.
|
||||
# This would allow only onchange method to pre-populate statement lines based on the filter rules.
|
||||
if not vals.get('move_line_id', False):
|
||||
raise osv.except_osv(_('Processing Error'),_('You cannot add any new bank statement line manually as of this revision!'))
|
||||
account_move_line_obj.write(cr, uid, [vals['move_line_id']], {'draft_assigned_to_statement': True}, context=context)
|
||||
return super(bank_acc_rec_statement_line, self).create(cr, uid, vals, context=context)
|
||||
|
||||
def unlink(self, cr, uid, ids, context=None):
|
||||
account_move_line_obj = self.pool.get('account.move.line')
|
||||
move_line_ids = [x.move_line_id.id for x in self.browse(cr, uid, ids, context=context) if x.move_line_id]
|
||||
raise UserError(_("You cannot add any new bank statement line manually as of this revision!"))
|
||||
account_move_line_obj.browse([vals['move_line_id']]).write({'draft_assigned_to_statement': True})
|
||||
return super(bank_acc_rec_statement_line, self).create(vals)
|
||||
|
||||
@api.model
|
||||
def unlink(self):
|
||||
account_move_line_obj = self.env['account.move.line']
|
||||
move_line_ids = [x.move_line_id.id for x in self if x.move_line_id]
|
||||
#map(lambda x: x.move_line_id.id if x.move_line_id, self.browse(cr, uid, ids, context=context))
|
||||
# Reset field values in move lines to be added later
|
||||
account_move_line_obj.write(cr, uid, move_line_ids, {'draft_assigned_to_statement': False,
|
||||
account_move_line_obj.browse(move_line_ids).write({'draft_assigned_to_statement': False,
|
||||
'cleared_bank_account': False,
|
||||
'bank_acc_rec_statement_id': False,
|
||||
}, context=context)
|
||||
return super(bank_acc_rec_statement_line, self).unlink(cr, uid, ids, context=context)
|
||||
})
|
||||
return super(bank_acc_rec_statement_line, self).unlink()
|
||||
|
||||
@@ -10,6 +10,6 @@ from odoo import fields, models
|
||||
class AccountMoveLine(models.Model):
|
||||
_inherit='account.move.line'
|
||||
|
||||
cleared_bank_account = fields.Boolean(string='Cleared? ', help='Check if the transaction has cleared from the bank'),
|
||||
bank_acc_rec_statement_id = fields.Many2one('bank.acc.rec.statement', string='Bank Acc Rec Statement', help="The Bank Acc Rec Statement linked with the journal item"),
|
||||
draft_assigned_to_statement = fields.Noolean(string='Assigned to Statement? ', help='Check if the move line is assigned to statement lines')
|
||||
cleared_bank_account = fields.Boolean(string='Cleared? ', help='Check if the transaction has cleared from the bank')
|
||||
bank_acc_rec_statement_id = fields.Many2one('bank.acc.rec.statement', string='Bank Acc Rec Statement', help="The Bank Acc Rec Statement linked with the journal item")
|
||||
draft_assigned_to_statement = fields.Boolean(string='Assigned to Statement? ', help='Check if the move line is assigned to statement lines')
|
||||
|
||||
@@ -1,750 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<document filename="bankstatement.pdf">
|
||||
<template title="Bank Statement-Detail" author="Ursa Information Systems(support@ursainfosystems.com)" allowSplitting="20">
|
||||
<pageTemplate id="first">
|
||||
<frame id="first" x1="34.0" y1="28.0" width="530" height="786"/>
|
||||
</pageTemplate>
|
||||
</template>
|
||||
<stylesheet>
|
||||
<blockTableStyle id="Standard_Outline">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table1">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="3,0" stop="3,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="4,0" stop="4,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="4,0" stop="4,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="5,0" stop="5,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="6,0" stop="6,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="6,0" stop="6,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="6,0" stop="6,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table4">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="3,0" stop="3,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="4,0" stop="4,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="4,0" stop="4,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="5,0" stop="5,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="6,0" stop="6,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="6,0" stop="6,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="7,0" stop="7,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="7,0" stop="7,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="7,0" stop="7,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="8,0" stop="8,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="8,0" stop="8,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="8,-1" stop="8,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="9,0" stop="9,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="9,0" stop="9,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="9,0" stop="9,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="9,-1" stop="9,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="10,0" stop="10,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="10,0" stop="10,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="10,-1" stop="10,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="11,0" stop="11,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="11,0" stop="11,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="11,0" stop="11,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="11,-1" stop="11,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="12,0" stop="12,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="12,0" stop="12,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="12,-1" stop="12,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="13,0" stop="13,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="13,0" stop="13,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="13,0" stop="13,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="13,-1" stop="13,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,1" stop="0,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,1" stop="1,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,2" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,2" stop="0,2"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,2" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,2" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,2" stop="1,2"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,3" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,3" stop="0,3"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,3" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,3" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,3" stop="1,3"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,4" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,4" stop="0,4"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,4" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,4" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,4" stop="1,4"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table7">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table9">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table10">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table11">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table2">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table3">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#999999" start="0,-1" stop="0,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table5">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table6">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table8-L">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="8,-1" stop="8,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table8">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="8,-1" stop="8,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table12">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#999999" start="0,-1" stop="0,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table13">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table14">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="8,-1" stop="8,-1"/>
|
||||
</blockTableStyle>
|
||||
<initialize>
|
||||
<paraStyle name="all" alignment="justify"/>
|
||||
</initialize>
|
||||
<paraStyle name="Standard" fontName="Helvetica"/>
|
||||
<paraStyle name="Heading" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Caption" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Index" fontName="Helvetica" fontSize="9.0" leading="11"/>
|
||||
<paraStyle name="Footer" fontName="Helvetica"/>
|
||||
<paraStyle name="Table Contents" fontName="Helvetica"/>
|
||||
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER"/>
|
||||
<paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
|
||||
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_8" fontName="Helvetica" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="7.0" leading="9" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="CENTER" spaceBefore="6.0" spaceAfter="3.0"/>
|
||||
<paraStyle name="terp_header_Centre11" fontName="Helvetica-Bold" fontSize="11.0" leading="15" alignment="CENTER" spaceBefore="6.0" spaceAfter="3.0"/>
|
||||
<paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="8.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_9_italic" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_9_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_2" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="Heading 3" fontName="Helvetica-Bold" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<images/>
|
||||
</stylesheet>
|
||||
<story>
|
||||
<pto>
|
||||
<para style="terp_default_8">[[ repeatIn(objects, 'stmt') ]]</para>
|
||||
<para style="terp_default_8">[[ setLang(stmt.lang) ]]</para>
|
||||
<pto_header>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="60.0,60.0,60.0,60.0,70.0,70.0,70.0,70.0" style="Table8">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_9">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details">Date</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Comment</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Partner</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Reference</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Cleared</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ company.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ stmt.account_id.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="70.0,70.0,70.0,70.0,80.0,80.0,80.0,80.0" style="Table8">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_9">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details">Date</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Comment</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Partner</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Reference</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Cleared</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ company.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ stmt.account_id.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
</pto_header>
|
||||
<section>
|
||||
<para style="terp_header_Centre">Reconciliation Detail </para>
|
||||
<para style="terp_header_Centre11"><b>Period Ending [[ (stmt.ending_date) or '' ]]</b></para>
|
||||
</section>
|
||||
<para style="terp_default_8">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<para style="terp_default_8">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="60.0,60.0,60.0,60.0,70.0,70.0,70.0,70.0" style="Table8">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details">Date</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Comment</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Partner</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Reference</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Cleared</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ company.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ stmt.account_id.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ stmt.account_id.currency_id and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="70.0,70.0,70.0,70.0,80.0,80.0,80.0" style="Table8">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details">Date</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Comment</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Centre">Partner</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Reference</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Cleared</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">Amount([[ company.currency_id.symbol ]])</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,210.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8">Initial Balance</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ stmt.starting_balance ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr/>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Cleared Transactions</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr/>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Deposits & Credits-[[ (stmt.sum_of_debits_lines) or '']] items</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ stmt.account_id.currency_id and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable rowHeights="0.55cm" colWidths="280.0,160.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8">Initial Balance</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ stmt.starting_balance ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr/>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Cleared Transactions</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr/>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Deposits & Credits-[[ (stmt.sum_of_debits_lines) or '']] items</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<para style="terp_default_8">[[ repeatIn(stmt.debit_move_line_ids, 'debit') ]]</para>
|
||||
<section> <para style="terp_default_8">[[ (not debit['cleared_bank_account']) and removeParentNode('section') ]]</para>
|
||||
<blockTable colWidths="60.0,60.0,60.0,60.0,70.0,70.0,70.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ formatLang(debit['date'],date=True) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ debit['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ debit['partner_id'].name or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ debit['ref'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ (debit['cleared_bank_account']) and 'X' or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ formatLang((debit['amount'])) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ formatLang((debit['amountcur'])) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ stmt.account_id.currency_id and removeParentNode('section') or '' ]]</para>
|
||||
<para style="terp_default_8">[[ repeatIn(stmt.debit_move_line_ids, 'debit') ]]</para>
|
||||
<section> <para style="terp_default_8">[[ (not debit['cleared_bank_account']) and removeParentNode('section') ]]</para>
|
||||
<blockTable colWidths="70.0,70.0,70.0,70.0,80.0,80.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ formatLang(debit['date'],date=True) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ debit['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ debit['partner_id'].name or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ debit['ref'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ (debit['cleared_bank_account']) and 'X' or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ formatLang((debit['amount'])) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="240.0,140.0,70.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Total Deposits & Credits</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_debits) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_debits_cur) or '']]</para></td>
|
||||
</tr>
|
||||
<tr/>
|
||||
</blockTable>
|
||||
<blockTable colWidths="240.0,210.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Checks & Payments-[[ (stmt.sum_of_credits_lines) or '']] items</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="280.0,160.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Total Deposits & Credits</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_debits) or '']]</para></td>
|
||||
</tr>
|
||||
<tr/>
|
||||
</blockTable>
|
||||
<blockTable colWidths="280.0,160.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Checks & Payments-[[ (stmt.sum_of_credits_lines) or '']] items</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<para style="terp_default_8">[[ repeatIn(stmt.credit_move_line_ids, 'credit') ]]</para>
|
||||
<blockTable colWidths="60.0,60.0,60.0,60.0,70.0,70.0,70.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ formatLang(credit['date'],date=True) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ credit['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ credit['partner_id'].name or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ credit['ref'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ (credit['cleared_bank_account']) and 'X' or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ formatLang((credit['amount'])) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ formatLang((credit['amountcur']))]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<para style="terp_default_8">[[ repeatIn(stmt.credit_move_line_ids, 'credit') ]]</para>
|
||||
<blockTable colWidths="70.0,70.0,70.0,70.0,80.0,80.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8"></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ formatLang(credit['date'],date=True) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ credit['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ credit['partner_id'].name or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ credit['ref'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ (credit['cleared_bank_account']) and 'X' or '' ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ formatLang((credit['amount'])) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="240.0,140.0,70.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Total Checks & Payments</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_credits) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_credits_cur) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable colWidths="240.0,140.0,70.0,70.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Total Cleared Transactions</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ formatLang(stmt.sum_of_debits - stmt.sum_of_credits) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ formatLang(stmt.sum_of_debits_cur - stmt.sum_of_credits_cur) or '']]</para></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Cleared Balance</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.cleared_balance) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.cleared_balance_cur) or '']]</para></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Ending Balance</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.ending_balance) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable colWidths="280.0,160.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Total Deposits and Credits</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_credits) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable colWidths="280.0,160.0,80.0">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Total Cleared Transactions</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ formatLang(stmt.sum_of_debits - stmt.sum_of_credits) or '']]</para></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Cleared Balance</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.cleared_balance) or '']]</para></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_Bold_9">Ending Balance</para>
|
||||
</td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.ending_balance) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
</pto>
|
||||
</story>
|
||||
</document>
|
||||
@@ -1,17 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<report
|
||||
id="bank_statement_detail"
|
||||
<!-- QWeb Reports -->
|
||||
<report
|
||||
id="bank_statement_detail"
|
||||
model="bank.acc.rec.statement"
|
||||
name="bank_statement_detail"
|
||||
string="Bank Statement-Detail"
|
||||
rml="npg_bank_account_reconciliation/bank_statement_detail.rml"
|
||||
attachment="'Detail Statement-'+(object.name)"/>
|
||||
<report
|
||||
id="bank_statement_summary"
|
||||
report_type="qweb-pdf"
|
||||
name="account_banking_reconciliation.report_bank_statement_detail"
|
||||
file="account_banking_reconciliation.report_bank_statement_detail"
|
||||
attachment="'Detail Statement-'+(object.name)+'.pdf'"
|
||||
/>
|
||||
<report
|
||||
id="bank_statement_summary"
|
||||
model="bank.acc.rec.statement"
|
||||
name="bank_statement_summary"
|
||||
string="Bank Statement-Summary"
|
||||
rml="npg_bank_account_reconciliation/bank_statement_summary.rml"
|
||||
attachment="'Summary Statement-'+(object.name)"/>
|
||||
report_type="qweb-pdf"
|
||||
name="account_banking_reconciliation.report_bank_statement_summary"
|
||||
file="account_banking_reconciliation.report_bank_statement_summary"
|
||||
attachment="'Summary Statement-'+(object.name)+'.pdf'"
|
||||
/>
|
||||
</odoo>
|
||||
|
||||
@@ -1,428 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<document filename="bankstatement.pdf">
|
||||
<template title="Bank Statement-Summary" author="Ursa Information Systems(support@ursainfosystems.com)" allowSplitting="20">
|
||||
<pageTemplate id="first">
|
||||
<frame id="first" x1="34.0" y1="28.0" width="530" height="786"/>
|
||||
</pageTemplate>
|
||||
</template>
|
||||
<stylesheet>
|
||||
<blockTableStyle id="Standard_Outline">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table1">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="3,0" stop="3,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="4,0" stop="4,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="4,0" stop="4,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="5,0" stop="5,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="6,0" stop="6,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="6,0" stop="6,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="6,0" stop="6,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table4">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="3,0" stop="3,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="4,0" stop="4,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="4,0" stop="4,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="5,0" stop="5,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="5,0" stop="5,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="6,0" stop="6,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="6,0" stop="6,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="7,0" stop="7,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="7,0" stop="7,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="7,0" stop="7,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="8,0" stop="8,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="8,0" stop="8,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="8,-1" stop="8,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="9,0" stop="9,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="9,0" stop="9,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="9,0" stop="9,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="9,-1" stop="9,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="10,0" stop="10,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="10,0" stop="10,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="10,-1" stop="10,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="11,0" stop="11,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="11,0" stop="11,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="11,0" stop="11,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="11,-1" stop="11,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="12,0" stop="12,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="12,0" stop="12,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="12,-1" stop="12,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="13,0" stop="13,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="13,0" stop="13,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="13,0" stop="13,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="13,-1" stop="13,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,1" stop="0,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,1" stop="1,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,2" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,2" stop="0,2"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,2" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,2" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,2" stop="1,2"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,3" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,3" stop="0,3"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,3" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,3" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,3" stop="1,3"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,4" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,4" stop="0,4"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,4" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,4" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,4" stop="1,4"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table7">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table9">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table10">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table11">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
|
||||
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table2">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table3">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#999999" start="0,-1" stop="0,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table5">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table6">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table8-L">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="8,-1" stop="8,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table8">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="8,-1" stop="8,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table12">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#999999" start="0,-1" stop="0,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table13">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table14">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="8,-1" stop="8,-1"/>
|
||||
</blockTableStyle>
|
||||
<initialize>
|
||||
<paraStyle name="all" alignment="justify"/>
|
||||
</initialize>
|
||||
<paraStyle name="Standard" fontName="Helvetica"/>
|
||||
<paraStyle name="Heading" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Caption" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Index" fontName="Helvetica" fontSize="9.0" leading="11"/>
|
||||
<paraStyle name="Footer" fontName="Helvetica"/>
|
||||
<paraStyle name="Table Contents" fontName="Helvetica"/>
|
||||
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER"/>
|
||||
<paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
|
||||
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_8" fontName="Helvetica" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="7.0" leading="9" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="CENTER" spaceBefore="6.0" spaceAfter="3.0"/>
|
||||
<paraStyle name="terp_header_Centre11" fontName="Helvetica-Bold" fontSize="11.0" leading="15" alignment="CENTER" spaceBefore="6.0" spaceAfter="3.0"/>
|
||||
<paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="8.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_9_italic" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_9_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_2" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="Heading 3" fontName="Helvetica-Bold" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<images/>
|
||||
</stylesheet>
|
||||
<story>
|
||||
<pto>
|
||||
<para style="terp_default_8">[[ repeatIn(objects, 'stmt') ]]</para>
|
||||
<para style="terp_default_8">[[ setLang(stmt.lang) ]]</para>
|
||||
<pto_header>
|
||||
</pto_header>
|
||||
<section>
|
||||
<para style="terp_header_Centre">Reconciliation Summary </para>
|
||||
<para style="terp_header_Centre11"><b>Period Ending [[ (stmt.ending_date) or '' ]]</b></para>
|
||||
</section>
|
||||
<para style="terp_default_8">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<para style="terp_default_8">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ (not stmt.account_id.currency_id) and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,210.0,70.0">
|
||||
<tr>
|
||||
<td><para style="terp_default_Bold_9">Initial Balance</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9_Right">[[ stmt.starting_balance ]]</para></td>
|
||||
</tr>
|
||||
<tr/>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="70.0,240.0,140.0,70.0">
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Cleared Transactions</para></td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="90.0,220.0,70.0,70.0,70.0">
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Deposits & Credits-[[ (stmt.sum_of_debits_lines) or '']] items</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_debits) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_debits_cur) or '']]</para></td>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Checks & Payments-[[ (stmt.sum_of_credits_lines) or '']] items</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_credits) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_credits_cur) or '']]</para></td>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="70.0,240.0,70.0,70.0,70.0">
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Total Cleared Transactions</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ formatLang(stmt.sum_of_debits - stmt.sum_of_credits) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ formatLang(stmt.sum_of_debits_cur - stmt.sum_of_credits_cur) or '']]</para></td>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,140.0,70.0,70.0">
|
||||
<tr>
|
||||
<td><para style="terp_default_Bold_9">Cleared Balance</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.cleared_balance) or '']]</para></td>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.cleared_balance_cur) or '']]</para></td>
|
||||
<td><para style="terp_default_Bold_9_Right">[[ (stmt.cleared_balance_cur) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,210.0,70.0">
|
||||
<tr>
|
||||
<td><para style="terp_default_Bold_9">Ending Balance</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9_Right">[[ (stmt.ending_balance) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
<section>
|
||||
<para style="terp_default_8">[[ stmt.account_id.currency_id and removeParentNode('section') or '' ]]</para>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,210.0,70.0">
|
||||
<tr>
|
||||
<td><para style="terp_default_Bold_9">Initial Balance</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9_Right">[[ stmt.starting_balance ]]</para></td>
|
||||
</tr>
|
||||
<tr/>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="70.0,240.0,140.0,70.0">
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Cleared Transactions</para></td>
|
||||
<td/>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="90.0,220.0,70.0,70.0,70.0">
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Deposits & Credits-[[ (stmt.sum_of_debits_lines) or '']] items</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_debits) or '']]</para></td>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Checks & Payments-[[ (stmt.sum_of_credits_lines) or '']] items</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.sum_of_credits) or '']]</para></td>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="70.0,240.0,70.0,70.0,70.0">
|
||||
<tr>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9">Total Cleared Transactions</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ formatLang(stmt.sum_of_debits - stmt.sum_of_credits) or '']]</para></td>
|
||||
<td/>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,140.0,70.0,70.0">
|
||||
<tr>
|
||||
<td><para style="terp_default_Bold_9">Cleared Balance</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Right_8">[[ (stmt.cleared_balance) or '']]</para></td>
|
||||
<td><para style="terp_default_Bold_9_Right">[[ (stmt.cleared_balance) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<blockTable rowHeights="0.55cm" colWidths="240.0,210.0,70.0">
|
||||
<tr>
|
||||
<td><para style="terp_default_Bold_9">Ending Balance</para></td>
|
||||
<td/>
|
||||
<td><para style="terp_default_Bold_9_Right">[[ (stmt.ending_balance) or '']]</para></td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
</section>
|
||||
</pto>
|
||||
</story>
|
||||
</document>
|
||||
@@ -25,22 +25,22 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="Bank Account Reconciliation Statement" version="7.0">
|
||||
<header>
|
||||
<button name="action_cancel" type="object" states="draft,to_be_reviewed" string="Cancel" icon="gtk-cancel"/>
|
||||
<button name="action_review" type="object" states="draft" string="Ready for Review" icon="gtk-go-forward"/>
|
||||
<button name="action_process" type="object" states="to_be_reviewed" string="Process" icon="gtk-apply"/>
|
||||
<button name="action_cancel_draft" states="cancel,done" string="Set to Draft" type="object" icon="gtk-convert"/>
|
||||
<button name="action_cancel" type="object" states="draft,to_be_reviewed" string="Cancel" icon="fa-ban"/>
|
||||
<button name="action_review" type="object" states="draft" string="Ready for Review" icon="fa-forward"/>
|
||||
<button name="action_process" type="object" states="to_be_reviewed" string="Process"/>
|
||||
<button name="action_cancel_draft" states="cancel,done" string="Set to Draft" type="object"/>
|
||||
<button name='refresh_record' string='Refresh' confirm="Current edits in statement will be lost. Do you want to refresh?" states="draft" type='object'/>
|
||||
<field name="state" widget="statusbar" nolabel="1"/>
|
||||
</header>
|
||||
<sheet>
|
||||
<group col="4" colspan="4">
|
||||
<field name="account_id" placeholder="Enter Account Name" on_change="onchange_account_id(account_id, ending_date, suppress_ending_date_filter)"/>
|
||||
<field name="account_id" placeholder="Enter Account Name"/>
|
||||
<field name="name" placeholder="Enter Name"/>
|
||||
<field name="ending_date" placeholder="Enter ending date" on_change="onchange_account_id(account_id, ending_date, suppress_ending_date_filter)"/>
|
||||
<field name="ending_date" placeholder="Enter ending date"/>
|
||||
<field name="starting_balance" placeholder="Enter Starting Balance"/>
|
||||
<field name="ending_balance" placeholder="Enter Ending Balance"/>
|
||||
<field name="last_ending_date" placeholder="Last Statement Date" readonly="1"/>
|
||||
<field name="suppress_ending_date_filter" on_change="onchange_account_id(account_id, ending_date, suppress_ending_date_filter)"/>
|
||||
<field name="suppress_ending_date_filter"/>
|
||||
<field name="company_id" groups="base.group_multi_company" placeholder="Enter Company Name"/>
|
||||
</group>
|
||||
<notebook colspan="5">
|
||||
@@ -97,7 +97,7 @@
|
||||
<field name="move_line_id" readonly="1"/>
|
||||
</tree>
|
||||
</field>
|
||||
<group col="2" colspan="1" groups="ursa_npg_bank_account_reconciliation.group_bank_stmt_verifier">
|
||||
<group col="2" colspan="1" groups="account_banking_reconciliation.group_bank_stmt_verifier">
|
||||
<button name="action_select_all" confirm="Current edits in statement will be lost. Do you want to select all?" type="object" states="draft,to_be_reviewed" string="Select All" icon="gtk-go-forward"/>
|
||||
<button name="action_unselect_all" confirm="Current edits in statement will be lost. Do you want to unselect all?" type="object" states="draft,to_be_reviewed" string="Unselect All" icon="gtk-cancel"/>
|
||||
</group>
|
||||
@@ -190,15 +190,15 @@
|
||||
<field name="search_view_id" ref="view_bank_acc_rec_statement_filter"/>
|
||||
</record>
|
||||
|
||||
<record id="account.menu_bank_statement_tree" model="ir.ui.menu">
|
||||
<field name="groups_id" eval="[(4,ref('base.group_system'))]"/>
|
||||
</record>
|
||||
<!-- <record id="account.menu_bank_statement_tree" model="ir.ui.menu"> -->
|
||||
<!-- <field name="groups_id" eval="[(4,ref('base.group_system'))]"/> -->
|
||||
<!-- </record> -->
|
||||
|
||||
<menuitem
|
||||
icon="STOCK_JUSTIFY_FILL"
|
||||
action="action_bank_acc_rec_statement"
|
||||
id="npg_bank_acc_rec_statement_menu"
|
||||
parent="account.menu_finance_bank_and_cash"
|
||||
parent="account.menu_finance_configuration"
|
||||
sequence="5"/>
|
||||
|
||||
<act_window
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<field name="inherit_id" ref="account.view_account_move_line_filter"/>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<field name="period_id" position="after">
|
||||
<field name="move_id" position="after">
|
||||
<field name="bank_acc_rec_statement_id"/>
|
||||
</field>
|
||||
<field name="move_id" position="before">
|
||||
|
||||
@@ -0,0 +1,271 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data>
|
||||
<template id="report_bank_statement_detail_doc">
|
||||
<t t-call="report.external_layout">
|
||||
<t t-set="o" t-value="o.with_context({'lang':o.company_id.partner_id.lang})" />
|
||||
<div class="page">
|
||||
<h2 style='text-align:center;'>
|
||||
Reconciliation Detail
|
||||
</h2>
|
||||
<h5 style='text-align:center;'>
|
||||
<span >Period Ending</span>
|
||||
<span t-field="o.ending_date"/>
|
||||
</h5>
|
||||
|
||||
<div class="row">
|
||||
<table class="table table-condensed" t-if="not o.account_id.currency_id">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>Date</th>
|
||||
<th class="text-center">Comment</th>
|
||||
<th class="text-center">Partner</th>
|
||||
<th class="text-right">Reference</th>
|
||||
<th class="text-right">Cleared</th>
|
||||
<th class="text-right"><span t-field="o.company_id.currency_id.symbol"/></th>
|
||||
<th class="text-right"><span t-field="o.account_id.currency_id.symbol"/></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<table class="table table-condensed" t-if="o.account_id.currency_id">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>Date</th>
|
||||
<th class="text-center">Comment</th>
|
||||
<th class="text-center">Partner</th>
|
||||
<th class="text-right">Reference</th>
|
||||
<th class="text-right">Cleared</th>
|
||||
<th class="text-right"><span t-field="o.company_id.currency_id.symbol"/></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
<table class="table table-condensed" t-if="not o.account_id.currency_id">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Initial Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.starting_balance"
|
||||
/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Cleared Transactions</span></b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Deposits & Credits-</span><span t-field="o.sum_of_debits_lines"/>items</b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" t-if="o.account_id.currency_id">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Initial Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.starting_balance"
|
||||
/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Cleared Transactions</span></b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Deposits & Credits-</span><span t-field="o.sum_of_debits_lines"/>items</b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" t-if="not o.account_id.currency_id">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr t-foreach="o.debit_move_line_ids" t-as="debit" t-if="debit.cleared_bank_account">
|
||||
<td></td>
|
||||
<td><span t-field="debit.date"/></td>
|
||||
<td><span t-field="debit.name"/></td>
|
||||
<td><span t-field="debit.partner_id.name"/></td>
|
||||
<td><span t-field="debit.ref"/></td>
|
||||
<td class="text-right"><span t-esc="debit.cleared_bank_account and 'X' or ''"/></td>
|
||||
<td class="text-right"><span t-field="debit.amount"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right">
|
||||
<span t-field="debit.amountcur"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" t-if="o.account_id.currency_id">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr t-foreach="o.debit_move_line_ids" t-as="debit" t-if="debit.cleared_bank_account">
|
||||
<td></td>
|
||||
<td><span t-field="debit.date"/></td>
|
||||
<td><span t-field="debit.name"/></td>
|
||||
<td><span t-field="debit.partner_id.name"/></td>
|
||||
<td><span t-field="debit.ref"/></td>
|
||||
<td class="text-right"><span t-esc="debit.cleared_bank_account and 'X' or ''"/></td>
|
||||
<td class="text-right"><span t-field="debit.amount"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div t-if="not o.account_id.currency_id">
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Total Deposits & Credits</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_debits" t-field="o.sum_of_debits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_debits_cur" t-field="o.sum_of_debits_cur" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Checks & Payments-</span><span t-field="o.sum_of_credits_lines"/>items</b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div t-if="o.account_id.currency_id">
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Total Deposits & Credits</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_debits" t-field="o.sum_of_debits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Checks & Payments-</span><span t-field="o.sum_of_credits_lines"/>items</b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<table class="table table-condensed" t-if="not o.account_id.currency_id">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr t-foreach="o.credit_move_line_ids" t-as="credit" t-if="credit.cleared_bank_account">
|
||||
<td></td>
|
||||
<td><span t-field="credit.date"/></td>
|
||||
<td><span t-field="credit.name"/></td>
|
||||
<td><span t-field="credit.partner_id.name"/></td>
|
||||
<td><span t-field="credit.ref"/></td>
|
||||
<td class="text-right"><span t-esc="credit.cleared_bank_account and 'X' or ''"/></td>
|
||||
<td class="text-right"><span t-field="credit.amount"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right">
|
||||
<span t-field="credit.amountcur"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" t-if="o.account_id.currency_id">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr t-foreach="o.credit_move_line_ids" t-as="credit" t-if="credit.cleared_bank_account">
|
||||
<td></td>
|
||||
<td><span t-field="credit.date"/></td>
|
||||
<td><span t-field="credit.name"/></td>
|
||||
<td><span t-field="credit.partner_id.name"/></td>
|
||||
<td><span t-field="credit.ref"/></td>
|
||||
<td class="text-right"><span t-esc="credit.cleared_bank_account and 'X' or ''"/></td>
|
||||
<td class="text-right"><span t-field="credit.amount"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div t-if="not o.account_id.currency_id">
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Total Checks & Payments</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_credits" t-field="o.sum_of_credits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_credits_cur" t-field="o.sum_of_credits_cur" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Total Cleared Transactions</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-esc="o.sum_of_debits - o.sum_of_credits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-esc="o.sum_of_debits_cur - o.sum_of_credits_cur" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Cleared Balance</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance_cur" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Ending Balance</span></b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-field="o.ending_balance" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div t-if="o.account_id.currency_id">
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Total Deposits & Credits</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_credits" t-field="o.sum_of_credits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Total Cleared Transactions</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-esc="o.sum_of_debits - o.sum_of_credits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Cleared Balance</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><span>Ending Balance</span></b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-field="o.ending_balance" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
</template>
|
||||
|
||||
<template id="report_bank_statement_detail">
|
||||
<t t-call="report.html_container">
|
||||
<t t-foreach="docs" t-as="o">
|
||||
<t t-call="account_banking_reconciliation.report_bank_statement_detail_doc" t-lang="o.company_id.partner_id.lang"/>
|
||||
</t>
|
||||
</t>
|
||||
</template>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -0,0 +1,190 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data>
|
||||
<template id="report_bank_statement_summary_doc">
|
||||
<t t-call="report.external_layout">
|
||||
<t t-set="o" t-value="o.with_context({'lang':o.company_id.partner_id.lang})" />
|
||||
<div class="page">
|
||||
<h2 style='text-align:center;'>
|
||||
Reconciliation Summary
|
||||
</h2>
|
||||
<h5 style='text-align:center;'>
|
||||
<span >Period Ending</span>
|
||||
<span t-field="o.ending_date"/>
|
||||
</h5>
|
||||
|
||||
<div class="row" t-if="not o.account_id.currency_id">
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Initial Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.starting_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Deposits & Credits-</span><span t-field="o.sum_of_debits_lines"/>items</b></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_debits" t-field="o.sum_of_debits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_debits_cur" t-field="o.sum_of_debits_cur" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Checks & Payments-</span><span t-field="o.sum_of_credits_lines"/>items</b></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_credits" t-field="o.sum_of_credits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_credits_cur" t-field="o.sum_of_credits_cur" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Total Cleared Transactions</span></b></td>
|
||||
<td class="text-right"><span t-esc="o.sum_of_debits - o.sum_of_credits"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-esc="o.sum_of_debits_cur - o.sum_of_credits_cur"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Cleared Balance</span></b></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance_cur"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><b><span t-field="o.cleared_balance_cur"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></b></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Ending Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.ending_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="row" t-if="o.account_id.currency_id">
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Initial Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.starting_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Ending Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.ending_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Cleared Transactions</span></b></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed">
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Deposits & Credits-</span><span t-field="o.sum_of_debits_lines"/>items</b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_debits" t-field="o.sum_of_debits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Checks & Payments-</span><span t-field="o.sum_of_credits_lines"/>items</b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-if="o.sum_of_credits" t-field="o.sum_of_credits" t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td><b><span>Total Cleared Transactions</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-esc="o.sum_of_debits - o.sum_of_credits"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Cleared Balance</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
<td class="text-right"><span t-field="o.cleared_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table table-condensed" >
|
||||
<tbody class="invoice_tbody">
|
||||
<tr>
|
||||
<td><b><span>Ending Balance:</span></b></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
<span t-field="o.ending_balance"
|
||||
t-options='{"widget": "monetary", "display_currency": o.account_id.currency_id}'/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</t>
|
||||
</template>
|
||||
|
||||
<template id="report_bank_statement_summary">
|
||||
<t t-call="report.html_container">
|
||||
<t t-foreach="docs" t-as="o">
|
||||
<t t-call="account_banking_reconciliation.report_bank_statement_summary_doc" t-lang="o.company_id.partner_id.lang"/>
|
||||
</t>
|
||||
</t>
|
||||
</template>
|
||||
</data>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user