[ADD] npg_bank_account_reconciliation: add report detailed_reconciliation.mako and summary_reconciliation.mako

This commit is contained in:
Mathieu Benoit
2014-05-27 11:51:04 -04:00
committed by Sandy Carter
parent 1e662cc694
commit ef6e8add72
7 changed files with 699 additions and 9 deletions

View File

@@ -22,5 +22,4 @@
import npg_bank_account_reconciliation
import account_move_line
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
import report

View File

@@ -96,19 +96,19 @@ Contributors
""",
'author': 'NovaPoint Group LLC',
'website': ' http://www.novapointgroup.com',
'depends': ['account_voucher'],
'depends': [
'account_voucher',
'report_webkit',
],
'init_xml': [],
'update_xml': ["security/npg_bank_account_reconciliation_security.xml",
"security/ir.model.access.csv",
"npg_bank_account_reconciliation_view.xml",
"account_move_line_view.xml"],
'demo_xml': [],
'data': [
'report/report.xml',
],
'installable': True,
'active': False,
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2011 NovaPoint Group LLC (<http://www.novapointgroup.com>)
# Copyright (C) 2004-2010 OpenERP SA (<http://www.openerp.com>)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>
#
##############################################################################
import reconciliation

View File

@@ -0,0 +1,444 @@
<html>
<head>
<style type="text/css">
table {
page-break-inside:auto
}
table tr {
page-break-inside:avoid;
page-break-after:auto;
}
thead {
display:table-header-group;
}
.important_number_table {
font-weight:bold;
font-size: 110%;
}
.cell {
border:none;
}
.left_col {
width:40%;
}
.col_header {
}
.right_col_sum {
width:20%;
text-align:right;
}
.right_col {
text-align:right;
}
.second_line {
padding-left:3em;
}
.third_line {
padding-left:6em;
}
.line_sum {
border-style:solid;
border-width:0px;
border-bottom-width:5px;
}
.first_item {
text-align:center;
border-style:solid;
border-width:0px;
border-bottom-width:8px;
}
${css}
</style>
</head>
<body>
%for rec in objects:
<table style="width:100%;">
<tr>
<td class="cell left_col first_item important_number_table"
colspan="6">
${_("Detailed %s account:") % rec.name} ${rec.account_id.code} -
${rec.account_id.name}
</td>
</tr>
</table>
<table style="width:100%;font-size:70%;">
<thead>
<tr>
<td>
</td>
<td class="line_sum">
${_("Date")}
</td>
<td class="line_sum">
${_("Name")}
</td>
<td class="line_sum">
${_("Reference")}
</td>
<td class="line_sum">
${_("Partner")}
</td>
<td class="line_sum">
${_("Amount")}
</td>
</tr>
</thead>
<tr>
<td class="left_col cell">
${_("Beginning Balance")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col">
${formatLang(rec.starting_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Cleared Transactions")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col">
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Cheques and Payments")}${" - %s " % int(rec.sum_of_debits_lines)}${_("items")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col">
${formatLang(rec.sum_of_debits, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%for rec_line in [line for line in rec.debit_move_line_ids if line.cleared_bank_account]:
<tr>
<td class="cell third_line left_col">
</td>
<td class="col_header">
${rec_line.date}
</td>
<td class="col_header">
${rec_line.name}
</td>
<td class="col_header">
${rec_line.ref}
</td>
<td class="col_header">
${rec_line.partner_id.name}
</td>
<td class="cell right_col">
${formatLang(rec_line.amount, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%endfor
<tr>
<td class="cell third_line left_col">
${_("Deposits and Credits")}${" - %s " % int(rec.sum_of_credits_lines)}${_("items")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell line_sum right_col">
${formatLang(-rec.sum_of_credits, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%for rec_line in [line for line in rec.credit_move_line_ids if line.cleared_bank_account]:
<tr>
<td class="cell third_line left_col">
</td>
<td class="col_header">
${rec_line.date}
</td>
<td class="col_header">
${rec_line.name}
</td>
<td class="col_header">
${rec_line.ref}
</td>
<td class="col_header">
${rec_line.partner_id.name}
</td>
<td class="cell right_col">
${formatLang(rec_line.amount, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%endfor
<tr>
<td class="cell second_line left_col">
${_("Total Cleared Transactions")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col line_sum">
${formatLang(rec.cleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell left_col">
${_("Cleared Balance")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell important_number_table right_col">
${formatLang(rec.cleared_balance + rec.starting_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Uncleared Transactions")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col">
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Cheques and Payments")}${" - %s " % int(rec.sum_of_debits_lines_unclear)}${_("items")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col">
${formatLang(rec.sum_of_debits_unclear, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%for rec_line in [line for line in rec.debit_move_line_ids if not line.cleared_bank_account]:
<tr>
<td class="cell third_line left_col">
</td>
<td class="col_header">
${rec_line.date}
</td>
<td class="col_header">
${rec_line.name}
</td>
<td class="col_header">
${rec_line.ref}
</td>
<td class="col_header">
${rec_line.partner_id.name}
</td>
<td class="cell right_col">
${formatLang(rec_line.amount, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%endfor
<tr>
<td class="cell third_line left_col">
${_("Deposits and Credits")}${" - %s " % int(rec.sum_of_credits_lines_unclear)}${_("items")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col line_sum">
${formatLang(-rec.sum_of_credits_unclear, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%for rec_line in [line for line in rec.credit_move_line_ids if not line.cleared_bank_account]:
<tr>
<td class="cell third_line left_col">
</td>
<td class="col_header">
${rec_line.date}
</td>
<td class="col_header">
${rec_line.name}
</td>
<td class="col_header">
${rec_line.ref}
</td>
<td class="col_header">
${rec_line.partner_id.name}
</td>
<td class="cell right_col">
${formatLang(rec_line.amount, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
%endfor
<tr>
<td class="cell second_line left_col">
${_("Total Uncleared Transactions")}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell right_col line_sum">
${formatLang(rec.uncleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell left_col">
${_("Register Balance as of")}${" %s" % formatLang(rec.ending_date, date=True, currency_obj=rec.company_id.currency_id)}
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="col_header">
</td>
<td class="cell important_number_table right_col">
${formatLang(rec.starting_balance + rec.cleared_balance + rec.uncleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
</table>
<table style="width:100%">
<tr>
<td class="cell left_col first_item important_number_table"
colspan="2">
${_("Summary %s account:") % rec.name} ${rec.account_id.code} -
${rec.account_id.name}
</td>
</tr>
<tr>
<td class="left_col cell">
${_("Beginning Balance")}
</td>
<td class="cell right_col_sum">
${formatLang(rec.starting_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Cleared Transactions")}
</td>
<td class="cell right_col_sum">
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Cheques and Payments")}${" - %s " % int(rec.sum_of_debits_lines)}${_("items")}
</td>
<td class="cell right_col_sum">
${formatLang(rec.sum_of_debits, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Deposits and Credits")}${" - %s " % int(rec.sum_of_credits_lines)}${_("items")}
</td>
<td class="cell line_sum right_col_sum">
${formatLang(-rec.sum_of_credits, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Total Cleared Transactions")}
</td>
<td class="cell right_col_sum line_sum">
${formatLang(rec.cleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell left_col">
${_("Cleared Balance")}
</td>
<td class="cell important_number_table right_col_sum">
${formatLang(rec.cleared_balance + rec.starting_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Uncleared Transactions")}
</td>
<td class="cell right_col_sum">
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Cheques and Payments")}${" - %s " % int(rec.sum_of_debits_lines_unclear)}${_("items")}
</td>
<td class="cell right_col_sum">
${formatLang(rec.sum_of_debits_unclear, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Deposits and Credits")}${" - %s " % int(rec.sum_of_credits_lines_unclear)}${_("items")}
</td>
<td class="cell right_col_sum line_sum">
${formatLang(-rec.sum_of_credits_unclear, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Total Uncleared Transactions")}
</td>
<td class="cell right_col_sum line_sum">
${formatLang(rec.uncleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell left_col">
${_("Register Balance as of")}${" %s" % formatLang(rec.ending_date, date=True, currency_obj=rec.company_id.currency_id)}
</td>
<td class="cell important_number_table right_col_sum">
${formatLang(rec.starting_balance + rec.cleared_balance + rec.uncleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
</table>
%endfor
</body>
</html>

View File

@@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2011 NovaPoint Group LLC (<http://www.novapointgroup.com>)
# Copyright (C) 2004-2010 OpenERP SA (<http://www.openerp.com>)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>
#
##############################################################################
from openerp.report import report_sxw
class Reconciliation(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context=None):
super(Reconciliation, self).__init__(cr, uid, name, context=context)
report_sxw.report_sxw(
'report.detailed.reconciliation.webkit',
'bank.acc.rec.statement',
'addons/deposit_ticket_report_webkit/report/detailed_reconciliation.mako',
parser=Reconciliation,
)
report_sxw.report_sxw(
'report.summary.reconciliation.webkit',
'bank.acc.rec.statement',
'addons/deposit_ticket_report_webkit/report/summary_reconciliation.mako',
parser=Reconciliation
)

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<report id="report_reconciliation_summary"
model="bank.acc.rec.statement"
auto="False"
name="detailed.reconciliation.webkit"
file="npg_bank_account_reconciliation/report/detailed_reconciliation.mako"
string="Reconciliation detailed"
report_type="webkit"/>
<report id="report_reconciliation_detailed"
model="bank.acc.rec.statement"
auto="False"
name="summary.reconciliation.webkit"
file="npg_bank_account_reconciliation/report/summary_reconciliation.mako"
string="Reconciliation summary"
report_type="webkit"/>
</data>
</openerp>

View File

@@ -0,0 +1,160 @@
<html>
<head>
<style type="text/css">
table {
page-break-inside:auto
}
table tr {
page-break-inside:avoid; page-break-after:auto;
}
.important_number_table
{
font-weight:bold;
font-size: 110%;
}
.cell
{
border:none;
}
.left_col
{
width:40%;
}
.col_header
{
}
.right_col_sum
{
width:20%;
text-align:right;
}
.right_col
{
text-align:right;
}
.second_line
{
padding-left:3em;
}
.third_line
{
padding-left:6em;
}
.line_sum
{
border-style:solid;
border-width:0px;
border-bottom-width:5px;
}
.first_item
{
text-align:center;
border-style:solid;
border-width:0px;
border-bottom-width:8px;
}
${css}
</style>
</head>
<body>
%for rec in objects:
<table style="width:100%">
<tr>
<td class="cell left_col first_item important_number_table"
colspan="2">
${_("Summary account:")} ${rec.account_id.code} -
${rec.account_id.name}
</td>
</tr>
<tr>
<td class="left_col cell">
${_("Beginning Balance")}
</td>
<td class="cell right_col_sum">
${formatLang(rec.starting_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Cleared Transactions")}
</td>
<td class="cell right_col_sum">
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Cheques and Payments")}${" - %s " % int(rec.sum_of_debits_lines)}${_("items")}
</td>
<td class="cell right_col_sum">
${formatLang(rec.sum_of_debits, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Deposits and Credits")}${" - %s " % int(rec.sum_of_credits_lines)}${_("items")}
</td>
<td class="cell line_sum right_col_sum">
${formatLang(-rec.sum_of_credits, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Total Cleared Transactions")}
</td>
<td class="cell right_col_sum line_sum">
${formatLang(rec.cleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell left_col">
${_("Cleared Balance")}
</td>
<td class="cell important_number_table right_col_sum">
${formatLang(rec.cleared_balance + rec.starting_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Uncleared Transactions")}
</td>
<td class="cell right_col_sum">
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Cheques and Payments")}${" - %s " % int(rec.sum_of_debits_lines_unclear)}${_("items")}
</td>
<td class="cell right_col_sum">
${formatLang(rec.sum_of_debits_unclear, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell third_line left_col">
${_("Deposits and Credits")}${" - %s " % int(rec.sum_of_credits_lines_unclear)}${_("items")}
</td>
<td class="cell right_col_sum line_sum">
${formatLang(-rec.sum_of_credits_unclear, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell second_line left_col">
${_("Total Uncleared Transactions")}
</td>
<td class="cell right_col_sum line_sum">
${formatLang(rec.uncleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
<tr>
<td class="cell left_col">
${_("Register Balance as of")}${" %s" % formatLang(rec.ending_date, date=True, currency_obj=rec.company_id.currency_id)}
</td>
<td class="cell important_number_table right_col_sum">
${formatLang(rec.starting_balance + rec.cleared_balance + rec.uncleared_balance, monetary=True, currency_obj=rec.company_id.currency_id)}
</td>
</tr>
</table>
%endfor
</body>
</html>