Use asset account when creating invoice from purchase

review636003
This commit is contained in:
Cédric Krier
2013-02-04 20:09:51 +01:00
parent 88a7b02cb0
commit b483e2d138
3 changed files with 36 additions and 0 deletions
+2
View File
@@ -5,6 +5,7 @@ from .asset import *
from .product import *
from .invoice import *
from .account import *
from .purchase import *
def register():
@@ -20,6 +21,7 @@ def register():
InvoiceLine,
Configuration,
Move,
PurchaseLine,
module='account_asset', type_='model')
Pool.register(
CreateMoves,
+32
View File
@@ -0,0 +1,32 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of this
# repository contains the full copyright notices and license terms.
from trytond.pool import PoolMeta
__all__ = ['PurchaseLine']
__metaclass__ = PoolMeta
class PurchaseLine:
__name__ = 'purchase.line'
@classmethod
def __setup__(cls):
super(PurchaseLine, cls).__setup__()
cls._error_messages.update({
'missing_account_asset': ('It misses '
'an "Account Asset" on product "%s"!'),
})
def get_invoice_line(self, invoice_type):
invoice_lines = super(PurchaseLine, self).get_invoice_line(
invoice_type)
if (self.product
and self.product.type == 'assets'
and self.product.depreciable):
for invoice_line in invoice_lines:
if invoice_line.product == self.product:
invoice_line.account = self.product.account_asset_used
if not invoice_line.account:
self.raise_user_error('missing_account_asset',
error_args=(self.product.rec_name,))
return invoice_lines
+2
View File
@@ -6,6 +6,8 @@ depends =
account
product
account_invoice
extras_depend =
purchase
xml =
asset.xml
product.xml