[tryton-debian-vcs] tryton-modules-account-asset branch debian updated. debian/3.4.1-1-3-gc4b07d7
Mathias Behrle
tryton-debian-vcs at alioth.debian.org
Thu Apr 23 16:00:19 UTC 2015
The following commit has been merged in the debian branch:
https://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi/?p=tryton/tryton-modules-account-asset.git;a=commitdiff;h=debian/3.4.1-1-3-gc4b07d7
commit c4b07d7620bad25726757ae79f41973575a1eff5
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Thu Apr 23 17:28:08 2015 +0200
Updating Depends.
diff --git a/debian/control b/debian/control
index 7a1e466..8f93451 100644
--- a/debian/control
+++ b/debian/control
@@ -18,6 +18,8 @@ Package: tryton-modules-account-asset
Architecture: all
Depends:
python-pkg-resources,
+ python-cached-property,
+ python-dateutil,
tryton-modules-account (>= ${version:major}),
tryton-modules-account-invoice (>= ${version:major}),
tryton-modules-account-product (>= ${version:major}),
commit ea2f12c320331932ac0afbed5286324f46607635
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Thu Apr 23 16:59:48 2015 +0200
Merging upstream version 3.6.0.
diff --git a/CHANGELOG b/CHANGELOG
index f5b5046..9d2dd32 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,7 @@
-Version 3.4.1 - 2015-03-02
+Version 3.6.0 - 2015-04-20
* Bug fixes (see mercurial logs for details)
+* Add support for PyPy
+* Add asset depreciation report
Version 3.4.0 - 2014-10-20
* Bug fixes (see mercurial logs for details)
diff --git a/INSTALL b/INSTALL
index 5220d7a..600bd53 100644
--- a/INSTALL
+++ b/INSTALL
@@ -5,6 +5,8 @@ Prerequisites
-------------
* Python 2.7 or later (http://www.python.org/)
+ * python-dateutil (http://labix.org/python-dateutil)
+ * cached-property (https://github.com/pydanny/cached-property)
* trytond (http://www.tryton.org/)
* trytond_account (http://www.tryton.org/)
* trytond_account_product (http://www.tryton.org/)
diff --git a/PKG-INFO b/PKG-INFO
index 90e9f6f..b3ac05b 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
Metadata-Version: 1.1
Name: trytond_account_asset
-Version: 3.4.1
+Version: 3.6.0
Summary: Tryton module for assets management
Home-page: http://www.tryton.org/
Author: Tryton
Author-email: issue_tracker at tryton.org
License: GPL-3
-Download-URL: http://downloads.tryton.org/3.4/
+Download-URL: http://downloads.tryton.org/3.6/
Description: trytond_account_asset
=====================
@@ -64,5 +64,7 @@ Classifier: Natural Language :: Slovenian
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Office/Business
Classifier: Topic :: Office/Business :: Financial :: Accounting
diff --git a/__init__.py b/__init__.py
index 8025921..37d5888 100644
--- a/__init__.py
+++ b/__init__.py
@@ -16,6 +16,7 @@ def register():
CreateMovesStart,
UpdateAssetStart,
UpdateAssetShowDepreciation,
+ PrintDepreciationTableStart,
Category,
Template,
InvoiceLine,
@@ -26,4 +27,8 @@ def register():
Pool.register(
CreateMoves,
UpdateAsset,
+ PrintDepreciationTable,
module='account_asset', type_='wizard')
+ Pool.register(
+ AssetDepreciationTable,
+ module='account_asset', type_='report')
diff --git a/account.py b/account.py
index 189e433..5398664 100644
--- a/account.py
+++ b/account.py
@@ -1,5 +1,5 @@
-#This file is part of Tryton. The COPYRIGHT file at the top level of
-#this repository contains the full copyright notices and license terms.
+# 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.model import fields
from trytond.pyson import Eval
from trytond.pool import PoolMeta
diff --git a/asset.py b/asset.py
index adb9671..a7a96b0 100644
--- a/asset.py
+++ b/asset.py
@@ -5,17 +5,23 @@ import calendar
from decimal import Decimal
from dateutil import relativedelta
from dateutil import rrule
+from itertools import groupby
+from cached_property import cached_property
from trytond.model import Workflow, ModelSQL, ModelView, fields
from trytond.pyson import Eval, Bool, If
from trytond.pool import Pool
from trytond.transaction import Transaction
-from trytond.wizard import Wizard, StateView, StateTransition, Button
+from trytond.wizard import (Wizard, StateView, StateTransition, StateAction,
+ Button)
from trytond.tools import grouped_slice
+from trytond.modules.company import CompanyReport
__all__ = ['Asset', 'AssetLine', 'AssetUpdateMove',
'CreateMovesStart', 'CreateMoves',
- 'UpdateAssetStart', 'UpdateAssetShowDepreciation', 'UpdateAsset']
+ 'UpdateAssetStart', 'UpdateAssetShowDepreciation', 'UpdateAsset',
+ 'AssetDepreciationTable',
+ 'PrintDepreciationTableStart', 'PrintDepreciationTable']
def date2datetime(date):
@@ -44,11 +50,15 @@ class Asset(Workflow, ModelSQL, ModelView):
('product', '=', Eval('product', -1)),
),
('invoice.type', '=', 'in_invoice'),
+ ['OR',
+ ('company', '=', Eval('company', -1)),
+ ('invoice.company', '=', Eval('company', -1)),
+ ],
],
states={
'readonly': (Eval('lines', [0]) | (Eval('state') != 'draft')),
},
- depends=['product', 'state'])
+ depends=['product', 'state', 'company'])
customer_invoice_line = fields.Function(fields.Many2One(
'account.invoice.line', 'Customer Invoice Line'),
'get_customer_invoice_line')
@@ -141,12 +151,20 @@ class Asset(Workflow, ModelSQL, ModelView):
], 'State', readonly=True)
lines = fields.One2Many('account.asset.line', 'asset', 'Lines',
readonly=True)
- move = fields.Many2One('account.move', 'Account Move', readonly=True)
+ move = fields.Many2One('account.move', 'Account Move', readonly=True,
+ domain=[
+ ('company', '=', Eval('company', -1)),
+ ],
+ depends=['company'])
update_moves = fields.Many2Many('account.asset-update-account.move',
'asset', 'move', 'Update Moves', readonly=True,
+ domain=[
+ ('company', '=', Eval('company', -1)),
+ ],
states={
'invisible': ~Eval('update_moves'),
- })
+ },
+ depends=['company'])
comment = fields.Text('Comment')
@classmethod
@@ -154,10 +172,10 @@ class Asset(Workflow, ModelSQL, ModelView):
super(Asset, cls).__setup__()
cls._sql_constraints = [
('invoice_line_uniq', 'UNIQUE(supplier_invoice_line)',
- 'Supplier Invoice Line can be used only once on asset!'),
+ 'Supplier Invoice Line can be used only once on asset.'),
]
cls._error_messages.update({
- 'delete_draft': 'Asset "%s" must be in draft to be deleted!',
+ 'delete_draft': 'Asset "%s" must be in draft to be deleted.',
})
cls._transitions |= set((
('draft', 'running'),
@@ -225,39 +243,35 @@ class Asset(Workflow, ModelSQL, ModelView):
Currency = pool.get('currency.currency')
Unit = Pool().get('product.uom')
- new_values = {}
if not self.supplier_invoice_line:
- new_values['quantity'] = None
- new_values['value'] = None
- new_values['start_date'] = self.default_start_date()
- return new_values
+ self.quantity = None
+ self.value = None
+ self.start_date = self.default_start_date()
+ return
invoice_line = self.supplier_invoice_line
invoice = invoice_line.invoice
if invoice.company.currency != invoice.currency:
with Transaction().set_context(date=invoice.currency_date):
- new_values['value'] = Currency.compute(
+ self.value = Currency.compute(
invoice.currency, invoice_line.amount,
invoice.company.currency)
else:
- new_values['value'] = invoice_line.amount
+ self.value = invoice_line.amount
if invoice.invoice_date:
- new_values['purchase_date'] = invoice.invoice_date
- new_values['start_date'] = invoice.invoice_date
+ self.purchase_date = invoice.invoice_date
+ self.start_date = invoice.invoice_date
if invoice_line.product.depreciation_duration:
duration = relativedelta.relativedelta(
months=int(invoice_line.product.depreciation_duration),
days=-1)
- new_values['end_date'] = new_values['start_date'] + duration
+ self.end_date = self.start_date + duration
if not self.unit:
- new_values['quantity'] = invoice_line.quantity
- return new_values
-
- new_values['quantity'] = Unit.compute_qty(invoice_line.unit,
- invoice_line.quantity, self.unit)
-
- return new_values
+ self.quantity = invoice_line.quantity
+ else:
+ self.quantity = Unit.compute_qty(invoice_line.unit,
+ invoice_line.quantity, self.unit)
@fields.depends('product')
def on_change_with_unit(self):
@@ -441,6 +455,7 @@ class Asset(Workflow, ModelSQL, ModelView):
)
return Move(
+ company=self.company,
origin=line,
period=period_id,
journal=self.account_journal,
@@ -513,6 +528,7 @@ class Asset(Workflow, ModelSQL, ModelView):
)
lines.append(counter_part_line)
return Move(
+ company=self.company,
origin=self,
period=period_id,
journal=self.account_journal,
@@ -750,6 +766,7 @@ class UpdateAsset(Wizard):
Move = pool.get('account.move')
period_id = Period.find(asset.company.id, self.show_move.date)
return Move(
+ company=asset.company,
origin=asset,
journal=asset.account_journal.id,
period=period_id,
@@ -800,3 +817,198 @@ class UpdateAsset(Wizard):
})
Asset.create_lines([asset])
return 'end'
+
+
+class AssetDepreciationTable(CompanyReport):
+ 'Asset Depreciation Table'
+ __name__ = 'account.asset.depreciation_table'
+
+ @classmethod
+ def get_context(cls, records, data):
+ context = super(AssetDepreciationTable, cls).get_context(records, data)
+
+ AssetDepreciation = cls.get_asset_depreciation()
+ AssetDepreciation.start_date = data['start_date']
+ AssetDepreciation.end_date = data['end_date']
+ Grouper = cls.get_grouper()
+ grouped_assets = groupby(sorted(records, key=cls.group_assets),
+ cls.group_assets)
+ context['grouped_depreciations'] = grouped_depreciations = []
+ for g_key, assets in grouped_assets:
+ depreciations = [AssetDepreciation(a) for a in assets]
+ grouped_depreciations.append(Grouper(g_key, depreciations))
+
+ return context
+
+ @staticmethod
+ def group_assets(asset):
+ return asset.product
+
+ @classmethod
+ def get_grouper(cls):
+
+ class Grouper(object):
+ def __init__(self, key, depreciations):
+ self.product = key
+ self.depreciations = depreciations
+ for attr_name in self.grouped_attributes():
+ setattr(self, attr_name,
+ cached_property(self.adder(attr_name)))
+
+ def adder(self, attr_name):
+ def _sum(self):
+ return sum(getattr(d, attr_name)
+ for d in self.depreciations if getattr(d, attr_name))
+ return _sum
+
+ @staticmethod
+ def grouped_attributes():
+ return {
+ 'start_fixed_value',
+ 'value_increase',
+ 'value_decrease',
+ 'end_fixed_value',
+ 'start_value',
+ 'amortization_increase',
+ 'amortization_decrease',
+ 'end_value',
+ 'actual_value',
+ 'closing_value',
+ }
+
+ return Grouper
+
+ @classmethod
+ def get_asset_depreciation(cls):
+
+ class AssetDepreciation(object):
+ def __init__(self, asset):
+ self.asset = asset
+
+ @cached_property
+ def asset_lines(self):
+ return filter(
+ lambda l: self.start_date < l.date <= self.end_date,
+ self.asset.lines)
+
+ @cached_property
+ def update_lines(self):
+ filter_ = lambda l: (l.account.kind == 'other'
+ and self.start_date < l.move.date <= self.end_date)
+ return filter(filter_,
+ (l for m in self.asset.update_moves for l in m.lines))
+
+ @cached_property
+ def start_fixed_value(self):
+ if self.start_date < self.asset.start_date:
+ return 0
+ value = self.asset_lines[0].acquired_value
+ date = self.asset_lines[0].date
+ for line in self.update_lines:
+ if line.move.date < date:
+ value += line.debit - line.credit
+ return value
+
+ @cached_property
+ def value_increase(self):
+ value = sum(l.debit - l.credit for l in self.update_lines
+ if l.debit > l.credit)
+ if self.start_date < self.asset.start_date:
+ value += self.asset_lines[0].acquired_value
+ return value
+
+ @cached_property
+ def value_decrease(self):
+ return sum(l.credit - l.debit for l in self.update_lines
+ if l.credit > l.debit)
+
+ @cached_property
+ def end_fixed_value(self):
+ value = self.asset_lines[-1].acquired_value
+ date = self.asset_lines[-1].date
+ for line in self.update_lines:
+ if line.move.date > date:
+ value += line.debit - line.credit
+ return value
+
+ @cached_property
+ def start_value(self):
+ return (self.asset_lines[0].actual_value
+ + self.asset_lines[0].depreciation)
+
+ @cached_property
+ def amortization_increase(self):
+ return sum(l.depreciation for l in self.asset_lines
+ if l.depreciation > 0)
+
+ @cached_property
+ def amortization_decrease(self):
+ return sum(l.depreciation for l in self.asset_lines
+ if l.depreciation < 0)
+
+ @cached_property
+ def end_value(self):
+ return self.asset_lines[-1].actual_value
+
+ @cached_property
+ def actual_value(self):
+ value = self.end_value
+ date = self.asset_lines[-1].date
+ value += sum(l.debit - l.credit for l in self.update_lines
+ if l.move.date > date)
+ return value
+
+ @cached_property
+ def closing_value(self):
+ if not self.asset.move:
+ return None
+ revenue_lines = [l for l in self.asset.move.lines
+ if l.account == self.asset.product.account_revenue_used]
+ return sum(l.debit - l.credit for l in revenue_lines)
+
+ return AssetDepreciation
+
+
+class PrintDepreciationTableStart(ModelView):
+ 'Asset Depreciation Table Start'
+ __name__ = 'account.asset.print_depreciation_table.start'
+
+ start_date = fields.Date('Start Date', required=True,
+ domain=[('start_date', '<', Eval('end_date'))],
+ depends=['end_date'])
+ end_date = fields.Date('End Date', required=True,
+ domain=[('end_date', '>', Eval('start_date'))],
+ depends=['start_date'])
+
+ @staticmethod
+ def default_start_date():
+ return datetime.date.today() - relativedelta.relativedelta(years=1)
+
+ @staticmethod
+ def default_end_date():
+ return datetime.date.today()
+
+
+class PrintDepreciationTable(Wizard):
+ 'Asset Depreciation Table'
+ __name__ = 'account.asset.print_depreciation_table'
+ start = StateView('account.asset.print_depreciation_table.start',
+ 'account_asset.print_depreciation_table_start_view_form', [
+ Button('Cancel', 'end', 'tryton-cancel'),
+ Button('Print', 'print_', 'tryton-print', default=True),
+ ])
+ print_ = StateAction('account_asset.report_depreciation_table')
+
+ def do_print_(self, action):
+ pool = Pool()
+ Asset = pool.get('account.asset')
+ assets = Asset.search([
+ ('start_date', '<', self.start.end_date),
+ ('end_date', '>', self.start.start_date),
+ ('state', '=', 'running'),
+ ])
+ return action, {
+ 'ids': [a.id for a in assets],
+ 'start_date': self.start.start_date,
+ 'end_date': self.start.end_date,
+ }
diff --git a/asset.xml b/asset.xml
index e39ef47..4e8b303 100644
--- a/asset.xml
+++ b/asset.xml
@@ -46,21 +46,21 @@
id="act_asset_form_domain_draft">
<field name="name">Draft</field>
<field name="sequence" eval="10"/>
- <field name="domain">[('state', '=', 'draft')]</field>
+ <field name="domain" eval="[('state', '=', 'draft')]" pyson="1"/>
<field name="act_window" ref="act_asset_form"/>
</record>
<record model="ir.action.act_window.domain"
id="act_asset_form_domain_running">
<field name="name">Running</field>
<field name="sequence" eval="20"/>
- <field name="domain">[('state', '=', 'running')]</field>
+ <field name="domain" eval="[('state', '=', 'running')]" pyson="1"/>
<field name="act_window" ref="act_asset_form"/>
</record>
<record model="ir.action.act_window.domain"
id="act_asset_form_domain_closed">
<field name="name">Closed</field>
<field name="sequence" eval="30"/>
- <field name="domain">[('state', '=', 'closed')]</field>
+ <field name="domain" eval="[('state', '=', 'closed')]" pyson="1"/>
<field name="act_window" ref="act_asset_form"/>
</record>
<record model="ir.action.act_window.domain"
@@ -98,10 +98,19 @@
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_asset1">
- <field name="domain">[('company', '=', user.company.id if user.company else None)]</field>
+ <field name="domain"
+ eval="[('company', '=', Eval('user', {}).get('company', None))]"
+ pyson="1"/>
<field name="rule_group" ref="rule_group_asset"/>
</record>
+ <record model="ir.model.access" id="access_asset">
+ <field name="model" search="[('model', '=', 'account.asset')]"/>
+ <field name="perm_read" eval="False"/>
+ <field name="perm_write" eval="False"/>
+ <field name="perm_create" eval="False"/>
+ <field name="perm_delete" eval="False"/>
+ </record>
<record model="ir.model.access" id="access_asset_account_admin">
<field name="model" search="[('model', '=', 'account.asset')]"/>
<field name="group" ref="account.group_account_admin"/>
@@ -130,6 +139,13 @@
<field name="name">asset_line_tree</field>
</record>
+ <record model="ir.model.access" id="access_asset_line">
+ <field name="model" search="[('model', '=', 'account.asset.line')]"/>
+ <field name="perm_read" eval="False"/>
+ <field name="perm_write" eval="False"/>
+ <field name="perm_create" eval="False"/>
+ <field name="perm_delete" eval="False"/>
+ </record>
<record model="ir.model.access" id="access_asset_line_account_admin">
<field name="model" search="[('model', '=', 'account.asset.line')]"/>
<field name="group" ref="account.group_account_admin"/>
@@ -171,6 +187,27 @@
</record>
<menuitem name="Create Assets Moves" parent="menu_asset" sequence="10"
action="wizard_create_moves" id="menu_create_moves"/>
+
+ <record model="ir.action.report" id="report_depreciation_table">
+ <field name="name">Depreciation Table</field>
+ <field name="model">account.asset</field>
+ <field name="report_name">account.asset.depreciation_table</field>
+ <field name="report">account_asset/asset_table.odt</field>
+ </record>
+ <record model="ir.ui.view"
+ id="print_depreciation_table_start_view_form">
+ <field name="model">account.asset.print_depreciation_table.start</field>
+ <field name="type">form</field>
+ <field name="name">print_depreciation_table_start</field>
+ </record>
+ <record model="ir.action.wizard" id="wizard_print_depreciation_table">
+ <field name="name">Print Depreciation Table</field>
+ <field name="wiz_name">account.asset.print_depreciation_table</field>
+ </record>
+ <menuitem name="Print Depreciation Table" icon="tryton-print"
+ parent="account.menu_reporting"
+ action="wizard_print_depreciation_table"
+ id="menu_create_depreciation_table"/>
</data>
<data noupdate="1">
<record model="account.journal" id="journal_asset">
diff --git a/invoice.py b/invoice.py
index 3e342e5..caa41be 100644
--- a/invoice.py
+++ b/invoice.py
@@ -34,7 +34,7 @@ class InvoiceLine:
@fields.depends('product', 'invoice', 'invoice_type')
def on_change_product(self):
- new_values = super(InvoiceLine, self).on_change_product()
+ super(InvoiceLine, self).on_change_product()
if self.invoice and self.invoice.type:
type_ = self.invoice.type
else:
@@ -43,10 +43,7 @@ class InvoiceLine:
if (self.product and type_ in ('in_invoice', 'in_credit_note')
and self.product.type == 'assets'
and self.product.depreciable):
- new_values['account'] = self.product.account_asset_used.id
- new_values['account.rec_name'] = \
- self.product.account_asset_used.rec_name
- return new_values
+ self.account = self.product.account_asset_used
@fields.depends('asset', 'unit')
def on_change_asset(self):
@@ -57,16 +54,10 @@ class InvoiceLine:
if self.unit:
quantity = Uom.compute_qty(self.asset.unit, quantity,
self.unit)
- return {
- 'quantity': quantity,
- }
+ self.quantity = quantity
else:
- return {
- 'quantity': quantity,
- 'unit': self.unit.id,
- 'unit.rec_name': self.unit.rec_name,
- }
- return {}
+ self.quantity = quantity
+ self.unit = self.unit
@fields.depends('product')
def on_change_with_is_assets_depreciable(self, name=None):
diff --git a/locale/ca_ES.po b/locale/ca_ES.po
index 98a36c7..23567de 100644
--- a/locale/ca_ES.po
+++ b/locale/ca_ES.po
@@ -3,21 +3,21 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "Heu de canviar l'actiu \"%s\" a esborrany per poder-lo eliminar."
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "L'actiu \"%s\" ha d'estar en esborrany per ser eliminat."
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
+msgid "Supplier Invoice Line can be used only once on asset."
msgstr ""
-"La línia de factura de proveïdor només es pot utilitzar un cop a l'actiu."
+"La línia de factura de proveïdor pot ser usada una sola vegada en un actiu."
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "L'actiu només es pot utilitzar un cop a la línia de factura."
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "Falta un \"Compte d'actiu\" al producte \"%s\"."
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr "Falta un \"Compte d'actiu\" en el producte \"%s\"."
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -227,6 +227,18 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Usuari modificació"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Data final"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Data inicial"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Import"
@@ -359,6 +371,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Línia d'actiu"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Taula d'amortització d'actiu - Inici"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Actualitza actius - Mostra amortització"
@@ -379,17 +395,25 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Actius"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Taula d'amortització"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Crea assentaments d'actiu"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimeix taula d'amortització"
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Actualitza actius"
msgctxt "model:ir.action.act_window.domain,name:act_asset_form_domain_all"
msgid "All"
-msgstr "Tot"
+msgstr "Tots"
msgctxt "model:ir.action.act_window.domain,name:act_asset_form_domain_closed"
msgid "Closed"
@@ -419,10 +443,86 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Actius"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimeix taula d'amortització"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Crea assentaments d'actiu"
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Valor real"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Amortització"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Taula d'amortització"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Actius"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Valor al tancament"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Empresa:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Fix"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "De:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Data d'impressió:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "Per:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Total -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Usuari:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "a les"
+
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
msgstr "Lineal"
@@ -463,6 +563,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Línies d'actiu"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Seleccioneu dates"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Assentament d'amortització d'actiu"
@@ -523,6 +627,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Cancel·la"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Cancel·la"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Imprimeix"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "Accepta"
diff --git a/locale/de_DE.po b/locale/de_DE.po
index f7bd8b0..04d870d 100644
--- a/locale/de_DE.po
+++ b/locale/de_DE.po
@@ -3,15 +3,12 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr ""
-"Anlage \"%s\" muss in Status 'Entwurf' sein, um gelöscht werden zu können!"
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "Anlage \"%s\" kann nur in Status 'Entwurf' gelöscht werden"
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
-msgstr ""
-"Eine Rechnungsposition eines Lieferanten kann nur mit einer Anlage verknüpft"
-" sein!"
+msgid "Supplier Invoice Line can be used only once on asset."
+msgstr "Eine Einkaufsposition kann nur einmal pro Anlage verwendet werden"
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
@@ -19,8 +16,8 @@ msgstr ""
"Eine Anlage kann nur mit einer einzigen Rechnungsposition verknüpft sein!"
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "Fehlendes \"Anlagekonto\" für Artikel \"%s\"."
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr "Fehlendes Anlagenkonto für Artikel \"%s\""
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -230,6 +227,18 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Letzte Änderung durch"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Enddatum"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Anfangsdatum"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Betrag"
@@ -288,11 +297,11 @@ msgstr "Anlagen abschreibbar"
msgctxt "field:product.category,account_asset:"
msgid "Account Asset"
-msgstr "Anlagekonto"
+msgstr "Anlagenkonto"
msgctxt "field:product.category,account_asset_used:"
msgid "Account Asset Used"
-msgstr "Verwendetes Anlagekonto"
+msgstr "Verwendetes Anlagenkonto"
msgctxt "field:product.category,account_depreciation:"
msgid "Account Depreciation"
@@ -304,11 +313,11 @@ msgstr "Verwendetes Abschreibungskonto"
msgctxt "field:product.template,account_asset:"
msgid "Account Asset"
-msgstr "Anlagekonto"
+msgstr "Anlagenkonto"
msgctxt "field:product.template,account_asset_used:"
msgid "Account Asset Used"
-msgstr "Verwendetes Anlagekonto"
+msgstr "Verwendetes Anlagenkonto"
msgctxt "field:product.template,account_depreciation:"
msgid "Account Depreciation"
@@ -362,6 +371,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Anlage Zeile"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Abschreibungstabelle Beginn"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Aktualisierung Anlage Anzeige Abschreibung"
@@ -382,10 +395,18 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Inventar"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Abschreibungstabelle"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Erstellung Anlagen Buchungssätze"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Abschreibungstabelle drucken"
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Anlage aktualisieren"
@@ -422,10 +443,86 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Anlagen"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Abschreibungstabelle drucken"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Buchungssätze für Anlagen erstellen"
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Aktueller Wert"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Abschreibung"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Abschreibungstabelle"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Inventar"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Abschlußwert"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Unternehmen:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Fix"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "Von:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Druckdatum:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "Bis:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Gesamt -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Benutzer:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "um"
+
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
msgstr "Linear"
@@ -466,6 +563,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Anlage Zeilen"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Auswahl Datum"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Anlage Abschreibung Buchungssatz"
@@ -526,6 +627,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Abbrechen"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Abbrechen"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Drucken"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "OK"
diff --git a/locale/es_AR.po b/locale/es_AR.po
index 2d253ab..9181328 100644
--- a/locale/es_AR.po
+++ b/locale/es_AR.po
@@ -3,21 +3,21 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "¡El activo «%s» debe estar en estado borrador para poder eliminarse!"
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "El activo «%s» debe estar en estado borrador para poder eliminarse."
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
+msgid "Supplier Invoice Line can be used only once on asset."
msgstr ""
-"¡La línea de factura de proveedor sólo se puede usar una vez en el activo."
+"La línea de factura de proveedor sólo se puede usar una vez en el activo."
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "¡El activo sólo se puede usar una vez en la línea de factura!"
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "¡Falta una «Cuenta de activos» en el producto «%s»!"
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr "Falta una «Cuenta de activos» en el producto «%s»."
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -41,7 +41,7 @@ msgstr "Usuario creación"
msgctxt "field:account.asset,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígitos de moneda"
+msgstr "Decimales de moneda"
msgctxt "field:account.asset,customer_invoice_line:"
msgid "Customer Invoice Line"
@@ -113,7 +113,7 @@ msgstr "Unidad"
msgctxt "field:account.asset,unit_digits:"
msgid "Unit Digits"
-msgstr "Dígitos de unidad"
+msgstr "Decimales de unidad"
msgctxt "field:account.asset,update_moves:"
msgid "Update Moves"
@@ -227,6 +227,18 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Usuario modificación"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Fecha final"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha inicial"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Importe"
@@ -353,19 +365,23 @@ msgstr "Activo - Actualizar - Asiento"
msgctxt "model:account.asset.create_moves.start,name:"
msgid "Create Moves Start"
-msgstr "Crear asientos iniciales"
+msgstr "Crear asientos - Inicio"
msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Línea de activo"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Tabla de amortización de activo - Inicio"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
-msgstr "Actualizar vista amortización activo"
+msgstr "Actualizar activo - Mostrar amortización"
msgctxt "model:account.asset.update.start,name:"
msgid "Update Asset Start"
-msgstr "Actualizar Inicio de activo"
+msgstr "Actualizar activo - Inicio"
msgctxt "model:account.journal,name:journal_asset"
msgid "Asset"
@@ -379,10 +395,18 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Activos"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Tabla de amortización"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Crear asientos de activo"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimir tabla de amortización"
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Actualizar activo"
@@ -419,10 +443,86 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Activos"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimir tabla de amortización"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Crear asientos de activo"
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Valor actual"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Amortización"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Tabla de amortización"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Activos"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Valor de cierre"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Empresa:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Fijo"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "De:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Fecha de impresión:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "A:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Total -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Usuario:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "a las"
+
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
msgstr "Lineal"
@@ -453,7 +553,7 @@ msgstr "Crear asientos de activo"
msgctxt "view:account.asset.create_moves.start:"
msgid "Create Assets Moves up to"
-msgstr "Crear movimientos activos hasta"
+msgstr "Crear asientos de activos hasta"
msgctxt "view:account.asset.line:"
msgid "Asset Line"
@@ -463,6 +563,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Líneas de activo"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Seleccione fechas"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Asiento de amortización de activo"
@@ -523,6 +627,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Cancelar"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Imprimir"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "Aceptar"
diff --git a/locale/es_CO.po b/locale/es_CO.po
index f48f0ff..16a1bb4 100644
--- a/locale/es_CO.po
+++ b/locale/es_CO.po
@@ -3,20 +3,20 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "El activo fijo \"%s\" debe estar en borrador antes de ser eliminado!"
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr ""
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
-msgstr "Línea de factura de proveedor puede ser usada solo una vez en activo!"
+msgid "Supplier Invoice Line can be used only once on asset."
+msgstr ""
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "El activo solo puede ser usado una vez en línea de factura!"
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "Falta la \"Cuenta de Activo Fijo\" en el producto \"%s\"!"
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr ""
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -226,6 +226,21 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Modificado por Usuario"
+#, fuzzy
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Fecha Final"
+
+#, fuzzy
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha de Inicio"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Valor"
@@ -358,6 +373,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Línea de Activo"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr ""
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Actualizar Depreciación Mostrada del Activo"
@@ -378,10 +397,18 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Activos Fijos"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr ""
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Crear Asiento de Activos Fijos"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr ""
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Actualizar Activo Fijo"
@@ -418,6 +445,10 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Activos Fijos"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr ""
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Crear Asiento de Activos Fijos"
@@ -522,6 +553,16 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Cancelar"
+#, fuzzy
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Cancelar"
+
+#, fuzzy
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Imprimir"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "Aceptar"
diff --git a/locale/es_EC.po b/locale/es_EC.po
index ca9f151..fc420a2 100644
--- a/locale/es_EC.po
+++ b/locale/es_EC.po
@@ -3,22 +3,22 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "¡El activo \"%s\" debe estar en borrador para poder ser eliminado!"
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "El activo \"%s\" debe estar en borrador para poder ser eliminado."
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
+msgid "Supplier Invoice Line can be used only once on asset."
msgstr ""
-"¡La línea de factura de proveedor sólo se puede utilizar una vez en el "
-"activo!"
+"La Línea de Factura de Proveedor sólo se puede utilizar una vez en el "
+"activo."
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "¡El activo sólo se puede utilizar una vez en la línea de factura!"
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "¡Falta una \"Cuenta de Activo\" en el producto \"%s\"!"
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr "Falta una \"Cuenta de Activo\" en el producto \"%s\"."
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -182,7 +182,7 @@ msgstr "Valor de Adquisición"
msgctxt "field:account.asset.line,actual_value:"
msgid "Actual Value"
-msgstr "Valor Real"
+msgstr "Valor real"
msgctxt "field:account.asset.line,asset:"
msgid "Asset"
@@ -228,9 +228,21 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Modificado por Usuario"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Fecha Final"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha Inicial"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
-msgstr "Valor"
+msgstr "Importe"
msgctxt "field:account.asset.update.show_depreciation,counterpart_account:"
msgid "Counterpart Account"
@@ -250,7 +262,7 @@ msgstr "ID"
msgctxt "field:account.asset.update.show_depreciation,latest_move_date:"
msgid "Latest Move Date"
-msgstr "Última Fecha de Amortización"
+msgstr "Última Fecha de Asiento"
msgctxt "field:account.asset.update.show_depreciation,next_depreciation_date:"
msgid "Next Depreciation Date"
@@ -360,6 +372,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Línea de Activo"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Tabla de amortización de activo - Inicio"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Actualizar Activo - Mostrar Amortización"
@@ -380,9 +396,17 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Activos"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Tabla de Amortización"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
-msgstr "Crear Asientos de Activos"
+msgstr "Crear Asientos de Activo"
+
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimir Tabla de Amortización"
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
@@ -420,9 +444,85 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Activos"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimir Tabla de Amortización"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
-msgstr "Crear Asientos de Activos"
+msgstr "Crear Asientos de Activo"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Valor real"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Amortización"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Tabla de Amortización"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Activos"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Valor de Cierre"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Empresa:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Fijo"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "Desde:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Fecha de Impresión:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "A:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Total -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Usuario:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "a las"
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
@@ -450,11 +550,11 @@ msgstr "En ejecución"
msgctxt "view:account.asset.create_moves.start:"
msgid "Create Assets Moves"
-msgstr "Crear Asientos de Activos"
+msgstr "Crear Asientos de Activo"
msgctxt "view:account.asset.create_moves.start:"
msgid "Create Assets Moves up to"
-msgstr "Crear Asientos de Activos hasta"
+msgstr "Crear Asientos de Activo hasta"
msgctxt "view:account.asset.line:"
msgid "Asset Line"
@@ -464,6 +564,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Líneas de Activo"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Seleccione fechas"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Asiento de Amortización de Activo"
@@ -524,6 +628,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Cancelar"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Imprimir"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "Aceptar"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index 7bec039..55115be 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -3,20 +3,21 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "Debe cambiar el activo \"%s\" a borrador antes de borrarlo."
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "El activo \"%s\" debe estar en borrador para ser eliminado."
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
+msgid "Supplier Invoice Line can be used only once on asset."
msgstr ""
-"La línea de factura de proveedor sólo se puede usar una vez en el activo."
+"La línea de factura de proveedor puede ser utilizada una sola vez en un "
+"activo."
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "El activo sólo se puede usar una vez en la línea de factura."
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
+msgid "It misses an \"Account Asset\" on product \"%s\"."
msgstr "Falta una \"Cuenta de activo\" en el producto \"%s\"."
msgctxt "field:account.asset,account_journal:"
@@ -227,6 +228,18 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Usuario modificación"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Fecha final"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha inicial"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Importe"
@@ -359,6 +372,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Línea de activo"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Tabla de amortización de activo - Inicio"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Actualizar activo - Mostrar amortización"
@@ -379,10 +396,18 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Activos"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Tabla de amortización"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Crear asientos de activo"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimir tabla de amortización"
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Actualizar activo"
@@ -419,10 +444,86 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Activos"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimir tabla de amortización"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Crear asientos de activo"
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Valor actual"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Amortización"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Tabla de amortización"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Activos"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Valor al cerrar"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Empresa:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Fijo"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "Desde:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Fecha de impresión:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "Para:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Total -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Usuario:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "a las"
+
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
msgstr "Lineal"
@@ -463,6 +564,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Líneas de activo"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Seleccione fechas"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Asiento de amortización de activo"
@@ -523,6 +628,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Cancelar"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Imprimir"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "Aceptar"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index b065e19..ea433af 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -3,22 +3,22 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "L'actif « %s » doit être en brouillon pour pouvoir être supprimé."
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "L'actif « %s » doit être en brouillon pour être supprimé."
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
+msgid "Supplier Invoice Line can be used only once on asset."
msgstr ""
"Une ligne de facture fournisseur ne peut être utilisée qu'une seule fois sur"
-" un actif !"
+" l'actif."
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "Un actif ne peut être utilisé qu'une seule fois par ligne."
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "Le compte d'actif est manquant sur le produit « %s »."
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr "Il manque un « Compte d'actif » sur le produit « %s »."
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -228,6 +228,18 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Mis à jour par"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Date de fin"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Date de début"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Montant"
@@ -360,6 +372,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Ligne d'actif"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Table d'amortissement d'actif"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Mise à jour des actifs - Affichage des amortissements"
@@ -380,10 +396,18 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Actifs"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Tableau d'amortissement"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Créer les mouvements d'actifs"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimer le tableau d'amortissement"
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Mise à jour des actifs"
@@ -420,10 +444,86 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Actifs"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Imprimer le tableau d'amortissement"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Créer les mouvements d'actifs"
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Valeur réelle"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Amortissement"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Table d'amortissement"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Actifs"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Valeur de clôture"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Société :"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Fixé"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "De :"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Date d'impression :"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "à :"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Total -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Utilisateur :"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "à"
+
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
msgstr "Linéaire"
@@ -464,6 +564,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Lignes d'actif"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Choisir des dates"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Mouvement d'amortissement d'actif"
@@ -524,6 +628,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Annuler"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Annuler"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Imprimer"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "OK"
diff --git a/locale/sl_SI.po b/locale/sl_SI.po
index 240274f..d8dcf47 100644
--- a/locale/sl_SI.po
+++ b/locale/sl_SI.po
@@ -3,20 +3,20 @@ msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:account.asset:"
-msgid "Asset \"%s\" must be in draft to be deleted!"
-msgstr "Sredstvo \"%s\" je možno brisati samo v stanju priprave."
+msgid "Asset \"%s\" must be in draft to be deleted."
+msgstr "Za izbris sredstva \"%s\" mora biti le-to v stanju priprave."
msgctxt "error:account.asset:"
-msgid "Supplier Invoice Line can be used only once on asset!"
-msgstr "Postavka prejetega računa se na sredstvu lahko uporabi samo enkrat."
+msgid "Supplier Invoice Line can be used only once on asset."
+msgstr "Postavka prejetega računa se lahko na sredstvu uporabi samo enkrat."
msgctxt "error:account.invoice.line:"
msgid "Asset can be used only once on invoice line!"
msgstr "Sredstvo je lahko samo enkrat na postavki računa."
msgctxt "error:purchase.line:"
-msgid "It misses an \"Account Asset\" on product \"%s\"!"
-msgstr "Pri izdelku \"%s\" manjka konto sredstev."
+msgid "It misses an \"Account Asset\" on product \"%s\"."
+msgstr "Pri izdelku \"%s\" manjka konto sredstva. "
msgctxt "field:account.asset,account_journal:"
msgid "Journal"
@@ -48,7 +48,7 @@ msgstr "Postavka računa kupca"
msgctxt "field:account.asset,depreciation_method:"
msgid "Depreciation Method"
-msgstr "Način amortizacije"
+msgstr "Metoda amortizacije"
msgctxt "field:account.asset,end_date:"
msgid "End Date"
@@ -226,6 +226,18 @@ msgctxt "field:account.asset.line,write_uid:"
msgid "Write User"
msgstr "Zapisal"
+msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
+msgid "End Date"
+msgstr "Končni datum"
+
+msgctxt "field:account.asset.print_depreciation_table.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
+msgid "Start Date"
+msgstr "Začetni datum"
+
msgctxt "field:account.asset.update.show_depreciation,amount:"
msgid "Amount"
msgstr "Znesek"
@@ -358,6 +370,10 @@ msgctxt "model:account.asset.line,name:"
msgid "Asset Line"
msgstr "Postavka sredstva"
+msgctxt "model:account.asset.print_depreciation_table.start,name:"
+msgid "Asset Depreciation Table Start"
+msgstr "Amortizacijska tabela sredstev - Začetek"
+
msgctxt "model:account.asset.update.show_depreciation,name:"
msgid "Update Asset Show Depreciation"
msgstr "Prikaz amortizacije pri popravku sredstev"
@@ -378,10 +394,18 @@ msgctxt "model:ir.action,name:act_asset_form"
msgid "Assets"
msgstr "Sredstva"
+msgctxt "model:ir.action,name:report_depreciation_table"
+msgid "Depreciation Table"
+msgstr "Amortizacijska tabela"
+
msgctxt "model:ir.action,name:wizard_create_moves"
msgid "Create Assets Moves"
msgstr "Knjiženje sredstev"
+msgctxt "model:ir.action,name:wizard_print_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Izpis amortizacijske tabele"
+
msgctxt "model:ir.action,name:wizard_update"
msgid "Update Asset"
msgstr "Popravek sredstev"
@@ -418,10 +442,86 @@ msgctxt "model:ir.ui.menu,name:menu_asset_form"
msgid "Assets"
msgstr "Sredstva"
+msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
+msgid "Print Depreciation Table"
+msgstr "Izpis amortizacijske tabele"
+
msgctxt "model:ir.ui.menu,name:menu_create_moves"
msgid "Create Assets Moves"
msgstr "Knjiženje sredstev"
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "("
+msgstr "("
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid ")"
+msgstr ")"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "+"
+msgstr "+"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "-"
+msgstr "-"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "/"
+msgstr "/"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Actual Value"
+msgstr "Dejanska vrednost"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization"
+msgstr "Amortizacija"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Amortization Table"
+msgstr "Amortizacijska tabela"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Assets"
+msgstr "Sredstva"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Closing Value"
+msgstr "Končna vrednost"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Company:"
+msgstr "Družba:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Fixed"
+msgstr "Osnova"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "From:"
+msgstr "Od: "
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Print Date:"
+msgstr "Izpisano:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "To:"
+msgstr "Do:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "Total -"
+msgstr "Skupaj -"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "User:"
+msgstr "Izpisal:"
+
+msgctxt "odt:account.asset.depreciation_table:"
+msgid "at"
+msgstr "ob"
+
msgctxt "selection:account.asset,depreciation_method:"
msgid "Linear"
msgstr "Linearno"
@@ -462,6 +562,10 @@ msgctxt "view:account.asset.line:"
msgid "Asset Lines"
msgstr "Postavke sredstev"
+msgctxt "view:account.asset.print_depreciation_table.start:"
+msgid "Choose Dates"
+msgstr "Izberi datume"
+
msgctxt "view:account.asset.update.show_depreciation:"
msgid "Asset Depreciation Move"
msgstr "Prikaz amortizacije"
@@ -522,6 +626,14 @@ msgctxt "wizard_button:account.asset.create_moves,start,end:"
msgid "Cancel"
msgstr "Prekliči"
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
+msgid "Cancel"
+msgstr "Prekliči"
+
+msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
+msgid "Print"
+msgstr "Natisni"
+
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
msgid "OK"
msgstr "V redu"
diff --git a/purchase.py b/purchase.py
index 74bca0d..b22bc09 100644
--- a/purchase.py
+++ b/purchase.py
@@ -14,7 +14,7 @@ class PurchaseLine:
super(PurchaseLine, cls).__setup__()
cls._error_messages.update({
'missing_account_asset': ('It misses '
- 'an "Account Asset" on product "%s"!'),
+ 'an "Account Asset" on product "%s".'),
})
def get_invoice_line(self, invoice_type):
diff --git a/setup.py b/setup.py
index f895a9d..96565ff 100644
--- a/setup.py
+++ b/setup.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-#This file is part of Tryton. The COPYRIGHT file at the top level of
-#this repository contains the full copyright notices and license terms.
+# 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 setuptools import setup
import re
@@ -41,7 +41,7 @@ if minor_version % 2:
'hg+http://hg.tryton.org/modules/%s#egg=%s-%s' % (
name[8:], name, version))
-requires = []
+requires = ['cached-property', 'python-dateutil']
for dep in info.get('depends', []):
if not re.match(r'(ir|res|webdav)(\W|$)', dep):
requires.append(get_require_version('trytond_%s' % dep))
@@ -92,6 +92,8 @@ setup(name=name,
'Natural Language :: Spanish',
'Operating System :: OS Independent',
'Programming Language :: Python :: 2.7',
+ 'Programming Language :: Python :: Implementation :: CPython',
+ 'Programming Language :: Python :: Implementation :: PyPy',
'Topic :: Office/Business',
'Topic :: Office/Business :: Financial :: Accounting',
],
diff --git a/tests/__init__.py b/tests/__init__.py
index b8eef20..dc43f76 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -1,5 +1,5 @@
-#This file is part of Tryton. The COPYRIGHT file at the top level of
-#this repository contains the full copyright notices and license terms.
+# 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 .test_account_asset import suite
diff --git a/tests/scenario_account_asset.rst b/tests/scenario_account_asset.rst
index e8f30a8..86c45b2 100644
--- a/tests/scenario_account_asset.rst
+++ b/tests/scenario_account_asset.rst
@@ -2,16 +2,20 @@
Account Asset Scenario
======================
-=============
-General Setup
-=============
-
Imports::
>>> import datetime
>>> from dateutil.relativedelta import relativedelta
>>> from decimal import Decimal
>>> from proteus import config, Model, Wizard
+ >>> from trytond.modules.company.tests.tools import create_company, \
+ ... get_company
+ >>> from trytond.modules.account.tests.tools import create_fiscalyear, \
+ ... create_chart, get_accounts
+ >>> from.trytond.modules.account_invoice.tests.tools import \
+ ... set_fiscalyear_invoice_sequences, create_payment_term
+ >>> from trytond.modules.account_asset.tests.tools \
+ ... import add_asset_accounts
>>> today = datetime.date.today()
Create database::
@@ -22,37 +26,16 @@ Create database::
Install account_asset::
>>> Module = Model.get('ir.module.module')
- >>> modules = Module.find([
+ >>> module, = Module.find([
... ('name', '=', 'account_asset'),
- ... ])
- >>> Module.install([x.id for x in modules], config.context)
+ ... ])
+ >>> module.click('install')
>>> Wizard('ir.module.module.install_upgrade').execute('upgrade')
Create company::
- >>> Currency = Model.get('currency.currency')
- >>> CurrencyRate = Model.get('currency.currency.rate')
- >>> Company = Model.get('company.company')
- >>> Party = Model.get('party.party')
- >>> company_config = Wizard('company.company.config')
- >>> company_config.execute('company')
- >>> company = company_config.form
- >>> party = Party(name='Dunder Mifflin')
- >>> party.save()
- >>> company.party = party
- >>> currencies = Currency.find([('code', '=', 'USD')])
- >>> if not currencies:
- ... currency = Currency(name='US Dollar', symbol=u'$', code='USD',
- ... rounding=Decimal('0.01'), mon_grouping='[]',
- ... mon_decimal_point='.', mon_thousands_sep=',')
- ... currency.save()
- ... CurrencyRate(date=today + relativedelta(month=1, day=1),
- ... rate=Decimal('1.0'), currency=currency).save()
- ... else:
- ... currency, = currencies
- >>> company.currency = currency
- >>> company_config.execute('add')
- >>> company, = Company.find()
+ >>> _ = create_company()
+ >>> company = get_company()
Reload the context::
@@ -61,63 +44,18 @@ Reload the context::
Create fiscal year::
- >>> FiscalYear = Model.get('account.fiscalyear')
- >>> Sequence = Model.get('ir.sequence')
- >>> SequenceStrict = Model.get('ir.sequence.strict')
- >>> fiscalyear = FiscalYear(name='%s' % today.year)
- >>> fiscalyear.start_date = today + relativedelta(month=1, day=1)
- >>> fiscalyear.end_date = today + relativedelta(month=12, day=31)
- >>> fiscalyear.company = company
- >>> post_move_sequence = Sequence(name='%s' % today.year,
- ... code='account.move',
- ... company=company)
- >>> post_move_sequence.save()
- >>> fiscalyear.post_move_sequence = post_move_sequence
- >>> invoice_sequence = SequenceStrict(name='%s' % today.year,
- ... code='account.invoice',
- ... company=company)
- >>> invoice_sequence.save()
- >>> fiscalyear.out_invoice_sequence = invoice_sequence
- >>> fiscalyear.in_invoice_sequence = invoice_sequence
- >>> fiscalyear.out_credit_note_sequence = invoice_sequence
- >>> fiscalyear.in_credit_note_sequence = invoice_sequence
- >>> fiscalyear.save()
- >>> FiscalYear.create_period([fiscalyear.id], config.context)
+ >>> fiscalyear = set_fiscalyear_invoice_sequences(
+ ... create_fiscalyear(company))
+ >>> fiscalyear.click('create_period')
Create chart of accounts::
- >>> AccountTemplate = Model.get('account.account.template')
- >>> Account = Model.get('account.account')
- >>> AccountJournal = Model.get('account.journal')
- >>> account_template, = AccountTemplate.find([('parent', '=', None)])
- >>> create_chart = Wizard('account.create_chart')
- >>> create_chart.execute('account')
- >>> create_chart.form.account_template = account_template
- >>> create_chart.form.company = company
- >>> create_chart.execute('create_account')
- >>> receivable, = Account.find([
- ... ('kind', '=', 'receivable'),
- ... ('company', '=', company.id),
- ... ])
- >>> payable, = Account.find([
- ... ('kind', '=', 'payable'),
- ... ('company', '=', company.id),
- ... ])
- >>> revenue, = Account.find([
- ... ('kind', '=', 'revenue'),
- ... ('company', '=', company.id),
- ... ])
- >>> asset_account, expense = Account.find([
- ... ('kind', '=', 'expense'),
- ... ('company', '=', company.id),
- ... ], order=[('name', 'DESC')])
- >>> depreciation_account, = Account.find([
- ... ('kind', '=', 'other'),
- ... ('name', '=', 'Depreciation'),
- ... ])
- >>> create_chart.form.account_receivable = receivable
- >>> create_chart.form.account_payable = payable
- >>> create_chart.execute('create_properties')
+ >>> _ = create_chart(company)
+ >>> accounts = add_asset_accounts(get_accounts(company), company)
+ >>> revenue = accounts['revenue']
+ >>> asset_account = accounts['asset']
+ >>> expense = accounts['expense']
+ >>> depreciation_account = accounts['depreciation']
Create an asset::
@@ -152,11 +90,7 @@ Create supplier::
Create payment term::
- >>> PaymentTerm = Model.get('account.invoice.payment_term')
- >>> PaymentTermLine = Model.get('account.invoice.payment_term.line')
- >>> payment_term = PaymentTerm(name='Direct')
- >>> payment_term_line = PaymentTermLine(type='remainder', days=0)
- >>> payment_term.lines.append(payment_term_line)
+ >>> payment_term = create_payment_term()
>>> payment_term.save()
Buy an asset::
@@ -172,8 +106,7 @@ Buy an asset::
>>> invoice_line.account == asset_account
True
>>> supplier_invoice.invoice_date = today + relativedelta(day=1, month=1)
- >>> supplier_invoice.save()
- >>> Invoice.post([supplier_invoice.id], config.context)
+ >>> supplier_invoice.click('post')
>>> supplier_invoice.state
u'posted'
>>> invoice_line, = supplier_invoice.lines
@@ -199,9 +132,7 @@ Depreciate the asset::
>>> asset.unit == unit
True
>>> asset.residual_value = Decimal('100')
- >>> asset.save()
- >>> Asset.create_lines([asset.id], config.context)
- >>> asset.reload()
+ >>> asset.click('create_lines')
>>> len(asset.lines)
24
>>> [l.depreciation for l in asset.lines] == [Decimal('37.5')] * 24
@@ -218,8 +149,7 @@ Depreciate the asset::
Decimal('100.00')
>>> asset.lines[-1].accumulated_depreciation
Decimal('900.00')
- >>> Asset.run([asset.id], config.context)
- >>> asset.reload()
+ >>> asset.click('run')
Create Moves for 3 months::
@@ -308,8 +238,7 @@ Sale the asset::
>>> invoice_line.unit_price = Decimal('600')
>>> invoice_line.account == revenue
True
- >>> customer_invoice.save()
- >>> Invoice.post([customer_invoice.id], config.context)
+ >>> customer_invoice.click('post')
>>> customer_invoice.state
u'posted'
>>> asset.reload()
@@ -329,3 +258,9 @@ Sale the asset::
Decimal('339.28')
>>> depreciation_account.credit
Decimal('239.28')
+
+Generate the asset report::
+
+ >>> print_depreciation_table = Wizard(
+ ... 'account.asset.print_depreciation_table')
+ >>> print_depreciation_table.execute('print_')
diff --git a/tests/test_account_asset.py b/tests/test_account_asset.py
index c763703..7c929d7 100644
--- a/tests/test_account_asset.py
+++ b/tests/test_account_asset.py
@@ -1,25 +1,15 @@
-#This file is part of Tryton. The COPYRIGHT file at the top level of
-#this repository contains the full copyright notices and license terms.
+# This file is part of Tryton. The COPYRIGHT file at the top level of
+# this repository contains the full copyright notices and license terms.
import unittest
import doctest
import trytond.tests.test_tryton
-from trytond.tests.test_tryton import test_view, test_depends
+from trytond.tests.test_tryton import ModuleTestCase
from trytond.tests.test_tryton import doctest_setup, doctest_teardown
-class AccountAssetTestCase(unittest.TestCase):
+class AccountAssetTestCase(ModuleTestCase):
'Test AccountAsset module'
-
- def setUp(self):
- trytond.tests.test_tryton.install_module('account_asset')
-
- def test0005views(self):
- 'Test views'
- test_view('account_asset')
-
- def test0006depends(self):
- 'Test depends'
- test_depends()
+ module = 'account_asset'
def suite():
diff --git a/tests/tools.py b/tests/tools.py
new file mode 100644
index 0000000..cf03206
--- /dev/null
+++ b/tests/tools.py
@@ -0,0 +1,29 @@
+# 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 proteus import Model
+
+from trytond.modules.company.tests.tools import get_company
+
+
+def add_asset_accounts(accounts, company=None, config=None):
+ "Add asset kind to accounts"
+ Account = Model.get('account.account', config=config)
+
+ if not company:
+ company = get_company()
+
+ expense_accounts = Account.find([
+ ('kind', '=', 'expense'),
+ ('company', '=', company.id),
+ ])
+ for account in expense_accounts:
+ if account.name == 'Expense':
+ accounts['expense'] = account
+ elif account.name == 'Assets':
+ accounts['asset'] = account
+ depreciation, = Account.find([
+ ('kind', '=', 'other'),
+ ('name', '=', 'Depreciation'),
+ ])
+ accounts['depreciation'] = depreciation
+ return accounts
diff --git a/tryton.cfg b/tryton.cfg
index 3960a4a..d755180 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
[tryton]
-version=3.4.1
+version=3.6.0
depends:
ir
res
diff --git a/trytond_account_asset.egg-info/PKG-INFO b/trytond_account_asset.egg-info/PKG-INFO
index d96e686..587008d 100644
--- a/trytond_account_asset.egg-info/PKG-INFO
+++ b/trytond_account_asset.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
Metadata-Version: 1.1
Name: trytond-account-asset
-Version: 3.4.1
+Version: 3.6.0
Summary: Tryton module for assets management
Home-page: http://www.tryton.org/
Author: Tryton
Author-email: issue_tracker at tryton.org
License: GPL-3
-Download-URL: http://downloads.tryton.org/3.4/
+Download-URL: http://downloads.tryton.org/3.6/
Description: trytond_account_asset
=====================
@@ -64,5 +64,7 @@ Classifier: Natural Language :: Slovenian
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Office/Business
Classifier: Topic :: Office/Business :: Financial :: Accounting
diff --git a/trytond_account_asset.egg-info/SOURCES.txt b/trytond_account_asset.egg-info/SOURCES.txt
index ffc284f..a19e9ea 100644
--- a/trytond_account_asset.egg-info/SOURCES.txt
+++ b/trytond_account_asset.egg-info/SOURCES.txt
@@ -32,6 +32,7 @@ tryton.cfg
./tests/__init__.py
./tests/scenario_account_asset.rst
./tests/test_account_asset.py
+./tests/tools.py
./view/asset_create_moves_start_form.xml
./view/asset_form.xml
./view/asset_line_form.xml
@@ -42,6 +43,7 @@ tryton.cfg
./view/category_form.xml
./view/configuration_form.xml
./view/invoice_line_form.xml
+./view/print_depreciation_table_start.xml
./view/template_form.xml
doc/index.rst
locale/ca_ES.po
@@ -70,4 +72,5 @@ view/asset_update_start_form.xml
view/category_form.xml
view/configuration_form.xml
view/invoice_line_form.xml
+view/print_depreciation_table_start.xml
view/template_form.xml
\ No newline at end of file
diff --git a/trytond_account_asset.egg-info/requires.txt b/trytond_account_asset.egg-info/requires.txt
index 7e0ef41..e0f86c5 100644
--- a/trytond_account_asset.egg-info/requires.txt
+++ b/trytond_account_asset.egg-info/requires.txt
@@ -1,5 +1,7 @@
-trytond_account >= 3.4, < 3.5
-trytond_account_product >= 3.4, < 3.5
-trytond_product >= 3.4, < 3.5
-trytond_account_invoice >= 3.4, < 3.5
-trytond >= 3.4, < 3.5
\ No newline at end of file
+cached-property
+python-dateutil
+trytond_account >= 3.6, < 3.7
+trytond_account_product >= 3.6, < 3.7
+trytond_product >= 3.6, < 3.7
+trytond_account_invoice >= 3.6, < 3.7
+trytond >= 3.6, < 3.7
\ No newline at end of file
diff --git a/view/print_depreciation_table_start.xml b/view/print_depreciation_table_start.xml
new file mode 100644
index 0000000..11c0b79
--- /dev/null
+++ b/view/print_depreciation_table_start.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
+this repository contains the full copyright notices and license terms. -->
+<form string="Choose Dates">
+ <label name="start_date"/>
+ <field name="start_date"/>
+ <label name="end_date"/>
+ <field name="end_date"/>
+</form>
--
tryton-modules-account-asset
More information about the tryton-debian-vcs
mailing list