diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py
index 8e79376aa87..4422537007f 100644
--- a/addons/account/account_bank_statement.py
+++ b/addons/account/account_bank_statement.py
@@ -486,6 +486,19 @@ class account_bank_statement(osv.osv):
default['move_line_ids'] = []
return super(account_bank_statement, self).copy(cr, uid, id, default, context=context)
+ def button_journal_entries(self, cr, uid, ids, context=None):
+ ctx = (context or {}).copy()
+ ctx['journal_id'] = self.browse(cr, uid, ids[0], context=context).journal_id.id
+ return {
+ 'view_type':'form',
+ 'view_mode':'tree',
+ 'res_model':'account.move.line',
+ 'view_id':False,
+ 'type':'ir.actions.act_window',
+ 'domain':[('statement_id','in',ids)],
+ 'context':ctx,
+ }
+
account_bank_statement()
class account_bank_statement_line(osv.osv):
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 4ef50a3a62d..f7d64f43405 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -302,7 +302,7 @@
[('parent_id','=',False)]
-
+
Unrealized Gain or Loss
account.account
@@ -322,7 +322,7 @@
-
+
Unrealized Gain or Loss
account.account
form
@@ -650,7 +650,7 @@
-
+
@@ -661,7 +661,7 @@
-
+
@@ -671,15 +671,24 @@
-
-
-
+
+ account.bank.statement.journal.items.form.inherit
+ account.bank.statement
+
+
+
+
+
+
+
Bank Statements
@@ -1055,7 +1064,7 @@
-
+
account.move.line.tree
account.move.line
@@ -1850,7 +1859,7 @@
-
+
account.subscription.search
account.subscription
diff --git a/addons/account_analytic_plans/account_analytic_plans_view.xml b/addons/account_analytic_plans/account_analytic_plans_view.xml
index 0b0142ef223..e5c02c8640e 100644
--- a/addons/account_analytic_plans/account_analytic_plans_view.xml
+++ b/addons/account_analytic_plans/account_analytic_plans_view.xml
@@ -276,7 +276,7 @@
-
+
account.analytic.default.tree.plans
account.analytic.default
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index 650496e110e..b0c53b72835 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -267,6 +267,7 @@ class account_voucher(osv.osv):
_order = "date desc, id desc"
# _rec_name = 'number'
_columns = {
+ 'active': fields.boolean('Active', help="By default, reconciliation vouchers made on draft bank statements are set as inactive, which allow to hide the customer/supplier payment while the bank statement isn't confirmed."),
'type':fields.selection([
('sale','Sale'),
('purchase','Purchase'),
@@ -328,6 +329,7 @@ class account_voucher(osv.osv):
'is_multi_currency': fields.boolean('Multi Currency Voucher', help='Fields with internal purpose only that depicts if the voucher is a multi currency one or not'),
}
_defaults = {
+ 'active': True,
'period_id': _get_period,
'partner_id': _get_partner,
'journal_id':_get_journal,
@@ -1507,6 +1509,15 @@ account_voucher_line()
class account_bank_statement(osv.osv):
_inherit = 'account.bank.statement'
+ def button_confirm_bank(self, cr, uid, ids, context=None):
+ voucher_obj = self.pool.get('account.voucher')
+ voucher_ids = []
+ for statement in self.browse(cr, uid, ids, context=context):
+ voucher_ids += [line.voucher_id.id for line in statement.line_ids if line.voucher_id]
+ if voucher_ids:
+ voucher_obj.write(cr, uid, voucher_ids, {'active': True}, context=context)
+ return super(account_bank_statement, self).button_confirm_bank(cr, uid, ids, context=context)
+
def button_cancel(self, cr, uid, ids, context=None):
voucher_obj = self.pool.get('account.voucher')
for st in self.browse(cr, uid, ids, context=context):
@@ -1542,6 +1553,16 @@ account_bank_statement()
class account_bank_statement_line(osv.osv):
_inherit = 'account.bank.statement.line'
+ def onchange_partner_id(self, cr, uid, ids, partner_id, context=None):
+ res = super(account_bank_statement_line, self).onchange_partner_id(cr, uid, ids, partner_id, context=context)
+ if 'value' not in res:
+ res['value'] = {}
+ res['value'].update({'voucher_id' : False})
+ return res
+
+ def onchange_amount(self, cr, uid, ids, amount, context=None):
+ return {'value' : {'voucher_id' : False}}
+
def _amount_reconciled(self, cursor, user, ids, name, args, context=None):
if not ids:
return {}
@@ -1568,7 +1589,7 @@ class account_bank_statement_line(osv.osv):
_columns = {
'amount_reconciled': fields.function(_amount_reconciled,
string='Amount reconciled', type='float'),
- 'voucher_id': fields.many2one('account.voucher', 'Payment'),
+ 'voucher_id': fields.many2one('account.voucher', 'Reconciliation'),
}
def unlink(self, cr, uid, ids, context=None):
diff --git a/addons/account_voucher/account_voucher_view.xml b/addons/account_voucher/account_voucher_view.xml
index babe60b640e..2cb393f4008 100644
--- a/addons/account_voucher/account_voucher_view.xml
+++ b/addons/account_voucher/account_voucher_view.xml
@@ -200,33 +200,29 @@
-
+
account.bank.statement.voucher.tree.inherit
account.bank.statement
-
+
+
+
+
+
+ onchange_amount(amount)
+
-
- account.bank.statement.voucher.form.inherit
- account.bank.statement
-
-
-
-
-
-
-
account.cash.statement.voucher.tree.inherit
account.bank.statement
diff --git a/addons/account_voucher/voucher_payment_receipt_view.xml b/addons/account_voucher/voucher_payment_receipt_view.xml
index 5eb98162d5f..b6f367601ff 100644
--- a/addons/account_voucher/voucher_payment_receipt_view.xml
+++ b/addons/account_voucher/voucher_payment_receipt_view.xml
@@ -392,35 +392,33 @@
account.voucher