[tryton-debian-vcs] tryton-modules-analytic-account branch upstream created. 55ceeacfedbab60cf9810983511fef061ed9909e
Mathias Behrle
tryton-debian-vcs at alioth.debian.org
Wed Nov 27 16:57:50 UTC 2013
The following commit has been merged in the upstream branch:
https://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi/?p=tryton/tryton-modules-analytic-account.git;a=commitdiff;h=55ceeacfedbab60cf9810983511fef061ed9909e
commit 55ceeacfedbab60cf9810983511fef061ed9909e
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Nov 24 17:26:29 2013 +0100
Adding upstream version 3.0.0.
diff --git a/CHANGELOG b/CHANGELOG
index 307388e..8921297 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 3.0.0 - 2013-10-21
+* Bug fixes (see mercurial logs for details)
+
Version 2.8.0 - 2013-04-22
* Bug fixes (see mercurial logs for details)
diff --git a/INSTALL b/INSTALL
index 80b3192..cbfa29a 100644
--- a/INSTALL
+++ b/INSTALL
@@ -5,6 +5,7 @@ Prerequisites
-------------
* Python 2.6 or later (http://www.python.org/)
+ * python-sql (http://code.google.com/p/python-sql/)
* trytond (http://www.tryton.org/)
* trytond_company (http://www.tryton.org/)
* trytond_party (http://www.tryton.org/)
diff --git a/PKG-INFO b/PKG-INFO
index 950839e..b804a2b 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
Metadata-Version: 1.1
Name: trytond_analytic_account
-Version: 2.8.0
+Version: 3.0.0
Summary: Tryton module for analytic accounting
Home-page: http://www.tryton.org/
Author: Tryton
Author-email: UNKNOWN
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.8/
+Download-URL: http://downloads.tryton.org/3.0/
Description: trytond_analytic_account
========================
@@ -59,6 +59,7 @@ Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: German
Classifier: Natural Language :: Russian
+Classifier: Natural Language :: Slovenian
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.6
diff --git a/account.py b/account.py
index a1e0afb..05c388f 100644
--- a/account.py
+++ b/account.py
@@ -2,6 +2,10 @@
#this repository contains the full copyright notices and license terms.
from decimal import Decimal
import copy
+from sql import Column
+from sql.aggregate import Sum
+from sql.conditionals import Coalesce
+
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard, StateView, StateAction, Button
from trytond.pyson import Eval, PYSONEncoder
@@ -115,9 +119,18 @@ class Account(ModelSQL, ModelView):
@classmethod
def get_balance(cls, accounts, name):
res = {}
- Line = Pool().get('analytic_account.line')
- Currency = Pool().get('currency.currency')
+ pool = Pool()
+ Line = pool.get('analytic_account.line')
+ MoveLine = pool.get('account.move.line')
+ Account = pool.get('account.account')
+ Company = pool.get('company.company')
+ Currency = pool.get('currency.currency')
cursor = Transaction().cursor
+ table = cls.__table__()
+ line = Line.__table__()
+ move_line = MoveLine.__table__()
+ a_account = Account.__table__()
+ company = Company.__table__()
ids = [a.id for a in accounts]
childs = cls.search([('parent', 'child_of', ids)])
@@ -128,25 +141,22 @@ class Account(ModelSQL, ModelView):
for account in all_accounts:
id2account[account.id] = account
- line_query = Line.query_get()
- cursor.execute('SELECT a.id, '
- 'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), '
- 'c.currency '
- 'FROM analytic_account_account a '
- 'LEFT JOIN analytic_account_line l '
- 'ON (a.id = l.account) '
- 'LEFT JOIN account_move_line ml '
- 'ON (ml.id = l.move_line) '
- 'LEFT JOIN account_account aa '
- 'ON (aa.id = ml.account) '
- 'LEFT JOIN company_company c '
- 'ON (c.id = aa.company) '
- 'WHERE a.type != \'view\' '
- 'AND a.id IN (' +
- ','.join(('%s',) * len(all_ids)) + ') '
- 'AND ' + line_query + ' '
- 'AND a.active '
- 'GROUP BY a.id, c.currency', all_ids)
+ line_query = Line.query_get(line)
+ cursor.execute(*table.join(line, 'LEFT',
+ condition=table.id == line.account
+ ).join(move_line, 'LEFT',
+ condition=move_line.id == line.move_line
+ ).join(a_account, 'LEFT',
+ condition=a_account.id == move_line.account
+ ).join(company, 'LEFT',
+ condition=company.id == a_account.company
+ ).select(table.id,
+ Sum(Coalesce(line.debit, 0) - Coalesce(line.credit, 0)),
+ company.currency,
+ where=(table.type != 'view')
+ & table.id.in_(all_ids)
+ & table.active & line_query,
+ group_by=(table.id, company.currency)))
account_sum = {}
id2currency = {}
for account_id, sum, currency_id in cursor.fetchall():
@@ -185,8 +195,16 @@ class Account(ModelSQL, ModelView):
res = {}
pool = Pool()
Line = pool.get('analytic_account.line')
+ MoveLine = pool.get('account.move.line')
+ Account = pool.get('account.account')
+ Company = pool.get('company.company')
Currency = pool.get('currency.currency')
cursor = Transaction().cursor
+ table = cls.__table__()
+ line = Line.__table__()
+ move_line = MoveLine.__table__()
+ a_account = Account.__table__()
+ company = Company.__table__()
if name not in ('credit', 'debit'):
raise Exception('Bad argument')
@@ -197,25 +215,22 @@ class Account(ModelSQL, ModelView):
res[account.id] = Decimal('0.0')
id2account[account.id] = account
- line_query = Line.query_get()
- cursor.execute('SELECT a.id, '
- 'SUM(COALESCE(l.' + name + ', 0)), '
- 'c.currency '
- 'FROM analytic_account_account a '
- 'LEFT JOIN analytic_account_line l '
- 'ON (a.id = l.account) '
- 'LEFT JOIN account_move_line ml '
- 'ON (ml.id = l.move_line) '
- 'LEFT JOIN account_account aa '
- 'ON (aa.id = ml.account) '
- 'LEFT JOIN company_company c '
- 'ON (c.id = aa.company) '
- 'WHERE a.type != \'view\' '
- 'AND a.id IN (' +
- ','.join(('%s',) * len(ids)) + ') '
- 'AND ' + line_query + ' '
- 'AND a.active '
- 'GROUP BY a.id, c.currency', ids)
+ line_query = Line.query_get(line)
+ cursor.execute(*table.join(line, 'LEFT',
+ condition=table.id == line.account
+ ).join(move_line, 'LEFT',
+ condition=move_line.id == line.move_line
+ ).join(a_account, 'LEFT',
+ condition=a_account.id == move_line.account
+ ).join(company, 'LEFT',
+ condition=company.id == a_account.company
+ ).select(table.id,
+ Sum(Coalesce(Column(line, name), 0)),
+ company.currency,
+ where=(table.type != 'view')
+ & table.id.in_(ids)
+ & table.active & line_query,
+ group_by=(table.id, company.currency)))
id2currency = {}
for account_id, sum, currency_id in cursor.fetchall():
@@ -240,11 +255,11 @@ class Account(ModelSQL, ModelView):
@classmethod
def search_rec_name(cls, name, clause):
- accounts = cls.search([('code',) + clause[1:]], limit=1)
+ accounts = cls.search([('code',) + tuple(clause[1:])], limit=1)
if accounts:
- return [('code',) + clause[1:]]
+ return [('code',) + tuple(clause[1:])]
else:
- return [(cls._rec_name,) + clause[1:]]
+ return [(cls._rec_name,) + tuple(clause[1:])]
@classmethod
def convert_view(cls, tree):
@@ -272,10 +287,15 @@ class Account(ModelSQL, ModelView):
parent.remove(element_accounts)
@classmethod
- def analytic_accounts_fields_get(cls, field, fields_names=None):
+ def analytic_accounts_fields_get(cls, field, fields_names=None,
+ states=None, required_states=None):
res = {}
if fields_names is None:
fields_names = []
+ if states is None:
+ states = {}
+
+ encoder = PYSONEncoder()
root_accounts = cls.search([
('parent', '=', None),
@@ -284,7 +304,13 @@ class Account(ModelSQL, ModelView):
name = 'analytic_account_' + str(account.id)
if name in fields_names or not fields_names:
res[name] = field.copy()
- res[name]['required'] = account.mandatory
+ field_states = states.copy()
+ if account.mandatory:
+ if required_states:
+ field_states['required'] = required_states
+ else:
+ field_states['required'] = True
+ res[name]['states'] = encoder.encode(field_states)
res[name]['string'] = account.name
res[name]['relation'] = cls.__name__
res[name]['domain'] = PYSONEncoder().encode([
diff --git a/account.xml b/account.xml
index 04c21bf..ac0bc07 100644
--- a/account.xml
+++ b/account.xml
@@ -26,7 +26,7 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.action.act_window" id="act_account_tree">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
- <field name="domain">[('parent', '=', False)]</field>
+ <field name="domain">[('parent', '=', None), ('type', '=', 'root')]</field>
</record>
<record model="ir.action.act_window.view" id="act_account_tree_view1">
<field name="sequence" eval="10"/>
@@ -69,7 +69,7 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.action.act_window" id="act_account_tree2">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
- <field name="domain">[('parent', '=', False)]</field>
+ <field name="domain">[('parent', '=', None)]</field>
</record>
<record model="ir.action.act_window.view" id="act_account_tree2_view1">
<field name="sequence" eval="10"/>
diff --git a/line.py b/line.py
index 123500c..16b05d7 100644
--- a/line.py
+++ b/line.py
@@ -1,10 +1,9 @@
#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 time
from decimal import Decimal
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard, StateAction
-from trytond.backend import TableHandler
+from trytond import backend
from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
from trytond.pool import Pool
@@ -44,7 +43,8 @@ class Line(ModelSQL, ModelView):
'Wrong credit/debit values.'),
]
cls._error_messages.update({
- 'line_on_view_account': ('You can not create a move line using '
+ 'line_on_view_account': (
+ 'You can not create a move line using '
'view account "%s".'),
'line_on_inactive_account': ('You can not create a move line '
'using inactive account "%s".'),
@@ -53,6 +53,7 @@ class Line(ModelSQL, ModelView):
@classmethod
def __register__(cls, module_name):
+ TableHandler = backend.get('TableHandler')
super(Line, cls).__register__(module_name)
cursor = Transaction().cursor
table = TableHandler(cursor, cls, module_name)
@@ -87,23 +88,17 @@ class Line(ModelSQL, ModelView):
return 2
@staticmethod
- def query_get(obj='l'):
+ def query_get(table):
'''
Return SQL clause for analytic line depending of the context.
- obj is the SQL alias of the analytic_account_line in the query.
+ table is the SQL instance of the analytic_account_line table.
'''
- res = obj + '.active'
+ clause = table.active
if Transaction().context.get('start_date'):
- # Check start_date
- time.strptime(str(Transaction().context['start_date']), '%Y-%m-%d')
- res += (' AND ' + obj + '.date >= date(\''
- + str(Transaction().context['start_date']) + '\')')
+ clause &= table.date >= Transaction().context['start_date']
if Transaction().context.get('end_date'):
- # Check end_date
- time.strptime(str(Transaction().context['end_date']), '%Y-%m-%d')
- res += (' AND ' + obj + '.date <= date(\''
- + str(Transaction().context['end_date']) + '\')')
- return res
+ clause &= table.date <= Transaction().context['end_date']
+ return clause
@classmethod
def validate(cls, lines):
diff --git a/locale/de_DE.po b/locale/de_DE.po
index bc486a9..482bf2f 100644
--- a/locale/de_DE.po
+++ b/locale/de_DE.po
@@ -46,10 +46,6 @@ msgctxt "field:account.statement,lines:"
msgid "Transactions"
msgstr "Transaktionen"
-msgctxt "field:account.statement,move_lines:"
-msgid "Move Lines"
-msgstr "Buchungsposten"
-
msgctxt "field:account.statement,rec_name:"
msgid "Name"
msgstr "Name"
diff --git a/locale/es_AR.po b/locale/es_AR.po
index e7d60de..45caffb 100644
--- a/locale/es_AR.po
+++ b/locale/es_AR.po
@@ -61,11 +61,11 @@ msgstr "Haber"
msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
-msgstr "Divisa"
+msgstr "Moneda"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígitos de divisa"
+msgstr "Dígitos de moneda"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
@@ -212,11 +212,11 @@ msgstr "Haber"
msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
-msgstr "Divisa"
+msgstr "Moneda"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígitos de divisa"
+msgstr "Dígitos de moneda"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index 1cf0188..b5d187a 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -7,7 +7,7 @@ msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account on \"%s\"."
msgstr ""
-"No se puede tener muchos cuentas con la misma raíz o sin una cuenta raíz "
+"No se puede tener muchas cuentas con la misma raíz o falta una cuenta raíz "
"obligatoria en \"%s\"."
msgctxt "error:analytic_account.line:"
@@ -20,7 +20,7 @@ msgstr "No puede crear una línea de movimiento usando una cuenta inactiva \"%s\
msgctxt "error:analytic_account.line:"
msgid "You can not create a move line using view account \"%s\"."
-msgstr "No puede crear un apunte utilizando la cuenta de vista \"%s\"."
+msgstr "No puede crear un apunte utilizando la cuenta tipo vista \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index 8ee875d..c0d7f42 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -347,14 +347,6 @@ msgid "Credit - Debit"
msgstr "Crédit - Débit"
msgctxt "selection:analytic_account.account,display_balance:"
-msgid "Credit - Debit"
-msgstr "Crédit - Débit"
-
-msgctxt "selection:analytic_account.account,display_balance:"
-msgid "Debit - Credit"
-msgstr "Débit - Crédit"
-
-msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Débit - Crédit"
@@ -363,14 +355,6 @@ msgid "Closed"
msgstr "Fermé"
msgctxt "selection:analytic_account.account,state:"
-msgid "Closed"
-msgstr "Fermé"
-
-msgctxt "selection:analytic_account.account,state:"
-msgid "Draft"
-msgstr "Brouillon"
-
-msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Brouillon"
@@ -378,14 +362,6 @@ msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Ouvert"
-msgctxt "selection:analytic_account.account,state:"
-msgid "Opened"
-msgstr "Ouvert"
-
-msgctxt "selection:analytic_account.account,type:"
-msgid "Normal"
-msgstr "Normal"
-
msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Normal"
@@ -395,14 +371,6 @@ msgid "Root"
msgstr "Racine"
msgctxt "selection:analytic_account.account,type:"
-msgid "Root"
-msgstr "Racine"
-
-msgctxt "selection:analytic_account.account,type:"
-msgid "View"
-msgstr "Vue"
-
-msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Vue"
@@ -410,10 +378,6 @@ msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Analytique"
-msgctxt "view:account.move.line:"
-msgid "Analytic"
-msgstr "Analytique"
-
msgctxt "view:account.move:"
msgid "Analytic"
msgstr "Analytique"
@@ -423,22 +387,10 @@ msgid "Analytic Account"
msgstr "Compte analytique"
msgctxt "view:analytic_account.account:"
-msgid "Analytic Account"
-msgstr "Compte analytique"
-
-msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr "Comptes analytiques"
msgctxt "view:analytic_account.account:"
-msgid "Analytic Accounts"
-msgstr "Comptes analytiques"
-
-msgctxt "view:analytic_account.account:"
-msgid "General Information"
-msgstr "Information générale"
-
-msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Information générale"
@@ -446,14 +398,6 @@ msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Notes"
-msgctxt "view:analytic_account.account:"
-msgid "Notes"
-msgstr "Notes"
-
-msgctxt "view:analytic_account.line:"
-msgid "Analytic Line"
-msgstr "Ligne analytique"
-
msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr "Ligne analytique"
@@ -463,14 +407,6 @@ msgid "Analytic Lines"
msgstr "Lignes analytiques"
msgctxt "view:analytic_account.line:"
-msgid "Analytic Lines"
-msgstr "Lignes analytiques"
-
-msgctxt "view:analytic_account.line:"
-msgid "General Information"
-msgstr "Information générale"
-
-msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Information générale"
diff --git a/locale/es_ES.po b/locale/sl_SI.po
similarity index 75%
copy from locale/es_ES.po
copy to locale/sl_SI.po
index 1cf0188..6fe9c6f 100644
--- a/locale/es_ES.po
+++ b/locale/sl_SI.po
@@ -7,72 +7,72 @@ msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account on \"%s\"."
msgstr ""
-"No se puede tener muchos cuentas con la misma raíz o sin una cuenta raíz "
-"obligatoria en \"%s\"."
+"Pri \"%s\" ni možno imeti več kontov z istim korenskim kontom ali z "
+"manjkajočim obveznim korenskim kontom."
msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values."
-msgstr "Valores de haber/debe erróneos."
+msgstr "Napačne vrednosti za debet/kredit."
msgctxt "error:analytic_account.line:"
msgid "You can not create a move line using inactive account \"%s\"."
-msgstr "No puede crear una línea de movimiento usando una cuenta inactiva \"%s\"."
+msgstr "Knjiženje postavke ni možno izvesti z neaktivnim kontom \"%s\"."
msgctxt "error:analytic_account.line:"
msgid "You can not create a move line using view account \"%s\"."
-msgstr "No puede crear un apunte utilizando la cuenta de vista \"%s\"."
+msgstr "Knjiženje postavke ni možno izvesti z vpoglednim kontom \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
-msgstr "Líneas analíticas"
+msgstr "Analitične postavke"
msgctxt "field:analytic_account.account,active:"
msgid "Active"
-msgstr "Activa"
+msgstr "Aktivno"
msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
-msgstr "Saldo"
+msgstr "Bilanca"
msgctxt "field:analytic_account.account,childs:"
msgid "Children"
-msgstr "Hijos"
+msgstr "Podkonti"
msgctxt "field:analytic_account.account,code:"
msgid "Code"
-msgstr "Código"
+msgstr "Šifra"
msgctxt "field:analytic_account.account,company:"
msgid "Company"
-msgstr "Empresa"
+msgstr "Podjetje"
msgctxt "field:analytic_account.account,create_date:"
msgid "Create Date"
-msgstr "Fecha creación"
+msgstr "Ustvarjeno"
msgctxt "field:analytic_account.account,create_uid:"
msgid "Create User"
-msgstr "Usuario creación"
+msgstr "Ustvaril"
msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
-msgstr "Haber"
+msgstr "Kredit"
msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
-msgstr "Moneda"
+msgstr "Valuta"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimales de la moneda"
+msgstr "Decimalke"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
-msgstr "Debe"
+msgstr "Debet"
msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
-msgstr "Mostrar saldo"
+msgstr "Prikaz bilance"
msgctxt "field:analytic_account.account,id:"
msgid "ID"
@@ -80,60 +80,60 @@ msgstr "ID"
msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
-msgstr "Obligatorio"
+msgstr "Obvezno"
msgctxt "field:analytic_account.account,name:"
msgid "Name"
-msgstr "Nombre"
+msgstr "Naziv"
msgctxt "field:analytic_account.account,note:"
msgid "Note"
-msgstr "Nota"
+msgstr "Opomba"
msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
-msgstr "Padre"
+msgstr "Matični konto"
msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
-msgstr "Nombre"
+msgstr "Ime"
msgctxt "field:analytic_account.account,root:"
msgid "Root"
-msgstr "Raíz"
+msgstr "Koren"
msgctxt "field:analytic_account.account,state:"
msgid "State"
-msgstr "Estado"
+msgstr "Stanje"
msgctxt "field:analytic_account.account,type:"
msgid "Type"
-msgstr "Tipo"
+msgstr "Tip"
msgctxt "field:analytic_account.account,write_date:"
msgid "Write Date"
-msgstr "Fecha modificación"
+msgstr "Zapisano"
msgctxt "field:analytic_account.account,write_uid:"
msgid "Write User"
-msgstr "Usuario modificación"
+msgstr "Zapisal"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
-msgstr "Cuenta"
+msgstr "Konto"
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr "Fecha creación"
+msgstr "Ustvarjeno"
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr "Usuario creación"
+msgstr "Ustvaril"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,id:"
@@ -143,35 +143,35 @@ msgstr "ID"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
-msgstr "Nombre"
+msgstr "Ime"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
-msgstr "Selección"
+msgstr "Izbor"
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr "Fecha modificación"
+msgstr "Zapisano"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr "Usuario modificación"
+msgstr "Zapisal"
msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
-msgstr "Cuentas"
+msgstr "Konti"
msgctxt "field:analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr "Fecha creación"
+msgstr "Ustvarjeno"
msgctxt "field:analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr "Usuario creación"
+msgstr "Ustvaril"
msgctxt "field:analytic_account.account.selection,id:"
msgid "ID"
@@ -179,51 +179,51 @@ msgstr "ID"
msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
-msgstr "Nombre"
+msgstr "Ime"
msgctxt "field:analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr "Fecha modificación"
+msgstr "Zapisano"
msgctxt "field:analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr "Usuario modificación"
+msgstr "Zapisal"
msgctxt "field:analytic_account.line,account:"
msgid "Account"
-msgstr "Cuenta"
+msgstr "Konto"
msgctxt "field:analytic_account.line,active:"
msgid "Active"
-msgstr "Activa"
+msgstr "Aktivno"
msgctxt "field:analytic_account.line,create_date:"
msgid "Create Date"
-msgstr "Fecha creación"
+msgstr "Ustvarjeno"
msgctxt "field:analytic_account.line,create_uid:"
msgid "Create User"
-msgstr "Usuario creación"
+msgstr "Ustvaril"
msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
-msgstr "Haber"
+msgstr "Kredit"
msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
-msgstr "Moneda"
+msgstr "Valuta"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimales de la moneda"
+msgstr "Decimalke"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
-msgstr "Fecha"
+msgstr "Datum"
msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
-msgstr "Debe"
+msgstr "Debet"
msgctxt "field:analytic_account.line,id:"
msgid "ID"
@@ -231,39 +231,39 @@ msgstr "ID"
msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
-msgstr "Diario"
+msgstr "Dnevnik"
msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
-msgstr "Apunte contable"
+msgstr "Postavka knjižbe"
msgctxt "field:analytic_account.line,name:"
msgid "Name"
-msgstr "Nombre"
+msgstr "Naziv"
msgctxt "field:analytic_account.line,party:"
msgid "Party"
-msgstr "Tercero"
+msgstr "Stranka"
msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
-msgstr "Nombre"
+msgstr "Ime"
msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
-msgstr "Referencia"
+msgstr "Sklic"
msgctxt "field:analytic_account.line,write_date:"
msgid "Write Date"
-msgstr "Fecha modificación"
+msgstr "Zapisano"
msgctxt "field:analytic_account.line,write_uid:"
msgid "Write User"
-msgstr "Usuario modificación"
+msgstr "Zapisal"
msgctxt "field:analytic_account.open_chart.start,end_date:"
msgid "End Date"
-msgstr "Fecha final"
+msgstr "Končni datum"
msgctxt "field:analytic_account.open_chart.start,id:"
msgid "ID"
@@ -271,149 +271,145 @@ msgstr "ID"
msgctxt "field:analytic_account.open_chart.start,start_date:"
msgid "Start Date"
-msgstr "Fecha inicial"
+msgstr "Začetni datum"
msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
-msgstr "Cuenta analítica"
+msgstr "Analitični konto"
msgctxt ""
"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
-msgstr "Cuenta analítica - Selección de cuenta analítica"
+msgstr "Analitični konto - Izbor analitičnega konta"
msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
-msgstr "Selección de cuenta analítica"
+msgstr "Izbor analitičnega konta"
msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
-msgstr "Línea analítica"
+msgstr "Analitična postavka"
msgctxt "model:analytic_account.open_chart.start,name:"
msgid "Open Chart of Accounts"
-msgstr "Abrir plan contable"
+msgstr "Odpri kontni načrt"
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
-msgstr "Cuentas analíticas"
+msgstr "Analitični konti"
msgctxt "model:ir.action,name:act_account_tree"
msgid "Analytic Accounts"
-msgstr "Cuentas analíticas"
+msgstr "Analitični konti"
msgctxt "model:ir.action,name:act_account_tree2"
msgid "Analytic Accounts"
-msgstr "Cuentas analíticas"
+msgstr "Analitični konti"
msgctxt "model:ir.action,name:act_line_form"
msgid "Analytic Lines"
-msgstr "Líneas analíticas"
+msgstr "Analitične postavke"
msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
-msgstr "Abrir cuenta"
+msgstr "Odpri konto"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan analítico"
+msgstr "Odpri analitični kontni načrt"
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
-msgstr "Cuentas analíticas"
+msgstr "Analitični konti"
msgctxt "model:ir.ui.menu,name:menu_account_tree"
msgid "Analytic Accounts"
-msgstr "Cuentas analíticas"
+msgstr "Analitični konti"
msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
-msgstr "Contabilidad analítica"
+msgstr "Analitični konto"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan analítico"
+msgstr "Odpri analitični kontni načrt"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
-msgstr "Administración analítica"
+msgstr "Analitika - vodenje"
msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
-msgstr "Haber - Debe"
+msgstr "Kredit - Debet"
msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
-msgstr "Debe - Haber"
+msgstr "Debet - Kredit"
msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
-msgstr "Cerrada"
+msgstr "Zaprto"
msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
-msgstr "Borrador"
+msgstr "Osnutek"
msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
-msgstr "Abierta"
+msgstr "Odprto"
msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
-msgstr "Normal"
+msgstr "Normalno"
msgctxt "selection:analytic_account.account,type:"
msgid "Root"
-msgstr "Raíz"
+msgstr "Koren"
msgctxt "selection:analytic_account.account,type:"
msgid "View"
-msgstr "Vista"
+msgstr "Vpogled"
msgctxt "view:account.move.line:"
msgid "Analytic"
-msgstr "Analítica"
-
-msgctxt "view:account.move:"
-msgid "Analytic"
-msgstr "Analítica"
+msgstr "Analitično"
msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
-msgstr "Cuenta analítica"
+msgstr "Analitični konto"
msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
-msgstr "Cuentas analíticas"
+msgstr "Analitični konti"
msgctxt "view:analytic_account.account:"
msgid "General Information"
-msgstr "Información general"
+msgstr "Splošno"
msgctxt "view:analytic_account.account:"
msgid "Notes"
-msgstr "Notas"
+msgstr "Opombe"
msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
-msgstr "Línea analítica"
+msgstr "Analitična postavka"
msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
-msgstr "Líneas analíticas"
+msgstr "Analitične postavke"
msgctxt "view:analytic_account.line:"
msgid "General Information"
-msgstr "Información general"
+msgstr "Splošno"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan analítico"
+msgstr "Odpri analitični kontni načrt"
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
-msgstr "Cancelar"
+msgstr "Prekliči"
msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
-msgstr "Abrir"
+msgstr "Odpri"
diff --git a/setup.py b/setup.py
index b3149cb..9c485f1 100644
--- a/setup.py
+++ b/setup.py
@@ -21,7 +21,7 @@ major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
major_version = int(major_version)
minor_version = int(minor_version)
-requires = []
+requires = ['python-sql']
for dep in info.get('depends', []):
if not re.match(r'(ir|res|webdav)(\W|$)', dep):
requires.append('trytond_%s >= %s.%s, < %s.%s' %
@@ -63,6 +63,7 @@ setup(name='trytond_analytic_account',
'Natural Language :: French',
'Natural Language :: German',
'Natural Language :: Russian',
+ 'Natural Language :: Slovenian',
'Natural Language :: Spanish',
'Operating System :: OS Independent',
'Programming Language :: Python :: 2.6',
diff --git a/tests/__init__.py b/tests/__init__.py
index 43e5109..9ed41c1 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -2,3 +2,5 @@
#this repository contains the full copyright notices and license terms.
from .test_analytic_account import suite
+
+__all__ = ['suite']
diff --git a/tryton.cfg b/tryton.cfg
index f985701..8c89ebe 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
[tryton]
-version=2.8.0
+version=3.0.0
depends:
account
company
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index f9d7c8b..08871ff 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
Metadata-Version: 1.1
Name: trytond-analytic-account
-Version: 2.8.0
+Version: 3.0.0
Summary: Tryton module for analytic accounting
Home-page: http://www.tryton.org/
Author: Tryton
Author-email: UNKNOWN
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.8/
+Download-URL: http://downloads.tryton.org/3.0/
Description: trytond_analytic_account
========================
@@ -59,6 +59,7 @@ Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: German
Classifier: Natural Language :: Russian
+Classifier: Natural Language :: Slovenian
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.6
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index 27bd141..a754472 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -24,6 +24,7 @@ locale/es_ES.po
locale/fr_FR.po
locale/nl_NL.po
locale/ru_RU.po
+locale/sl_SI.po
trytond_analytic_account.egg-info/PKG-INFO
trytond_analytic_account.egg-info/SOURCES.txt
trytond_analytic_account.egg-info/dependency_links.txt
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 339f1aa..5246ce6 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,6 @@
-trytond_account >= 2.8, < 2.9
-trytond_company >= 2.8, < 2.9
-trytond_currency >= 2.8, < 2.9
-trytond_party >= 2.8, < 2.9
-trytond >= 2.8, < 2.9
\ No newline at end of file
+python-sql
+trytond_account >= 3.0, < 3.1
+trytond_company >= 3.0, < 3.1
+trytond_currency >= 3.0, < 3.1
+trytond_party >= 3.0, < 3.1
+trytond >= 3.0, < 3.1
\ No newline at end of file
diff --git a/view/account_form.xml b/view/account_form.xml
index b6c569c..07b0d5b 100644
--- a/view/account_form.xml
+++ b/view/account_form.xml
@@ -24,6 +24,7 @@ this repository contains the full copyright notices and license terms. -->
<field name="currency"/>
<label name="mandatory"/>
<field name="mandatory"/>
+ <field name="childs" colspan="4" view_ids="analytic_account.account_view_list"/>
</page>
<page string="Notes" id="notes">
<field name="note"/>
commit 1396193c7f65698fa297bc2d5cd66a1e9610ffe4
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Thu May 2 00:35:13 2013 +0200
Adding upstream version 2.8.0.
diff --git a/CHANGELOG b/CHANGELOG
index fa16e90..307388e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.8.0 - 2013-04-22
+* Bug fixes (see mercurial logs for details)
+
Version 2.6.0 - 2012-10-22
* Bug fixes (see mercurial logs for details)
diff --git a/COPYRIGHT b/COPYRIGHT
index ede3fac..5d422e0 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,6 +1,6 @@
-Copyright (C) 2008-2012 Cédric Krier.
-Copyright (C) 2008-2012 Bertrand Chenal.
-Copyright (C) 2008-2012 B2CK SPRL.
+Copyright (C) 2008-2013 Cédric Krier.
+Copyright (C) 2008-2013 Bertrand Chenal.
+Copyright (C) 2008-2013 B2CK SPRL.
Copyright (C) 2004-2008 Tiny SPRL.
This program is free software: you can redistribute it and/or modify
diff --git a/MANIFEST.in b/MANIFEST.in
index 44969c7..18ce53c 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -6,5 +6,6 @@ include CHANGELOG
include LICENSE
include tryton.cfg
include *.xml
+include view/*.xml
include *.odt
include locale/*.po
diff --git a/PKG-INFO b/PKG-INFO
index e25d66b..950839e 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: trytond_analytic_account
-Version: 2.6.0
+Version: 2.8.0
Summary: Tryton module for analytic accounting
Home-page: http://www.tryton.org/
Author: Tryton
Author-email: UNKNOWN
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.6/
+Download-URL: http://downloads.tryton.org/2.8/
Description: trytond_analytic_account
========================
@@ -52,6 +52,7 @@ Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Natural Language :: Bulgarian
+Classifier: Natural Language :: Catalan
Classifier: Natural Language :: Czech
Classifier: Natural Language :: Dutch
Classifier: Natural Language :: English
diff --git a/account.py b/account.py
index 7572440..a1e0afb 100644
--- a/account.py
+++ b/account.py
@@ -69,12 +69,6 @@ class Account(ModelSQL, ModelView):
@classmethod
def __setup__(cls):
super(Account, cls).__setup__()
- cls._constraints += [
- ('check_recursion', 'recursive_accounts'),
- ]
- cls._error_messages.update({
- 'recursive_accounts': 'You can not create recursive accounts!',
- })
cls._order.insert(0, ('code', 'ASC'))
@staticmethod
@@ -108,6 +102,11 @@ class Account(ModelSQL, ModelView):
def default_mandatory():
return False
+ @classmethod
+ def validate(cls, accounts):
+ super(Account, cls).validate(accounts)
+ cls.check_recursion(accounts)
+
def on_change_with_currency_digits(self, name=None):
if self.currency:
return self.currency.digits
@@ -130,24 +129,24 @@ class Account(ModelSQL, ModelView):
id2account[account.id] = account
line_query = Line.query_get()
- cursor.execute('SELECT a.id, ' \
- 'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), ' \
- 'c.currency ' \
- 'FROM analytic_account_account a ' \
- 'LEFT JOIN analytic_account_line l ' \
- 'ON (a.id = l.account) ' \
- 'LEFT JOIN account_move_line ml ' \
- 'ON (ml.id = l.move_line) ' \
- 'LEFT JOIN account_account aa ' \
- 'ON (aa.id = ml.account) ' \
- 'LEFT JOIN company_company c ' \
- 'ON (c.id = aa.company) ' \
- 'WHERE a.type != \'view\' ' \
- 'AND a.id IN (' + \
- ','.join(('%s',) * len(all_ids)) + ') ' \
- 'AND ' + line_query + ' ' \
- 'AND a.active ' \
- 'GROUP BY a.id, c.currency', all_ids)
+ cursor.execute('SELECT a.id, '
+ 'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), '
+ 'c.currency '
+ 'FROM analytic_account_account a '
+ 'LEFT JOIN analytic_account_line l '
+ 'ON (a.id = l.account) '
+ 'LEFT JOIN account_move_line ml '
+ 'ON (ml.id = l.move_line) '
+ 'LEFT JOIN account_account aa '
+ 'ON (aa.id = ml.account) '
+ 'LEFT JOIN company_company c '
+ 'ON (c.id = aa.company) '
+ 'WHERE a.type != \'view\' '
+ 'AND a.id IN (' +
+ ','.join(('%s',) * len(all_ids)) + ') '
+ 'AND ' + line_query + ' '
+ 'AND a.active '
+ 'GROUP BY a.id, c.currency', all_ids)
account_sum = {}
id2currency = {}
for account_id, sum, currency_id in cursor.fetchall():
@@ -199,24 +198,24 @@ class Account(ModelSQL, ModelView):
id2account[account.id] = account
line_query = Line.query_get()
- cursor.execute('SELECT a.id, ' \
- 'SUM(COALESCE(l.' + name + ', 0)), ' \
- 'c.currency ' \
- 'FROM analytic_account_account a ' \
- 'LEFT JOIN analytic_account_line l ' \
- 'ON (a.id = l.account) ' \
- 'LEFT JOIN account_move_line ml ' \
- 'ON (ml.id = l.move_line) ' \
- 'LEFT JOIN account_account aa ' \
- 'ON (aa.id = ml.account) ' \
- 'LEFT JOIN company_company c ' \
- 'ON (c.id = aa.company) ' \
- 'WHERE a.type != \'view\' ' \
- 'AND a.id IN (' + \
- ','.join(('%s',) * len(ids)) + ') ' \
- 'AND ' + line_query + ' ' \
- 'AND a.active ' \
- 'GROUP BY a.id, c.currency', ids)
+ cursor.execute('SELECT a.id, '
+ 'SUM(COALESCE(l.' + name + ', 0)), '
+ 'c.currency '
+ 'FROM analytic_account_account a '
+ 'LEFT JOIN analytic_account_line l '
+ 'ON (a.id = l.account) '
+ 'LEFT JOIN account_move_line ml '
+ 'ON (ml.id = l.move_line) '
+ 'LEFT JOIN account_account aa '
+ 'ON (aa.id = ml.account) '
+ 'LEFT JOIN company_company c '
+ 'ON (c.id = aa.company) '
+ 'WHERE a.type != \'view\' '
+ 'AND a.id IN (' +
+ ','.join(('%s',) * len(ids)) + ') '
+ 'AND ' + line_query + ' '
+ 'AND a.active '
+ 'GROUP BY a.id, c.currency', ids)
id2currency = {}
for account_id, sum, currency_id in cursor.fetchall():
@@ -325,7 +324,6 @@ class OpenChartAccount(Wizard):
class AccountSelection(ModelSQL, ModelView):
'Analytic Account Selection'
__name__ = 'analytic_account.account.selection'
- _rec_name = 'id'
accounts = fields.Many2Many(
'analytic_account.account-analytic_account.account.selection',
@@ -334,15 +332,17 @@ class AccountSelection(ModelSQL, ModelView):
@classmethod
def __setup__(cls):
super(AccountSelection, cls).__setup__()
- cls._constraints += [
- ('check_root', 'root_account'),
- ]
cls._error_messages.update({
- 'root_account': 'Can not have many accounts with the same ' \
- 'root or a missing mandatory root account!',
+ 'root_account': ('Can not have many accounts with the same '
+ 'root or a missing mandatory root account on "%s".'),
})
@classmethod
+ def validate(cls, selections):
+ super(AccountSelection, cls).validate(selections)
+ cls.check_root(selections)
+
+ @classmethod
def check_root(cls, selections):
"Check Root"
Account = Pool().get('analytic_account.account')
@@ -355,14 +355,14 @@ class AccountSelection(ModelSQL, ModelView):
roots = []
for account in selection.accounts:
if account.root.id in roots:
- return False
+ cls.raise_user_error('root_account', (account.rec_name,))
roots.append(account.root.id)
if Transaction().user: # Root can by pass
for account in root_accounts:
if account.mandatory:
if not account.id in roots:
- return False
- return True
+ cls.raise_user_error('root_account',
+ (account.rec_name,))
class AccountAccountSelection(ModelSQL):
diff --git a/account.xml b/account.xml
index 5237543..04c21bf 100644
--- a/account.xml
+++ b/account.xml
@@ -9,78 +9,18 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.ui.view" id="account_view_form">
<field name="model">analytic_account.account</field>
<field name="type">form</field>
- <field name="arch" type="xml">
- <![CDATA[
- <form string="Analytic Account" col="6">
- <label name="name"/>
- <field name="name"/>
- <label name="code"/>
- <field name="code"/>
- <label name="active"/>
- <field name="active" xexpand="0" width="100"/>
- <notebook colspan="6">
- <page string="General Information" id="general">
- <label name="type"/>
- <field name="type"/>
- <label name="display_balance"/>
- <field name="display_balance"/>
- <label name="root"/>
- <field name="root"/>
- <label name="parent"/>
- <field name="parent"/>
- <label name="company"/>
- <field name="company"/>
- <label name="currency"/>
- <field name="currency"/>
- <label name="mandatory"/>
- <field name="mandatory"/>
- </page>
- <page string="Notes" id="notes">
- <field name="note"/>
- </page>
- </notebook>
- <group colspan="6" col="2" id="state">
- <label name="state"/>
- <field name="state"/>
- </group>
- </form>
- ]]>
- </field>
+ <field name="name">account_form</field>
</record>
<record model="ir.ui.view" id="account_view_tree">
<field name="model">analytic_account.account</field>
<field name="type">tree</field>
<field name="field_childs">childs</field>
- <field name="arch" type="xml">
- <![CDATA[
- <tree string="Analytic Accounts">
- <field name="rec_name"/>
- <field name="company"/>
- <field name="type"/>
- <field name="active" tree_invisible="1"/>
- <field name="name" tree_invisible="1"/>
- <field name="code" tree_invisible="1"/>
- <field name="parent" tree_invisible="1"/>
- <field name="childs" tree_invisible="1"/>
- </tree>
- ]]>
- </field>
+ <field name="name">account_tree</field>
</record>
<record model="ir.ui.view" id="account_view_list">
<field name="model">analytic_account.account</field>
<field name="type">tree</field>
- <field name="arch" type="xml">
- <![CDATA[
- <tree string="Analytic Accounts">
- <field name="rec_name"/>
- <field name="company"/>
- <field name="type"/>
- <field name="active" tree_invisible="1"/>
- <field name="name" tree_invisible="1"/>
- <field name="code" tree_invisible="1"/>
- </tree>
- ]]>
- </field>
+ <field name="name">account_list</field>
</record>
<record model="ir.action.act_window" id="act_account_tree">
@@ -124,18 +64,7 @@ this repository contains the full copyright notices and license terms. -->
<field name="type">tree</field>
<field name="field_childs">childs</field>
<field name="priority" eval="20"/>
- <field name="arch" type="xml">
- <![CDATA[
- <tree string="Analytic Accounts" keyword_open="1">
- <field name="name"/>
- <field name="code"/>
- <field name="debit"/>
- <field name="credit"/>
- <field name="balance"/>
- <field name="currency"/>
- </tree>
- ]]>
- </field>
+ <field name="name">account_tree2</field>
</record>
<record model="ir.action.act_window" id="act_account_tree2">
<field name="name">Analytic Accounts</field>
@@ -180,25 +109,14 @@ this repository contains the full copyright notices and license terms. -->
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_account1">
- <field name="field" search="[('name', '=', 'company'), ('model.model', '=', 'analytic_account.account')]"/>
- <field name="operator">in</field>
- <field name="operand">User/Current Companies</field>
+ <field name="domain">[('company', 'in', [c.id for c in user.companies])]</field>
<field name="rule_group" ref="rule_group_account"/>
</record>
<record model="ir.ui.view" id="open_chart_start_view_form">
<field name="model">analytic_account.open_chart.start</field>
<field name="type">form</field>
- <field name="arch" type="xml">
- <![CDATA[
- <form string="Open Chart of Analytic Accounts">
- <label name="start_date"/>
- <field name="start_date"/>
- <label name="end_date"/>
- <field name="end_date"/>
- </form>
- ]]>
- </field>
+ <field name="name">open_chart_start_form</field>
</record>
</data>
</tryton>
diff --git a/line.py b/line.py
index 4746014..123500c 100644
--- a/line.py
+++ b/line.py
@@ -41,15 +41,14 @@ class Line(ModelSQL, ModelView):
cls._sql_constraints += [
('credit_debit',
'CHECK((credit * debit = 0.0) AND (credit + debit >= 0.0))',
- 'Wrong credit/debit values!'),
- ]
- cls._constraints += [
- ('check_account', 'line_on_view_inactive_account'),
+ 'Wrong credit/debit values.'),
]
cls._error_messages.update({
- 'line_on_view_inactive_account': 'You can not create move line\n' \
- 'on view/inactive account!',
- })
+ 'line_on_view_account': ('You can not create a move line using '
+ 'view account "%s".'),
+ 'line_on_inactive_account': ('You can not create a move line '
+ 'using inactive account "%s".'),
+ })
cls._order.insert(0, ('date', 'ASC'))
@classmethod
@@ -97,21 +96,28 @@ class Line(ModelSQL, ModelView):
if Transaction().context.get('start_date'):
# Check start_date
time.strptime(str(Transaction().context['start_date']), '%Y-%m-%d')
- res += ' AND ' + obj + '.date >= date(\'' + \
- str(Transaction().context['start_date']) + '\')'
+ res += (' AND ' + obj + '.date >= date(\''
+ + str(Transaction().context['start_date']) + '\')')
if Transaction().context.get('end_date'):
# Check end_date
time.strptime(str(Transaction().context['end_date']), '%Y-%m-%d')
- res += ' AND ' + obj + '.date <= date(\'' + \
- str(Transaction().context['end_date']) + '\')'
+ res += (' AND ' + obj + '.date <= date(\''
+ + str(Transaction().context['end_date']) + '\')')
return res
+ @classmethod
+ def validate(cls, lines):
+ super(Line, cls).validate(lines)
+ for line in lines:
+ line.check_account()
+
def check_account(self):
if self.account.type == 'view':
- return False
+ self.raise_user_error('line_on_view_account',
+ (self.account.rec_name,))
if not self.account.active:
- return False
- return True
+ self.raise_user_error('line_on_inactive_account',
+ (self.account.rec_name,))
class MoveLine(ModelSQL, ModelView):
diff --git a/line.xml b/line.xml
index 6fbd451..17add8c 100644
--- a/line.xml
+++ b/line.xml
@@ -6,58 +6,12 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.ui.view" id="line_view_form">
<field name="model">analytic_account.line</field>
<field name="type">form</field>
- <field name="arch" type="xml">
- <![CDATA[
- <form string="Analytic Line">
- <label name="name"/>
- <field name="name"/>
- <label name="active"/>
- <field name="active" xexpand="0" width="100"/>
- <notebook colspan="4">
- <page string="General Information" id="general">
- <label name="account"/>
- <field name="account"/>
- <label name="date"/>
- <field name="date"/>
- <label name="reference"/>
- <field name="reference"/>
- <label name="party"/>
- <field name="party"/>
- <label name="journal"/>
- <field name="journal"/>
- <label name="move_line"/>
- <field name="move_line"/>
- <label name="debit"/>
- <field name="debit"/>
- <label name="credit"/>
- <field name="credit"/>
- <label name="currency"/>
- <field name="currency"/>
- </page>
- </notebook>
- </form>
- ]]>
- </field>
+ <field name="name">line_form</field>
</record>
<record model="ir.ui.view" id="line_view_tree">
<field name="model">analytic_account.line</field>
<field name="type">tree</field>
- <field name="arch" type="xml">
- <![CDATA[
- <tree string="Analytic Lines" editable="top">
- <field name="move_line"/>
- <field name="journal"/>
- <field name="name"/>
- <field name="reference"/>
- <field name="date"/>
- <field name="party"/>
- <field name="account"/>
- <field name="debit"/>
- <field name="credit"/>
- <field name="currency"/>
- </tree>
- ]]>
- </field>
+ <field name="name">line_tree</field>
</record>
<record model="ir.action.act_window" id="act_line_form">
<field name="name">Analytic Lines</field>
@@ -104,18 +58,7 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.ui.view" id="move_line_view_form">
<field name="model">account.move.line</field>
<field name="inherit" ref="account.move_line_view_form"/>
- <field name="arch" type="xml">
- <![CDATA[
- <data>
- <xpath expr="/form/notebook/page[@name='tax_lines']"
- position="after">
- <page string="Analytic" col="1" id="analytic">
- <field name="analytic_lines"/>
- </page>
- </xpath>
- </data>
- ]]>
- </field>
+ <field name="name">move_line_form</field>
</record>
</data>
diff --git a/locale/bg_BG.po b/locale/bg_BG.po
index a5ea9d1..8686249 100644
--- a/locale/bg_BG.po
+++ b/locale/bg_BG.po
@@ -5,26 +5,20 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"Не може да имате много сметки с един и същи родител или да липсва родителска"
-" сметка!"
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "Не може да създавате взаимно вложени сметки!"
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr ""
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Грешни стойности за кредит/дебит!"
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr ""
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
+msgid "You can not create a move line using view account \"%s\"."
msgstr ""
-"Не може да създавате ред от движение\n"
-"за изглед/неактивна сметка!"
msgctxt "field:account.invoice.line,analytic_accounts:"
msgid "Analytic Accounts"
diff --git a/locale/ca_ES.po b/locale/ca_ES.po
index 8daf2f1..ab57969 100644
--- a/locale/ca_ES.po
+++ b/locale/ca_ES.po
@@ -5,26 +5,22 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"No podeu tenir varis comptes amb el mateix compte arrel o falta un compte "
-"arrel obligatori."
+"No es poden tenir molts comptes amb la mateixa arrel o sense un compte arrel"
+" obligatori a \"%s\"."
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "No podeu crear comptes recursius."
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr "Valors d'haver/deure erronis."
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Els valors haver/deure són incorrectes."
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr "No podeu crear una línia de moviment utilitzant un compte \"%s\" inactiu."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
-msgstr ""
-"No podeu crear un apunt\n"
-"en un compte vista/inactiva."
+msgid "You can not create a move line using view account \"%s\"."
+msgstr "No podeu crear un apunt utilitzant el compte de vista \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
@@ -68,7 +64,7 @@ msgstr "Moneda"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígits de la moneda"
+msgstr "Decimals de la moneda"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
@@ -199,7 +195,7 @@ msgstr "Compte"
msgctxt "field:analytic_account.line,active:"
msgid "Active"
-msgstr "Activa"
+msgstr "Actiu"
msgctxt "field:analytic_account.line,create_date:"
msgid "Create Date"
@@ -219,7 +215,7 @@ msgstr "Moneda"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígits de la moneda"
+msgstr "Decimals de la moneda"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
@@ -408,7 +404,7 @@ msgstr "Informació general"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr "Obre pla analític"
+msgstr "Obre el pla analític"
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
diff --git a/locale/cs_CZ.po b/locale/cs_CZ.po
index b5dc2a0..214af49 100644
--- a/locale/cs_CZ.po
+++ b/locale/cs_CZ.po
@@ -5,21 +5,19 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
msgstr ""
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
+msgid "You can not create a move line using inactive account \"%s\"."
msgstr ""
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
+msgid "You can not create a move line using view account \"%s\"."
msgstr ""
msgctxt "field:account.move.line,analytic_lines:"
diff --git a/locale/de_DE.po b/locale/de_DE.po
index 417686a..bc486a9 100644
--- a/locale/de_DE.po
+++ b/locale/de_DE.po
@@ -2,47 +2,25 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:account.statement.line:"
-msgid "Amount (%s) greater than the amount to pay of invoice!"
-msgstr "Der eingegebene Betrag (%s) ist größer als der Rechnungsbetrag!"
-
-msgctxt "error:account.statement.line:"
-msgid ""
-"Credit or debit account on journal is the same than the statement line "
-"account!"
-msgstr ""
-"Haben- oder Sollkonto im Journal ist das selbe Konto wie das des "
-"Zahlungspostens!"
-
-msgctxt "error:account.statement.line:"
-msgid "Please provide debit and credit account on statement journal."
-msgstr "Bitte Soll- und Habenkonto im Journal Zahlungsverkehr angeben."
-
-msgctxt "error:account.statement:"
-msgid "End Balance must be %s!"
-msgstr "Endsaldo muss %s sein!"
-
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"Mehrere Konten zum selben Wurzelkonto nicht möglich oder erforderliches "
-"Wurzelkonto fehlt!"
+"Es kann nicht mehrere Konten mit demselben Wurzelkonto geben oder es fehlt "
+"ein erforderliches Wurzelkonto für \"%s\"."
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "Konten können nicht rekursiv angelegt werden!"
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr "Falsche Haben/Soll-Werte."
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Falsche Haben/Soll-Werte!"
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr "Buchungszeile kann nicht angelegt werden mit inaktivem Konto \"%s\"."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
-msgstr "Keine Berechtigung für die Erstellung von Buchungszeilen!"
+msgid "You can not create a move line using view account \"%s\"."
+msgstr "Buchungszeile kann nicht angelegt werden mit Kontosicht \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
@@ -438,7 +416,7 @@ msgstr "Kostenstelle Zeilen"
msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
-msgstr "Konto öffnen"
+msgstr "Konto"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
diff --git a/locale/es_AR.po b/locale/es_AR.po
index d10d07e..e7d60de 100644
--- a/locale/es_AR.po
+++ b/locale/es_AR.po
@@ -5,26 +5,23 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"¡No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta "
-"raiz obligatoria!"
-
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "¡No puede crear cuentas recursivas!"
+"No se puede tener muchos cuentas con la misma raíz o sin una cuenta raíz "
+"obligatoria en «%s»."
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "¡Los valores debe/haber son incorrectos!"
+msgid "Wrong credit/debit values."
+msgstr "Valores de haber/debe erróneos."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
+msgid "You can not create a move line using inactive account \"%s\"."
msgstr ""
-"¡No puede crear una linea de asiento\n"
-"en una cuenta vista/inactiva!"
+"No puede crear una línea de movimiento usando una cuenta inactiva «%s»."
+
+msgctxt "error:analytic_account.line:"
+msgid "You can not create a move line using view account \"%s\"."
+msgstr "No puede crear un apunte utilizando la cuenta de vista «%s»."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
@@ -68,7 +65,7 @@ msgstr "Divisa"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimales de la divisa"
+msgstr "Dígitos de divisa"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
@@ -76,7 +73,7 @@ msgstr "Debe"
msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
-msgstr "Mostrar balance"
+msgstr "Mostrar saldo"
msgctxt "field:analytic_account.account,id:"
msgid "ID"
@@ -219,7 +216,7 @@ msgstr "Divisa"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimales de la divisa"
+msgstr "Dígitos de divisa"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
@@ -239,7 +236,7 @@ msgstr "Diario"
msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
-msgstr "Linea de asiento contable"
+msgstr "Línea de asiento contable"
msgctxt "field:analytic_account.line,name:"
msgid "Name"
diff --git a/locale/es_CO.po b/locale/es_CO.po
index cc9ef0d..45b50f8 100644
--- a/locale/es_CO.po
+++ b/locale/es_CO.po
@@ -5,24 +5,22 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"¡No se puede tener varias cuentas con la misma cuenta padre o tantas sin "
+"No puede tener varias cuentas con la misma cuenta padre o que les falte la "
"cuenta padre!"
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "¡No se puede crear cuentas recursivas!"
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr "Valores de haber/debe incorrectos!"
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Valores erróneos de crédito/debito!"
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr "No puede crear una línea de asiento usando la cuenta inactiva \"%s\"."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
-msgstr "No puede crearse línea de movimiento"
+msgid "You can not create a move line using view account \"%s\"."
+msgstr "No puede crear una línea de asiento usando la cuenta de vista \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
@@ -66,7 +64,7 @@ msgstr "Moneda"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígitos de Moneda"
+msgstr "Decimales de Moneda"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
@@ -217,7 +215,7 @@ msgstr "Moneda"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Dígitos de Moneda"
+msgstr "Decimales de Moneda"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
@@ -233,11 +231,11 @@ msgstr "ID"
msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
-msgstr "Diario"
+msgstr "Libro Diario"
msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
-msgstr "Linea de Movimiento de Cuenta"
+msgstr "Línea de Asiento"
msgctxt "field:analytic_account.line,name:"
msgid "Name"
@@ -294,7 +292,7 @@ msgstr "Línea Analítica"
msgctxt "model:analytic_account.open_chart.start,name:"
msgid "Open Chart of Accounts"
-msgstr "Abrir Plan Contable"
+msgstr "Abrir Plan de Cuentas"
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
@@ -318,7 +316,7 @@ msgstr "Abrir Cuenta"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir Plan de Cuentas Analiticas"
+msgstr "Abrir Plan de Cuentas Analíticas"
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
@@ -334,7 +332,7 @@ msgstr "Cuenta Analítica"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir Plan de Cuentas Analiticas"
+msgstr "Abrir Plan de Cuentas Analíticas"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
@@ -410,7 +408,7 @@ msgstr "Información General"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir Plan de Cuentas Analiticas"
+msgstr "Abrir Plan de Cuentas Analíticas"
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index 12485d2..1cf0188 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -5,26 +5,22 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"No puede tener varias cuentas con la misma cuenta raíz o falta una cuenta "
-"raíz obligatoria."
+"No se puede tener muchos cuentas con la misma raíz o sin una cuenta raíz "
+"obligatoria en \"%s\"."
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "No puede crear cuentas recursivas."
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr "Valores de haber/debe erróneos."
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Los valores debe/haber son incorrectos."
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr "No puede crear una línea de movimiento usando una cuenta inactiva \"%s\"."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
-msgstr ""
-"No puede crear un apunte\n"
-"en una cuenta vista/inactiva."
+msgid "You can not create a move line using view account \"%s\"."
+msgstr "No puede crear un apunte utilizando la cuenta de vista \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index 924c61f..8ee875d 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -5,50 +5,26 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-"Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte "
-"avec une racine obligatoire!"
-
-msgctxt "error:analytic_account.account.selection:"
-msgid ""
-"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
-msgstr ""
-"Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte "
-"avec une racine obligatoire!"
-
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "Vous ne pouvez pas créer des comptes récursifs!"
-
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "Vous ne pouvez pas créer des comptes récursifs!"
-
-msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Valeurs crédit/débit incorrectes"
+"Plusieurs comptes ont la même racine ou il manque une racine obligatoire sur"
+" \"%s\"."
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Valeurs crédit/débit incorrectes"
+msgid "Wrong credit/debit values."
+msgstr "Valeurs de débit/crédit incorrectes."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
+msgid "You can not create a move line using inactive account \"%s\"."
msgstr ""
-"Vous ne pouvez pas créer de mouvements\n"
-"sur des comptes inactifs ou de type vue!"
+"Vous ne pouvez pas crér une ligne de mouvement avec le compte inactif "
+"\"%s\"."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
+msgid "You can not create a move line using view account \"%s\"."
msgstr ""
-"Vous ne pouvez pas créer de mouvements\n"
-"sur des comptes inactifs ou de type vue!"
+"Vous ne pouvez pas crér une ligne de mouvement avec le compte de type vue "
+"\"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
diff --git a/locale/nl_NL.po b/locale/nl_NL.po
index 2adc0c0..973afc6 100644
--- a/locale/nl_NL.po
+++ b/locale/nl_NL.po
@@ -5,23 +5,19 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
-#, fuzzy
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr "U kunt geen rekeningen aanmaken die naar zichzelf verwijzen!"
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr ""
-#, fuzzy
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr "Verkeerde debit/credit waarden!"
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr ""
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
+msgid "You can not create a move line using view account \"%s\"."
msgstr ""
msgctxt "field:account.move.line,analytic_lines:"
diff --git a/locale/ru_RU.po b/locale/ru_RU.po
index 9d78ab1..5943a0c 100644
--- a/locale/ru_RU.po
+++ b/locale/ru_RU.po
@@ -5,158 +5,146 @@ msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
-"account!"
+"account on \"%s\"."
msgstr ""
+"Нельзя использовать множество счетов с одинаковым корнем. Либо отсутствует "
+"обязательный корневой счет на \"%s\"."
-msgctxt "error:analytic_account.account:"
-msgid "You can not create recursive accounts!"
-msgstr ""
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values."
+msgstr "Некорректные значения кредит/дебет."
msgctxt "error:analytic_account.line:"
-msgid "Wrong credit/debit values!"
-msgstr ""
+msgid "You can not create a move line using inactive account \"%s\"."
+msgstr "Вы не можете создать проводку используя неактивный счет \"%s\"."
msgctxt "error:analytic_account.line:"
-msgid ""
-"You can not create move line\n"
-"on view/inactive account!"
-msgstr ""
+msgid "You can not create a move line using view account \"%s\"."
+msgstr "Вы не можете создать проводку используя счет для просмотра \"%s\"."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
-msgstr ""
+msgstr "Строки аналитики"
-#, fuzzy
msgctxt "field:analytic_account.account,active:"
msgid "Active"
-msgstr "Действительный"
+msgstr "Действующий"
msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
-msgstr ""
+msgstr "Баланс"
-#, fuzzy
msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Подчиненый"
-#, fuzzy
msgctxt "field:analytic_account.account,code:"
msgid "Code"
-msgstr "Код страны"
+msgstr "Код"
-#, fuzzy
msgctxt "field:analytic_account.account,company:"
msgid "Company"
-msgstr "Учет.орг."
+msgstr "Организация"
msgctxt "field:analytic_account.account,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Дата создания"
msgctxt "field:analytic_account.account,create_uid:"
msgid "Create User"
-msgstr ""
+msgstr "Создано пользователем"
msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
-msgstr ""
+msgstr "Кредит"
-#, fuzzy
msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
-msgstr "Валюты"
+msgstr "Валюта"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr ""
+msgstr "Кол-во цифр валюты"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
-msgstr ""
+msgstr "Дебет"
msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
-msgstr ""
+msgstr "Отображение баланса"
msgctxt "field:analytic_account.account,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
-msgstr ""
+msgstr "Обязательный"
-#, fuzzy
msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Наименование"
msgctxt "field:analytic_account.account,note:"
msgid "Note"
-msgstr ""
+msgstr "Комментарий"
-#, fuzzy
msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
-msgstr "Основной"
+msgstr "Предок"
-#, fuzzy
msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Наименование"
msgctxt "field:analytic_account.account,root:"
msgid "Root"
-msgstr ""
+msgstr "Корневой"
-#, fuzzy
msgctxt "field:analytic_account.account,state:"
msgid "State"
-msgstr "Статус"
+msgstr "Состояние"
-#, fuzzy
msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Тип"
msgctxt "field:analytic_account.account,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Дата изменения"
msgctxt "field:analytic_account.account,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Изменено пользователем"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
-msgstr ""
+msgstr "Счет"
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Дата создания"
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr ""
+msgstr "Создано пользователем"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
-#, fuzzy
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Наименование"
-#, fuzzy
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
@@ -166,283 +154,266 @@ msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Дата изменения"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Изменено пользователем"
msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
-msgstr ""
+msgstr "Счета в виде дерева"
msgctxt "field:analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Дата создания"
msgctxt "field:analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr ""
+msgstr "Создано пользователем"
msgctxt "field:analytic_account.account.selection,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
-#, fuzzy
msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Наименование"
msgctxt "field:analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Дата изменения"
msgctxt "field:analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Изменено пользователем"
msgctxt "field:analytic_account.line,account:"
msgid "Account"
-msgstr ""
+msgstr "Счет"
-#, fuzzy
msgctxt "field:analytic_account.line,active:"
msgid "Active"
-msgstr "Действительный"
+msgstr "Действующий"
msgctxt "field:analytic_account.line,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Дата создания"
msgctxt "field:analytic_account.line,create_uid:"
msgid "Create User"
-msgstr ""
+msgstr "Создано пользователем"
msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
-msgstr ""
+msgstr "Кредит"
-#, fuzzy
msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
-msgstr "Валюты"
+msgstr "Валюта"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr ""
+msgstr "Кол-во цифр валюты"
-#, fuzzy
msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Дата"
msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
-msgstr ""
+msgstr "Дебет"
msgctxt "field:analytic_account.line,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
-msgstr ""
+msgstr "Журнал"
msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
-msgstr ""
+msgstr "Строчка проводки"
-#, fuzzy
msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Наименование"
-#, fuzzy
msgctxt "field:analytic_account.line,party:"
msgid "Party"
-msgstr "Организации"
+msgstr "Контрагент"
-#, fuzzy
msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Наименование"
-#, fuzzy
msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Ссылка"
msgctxt "field:analytic_account.line,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Дата изменения"
msgctxt "field:analytic_account.line,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Изменено пользователем"
-#, fuzzy
msgctxt "field:analytic_account.open_chart.start,end_date:"
msgid "End Date"
msgstr "Дата окончания"
msgctxt "field:analytic_account.open_chart.start,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
-#, fuzzy
msgctxt "field:analytic_account.open_chart.start,start_date:"
msgid "Start Date"
msgstr "Дата начала"
msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
-msgstr ""
+msgstr "Счет аналитики"
msgctxt ""
"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
-msgstr ""
+msgstr "Счет аналитики - Выбор счета аналитики"
msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
-msgstr ""
+msgstr "Выбор счета аналитики"
msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
-msgstr ""
+msgstr "Строка аналитики"
msgctxt "model:analytic_account.open_chart.start,name:"
msgid "Open Chart of Accounts"
-msgstr ""
+msgstr "Открыть схему счетов"
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "model:ir.action,name:act_account_tree"
msgid "Analytic Accounts"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "model:ir.action,name:act_account_tree2"
msgid "Analytic Accounts"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "model:ir.action,name:act_line_form"
msgid "Analytic Lines"
-msgstr ""
+msgstr "Строки аналитики"
msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
-msgstr ""
+msgstr "Открыть счет"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Открыть схему счетов аналитики"
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "model:ir.ui.menu,name:menu_account_tree"
msgid "Analytic Accounts"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Открыть схему счетов аналитики"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
-msgstr ""
+msgstr "Администрирование аналитики"
msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
-msgstr ""
+msgstr "Кредит - Дебет"
msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
-msgstr ""
+msgstr "Дебет - Кредит"
-#, fuzzy
msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Закрыто"
-#, fuzzy
msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Черновик"
msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
-msgstr ""
+msgstr "Открытый"
-#, fuzzy
msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
-msgstr "Нормально"
+msgstr "Обычный"
msgctxt "selection:analytic_account.account,type:"
msgid "Root"
-msgstr ""
+msgstr "Корневой"
-#, fuzzy
msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Просмотр"
msgctxt "view:account.move.line:"
msgid "Analytic"
-msgstr ""
+msgstr "Аналитика"
msgctxt "view:account.move:"
msgid "Analytic"
-msgstr ""
+msgstr "Аналитика"
msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
-msgstr ""
+msgstr "Счет аналитики"
msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
-msgstr ""
+msgstr "Счета аналитики"
msgctxt "view:analytic_account.account:"
msgid "General Information"
-msgstr ""
+msgstr "Основная информация"
-#, fuzzy
msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Комментарии"
msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
-msgstr ""
+msgstr "Строка аналитики"
msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
-msgstr ""
+msgstr "Строки аналитики"
msgctxt "view:analytic_account.line:"
msgid "General Information"
-msgstr ""
+msgstr "Основная информация"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Открыть схему счетов аналитики"
-#, fuzzy
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Отменить"
-#, fuzzy
msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Открыть"
diff --git a/setup.py b/setup.py
index 51833b2..b3149cb 100644
--- a/setup.py
+++ b/setup.py
@@ -36,16 +36,16 @@ setup(name='trytond_analytic_account',
long_description=read('README'),
author='Tryton',
url='http://www.tryton.org/',
- download_url="http://downloads.tryton.org/" + \
- info.get('version', '0.0.1').rsplit('.', 1)[0] + '/',
+ download_url=("http://downloads.tryton.org/" +
+ info.get('version', '0.0.1').rsplit('.', 1)[0] + '/'),
package_dir={'trytond.modules.analytic_account': '.'},
packages=[
'trytond.modules.analytic_account',
'trytond.modules.analytic_account.tests',
],
package_data={
- 'trytond.modules.analytic_account': info.get('xml', []) \
- + ['tryton.cfg', 'locale/*.po'],
+ 'trytond.modules.analytic_account': (info.get('xml', [])
+ + ['tryton.cfg', 'view/*.xml', 'locale/*.po']),
},
classifiers=[
'Development Status :: 5 - Production/Stable',
@@ -56,6 +56,7 @@ setup(name='trytond_analytic_account',
'Intended Audience :: Legal Industry',
'License :: OSI Approved :: GNU General Public License (GPL)',
'Natural Language :: Bulgarian',
+ 'Natural Language :: Catalan',
'Natural Language :: Czech',
'Natural Language :: Dutch',
'Natural Language :: English',
diff --git a/tryton.cfg b/tryton.cfg
index 164d7c2..f985701 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
[tryton]
-version=2.6.0
+version=2.8.0
depends:
account
company
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index 395d968..f9d7c8b 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: trytond-analytic-account
-Version: 2.6.0
+Version: 2.8.0
Summary: Tryton module for analytic accounting
Home-page: http://www.tryton.org/
Author: Tryton
Author-email: UNKNOWN
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.6/
+Download-URL: http://downloads.tryton.org/2.8/
Description: trytond_analytic_account
========================
@@ -52,6 +52,7 @@ Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Natural Language :: Bulgarian
+Classifier: Natural Language :: Catalan
Classifier: Natural Language :: Czech
Classifier: Natural Language :: Dutch
Classifier: Natural Language :: English
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index e42584d..27bd141 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -30,4 +30,12 @@ trytond_analytic_account.egg-info/dependency_links.txt
trytond_analytic_account.egg-info/entry_points.txt
trytond_analytic_account.egg-info/not-zip-safe
trytond_analytic_account.egg-info/requires.txt
-trytond_analytic_account.egg-info/top_level.txt
\ No newline at end of file
+trytond_analytic_account.egg-info/top_level.txt
+view/account_form.xml
+view/account_list.xml
+view/account_tree.xml
+view/account_tree2.xml
+view/line_form.xml
+view/line_tree.xml
+view/move_line_form.xml
+view/open_chart_start_form.xml
\ No newline at end of file
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 547c05c..339f1aa 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,5 @@
-trytond_account >= 2.6, < 2.7
-trytond_company >= 2.6, < 2.7
-trytond_currency >= 2.6, < 2.7
-trytond_party >= 2.6, < 2.7
-trytond >= 2.6, < 2.7
\ No newline at end of file
+trytond_account >= 2.8, < 2.9
+trytond_company >= 2.8, < 2.9
+trytond_currency >= 2.8, < 2.9
+trytond_party >= 2.8, < 2.9
+trytond >= 2.8, < 2.9
\ No newline at end of file
diff --git a/view/account_form.xml b/view/account_form.xml
new file mode 100644
index 0000000..b6c569c
--- /dev/null
+++ b/view/account_form.xml
@@ -0,0 +1,36 @@
+<?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="Analytic Account" col="6">
+ <label name="name"/>
+ <field name="name"/>
+ <label name="code"/>
+ <field name="code"/>
+ <label name="active"/>
+ <field name="active" xexpand="0" width="100"/>
+ <notebook colspan="6">
+ <page string="General Information" id="general">
+ <label name="type"/>
+ <field name="type"/>
+ <label name="display_balance"/>
+ <field name="display_balance"/>
+ <label name="root"/>
+ <field name="root"/>
+ <label name="parent"/>
+ <field name="parent"/>
+ <label name="company"/>
+ <field name="company"/>
+ <label name="currency"/>
+ <field name="currency"/>
+ <label name="mandatory"/>
+ <field name="mandatory"/>
+ </page>
+ <page string="Notes" id="notes">
+ <field name="note"/>
+ </page>
+ </notebook>
+ <group colspan="6" col="2" id="state">
+ <label name="state"/>
+ <field name="state"/>
+ </group>
+</form>
diff --git a/view/account_list.xml b/view/account_list.xml
new file mode 100644
index 0000000..7194de3
--- /dev/null
+++ b/view/account_list.xml
@@ -0,0 +1,11 @@
+<?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. -->
+<tree string="Analytic Accounts">
+ <field name="rec_name"/>
+ <field name="company"/>
+ <field name="type"/>
+ <field name="active" tree_invisible="1"/>
+ <field name="name" tree_invisible="1"/>
+ <field name="code" tree_invisible="1"/>
+</tree>
diff --git a/view/account_tree.xml b/view/account_tree.xml
new file mode 100644
index 0000000..bdabccf
--- /dev/null
+++ b/view/account_tree.xml
@@ -0,0 +1,13 @@
+<?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. -->
+<tree string="Analytic Accounts">
+ <field name="rec_name"/>
+ <field name="company"/>
+ <field name="type"/>
+ <field name="active" tree_invisible="1"/>
+ <field name="name" tree_invisible="1"/>
+ <field name="code" tree_invisible="1"/>
+ <field name="parent" tree_invisible="1"/>
+ <field name="childs" tree_invisible="1"/>
+</tree>
diff --git a/view/account_tree2.xml b/view/account_tree2.xml
new file mode 100644
index 0000000..9468cd9
--- /dev/null
+++ b/view/account_tree2.xml
@@ -0,0 +1,11 @@
+<?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. -->
+<tree string="Analytic Accounts" keyword_open="1">
+ <field name="name"/>
+ <field name="code"/>
+ <field name="debit"/>
+ <field name="credit"/>
+ <field name="balance"/>
+ <field name="currency"/>
+</tree>
diff --git a/view/line_form.xml b/view/line_form.xml
new file mode 100644
index 0000000..5ec3569
--- /dev/null
+++ b/view/line_form.xml
@@ -0,0 +1,31 @@
+<?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="Analytic Line">
+ <label name="name"/>
+ <field name="name"/>
+ <label name="active"/>
+ <field name="active" xexpand="0" width="100"/>
+ <notebook colspan="4">
+ <page string="General Information" id="general">
+ <label name="account"/>
+ <field name="account"/>
+ <label name="date"/>
+ <field name="date"/>
+ <label name="reference"/>
+ <field name="reference"/>
+ <label name="party"/>
+ <field name="party"/>
+ <label name="journal"/>
+ <field name="journal"/>
+ <label name="move_line"/>
+ <field name="move_line"/>
+ <label name="debit"/>
+ <field name="debit"/>
+ <label name="credit"/>
+ <field name="credit"/>
+ <label name="currency"/>
+ <field name="currency"/>
+ </page>
+ </notebook>
+</form>
diff --git a/view/line_tree.xml b/view/line_tree.xml
new file mode 100644
index 0000000..f25c0b7
--- /dev/null
+++ b/view/line_tree.xml
@@ -0,0 +1,15 @@
+<?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. -->
+<tree string="Analytic Lines" editable="top">
+ <field name="move_line"/>
+ <field name="journal"/>
+ <field name="name"/>
+ <field name="reference"/>
+ <field name="date"/>
+ <field name="party"/>
+ <field name="account"/>
+ <field name="debit"/>
+ <field name="credit"/>
+ <field name="currency"/>
+</tree>
diff --git a/view/move_line_form.xml b/view/move_line_form.xml
new file mode 100644
index 0000000..b25fcae
--- /dev/null
+++ b/view/move_line_form.xml
@@ -0,0 +1,11 @@
+<?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. -->
+<data>
+ <xpath expr="/form/notebook/page[@name='tax_lines']"
+ position="after">
+ <page string="Analytic" col="1" id="analytic">
+ <field name="analytic_lines"/>
+ </page>
+ </xpath>
+</data>
diff --git a/view/open_chart_start_form.xml b/view/open_chart_start_form.xml
new file mode 100644
index 0000000..9bfa5dd
--- /dev/null
+++ b/view/open_chart_start_form.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="Open Chart of Analytic Accounts">
+ <label name="start_date"/>
+ <field name="start_date"/>
+ <label name="end_date"/>
+ <field name="end_date"/>
+</form>
commit 3861ad2559ac7c485c2d01da5ec65f18dae2eecb
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue Oct 23 19:53:27 2012 +0200
Adding upstream version 2.6.0.
diff --git a/CHANGELOG b/CHANGELOG
index 43b2426..fa16e90 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,5 @@
-Version 2.4.1 - 2012-04-24
-* Restore es_AR translation
+Version 2.6.0 - 2012-10-22
+* Bug fixes (see mercurial logs for details)
Version 2.4.0 - 2012-04-23
* Bug fixes (see mercurial logs for details)
diff --git a/MANIFEST.in b/MANIFEST.in
index 7f5d5fd..44969c7 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -4,6 +4,7 @@ include TODO
include COPYRIGHT
include CHANGELOG
include LICENSE
+include tryton.cfg
include *.xml
include *.odt
include locale/*.po
diff --git a/PKG-INFO b/PKG-INFO
index fe85d0a..e25d66b 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,18 +1,48 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 2.4.1
-Summary: Financial and Accounting Module with:
- - Analytic accounting with any number of analytic charts
-
-And with report:
- - Analytic account balance
-
+Version: 2.6.0
+Summary: Tryton module for analytic accounting
Home-page: http://www.tryton.org/
-Author: B2CK
-Author-email: info at b2ck.com
+Author: Tryton
+Author-email: UNKNOWN
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.4/
-Description: UNKNOWN
+Download-URL: http://downloads.tryton.org/2.6/
+Description: trytond_analytic_account
+ ========================
+
+ The analytic_account module of the Tryton application platform.
+
+ Installing
+ ----------
+
+ See INSTALL
+
+ Support
+ -------
+
+ If you encounter any problems with Tryton, please don't hesitate to ask
+ questions on the Tryton bug tracker, mailing list, wiki or IRC channel:
+
+ http://bugs.tryton.org/
+ http://groups.tryton.org/
+ http://wiki.tryton.org/
+ irc://irc.freenode.net/tryton
+
+ License
+ -------
+
+ See LICENSE
+
+ Copyright
+ ---------
+
+ See COPYRIGHT
+
+
+ For more information please visit the Tryton web site:
+
+ http://www.tryton.org/
+
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
diff --git a/README b/README
index 0003e0b..018f4a0 100644
--- a/README
+++ b/README
@@ -2,7 +2,6 @@ trytond_analytic_account
========================
The analytic_account module of the Tryton application platform.
-See __tryton__.py
Installing
----------
diff --git a/__init__.py b/__init__.py
index 900c1d5..b42ec04 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,5 +1,21 @@
#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 Pool
from .account import *
from .line import *
+
+
+def register():
+ Pool.register(
+ Account,
+ OpenChartAccountStart,
+ AccountSelection,
+ AccountAccountSelection,
+ Line,
+ MoveLine,
+ module='analytic_account', type_='model')
+ Pool.register(
+ OpenChartAccount,
+ OpenAccount,
+ module='analytic_account', type_='wizard')
diff --git a/__tryton__.py b/__tryton__.py
deleted file mode 100644
index 8e80c87..0000000
--- a/__tryton__.py
+++ /dev/null
@@ -1,89 +0,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.
-{
- 'name': 'Analytic Account',
- 'name_bg_BG': 'Аналитична сметка',
- 'name_ca_ES': 'Comptabilitat analítica',
- 'name_de_DE': 'Kostenstellen',
- 'name_es_AR': 'Contabilidad Analítica',
- 'name_es_CO': 'Contabilidad Analítica',
- 'name_es_ES': 'Contabilidad analítica',
- 'name_fr_FR': 'Comptabilité analytique',
- 'version': '2.4.1',
- 'author': 'B2CK',
- 'email': 'info at b2ck.com',
- 'website': 'http://www.tryton.org/',
- 'description': '''Financial and Accounting Module with:
- - Analytic accounting with any number of analytic charts
-
-And with report:
- - Analytic account balance
-''',
- 'description_bg_BG': '''Финансов и счетоводен модул с:
- - Аналитично счетоводство с произволен брой аналитични графики
-
-Прилежащи справки:
- - Баланс на аналитична сметка
-''',
- 'description_ca_ES': '''Mòdul financer i comptable amb:
- - Comptabilitat analítica amb plans analítics il·limitats
-
-I amb informes:
- - Balanç comptable analític
-''',
- 'description_de_DE': '''Modul für Buchhhaltung mit:
- - Kostenstellen mit einer beliebigen Anzahl von Tabellen
-
-Zugehörige Berichte:
- - Plan für Kostenstellen
-''',
- 'description_es_AR': '''Módulo financiero y de contabilidad con:
- - Contabilidad analítica con cualquier cantidad de planes analíticos
-
-Y con informes:
- - Balance contable analítico
-''',
- 'description_es_CO': '''Módulo Financiero y de Contabilidad con:
- - Contabilidad Analítica con cualquier cantidad de planes analíticos
-
-Y con reportes:
- - Balance Contable Analítico
-''',
- 'description_es_ES': '''Módulo financiero y contable con:
- - Contabilidad analítica con planes analíticos ilimitados
-
-Y con informes:
- - Balance contable analítico
-''',
- 'description_fr_FR': '''Module comptable et financier, avec:
- - Comptabilité analytique autorisant un nombre arbitraire d'axes.
-
-Et le rapport:
- - Balance comptable analytique
-''',
- 'depends': [
- 'ir',
- 'company',
- 'currency',
- 'account',
- 'party',
- 'res',
- ],
- 'xml': [
- 'analytic_account.xml',
- 'account.xml',
- 'line.xml',
- ],
- 'translation': [
- 'locale/bg_BG.po',
- 'locale/ca_ES.po',
- 'locale/cs_CZ.po',
- 'locale/de_DE.po',
- 'locale/es_AR.po',
- 'locale/es_CO.po',
- 'locale/es_ES.po',
- 'locale/fr_FR.po',
- 'locale/nl_NL.po',
- 'locale/ru_RU.po',
- ],
-}
diff --git a/account.py b/account.py
index ca6457a..7572440 100644
--- a/account.py
+++ b/account.py
@@ -8,19 +8,20 @@ from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
from trytond.pool import Pool
+__all__ = ['Account', 'OpenChartAccountStart', 'OpenChartAccount',
+ 'AccountSelection', 'AccountAccountSelection']
+
class Account(ModelSQL, ModelView):
'Analytic Account'
- _name = 'analytic_account.account'
- _description = __doc__
-
+ __name__ = 'analytic_account.account'
name = fields.Char('Name', required=True, translate=True, select=True)
code = fields.Char('Code', select=True)
active = fields.Boolean('Active', select=True)
company = fields.Many2One('company.company', 'Company')
currency = fields.Many2One('currency.currency', 'Currency', required=True)
currency_digits = fields.Function(fields.Integer('Currency Digits',
- on_change_with=['currency']), 'get_currency_digits')
+ on_change_with=['currency']), 'on_change_with_currency_digits')
type = fields.Selection([
('root', 'Root'),
('view', 'View'),
@@ -65,68 +66,70 @@ class Account(ModelSQL, ModelView):
},
depends=['type'])
- def __init__(self):
- super(Account, self).__init__()
- self._constraints += [
+ @classmethod
+ def __setup__(cls):
+ super(Account, cls).__setup__()
+ cls._constraints += [
('check_recursion', 'recursive_accounts'),
- ]
- self._error_messages.update({
- 'recursive_accounts': 'You can not create recursive accounts!',
- })
- self._order.insert(0, ('code', 'ASC'))
+ ]
+ cls._error_messages.update({
+ 'recursive_accounts': 'You can not create recursive accounts!',
+ })
+ cls._order.insert(0, ('code', 'ASC'))
- def default_active(self):
+ @staticmethod
+ def default_active():
return True
- def default_company(self):
+ @staticmethod
+ def default_company():
return Transaction().context.get('company')
- def default_currency(self):
- company_obj = Pool().get('company.company')
+ @staticmethod
+ def default_currency():
+ Company = Pool().get('company.company')
if Transaction().context.get('company'):
- company = company_obj.browse(Transaction().context['company'])
+ company = Company(Transaction().context['company'])
return company.currency.id
- def default_type(self):
+ @staticmethod
+ def default_type():
return 'normal'
- def default_state(self):
+ @staticmethod
+ def default_state():
return 'draft'
- def default_display_balance(self):
+ @staticmethod
+ def default_display_balance():
return 'credit-debit'
- def default_mandatory(self):
+ @staticmethod
+ def default_mandatory():
return False
- def on_change_with_currency_digits(self, vals):
- currency_obj = Pool().get('currency.currency')
- if vals.get('currency'):
- currency = currency_obj.browse(vals['currency'])
- return currency.digits
+ def on_change_with_currency_digits(self, name=None):
+ if self.currency:
+ return self.currency.digits
return 2
- def get_currency_digits(self, ids, name):
+ @classmethod
+ def get_balance(cls, accounts, name):
res = {}
- for account in self.browse(ids):
- res[account.id] = account.currency.digits
- return res
-
- def get_balance(self, ids, name):
- res = {}
- line_obj = Pool().get('analytic_account.line')
- currency_obj = Pool().get('currency.currency')
+ Line = Pool().get('analytic_account.line')
+ Currency = Pool().get('currency.currency')
cursor = Transaction().cursor
- child_ids = self.search([('parent', 'child_of', ids)])
- all_ids = {}.fromkeys(ids + child_ids).keys()
+ ids = [a.id for a in accounts]
+ childs = cls.search([('parent', 'child_of', ids)])
+ all_ids = {}.fromkeys(ids + [c.id for c in childs]).keys()
id2account = {}
- accounts = self.browse(all_ids)
- for account in accounts:
+ all_accounts = cls.browse(all_ids)
+ for account in all_accounts:
id2account[account.id] = account
- line_query = line_obj.query_get()
+ line_query = Line.query_get()
cursor.execute('SELECT a.id, ' \
'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), ' \
'c.currency ' \
@@ -154,46 +157,48 @@ class Account(ModelSQL, ModelView):
if currency_id in id2currency:
currency = id2currency[currency_id]
else:
- currency = currency_obj.browse(currency_id)
+ currency = Currency(currency_id)
id2currency[currency.id] = currency
- account_sum[account_id] += currency_obj.compute(currency, sum,
+ account_sum[account_id] += Currency.compute(currency, sum,
id2account[account_id].currency, round=True)
else:
- account_sum[account_id] += currency_obj.round(
- id2account[account_id].currency, sum)
+ account_sum[account_id] += \
+ id2account[account_id].currency.round(sum)
for account_id in ids:
res.setdefault(account_id, Decimal('0.0'))
- child_ids = self.search([
- ('parent', 'child_of', [account_id]),
- ])
+ childs = cls.search([
+ ('parent', 'child_of', [account_id]),
+ ])
to_currency = id2account[account_id].currency
- for child_id in child_ids:
- from_currency = id2account[child_id].currency
- res[account_id] += currency_obj.compute(from_currency,
- account_sum.get(child_id, Decimal('0.0')), to_currency,
+ for child in childs:
+ from_currency = id2account[child.id].currency
+ res[account_id] += Currency.compute(from_currency,
+ account_sum.get(child.id, Decimal('0.0')), to_currency,
round=True)
- res[account_id] = currency_obj.round(to_currency, res[account_id])
+ res[account_id] = to_currency.round(res[account_id])
if id2account[account_id].display_balance == 'credit-debit':
res[account_id] = - res[account_id]
return res
- def get_credit_debit(self, ids, name):
+ @classmethod
+ def get_credit_debit(cls, accounts, name):
res = {}
- line_obj = Pool().get('analytic_account.line')
- currency_obj = Pool().get('currency.currency')
+ pool = Pool()
+ Line = pool.get('analytic_account.line')
+ Currency = pool.get('currency.currency')
cursor = Transaction().cursor
if name not in ('credit', 'debit'):
raise Exception('Bad argument')
id2account = {}
- accounts = self.browse(ids)
+ ids = [a.id for a in accounts]
for account in accounts:
res[account.id] = Decimal('0.0')
id2account[account.id] = account
- line_query = line_obj.query_get()
+ line_query = Line.query_get()
cursor.execute('SELECT a.id, ' \
'SUM(COALESCE(l.' + name + ', 0)), ' \
'c.currency ' \
@@ -220,94 +225,85 @@ class Account(ModelSQL, ModelView):
if currency_id in id2currency:
currency = id2currency[currency_id]
else:
- currency = currency_obj.browse(currency_id)
+ currency = Currency(currency_id)
id2currency[currency.id] = currency
- res[account_id] += currency_obj.compute(currency, sum,
+ res[account_id] += Currency.compute(currency, sum,
id2account[account_id].currency, round=True)
else:
- res[account_id] += currency_obj.round(
- id2account[account_id].currency, sum)
+ res[account_id] += id2account[account_id].currency.round(sum)
return res
- def get_rec_name(self, ids, name):
- if not ids:
- return {}
- res = {}
- for account in self.browse(ids):
- if account.code:
- res[account.id] = account.code + ' - ' + unicode(account.name)
- else:
- res[account.id] = unicode(account.name)
- return res
+ def get_rec_name(self, name):
+ if self.code:
+ return self.code + ' - ' + unicode(self.name)
+ else:
+ return unicode(self.name)
- def search_rec_name(self, name, clause):
- ids = self.search([('code',) + clause[1:]], limit=1)
- if ids:
+ @classmethod
+ def search_rec_name(cls, name, clause):
+ accounts = cls.search([('code',) + clause[1:]], limit=1)
+ if accounts:
return [('code',) + clause[1:]]
else:
- return [(self._rec_name,) + clause[1:]]
+ return [(cls._rec_name,) + clause[1:]]
- def convert_view(self, tree):
+ @classmethod
+ def convert_view(cls, tree):
res = tree.xpath('//field[@name=\'analytic_accounts\']')
if not res:
return
element_accounts = res[0]
- root_account_ids = self.search([
- ('parent', '=', None),
- ])
- if not root_account_ids:
+ root_accounts = cls.search([
+ ('parent', '=', None),
+ ])
+ if not root_accounts:
element_accounts.getparent().getparent().remove(
element_accounts.getparent())
return
- for account_id in root_account_ids:
+ for account in root_accounts:
newelement = copy.copy(element_accounts)
newelement.tag = 'label'
- newelement.set('name', 'analytic_account_' + str(account_id))
+ newelement.set('name', 'analytic_account_' + str(account.id))
element_accounts.addprevious(newelement)
newelement = copy.copy(element_accounts)
- newelement.set('name', 'analytic_account_' + str(account_id))
+ newelement.set('name', 'analytic_account_' + str(account.id))
element_accounts.addprevious(newelement)
parent = element_accounts.getparent()
parent.remove(element_accounts)
- def analytic_accounts_fields_get(self, field, fields_names=None):
+ @classmethod
+ def analytic_accounts_fields_get(cls, field, fields_names=None):
res = {}
if fields_names is None:
fields_names = []
- root_account_ids = self.search([
- ('parent', '=', None),
- ])
- for account in self.browse(root_account_ids):
+ root_accounts = cls.search([
+ ('parent', '=', None),
+ ])
+ for account in root_accounts:
name = 'analytic_account_' + str(account.id)
if name in fields_names or not fields_names:
res[name] = field.copy()
res[name]['required'] = account.mandatory
res[name]['string'] = account.name
- res[name]['relation'] = self._name
+ res[name]['relation'] = cls.__name__
res[name]['domain'] = PYSONEncoder().encode([
('root', '=', account.id),
('type', '=', 'normal')])
return res
-Account()
-
class OpenChartAccountStart(ModelView):
'Open Chart of Accounts'
- _name = 'analytic_account.open_chart.start'
- _description = __doc__
+ __name__ = 'analytic_account.open_chart.start'
start_date = fields.Date('Start Date')
end_date = fields.Date('End Date')
-OpenChartAccountStart()
-
class OpenChartAccount(Wizard):
'Open Chart of Accounts'
- _name = 'analytic_account.open_chart'
-
+ __name__ = 'analytic_account.open_chart'
start = StateView('analytic_account.open_chart.start',
'analytic_account.open_chart_start_view_form', [
Button('Cancel', 'end', 'tryton-cancel'),
@@ -315,49 +311,46 @@ class OpenChartAccount(Wizard):
])
open_ = StateAction('analytic_account.act_account_tree2')
- def do_open_(self, session, action):
+ def do_open_(self, action):
action['pyson_context'] = PYSONEncoder().encode({
- 'start_date': session.start.start_date,
- 'end_date': session.start.end_date,
+ 'start_date': self.start.start_date,
+ 'end_date': self.start.end_date,
})
return action, {}
- def transition_open_(self, session):
+ def transition_open_(self):
return 'end'
-OpenChartAccount()
-
class AccountSelection(ModelSQL, ModelView):
'Analytic Account Selection'
- _name = 'analytic_account.account.selection'
- _description = __doc__
+ __name__ = 'analytic_account.account.selection'
_rec_name = 'id'
accounts = fields.Many2Many(
'analytic_account.account-analytic_account.account.selection',
'selection', 'account', 'Accounts')
- def __init__(self):
- super(AccountSelection, self).__init__()
- self._constraints += [
+ @classmethod
+ def __setup__(cls):
+ super(AccountSelection, cls).__setup__()
+ cls._constraints += [
('check_root', 'root_account'),
- ]
- self._error_messages.update({
- 'root_account': 'Can not have many accounts with the same root ' \
- 'or a missing mandatory root account!',
- })
+ ]
+ cls._error_messages.update({
+ 'root_account': 'Can not have many accounts with the same ' \
+ 'root or a missing mandatory root account!',
+ })
- def check_root(self, ids):
+ @classmethod
+ def check_root(cls, selections):
"Check Root"
- account_obj = Pool().get('analytic_account.account')
+ Account = Pool().get('analytic_account.account')
- root_account_ids = account_obj.search([
+ root_accounts = Account.search([
('parent', '=', None),
])
- root_accounts = account_obj.browse(root_account_ids)
- selections = self.browse(ids)
for selection in selections:
roots = []
for account in selection.accounts:
@@ -371,17 +364,12 @@ class AccountSelection(ModelSQL, ModelView):
return False
return True
-AccountSelection()
-
class AccountAccountSelection(ModelSQL):
'Analytic Account - Analytic Account Selection'
- _name = 'analytic_account.account-analytic_account.account.selection'
- _description = __doc__
+ __name__ = 'analytic_account.account-analytic_account.account.selection'
_table = 'analytic_account_account_selection_rel'
selection = fields.Many2One('analytic_account.account.selection',
'Selection', ondelete='CASCADE', required=True, select=True)
account = fields.Many2One('analytic_account.account', 'Account',
ondelete='RESTRICT', required=True, select=True)
-
-AccountAccountSelection()
diff --git a/line.py b/line.py
index 6e7a170..4746014 100644
--- a/line.py
+++ b/line.py
@@ -9,21 +9,21 @@ from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
from trytond.pool import Pool
+__all__ = ['Line', 'MoveLine', 'OpenAccount']
+
class Line(ModelSQL, ModelView):
'Analytic Line'
- _name = 'analytic_account.line'
- _description = __doc__
-
+ __name__ = 'analytic_account.line'
name = fields.Char('Name', required=True)
debit = fields.Numeric('Debit', digits=(16, Eval('currency_digits', 2)),
required=True, depends=['currency_digits'])
credit = fields.Numeric('Credit', digits=(16, Eval('currency_digits', 2)),
required=True, depends=['currency_digits'])
currency = fields.Function(fields.Many2One('currency.currency', 'Currency',
- on_change_with=['move_line']), 'get_currency')
+ on_change_with=['move_line']), 'on_change_with_currency')
currency_digits = fields.Function(fields.Integer('Currency Digits',
- on_change_with=['move_line']), 'get_currency_digits')
+ on_change_with=['move_line']), 'on_change_with_currency_digits')
account = fields.Many2One('analytic_account.account', 'Account',
required=True, select=True, domain=[('type', '!=', 'view')])
move_line = fields.Many2One('account.move.line', 'Account Move Line',
@@ -35,69 +35,60 @@ class Line(ModelSQL, ModelView):
party = fields.Many2One('party.party', 'Party')
active = fields.Boolean('Active', select=True)
- def __init__(self):
- super(Line, self).__init__()
- self._sql_constraints += [
+ @classmethod
+ def __setup__(cls):
+ super(Line, cls).__setup__()
+ cls._sql_constraints += [
('credit_debit',
'CHECK((credit * debit = 0.0) AND (credit + debit >= 0.0))',
'Wrong credit/debit values!'),
- ]
- self._constraints += [
+ ]
+ cls._constraints += [
('check_account', 'line_on_view_inactive_account'),
- ]
- self._error_messages.update({
+ ]
+ cls._error_messages.update({
'line_on_view_inactive_account': 'You can not create move line\n' \
'on view/inactive account!',
- })
- self._order.insert(0, ('date', 'ASC'))
+ })
+ cls._order.insert(0, ('date', 'ASC'))
- def init(self, module_name):
- super(Line, self).init(module_name)
+ @classmethod
+ def __register__(cls, module_name):
+ super(Line, cls).__register__(module_name)
cursor = Transaction().cursor
- table = TableHandler(cursor, self, module_name)
+ table = TableHandler(cursor, cls, module_name)
# Migration from 1.2 currency has been changed in function field
table.not_null_action('currency', action='remove')
- def default_date(self):
- date_obj = Pool().get('ir.date')
- return date_obj.today()
+ @staticmethod
+ def default_date():
+ Date = Pool().get('ir.date')
+ return Date.today()
- def default_active(self):
+ @staticmethod
+ def default_active():
return True
- def default_debit(self):
+ @staticmethod
+ def default_debit():
return Decimal(0)
- def default_credit(self):
+ @staticmethod
+ def default_credit():
return Decimal(0)
- def on_change_with_currency(self, vals):
- move_line_obj = Pool().get('account.move.line')
- if vals.get('move_line'):
- move_line = move_line_obj.browse(vals['move_line'])
- return move_line.account.company.currency.id
-
- def get_currency(self, ids, name):
- res = {}
- for line in self.browse(ids):
- res[line.id] = line.move_line.account.company.currency.id
- return res
+ def on_change_with_currency(self, name=None):
+ if self.move_line:
+ return self.move_line.account.company.currency.id
- def on_change_with_currency_digits(self, vals):
- move_line_obj = Pool().get('account.move.line')
- if vals.get('move_line'):
- move_line = move_line_obj.browse(vals['move_line'])
- return move_line.account.company.currency.digits
+ def on_change_with_currency_digits(self, name=None):
+ if self.move_line:
+ return self.move_line.account.company.currency.digits
return 2
- def get_currency_digits(self, ids, name):
- res = {}
- for line in self.browse(ids):
- res[line.id] = line.move_line.account.company.currency.digits
- return res
-
- def query_get(self, obj='l'):
+ @staticmethod
+ def query_get(obj='l'):
'''
Return SQL clause for analytic line depending of the context.
obj is the SQL alias of the analytic_account_line in the query.
@@ -115,32 +106,27 @@ class Line(ModelSQL, ModelView):
str(Transaction().context['end_date']) + '\')'
return res
- def check_account(self, ids):
- for line in self.browse(ids):
- if line.account.type == 'view':
- return False
- if not line.account.active:
- return False
+ def check_account(self):
+ if self.account.type == 'view':
+ return False
+ if not self.account.active:
+ return False
return True
-Line()
-
class MoveLine(ModelSQL, ModelView):
- _name = 'account.move.line'
+ __name__ = 'account.move.line'
analytic_lines = fields.One2Many('analytic_account.line', 'move_line',
'Analytic Lines')
-MoveLine()
-
class OpenAccount(Wizard):
'Open Account'
- _name = 'analytic_account.line.open_account'
+ __name__ = 'analytic_account.line.open_account'
start_state = 'open_'
open_ = StateAction('analytic_account.act_line_form')
- def do_open_(self, session, action):
+ def do_open_(self, action):
action['pyson_domain'] = [
('account', '=', Transaction().context['active_id']),
]
@@ -155,7 +141,5 @@ class OpenAccount(Wizard):
action['pyson_domain'] = PYSONEncoder().encode(action['pyson_domain'])
return action, {}
- def transition_open_(self, session):
+ def transition_open_(self):
return 'end'
-
-OpenAccount()
diff --git a/line.xml b/line.xml
index 5121d99..6fbd451 100644
--- a/line.xml
+++ b/line.xml
@@ -107,7 +107,7 @@ this repository contains the full copyright notices and license terms. -->
<field name="arch" type="xml">
<![CDATA[
<data>
- <xpath expr="/form/notebook/page[@id="general"]"
+ <xpath expr="/form/notebook/page[@name='tax_lines']"
position="after">
<page string="Analytic" col="1" id="analytic">
<field name="analytic_lines"/>
diff --git a/locale/bg_BG.po b/locale/bg_BG.po
index a5c14a0..a5ea9d1 100644
--- a/locale/bg_BG.po
+++ b/locale/bg_BG.po
@@ -44,7 +44,7 @@ msgstr "Баланс"
msgctxt "field:analytic_account.account,childs:"
msgid "Children"
-msgstr "Деца"
+msgstr "Наследници"
msgctxt "field:analytic_account.account,code:"
msgid "Code"
diff --git a/locale/ca_ES.po b/locale/ca_ES.po
index 633fe36..8daf2f1 100644
--- a/locale/ca_ES.po
+++ b/locale/ca_ES.po
@@ -7,24 +7,24 @@ msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
msgstr ""
-"No pot tenir varis comptes amb el mateix compte arrel o falta un compte "
-"arrel obligatòri"
+"No podeu tenir varis comptes amb el mateix compte arrel o falta un compte "
+"arrel obligatori."
msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
-msgstr "No pot crear comptes recursius"
+msgstr "No podeu crear comptes recursius."
msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
-msgstr "Els valors deure\\/haver són incorrectes"
+msgstr "Els valors haver/deure són incorrectes."
msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr ""
-"No pot crear una apunt en un\n"
-"compte vista o inactiu"
+"No podeu crear un apunt\n"
+"en un compte vista/inactiva."
msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
@@ -36,7 +36,7 @@ msgstr "Actiu"
msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
-msgstr "Balanç"
+msgstr "Saldo"
msgctxt "field:analytic_account.account,childs:"
msgid "Children"
@@ -52,12 +52,11 @@ msgstr "Empresa"
msgctxt "field:analytic_account.account,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Data creació"
-#, fuzzy
msgctxt "field:analytic_account.account,create_uid:"
msgid "Create User"
-msgstr "Crear usuari"
+msgstr "Usuari creació"
msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
@@ -65,11 +64,11 @@ msgstr "Haver"
msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
-msgstr "Divisa"
+msgstr "Moneda"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimals de la divisa"
+msgstr "Dígits de la moneda"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
@@ -77,11 +76,11 @@ msgstr "Deure"
msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
-msgstr "Mostrar balanç"
+msgstr "Mostra saldo"
msgctxt "field:analytic_account.account,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
@@ -117,11 +116,11 @@ msgstr "Tipus"
msgctxt "field:analytic_account.account,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Data modificació"
msgctxt "field:analytic_account.account,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Usuari modificació"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,account:"
@@ -132,19 +131,18 @@ msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Data creació"
-#, fuzzy
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr "Crear usuari"
+msgstr "Usuari creació"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,rec_name:"
@@ -160,12 +158,12 @@ msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Data modificació"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Usuari modificació"
msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
@@ -173,16 +171,15 @@ msgstr "Comptes"
msgctxt "field:analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Data creació"
-#, fuzzy
msgctxt "field:analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr "Crear usuari"
+msgstr "Usuari creació"
msgctxt "field:analytic_account.account.selection,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
@@ -190,11 +187,11 @@ msgstr "Nom"
msgctxt "field:analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Data modificació"
msgctxt "field:analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Usuari modificació"
msgctxt "field:analytic_account.line,account:"
msgid "Account"
@@ -202,16 +199,15 @@ msgstr "Compte"
msgctxt "field:analytic_account.line,active:"
msgid "Active"
-msgstr "Actiu"
+msgstr "Activa"
msgctxt "field:analytic_account.line,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Data creació"
-#, fuzzy
msgctxt "field:analytic_account.line,create_uid:"
msgid "Create User"
-msgstr "Crear usuari"
+msgstr "Usuari creació"
msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
@@ -219,11 +215,11 @@ msgstr "Haver"
msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
-msgstr "Divisa"
+msgstr "Moneda"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimals de la divisa"
+msgstr "Dígits de la moneda"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
@@ -235,7 +231,7 @@ msgstr "Deure"
msgctxt "field:analytic_account.line,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
@@ -263,25 +259,23 @@ msgstr "Referència"
msgctxt "field:analytic_account.line,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Data modificació"
msgctxt "field:analytic_account.line,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Usuari modificació"
-#, fuzzy
msgctxt "field:analytic_account.open_chart.start,end_date:"
msgid "End Date"
msgstr "Data final"
msgctxt "field:analytic_account.open_chart.start,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
-#, fuzzy
msgctxt "field:analytic_account.open_chart.start,start_date:"
msgid "Start Date"
-msgstr "Data inici"
+msgstr "Data inicial"
msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
@@ -294,7 +288,7 @@ msgstr "Compte analític - Selecció de compte analític"
msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
-msgstr "Selecció de compte analític"
+msgstr "Selecció compte analític"
msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
@@ -302,9 +296,8 @@ msgstr "Línia analítica"
msgctxt "model:analytic_account.open_chart.start,name:"
msgid "Open Chart of Accounts"
-msgstr ""
+msgstr "Obre pla comptable"
-#, fuzzy
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr "Comptes analítics"
@@ -323,13 +316,12 @@ msgstr "Línies analítiques"
msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
-msgstr "Obrir compte"
+msgstr "Obre compte"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Obre pla analític"
-#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
msgstr "Comptes analítics"
@@ -340,11 +332,11 @@ msgstr "Comptes analítics"
msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
-msgstr "Compte analític"
+msgstr "Comptabilitat analítica"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Obre pla analític"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
@@ -360,7 +352,7 @@ msgstr "Deure - Haver"
msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
-msgstr "Tancada"
+msgstr "Tancat"
msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
@@ -368,7 +360,7 @@ msgstr "Esborrany"
msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
-msgstr "Oberta"
+msgstr "Obert"
msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
@@ -416,14 +408,12 @@ msgstr "Informació general"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Obre pla analític"
-#, fuzzy
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
-msgstr "Cancel·lar"
+msgstr "Cancel·la"
-#, fuzzy
msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
-msgstr "Obrir"
+msgstr "Obre"
diff --git a/locale/es_AR.po b/locale/es_AR.po
index 3efd351..d10d07e 100644
--- a/locale/es_AR.po
+++ b/locale/es_AR.po
@@ -320,7 +320,7 @@ msgstr "Abrir cuenta"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan de cuentas análiticas"
+msgstr "Abrir plan de cuentas analíticas"
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
@@ -336,7 +336,7 @@ msgstr "Cuenta analítica"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan de cuentas análiticas"
+msgstr "Abrir plan de cuentas analíticas"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
@@ -412,7 +412,7 @@ msgstr "Información general"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan de cuentas análiticas"
+msgstr "Abrir plan de cuentas analíticas"
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
diff --git a/locale/es_CO.po b/locale/es_CO.po
index fd89a4d..cc9ef0d 100644
--- a/locale/es_CO.po
+++ b/locale/es_CO.po
@@ -38,7 +38,7 @@ msgstr "Balance"
msgctxt "field:analytic_account.account,childs:"
msgid "Children"
-msgstr "Hij at s"
+msgstr "Hijos"
msgctxt "field:analytic_account.account,code:"
msgid "Code"
@@ -50,12 +50,11 @@ msgstr "Compañía"
msgctxt "field:analytic_account.account,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Fecha de Creación"
-#, fuzzy
msgctxt "field:analytic_account.account,create_uid:"
msgid "Create User"
-msgstr "Crear usuario"
+msgstr "Creado por Usuario"
msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
@@ -79,7 +78,7 @@ msgstr "Mostrar Balance"
msgctxt "field:analytic_account.account,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
@@ -115,11 +114,11 @@ msgstr "Tipo"
msgctxt "field:analytic_account.account,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Fecha de Modificación"
msgctxt "field:analytic_account.account,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Modificado por Usuario"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,account:"
@@ -130,19 +129,18 @@ msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Fecha de Creación"
-#, fuzzy
msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr "Crear usuario"
+msgstr "Creado por Usuario"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,rec_name:"
@@ -158,12 +156,12 @@ msgctxt ""
"field:analytic_account.account-"
"analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Fecha de Modificación"
msgctxt ""
"field:analytic_account.account-analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Modificado por Usuario"
msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
@@ -171,16 +169,15 @@ msgstr "Cuentas"
msgctxt "field:analytic_account.account.selection,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Fecha de Creación"
-#, fuzzy
msgctxt "field:analytic_account.account.selection,create_uid:"
msgid "Create User"
-msgstr "Crear usuario"
+msgstr "Creado por Usuario"
msgctxt "field:analytic_account.account.selection,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
@@ -188,11 +185,11 @@ msgstr "Nombre"
msgctxt "field:analytic_account.account.selection,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Fecha de Modificación"
msgctxt "field:analytic_account.account.selection,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Modificado por Usuario"
msgctxt "field:analytic_account.line,account:"
msgid "Account"
@@ -204,12 +201,11 @@ msgstr "Activo"
msgctxt "field:analytic_account.line,create_date:"
msgid "Create Date"
-msgstr ""
+msgstr "Fecha de Creación"
-#, fuzzy
msgctxt "field:analytic_account.line,create_uid:"
msgid "Create User"
-msgstr "Crear usuario"
+msgstr "Creado por Usuario"
msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
@@ -233,7 +229,7 @@ msgstr "Débito"
msgctxt "field:analytic_account.line,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
@@ -261,22 +257,20 @@ msgstr "Referencia"
msgctxt "field:analytic_account.line,write_date:"
msgid "Write Date"
-msgstr ""
+msgstr "Fecha de Modificación"
msgctxt "field:analytic_account.line,write_uid:"
msgid "Write User"
-msgstr ""
+msgstr "Modificado por Usuario"
-#, fuzzy
msgctxt "field:analytic_account.open_chart.start,end_date:"
msgid "End Date"
msgstr "Fecha Final"
msgctxt "field:analytic_account.open_chart.start,id:"
msgid "ID"
-msgstr ""
+msgstr "ID"
-#, fuzzy
msgctxt "field:analytic_account.open_chart.start,start_date:"
msgid "Start Date"
msgstr "Fecha Inicio"
@@ -300,9 +294,8 @@ msgstr "Línea Analítica"
msgctxt "model:analytic_account.open_chart.start,name:"
msgid "Open Chart of Accounts"
-msgstr ""
+msgstr "Abrir Plan Contable"
-#, fuzzy
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr "Cuentas Analíticas"
@@ -325,9 +318,8 @@ msgstr "Abrir Cuenta"
msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Abrir Plan de Cuentas Analiticas"
-#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
msgstr "Cuentas Analíticas"
@@ -342,7 +334,7 @@ msgstr "Cuenta Analítica"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Abrir Plan de Cuentas Analiticas"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
@@ -384,7 +376,6 @@ msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Analítica"
-#, fuzzy
msgctxt "view:account.move:"
msgid "Analytic"
msgstr "Analítica"
@@ -419,14 +410,12 @@ msgstr "Información General"
msgctxt "view:analytic_account.open_chart.start:"
msgid "Open Chart of Analytic Accounts"
-msgstr ""
+msgstr "Abrir Plan de Cuentas Analiticas"
-#, fuzzy
msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Cancelar"
-#, fuzzy
msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Abrir"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index f10ccc1..12485d2 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -36,7 +36,7 @@ msgstr "Activa"
msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
-msgstr "Balance"
+msgstr "Saldo"
msgctxt "field:analytic_account.account,childs:"
msgid "Children"
@@ -64,11 +64,11 @@ msgstr "Haber"
msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
-msgstr "Divisa"
+msgstr "Moneda"
msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimales de la divisa"
+msgstr "Decimales de la moneda"
msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
@@ -76,7 +76,7 @@ msgstr "Debe"
msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
-msgstr "Mostrar balance"
+msgstr "Mostrar saldo"
msgctxt "field:analytic_account.account,id:"
msgid "ID"
@@ -215,11 +215,11 @@ msgstr "Haber"
msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
-msgstr "Divisa"
+msgstr "Moneda"
msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
-msgstr "Decimales de la divisa"
+msgstr "Decimales de la moneda"
msgctxt "field:analytic_account.line,date:"
msgid "Date"
@@ -332,7 +332,7 @@ msgstr "Cuentas analíticas"
msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
-msgstr "Cuenta analítica"
+msgstr "Contabilidad analítica"
msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
diff --git a/setup.py b/setup.py
index df4e934..51833b2 100644
--- a/setup.py
+++ b/setup.py
@@ -4,8 +4,19 @@
from setuptools import setup
import re
+import os
+import ConfigParser
-info = eval(open('__tryton__.py').read())
+
+def read(fname):
+ return open(os.path.join(os.path.dirname(__file__), fname)).read()
+
+config = ConfigParser.ConfigParser()
+config.readfp(open('tryton.cfg'))
+info = dict(config.items('tryton'))
+for key in ('depends', 'extras_depend', 'xml'):
+ if key in info:
+ info[key] = info[key].strip().splitlines()
major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
major_version = int(major_version)
minor_version = int(minor_version)
@@ -21,21 +32,21 @@ requires.append('trytond >= %s.%s, < %s.%s' %
setup(name='trytond_analytic_account',
version=info.get('version', '0.0.1'),
- description=info.get('description', ''),
- author=info.get('author', ''),
- author_email=info.get('email', ''),
- url=info.get('website', ''),
+ description='Tryton module for analytic accounting',
+ long_description=read('README'),
+ author='Tryton',
+ url='http://www.tryton.org/',
download_url="http://downloads.tryton.org/" + \
- info.get('version', '0.0.1').rsplit('.', 1)[0] + '/',
+ info.get('version', '0.0.1').rsplit('.', 1)[0] + '/',
package_dir={'trytond.modules.analytic_account': '.'},
packages=[
'trytond.modules.analytic_account',
'trytond.modules.analytic_account.tests',
- ],
+ ],
package_data={
'trytond.modules.analytic_account': info.get('xml', []) \
- + info.get('translation', []),
- },
+ + ['tryton.cfg', 'locale/*.po'],
+ },
classifiers=[
'Development Status :: 5 - Production/Stable',
'Environment :: Plugins',
@@ -57,7 +68,7 @@ setup(name='trytond_analytic_account',
'Programming Language :: Python :: 2.7',
'Topic :: Office/Business',
'Topic :: Office/Business :: Financial :: Accounting',
- ],
+ ],
license='GPL-3',
install_requires=requires,
zip_safe=False,
@@ -67,4 +78,4 @@ setup(name='trytond_analytic_account',
""",
test_suite='tests',
test_loader='trytond.test_loader:Loader',
-)
+ )
diff --git a/tryton.cfg b/tryton.cfg
new file mode 100644
index 0000000..164d7c2
--- /dev/null
+++ b/tryton.cfg
@@ -0,0 +1,13 @@
+[tryton]
+version=2.6.0
+depends:
+ account
+ company
+ currency
+ ir
+ party
+ res
+xml:
+ analytic_account.xml
+ account.xml
+ line.xml
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index 0df196f..395d968 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,18 +1,48 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 2.4.1
-Summary: Financial and Accounting Module with:
- - Analytic accounting with any number of analytic charts
-
-And with report:
- - Analytic account balance
-
+Version: 2.6.0
+Summary: Tryton module for analytic accounting
Home-page: http://www.tryton.org/
-Author: B2CK
-Author-email: info at b2ck.com
+Author: Tryton
+Author-email: UNKNOWN
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.4/
-Description: UNKNOWN
+Download-URL: http://downloads.tryton.org/2.6/
+Description: trytond_analytic_account
+ ========================
+
+ The analytic_account module of the Tryton application platform.
+
+ Installing
+ ----------
+
+ See INSTALL
+
+ Support
+ -------
+
+ If you encounter any problems with Tryton, please don't hesitate to ask
+ questions on the Tryton bug tracker, mailing list, wiki or IRC channel:
+
+ http://bugs.tryton.org/
+ http://groups.tryton.org/
+ http://wiki.tryton.org/
+ irc://irc.freenode.net/tryton
+
+ License
+ -------
+
+ See LICENSE
+
+ Copyright
+ ---------
+
+ See COPYRIGHT
+
+
+ For more information please visit the Tryton web site:
+
+ http://www.tryton.org/
+
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index d653761..e42584d 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -8,8 +8,8 @@ account.xml
analytic_account.xml
line.xml
setup.py
+tryton.cfg
./__init__.py
-./__tryton__.py
./account.py
./line.py
./tests/__init__.py
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index ce00589..547c05c 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,5 @@
-trytond_company >= 2.4, < 2.5
-trytond_currency >= 2.4, < 2.5
-trytond_account >= 2.4, < 2.5
-trytond_party >= 2.4, < 2.5
-trytond >= 2.4, < 2.5
\ No newline at end of file
+trytond_account >= 2.6, < 2.7
+trytond_company >= 2.6, < 2.7
+trytond_currency >= 2.6, < 2.7
+trytond_party >= 2.6, < 2.7
+trytond >= 2.6, < 2.7
\ No newline at end of file
commit b92b59eb967c37185f93b9985a96d74dca010055
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed Apr 25 11:03:28 2012 +0200
Adding upstream version 2.4.1.
diff --git a/CHANGELOG b/CHANGELOG
index 6e38f48..43b2426 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.4.1 - 2012-04-24
+* Restore es_AR translation
+
Version 2.4.0 - 2012-04-23
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 100f647..fe85d0a 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 2.4.0
+Version: 2.4.1
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
diff --git a/__tryton__.py b/__tryton__.py
index d06fafc..8e80c87 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -9,7 +9,7 @@
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '2.4.0',
+ 'version': '2.4.1',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
diff --git a/locale/es_AR.po b/locale/es_AR.po
index 542f292..3efd351 100644
--- a/locale/es_AR.po
+++ b/locale/es_AR.po
@@ -1,3 +1,423 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"¡No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta "
+"raiz obligatoria!"
+
+msgctxt "error:analytic_account.account:"
+msgid "You can not create recursive accounts!"
+msgstr "¡No puede crear cuentas recursivas!"
+
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values!"
+msgstr "¡Los valores debe/haber son incorrectos!"
+
+msgctxt "error:analytic_account.line:"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+"¡No puede crear una linea de asiento\n"
+"en una cuenta vista/inactiva!"
+
+msgctxt "field:account.move.line,analytic_lines:"
+msgid "Analytic Lines"
+msgstr "Líneas analíticas"
+
+msgctxt "field:analytic_account.account,active:"
+msgid "Active"
+msgstr "Activa"
+
+msgctxt "field:analytic_account.account,balance:"
+msgid "Balance"
+msgstr "Balance"
+
+msgctxt "field:analytic_account.account,childs:"
+msgid "Children"
+msgstr "Hijos"
+
+msgctxt "field:analytic_account.account,code:"
+msgid "Code"
+msgstr "Código"
+
+msgctxt "field:analytic_account.account,company:"
+msgid "Company"
+msgstr "Empresa"
+
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt "field:analytic_account.account,credit:"
+msgid "Credit"
+msgstr "Haber"
+
+msgctxt "field:analytic_account.account,currency:"
+msgid "Currency"
+msgstr "Divisa"
+
+msgctxt "field:analytic_account.account,currency_digits:"
+msgid "Currency Digits"
+msgstr "Decimales de la divisa"
+
+msgctxt "field:analytic_account.account,debit:"
+msgid "Debit"
+msgstr "Debe"
+
+msgctxt "field:analytic_account.account,display_balance:"
+msgid "Display Balance"
+msgstr "Mostrar balance"
+
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account,mandatory:"
+msgid "Mandatory"
+msgstr "Obligatorio"
+
+msgctxt "field:analytic_account.account,name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account,note:"
+msgid "Note"
+msgstr "Nota"
+
+msgctxt "field:analytic_account.account,parent:"
+msgid "Parent"
+msgstr "Padre"
+
+msgctxt "field:analytic_account.account,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account,root:"
+msgid "Root"
+msgstr "Raíz"
+
+msgctxt "field:analytic_account.account,state:"
+msgid "State"
+msgstr "Estado"
+
+msgctxt "field:analytic_account.account,type:"
+msgid "Type"
+msgstr "Tipo"
+
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:"
+msgid "Account"
+msgstr "Cuenta"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,selection:"
+msgid "Selection"
+msgstr "Selección"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
+msgctxt "field:analytic_account.account.selection,accounts:"
+msgid "Accounts"
+msgstr "Cuentas"
+
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
+msgctxt "field:analytic_account.line,account:"
+msgid "Account"
+msgstr "Cuenta"
+
+msgctxt "field:analytic_account.line,active:"
+msgid "Active"
+msgstr "Activa"
+
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt "field:analytic_account.line,credit:"
+msgid "Credit"
+msgstr "Haber"
+
+msgctxt "field:analytic_account.line,currency:"
+msgid "Currency"
+msgstr "Divisa"
+
+msgctxt "field:analytic_account.line,currency_digits:"
+msgid "Currency Digits"
+msgstr "Decimales de la divisa"
+
+msgctxt "field:analytic_account.line,date:"
+msgid "Date"
+msgstr "Fecha"
+
+msgctxt "field:analytic_account.line,debit:"
+msgid "Debit"
+msgstr "Debe"
+
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.line,journal:"
+msgid "Journal"
+msgstr "Diario"
+
+msgctxt "field:analytic_account.line,move_line:"
+msgid "Account Move Line"
+msgstr "Linea de asiento contable"
+
+msgctxt "field:analytic_account.line,name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,party:"
+msgid "Party"
+msgstr "Entidad"
+
+msgctxt "field:analytic_account.line,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,reference:"
+msgid "Reference"
+msgstr "Referencia"
+
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Fecha final"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha inicio"
+
+msgctxt "model:analytic_account.account,name:"
+msgid "Analytic Account"
+msgstr "Cuenta analítica"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Cuenta analítica - Selección de cuenta analítica"
+
+msgctxt "model:analytic_account.account.selection,name:"
+msgid "Analytic Account Selection"
+msgstr "Selección de cuenta analítica"
+
+msgctxt "model:analytic_account.line,name:"
+msgid "Analytic Line"
+msgstr "Línea analítica"
+
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr "Abrir plan contable"
+
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Líneas analíticas"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Abrir cuenta"
+
+msgctxt "model:ir.action,name:act_open_chart"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan de cuentas análiticas"
+
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Cuenta analítica"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan de cuentas análiticas"
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Administración analítica"
+
+msgctxt "selection:analytic_account.account,display_balance:"
+msgid "Credit - Debit"
+msgstr "Haber - Debe"
+
+msgctxt "selection:analytic_account.account,display_balance:"
+msgid "Debit - Credit"
+msgstr "Debe - Haber"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Closed"
+msgstr "Cerrada"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Draft"
+msgstr "Borrador"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Opened"
+msgstr "Abierta"
+
+msgctxt "selection:analytic_account.account,type:"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:"
+msgid "Root"
+msgstr "Raíz"
+
+msgctxt "selection:analytic_account.account,type:"
+msgid "View"
+msgstr "Vista"
+
+msgctxt "view:account.move.line:"
+msgid "Analytic"
+msgstr "Analítica"
+
+msgctxt "view:account.move:"
+msgid "Analytic"
+msgstr "Analítica"
+
+msgctxt "view:analytic_account.account:"
+msgid "Analytic Account"
+msgstr "Cuenta analítica"
+
+msgctxt "view:analytic_account.account:"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "view:analytic_account.account:"
+msgid "General Information"
+msgstr "Información general"
+
+msgctxt "view:analytic_account.account:"
+msgid "Notes"
+msgstr "Notas"
+
+msgctxt "view:analytic_account.line:"
+msgid "Analytic Line"
+msgstr "Línea analítica"
+
+msgctxt "view:analytic_account.line:"
+msgid "Analytic Lines"
+msgstr "Líneas analíticas"
+
+msgctxt "view:analytic_account.line:"
+msgid "General Information"
+msgstr "Información general"
+
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan de cuentas análiticas"
+
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
+msgid "Open"
+msgstr "Abrir"
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index fec9d95..0df196f 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 2.4.0
+Version: 2.4.1
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
commit cba26d5de61a1ffaf76dedc1064d14279d3c7558
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue Apr 24 19:30:37 2012 +0200
Adding upstream version 2.4.0.
diff --git a/CHANGELOG b/CHANGELOG
index d856081..6e38f48 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.4.0 - 2012-04-23
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.0 - 2011-10-24
* Bug fixes (see mercurial logs for details)
diff --git a/COPYRIGHT b/COPYRIGHT
index a9feb41..ede3fac 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,6 +1,6 @@
-Copyright (C) 2008-2011 Cédric Krier.
-Copyright (C) 2008-2011 Bertrand Chenal.
-Copyright (C) 2008-2011 B2CK SPRL.
+Copyright (C) 2008-2012 Cédric Krier.
+Copyright (C) 2008-2012 Bertrand Chenal.
+Copyright (C) 2008-2012 B2CK SPRL.
Copyright (C) 2004-2008 Tiny SPRL.
This program is free software: you can redistribute it and/or modify
diff --git a/INSTALL b/INSTALL
index 105d1fc..80b3192 100644
--- a/INSTALL
+++ b/INSTALL
@@ -4,7 +4,7 @@ Installing trytond_analytic_account
Prerequisites
-------------
- * Python 2.5 or later (http://www.python.org/)
+ * Python 2.6 or later (http://www.python.org/)
* trytond (http://www.tryton.org/)
* trytond_company (http://www.tryton.org/)
* trytond_party (http://www.tryton.org/)
diff --git a/PKG-INFO b/PKG-INFO
index 61510fb..100f647 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 2.2.0
+Version: 2.4.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.2/
+Download-URL: http://downloads.tryton.org/2.4/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/__init__.py b/__init__.py
index 6cd516f..900c1d5 100644
--- a/__init__.py
+++ b/__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.
-from account import *
-from line import *
+from .account import *
+from .line import *
diff --git a/__tryton__.py b/__tryton__.py
index a325ee9..d06fafc 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -3,11 +3,13 @@
{
'name': 'Analytic Account',
'name_bg_BG': 'Аналитична сметка',
+ 'name_ca_ES': 'Comptabilitat analítica',
'name_de_DE': 'Kostenstellen',
+ 'name_es_AR': 'Contabilidad Analítica',
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '2.2.0',
+ 'version': '2.4.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
@@ -23,20 +25,32 @@ And with report:
Прилежащи справки:
- Баланс на аналитична сметка
''',
+ 'description_ca_ES': '''Mòdul financer i comptable amb:
+ - Comptabilitat analítica amb plans analítics il·limitats
+
+I amb informes:
+ - Balanç comptable analític
+''',
'description_de_DE': '''Modul für Buchhhaltung mit:
- Kostenstellen mit einer beliebigen Anzahl von Tabellen
Zugehörige Berichte:
- Plan für Kostenstellen
''',
+ 'description_es_AR': '''Módulo financiero y de contabilidad con:
+ - Contabilidad analítica con cualquier cantidad de planes analíticos
+
+Y con informes:
+ - Balance contable analítico
+''',
'description_es_CO': '''Módulo Financiero y de Contabilidad con:
- Contabilidad Analítica con cualquier cantidad de planes analíticos
Y con reportes:
- Balance Contable Analítico
''',
- 'description_es_ES': '''Módulo financiero y de contabilidad con:
- - Contabilidad analítica con cualquier cantidad de planes analíticos
+ 'description_es_ES': '''Módulo financiero y contable con:
+ - Contabilidad analítica con planes analíticos ilimitados
Y con informes:
- Balance contable analítico
@@ -62,8 +76,10 @@ Et le rapport:
],
'translation': [
'locale/bg_BG.po',
+ 'locale/ca_ES.po',
'locale/cs_CZ.po',
'locale/de_DE.po',
+ 'locale/es_AR.po',
'locale/es_CO.po',
'locale/es_ES.po',
'locale/fr_FR.po',
diff --git a/account.py b/account.py
index 8bf2dee..ca6457a 100644
--- a/account.py
+++ b/account.py
@@ -3,7 +3,7 @@
from decimal import Decimal
import copy
from trytond.model import ModelView, ModelSQL, fields
-from trytond.wizard import Wizard
+from trytond.wizard import Wizard, StateView, StateAction, Button
from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
from trytond.pool import Pool
@@ -14,9 +14,9 @@ class Account(ModelSQL, ModelView):
_name = 'analytic_account.account'
_description = __doc__
- name = fields.Char('Name', required=True, translate=True, select=1)
- code = fields.Char('Code', select=1)
- active = fields.Boolean('Active', select=2)
+ name = fields.Char('Name', required=True, translate=True, select=True)
+ code = fields.Char('Code', select=True)
+ active = fields.Boolean('Active', select=True)
company = fields.Many2One('company.company', 'Company')
currency = fields.Many2One('currency.currency', 'Currency', required=True)
currency_digits = fields.Function(fields.Integer('Currency Digits',
@@ -26,14 +26,14 @@ class Account(ModelSQL, ModelView):
('view', 'View'),
('normal', 'Normal'),
], 'Type', required=True)
- root = fields.Many2One('analytic_account.account', 'Root', select=2,
- domain=[('parent', '=', False)],
+ root = fields.Many2One('analytic_account.account', 'Root', select=True,
+ domain=[('parent', '=', None)],
states={
'invisible': Eval('type') == 'root',
'required': Eval('type') != 'root',
},
depends=['type'])
- parent = fields.Many2One('analytic_account.account', 'Parent', select=2,
+ parent = fields.Many2One('analytic_account.account', 'Parent', select=True,
domain=[('parent', 'child_of', Eval('root'))],
states={
'invisible': Eval('type') == 'root',
@@ -79,15 +79,13 @@ class Account(ModelSQL, ModelView):
return True
def default_company(self):
- return Transaction().context.get('company') or False
+ return Transaction().context.get('company')
def default_currency(self):
company_obj = Pool().get('company.company')
- currency_obj = Pool().get('currency.currency')
if Transaction().context.get('company'):
company = company_obj.browse(Transaction().context['company'])
return company.currency.id
- return False
def default_type(self):
return 'normal'
@@ -256,7 +254,7 @@ class Account(ModelSQL, ModelView):
element_accounts = res[0]
root_account_ids = self.search([
- ('parent', '=', False),
+ ('parent', '=', None),
])
if not root_account_ids:
element_accounts.getparent().getparent().remove(
@@ -279,7 +277,7 @@ class Account(ModelSQL, ModelView):
fields_names = []
root_account_ids = self.search([
- ('parent', '=', False),
+ ('parent', '=', None),
])
for account in self.browse(root_account_ids):
name = 'analytic_account_' + str(account.id)
@@ -296,50 +294,36 @@ class Account(ModelSQL, ModelView):
Account()
-class OpenChartAccountInit(ModelView):
- 'Open Chart Account Init'
- _name = 'analytic_account.account.open_chart_account.init'
+class OpenChartAccountStart(ModelView):
+ 'Open Chart of Accounts'
+ _name = 'analytic_account.open_chart.start'
_description = __doc__
start_date = fields.Date('Start Date')
end_date = fields.Date('End Date')
-OpenChartAccountInit()
+OpenChartAccountStart()
class OpenChartAccount(Wizard):
- 'Open Chart Of Account'
- _name = 'analytic_account.account.open_chart_account'
- states = {
- 'init': {
- 'result': {
- 'type': 'form',
- 'object': 'analytic_account.account.open_chart_account.init',
- 'state': [
- ('end', 'Cancel', 'tryton-cancel'),
- ('open', 'Open', 'tryton-ok', True),
- ],
- },
- },
- 'open': {
- 'result': {
- 'type': 'action',
- 'action': '_action_open_chart',
- 'state': 'end',
- },
- },
- }
-
- def _action_open_chart(self, data):
- model_data_obj = Pool().get('ir.model.data')
- act_window_obj = Pool().get('ir.action.act_window')
- act_window_id = model_data_obj.get_id('analytic_account',
- 'act_account_tree2')
- res = act_window_obj.read(act_window_id)
- res['pyson_context'] = PYSONEncoder().encode({
- 'start_date': data['form']['start_date'],
- 'end_date': data['form']['end_date'],
- })
- return res
+ 'Open Chart of Accounts'
+ _name = 'analytic_account.open_chart'
+
+ start = StateView('analytic_account.open_chart.start',
+ 'analytic_account.open_chart_start_view_form', [
+ Button('Cancel', 'end', 'tryton-cancel'),
+ Button('Open', 'open_', 'tryton-ok', default=True),
+ ])
+ open_ = StateAction('analytic_account.act_account_tree2')
+
+ def do_open_(self, session, action):
+ action['pyson_context'] = PYSONEncoder().encode({
+ 'start_date': session.start.start_date,
+ 'end_date': session.start.end_date,
+ })
+ return action, {}
+
+ def transition_open_(self, session):
+ return 'end'
OpenChartAccount()
@@ -369,7 +353,7 @@ class AccountSelection(ModelSQL, ModelView):
account_obj = Pool().get('analytic_account.account')
root_account_ids = account_obj.search([
- ('parent', '=', False),
+ ('parent', '=', None),
])
root_accounts = account_obj.browse(root_account_ids)
@@ -380,7 +364,7 @@ class AccountSelection(ModelSQL, ModelView):
if account.root.id in roots:
return False
roots.append(account.root.id)
- if Transaction().user: #Root can by pass
+ if Transaction().user: # Root can by pass
for account in root_accounts:
if account.mandatory:
if not account.id in roots:
@@ -396,8 +380,8 @@ class AccountAccountSelection(ModelSQL):
_description = __doc__
_table = 'analytic_account_account_selection_rel'
selection = fields.Many2One('analytic_account.account.selection',
- 'Selection', ondelete='CASCADE', required=True, select=1)
+ 'Selection', ondelete='CASCADE', required=True, select=True)
account = fields.Many2One('analytic_account.account', 'Account',
- ondelete='RESTRICT', required=True, select=1)
+ ondelete='RESTRICT', required=True, select=True)
AccountAccountSelection()
diff --git a/account.xml b/account.xml
index 10f1d64..5237543 100644
--- a/account.xml
+++ b/account.xml
@@ -126,7 +126,7 @@ this repository contains the full copyright notices and license terms. -->
<field name="priority" eval="20"/>
<field name="arch" type="xml">
<![CDATA[
- <tree string="Analytic Accounts">
+ <tree string="Analytic Accounts" keyword_open="1">
<field name="name"/>
<field name="code"/>
<field name="debit"/>
@@ -152,12 +152,13 @@ this repository contains the full copyright notices and license terms. -->
<field name="view" ref="account_view_form"/>
<field name="act_window" ref="act_account_tree2"/>
</record>
- <record model="ir.action.wizard" id="act_open_chart_account">
+ <record model="ir.action.wizard" id="act_open_chart">
<field name="name">Open Chart of Analytic Accounts</field>
- <field name="wiz_name">analytic_account.account.open_chart_account</field>
+ <field name="wiz_name">analytic_account.open_chart</field>
</record>
- <menuitem parent="account.menu_charts" action="act_open_chart_account"
- icon="tryton-tree" id="menu_open_chart_account"/>
+ <menuitem parent="account.menu_charts" action="act_open_chart"
+ icon="tryton-tree" id="menu_open_chart"/>
+
<record model="ir.model.access" id="access_account">
<field name="model" search="[('model', '=', 'analytic_account.account')]"/>
<field name="perm_read" eval="True"/>
@@ -185,8 +186,8 @@ this repository contains the full copyright notices and license terms. -->
<field name="rule_group" ref="rule_group_account"/>
</record>
- <record model="ir.ui.view" id="open_chart_account_init_view_form">
- <field name="model">analytic_account.account.open_chart_account.init</field>
+ <record model="ir.ui.view" id="open_chart_start_view_form">
+ <field name="model">analytic_account.open_chart.start</field>
<field name="type">form</field>
<field name="arch" type="xml">
<![CDATA[
diff --git a/line.py b/line.py
index 2b0b5fa..6e7a170 100644
--- a/line.py
+++ b/line.py
@@ -1,8 +1,9 @@
#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 time
+from decimal import Decimal
from trytond.model import ModelView, ModelSQL, fields
-from trytond.wizard import Wizard
+from trytond.wizard import Wizard, StateAction
from trytond.backend import TableHandler
from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
@@ -16,23 +17,23 @@ class Line(ModelSQL, ModelView):
name = fields.Char('Name', required=True)
debit = fields.Numeric('Debit', digits=(16, Eval('currency_digits', 2)),
- depends=['currency_digits'])
+ required=True, depends=['currency_digits'])
credit = fields.Numeric('Credit', digits=(16, Eval('currency_digits', 2)),
- depends=['currency_digits'])
+ required=True, depends=['currency_digits'])
currency = fields.Function(fields.Many2One('currency.currency', 'Currency',
on_change_with=['move_line']), 'get_currency')
currency_digits = fields.Function(fields.Integer('Currency Digits',
on_change_with=['move_line']), 'get_currency_digits')
account = fields.Many2One('analytic_account.account', 'Account',
- required=True, select=1, domain=[('type', '!=', 'view')])
+ required=True, select=True, domain=[('type', '!=', 'view')])
move_line = fields.Many2One('account.move.line', 'Account Move Line',
ondelete='CASCADE', required=True)
journal = fields.Many2One('account.journal', 'Journal', required=True,
- select=1)
+ select=True)
date = fields.Date('Date', required=True)
reference = fields.Char('Reference')
party = fields.Many2One('party.party', 'Party')
- active = fields.Boolean('Active', select=2)
+ active = fields.Boolean('Active', select=True)
def __init__(self):
super(Line, self).__init__()
@@ -65,12 +66,17 @@ class Line(ModelSQL, ModelView):
def default_active(self):
return True
+ def default_debit(self):
+ return Decimal(0)
+
+ def default_credit(self):
+ return Decimal(0)
+
def on_change_with_currency(self, vals):
move_line_obj = Pool().get('account.move.line')
if vals.get('move_line'):
move_line = move_line_obj.browse(vals['move_line'])
return move_line.account.company.currency.id
- return False
def get_currency(self, ids, name):
res = {}
@@ -131,36 +137,25 @@ MoveLine()
class OpenAccount(Wizard):
'Open Account'
_name = 'analytic_account.line.open_account'
- states = {
- 'init': {
- 'result': {
- 'type': 'action',
- 'action': '_action_open_account',
- 'state': 'end',
- },
- },
- }
-
- def _action_open_account(self, data):
- model_data_obj = Pool().get('ir.model.data')
- act_window_obj = Pool().get('ir.action.act_window')
-
- act_window_id = model_data_obj.get_id('analytic_account',
- 'act_line_form')
- res = act_window_obj.read(act_window_id)
- res['pyson_domain'] = [
- ('account', '=', data['id']),
- ]
+ start_state = 'open_'
+ open_ = StateAction('analytic_account.act_line_form')
+ def do_open_(self, session, action):
+ action['pyson_domain'] = [
+ ('account', '=', Transaction().context['active_id']),
+ ]
if Transaction().context.get('start_date'):
- res['pyson_domain'].append(
- ('date', '>=', Transaction().context['start_date'])
- )
+ action['pyson_domain'].append(
+ ('date', '>=', Transaction().context['start_date'])
+ )
if Transaction().context.get('end_date'):
- res['pyson_domain'].append(
- ('date', '<=', Transaction().context['end_date'])
- )
- res['pyson_domain'] = PYSONEncoder().encode(res['pyson_domain'])
- return res
+ action['pyson_domain'].append(
+ ('date', '<=', Transaction().context['end_date'])
+ )
+ action['pyson_domain'] = PYSONEncoder().encode(action['pyson_domain'])
+ return action, {}
+
+ def transition_open_(self, session):
+ return 'end'
OpenAccount()
diff --git a/line.xml b/line.xml
index e72d33c..5121d99 100644
--- a/line.xml
+++ b/line.xml
@@ -118,22 +118,5 @@ this repository contains the full copyright notices and license terms. -->
</field>
</record>
- <record model="ir.ui.view" id="move_view_form">
- <field name="model">account.move</field>
- <field name="inherit" ref="account.move_view_form"/>
- <field name="arch" type="xml">
- <![CDATA[
- <data>
- <xpath expr="/form/field[@name='lines']/form/notebook/page[@id="general"]"
- position="after">
- <page string="Analytic" col="1" id="analytic">
- <field name="analytic_lines"/>
- </page>
- </xpath>
- </data>
- ]]>
- </field>
- </record>
-
</data>
</tryton>
diff --git a/locale/bg_BG.po b/locale/bg_BG.po
index 58dea33..a5c14a0 100644
--- a/locale/bg_BG.po
+++ b/locale/bg_BG.po
@@ -2,7 +2,7 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
@@ -10,15 +10,15 @@ msgstr ""
"Не може да имате много сметки с един и същи родител или да липсва родителска"
" сметка!"
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr "Не може да създавате взаимно вложени сметки!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr "Грешни стойности за кредит/дебит!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
@@ -26,192 +26,282 @@ msgstr ""
"Не може да създавате ред от движение\n"
"за изглед/неактивна сметка!"
-msgctxt "field:account.invoice.line,analytic_accounts:0"
+msgctxt "field:account.invoice.line,analytic_accounts:"
msgid "Analytic Accounts"
msgstr "Аналитични сметки"
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr "Редове от аналитична сметка"
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Активен"
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr "Баланс"
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Деца"
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Код"
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Фирма"
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr "Кредит"
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Валута"
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr "Цифри за валута"
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr "Дебит"
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr "Показване на баланс"
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr "Задължителен"
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Име"
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr "Бележка"
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Родител"
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Име"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr "Начало"
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "Щат"
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Вид"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr "Фактури"
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Име"
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Избор"
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Крайна дата"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Начална дата"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr "Сметки"
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Име"
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr "Фактури"
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Активен"
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr "Кредит"
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Валута"
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr "Цифри за валута"
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Дата"
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr "Дебит"
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr "Дневник"
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr "Ред от движение по сметка"
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Име"
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Партньор"
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Име"
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Отпратка"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
+
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Крайна дата"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Начална дата"
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr "Аналитична сметка"
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr "Аналитична сметка - Избор на аналитична сметка "
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr "Начално създаване на сметкоплан"
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr "Избор на аналитична сметка"
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr "Ред от аналитична сметка"
-#, fuzzy
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr "Отваряне на сметкоплан"
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr "Аналитични сметки"
@@ -232,11 +322,10 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr "Отваряне на сметка"
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr "Отваряне на аналитичен сметкоплан"
-#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
msgstr "Аналитични сметки"
@@ -249,7 +338,7 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr "Аналитична сметка"
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr "Отваряне на аналитичен сметкоплан"
@@ -257,83 +346,82 @@ msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr "Администрация на аналитична сметка"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr "Кредит - дебит"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Дебит - кредит"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Приключен"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Проект"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Отворен"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Нормален"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr "Начало"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Изглед"
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Задължителен"
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr "Задължителен"
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr "Отваряне на аналитичен сметкоплан"
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr "Аналитична сметка"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr "Аналитични сметки"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Обща информация"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Бележки"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr "Ред от аналитична сметка"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr "Редове от аналитична сметка"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Обща информация"
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Отваряне на аналитичен сметкоплан"
+
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Отказ"
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Отваряне"
diff --git a/locale/ca_ES.po b/locale/ca_ES.po
new file mode 100644
index 0000000..633fe36
--- /dev/null
+++ b/locale/ca_ES.po
@@ -0,0 +1,429 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"No pot tenir varis comptes amb el mateix compte arrel o falta un compte "
+"arrel obligatòri"
+
+msgctxt "error:analytic_account.account:"
+msgid "You can not create recursive accounts!"
+msgstr "No pot crear comptes recursius"
+
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values!"
+msgstr "Els valors deure\\/haver són incorrectes"
+
+msgctxt "error:analytic_account.line:"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+"No pot crear una apunt en un\n"
+"compte vista o inactiu"
+
+msgctxt "field:account.move.line,analytic_lines:"
+msgid "Analytic Lines"
+msgstr "Línies analítiques"
+
+msgctxt "field:analytic_account.account,active:"
+msgid "Active"
+msgstr "Actiu"
+
+msgctxt "field:analytic_account.account,balance:"
+msgid "Balance"
+msgstr "Balanç"
+
+msgctxt "field:analytic_account.account,childs:"
+msgid "Children"
+msgstr "Fills"
+
+msgctxt "field:analytic_account.account,code:"
+msgid "Code"
+msgstr "Codi"
+
+msgctxt "field:analytic_account.account,company:"
+msgid "Company"
+msgstr "Empresa"
+
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Crear usuari"
+
+msgctxt "field:analytic_account.account,credit:"
+msgid "Credit"
+msgstr "Haver"
+
+msgctxt "field:analytic_account.account,currency:"
+msgid "Currency"
+msgstr "Divisa"
+
+msgctxt "field:analytic_account.account,currency_digits:"
+msgid "Currency Digits"
+msgstr "Decimals de la divisa"
+
+msgctxt "field:analytic_account.account,debit:"
+msgid "Debit"
+msgstr "Deure"
+
+msgctxt "field:analytic_account.account,display_balance:"
+msgid "Display Balance"
+msgstr "Mostrar balanç"
+
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:"
+msgid "Mandatory"
+msgstr "Obligatori"
+
+msgctxt "field:analytic_account.account,name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.account,note:"
+msgid "Note"
+msgstr "Nota"
+
+msgctxt "field:analytic_account.account,parent:"
+msgid "Parent"
+msgstr "Pare"
+
+msgctxt "field:analytic_account.account,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.account,root:"
+msgid "Root"
+msgstr "Arrel"
+
+msgctxt "field:analytic_account.account,state:"
+msgid "State"
+msgstr "Estat"
+
+msgctxt "field:analytic_account.account,type:"
+msgid "Type"
+msgstr "Tipus"
+
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:"
+msgid "Account"
+msgstr "Compte"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Crear usuari"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,selection:"
+msgid "Selection"
+msgstr "Selecció"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,accounts:"
+msgid "Accounts"
+msgstr "Comptes"
+
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Crear usuari"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:analytic_account.line,account:"
+msgid "Account"
+msgstr "Compte"
+
+msgctxt "field:analytic_account.line,active:"
+msgid "Active"
+msgstr "Actiu"
+
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Crear usuari"
+
+msgctxt "field:analytic_account.line,credit:"
+msgid "Credit"
+msgstr "Haver"
+
+msgctxt "field:analytic_account.line,currency:"
+msgid "Currency"
+msgstr "Divisa"
+
+msgctxt "field:analytic_account.line,currency_digits:"
+msgid "Currency Digits"
+msgstr "Decimals de la divisa"
+
+msgctxt "field:analytic_account.line,date:"
+msgid "Date"
+msgstr "Data"
+
+msgctxt "field:analytic_account.line,debit:"
+msgid "Debit"
+msgstr "Deure"
+
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.line,journal:"
+msgid "Journal"
+msgstr "Diari"
+
+msgctxt "field:analytic_account.line,move_line:"
+msgid "Account Move Line"
+msgstr "Apunt comptable"
+
+msgctxt "field:analytic_account.line,name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.line,party:"
+msgid "Party"
+msgstr "Tercer"
+
+msgctxt "field:analytic_account.line,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.line,reference:"
+msgid "Reference"
+msgstr "Referència"
+
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Data final"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Data inici"
+
+msgctxt "model:analytic_account.account,name:"
+msgid "Analytic Account"
+msgstr "Compte analític"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Compte analític - Selecció de compte analític"
+
+msgctxt "model:analytic_account.account.selection,name:"
+msgid "Analytic Account Selection"
+msgstr "Selecció de compte analític"
+
+msgctxt "model:analytic_account.line,name:"
+msgid "Analytic Line"
+msgstr "Línia analítica"
+
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr ""
+
+#, fuzzy
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Comptes analítics"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Comptes analítics"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Comptes analítics"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Línies analítiques"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Obrir compte"
+
+msgctxt "model:ir.action,name:act_open_chart"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+#, fuzzy
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Comptes analítics"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Comptes analítics"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Compte analític"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Administració analítica"
+
+msgctxt "selection:analytic_account.account,display_balance:"
+msgid "Credit - Debit"
+msgstr "Haver - Deure"
+
+msgctxt "selection:analytic_account.account,display_balance:"
+msgid "Debit - Credit"
+msgstr "Deure - Haver"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Closed"
+msgstr "Tancada"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Draft"
+msgstr "Esborrany"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Opened"
+msgstr "Oberta"
+
+msgctxt "selection:analytic_account.account,type:"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:"
+msgid "Root"
+msgstr "Arrel"
+
+msgctxt "selection:analytic_account.account,type:"
+msgid "View"
+msgstr "Vista"
+
+msgctxt "view:account.move.line:"
+msgid "Analytic"
+msgstr "Analítica"
+
+msgctxt "view:analytic_account.account:"
+msgid "Analytic Account"
+msgstr "Compte analític"
+
+msgctxt "view:analytic_account.account:"
+msgid "Analytic Accounts"
+msgstr "Comptes analítics"
+
+msgctxt "view:analytic_account.account:"
+msgid "General Information"
+msgstr "Informació general"
+
+msgctxt "view:analytic_account.account:"
+msgid "Notes"
+msgstr "Notes"
+
+msgctxt "view:analytic_account.line:"
+msgid "Analytic Line"
+msgstr "Línia analítica"
+
+msgctxt "view:analytic_account.line:"
+msgid "Analytic Lines"
+msgstr "Línies analítiques"
+
+msgctxt "view:analytic_account.line:"
+msgid "General Information"
+msgstr "Informació general"
+
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+#, fuzzy
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
+msgid "Cancel"
+msgstr "Cancel·lar"
+
+#, fuzzy
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
+msgid "Open"
+msgstr "Obrir"
diff --git a/locale/cs_CZ.po b/locale/cs_CZ.po
index 433893b..b5dc2a0 100644
--- a/locale/cs_CZ.po
+++ b/locale/cs_CZ.po
@@ -2,207 +2,298 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
msgstr ""
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr ""
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr ""
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr ""
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr ""
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr ""
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr ""
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr ""
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr ""
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr ""
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr ""
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr ""
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr ""
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr ""
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr ""
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr ""
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr ""
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr ""
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr ""
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr ""
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr ""
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr ""
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr ""
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr ""
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr ""
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
-msgid "Name"
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
msgstr ""
msgctxt ""
"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr ""
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
msgstr ""
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
msgstr ""
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr ""
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr ""
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr ""
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr ""
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr ""
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr ""
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr ""
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr ""
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr ""
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr ""
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr ""
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr ""
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr ""
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr ""
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr ""
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr ""
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr ""
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr ""
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr ""
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr ""
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr ""
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr ""
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr ""
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr ""
@@ -223,7 +314,7 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr ""
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr ""
@@ -239,7 +330,7 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr ""
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr ""
@@ -247,83 +338,82 @@ msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr ""
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr ""
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr ""
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr ""
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr ""
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr ""
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr ""
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr ""
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr ""
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr ""
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr ""
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr ""
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr ""
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr ""
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr ""
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr ""
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr ""
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr ""
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr ""
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr ""
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr ""
diff --git a/locale/de_DE.po b/locale/de_DE.po
index c4a5bcd..417686a 100644
--- a/locale/de_DE.po
+++ b/locale/de_DE.po
@@ -2,11 +2,11 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:account.statement.line:0"
+msgctxt "error:account.statement.line:"
msgid "Amount (%s) greater than the amount to pay of invoice!"
msgstr "Der eingegebene Betrag (%s) ist größer als der Rechnungsbetrag!"
-msgctxt "error:account.statement.line:0"
+msgctxt "error:account.statement.line:"
msgid ""
"Credit or debit account on journal is the same than the statement line "
"account!"
@@ -14,15 +14,15 @@ msgstr ""
"Haben- oder Sollkonto im Journal ist das selbe Konto wie das des "
"Zahlungspostens!"
-msgctxt "error:account.statement.line:0"
+msgctxt "error:account.statement.line:"
msgid "Please provide debit and credit account on statement journal."
msgstr "Bitte Soll- und Habenkonto im Journal Zahlungsverkehr angeben."
-msgctxt "error:account.statement:0"
+msgctxt "error:account.statement:"
msgid "End Balance must be %s!"
msgstr "Endsaldo muss %s sein!"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
@@ -30,305 +30,396 @@ msgstr ""
"Mehrere Konten zum selben Wurzelkonto nicht möglich oder erforderliches "
"Wurzelkonto fehlt!"
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr "Konten können nicht rekursiv angelegt werden!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr "Falsche Haben/Soll-Werte!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr "Keine Berechtigung für die Erstellung von Buchungszeilen!"
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr "Kostenstelle Zeilen"
-msgctxt "field:account.statement,currency_digits:0"
+msgctxt "field:account.statement,currency_digits:"
msgid "Currency Digits"
msgstr "Stellen Währung"
-msgctxt "field:account.statement,date:0"
+msgctxt "field:account.statement,date:"
msgid "Date"
msgstr "Datum"
-msgctxt "field:account.statement,end_balance:0"
+msgctxt "field:account.statement,end_balance:"
msgid "End Balance"
msgstr "Endsaldo"
-msgctxt "field:account.statement,journal:0"
+msgctxt "field:account.statement,journal:"
msgid "Journal"
msgstr "Journal"
-msgctxt "field:account.statement,lines:0"
+msgctxt "field:account.statement,lines:"
msgid "Transactions"
msgstr "Transaktionen"
-msgctxt "field:account.statement,move_lines:0"
+msgctxt "field:account.statement,move_lines:"
msgid "Move Lines"
msgstr "Buchungsposten"
-msgctxt "field:account.statement,rec_name:0"
+msgctxt "field:account.statement,rec_name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:account.statement,start_balance:0"
+msgctxt "field:account.statement,start_balance:"
msgid "Start Balance"
msgstr "Anfangssaldo"
-msgctxt "field:account.statement,state:0"
+msgctxt "field:account.statement,state:"
msgid "State"
msgstr "Status"
-msgctxt "field:account.statement.journal,company:0"
+msgctxt "field:account.statement.journal,company:"
msgid "Company"
msgstr "Unternehmen"
-msgctxt "field:account.statement.journal,currency:0"
+msgctxt "field:account.statement.journal,currency:"
msgid "Currency"
msgstr "Währung"
-msgctxt "field:account.statement.journal,journal:0"
+msgctxt "field:account.statement.journal,journal:"
msgid "Journal"
msgstr "Journal"
-msgctxt "field:account.statement.journal,name:0"
+msgctxt "field:account.statement.journal,name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:account.statement.journal,rec_name:0"
+msgctxt "field:account.statement.journal,rec_name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:account.statement.line,account:0"
+msgctxt "field:account.statement.line,account:"
msgid "Account"
msgstr "Konto"
-msgctxt "field:account.statement.line,amount:0"
+msgctxt "field:account.statement.line,amount:"
msgid "Amount"
msgstr "Betrag"
-msgctxt "field:account.statement.line,date:0"
+msgctxt "field:account.statement.line,date:"
msgid "Date"
msgstr "Datum"
-msgctxt "field:account.statement.line,description:0"
+msgctxt "field:account.statement.line,description:"
msgid "Description"
msgstr "Beschreibung"
-msgctxt "field:account.statement.line,invoice:0"
+msgctxt "field:account.statement.line,invoice:"
msgid "Invoice"
msgstr "Rechnung"
-msgctxt "field:account.statement.line,move:0"
+msgctxt "field:account.statement.line,move:"
msgid "Account Move"
msgstr "Buchungssatz"
-msgctxt "field:account.statement.line,party:0"
+msgctxt "field:account.statement.line,party:"
msgid "Party"
msgstr "Partei"
-msgctxt "field:account.statement.line,rec_name:0"
+msgctxt "field:account.statement.line,rec_name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:account.statement.line,statement:0"
+msgctxt "field:account.statement.line,statement:"
msgid "Statement"
msgstr "Zahlung"
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Aktiv"
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr "Saldo"
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Untergeordnet (Kostenstellen)"
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Code"
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Unternehmen"
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr "Haben"
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Währung"
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr "Währung (signifikante Stellen)"
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr "Soll"
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr "Ansicht Bilanz"
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr "Erforderlich"
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr "Notiz"
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Übergeordnet (Kostenstelle)"
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr "Wurzel"
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "Status"
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Typ"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr "Konto"
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Name"
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Auswahl"
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Enddatum"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Anfangsdatum"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr "Konten"
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr "Konto"
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Aktiv"
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr "Haben"
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Währung"
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr "Währung (signifikante Stellen)"
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Datum"
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr "Soll"
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr "Journal"
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr "Buchungszeile"
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Partei"
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Name"
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Interner Beleg"
-msgctxt "model:account.statement,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
+
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Enddatum"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Anfangsdatum"
+
+msgctxt "model:account.statement,name:"
msgid "Account Statement"
msgstr "Zahlungsverkehr"
-msgctxt "model:account.statement.journal,name:0"
+msgctxt "model:account.statement.journal,name:"
msgid "Statement Journal"
msgstr "Journal Zahlungsverkehr"
-msgctxt "model:account.statement.line,name:0"
+msgctxt "model:account.statement.line,name:"
msgid "Account Statement Line"
msgstr "Zahlungsverkehr Position"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr "Kostenstelle"
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr "Kostenstelle - Kostenstelle Auswahl"
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr "Kontenplan Öffnen Init"
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr "Kostenstelle Auswahl"
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr "Kostenstelle Zeile"
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr "Kontenplan öffnen"
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr "Kostenstellen"
@@ -349,9 +440,9 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr "Konto öffnen"
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Kostenstellenplan Öffnen"
+msgstr "Kostenstellenplan öffnen"
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
@@ -365,7 +456,7 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr "Kostenstellen"
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr "Kostenstellenplan öffnen"
@@ -373,163 +464,162 @@ msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr "Kostenstellen Administration"
-msgctxt "selection:account.statement,state:0"
+msgctxt "selection:account.statement,state:"
msgid "Canceled"
msgstr "Annulliert"
-msgctxt "selection:account.statement,state:0"
+msgctxt "selection:account.statement,state:"
msgid "Draft"
msgstr "Entwurf"
-msgctxt "selection:account.statement,state:0"
+msgctxt "selection:account.statement,state:"
msgid "Posted"
msgstr "Festgeschrieben"
-msgctxt "selection:account.statement,state:0"
+msgctxt "selection:account.statement,state:"
msgid "Validated"
msgstr "Geprüft"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr "Haben - Soll"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Soll - Haben"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Geschlossen"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Entwurf"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Geöffnet"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Normal"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr "Wurzel"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Sicht"
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Kostenstelle"
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr "Kostenstelle"
-msgctxt "view:account.statement.journal:0"
+msgctxt "view:account.statement.journal:"
msgid "Statement Journal"
msgstr "Journal Zahlungsverkehr"
-msgctxt "view:account.statement.journal:0"
+msgctxt "view:account.statement.journal:"
msgid "Statement Journals"
msgstr "Journale Zahlungsverkehr"
-msgctxt "view:account.statement.line:0"
+msgctxt "view:account.statement.line:"
msgid "Bank Statement Line"
msgstr "Posten Bankauszüge"
-msgctxt "view:account.statement.line:0"
+msgctxt "view:account.statement.line:"
msgid "Statement Line"
msgstr "Zahlungsposten"
-msgctxt "view:account.statement.line:0"
+msgctxt "view:account.statement.line:"
msgid "Statement Lines"
msgstr "Zahlungsposten"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Bank Statement"
msgstr "Bankauszug"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Bank Statement Lines"
msgstr "Posten Bankauszüge"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Bank Statements"
msgstr "Bankauszüge"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Cancel"
msgstr "Annullieren"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Move Lines"
msgstr "Buchungsposten"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Post"
msgstr "Festschreiben"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Reset to Draft"
msgstr "Auf Entwurf zurücksetzen"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Statement"
msgstr "Zahlung"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Statement Lines"
msgstr "Zahlungsposten"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Statements"
msgstr "Zahlungsverkehr"
-msgctxt "view:account.statement:0"
+msgctxt "view:account.statement:"
msgid "Validate"
msgstr "Prüfen"
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr "Kostenstellenplan öffnen"
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr "Kostenstelle"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr "Kostenstellen"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Allgemein"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Notizen"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr "Kostenstelle"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr "Kostenstellen"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Allgemein"
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Kostenstellenplan öffnen"
+
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Abbrechen"
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
-msgstr "Öffnen"
+msgstr "Offen"
diff --git a/locale/es_AR.po b/locale/es_AR.po
new file mode 100644
index 0000000..542f292
--- /dev/null
+++ b/locale/es_AR.po
@@ -0,0 +1,3 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
diff --git a/locale/es_CO.po b/locale/es_CO.po
index 6b5b6ac..fd89a4d 100644
--- a/locale/es_CO.po
+++ b/locale/es_CO.po
@@ -2,7 +2,7 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
@@ -10,201 +10,298 @@ msgstr ""
"¡No se puede tener varias cuentas con la misma cuenta padre o tantas sin "
"cuenta padre!"
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr "¡No se puede crear cuentas recursivas!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr "Valores erróneos de crédito/debito!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr "No puede crearse línea de movimiento"
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr "Líneas Analíticas"
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Activo"
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr "Balance"
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Hij at s"
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Código"
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Compañía"
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Crear usuario"
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr "Crédito"
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Moneda"
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr "Dígitos de Moneda"
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr "Débito"
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr "Mostrar Balance"
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr "Obligatorio"
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr "Nota"
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Padre"
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr "Raíz"
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "Estado"
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Tipo"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr ""
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr "Cuenta"
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Crear usuario"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Nombre"
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Selección"
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Fecha Fin"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Fecha Inicio"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr "Cuentas"
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Crear usuario"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr "Cuenta"
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Activo"
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Crear usuario"
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr "Crédito"
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Moneda"
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr "Dígitos de Moneda"
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Fecha"
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr "Débito"
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr "Diario"
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr "Linea de Movimiento de Cuenta"
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Terceros"
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Referencia"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Fecha Final"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha Inicio"
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr "Cuenta Analítica"
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr "Cuenta Analítica - Selección de Cuenta Analítica"
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr "Abrir Inicio de Plan de Cuentas"
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr "Selección de Cuenta Analítica"
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr "Línea Analítica"
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr ""
+
#, fuzzy
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
@@ -226,9 +323,9 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr "Abrir Cuenta"
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir Plan de Cuentas Analítico"
+msgstr ""
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_account_list"
@@ -243,92 +340,93 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr "Cuenta Analítica"
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir Plan de Cuentas Analítico"
+msgstr ""
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr "Administración Analítica"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr "Crédito - Débito"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Débito - Crédito"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Cerrado"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Borrador"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Abierto"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Normal"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr "Raíz"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Vista"
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Analítica"
#, fuzzy
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr "Analítica"
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir Plan de Cuentas Analítico"
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr "Cuenta Analítica"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr "Cuentas Analíticas"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Información General"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Notas"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr "Línea analítica"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr "Líneas Analíticas"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Información General"
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+#, fuzzy
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Cancelar"
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+#, fuzzy
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Abrir"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index 8802ee4..f10ccc1 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -2,212 +2,302 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
msgstr ""
-"No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta "
-"raiz obligatoria"
+"No puede tener varias cuentas con la misma cuenta raíz o falta una cuenta "
+"raíz obligatoria."
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
-msgstr "No puede crear cuentas recursivas"
+msgstr "No puede crear cuentas recursivas."
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
-msgstr "Los valores debe/haber son incorrectos"
+msgstr "Los valores debe/haber son incorrectos."
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr ""
-"No puede crear una linea de asiento\n"
-"en una cuenta vista/inactiva"
+"No puede crear un apunte\n"
+"en una cuenta vista/inactiva."
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr "Líneas analíticas"
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Activa"
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr "Balance"
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Hijos"
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Código"
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Empresa"
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr "Haber"
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Divisa"
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr "Decimales de la divisa"
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr "Debe"
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr "Mostrar balance"
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr "Obligatorio"
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr "Nota"
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Padre"
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr "Raíz"
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "Estado"
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Tipo"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr "Cuenta"
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Nombre"
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Selección"
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Fecha fin"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Fecha inicio"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr "Cuentas"
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr "Cuenta"
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Activa"
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr "Fecha creación"
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Usuario creación"
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr "Haber"
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Divisa"
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr "Decimales de la divisa"
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Fecha"
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr "Debe"
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr "Diario"
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
-msgstr "Linea de asiento contable"
+msgstr "Apunte contable"
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Tercero"
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Nombre"
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Referencia"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr "Fecha modificación"
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr "Usuario modificación"
+
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Fecha final"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Fecha inicial"
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr "Cuenta analítica"
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr "Cuenta analítica - Selección de cuenta analítica"
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr "Inicializa la apertura del plan de cuentas"
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr "Selección de cuenta analítica"
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr "Línea analítica"
-#, fuzzy
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr "Abrir plan contable"
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr "Cuentas analíticas"
@@ -228,11 +318,10 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr "Abrir cuenta"
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan contable analítico"
+msgstr "Abrir plan analítico"
-#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_account_list"
msgid "Analytic Accounts"
msgstr "Cuentas analíticas"
@@ -245,92 +334,90 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr "Cuenta analítica"
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan contable analítico"
+msgstr "Abrir plan analítico"
msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr "Administración analítica"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr "Haber - Debe"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Debe - Haber"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Cerrada"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Borrador"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Abierta"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Normal"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr "Raíz"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Vista"
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Analítica"
-#, fuzzy
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr "Analítica"
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr "Abrir plan de cuentas analítico"
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr "Cuenta analítica"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr "Cuentas analíticas"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Información general"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Notas"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr "Línea analítica"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr "Líneas analíticas"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Información general"
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan analítico"
+
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Cancelar"
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Abrir"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index 8f8a63e..924c61f 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -2,7 +2,7 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
@@ -10,15 +10,31 @@ msgstr ""
"Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte "
"avec une racine obligatoire!"
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account.selection:"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte "
+"avec une racine obligatoire!"
+
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr "Vous ne pouvez pas créer des comptes récursifs!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.account:"
+msgid "You can not create recursive accounts!"
+msgstr "Vous ne pouvez pas créer des comptes récursifs!"
+
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr "Valeurs crédit/débit incorrectes"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
+msgid "Wrong credit/debit values!"
+msgstr "Valeurs crédit/débit incorrectes"
+
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
@@ -26,187 +42,286 @@ msgstr ""
"Vous ne pouvez pas créer de mouvements\n"
"sur des comptes inactifs ou de type vue!"
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "error:analytic_account.line:"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+"Vous ne pouvez pas créer de mouvements\n"
+"sur des comptes inactifs ou de type vue!"
+
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr "Lignes analytiques"
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Actif"
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr "Balance"
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Enfants"
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Code"
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Société"
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr "Crédit"
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Devise"
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr "Décimales de la devise"
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr "Débit"
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr "Balance affichée"
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr "Obligatoire"
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Nom"
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr "Note"
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Parent"
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Nom"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr "Racine"
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "État"
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Type"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr "Compte"
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Nom"
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Sélection"
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Date de fin"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Date de début"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr "Comptes"
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Nom"
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr "Compte"
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Actif"
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr "Crédit"
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Devise"
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr "Décimales de la devise"
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Date"
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr "Débit"
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr "Journal"
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr "Ligne de mouvement comptable"
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Nom"
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Partenaire"
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Nom"
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Référence"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
+
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Date de fin"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Date de début"
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr "Compte analytique"
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr "Compte analytique - Sélection compte analytique"
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr "Ouvrir le plan comptable - Initialisation"
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr "Sélection compte analytique"
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr "Ligne analytique"
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr "Ouvrir le plan comptable"
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr "Comptes analytiques"
@@ -227,7 +342,7 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr "Ouvrir le compte"
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr "Ouvrir le plan comptable analytique"
@@ -243,7 +358,7 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr "Compte analytique"
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr "Ouvrir le plan comptable analytique"
@@ -251,87 +366,146 @@ msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr "Administration analytique"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr "Crédit - Débit"
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
+msgid "Credit - Debit"
+msgstr "Crédit - Débit"
+
+msgctxt "selection:analytic_account.account,display_balance:"
+msgid "Debit - Credit"
+msgstr "Débit - Crédit"
+
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Débit - Crédit"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Fermé"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
+msgid "Closed"
+msgstr "Fermé"
+
+msgctxt "selection:analytic_account.account,state:"
+msgid "Draft"
+msgstr "Brouillon"
+
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Brouillon"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
+msgid "Opened"
+msgstr "Ouvert"
+
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Ouvert"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Normal"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr "Racine"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
+msgid "Root"
+msgstr "Racine"
+
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Vue"
-msgctxt "view:account.move.line:0"
+msgctxt "selection:analytic_account.account,type:"
+msgid "View"
+msgstr "Vue"
+
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Analytique"
-msgctxt "view:account.move:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr "Analytique"
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Account"
-msgstr "Ouvrir le plan comptable analytique"
+msgctxt "view:account.move:"
+msgid "Analytic"
+msgstr "Analytique"
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr "Ouvrir le plan comptable analytique"
+msgctxt "view:analytic_account.account:"
+msgid "Analytic Account"
+msgstr "Compte analytique"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr "Compte analytique"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr "Comptes analytiques"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Information générale"
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
+msgid "General Information"
+msgstr "Information générale"
+
+msgctxt "view:analytic_account.account:"
+msgid "Notes"
+msgstr "Notes"
+
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Notes"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
+msgid "Analytic Line"
+msgstr "Ligne analytique"
+
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr "Ligne analytique"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
+msgid "Analytic Lines"
+msgstr "Lignes analytiques"
+
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr "Lignes analytiques"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Information générale"
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "view:analytic_account.line:"
+msgid "General Information"
+msgstr "Information générale"
+
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Ouvrir le plan comptable analytique"
+
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Annuler"
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Ouvrir"
diff --git a/locale/nl_NL.po b/locale/nl_NL.po
index fc1d479..2adc0c0 100644
--- a/locale/nl_NL.po
+++ b/locale/nl_NL.po
@@ -2,246 +2,336 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
msgstr ""
#, fuzzy
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr "U kunt geen rekeningen aanmaken die naar zichzelf verwijzen!"
#, fuzzy
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr "Verkeerde debit/credit waarden!"
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr ""
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Actief"
#, fuzzy
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr "Balans"
#, fuzzy
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Onderliggende niveaus"
#, fuzzy
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Code"
#, fuzzy
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Bedrijf"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr ""
+
#, fuzzy
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr "Credit"
#, fuzzy
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Valuta"
#, fuzzy
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr "Valuta decimalen"
#, fuzzy
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr "Debit"
#, fuzzy
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr "Toon balans"
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Naam bijlage"
#, fuzzy
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr "Aantekening"
#, fuzzy
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Bovenliggend niveau"
#, fuzzy
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Naam bijlage"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "Status"
#, fuzzy
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Type"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr ""
+
#, fuzzy
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr "Rekeningen"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
#, fuzzy
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Naam bijlage"
#, fuzzy
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Selectie"
-#, fuzzy
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Eind datum"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
-#, fuzzy
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Start datum"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr "Rekeningen"
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
#, fuzzy
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Naam bijlage"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
+
#, fuzzy
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr "Rekeningen"
#, fuzzy
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Actief"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr ""
+
#, fuzzy
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr "Credit"
#, fuzzy
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Valuta"
#, fuzzy
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr "Valuta decimalen"
#, fuzzy
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Vervaldatum"
#, fuzzy
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr "Debit"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr ""
+
#, fuzzy
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr "Dagboek"
#, fuzzy
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr "Boekingsregel"
#, fuzzy
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Naam bijlage"
#, fuzzy
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Relaties"
#, fuzzy
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Naam bijlage"
#, fuzzy
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Referentie"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Eind datum"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Start datum"
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr ""
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr ""
-#, fuzzy
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr "Rekeningschema gaan openen"
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr ""
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr ""
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr ""
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr ""
@@ -262,7 +352,7 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr ""
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr ""
@@ -278,7 +368,7 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr ""
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr ""
@@ -287,92 +377,91 @@ msgid "Analytic Administration"
msgstr ""
#, fuzzy
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr "Credit - Debit"
#, fuzzy
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr "Debit - Credit"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr ""
#, fuzzy
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Concept"
#, fuzzy
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr "Geopend"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr ""
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr ""
#, fuzzy
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Overzicht"
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr ""
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr ""
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr ""
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr ""
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr ""
#, fuzzy
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr "Algemene informatie"
#, fuzzy
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Aantekeningen"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr ""
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr ""
#, fuzzy
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr "Algemene informatie"
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
#, fuzzy
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Annuleren"
#, fuzzy
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Open"
diff --git a/locale/ru_RU.po b/locale/ru_RU.po
index 11cc616..9d78ab1 100644
--- a/locale/ru_RU.po
+++ b/locale/ru_RU.po
@@ -2,229 +2,320 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
-msgctxt "error:analytic_account.account.selection:0"
+msgctxt "error:analytic_account.account.selection:"
msgid ""
"Can not have many accounts with the same root or a missing mandatory root "
"account!"
msgstr ""
-msgctxt "error:analytic_account.account:0"
+msgctxt "error:analytic_account.account:"
msgid "You can not create recursive accounts!"
msgstr ""
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid "Wrong credit/debit values!"
msgstr ""
-msgctxt "error:analytic_account.line:0"
+msgctxt "error:analytic_account.line:"
msgid ""
"You can not create move line\n"
"on view/inactive account!"
msgstr ""
-msgctxt "field:account.move.line,analytic_lines:0"
+msgctxt "field:account.move.line,analytic_lines:"
msgid "Analytic Lines"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,active:0"
+msgctxt "field:analytic_account.account,active:"
msgid "Active"
msgstr "Действительный"
-msgctxt "field:analytic_account.account,balance:0"
+msgctxt "field:analytic_account.account,balance:"
msgid "Balance"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,childs:0"
+msgctxt "field:analytic_account.account,childs:"
msgid "Children"
msgstr "Подчиненый"
#, fuzzy
-msgctxt "field:analytic_account.account,code:0"
+msgctxt "field:analytic_account.account,code:"
msgid "Code"
msgstr "Код страны"
#, fuzzy
-msgctxt "field:analytic_account.account,company:0"
+msgctxt "field:analytic_account.account,company:"
msgid "Company"
msgstr "Учет.орг."
-msgctxt "field:analytic_account.account,credit:0"
+msgctxt "field:analytic_account.account,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.account,credit:"
msgid "Credit"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,currency:0"
+msgctxt "field:analytic_account.account,currency:"
msgid "Currency"
msgstr "Валюты"
-msgctxt "field:analytic_account.account,currency_digits:0"
+msgctxt "field:analytic_account.account,currency_digits:"
msgid "Currency Digits"
msgstr ""
-msgctxt "field:analytic_account.account,debit:0"
+msgctxt "field:analytic_account.account,debit:"
msgid "Debit"
msgstr ""
-msgctxt "field:analytic_account.account,display_balance:0"
+msgctxt "field:analytic_account.account,display_balance:"
msgid "Display Balance"
msgstr ""
-msgctxt "field:analytic_account.account,mandatory:0"
+msgctxt "field:analytic_account.account,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:"
msgid "Mandatory"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,name:0"
+msgctxt "field:analytic_account.account,name:"
msgid "Name"
msgstr "Наименование"
-msgctxt "field:analytic_account.account,note:0"
+msgctxt "field:analytic_account.account,note:"
msgid "Note"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,parent:0"
+msgctxt "field:analytic_account.account,parent:"
msgid "Parent"
msgstr "Основной"
#, fuzzy
-msgctxt "field:analytic_account.account,rec_name:0"
+msgctxt "field:analytic_account.account,rec_name:"
msgid "Name"
msgstr "Наименование"
-msgctxt "field:analytic_account.account,root:0"
+msgctxt "field:analytic_account.account,root:"
msgid "Root"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.account,state:0"
+msgctxt "field:analytic_account.account,state:"
msgid "State"
msgstr "Статус"
#, fuzzy
-msgctxt "field:analytic_account.account,type:0"
+msgctxt "field:analytic_account.account,type:"
msgid "Type"
msgstr "Тип"
+msgctxt "field:analytic_account.account,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account,write_uid:"
+msgid "Write User"
+msgstr ""
+
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,account:0"
+"field:analytic_account.account-analytic_account.account.selection,account:"
msgid "Account"
msgstr ""
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
#, fuzzy
msgctxt ""
-"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+"field:analytic_account.account-analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Наименование"
#, fuzzy
msgctxt ""
-"field:analytic_account.account-"
-"analytic_account.account.selection,selection:0"
+"field:analytic_account.account-analytic_account.account.selection,selection:"
msgid "Selection"
msgstr "Выбор"
-#, fuzzy
-msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
-msgid "End Date"
-msgstr "Дата окончания"
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
-#, fuzzy
-msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
-msgid "Start Date"
-msgstr "Дата начала"
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
-msgctxt "field:analytic_account.account.selection,accounts:0"
+msgctxt "field:analytic_account.account.selection,accounts:"
msgid "Accounts"
msgstr ""
+msgctxt "field:analytic_account.account.selection,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,id:"
+msgid "ID"
+msgstr ""
+
#, fuzzy
-msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgctxt "field:analytic_account.account.selection,rec_name:"
msgid "Name"
msgstr "Наименование"
-msgctxt "field:analytic_account.line,account:0"
+msgctxt "field:analytic_account.account.selection,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:analytic_account.line,account:"
msgid "Account"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.line,active:0"
+msgctxt "field:analytic_account.line,active:"
msgid "Active"
msgstr "Действительный"
-msgctxt "field:analytic_account.line,credit:0"
+msgctxt "field:analytic_account.line,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:analytic_account.line,credit:"
msgid "Credit"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.line,currency:0"
+msgctxt "field:analytic_account.line,currency:"
msgid "Currency"
msgstr "Валюты"
-msgctxt "field:analytic_account.line,currency_digits:0"
+msgctxt "field:analytic_account.line,currency_digits:"
msgid "Currency Digits"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.line,date:0"
+msgctxt "field:analytic_account.line,date:"
msgid "Date"
msgstr "Дата"
-msgctxt "field:analytic_account.line,debit:0"
+msgctxt "field:analytic_account.line,debit:"
msgid "Debit"
msgstr ""
-msgctxt "field:analytic_account.line,journal:0"
+msgctxt "field:analytic_account.line,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:analytic_account.line,journal:"
msgid "Journal"
msgstr ""
-msgctxt "field:analytic_account.line,move_line:0"
+msgctxt "field:analytic_account.line,move_line:"
msgid "Account Move Line"
msgstr ""
#, fuzzy
-msgctxt "field:analytic_account.line,name:0"
+msgctxt "field:analytic_account.line,name:"
msgid "Name"
msgstr "Наименование"
#, fuzzy
-msgctxt "field:analytic_account.line,party:0"
+msgctxt "field:analytic_account.line,party:"
msgid "Party"
msgstr "Организации"
#, fuzzy
-msgctxt "field:analytic_account.line,rec_name:0"
+msgctxt "field:analytic_account.line,rec_name:"
msgid "Name"
msgstr "Наименование"
#, fuzzy
-msgctxt "field:analytic_account.line,reference:0"
+msgctxt "field:analytic_account.line,reference:"
msgid "Reference"
msgstr "Ссылка"
-msgctxt "model:analytic_account.account,name:0"
+msgctxt "field:analytic_account.line,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,write_uid:"
+msgid "Write User"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,end_date:"
+msgid "End Date"
+msgstr "Дата окончания"
+
+msgctxt "field:analytic_account.open_chart.start,id:"
+msgid "ID"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.open_chart.start,start_date:"
+msgid "Start Date"
+msgstr "Дата начала"
+
+msgctxt "model:analytic_account.account,name:"
msgid "Analytic Account"
msgstr ""
msgctxt ""
-"model:analytic_account.account-analytic_account.account.selection,name:0"
+"model:analytic_account.account-analytic_account.account.selection,name:"
msgid "Analytic Account - Analytic Account Selection"
msgstr ""
-msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
-msgid "Open Chart Account Init"
-msgstr ""
-
-msgctxt "model:analytic_account.account.selection,name:0"
+msgctxt "model:analytic_account.account.selection,name:"
msgid "Analytic Account Selection"
msgstr ""
-msgctxt "model:analytic_account.line,name:0"
+msgctxt "model:analytic_account.line,name:"
msgid "Analytic Line"
msgstr ""
+msgctxt "model:analytic_account.open_chart.start,name:"
+msgid "Open Chart of Accounts"
+msgstr ""
+
msgctxt "model:ir.action,name:act_account_list"
msgid "Analytic Accounts"
msgstr ""
@@ -245,7 +336,7 @@ msgctxt "model:ir.action,name:act_open_account"
msgid "Open Account"
msgstr ""
-msgctxt "model:ir.action,name:act_open_chart_account"
+msgctxt "model:ir.action,name:act_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr ""
@@ -261,7 +352,7 @@ msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
msgid "Analytic Account"
msgstr ""
-msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgctxt "model:ir.ui.menu,name:menu_open_chart"
msgid "Open Chart of Analytic Accounts"
msgstr ""
@@ -269,90 +360,89 @@ msgctxt "model:res.group,name:group_analytic_admin"
msgid "Analytic Administration"
msgstr ""
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Credit - Debit"
msgstr ""
-msgctxt "selection:analytic_account.account,display_balance:0"
+msgctxt "selection:analytic_account.account,display_balance:"
msgid "Debit - Credit"
msgstr ""
#, fuzzy
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Closed"
msgstr "Закрыто"
#, fuzzy
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Draft"
msgstr "Черновик"
-msgctxt "selection:analytic_account.account,state:0"
+msgctxt "selection:analytic_account.account,state:"
msgid "Opened"
msgstr ""
#, fuzzy
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Normal"
msgstr "Нормально"
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "Root"
msgstr ""
#, fuzzy
-msgctxt "selection:analytic_account.account,type:0"
+msgctxt "selection:analytic_account.account,type:"
msgid "View"
msgstr "Просмотр"
-msgctxt "view:account.move.line:0"
+msgctxt "view:account.move.line:"
msgid "Analytic"
msgstr ""
-msgctxt "view:account.move:0"
+msgctxt "view:account.move:"
msgid "Analytic"
msgstr ""
-msgctxt "view:analytic_account.account.open_chart_account.init:0"
-msgid "Open Chart of Analytic Accounts"
-msgstr ""
-
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Account"
msgstr ""
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Analytic Accounts"
msgstr ""
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "General Information"
msgstr ""
#, fuzzy
-msgctxt "view:analytic_account.account:0"
+msgctxt "view:analytic_account.account:"
msgid "Notes"
msgstr "Комментарии"
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Line"
msgstr ""
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "Analytic Lines"
msgstr ""
-msgctxt "view:analytic_account.line:0"
+msgctxt "view:analytic_account.line:"
msgid "General Information"
msgstr ""
+msgctxt "view:analytic_account.open_chart.start:"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
#, fuzzy
-msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,end:"
msgid "Cancel"
msgstr "Отменить"
#, fuzzy
-msgctxt ""
-"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgctxt "wizard_button:analytic_account.open_chart,start,open_:"
msgid "Open"
msgstr "Открыть"
diff --git a/setup.py b/setup.py
index f3b5fad..df4e934 100644
--- a/setup.py
+++ b/setup.py
@@ -12,7 +12,7 @@ minor_version = int(minor_version)
requires = []
for dep in info.get('depends', []):
- if not re.match(r'(ir|res|workflow|webdav)(\W|$)', dep):
+ if not re.match(r'(ir|res|webdav)(\W|$)', dep):
requires.append('trytond_%s >= %s.%s, < %s.%s' %
(dep, major_version, minor_version, major_version,
minor_version + 1))
diff --git a/tests/__init__.py b/tests/__init__.py
index a76a403..43e5109 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -1,4 +1,4 @@
#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_analytic_account import suite
+from .test_analytic_account import suite
diff --git a/tests/test_analytic_account.py b/tests/test_analytic_account.py
index 40c212f..1b367d2 100644
--- a/tests/test_analytic_account.py
+++ b/tests/test_analytic_account.py
@@ -2,7 +2,8 @@
#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 sys, os
+import sys
+import os
DIR = os.path.abspath(os.path.normpath(os.path.join(__file__,
'..', '..', '..', '..', '..', 'trytond')))
if os.path.isdir(DIR):
@@ -33,6 +34,7 @@ class AnalyticAccountTestCase(unittest.TestCase):
'''
test_depends()
+
def suite():
suite = trytond.tests.test_tryton.suite()
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index 31b8523..fec9d95 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 2.2.0
+Version: 2.4.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.2/
+Download-URL: http://downloads.tryton.org/2.4/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index 50f91c0..d653761 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -15,8 +15,10 @@ setup.py
./tests/__init__.py
./tests/test_analytic_account.py
locale/bg_BG.po
+locale/ca_ES.po
locale/cs_CZ.po
locale/de_DE.po
+locale/es_AR.po
locale/es_CO.po
locale/es_ES.po
locale/fr_FR.po
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 8c2fa0b..ce00589 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,5 @@
-trytond_company >= 2.2, < 2.3
-trytond_currency >= 2.2, < 2.3
-trytond_account >= 2.2, < 2.3
-trytond_party >= 2.2, < 2.3
-trytond >= 2.2, < 2.3
\ No newline at end of file
+trytond_company >= 2.4, < 2.5
+trytond_currency >= 2.4, < 2.5
+trytond_account >= 2.4, < 2.5
+trytond_party >= 2.4, < 2.5
+trytond >= 2.4, < 2.5
\ No newline at end of file
commit 767d5113928726d5c9651fe4dc4ffb2ef875391a
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Mon Oct 31 16:20:30 2011 +0100
Adding upstream version 2.2.0.
diff --git a/CHANGELOG b/CHANGELOG
index 04a6064..d856081 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.0 - 2011-10-24
+* Bug fixes (see mercurial logs for details)
+
Version 2.0.0 - 2011-04-27
* Bug fixes (see mercurial logs for details)
diff --git a/MANIFEST.in b/MANIFEST.in
index 5343ad8..7f5d5fd 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -6,4 +6,4 @@ include CHANGELOG
include LICENSE
include *.xml
include *.odt
-include *.csv
+include locale/*.po
diff --git a/PKG-INFO b/PKG-INFO
index 6b68b1b..61510fb 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 2.0.0
+Version: 2.2.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,22 +11,25 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.0/
+Download-URL: http://downloads.tryton.org/2.2/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
+Classifier: Framework :: Tryton
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Natural Language :: Bulgarian
+Classifier: Natural Language :: Czech
+Classifier: Natural Language :: Dutch
Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: German
+Classifier: Natural Language :: Russian
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Office/Business
diff --git a/__tryton__.py b/__tryton__.py
index 29052d2..a325ee9 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -7,7 +7,7 @@
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '2.0.0',
+ 'version': '2.2.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
@@ -61,10 +61,13 @@ Et le rapport:
'line.xml',
],
'translation': [
- 'bg_BG.csv',
- 'de_DE.csv',
- 'es_CO.csv',
- 'es_ES.csv',
- 'fr_FR.csv',
+ 'locale/bg_BG.po',
+ 'locale/cs_CZ.po',
+ 'locale/de_DE.po',
+ 'locale/es_CO.po',
+ 'locale/es_ES.po',
+ 'locale/fr_FR.po',
+ 'locale/nl_NL.po',
+ 'locale/ru_RU.po',
],
}
diff --git a/account.py b/account.py
index fd7be9c..8bf2dee 100644
--- a/account.py
+++ b/account.py
@@ -4,8 +4,9 @@ from decimal import Decimal
import copy
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
-from trytond.pyson import Equal, Eval, Not, PYSONEncoder
+from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
+from trytond.pool import Pool
class Account(ModelSQL, ModelView):
@@ -26,17 +27,19 @@ class Account(ModelSQL, ModelView):
('normal', 'Normal'),
], 'Type', required=True)
root = fields.Many2One('analytic_account.account', 'Root', select=2,
- domain=[('parent', '=', False)],
- states={
- 'invisible': Equal(Eval('type'), 'root'),
- 'required': Not(Equal(Eval('type'), 'root')),
- })
+ domain=[('parent', '=', False)],
+ states={
+ 'invisible': Eval('type') == 'root',
+ 'required': Eval('type') != 'root',
+ },
+ depends=['type'])
parent = fields.Many2One('analytic_account.account', 'Parent', select=2,
- domain=[('parent', 'child_of', Eval('root'))],
- states={
- 'invisible': Equal(Eval('type'), 'root'),
- 'required': Not(Equal(Eval('type'), 'root')),
- })
+ domain=[('parent', 'child_of', Eval('root'))],
+ states={
+ 'invisible': Eval('type') == 'root',
+ 'required': Eval('type') != 'root',
+ },
+ depends=['root', 'type'])
childs = fields.One2Many('analytic_account.account', 'parent', 'Children')
balance = fields.Function(fields.Numeric('Balance',
digits=(16, Eval('currency_digits', 1)), depends=['currency_digits']),
@@ -58,8 +61,9 @@ class Account(ModelSQL, ModelView):
('credit-debit', 'Credit - Debit'),
], 'Display Balance', required=True)
mandatory = fields.Boolean('Mandatory', states={
- 'invisible': Not(Equal(Eval('type'), 'root')),
- })
+ 'invisible': Eval('type') != 'root',
+ },
+ depends=['type'])
def __init__(self):
super(Account, self).__init__()
@@ -78,8 +82,8 @@ class Account(ModelSQL, ModelView):
return Transaction().context.get('company') or False
def default_currency(self):
- company_obj = self.pool.get('company.company')
- currency_obj = self.pool.get('currency.currency')
+ company_obj = Pool().get('company.company')
+ currency_obj = Pool().get('currency.currency')
if Transaction().context.get('company'):
company = company_obj.browse(Transaction().context['company'])
return company.currency.id
@@ -98,7 +102,7 @@ class Account(ModelSQL, ModelView):
return False
def on_change_with_currency_digits(self, vals):
- currency_obj = self.pool.get('currency.currency')
+ currency_obj = Pool().get('currency.currency')
if vals.get('currency'):
currency = currency_obj.browse(vals['currency'])
return currency.digits
@@ -112,8 +116,8 @@ class Account(ModelSQL, ModelView):
def get_balance(self, ids, name):
res = {}
- line_obj = self.pool.get('analytic_account.line')
- currency_obj = self.pool.get('currency.currency')
+ line_obj = Pool().get('analytic_account.line')
+ currency_obj = Pool().get('currency.currency')
cursor = Transaction().cursor
child_ids = self.search([('parent', 'child_of', ids)])
@@ -178,8 +182,8 @@ class Account(ModelSQL, ModelView):
def get_credit_debit(self, ids, name):
res = {}
- line_obj = self.pool.get('analytic_account.line')
- currency_obj = self.pool.get('currency.currency')
+ line_obj = Pool().get('analytic_account.line')
+ currency_obj = Pool().get('currency.currency')
cursor = Transaction().cursor
if name not in ('credit', 'debit'):
@@ -326,8 +330,8 @@ class OpenChartAccount(Wizard):
}
def _action_open_chart(self, data):
- model_data_obj = self.pool.get('ir.model.data')
- act_window_obj = self.pool.get('ir.action.act_window')
+ model_data_obj = Pool().get('ir.model.data')
+ act_window_obj = Pool().get('ir.action.act_window')
act_window_id = model_data_obj.get_id('analytic_account',
'act_account_tree2')
res = act_window_obj.read(act_window_id)
@@ -362,7 +366,7 @@ class AccountSelection(ModelSQL, ModelView):
def check_root(self, ids):
"Check Root"
- account_obj = self.pool.get('analytic_account.account')
+ account_obj = Pool().get('analytic_account.account')
root_account_ids = account_obj.search([
('parent', '=', False),
diff --git a/account.xml b/account.xml
index 4fef4f4..10f1d64 100644
--- a/account.xml
+++ b/account.xml
@@ -55,11 +55,11 @@ this repository contains the full copyright notices and license terms. -->
<![CDATA[
<tree string="Analytic Accounts">
<field name="rec_name"/>
- <field name="company" select="2"/>
- <field name="type" select="2"/>
- <field name="active" select="2" tree_invisible="1"/>
- <field name="name" select="1" tree_invisible="1"/>
- <field name="code" select="1" tree_invisible="1"/>
+ <field name="company"/>
+ <field name="type"/>
+ <field name="active" tree_invisible="1"/>
+ <field name="name" tree_invisible="1"/>
+ <field name="code" tree_invisible="1"/>
<field name="parent" tree_invisible="1"/>
<field name="childs" tree_invisible="1"/>
</tree>
@@ -73,11 +73,11 @@ this repository contains the full copyright notices and license terms. -->
<![CDATA[
<tree string="Analytic Accounts">
<field name="rec_name"/>
- <field name="company" select="2"/>
- <field name="type" select="2"/>
- <field name="active" select="2" tree_invisible="1"/>
- <field name="name" select="1" tree_invisible="1"/>
- <field name="code" select="1" tree_invisible="1"/>
+ <field name="company"/>
+ <field name="type"/>
+ <field name="active" tree_invisible="1"/>
+ <field name="name" tree_invisible="1"/>
+ <field name="code" tree_invisible="1"/>
</tree>
]]>
</field>
@@ -101,22 +101,22 @@ this repository contains the full copyright notices and license terms. -->
<menuitem parent="menu_analytic_account_configuration"
action="act_account_tree" id="menu_account_tree"/>
- <record model="ir.action.act_window" id="act_account_form">
+ <record model="ir.action.act_window" id="act_account_list">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
</record>
- <record model="ir.action.act_window.view" id="act_account_form_view1">
+ <record model="ir.action.act_window.view" id="act_account_list_view1">
<field name="sequence" eval="10"/>
- <field name="view" ref="account_view_form"/>
- <field name="act_window" ref="act_account_form"/>
+ <field name="view" ref="account_view_list"/>
+ <field name="act_window" ref="act_account_list"/>
</record>
- <record model="ir.action.act_window.view" id="act_account_form_view2">
+ <record model="ir.action.act_window.view" id="act_account_list_view2">
<field name="sequence" eval="20"/>
- <field name="view" ref="account_view_list"/>
- <field name="act_window" ref="act_account_form"/>
+ <field name="view" ref="account_view_form"/>
+ <field name="act_window" ref="act_account_list"/>
</record>
- <menuitem name="New Analytic Account" parent="menu_account_tree"
- action="act_account_form" id="menu_account_form_new"
+ <menuitem parent="menu_account_tree"
+ action="act_account_list" id="menu_account_list"
sequence="10"/>
<record model="ir.ui.view" id="account_view_tree2">
@@ -190,7 +190,7 @@ this repository contains the full copyright notices and license terms. -->
<field name="type">form</field>
<field name="arch" type="xml">
<![CDATA[
- <form string="Open Chart of Analytic Accounts" col="2">
+ <form string="Open Chart of Analytic Accounts">
<label name="start_date"/>
<field name="start_date"/>
<label name="end_date"/>
diff --git a/analytic_account.xml b/analytic_account.xml
index 9540490..ecfefcf 100644
--- a/analytic_account.xml
+++ b/analytic_account.xml
@@ -6,11 +6,15 @@ this repository contains the full copyright notices and license terms. -->
<record model="res.group" id="group_analytic_admin">
<field name="name">Analytic Administration</field>
</record>
- <record model="res.user" id="res.user_admin">
- <field name="groups" eval="[('add', ref('group_analytic_admin'))]"/>
+ <record model="res.user-res.group"
+ id="user_admin_group_analytic_admin">
+ <field name="user" ref="res.user_admin"/>
+ <field name="group" ref="group_analytic_admin"/>
</record>
- <record model="res.user" id="res.user_trigger">
- <field name="groups" eval="[('add', ref('group_analytic_admin'))]"/>
+ <record model="res.user-res.group"
+ id="user_trigger_group_analytic_admin">
+ <field name="user" ref="res.user_trigger"/>
+ <field name="group" ref="group_analytic_admin"/>
</record>
</data>
</tryton>
diff --git a/bg_BG.csv b/bg_BG.csv
deleted file mode 100644
index ff3ef6b..0000000
--- a/bg_BG.csv
+++ /dev/null
@@ -1,85 +0,0 @@
-type,name,res_id,src,value,fuzzy
-error,analytic_account.account,0,You can not create recursive accounts!,Не може да създавате взаимно вложени сметки!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Не може да имате много сметки с един и същи родител или да липсва родителска сметка!,0
-error,analytic_account.line,0,Wrong credit/debit values!,Грешни стойности за кредит/дебит!,0
-error,analytic_account.line,0,"You can not create move line
-on view/inactive account!","Не може да създавате ред от движение
-за изглед/неактивна сметка!",0
-field,"account.invoice.line,analytic_accounts",0,Analytic Accounts,Аналитични сметки,0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Редове от аналитична сметка,0
-field,"analytic_account.account,active",0,Active,Активен,0
-field,"analytic_account.account,balance",0,Balance,Баланс,0
-field,"analytic_account.account,childs",0,Children,Деца,0
-field,"analytic_account.account,code",0,Code,Код,0
-field,"analytic_account.account,company",0,Company,Фирма,0
-field,"analytic_account.account,credit",0,Credit,Кредит,0
-field,"analytic_account.account,currency",0,Currency,Валута,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Цифри за валута,0
-field,"analytic_account.account,debit",0,Debit,Дебит,0
-field,"analytic_account.account,display_balance",0,Display Balance,Показване на баланс,0
-field,"analytic_account.account,mandatory",0,Mandatory,Задължителен,0
-field,"analytic_account.account,name",0,Name,Име,0
-field,"analytic_account.account,note",0,Note,Бележка,0
-field,"analytic_account.account,parent",0,Parent,Родител,0
-field,"analytic_account.account,rec_name",0,Name,Име,0
-field,"analytic_account.account,root",0,Root,Начало,0
-field,"analytic_account.account,state",0,State,Щат,0
-field,"analytic_account.account,type",0,Type,Вид,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Фактури,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Име,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Избор,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Крайна дата,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Начална дата,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Сметки,0
-field,"analytic_account.account.selection,rec_name",0,Name,Име,0
-field,"analytic_account.line,account",0,Account,Фактури,0
-field,"analytic_account.line,active",0,Active,Активен,0
-field,"analytic_account.line,credit",0,Credit,Кредит,0
-field,"analytic_account.line,currency",0,Currency,Валута,0
-field,"analytic_account.line,currency_digits",0,Currency Digits,Цифри за валута,0
-field,"analytic_account.line,date",0,Date,Дата,0
-field,"analytic_account.line,debit",0,Debit,Дебит,0
-field,"analytic_account.line,journal",0,Journal,Дневник,0
-field,"analytic_account.line,move_line",0,Account Move Line,Ред от движение по сметка,0
-field,"analytic_account.line,name",0,Name,Име,0
-field,"analytic_account.line,party",0,Party,Партньор,0
-field,"analytic_account.line,rec_name",0,Name,Име,0
-field,"analytic_account.line,reference",0,Reference,Отпратка,0
-model,"analytic_account.account,name",0,Analytic Account,Аналитична сметка,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Аналитична сметка - Избор на аналитична сметка ,0
-model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Начално създаване на сметкоплан,0
-model,"analytic_account.account.selection,name",0,Analytic Account Selection,Избор на аналитична сметка,0
-model,"analytic_account.line,name",0,Analytic Line,Ред от аналитична сметка,0
-model,"ir.action,name",,Analytic Accounts,Аналитични сметки,0
-model,"ir.action,name",act_account_form,Analytic Accounts,Аналитични сметки,0
-model,"ir.action,name",act_account_tree,Analytic Accounts,Аналитични сметки,0
-model,"ir.action,name",act_account_tree2,Analytic Accounts,Аналитични сметки,0
-model,"ir.action,name",act_line_form,Analytic Lines,Редове от аналитична сметка,0
-model,"ir.action,name",act_open_account,Open Account,Отваряне на сметка,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Отваряне на аналитичен сметкоплан,0
-model,"ir.ui.menu,name",,Analytic Accounts,Аналитични сметки,0
-model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Нова аналитична сметка,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Аналитични сметки,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Аналитична сметка,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Отваряне на аналитичен сметкоплан,0
-model,"res.group,name",group_analytic_admin,Analytic Administration,Администрация на аналитична сметка,0
-selection,"analytic_account.account,display_balance",0,Credit - Debit,Кредит - дебит,0
-selection,"analytic_account.account,display_balance",0,Debit - Credit,Дебит - кредит,0
-selection,"analytic_account.account,state",0,Closed,Приключен,0
-selection,"analytic_account.account,state",0,Draft,Проект,0
-selection,"analytic_account.account,state",0,Opened,Отворен,0
-selection,"analytic_account.account,type",0,Normal,Нормален,0
-selection,"analytic_account.account,type",0,Root,Начало,0
-selection,"analytic_account.account,type",0,View,Изглед,0
-view,account.move,0,Analytic,Задължителен,0
-view,account.move.line,0,Analytic,Задължителен,0
-view,analytic_account.account,0,Analytic Account,Аналитична сметка,0
-view,analytic_account.account,0,Analytic Accounts,Аналитични сметки,0
-view,analytic_account.account,0,General Information,Обща информация,0
-view,analytic_account.account,0,Notes,Бележки,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Отваряне на аналитичен сметкоплан,0
-view,analytic_account.line,0,Analytic Line,Ред от аналитична сметка,0
-view,analytic_account.line,0,Analytic Lines,Редове от аналитична сметка,0
-view,analytic_account.line,0,General Information,Обща информация,0
-wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Отказ,0
-wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Отваряне,0
diff --git a/de_DE.csv b/de_DE.csv
deleted file mode 100644
index d3f244a..0000000
--- a/de_DE.csv
+++ /dev/null
@@ -1,131 +0,0 @@
-type,name,res_id,src,value,fuzzy
-error,account.statement,0,End Balance must be %s!,Endsaldo muss %s sein!,0
-error,account.statement.line,0,Amount (%s) greater than the amount to pay of invoice!,Der eingegebene Betrag (%s) ist größer als der Rechnungsbetrag!,0
-error,account.statement.line,0,Credit or debit account on journal is the same than the statement line account!,Haben- oder Sollkonto im Journal ist das selbe Konto wie das des Zahlungspostens!,0
-error,account.statement.line,0,Please provide debit and credit account on statement journal.,Bitte Soll- und Habenkonto im Journal Zahlungsverkehr angeben.,0
-error,analytic_account.account,0,You can not create recursive accounts!,Konten können nicht rekursiv angelegt werden!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Mehrere Konten zum selben Wurzelkonto nicht möglich oder erforderliches Wurzelkonto fehlt!,0
-error,analytic_account.line,0,Wrong credit/debit values!,Falsche Haben/Soll-Werte!,0
-error,analytic_account.line,0,"You can not create move line
-on view/inactive account!",Keine Berechtigung für die Erstellung von Buchungszeilen!,0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Kostenstelle Zeilen,0
-field,"account.statement,currency_digits",0,Currency Digits,Stellen Währung,0
-field,"account.statement,date",0,Date,Datum,0
-field,"account.statement,end_balance",0,End Balance,Endsaldo,0
-field,"account.statement,journal",0,Journal,Journal,0
-field,"account.statement,lines",0,Transactions,Transaktionen,0
-field,"account.statement,move_lines",0,Move Lines,Buchungsposten,0
-field,"account.statement,rec_name",0,Name,Name,0
-field,"account.statement,start_balance",0,Start Balance,Anfangssaldo,0
-field,"account.statement,state",0,State,Status,0
-field,"account.statement.journal,company",0,Company,Unternehmen,0
-field,"account.statement.journal,currency",0,Currency,Währung,0
-field,"account.statement.journal,journal",0,Journal,Journal,0
-field,"account.statement.journal,name",0,Name,Name,0
-field,"account.statement.journal,rec_name",0,Name,Name,0
-field,"account.statement.line,account",0,Account,Konto,0
-field,"account.statement.line,amount",0,Amount,Betrag,0
-field,"account.statement.line,date",0,Date,Datum,0
-field,"account.statement.line,description",0,Description,Beschreibung,0
-field,"account.statement.line,invoice",0,Invoice,Rechnung,0
-field,"account.statement.line,move",0,Account Move,Buchungssatz,0
-field,"account.statement.line,party",0,Party,Partei,0
-field,"account.statement.line,rec_name",0,Name,Name,0
-field,"account.statement.line,statement",0,Statement,Zahlung,0
-field,"analytic_account.account,active",0,Active,Aktiv,0
-field,"analytic_account.account,balance",0,Balance,Saldo,0
-field,"analytic_account.account,childs",0,Children,Untergeordnet (Kostenstellen),0
-field,"analytic_account.account,code",0,Code,Code,0
-field,"analytic_account.account,company",0,Company,Unternehmen,0
-field,"analytic_account.account,credit",0,Credit,Haben,0
-field,"analytic_account.account,currency",0,Currency,Währung,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Währung (signifikante Stellen),0
-field,"analytic_account.account,debit",0,Debit,Soll,0
-field,"analytic_account.account,display_balance",0,Display Balance,Ansicht Bilanz,0
-field,"analytic_account.account,mandatory",0,Mandatory,Erforderlich,0
-field,"analytic_account.account,name",0,Name,Name,0
-field,"analytic_account.account,note",0,Note,Notiz,0
-field,"analytic_account.account,parent",0,Parent,Übergeordnet (Kostenstelle),0
-field,"analytic_account.account,rec_name",0,Name,Name,0
-field,"analytic_account.account,root",0,Root,Wurzel,0
-field,"analytic_account.account,state",0,State,Status,0
-field,"analytic_account.account,type",0,Type,Typ,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Konto,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Name,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Auswahl,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Enddatum,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Anfangsdatum,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Konten,0
-field,"analytic_account.account.selection,rec_name",0,Name,Name,0
-field,"analytic_account.line,account",0,Account,Konto,0
-field,"analytic_account.line,active",0,Active,Aktiv,0
-field,"analytic_account.line,credit",0,Credit,Haben,0
-field,"analytic_account.line,currency",0,Currency,Währung,0
-field,"analytic_account.line,currency_digits",0,Currency Digits,Währung (signifikante Stellen),0
-field,"analytic_account.line,date",0,Date,Datum,0
-field,"analytic_account.line,debit",0,Debit,Soll,0
-field,"analytic_account.line,journal",0,Journal,Journal,0
-field,"analytic_account.line,move_line",0,Account Move Line,Buchungszeile,0
-field,"analytic_account.line,name",0,Name,Name,0
-field,"analytic_account.line,party",0,Party,Partei,0
-field,"analytic_account.line,rec_name",0,Name,Name,0
-field,"analytic_account.line,reference",0,Reference,Interner Beleg,0
-model,"account.statement,name",0,Account Statement,Zahlungsverkehr,0
-model,"account.statement.journal,name",0,Statement Journal,Journal Zahlungsverkehr,0
-model,"account.statement.line,name",0,Account Statement Line,Zahlungsverkehr Position,0
-model,"analytic_account.account,name",0,Analytic Account,Kostenstelle,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Kostenstelle - Kostenstelle Auswahl,0
-model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Kontenplan Öffnen Init,0
-model,"analytic_account.account.selection,name",0,Analytic Account Selection,Kostenstelle Auswahl,0
-model,"analytic_account.line,name",0,Analytic Line,Kostenstelle Zeile,0
-model,"ir.action,name",act_account_form,Analytic Accounts,Kostenstellen,0
-model,"ir.action,name",act_account_tree,Analytic Accounts,Kostenstellen,0
-model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
-model,"ir.action,name",act_line_form,Analytic Lines,Kostenstelle Zeilen,0
-model,"ir.action,name",act_open_account,Open Account,Konto öffnen,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan Öffnen,0
-model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Neue Kostenstelle,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan öffnen,0
-model,"res.group,name",group_analytic_admin,Analytic Administration,Kostenstellen Administration,0
-selection,"account.statement,state",0,Canceled,Annulliert,0
-selection,"account.statement,state",0,Draft,Entwurf,0
-selection,"account.statement,state",0,Posted,Festgeschrieben,0
-selection,"account.statement,state",0,Validated,Geprüft,0
-selection,"analytic_account.account,display_balance",0,Credit - Debit,Haben - Soll,0
-selection,"analytic_account.account,display_balance",0,Debit - Credit,Soll - Haben,0
-selection,"analytic_account.account,state",0,Closed,Geschlossen,0
-selection,"analytic_account.account,state",0,Draft,Entwurf,0
-selection,"analytic_account.account,state",0,Opened,Geöffnet,0
-selection,"analytic_account.account,type",0,Normal,Normal,0
-selection,"analytic_account.account,type",0,Root,Wurzel,0
-selection,"analytic_account.account,type",0,View,Sicht,0
-view,account.move,0,Analytic,Kostenstelle,0
-view,account.move.line,0,Analytic,Kostenstelle,0
-view,account.statement,0,Bank Statement,Bankauszug,0
-view,account.statement,0,Bank Statement Lines,Posten Bankauszüge,0
-view,account.statement,0,Bank Statements,Bankauszüge,0
-view,account.statement,0,Cancel,Annullieren,0
-view,account.statement,0,Move Lines,Buchungsposten,0
-view,account.statement,0,Post,Festschreiben,0
-view,account.statement,0,Reset to Draft,Auf Entwurf zurücksetzen,0
-view,account.statement,0,Statement,Zahlung,0
-view,account.statement,0,Statement Lines,Zahlungsposten,0
-view,account.statement,0,Statements,Zahlungsverkehr,0
-view,account.statement,0,Validate,Prüfen,0
-view,account.statement.journal,0,Statement Journal,Journal Zahlungsverkehr,0
-view,account.statement.journal,0,Statement Journals,Journale Zahlungsverkehr,0
-view,account.statement.line,0,Bank Statement Line,Posten Bankauszüge,0
-view,account.statement.line,0,Statement Line,Zahlungsposten,0
-view,account.statement.line,0,Statement Lines,Zahlungsposten,0
-view,analytic_account.account,0,Analytic Account,Kostenstelle,0
-view,analytic_account.account,0,Analytic Accounts,Kostenstellen,0
-view,analytic_account.account,0,General Information,Allgemein,0
-view,analytic_account.account,0,Notes,Notizen,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Kostenstellenplan öffnen,0
-view,analytic_account.line,0,Analytic Line,Kostenstelle,0
-view,analytic_account.line,0,Analytic Lines,Kostenstellen,0
-view,analytic_account.line,0,General Information,Allgemein,0
-wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Abbrechen,0
-wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Öffnen,0
diff --git a/es_CO.csv b/es_CO.csv
deleted file mode 100644
index e38fa82..0000000
--- a/es_CO.csv
+++ /dev/null
@@ -1,82 +0,0 @@
-type,name,res_id,src,value,fuzzy
-error,analytic_account.account,0,You can not create recursive accounts!,¡No se puede crear cuentas recursivas!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,¡No se puede tener varias cuentas con la misma cuenta padre o tantas sin cuenta padre!,0
-error,analytic_account.line,0,Wrong credit/debit values!,Valores erróneos de crédito/debito!,0
-error,analytic_account.line,0,"You can not create move line
-on view/inactive account!",No puede crearse línea de movimiento,0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas Analíticas,0
-field,"analytic_account.account,active",0,Active,Activo,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Cuenta,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nombre,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Selección,0
-field,"analytic_account.account,balance",0,Balance,Balance,0
-field,"analytic_account.account,childs",0,Children,Hij at s,0
-field,"analytic_account.account,code",0,Code,Código,0
-field,"analytic_account.account,company",0,Company,Compañía,0
-field,"analytic_account.account,credit",0,Credit,Crédito,0
-field,"analytic_account.account,currency",0,Currency,Moneda,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Dígitos de Moneda,0
-field,"analytic_account.account,debit",0,Debit,Débito,0
-field,"analytic_account.account,display_balance",0,Display Balance,Mostrar Balance,0
-field,"analytic_account.account,mandatory",0,Mandatory,Obligatorio,0
-field,"analytic_account.account,name",0,Name,Nombre,0
-field,"analytic_account.account,note",0,Note,Nota,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha Fin,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha Inicio,0
-field,"analytic_account.account,parent",0,Parent,Padre,0
-field,"analytic_account.account,rec_name",0,Name,Nombre,0
-field,"analytic_account.account,root",0,Root,Raíz,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Cuentas,0
-field,"analytic_account.account.selection,rec_name",0,Name,Nombre,0
-field,"analytic_account.account,state",0,State,Estado,0
-field,"analytic_account.account,type",0,Type,Tipo,0
-field,"analytic_account.line,account",0,Account,Cuenta,0
-field,"analytic_account.line,active",0,Active,Activo,0
-field,"analytic_account.line,credit",0,Credit,Crédito,0
-field,"analytic_account.line,currency",0,Currency,Moneda,0
-field,"analytic_account.line,currency_digits",0,Currency Digits,Dígitos de Moneda,0
-field,"analytic_account.line,date",0,Date,Fecha,0
-field,"analytic_account.line,debit",0,Debit,Débito,0
-field,"analytic_account.line,journal",0,Journal,Diario,0
-field,"analytic_account.line,move_line",0,Account Move Line,Linea de Movimiento de Cuenta,0
-field,"analytic_account.line,name",0,Name,Nombre,0
-field,"analytic_account.line,party",0,Party,Terceros,0
-field,"analytic_account.line,rec_name",0,Name,Nombre,0
-field,"analytic_account.line,reference",0,Reference,Referencia,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Cuenta Analítica - Selección de Cuenta Analítica,0
-model,"analytic_account.account,name",0,Analytic Account,Cuenta Analítica,0
-model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Abrir Inicio de Plan de Cuentas,0
-model,"analytic_account.account.selection,name",0,Analytic Account Selection,Selección de Cuenta Analítica,0
-model,"analytic_account.line,name",0,Analytic Line,Línea Analítica,0
-model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.action,name",act_account_form2,Analytic Accounts,Cuentas Analíticas,1
-model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.action,name",act_line_form,Analytic Lines,Líneas Analíticas,0
-model,"ir.action,name",act_open_account,Open Account,Abrir Cuenta,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta Analítica,0
-model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Nueva Cuenta Analítica,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
-model,"res.group,name",group_analytic_admin,Analytic Administration,Administración Analítica,0
-selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédito - Débito,0
-selection,"analytic_account.account,display_balance",0,Debit - Credit,Débito - Crédito,0
-selection,"analytic_account.account,state",0,Closed,Cerrado,0
-selection,"analytic_account.account,state",0,Draft,Borrador,0
-selection,"analytic_account.account,state",0,Opened,Abierto,0
-selection,"analytic_account.account,type",0,Normal,Normal,0
-selection,"analytic_account.account,type",0,Root,Raíz,0
-selection,"analytic_account.account,type",0,View,Vista,0
-view,account.move.line,0,Analytic,Analítica,0
-view,analytic_account.account,0,Analytic Account,Cuenta Analítica,0
-view,analytic_account.account,0,Analytic Accounts,Cuentas Analíticas,0
-view,analytic_account.account,0,General Information,Información General,0
-view,analytic_account.account,0,Notes,Notas,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
-view,analytic_account.line,0,Analytic Line,Línea analítica,0
-view,analytic_account.line,0,Analytic Lines,Líneas Analíticas,0
-view,analytic_account.line,0,General Information,Información General,0
-wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Cancelar,0
-wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Abrir,0
diff --git a/es_ES.csv b/es_ES.csv
deleted file mode 100644
index 096d02e..0000000
--- a/es_ES.csv
+++ /dev/null
@@ -1,81 +0,0 @@
-type,name,res_id,src,value,fuzzy
-error,analytic_account.account,0,You can not create recursive accounts!,No puede crear cuentas recursivas,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta raiz obligatoria,0
-error,analytic_account.line,0,Wrong credit/debit values!,Los valores debe/haber son incorrectos,0
-error,analytic_account.line,0,"You can not create move line
-on view/inactive account!","No puede crear una linea de asiento
-en una cuenta vista/inactiva",0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas analíticas,0
-field,"analytic_account.account,active",0,Active,Activa,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Cuenta,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nombre,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Selección,0
-field,"analytic_account.account,balance",0,Balance,Balance,0
-field,"analytic_account.account,childs",0,Children,Hijos,0
-field,"analytic_account.account,code",0,Code,Código,0
-field,"analytic_account.account,company",0,Company,Empresa,0
-field,"analytic_account.account,credit",0,Credit,Haber,0
-field,"analytic_account.account,currency",0,Currency,Divisa,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Decimales de la divisa,0
-field,"analytic_account.account,debit",0,Debit,Debe,0
-field,"analytic_account.account,display_balance",0,Display Balance,Mostrar balance,0
-field,"analytic_account.account,mandatory",0,Mandatory,Obligatorio,0
-field,"analytic_account.account,name",0,Name,Nombre,0
-field,"analytic_account.account,note",0,Note,Nota,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha fin,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha inicio,0
-field,"analytic_account.account,parent",0,Parent,Padre,0
-field,"analytic_account.account,rec_name",0,Name,Nombre,0
-field,"analytic_account.account,root",0,Root,Raíz,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Cuentas,0
-field,"analytic_account.account.selection,rec_name",0,Name,Nombre,0
-field,"analytic_account.account,state",0,State,Estado,0
-field,"analytic_account.account,type",0,Type,Tipo,0
-field,"analytic_account.line,account",0,Account,Cuenta,0
-field,"analytic_account.line,active",0,Active,Activa,0
-field,"analytic_account.line,credit",0,Credit,Haber,0
-field,"analytic_account.line,currency",0,Currency,Divisa,0
-field,"analytic_account.line,currency_digits",0,Currency Digits,Decimales de la divisa,0
-field,"analytic_account.line,date",0,Date,Fecha,0
-field,"analytic_account.line,debit",0,Debit,Debe,0
-field,"analytic_account.line,journal",0,Journal,Diario,0
-field,"analytic_account.line,move_line",0,Account Move Line,Linea de asiento contable,0
-field,"analytic_account.line,name",0,Name,Nombre,0
-field,"analytic_account.line,party",0,Party,Tercero,0
-field,"analytic_account.line,rec_name",0,Name,Nombre,0
-field,"analytic_account.line,reference",0,Reference,Referencia,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Cuenta analítica - Selección de cuenta analítica,0
-model,"analytic_account.account,name",0,Analytic Account,Cuenta analítica,0
-model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Inicializa la apertura del plan de cuentas,0
-model,"analytic_account.account.selection,name",0,Analytic Account Selection,Selección de cuenta analítica,0
-model,"analytic_account.line,name",0,Analytic Line,Línea analítica,0
-model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas analíticas,0
-model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas analíticas,0
-model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas analíticas,0
-model,"ir.action,name",act_line_form,Analytic Lines,Líneas analíticas,0
-model,"ir.action,name",act_open_account,Open Account,Abrir cuenta,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Abrir plan contable analítico,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta analítica,0
-model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas analíticas,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas analíticas,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir plan contable analítico,0
-model,"res.group,name",group_analytic_admin,Analytic Administration,Administración analítica,0
-selection,"analytic_account.account,display_balance",0,Credit - Debit,Haber - Debe,0
-selection,"analytic_account.account,display_balance",0,Debit - Credit,Debe - Haber,0
-selection,"analytic_account.account,state",0,Closed,Cerrada,0
-selection,"analytic_account.account,state",0,Draft,Borrador,0
-selection,"analytic_account.account,state",0,Opened,Abierta,0
-selection,"analytic_account.account,type",0,Normal,Normal,0
-selection,"analytic_account.account,type",0,Root,Raíz,0
-selection,"analytic_account.account,type",0,View,Vista,0
-view,account.move.line,0,Analytic,Analítica,0
-view,analytic_account.account,0,Analytic Account,Cuenta analítica,0
-view,analytic_account.account,0,Analytic Accounts,Cuentas analíticas,0
-view,analytic_account.account,0,General Information,Información general,0
-view,analytic_account.account,0,Notes,Notas,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Abrir plan de cuentas analítico,0
-view,analytic_account.line,0,Analytic Line,Línea analítica,0
-view,analytic_account.line,0,Analytic Lines,Líneas analíticas,0
-view,analytic_account.line,0,General Information,Información general,0
-wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Cancelar,0
-wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Abrir,0
diff --git a/fr_FR.csv b/fr_FR.csv
deleted file mode 100644
index 11bb985..0000000
--- a/fr_FR.csv
+++ /dev/null
@@ -1,83 +0,0 @@
-type,name,res_id,src,value,fuzzy
-error,analytic_account.account,0,You can not create recursive accounts!,Vous ne pouvez pas créer des comptes récursifs!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte avec une racine obligatoire!,0
-error,analytic_account.line,0,Wrong credit/debit values!,Valeurs crédit/débit incorrectes,0
-error,analytic_account.line,0,"You can not create move line
-on view/inactive account!","Vous ne pouvez pas créer de mouvements
-sur des comptes inactifs ou de type vue!",0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Lignes analytiques,0
-field,"analytic_account.account,active",0,Active,Actif,0
-field,"analytic_account.account,balance",0,Balance,Balance,0
-field,"analytic_account.account,childs",0,Children,Enfants,0
-field,"analytic_account.account,code",0,Code,Code,0
-field,"analytic_account.account,company",0,Company,Société,0
-field,"analytic_account.account,credit",0,Credit,Crédit,0
-field,"analytic_account.account,currency",0,Currency,Devise,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Décimales de la devise,0
-field,"analytic_account.account,debit",0,Debit,Débit,0
-field,"analytic_account.account,display_balance",0,Display Balance,Balance affichée,0
-field,"analytic_account.account,mandatory",0,Mandatory,Obligatoire,0
-field,"analytic_account.account,name",0,Name,Nom,0
-field,"analytic_account.account,note",0,Note,Note,0
-field,"analytic_account.account,parent",0,Parent,Parent,0
-field,"analytic_account.account,rec_name",0,Name,Nom,0
-field,"analytic_account.account,root",0,Root,Racine,0
-field,"analytic_account.account,state",0,State,État,0
-field,"analytic_account.account,type",0,Type,Type,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Compte,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nom,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Sélection,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Date de fin,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Date de début,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Comptes,0
-field,"analytic_account.account.selection,rec_name",0,Name,Nom,0
-field,"analytic_account.line,account",0,Account,Compte,0
-field,"analytic_account.line,active",0,Active,Actif,0
-field,"analytic_account.line,credit",0,Credit,Crédit,0
-field,"analytic_account.line,currency",0,Currency,Devise,0
-field,"analytic_account.line,currency_digits",0,Currency Digits,Décimales de la devise,0
-field,"analytic_account.line,date",0,Date,Date,0
-field,"analytic_account.line,debit",0,Debit,Débit,0
-field,"analytic_account.line,journal",0,Journal,Journal,0
-field,"analytic_account.line,move_line",0,Account Move Line,Ligne de mouvement comptable,0
-field,"analytic_account.line,name",0,Name,Nom,0
-field,"analytic_account.line,party",0,Party,Partenaire,0
-field,"analytic_account.line,rec_name",0,Name,Nom,0
-field,"analytic_account.line,reference",0,Reference,Référence,0
-model,"analytic_account.account,name",0,Analytic Account,Compte analytique,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Compte analytique - Sélection compte analytique,0
-model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Ouvrir le plan comptable - Initialisation,0
-model,"analytic_account.account.selection,name",0,Analytic Account Selection,Sélection compte analytique,0
-model,"analytic_account.line,name",0,Analytic Line,Ligne analytique,0
-model,"ir.action,name",act_account_form,Analytic Accounts,Comptes analytiques,0
-model,"ir.action,name",act_account_tree,Analytic Accounts,Comptes analytiques,0
-model,"ir.action,name",act_account_tree2,Analytic Accounts,Comptes analytiques,0
-model,"ir.action,name",act_line_form,Analytic Lines,Lignes analytiques,0
-model,"ir.action,name",act_open_account,Open Account,Ouvrir le compte,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
-model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Nouveau compte analytique,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
-model,"res.group,name",group_analytic_admin,Analytic Administration,Administration analytique,0
-selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédit - Débit,0
-selection,"analytic_account.account,display_balance",0,Debit - Credit,Débit - Crédit,0
-selection,"analytic_account.account,state",0,Closed,Fermé,0
-selection,"analytic_account.account,state",0,Draft,Brouillon,0
-selection,"analytic_account.account,state",0,Opened,Ouvert,0
-selection,"analytic_account.account,type",0,Normal,Normal,0
-selection,"analytic_account.account,type",0,Root,Racine,0
-selection,"analytic_account.account,type",0,View,Vue,0
-view,account.move,0,Analytic,Analytique,1
-view,account.move.line,0,Analytic,Analytique,0
-view,analytic_account.account,0,Analytic Account,Compte analytique,0
-view,analytic_account.account,0,Analytic Accounts,Comptes analytiques,0
-view,analytic_account.account,0,General Information,Informations générales,0
-view,analytic_account.account,0,Notes,Notes,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
-view,analytic_account.line,0,Analytic Line,Ligne analytique,0
-view,analytic_account.line,0,Analytic Lines,Lignes analytiques,0
-view,analytic_account.line,0,General Information,Informations générales,0
-wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Annuler,0
-wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Ouvrir,0
diff --git a/line.py b/line.py
index b01478f..2b0b5fa 100644
--- a/line.py
+++ b/line.py
@@ -6,6 +6,7 @@ from trytond.wizard import Wizard
from trytond.backend import TableHandler
from trytond.pyson import Eval, PYSONEncoder
from trytond.transaction import Transaction
+from trytond.pool import Pool
class Line(ModelSQL, ModelView):
@@ -58,14 +59,14 @@ class Line(ModelSQL, ModelView):
table.not_null_action('currency', action='remove')
def default_date(self):
- date_obj = self.pool.get('ir.date')
+ date_obj = Pool().get('ir.date')
return date_obj.today()
def default_active(self):
return True
def on_change_with_currency(self, vals):
- move_line_obj = self.pool.get('account.move.line')
+ move_line_obj = Pool().get('account.move.line')
if vals.get('move_line'):
move_line = move_line_obj.browse(vals['move_line'])
return move_line.account.company.currency.id
@@ -78,7 +79,7 @@ class Line(ModelSQL, ModelView):
return res
def on_change_with_currency_digits(self, vals):
- move_line_obj = self.pool.get('account.move.line')
+ move_line_obj = Pool().get('account.move.line')
if vals.get('move_line'):
move_line = move_line_obj.browse(vals['move_line'])
return move_line.account.company.currency.digits
@@ -141,8 +142,8 @@ class OpenAccount(Wizard):
}
def _action_open_account(self, data):
- model_data_obj = self.pool.get('ir.model.data')
- act_window_obj = self.pool.get('ir.action.act_window')
+ model_data_obj = Pool().get('ir.model.data')
+ act_window_obj = Pool().get('ir.action.act_window')
act_window_id = model_data_obj.get_id('analytic_account',
'act_line_form')
diff --git a/line.xml b/line.xml
index de20490..e72d33c 100644
--- a/line.xml
+++ b/line.xml
@@ -45,16 +45,16 @@ this repository contains the full copyright notices and license terms. -->
<field name="arch" type="xml">
<![CDATA[
<tree string="Analytic Lines" editable="top">
- <field name="move_line" select="1"/>
- <field name="journal" select="2"/>
- <field name="name" select="1"/>
- <field name="reference" select="2"/>
- <field name="date" select="1"/>
- <field name="party" select="2"/>
- <field name="account" select="2"/>
- <field name="debit" select="2"/>
- <field name="credit" select="2"/>
- <field name="currency" select="2"/>
+ <field name="move_line"/>
+ <field name="journal"/>
+ <field name="name"/>
+ <field name="reference"/>
+ <field name="date"/>
+ <field name="party"/>
+ <field name="account"/>
+ <field name="debit"/>
+ <field name="credit"/>
+ <field name="currency"/>
</tree>
]]>
</field>
@@ -97,7 +97,7 @@ this repository contains the full copyright notices and license terms. -->
</record>
<record model="ir.action.keyword" id="act_open_account_keyword">
<field name="keyword">tree_open</field>
- <field name="model">analytic_account.account,0</field>
+ <field name="model">analytic_account.account,-1</field>
<field name="action" ref="act_open_account"/>
</record>
@@ -110,7 +110,6 @@ this repository contains the full copyright notices and license terms. -->
<xpath expr="/form/notebook/page[@id="general"]"
position="after">
<page string="Analytic" col="1" id="analytic">
- <separator name="analytic_lines"/>
<field name="analytic_lines"/>
</page>
</xpath>
@@ -128,7 +127,6 @@ this repository contains the full copyright notices and license terms. -->
<xpath expr="/form/field[@name='lines']/form/notebook/page[@id="general"]"
position="after">
<page string="Analytic" col="1" id="analytic">
- <separator name="analytic_lines"/>
<field name="analytic_lines"/>
</page>
</xpath>
diff --git a/locale/bg_BG.po b/locale/bg_BG.po
new file mode 100644
index 0000000..58dea33
--- /dev/null
+++ b/locale/bg_BG.po
@@ -0,0 +1,339 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"Не може да имате много сметки с един и същи родител или да липсва родителска"
+" сметка!"
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr "Не може да създавате взаимно вложени сметки!"
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr "Грешни стойности за кредит/дебит!"
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+"Не може да създавате ред от движение\n"
+"за изглед/неактивна сметка!"
+
+msgctxt "field:account.invoice.line,analytic_accounts:0"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr "Редове от аналитична сметка"
+
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Активен"
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr "Баланс"
+
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Деца"
+
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Код"
+
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Фирма"
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr "Кредит"
+
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Валута"
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Цифри за валута"
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr "Дебит"
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr "Показване на баланс"
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr "Задължителен"
+
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Име"
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr "Бележка"
+
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Родител"
+
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Име"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr "Начало"
+
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "Щат"
+
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Вид"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr "Фактури"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Име"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Избор"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Крайна дата"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Начална дата"
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr "Сметки"
+
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Име"
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr "Фактури"
+
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Активен"
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr "Кредит"
+
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Валута"
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Цифри за валута"
+
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Дата"
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr "Дебит"
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr "Дневник"
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr "Ред от движение по сметка"
+
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Име"
+
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Партньор"
+
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Име"
+
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Отпратка"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr "Аналитична сметка"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Аналитична сметка - Избор на аналитична сметка "
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr "Начално създаване на сметкоплан"
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr "Избор на аналитична сметка"
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr "Ред от аналитична сметка"
+
+#, fuzzy
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Редове от аналитична сметка"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Отваряне на сметка"
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Отваряне на аналитичен сметкоплан"
+
+#, fuzzy
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Аналитична сметка"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Отваряне на аналитичен сметкоплан"
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Администрация на аналитична сметка"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr "Кредит - дебит"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr "Дебит - кредит"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr "Приключен"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Проект"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr "Отворен"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr "Нормален"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr "Начало"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Изглед"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr "Задължителен"
+
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr "Задължителен"
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Отваряне на аналитичен сметкоплан"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr "Аналитична сметка"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr "Аналитични сметки"
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr "Обща информация"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Бележки"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr "Ред от аналитична сметка"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr "Редове от аналитична сметка"
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr "Обща информация"
+
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Отказ"
+
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Отваряне"
diff --git a/locale/cs_CZ.po b/locale/cs_CZ.po
new file mode 100644
index 0000000..433893b
--- /dev/null
+++ b/locale/cs_CZ.po
@@ -0,0 +1,329 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr ""
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr ""
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr ""
+
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr ""
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr ""
+
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr ""
+
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr ""
+
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr ""
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr ""
+
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr ""
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr ""
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr ""
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr ""
+
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr ""
+
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr ""
+
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr ""
+
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr ""
+
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr ""
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr ""
+
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr ""
+
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr ""
+
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr ""
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr ""
+
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr ""
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr ""
+
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr ""
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr ""
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr ""
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr ""
+
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr ""
+
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr ""
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr ""
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr ""
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr ""
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr ""
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr ""
+
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr ""
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr ""
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr ""
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr ""
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr ""
+
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr ""
+
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr ""
diff --git a/locale/de_DE.po b/locale/de_DE.po
new file mode 100644
index 0000000..c4a5bcd
--- /dev/null
+++ b/locale/de_DE.po
@@ -0,0 +1,535 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:account.statement.line:0"
+msgid "Amount (%s) greater than the amount to pay of invoice!"
+msgstr "Der eingegebene Betrag (%s) ist größer als der Rechnungsbetrag!"
+
+msgctxt "error:account.statement.line:0"
+msgid ""
+"Credit or debit account on journal is the same than the statement line "
+"account!"
+msgstr ""
+"Haben- oder Sollkonto im Journal ist das selbe Konto wie das des "
+"Zahlungspostens!"
+
+msgctxt "error:account.statement.line:0"
+msgid "Please provide debit and credit account on statement journal."
+msgstr "Bitte Soll- und Habenkonto im Journal Zahlungsverkehr angeben."
+
+msgctxt "error:account.statement:0"
+msgid "End Balance must be %s!"
+msgstr "Endsaldo muss %s sein!"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"Mehrere Konten zum selben Wurzelkonto nicht möglich oder erforderliches "
+"Wurzelkonto fehlt!"
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr "Konten können nicht rekursiv angelegt werden!"
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr "Falsche Haben/Soll-Werte!"
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr "Keine Berechtigung für die Erstellung von Buchungszeilen!"
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr "Kostenstelle Zeilen"
+
+msgctxt "field:account.statement,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Stellen Währung"
+
+msgctxt "field:account.statement,date:0"
+msgid "Date"
+msgstr "Datum"
+
+msgctxt "field:account.statement,end_balance:0"
+msgid "End Balance"
+msgstr "Endsaldo"
+
+msgctxt "field:account.statement,journal:0"
+msgid "Journal"
+msgstr "Journal"
+
+msgctxt "field:account.statement,lines:0"
+msgid "Transactions"
+msgstr "Transaktionen"
+
+msgctxt "field:account.statement,move_lines:0"
+msgid "Move Lines"
+msgstr "Buchungsposten"
+
+msgctxt "field:account.statement,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:account.statement,start_balance:0"
+msgid "Start Balance"
+msgstr "Anfangssaldo"
+
+msgctxt "field:account.statement,state:0"
+msgid "State"
+msgstr "Status"
+
+msgctxt "field:account.statement.journal,company:0"
+msgid "Company"
+msgstr "Unternehmen"
+
+msgctxt "field:account.statement.journal,currency:0"
+msgid "Currency"
+msgstr "Währung"
+
+msgctxt "field:account.statement.journal,journal:0"
+msgid "Journal"
+msgstr "Journal"
+
+msgctxt "field:account.statement.journal,name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:account.statement.journal,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:account.statement.line,account:0"
+msgid "Account"
+msgstr "Konto"
+
+msgctxt "field:account.statement.line,amount:0"
+msgid "Amount"
+msgstr "Betrag"
+
+msgctxt "field:account.statement.line,date:0"
+msgid "Date"
+msgstr "Datum"
+
+msgctxt "field:account.statement.line,description:0"
+msgid "Description"
+msgstr "Beschreibung"
+
+msgctxt "field:account.statement.line,invoice:0"
+msgid "Invoice"
+msgstr "Rechnung"
+
+msgctxt "field:account.statement.line,move:0"
+msgid "Account Move"
+msgstr "Buchungssatz"
+
+msgctxt "field:account.statement.line,party:0"
+msgid "Party"
+msgstr "Partei"
+
+msgctxt "field:account.statement.line,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:account.statement.line,statement:0"
+msgid "Statement"
+msgstr "Zahlung"
+
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Aktiv"
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr "Saldo"
+
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Untergeordnet (Kostenstellen)"
+
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Code"
+
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Unternehmen"
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr "Haben"
+
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Währung"
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Währung (signifikante Stellen)"
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr "Soll"
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr "Ansicht Bilanz"
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr "Erforderlich"
+
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr "Notiz"
+
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Übergeordnet (Kostenstelle)"
+
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr "Wurzel"
+
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "Status"
+
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Typ"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr "Konto"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Auswahl"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Enddatum"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Anfangsdatum"
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr "Konten"
+
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr "Konto"
+
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Aktiv"
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr "Haben"
+
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Währung"
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Währung (signifikante Stellen)"
+
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Datum"
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr "Soll"
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr "Journal"
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr "Buchungszeile"
+
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Partei"
+
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Interner Beleg"
+
+msgctxt "model:account.statement,name:0"
+msgid "Account Statement"
+msgstr "Zahlungsverkehr"
+
+msgctxt "model:account.statement.journal,name:0"
+msgid "Statement Journal"
+msgstr "Journal Zahlungsverkehr"
+
+msgctxt "model:account.statement.line,name:0"
+msgid "Account Statement Line"
+msgstr "Zahlungsverkehr Position"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr "Kostenstelle"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Kostenstelle - Kostenstelle Auswahl"
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr "Kontenplan Öffnen Init"
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr "Kostenstelle Auswahl"
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr "Kostenstelle Zeile"
+
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Kostenstellen"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Kostenstellen"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Kostenstellen"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Kostenstelle Zeilen"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Konto öffnen"
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Kostenstellenplan Öffnen"
+
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Kostenstellen"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Kostenstellen"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Kostenstellen"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Kostenstellenplan öffnen"
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Kostenstellen Administration"
+
+msgctxt "selection:account.statement,state:0"
+msgid "Canceled"
+msgstr "Annulliert"
+
+msgctxt "selection:account.statement,state:0"
+msgid "Draft"
+msgstr "Entwurf"
+
+msgctxt "selection:account.statement,state:0"
+msgid "Posted"
+msgstr "Festgeschrieben"
+
+msgctxt "selection:account.statement,state:0"
+msgid "Validated"
+msgstr "Geprüft"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr "Haben - Soll"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr "Soll - Haben"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr "Geschlossen"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Entwurf"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr "Geöffnet"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr "Wurzel"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Sicht"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr "Kostenstelle"
+
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr "Kostenstelle"
+
+msgctxt "view:account.statement.journal:0"
+msgid "Statement Journal"
+msgstr "Journal Zahlungsverkehr"
+
+msgctxt "view:account.statement.journal:0"
+msgid "Statement Journals"
+msgstr "Journale Zahlungsverkehr"
+
+msgctxt "view:account.statement.line:0"
+msgid "Bank Statement Line"
+msgstr "Posten Bankauszüge"
+
+msgctxt "view:account.statement.line:0"
+msgid "Statement Line"
+msgstr "Zahlungsposten"
+
+msgctxt "view:account.statement.line:0"
+msgid "Statement Lines"
+msgstr "Zahlungsposten"
+
+msgctxt "view:account.statement:0"
+msgid "Bank Statement"
+msgstr "Bankauszug"
+
+msgctxt "view:account.statement:0"
+msgid "Bank Statement Lines"
+msgstr "Posten Bankauszüge"
+
+msgctxt "view:account.statement:0"
+msgid "Bank Statements"
+msgstr "Bankauszüge"
+
+msgctxt "view:account.statement:0"
+msgid "Cancel"
+msgstr "Annullieren"
+
+msgctxt "view:account.statement:0"
+msgid "Move Lines"
+msgstr "Buchungsposten"
+
+msgctxt "view:account.statement:0"
+msgid "Post"
+msgstr "Festschreiben"
+
+msgctxt "view:account.statement:0"
+msgid "Reset to Draft"
+msgstr "Auf Entwurf zurücksetzen"
+
+msgctxt "view:account.statement:0"
+msgid "Statement"
+msgstr "Zahlung"
+
+msgctxt "view:account.statement:0"
+msgid "Statement Lines"
+msgstr "Zahlungsposten"
+
+msgctxt "view:account.statement:0"
+msgid "Statements"
+msgstr "Zahlungsverkehr"
+
+msgctxt "view:account.statement:0"
+msgid "Validate"
+msgstr "Prüfen"
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Kostenstellenplan öffnen"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr "Kostenstelle"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr "Kostenstellen"
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr "Allgemein"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Notizen"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr "Kostenstelle"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr "Kostenstellen"
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr "Allgemein"
+
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Abbrechen"
+
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Öffnen"
diff --git a/locale/es_CO.po b/locale/es_CO.po
new file mode 100644
index 0000000..6b5b6ac
--- /dev/null
+++ b/locale/es_CO.po
@@ -0,0 +1,334 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"¡No se puede tener varias cuentas con la misma cuenta padre o tantas sin "
+"cuenta padre!"
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr "¡No se puede crear cuentas recursivas!"
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr "Valores erróneos de crédito/debito!"
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr "No puede crearse línea de movimiento"
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr "Líneas Analíticas"
+
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Activo"
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr "Balance"
+
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Hij at s"
+
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Código"
+
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Compañía"
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr "Crédito"
+
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Moneda"
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Dígitos de Moneda"
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr "Débito"
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr "Mostrar Balance"
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr "Obligatorio"
+
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr "Nota"
+
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Padre"
+
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr "Raíz"
+
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "Estado"
+
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Tipo"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr "Cuenta"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Selección"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Fecha Fin"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Fecha Inicio"
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr "Cuentas"
+
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr "Cuenta"
+
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Activo"
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr "Crédito"
+
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Moneda"
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Dígitos de Moneda"
+
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Fecha"
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr "Débito"
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr "Diario"
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr "Linea de Movimiento de Cuenta"
+
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Terceros"
+
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Referencia"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr "Cuenta Analítica"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Cuenta Analítica - Selección de Cuenta Analítica"
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr "Abrir Inicio de Plan de Cuentas"
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr "Selección de Cuenta Analítica"
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr "Línea Analítica"
+
+#, fuzzy
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Cuentas Analíticas"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Cuentas Analíticas"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Cuentas Analíticas"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Líneas Analíticas"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Abrir Cuenta"
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir Plan de Cuentas Analítico"
+
+#, fuzzy
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Cuentas Analíticas"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Cuentas Analíticas"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Cuenta Analítica"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir Plan de Cuentas Analítico"
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Administración Analítica"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr "Crédito - Débito"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr "Débito - Crédito"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr "Cerrado"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Borrador"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr "Abierto"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr "Raíz"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Vista"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr "Analítica"
+
+#, fuzzy
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr "Analítica"
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir Plan de Cuentas Analítico"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr "Cuenta Analítica"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr "Cuentas Analíticas"
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr "Información General"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Notas"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr "Línea analítica"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr "Líneas Analíticas"
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr "Información General"
+
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Abrir"
diff --git a/locale/es_ES.po b/locale/es_ES.po
new file mode 100644
index 0000000..8802ee4
--- /dev/null
+++ b/locale/es_ES.po
@@ -0,0 +1,336 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta "
+"raiz obligatoria"
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr "No puede crear cuentas recursivas"
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr "Los valores debe/haber son incorrectos"
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+"No puede crear una linea de asiento\n"
+"en una cuenta vista/inactiva"
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr "Líneas analíticas"
+
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Activa"
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr "Balance"
+
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Hijos"
+
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Código"
+
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Empresa"
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr "Haber"
+
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Divisa"
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Decimales de la divisa"
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr "Debe"
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr "Mostrar balance"
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr "Obligatorio"
+
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr "Nota"
+
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Padre"
+
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr "Raíz"
+
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "Estado"
+
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Tipo"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr "Cuenta"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Selección"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Fecha fin"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Fecha inicio"
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr "Cuentas"
+
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr "Cuenta"
+
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Activa"
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr "Haber"
+
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Divisa"
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Decimales de la divisa"
+
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Fecha"
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr "Debe"
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr "Diario"
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr "Linea de asiento contable"
+
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Tercero"
+
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Referencia"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr "Cuenta analítica"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Cuenta analítica - Selección de cuenta analítica"
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr "Inicializa la apertura del plan de cuentas"
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr "Selección de cuenta analítica"
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr "Línea analítica"
+
+#, fuzzy
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Líneas analíticas"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Abrir cuenta"
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan contable analítico"
+
+#, fuzzy
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Cuenta analítica"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan contable analítico"
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Administración analítica"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr "Haber - Debe"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr "Debe - Haber"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr "Cerrada"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Borrador"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr "Abierta"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr "Raíz"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Vista"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr "Analítica"
+
+#, fuzzy
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr "Analítica"
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Abrir plan de cuentas analítico"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr "Cuenta analítica"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr "Cuentas analíticas"
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr "Información general"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Notas"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr "Línea analítica"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr "Líneas analíticas"
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr "Información general"
+
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Cancelar"
+
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Abrir"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
new file mode 100644
index 0000000..8f8a63e
--- /dev/null
+++ b/locale/fr_FR.po
@@ -0,0 +1,337 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+"Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte "
+"avec une racine obligatoire!"
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr "Vous ne pouvez pas créer des comptes récursifs!"
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr "Valeurs crédit/débit incorrectes"
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+"Vous ne pouvez pas créer de mouvements\n"
+"sur des comptes inactifs ou de type vue!"
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr "Lignes analytiques"
+
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Actif"
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr "Balance"
+
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Enfants"
+
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Code"
+
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Société"
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr "Crédit"
+
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Devise"
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Décimales de la devise"
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr "Débit"
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr "Balance affichée"
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr "Obligatoire"
+
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr "Note"
+
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Parent"
+
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr "Racine"
+
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "État"
+
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Type"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr "Compte"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Sélection"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Date de fin"
+
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Date de début"
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr "Comptes"
+
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr "Compte"
+
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Actif"
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr "Crédit"
+
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Devise"
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Décimales de la devise"
+
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Date"
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr "Débit"
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr "Journal"
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr "Ligne de mouvement comptable"
+
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Partenaire"
+
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Référence"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr "Compte analytique"
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr "Compte analytique - Sélection compte analytique"
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr "Ouvrir le plan comptable - Initialisation"
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr "Sélection compte analytique"
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr "Ligne analytique"
+
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr "Lignes analytiques"
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr "Ouvrir le compte"
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Ouvrir le plan comptable analytique"
+
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr "Compte analytique"
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Ouvrir le plan comptable analytique"
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr "Administration analytique"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr "Crédit - Débit"
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr "Débit - Crédit"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr "Fermé"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Brouillon"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr "Ouvert"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr "Normal"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr "Racine"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Vue"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr "Analytique"
+
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr "Analytique"
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Account"
+msgstr "Ouvrir le plan comptable analytique"
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr "Ouvrir le plan comptable analytique"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr "Compte analytique"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr "Comptes analytiques"
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr "Information générale"
+
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Notes"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr "Ligne analytique"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr "Lignes analytiques"
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr "Information générale"
+
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Annuler"
+
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Ouvrir"
diff --git a/locale/nl_NL.po b/locale/nl_NL.po
new file mode 100644
index 0000000..fc1d479
--- /dev/null
+++ b/locale/nl_NL.po
@@ -0,0 +1,378 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+
+#, fuzzy
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr "U kunt geen rekeningen aanmaken die naar zichzelf verwijzen!"
+
+#, fuzzy
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr "Verkeerde debit/credit waarden!"
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Actief"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr "Balans"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Onderliggende niveaus"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Code"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Bedrijf"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr "Credit"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Valuta"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Valuta decimalen"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr "Debit"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr "Toon balans"
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Naam bijlage"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr "Aantekening"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Bovenliggend niveau"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Naam bijlage"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "Status"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Type"
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr "Rekeningen"
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Naam bijlage"
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Selectie"
+
+#, fuzzy
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Eind datum"
+
+#, fuzzy
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Start datum"
+
+#, fuzzy
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr "Rekeningen"
+
+#, fuzzy
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Naam bijlage"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr "Rekeningen"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Actief"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr "Credit"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Valuta"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr "Valuta decimalen"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Vervaldatum"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr "Debit"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr "Dagboek"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr "Boekingsregel"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Naam bijlage"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Relaties"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Naam bijlage"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Referentie"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr ""
+
+#, fuzzy
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr "Rekeningschema gaan openen"
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr ""
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr ""
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr "Credit - Debit"
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr "Debit - Credit"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr ""
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Concept"
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr "Geopend"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr ""
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Overzicht"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr ""
+
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr ""
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr ""
+
+#, fuzzy
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr "Algemene informatie"
+
+#, fuzzy
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Aantekeningen"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr ""
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr ""
+
+#, fuzzy
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr "Algemene informatie"
+
+#, fuzzy
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Annuleren"
+
+#, fuzzy
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Open"
diff --git a/locale/ru_RU.po b/locale/ru_RU.po
new file mode 100644
index 0000000..11cc616
--- /dev/null
+++ b/locale/ru_RU.po
@@ -0,0 +1,358 @@
+#
+msgid ""
+msgstr "Content-Type: text/plain; charset=utf-8\n"
+
+msgctxt "error:analytic_account.account.selection:0"
+msgid ""
+"Can not have many accounts with the same root or a missing mandatory root "
+"account!"
+msgstr ""
+
+msgctxt "error:analytic_account.account:0"
+msgid "You can not create recursive accounts!"
+msgstr ""
+
+msgctxt "error:analytic_account.line:0"
+msgid "Wrong credit/debit values!"
+msgstr ""
+
+msgctxt "error:analytic_account.line:0"
+msgid ""
+"You can not create move line\n"
+"on view/inactive account!"
+msgstr ""
+
+msgctxt "field:account.move.line,analytic_lines:0"
+msgid "Analytic Lines"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,active:0"
+msgid "Active"
+msgstr "Действительный"
+
+msgctxt "field:analytic_account.account,balance:0"
+msgid "Balance"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,childs:0"
+msgid "Children"
+msgstr "Подчиненый"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,code:0"
+msgid "Code"
+msgstr "Код страны"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,company:0"
+msgid "Company"
+msgstr "Учет.орг."
+
+msgctxt "field:analytic_account.account,credit:0"
+msgid "Credit"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,currency:0"
+msgid "Currency"
+msgstr "Валюты"
+
+msgctxt "field:analytic_account.account,currency_digits:0"
+msgid "Currency Digits"
+msgstr ""
+
+msgctxt "field:analytic_account.account,debit:0"
+msgid "Debit"
+msgstr ""
+
+msgctxt "field:analytic_account.account,display_balance:0"
+msgid "Display Balance"
+msgstr ""
+
+msgctxt "field:analytic_account.account,mandatory:0"
+msgid "Mandatory"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,name:0"
+msgid "Name"
+msgstr "Наименование"
+
+msgctxt "field:analytic_account.account,note:0"
+msgid "Note"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,parent:0"
+msgid "Parent"
+msgstr "Основной"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,rec_name:0"
+msgid "Name"
+msgstr "Наименование"
+
+msgctxt "field:analytic_account.account,root:0"
+msgid "Root"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account,state:0"
+msgid "State"
+msgstr "Статус"
+
+#, fuzzy
+msgctxt "field:analytic_account.account,type:0"
+msgid "Type"
+msgstr "Тип"
+
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,account:0"
+msgid "Account"
+msgstr ""
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Наименование"
+
+#, fuzzy
+msgctxt ""
+"field:analytic_account.account-"
+"analytic_account.account.selection,selection:0"
+msgid "Selection"
+msgstr "Выбор"
+
+#, fuzzy
+msgctxt "field:analytic_account.account.open_chart_account.init,end_date:0"
+msgid "End Date"
+msgstr "Дата окончания"
+
+#, fuzzy
+msgctxt "field:analytic_account.account.open_chart_account.init,start_date:0"
+msgid "Start Date"
+msgstr "Дата начала"
+
+msgctxt "field:analytic_account.account.selection,accounts:0"
+msgid "Accounts"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.account.selection,rec_name:0"
+msgid "Name"
+msgstr "Наименование"
+
+msgctxt "field:analytic_account.line,account:0"
+msgid "Account"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.line,active:0"
+msgid "Active"
+msgstr "Действительный"
+
+msgctxt "field:analytic_account.line,credit:0"
+msgid "Credit"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.line,currency:0"
+msgid "Currency"
+msgstr "Валюты"
+
+msgctxt "field:analytic_account.line,currency_digits:0"
+msgid "Currency Digits"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.line,date:0"
+msgid "Date"
+msgstr "Дата"
+
+msgctxt "field:analytic_account.line,debit:0"
+msgid "Debit"
+msgstr ""
+
+msgctxt "field:analytic_account.line,journal:0"
+msgid "Journal"
+msgstr ""
+
+msgctxt "field:analytic_account.line,move_line:0"
+msgid "Account Move Line"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:analytic_account.line,name:0"
+msgid "Name"
+msgstr "Наименование"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,party:0"
+msgid "Party"
+msgstr "Организации"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,rec_name:0"
+msgid "Name"
+msgstr "Наименование"
+
+#, fuzzy
+msgctxt "field:analytic_account.line,reference:0"
+msgid "Reference"
+msgstr "Ссылка"
+
+msgctxt "model:analytic_account.account,name:0"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt ""
+"model:analytic_account.account-analytic_account.account.selection,name:0"
+msgid "Analytic Account - Analytic Account Selection"
+msgstr ""
+
+msgctxt "model:analytic_account.account.open_chart_account.init,name:0"
+msgid "Open Chart Account Init"
+msgstr ""
+
+msgctxt "model:analytic_account.account.selection,name:0"
+msgid "Analytic Account Selection"
+msgstr ""
+
+msgctxt "model:analytic_account.line,name:0"
+msgid "Analytic Line"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_list"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_tree"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_account_tree2"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_line_form"
+msgid "Analytic Lines"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_open_account"
+msgid "Open Account"
+msgstr ""
+
+msgctxt "model:ir.action,name:act_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_account_list"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_account_tree"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_analytic_account_configuration"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt "model:ir.ui.menu,name:menu_open_chart_account"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "model:res.group,name:group_analytic_admin"
+msgid "Analytic Administration"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Credit - Debit"
+msgstr ""
+
+msgctxt "selection:analytic_account.account,display_balance:0"
+msgid "Debit - Credit"
+msgstr ""
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Closed"
+msgstr "Закрыто"
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Draft"
+msgstr "Черновик"
+
+msgctxt "selection:analytic_account.account,state:0"
+msgid "Opened"
+msgstr ""
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Normal"
+msgstr "Нормально"
+
+msgctxt "selection:analytic_account.account,type:0"
+msgid "Root"
+msgstr ""
+
+#, fuzzy
+msgctxt "selection:analytic_account.account,type:0"
+msgid "View"
+msgstr "Просмотр"
+
+msgctxt "view:account.move.line:0"
+msgid "Analytic"
+msgstr ""
+
+msgctxt "view:account.move:0"
+msgid "Analytic"
+msgstr ""
+
+msgctxt "view:analytic_account.account.open_chart_account.init:0"
+msgid "Open Chart of Analytic Accounts"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Account"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "Analytic Accounts"
+msgstr ""
+
+msgctxt "view:analytic_account.account:0"
+msgid "General Information"
+msgstr ""
+
+#, fuzzy
+msgctxt "view:analytic_account.account:0"
+msgid "Notes"
+msgstr "Комментарии"
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Line"
+msgstr ""
+
+msgctxt "view:analytic_account.line:0"
+msgid "Analytic Lines"
+msgstr ""
+
+msgctxt "view:analytic_account.line:0"
+msgid "General Information"
+msgstr ""
+
+#, fuzzy
+msgctxt "wizard_button:analytic_account.account.open_chart_account,init,end:0"
+msgid "Cancel"
+msgstr "Отменить"
+
+#, fuzzy
+msgctxt ""
+"wizard_button:analytic_account.account.open_chart_account,init,open:0"
+msgid "Open"
+msgstr "Открыть"
diff --git a/setup.py b/setup.py
index 20e8f51..f3b5fad 100644
--- a/setup.py
+++ b/setup.py
@@ -39,17 +39,20 @@ setup(name='trytond_analytic_account',
classifiers=[
'Development Status :: 5 - Production/Stable',
'Environment :: Plugins',
+ 'Framework :: Tryton',
'Intended Audience :: Developers',
'Intended Audience :: Financial and Insurance Industry',
'Intended Audience :: Legal Industry',
'License :: OSI Approved :: GNU General Public License (GPL)',
'Natural Language :: Bulgarian',
+ 'Natural Language :: Czech',
+ 'Natural Language :: Dutch',
'Natural Language :: English',
'Natural Language :: French',
'Natural Language :: German',
+ 'Natural Language :: Russian',
'Natural Language :: Spanish',
'Operating System :: OS Independent',
- 'Programming Language :: Python :: 2.5',
'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
'Topic :: Office/Business',
diff --git a/tests/test_analytic_account.py b/tests/test_analytic_account.py
index 0da5af7..40c212f 100644
--- a/tests/test_analytic_account.py
+++ b/tests/test_analytic_account.py
@@ -10,7 +10,7 @@ if os.path.isdir(DIR):
import unittest
import trytond.tests.test_tryton
-from trytond.tests.test_tryton import test_view
+from trytond.tests.test_tryton import test_view, test_depends
class AnalyticAccountTestCase(unittest.TestCase):
@@ -27,6 +27,12 @@ class AnalyticAccountTestCase(unittest.TestCase):
'''
test_view('analytic_account')
+ def test0006depends(self):
+ '''
+ Test depends.
+ '''
+ test_depends()
+
def suite():
suite = trytond.tests.test_tryton.suite()
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index 9d9d090..31b8523 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 2.0.0
+Version: 2.2.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,22 +11,25 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/2.0/
+Download-URL: http://downloads.tryton.org/2.2/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
+Classifier: Framework :: Tryton
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Natural Language :: Bulgarian
+Classifier: Natural Language :: Czech
+Classifier: Natural Language :: Dutch
Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: German
+Classifier: Natural Language :: Russian
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Office/Business
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index eae6341..50f91c0 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -6,11 +6,6 @@ MANIFEST.in
README
account.xml
analytic_account.xml
-bg_BG.csv
-de_DE.csv
-es_CO.csv
-es_ES.csv
-fr_FR.csv
line.xml
setup.py
./__init__.py
@@ -19,6 +14,14 @@ setup.py
./line.py
./tests/__init__.py
./tests/test_analytic_account.py
+locale/bg_BG.po
+locale/cs_CZ.po
+locale/de_DE.po
+locale/es_CO.po
+locale/es_ES.po
+locale/fr_FR.po
+locale/nl_NL.po
+locale/ru_RU.po
trytond_analytic_account.egg-info/PKG-INFO
trytond_analytic_account.egg-info/SOURCES.txt
trytond_analytic_account.egg-info/dependency_links.txt
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 7339500..8c2fa0b 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,5 @@
-trytond_company >= 2.0, < 2.1
-trytond_currency >= 2.0, < 2.1
-trytond_account >= 2.0, < 2.1
-trytond_party >= 2.0, < 2.1
-trytond >= 2.0, < 2.1
\ No newline at end of file
+trytond_company >= 2.2, < 2.3
+trytond_currency >= 2.2, < 2.3
+trytond_account >= 2.2, < 2.3
+trytond_party >= 2.2, < 2.3
+trytond >= 2.2, < 2.3
\ No newline at end of file
commit 6240066957f6924aede424b3dd5c89974fe77bc2
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue May 24 19:12:40 2011 +0200
Adding upstream version 2.0.0.
diff --git a/CHANGELOG b/CHANGELOG
index 4b4e7d6..04a6064 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.0.0 - 2011-04-27
+* Bug fixes (see mercurial logs for details)
+
Version 1.8.0 - 2010-11-01
* Bug fixes (see mercurial logs for details)
diff --git a/COPYRIGHT b/COPYRIGHT
index 94a43fb..a9feb41 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,7 +1,7 @@
+Copyright (C) 2008-2011 Cédric Krier.
+Copyright (C) 2008-2011 Bertrand Chenal.
+Copyright (C) 2008-2011 B2CK SPRL.
Copyright (C) 2004-2008 Tiny SPRL.
-Copyright (C) 2008-2010 Cédric Krier.
-Copyright (C) 2008-2010 Bertrand Chenal.
-Copyright (C) 2008-2010 B2CK SPRL.
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
diff --git a/PKG-INFO b/PKG-INFO
index d5c2a59..6b68b1b 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.8.0
+Version: 2.0.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.8/
+Download-URL: http://downloads.tryton.org/2.0/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
@@ -20,11 +20,14 @@ Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Natural Language :: Bulgarian
Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: German
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 2.5
+Classifier: Programming Language :: Python :: 2.6
+Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Office/Business
Classifier: Topic :: Office/Business :: Financial :: Accounting
diff --git a/__tryton__.py b/__tryton__.py
index b830370..29052d2 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -2,11 +2,12 @@
#this repository contains the full copyright notices and license terms.
{
'name': 'Analytic Account',
+ 'name_bg_BG': 'Аналитична сметка',
'name_de_DE': 'Kostenstellen',
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '1.8.0',
+ 'version': '2.0.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
@@ -16,6 +17,12 @@
And with report:
- Analytic account balance
''',
+ 'description_bg_BG': '''Финансов и счетоводен модул с:
+ - Аналитично счетоводство с произволен брой аналитични графики
+
+Прилежащи справки:
+ - Баланс на аналитична сметка
+''',
'description_de_DE': '''Modul für Buchhhaltung mit:
- Kostenstellen mit einer beliebigen Anzahl von Tabellen
@@ -54,6 +61,7 @@ Et le rapport:
'line.xml',
],
'translation': [
+ 'bg_BG.csv',
'de_DE.csv',
'es_CO.csv',
'es_ES.csv',
diff --git a/account.xml b/account.xml
index 8e4b857..4fef4f4 100644
--- a/account.xml
+++ b/account.xml
@@ -60,61 +60,65 @@ this repository contains the full copyright notices and license terms. -->
<field name="active" select="2" tree_invisible="1"/>
<field name="name" select="1" tree_invisible="1"/>
<field name="code" select="1" tree_invisible="1"/>
+ <field name="parent" tree_invisible="1"/>
+ <field name="childs" tree_invisible="1"/>
</tree>
]]>
</field>
</record>
- <record model="ir.action.act_window" id="act_account_form">
+ <record model="ir.ui.view" id="account_view_list">
+ <field name="model">analytic_account.account</field>
+ <field name="type">tree</field>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <tree string="Analytic Accounts">
+ <field name="rec_name"/>
+ <field name="company" select="2"/>
+ <field name="type" select="2"/>
+ <field name="active" select="2" tree_invisible="1"/>
+ <field name="name" select="1" tree_invisible="1"/>
+ <field name="code" select="1" tree_invisible="1"/>
+ </tree>
+ ]]>
+ </field>
+ </record>
+
+ <record model="ir.action.act_window" id="act_account_tree">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
- <field name="view_type">form</field>
+ <field name="domain">[('parent', '=', False)]</field>
</record>
- <record model="ir.action.act_window.view" id="act_account_form_view1">
+ <record model="ir.action.act_window.view" id="act_account_tree_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="account_view_tree"/>
- <field name="act_window" ref="act_account_form"/>
+ <field name="act_window" ref="act_account_tree"/>
</record>
- <record model="ir.action.act_window.view" id="act_account_form_view2">
+ <record model="ir.action.act_window.view" id="act_account_tree_view2">
<field name="sequence" eval="20"/>
<field name="view" ref="account_view_form"/>
- <field name="act_window" ref="act_account_form"/>
+ <field name="act_window" ref="act_account_tree"/>
</record>
<menuitem parent="menu_analytic_account_configuration"
- action="act_account_form" id="menu_account_form"/>
+ action="act_account_tree" id="menu_account_tree"/>
- <record model="ir.action.act_window" id="act_account_form2">
+ <record model="ir.action.act_window" id="act_account_form">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
- <field name="view_type">form</field>
</record>
- <record model="ir.action.act_window.view" id="act_account_form2_view1">
+ <record model="ir.action.act_window.view" id="act_account_form_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="account_view_form"/>
- <field name="act_window" ref="act_account_form2"/>
+ <field name="act_window" ref="act_account_form"/>
</record>
- <record model="ir.action.act_window.view" id="act_account_form2_view2">
+ <record model="ir.action.act_window.view" id="act_account_form_view2">
<field name="sequence" eval="20"/>
- <field name="view" ref="account_view_tree"/>
- <field name="act_window" ref="act_account_form2"/>
+ <field name="view" ref="account_view_list"/>
+ <field name="act_window" ref="act_account_form"/>
</record>
- <menuitem name="New Analytic Account" parent="menu_account_form"
- action="act_account_form2" id="menu_account_form_new"
+ <menuitem name="New Analytic Account" parent="menu_account_tree"
+ action="act_account_form" id="menu_account_form_new"
sequence="10"/>
- <record model="ir.action.act_window" id="act_account_tree">
- <field name="name">Analytic Accounts</field>
- <field name="res_model">analytic_account.account</field>
- <field name="view_type">tree</field>
- <field name="domain">[('parent', '=', False)]</field>
- </record>
- <record model="ir.action.act_window.view" id="act_account_tree_view1">
- <field name="sequence" eval="10"/>
- <field name="view" ref="account_view_tree"/>
- <field name="act_window" ref="act_account_tree"/>
- </record>
- <menuitem parent="menu_account_form"
- action="act_account_tree" id="menu_account_tree"
- sequence="20"/>
<record model="ir.ui.view" id="account_view_tree2">
<field name="model">analytic_account.account</field>
<field name="type">tree</field>
@@ -136,7 +140,6 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.action.act_window" id="act_account_tree2">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
- <field name="view_type">tree</field>
<field name="domain">[('parent', '=', False)]</field>
</record>
<record model="ir.action.act_window.view" id="act_account_tree2_view1">
@@ -144,6 +147,11 @@ this repository contains the full copyright notices and license terms. -->
<field name="view" ref="account_view_tree2"/>
<field name="act_window" ref="act_account_tree2"/>
</record>
+ <record model="ir.action.act_window.view" id="act_account_tree2_view2">
+ <field name="sequence" eval="20"/>
+ <field name="view" ref="account_view_form"/>
+ <field name="act_window" ref="act_account_tree2"/>
+ </record>
<record model="ir.action.wizard" id="act_open_chart_account">
<field name="name">Open Chart of Analytic Accounts</field>
<field name="wiz_name">analytic_account.account.open_chart_account</field>
diff --git a/bg_BG.csv b/bg_BG.csv
new file mode 100644
index 0000000..ff3ef6b
--- /dev/null
+++ b/bg_BG.csv
@@ -0,0 +1,85 @@
+type,name,res_id,src,value,fuzzy
+error,analytic_account.account,0,You can not create recursive accounts!,Не може да създавате взаимно вложени сметки!,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Не може да имате много сметки с един и същи родител или да липсва родителска сметка!,0
+error,analytic_account.line,0,Wrong credit/debit values!,Грешни стойности за кредит/дебит!,0
+error,analytic_account.line,0,"You can not create move line
+on view/inactive account!","Не може да създавате ред от движение
+за изглед/неактивна сметка!",0
+field,"account.invoice.line,analytic_accounts",0,Analytic Accounts,Аналитични сметки,0
+field,"account.move.line,analytic_lines",0,Analytic Lines,Редове от аналитична сметка,0
+field,"analytic_account.account,active",0,Active,Активен,0
+field,"analytic_account.account,balance",0,Balance,Баланс,0
+field,"analytic_account.account,childs",0,Children,Деца,0
+field,"analytic_account.account,code",0,Code,Код,0
+field,"analytic_account.account,company",0,Company,Фирма,0
+field,"analytic_account.account,credit",0,Credit,Кредит,0
+field,"analytic_account.account,currency",0,Currency,Валута,0
+field,"analytic_account.account,currency_digits",0,Currency Digits,Цифри за валута,0
+field,"analytic_account.account,debit",0,Debit,Дебит,0
+field,"analytic_account.account,display_balance",0,Display Balance,Показване на баланс,0
+field,"analytic_account.account,mandatory",0,Mandatory,Задължителен,0
+field,"analytic_account.account,name",0,Name,Име,0
+field,"analytic_account.account,note",0,Note,Бележка,0
+field,"analytic_account.account,parent",0,Parent,Родител,0
+field,"analytic_account.account,rec_name",0,Name,Име,0
+field,"analytic_account.account,root",0,Root,Начало,0
+field,"analytic_account.account,state",0,State,Щат,0
+field,"analytic_account.account,type",0,Type,Вид,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Фактури,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Име,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Избор,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Крайна дата,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Начална дата,0
+field,"analytic_account.account.selection,accounts",0,Accounts,Сметки,0
+field,"analytic_account.account.selection,rec_name",0,Name,Име,0
+field,"analytic_account.line,account",0,Account,Фактури,0
+field,"analytic_account.line,active",0,Active,Активен,0
+field,"analytic_account.line,credit",0,Credit,Кредит,0
+field,"analytic_account.line,currency",0,Currency,Валута,0
+field,"analytic_account.line,currency_digits",0,Currency Digits,Цифри за валута,0
+field,"analytic_account.line,date",0,Date,Дата,0
+field,"analytic_account.line,debit",0,Debit,Дебит,0
+field,"analytic_account.line,journal",0,Journal,Дневник,0
+field,"analytic_account.line,move_line",0,Account Move Line,Ред от движение по сметка,0
+field,"analytic_account.line,name",0,Name,Име,0
+field,"analytic_account.line,party",0,Party,Партньор,0
+field,"analytic_account.line,rec_name",0,Name,Име,0
+field,"analytic_account.line,reference",0,Reference,Отпратка,0
+model,"analytic_account.account,name",0,Analytic Account,Аналитична сметка,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Аналитична сметка - Избор на аналитична сметка ,0
+model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Начално създаване на сметкоплан,0
+model,"analytic_account.account.selection,name",0,Analytic Account Selection,Избор на аналитична сметка,0
+model,"analytic_account.line,name",0,Analytic Line,Ред от аналитична сметка,0
+model,"ir.action,name",,Analytic Accounts,Аналитични сметки,0
+model,"ir.action,name",act_account_form,Analytic Accounts,Аналитични сметки,0
+model,"ir.action,name",act_account_tree,Analytic Accounts,Аналитични сметки,0
+model,"ir.action,name",act_account_tree2,Analytic Accounts,Аналитични сметки,0
+model,"ir.action,name",act_line_form,Analytic Lines,Редове от аналитична сметка,0
+model,"ir.action,name",act_open_account,Open Account,Отваряне на сметка,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Отваряне на аналитичен сметкоплан,0
+model,"ir.ui.menu,name",,Analytic Accounts,Аналитични сметки,0
+model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Нова аналитична сметка,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Аналитични сметки,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Аналитична сметка,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Отваряне на аналитичен сметкоплан,0
+model,"res.group,name",group_analytic_admin,Analytic Administration,Администрация на аналитична сметка,0
+selection,"analytic_account.account,display_balance",0,Credit - Debit,Кредит - дебит,0
+selection,"analytic_account.account,display_balance",0,Debit - Credit,Дебит - кредит,0
+selection,"analytic_account.account,state",0,Closed,Приключен,0
+selection,"analytic_account.account,state",0,Draft,Проект,0
+selection,"analytic_account.account,state",0,Opened,Отворен,0
+selection,"analytic_account.account,type",0,Normal,Нормален,0
+selection,"analytic_account.account,type",0,Root,Начало,0
+selection,"analytic_account.account,type",0,View,Изглед,0
+view,account.move,0,Analytic,Задължителен,0
+view,account.move.line,0,Analytic,Задължителен,0
+view,analytic_account.account,0,Analytic Account,Аналитична сметка,0
+view,analytic_account.account,0,Analytic Accounts,Аналитични сметки,0
+view,analytic_account.account,0,General Information,Обща информация,0
+view,analytic_account.account,0,Notes,Бележки,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Отваряне на аналитичен сметкоплан,0
+view,analytic_account.line,0,Analytic Line,Ред от аналитична сметка,0
+view,analytic_account.line,0,Analytic Lines,Редове от аналитична сметка,0
+view,analytic_account.line,0,General Information,Обща информация,0
+wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Отказ,0
+wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Отваряне,0
diff --git a/de_DE.csv b/de_DE.csv
index dd6aaf5..d3f244a 100644
--- a/de_DE.csv
+++ b/de_DE.csv
@@ -79,13 +79,11 @@ model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Accou
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Kostenstelle Auswahl,0
model,"analytic_account.line,name",0,Analytic Line,Kostenstelle Zeile,0
model,"ir.action,name",act_account_form,Analytic Accounts,Kostenstellen,0
-model,"ir.action,name",act_account_form2,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_line_form,Analytic Lines,Kostenstelle Zeilen,0
model,"ir.action,name",act_open_account,Open Account,Konto öffnen,0
model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan Öffnen,0
-model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Neue Kostenstelle,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
@@ -103,6 +101,7 @@ selection,"analytic_account.account,state",0,Opened,Geöffnet,0
selection,"analytic_account.account,type",0,Normal,Normal,0
selection,"analytic_account.account,type",0,Root,Wurzel,0
selection,"analytic_account.account,type",0,View,Sicht,0
+view,account.move,0,Analytic,Kostenstelle,0
view,account.move.line,0,Analytic,Kostenstelle,0
view,account.statement,0,Bank Statement,Bankauszug,0
view,account.statement,0,Bank Statement Lines,Posten Bankauszüge,0
diff --git a/fr_FR.csv b/fr_FR.csv
index 551a568..11bb985 100644
--- a/fr_FR.csv
+++ b/fr_FR.csv
@@ -50,13 +50,11 @@ model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Accou
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Sélection compte analytique,0
model,"analytic_account.line,name",0,Analytic Line,Ligne analytique,0
model,"ir.action,name",act_account_form,Analytic Accounts,Comptes analytiques,0
-model,"ir.action,name",act_account_form2,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_line_form,Analytic Lines,Lignes analytiques,0
model,"ir.action,name",act_open_account,Open Account,Ouvrir le compte,0
model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
-model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Comptes analytiques,0
model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Nouveau compte analytique,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
@@ -70,6 +68,7 @@ selection,"analytic_account.account,state",0,Opened,Ouvert,0
selection,"analytic_account.account,type",0,Normal,Normal,0
selection,"analytic_account.account,type",0,Root,Racine,0
selection,"analytic_account.account,type",0,View,Vue,0
+view,account.move,0,Analytic,Analytique,1
view,account.move.line,0,Analytic,Analytique,0
view,analytic_account.account,0,Analytic Account,Compte analytique,0
view,analytic_account.account,0,Analytic Accounts,Comptes analytiques,0
diff --git a/line.xml b/line.xml
index a8981fb..de20490 100644
--- a/line.xml
+++ b/line.xml
@@ -62,7 +62,6 @@ this repository contains the full copyright notices and license terms. -->
<record model="ir.action.act_window" id="act_line_form">
<field name="name">Analytic Lines</field>
<field name="res_model">analytic_account.line</field>
- <field name="view_type">form</field>
</record>
<record model="ir.action.act_window.view" id="act_line_form_view1">
<field name="sequence" eval="10"/>
@@ -120,5 +119,23 @@ this repository contains the full copyright notices and license terms. -->
</field>
</record>
+ <record model="ir.ui.view" id="move_view_form">
+ <field name="model">account.move</field>
+ <field name="inherit" ref="account.move_view_form"/>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <data>
+ <xpath expr="/form/field[@name='lines']/form/notebook/page[@id="general"]"
+ position="after">
+ <page string="Analytic" col="1" id="analytic">
+ <separator name="analytic_lines"/>
+ <field name="analytic_lines"/>
+ </page>
+ </xpath>
+ </data>
+ ]]>
+ </field>
+ </record>
+
</data>
</tryton>
diff --git a/setup.py b/setup.py
index fe29ecb..20e8f51 100644
--- a/setup.py
+++ b/setup.py
@@ -43,12 +43,15 @@ setup(name='trytond_analytic_account',
'Intended Audience :: Financial and Insurance Industry',
'Intended Audience :: Legal Industry',
'License :: OSI Approved :: GNU General Public License (GPL)',
+ 'Natural Language :: Bulgarian',
'Natural Language :: English',
'Natural Language :: French',
'Natural Language :: German',
'Natural Language :: Spanish',
'Operating System :: OS Independent',
- 'Programming Language :: Python',
+ 'Programming Language :: Python :: 2.5',
+ 'Programming Language :: Python :: 2.6',
+ 'Programming Language :: Python :: 2.7',
'Topic :: Office/Business',
'Topic :: Office/Business :: Financial :: Accounting',
],
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index fa1458e..9d9d090 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.8.0
+Version: 2.0.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.8/
+Download-URL: http://downloads.tryton.org/2.0/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
@@ -20,11 +20,14 @@ Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Natural Language :: Bulgarian
Classifier: Natural Language :: English
Classifier: Natural Language :: French
Classifier: Natural Language :: German
Classifier: Natural Language :: Spanish
Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 2.5
+Classifier: Programming Language :: Python :: 2.6
+Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Office/Business
Classifier: Topic :: Office/Business :: Financial :: Accounting
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index 3d379af..eae6341 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -6,6 +6,7 @@ MANIFEST.in
README
account.xml
analytic_account.xml
+bg_BG.csv
de_DE.csv
es_CO.csv
es_ES.csv
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 544f19b..7339500 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,5 @@
-trytond_company >= 1.8, < 1.9
-trytond_currency >= 1.8, < 1.9
-trytond_account >= 1.8, < 1.9
-trytond_party >= 1.8, < 1.9
-trytond >= 1.8, < 1.9
\ No newline at end of file
+trytond_company >= 2.0, < 2.1
+trytond_currency >= 2.0, < 2.1
+trytond_account >= 2.0, < 2.1
+trytond_party >= 2.0, < 2.1
+trytond >= 2.0, < 2.1
\ No newline at end of file
commit 1080c8b439e1f55c70fd1aea5f91450331eed228
Author: Daniel Baumann <daniel at debian.org>
Date: Thu Nov 4 20:12:07 2010 +0100
Adding upstream version 1.8.0.
diff --git a/CHANGELOG b/CHANGELOG
index aefb43e..4b4e7d6 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 1.8.0 - 2010-11-01
+* Bug fixes (see mercurial logs for details)
+
Version 1.6.0 - 2010-05-12
* Bug fixes (see mercurial logs for details)
* Remove egenix-mx-base
diff --git a/INSTALL b/INSTALL
index 85ab371..105d1fc 100644
--- a/INSTALL
+++ b/INSTALL
@@ -4,7 +4,7 @@ Installing trytond_analytic_account
Prerequisites
-------------
- * Python 2.4 or later (http://www.python.org/)
+ * Python 2.5 or later (http://www.python.org/)
* trytond (http://www.tryton.org/)
* trytond_company (http://www.tryton.org/)
* trytond_party (http://www.tryton.org/)
diff --git a/PKG-INFO b/PKG-INFO
index 2810b62..d5c2a59 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.6.0
+Version: 1.8.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.6/
+Download-URL: http://downloads.tryton.org/1.8/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/__tryton__.py b/__tryton__.py
index 58a28ac..b830370 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -6,7 +6,7 @@
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '1.6.0',
+ 'version': '1.8.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
diff --git a/account.py b/account.py
index bcb27d1..fd7be9c 100644
--- a/account.py
+++ b/account.py
@@ -1,11 +1,11 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
-"Account"
+from decimal import Decimal
+import copy
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
from trytond.pyson import Equal, Eval, Not, PYSONEncoder
-from decimal import Decimal
-import copy
+from trytond.transaction import Transaction
class Account(ModelSQL, ModelView):
@@ -71,68 +71,60 @@ class Account(ModelSQL, ModelView):
})
self._order.insert(0, ('code', 'ASC'))
- def default_active(self, cursor, user, context=None):
+ def default_active(self):
return True
- def default_company(self, cursor, user, context=None):
- if context is None:
- context = {}
- if context.get('company'):
- return context['company']
- return False
+ def default_company(self):
+ return Transaction().context.get('company') or False
- def default_currency(self, cursor, user, context=None):
+ def default_currency(self):
company_obj = self.pool.get('company.company')
currency_obj = self.pool.get('currency.currency')
- if context is None:
- context = {}
- if context.get('company'):
- company = company_obj.browse(cursor, user, context['company'],
- context=context)
+ if Transaction().context.get('company'):
+ company = company_obj.browse(Transaction().context['company'])
return company.currency.id
return False
- def default_type(self, cursor, user, context=None):
+ def default_type(self):
return 'normal'
- def default_state(self, cursor, user, context=None):
+ def default_state(self):
return 'draft'
- def default_display_balance(self, cursor, user, context=None):
+ def default_display_balance(self):
return 'credit-debit'
- def default_mandatory(self, cursor, user, context=None):
+ def default_mandatory(self):
return False
- def on_change_with_currency_digits(self, cursor, user, vals, context=None):
+ def on_change_with_currency_digits(self, vals):
currency_obj = self.pool.get('currency.currency')
if vals.get('currency'):
- currency = currency_obj.browse(cursor, user, vals['currency'],
- context=context)
+ currency = currency_obj.browse(vals['currency'])
return currency.digits
return 2
- def get_currency_digits(self, cursor, user, ids, name, context=None):
+ def get_currency_digits(self, ids, name):
res = {}
- for account in self.browse(cursor, user, ids, context=context):
+ for account in self.browse(ids):
res[account.id] = account.currency.digits
return res
- def get_balance(self, cursor, user, ids, name, context=None):
+ def get_balance(self, ids, name):
res = {}
line_obj = self.pool.get('analytic_account.line')
currency_obj = self.pool.get('currency.currency')
+ cursor = Transaction().cursor
- child_ids = self.search(cursor, user, [('parent', 'child_of', ids)],
- context=context)
+ child_ids = self.search([('parent', 'child_of', ids)])
all_ids = {}.fromkeys(ids + child_ids).keys()
id2account = {}
- accounts = self.browse(cursor, user, all_ids, context=context)
+ accounts = self.browse(all_ids)
for account in accounts:
id2account[account.id] = account
- line_query = line_obj.query_get(cursor, user, context=context)
+ line_query = line_obj.query_get()
cursor.execute('SELECT a.id, ' \
'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), ' \
'c.currency ' \
@@ -160,48 +152,46 @@ class Account(ModelSQL, ModelView):
if currency_id in id2currency:
currency = id2currency[currency_id]
else:
- currency = currency_obj.browse(cursor, user, currency_id,
- context=context)
+ currency = currency_obj.browse(currency_id)
id2currency[currency.id] = currency
- account_sum[account_id] += currency_obj.compute(cursor, user,
- currency, sum, id2account[account_id].currency,
- round=True, context=context)
+ account_sum[account_id] += currency_obj.compute(currency, sum,
+ id2account[account_id].currency, round=True)
else:
- account_sum[account_id] += currency_obj.round(cursor, user,
+ account_sum[account_id] += currency_obj.round(
id2account[account_id].currency, sum)
for account_id in ids:
res.setdefault(account_id, Decimal('0.0'))
- child_ids = self.search(cursor, user, [
+ child_ids = self.search([
('parent', 'child_of', [account_id]),
- ], context=context)
+ ])
to_currency = id2account[account_id].currency
for child_id in child_ids:
from_currency = id2account[child_id].currency
- res[account_id] += currency_obj.compute(cursor, user,
- from_currency, account_sum.get(child_id, Decimal('0.0')),
- to_currency, round=True, context=context)
- res[account_id] = currency_obj.round(cursor, user, to_currency,
- res[account_id])
+ res[account_id] += currency_obj.compute(from_currency,
+ account_sum.get(child_id, Decimal('0.0')), to_currency,
+ round=True)
+ res[account_id] = currency_obj.round(to_currency, res[account_id])
if id2account[account_id].display_balance == 'credit-debit':
res[account_id] = - res[account_id]
return res
- def get_credit_debit(self, cursor, user, ids, name, context=None):
+ def get_credit_debit(self, ids, name):
res = {}
line_obj = self.pool.get('analytic_account.line')
currency_obj = self.pool.get('currency.currency')
+ cursor = Transaction().cursor
if name not in ('credit', 'debit'):
raise Exception('Bad argument')
id2account = {}
- accounts = self.browse(cursor, user, ids, context=context)
+ accounts = self.browse(ids)
for account in accounts:
res[account.id] = Decimal('0.0')
id2account[account.id] = account
- line_query = line_obj.query_get(cursor, user, context=context)
+ line_query = line_obj.query_get()
cursor.execute('SELECT a.id, ' \
'SUM(COALESCE(l.' + name + ', 0)), ' \
'c.currency ' \
@@ -228,45 +218,42 @@ class Account(ModelSQL, ModelView):
if currency_id in id2currency:
currency = id2currency[currency_id]
else:
- currency = currency_obj.browse(cursor, user, currency_id,
- context=context)
+ currency = currency_obj.browse(currency_id)
id2currency[currency.id] = currency
- res[account_id] += currency_obj.compute(cursor, user,
- currency, sum, id2account[account_id].currency,
- round=True, context=context)
+ res[account_id] += currency_obj.compute(currency, sum,
+ id2account[account_id].currency, round=True)
else:
- res[account_id] += currency_obj.round(cursor, user,
+ res[account_id] += currency_obj.round(
id2account[account_id].currency, sum)
return res
- def get_rec_name(self, cursor, user, ids, name, context=None):
+ def get_rec_name(self, ids, name):
if not ids:
return {}
res = {}
- for account in self.browse(cursor, user, ids, context=context):
+ for account in self.browse(ids):
if account.code:
res[account.id] = account.code + ' - ' + unicode(account.name)
else:
res[account.id] = unicode(account.name)
return res
- def search_rec_name(self, cursor, user, name, clause, context=None):
- ids = self.search(cursor, user, [('code',) + clause[1:]], limit=1,
- context=context)
+ def search_rec_name(self, name, clause):
+ ids = self.search([('code',) + clause[1:]], limit=1)
if ids:
return [('code',) + clause[1:]]
else:
return [(self._rec_name,) + clause[1:]]
- def convert_view(self, cursor, user, tree, context=None):
+ def convert_view(self, tree):
res = tree.xpath('//field[@name=\'analytic_accounts\']')
if not res:
return
element_accounts = res[0]
- root_account_ids = self.search(cursor, user, [
+ root_account_ids = self.search([
('parent', '=', False),
- ], context=context)
+ ])
if not root_account_ids:
element_accounts.getparent().getparent().remove(
element_accounts.getparent())
@@ -282,25 +269,24 @@ class Account(ModelSQL, ModelView):
parent = element_accounts.getparent()
parent.remove(element_accounts)
- def analytic_accounts_fields_get(self, cursor, user, field,
- fields_names=None, context=None):
+ def analytic_accounts_fields_get(self, field, fields_names=None):
res = {}
if fields_names is None:
fields_names = []
- root_account_ids = self.search(cursor, user, [
+ root_account_ids = self.search([
('parent', '=', False),
- ], context=context)
- for account in self.browse(cursor, user, root_account_ids,
- context=context):
+ ])
+ for account in self.browse(root_account_ids):
name = 'analytic_account_' + str(account.id)
if name in fields_names or not fields_names:
res[name] = field.copy()
res[name]['required'] = account.mandatory
res[name]['string'] = account.name
res[name]['relation'] = self._name
- res[name]['domain'] = [('root', '=', account.id),
- ('type', '=', 'normal')]
+ res[name]['domain'] = PYSONEncoder().encode([
+ ('root', '=', account.id),
+ ('type', '=', 'normal')])
return res
Account()
@@ -339,12 +325,12 @@ class OpenChartAccount(Wizard):
},
}
- def _action_open_chart(self, cursor, user, data, context=None):
+ def _action_open_chart(self, data):
model_data_obj = self.pool.get('ir.model.data')
act_window_obj = self.pool.get('ir.action.act_window')
- act_window_id = model_data_obj.get_id(cursor, user, 'analytic_account',
- 'act_account_tree2', context=context)
- res = act_window_obj.read(cursor, user, act_window_id, context=context)
+ act_window_id = model_data_obj.get_id('analytic_account',
+ 'act_account_tree2')
+ res = act_window_obj.read(act_window_id)
res['pyson_context'] = PYSONEncoder().encode({
'start_date': data['form']['start_date'],
'end_date': data['form']['end_date'],
@@ -374,23 +360,23 @@ class AccountSelection(ModelSQL, ModelView):
'or a missing mandatory root account!',
})
- def check_root(self, cursor, user, ids):
+ def check_root(self, ids):
"Check Root"
account_obj = self.pool.get('analytic_account.account')
- root_account_ids = account_obj.search(cursor, user, [
+ root_account_ids = account_obj.search([
('parent', '=', False),
])
- root_accounts = account_obj.browse(cursor, user, root_account_ids)
+ root_accounts = account_obj.browse(root_account_ids)
- selections = self.browse(cursor, user, ids)
+ selections = self.browse(ids)
for selection in selections:
roots = []
for account in selection.accounts:
if account.root.id in roots:
return False
roots.append(account.root.id)
- if user: #Root can by pass
+ if Transaction().user: #Root can by pass
for account in root_accounts:
if account.mandatory:
if not account.id in roots:
diff --git a/analytic_account.xml b/analytic_account.xml
index afd6b32..9540490 100644
--- a/analytic_account.xml
+++ b/analytic_account.xml
@@ -9,5 +9,8 @@ this repository contains the full copyright notices and license terms. -->
<record model="res.user" id="res.user_admin">
<field name="groups" eval="[('add', ref('group_analytic_admin'))]"/>
</record>
+ <record model="res.user" id="res.user_trigger">
+ <field name="groups" eval="[('add', ref('group_analytic_admin'))]"/>
+ </record>
</data>
</tryton>
diff --git a/de_DE.csv b/de_DE.csv
index 44a4b66..dd6aaf5 100644
--- a/de_DE.csv
+++ b/de_DE.csv
@@ -13,6 +13,11 @@ field,"account.statement,currency_digits",0,Currency Digits,Stellen Währung,0
field,"account.statement,date",0,Date,Datum,0
field,"account.statement,end_balance",0,End Balance,Endsaldo,0
field,"account.statement,journal",0,Journal,Journal,0
+field,"account.statement,lines",0,Transactions,Transaktionen,0
+field,"account.statement,move_lines",0,Move Lines,Buchungsposten,0
+field,"account.statement,rec_name",0,Name,Name,0
+field,"account.statement,start_balance",0,Start Balance,Anfangssaldo,0
+field,"account.statement,state",0,State,Status,0
field,"account.statement.journal,company",0,Company,Unternehmen,0
field,"account.statement.journal,currency",0,Currency,Währung,0
field,"account.statement.journal,journal",0,Journal,Journal,0
@@ -26,16 +31,8 @@ field,"account.statement.line,invoice",0,Invoice,Rechnung,0
field,"account.statement.line,move",0,Account Move,Buchungssatz,0
field,"account.statement.line,party",0,Party,Partei,0
field,"account.statement.line,rec_name",0,Name,Name,0
-field,"account.statement,lines",0,Transactions,Transaktionen,0
field,"account.statement.line,statement",0,Statement,Zahlung,0
-field,"account.statement,move_lines",0,Move Lines,Buchungsposten,0
-field,"account.statement,rec_name",0,Name,Name,0
-field,"account.statement,start_balance",0,Start Balance,Anfangssaldo,0
-field,"account.statement,state",0,State,Status,0
field,"analytic_account.account,active",0,Active,Aktiv,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Konto,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Name,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Auswahl,0
field,"analytic_account.account,balance",0,Balance,Saldo,0
field,"analytic_account.account,childs",0,Children,Untergeordnet (Kostenstellen),0
field,"analytic_account.account,code",0,Code,Code,0
@@ -48,15 +45,18 @@ field,"analytic_account.account,display_balance",0,Display Balance,Ansicht Bilan
field,"analytic_account.account,mandatory",0,Mandatory,Erforderlich,0
field,"analytic_account.account,name",0,Name,Name,0
field,"analytic_account.account,note",0,Note,Notiz,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Enddatum,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Anfangsdatum,0
field,"analytic_account.account,parent",0,Parent,Übergeordnet (Kostenstelle),0
field,"analytic_account.account,rec_name",0,Name,Name,0
field,"analytic_account.account,root",0,Root,Wurzel,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Konten,0
-field,"analytic_account.account.selection,rec_name",0,Name,Name,0
field,"analytic_account.account,state",0,State,Status,0
field,"analytic_account.account,type",0,Type,Typ,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Konto,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Name,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Auswahl,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Enddatum,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Anfangsdatum,0
+field,"analytic_account.account.selection,accounts",0,Accounts,Konten,0
+field,"analytic_account.account.selection,rec_name",0,Name,Name,0
field,"analytic_account.line,account",0,Account,Konto,0
field,"analytic_account.line,active",0,Active,Aktiv,0
field,"analytic_account.line,credit",0,Credit,Haben,0
@@ -70,11 +70,11 @@ field,"analytic_account.line,name",0,Name,Name,0
field,"analytic_account.line,party",0,Party,Partei,0
field,"analytic_account.line,rec_name",0,Name,Name,0
field,"analytic_account.line,reference",0,Reference,Interner Beleg,0
+model,"account.statement,name",0,Account Statement,Zahlungsverkehr,0
model,"account.statement.journal,name",0,Statement Journal,Journal Zahlungsverkehr,0
model,"account.statement.line,name",0,Account Statement Line,Zahlungsverkehr Position,0
-model,"account.statement,name",0,Account Statement,Zahlungsverkehr,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Kostenstelle - Kostenstelle Auswahl,0
model,"analytic_account.account,name",0,Analytic Account,Kostenstelle,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Kostenstelle - Kostenstelle Auswahl,0
model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Kontenplan Öffnen Init,0
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Kostenstelle Auswahl,0
model,"analytic_account.line,name",0,Analytic Line,Kostenstelle Zeile,0
@@ -85,10 +85,10 @@ model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_line_form,Analytic Lines,Kostenstelle Zeilen,0
model,"ir.action,name",act_open_account,Open Account,Konto öffnen,0
model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan Öffnen,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Kostenstellen,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Neue Kostenstelle,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan öffnen,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Kostenstellen Administration,0
selection,"account.statement,state",0,Canceled,Annulliert,0
diff --git a/fr_FR.csv b/fr_FR.csv
index 0e19358..551a568 100644
--- a/fr_FR.csv
+++ b/fr_FR.csv
@@ -7,9 +7,6 @@ on view/inactive account!","Vous ne pouvez pas créer de mouvements
sur des comptes inactifs ou de type vue!",0
field,"account.move.line,analytic_lines",0,Analytic Lines,Lignes analytiques,0
field,"analytic_account.account,active",0,Active,Actif,0
-field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Compte,0
-field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nom,0
-field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Sélection,0
field,"analytic_account.account,balance",0,Balance,Balance,0
field,"analytic_account.account,childs",0,Children,Enfants,0
field,"analytic_account.account,code",0,Code,Code,0
@@ -22,15 +19,18 @@ field,"analytic_account.account,display_balance",0,Display Balance,Balance affic
field,"analytic_account.account,mandatory",0,Mandatory,Obligatoire,0
field,"analytic_account.account,name",0,Name,Nom,0
field,"analytic_account.account,note",0,Note,Note,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Date de fin,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Date de début,0
field,"analytic_account.account,parent",0,Parent,Parent,0
field,"analytic_account.account,rec_name",0,Name,Nom,0
field,"analytic_account.account,root",0,Root,Racine,0
-field,"analytic_account.account.selection,accounts",0,Accounts,Comptes,0
-field,"analytic_account.account.selection,rec_name",0,Name,Nom,0
field,"analytic_account.account,state",0,State,État,0
field,"analytic_account.account,type",0,Type,Type,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Compte,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nom,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Sélection,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Date de fin,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Date de début,0
+field,"analytic_account.account.selection,accounts",0,Accounts,Comptes,0
+field,"analytic_account.account.selection,rec_name",0,Name,Nom,0
field,"analytic_account.line,account",0,Account,Compte,0
field,"analytic_account.line,active",0,Active,Actif,0
field,"analytic_account.line,credit",0,Credit,Crédit,0
@@ -44,8 +44,8 @@ field,"analytic_account.line,name",0,Name,Nom,0
field,"analytic_account.line,party",0,Party,Partenaire,0
field,"analytic_account.line,rec_name",0,Name,Nom,0
field,"analytic_account.line,reference",0,Reference,Référence,0
-model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Compte analytique - Sélection compte analytique,0
model,"analytic_account.account,name",0,Analytic Account,Compte analytique,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Compte analytique - Sélection compte analytique,0
model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Ouvrir le plan comptable - Initialisation,0
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Sélection compte analytique,0
model,"analytic_account.line,name",0,Analytic Line,Ligne analytique,0
@@ -56,10 +56,10 @@ model,"ir.action,name",act_account_tree2,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_line_form,Analytic Lines,Lignes analytiques,0
model,"ir.action,name",act_open_account,Open Account,Ouvrir le compte,0
model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Comptes analytiques,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Nouveau compte analytique,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Administration analytique,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédit - Débit,0
diff --git a/line.py b/line.py
index 3450906..b01478f 100644
--- a/line.py
+++ b/line.py
@@ -1,11 +1,11 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
-"Line"
+import time
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
from trytond.backend import TableHandler
from trytond.pyson import Eval, PYSONEncoder
-import time
+from trytond.transaction import Transaction
class Line(ModelSQL, ModelView):
@@ -49,71 +49,67 @@ class Line(ModelSQL, ModelView):
})
self._order.insert(0, ('date', 'ASC'))
- def init(self, cursor, module_name):
- super(Line, self).init(cursor, module_name)
+ def init(self, module_name):
+ super(Line, self).init(module_name)
+ cursor = Transaction().cursor
table = TableHandler(cursor, self, module_name)
# Migration from 1.2 currency has been changed in function field
table.not_null_action('currency', action='remove')
- def default_date(self, cursor, user, context=None):
+ def default_date(self):
date_obj = self.pool.get('ir.date')
- return date_obj.today(cursor, user, context=context)
+ return date_obj.today()
- def default_active(self, cursor, user, context=None):
+ def default_active(self):
return True
- def on_change_with_currency(self, cursor, user, vals, context=None):
+ def on_change_with_currency(self, vals):
move_line_obj = self.pool.get('account.move.line')
if vals.get('move_line'):
- move_line = move_line_obj.browse(cursor, user, vals['move_line'],
- context=context)
+ move_line = move_line_obj.browse(vals['move_line'])
return move_line.account.company.currency.id
return False
- def get_currency(self, cursor, user, ids, name, context=None):
+ def get_currency(self, ids, name):
res = {}
- for line in self.browse(cursor, user, ids, context=context):
+ for line in self.browse(ids):
res[line.id] = line.move_line.account.company.currency.id
return res
- def on_change_with_currency_digits(self, cursor, user, vals, context=None):
+ def on_change_with_currency_digits(self, vals):
move_line_obj = self.pool.get('account.move.line')
if vals.get('move_line'):
- move_line = move_line_obj.browse(cursor, user, vals['move_line'],
- context=context)
+ move_line = move_line_obj.browse(vals['move_line'])
return move_line.account.company.currency.digits
return 2
- def get_currency_digits(self, cursor, user, ids, name, context=None):
+ def get_currency_digits(self, ids, name):
res = {}
- for line in self.browse(cursor, user, ids, context=context):
+ for line in self.browse(ids):
res[line.id] = line.move_line.account.company.currency.digits
return res
- def query_get(self, cursor, user, obj='l', context=None):
+ def query_get(self, obj='l'):
'''
Return SQL clause for analytic line depending of the context.
obj is the SQL alias of the analytic_account_line in the query.
'''
- if context is None:
- context = {}
-
res = obj + '.active'
- if context.get('start_date'):
+ if Transaction().context.get('start_date'):
# Check start_date
- time.strptime(str(context['start_date']), '%Y-%m-%d')
+ time.strptime(str(Transaction().context['start_date']), '%Y-%m-%d')
res += ' AND ' + obj + '.date >= date(\'' + \
- str(context['start_date']) + '\')'
- if context.get('end_date'):
+ str(Transaction().context['start_date']) + '\')'
+ if Transaction().context.get('end_date'):
# Check end_date
- time.strptime(str(context['end_date']), '%Y-%m-%d')
+ time.strptime(str(Transaction().context['end_date']), '%Y-%m-%d')
res += ' AND ' + obj + '.date <= date(\'' + \
- str(context['end_date']) + '\')'
+ str(Transaction().context['end_date']) + '\')'
return res
- def check_account(self, cursor, user, ids):
- for line in self.browse(cursor, user, ids):
+ def check_account(self, ids):
+ for line in self.browse(ids):
if line.account.type == 'view':
return False
if not line.account.active:
@@ -144,24 +140,25 @@ class OpenAccount(Wizard):
},
}
- def _action_open_account(self, cursor, user, data, context=None):
+ def _action_open_account(self, data):
model_data_obj = self.pool.get('ir.model.data')
act_window_obj = self.pool.get('ir.action.act_window')
- if context is None:
- context = {}
-
- act_window_id = model_data_obj.get_id(cursor, user, 'analytic_account',
- 'act_line_form', context=context)
- res = act_window_obj.read(cursor, user, act_window_id, context=context)
+ act_window_id = model_data_obj.get_id('analytic_account',
+ 'act_line_form')
+ res = act_window_obj.read(act_window_id)
res['pyson_domain'] = [
('account', '=', data['id']),
]
- if context.get('start_date'):
- res['pyson_domain'].append(('date', '>=', context['start_date']))
- if context.get('end_date'):
- res['pyson_domain'].append(('date', '<=', context['end_date']))
+ if Transaction().context.get('start_date'):
+ res['pyson_domain'].append(
+ ('date', '>=', Transaction().context['start_date'])
+ )
+ if Transaction().context.get('end_date'):
+ res['pyson_domain'].append(
+ ('date', '<=', Transaction().context['end_date'])
+ )
res['pyson_domain'] = PYSONEncoder().encode(res['pyson_domain'])
return res
diff --git a/tests/test_analytic_account.py b/tests/test_analytic_account.py
index 17439ec..0da5af7 100644
--- a/tests/test_analytic_account.py
+++ b/tests/test_analytic_account.py
@@ -25,7 +25,7 @@ class AnalyticAccountTestCase(unittest.TestCase):
'''
Test views.
'''
- self.assertRaises(Exception, test_view('analytic_account'))
+ test_view('analytic_account')
def suite():
suite = trytond.tests.test_tryton.suite()
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index c24b1cc..fa1458e 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.6.0
+Version: 1.8.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.6/
+Download-URL: http://downloads.tryton.org/1.8/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index f565b24..544f19b 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,5 +1,5 @@
-trytond_company >= 1.6, < 1.7
-trytond_currency >= 1.6, < 1.7
-trytond_account >= 1.6, < 1.7
-trytond_party >= 1.6, < 1.7
-trytond >= 1.6, < 1.7
\ No newline at end of file
+trytond_company >= 1.8, < 1.9
+trytond_currency >= 1.8, < 1.9
+trytond_account >= 1.8, < 1.9
+trytond_party >= 1.8, < 1.9
+trytond >= 1.8, < 1.9
\ No newline at end of file
commit 5d12b6baa71be47201fdaaf3ad94235e92ab07a0
Author: Mathias Behrle <mathiasb at mbsolutions.selfip.biz>
Date: Thu May 13 11:28:50 2010 +0200
Adding upstream version 1.6.0.
diff --git a/CHANGELOG b/CHANGELOG
index 339e5f6..aefb43e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,7 @@
+Version 1.6.0 - 2010-05-12
+* Bug fixes (see mercurial logs for details)
+* Remove egenix-mx-base
+
Version 1.4.0 - 2009-10-19
* Bug fixes (see mercurial logs for details)
* Convert currency on line into Function field
diff --git a/COPYRIGHT b/COPYRIGHT
index 37fef2d..94a43fb 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,7 +1,7 @@
Copyright (C) 2004-2008 Tiny SPRL.
-Copyright (C) 2008 Cédric Krier.
-Copyright (C) 2008 Bertrand Chenal.
-Copyright (C) 2008 B2CK SPRL.
+Copyright (C) 2008-2010 Cédric Krier.
+Copyright (C) 2008-2010 Bertrand Chenal.
+Copyright (C) 2008-2010 B2CK SPRL.
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
diff --git a/INSTALL b/INSTALL
index 1ac2c26..85ab371 100644
--- a/INSTALL
+++ b/INSTALL
@@ -5,7 +5,6 @@ Prerequisites
-------------
* Python 2.4 or later (http://www.python.org/)
- * egenix-mx-base (http://www.egenix.com/products/python/)
* trytond (http://www.tryton.org/)
* trytond_company (http://www.tryton.org/)
* trytond_party (http://www.tryton.org/)
diff --git a/MANIFEST.in b/MANIFEST.in
index c61b52d..5343ad8 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -7,4 +7,3 @@ include LICENSE
include *.xml
include *.odt
include *.csv
-include tests/*
diff --git a/PKG-INFO b/PKG-INFO
index 96d441c..2810b62 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.4.0
+Version: 1.6.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.4/
+Download-URL: http://downloads.tryton.org/1.6/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/__tryton__.py b/__tryton__.py
index dca2dab..58a28ac 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -6,7 +6,7 @@
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '1.4.0',
+ 'version': '1.6.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
diff --git a/account.py b/account.py
index 1f99782..bcb27d1 100644
--- a/account.py
+++ b/account.py
@@ -3,6 +3,7 @@
"Account"
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
+from trytond.pyson import Equal, Eval, Not, PYSONEncoder
from decimal import Decimal
import copy
@@ -17,8 +18,8 @@ class Account(ModelSQL, ModelView):
active = fields.Boolean('Active', select=2)
company = fields.Many2One('company.company', 'Company')
currency = fields.Many2One('currency.currency', 'Currency', required=True)
- currency_digits = fields.Function('get_currency_digits', type='integer',
- string='Currency Digits', on_change_with=['currency'])
+ currency_digits = fields.Function(fields.Integer('Currency Digits',
+ on_change_with=['currency']), 'get_currency_digits')
type = fields.Selection([
('root', 'Root'),
('view', 'View'),
@@ -27,22 +28,25 @@ class Account(ModelSQL, ModelView):
root = fields.Many2One('analytic_account.account', 'Root', select=2,
domain=[('parent', '=', False)],
states={
- 'invisible': "type == 'root'",
- 'required': "type != 'root'",
+ 'invisible': Equal(Eval('type'), 'root'),
+ 'required': Not(Equal(Eval('type'), 'root')),
})
parent = fields.Many2One('analytic_account.account', 'Parent', select=2,
- domain=["('parent', 'child_of', root)"],
+ domain=[('parent', 'child_of', Eval('root'))],
states={
- 'invisible': "type == 'root'",
- 'required': "type != 'root'",
+ 'invisible': Equal(Eval('type'), 'root'),
+ 'required': Not(Equal(Eval('type'), 'root')),
})
childs = fields.One2Many('analytic_account.account', 'parent', 'Children')
- balance = fields.Function('get_balance', digits="(16, currency_digits)",
- string='Balance')
- credit = fields.Function('get_credit_debit', digits="(16, currency_digits)",
- string='Credit')
- debit = fields.Function('get_credit_debit', digits="(16, currency_digits)",
- string='Debit')
+ balance = fields.Function(fields.Numeric('Balance',
+ digits=(16, Eval('currency_digits', 1)), depends=['currency_digits']),
+ 'get_balance')
+ credit = fields.Function(fields.Numeric('Credit',
+ digits=(16, Eval('currency_digits', 2)), depends=['currency_digits']),
+ 'get_credit_debit')
+ debit = fields.Function(fields.Numeric('Debit',
+ digits=(16, Eval('currency_digits', 2)), depends=['currency_digits']),
+ 'get_credit_debit')
state = fields.Selection([
('draft', 'Draft'),
('opened', 'Opened'),
@@ -54,7 +58,7 @@ class Account(ModelSQL, ModelView):
('credit-debit', 'Credit - Debit'),
], 'Display Balance', required=True)
mandatory = fields.Boolean('Mandatory', states={
- 'invisible': "type != 'root'",
+ 'invisible': Not(Equal(Eval('type'), 'root')),
})
def __init__(self):
@@ -71,7 +75,6 @@ class Account(ModelSQL, ModelView):
return True
def default_company(self, cursor, user, context=None):
- company_obj = self.pool.get('company.company')
if context is None:
context = {}
if context.get('company'):
@@ -101,8 +104,7 @@ class Account(ModelSQL, ModelView):
def default_mandatory(self, cursor, user, context=None):
return False
- def on_change_with_currency_digits(self, cursor, user, ids, vals,
- context=None):
+ def on_change_with_currency_digits(self, cursor, user, vals, context=None):
currency_obj = self.pool.get('currency.currency')
if vals.get('currency'):
currency = currency_obj.browse(cursor, user, vals['currency'],
@@ -110,13 +112,13 @@ class Account(ModelSQL, ModelView):
return currency.digits
return 2
- def get_currency_digits(self, cursor, user, ids, name, arg, context=None):
+ def get_currency_digits(self, cursor, user, ids, name, context=None):
res = {}
for account in self.browse(cursor, user, ids, context=context):
res[account.id] = account.currency.digits
return res
- def get_balance(self, cursor, user, ids, name, arg, context=None):
+ def get_balance(self, cursor, user, ids, name, context=None):
res = {}
line_obj = self.pool.get('analytic_account.line')
currency_obj = self.pool.get('currency.currency')
@@ -185,7 +187,7 @@ class Account(ModelSQL, ModelView):
res[account_id] = - res[account_id]
return res
- def get_credit_debit(self, cursor, user, ids, name, arg, context=None):
+ def get_credit_debit(self, cursor, user, ids, name, context=None):
res = {}
line_obj = self.pool.get('analytic_account.line')
currency_obj = self.pool.get('currency.currency')
@@ -237,7 +239,7 @@ class Account(ModelSQL, ModelView):
id2account[account_id].currency, sum)
return res
- def get_rec_name(self, cursor, user, ids, name, arg, context=None):
+ def get_rec_name(self, cursor, user, ids, name, context=None):
if not ids:
return {}
res = {}
@@ -248,18 +250,13 @@ class Account(ModelSQL, ModelView):
res[account.id] = unicode(account.name)
return res
- def search_rec_name(self, cursor, user, name, args, context=None):
- args2 = []
- i = 0
- while i < len(args):
- ids = self.search(cursor, user, [('code', args[i][1], args[i][2])],
- limit=1, context=context)
- if ids:
- args2.append(('code', args[i][1], args[i][2]))
- else:
- args2.append((self._rec_name, args[i][1], args[i][2]))
- i += 1
- return args2
+ def search_rec_name(self, cursor, user, name, clause, context=None):
+ ids = self.search(cursor, user, [('code',) + clause[1:]], limit=1,
+ context=context)
+ if ids:
+ return [('code',) + clause[1:]]
+ else:
+ return [(self._rec_name,) + clause[1:]]
def convert_view(self, cursor, user, tree, context=None):
res = tree.xpath('//field[@name=\'analytic_accounts\']')
@@ -345,18 +342,12 @@ class OpenChartAccount(Wizard):
def _action_open_chart(self, cursor, user, data, context=None):
model_data_obj = self.pool.get('ir.model.data')
act_window_obj = self.pool.get('ir.action.act_window')
-
- model_data_ids = model_data_obj.search(cursor, user, [
- ('fs_id', '=', 'act_account_tree2'),
- ('module', '=', 'analytic_account'),
- ('inherit', '=', False),
- ], limit=1, context=context)
- model_data = model_data_obj.browse(cursor, user, model_data_ids[0],
- context=context)
- res = act_window_obj.read(cursor, user, model_data.db_id, context=context)
- res['context'] = str({
+ act_window_id = model_data_obj.get_id(cursor, user, 'analytic_account',
+ 'act_account_tree2', context=context)
+ res = act_window_obj.read(cursor, user, act_window_id, context=context)
+ res['pyson_context'] = PYSONEncoder().encode({
'start_date': data['form']['start_date'],
- 'end_date': data['form']['end_date']
+ 'end_date': data['form']['end_date'],
})
return res
diff --git a/account.xml b/account.xml
index 495c7c8..8e4b857 100644
--- a/account.xml
+++ b/account.xml
@@ -81,6 +81,26 @@ this repository contains the full copyright notices and license terms. -->
</record>
<menuitem parent="menu_analytic_account_configuration"
action="act_account_form" id="menu_account_form"/>
+
+ <record model="ir.action.act_window" id="act_account_form2">
+ <field name="name">Analytic Accounts</field>
+ <field name="res_model">analytic_account.account</field>
+ <field name="view_type">form</field>
+ </record>
+ <record model="ir.action.act_window.view" id="act_account_form2_view1">
+ <field name="sequence" eval="10"/>
+ <field name="view" ref="account_view_form"/>
+ <field name="act_window" ref="act_account_form2"/>
+ </record>
+ <record model="ir.action.act_window.view" id="act_account_form2_view2">
+ <field name="sequence" eval="20"/>
+ <field name="view" ref="account_view_tree"/>
+ <field name="act_window" ref="act_account_form2"/>
+ </record>
+ <menuitem name="New Analytic Account" parent="menu_account_form"
+ action="act_account_form2" id="menu_account_form_new"
+ sequence="10"/>
+
<record model="ir.action.act_window" id="act_account_tree">
<field name="name">Analytic Accounts</field>
<field name="res_model">analytic_account.account</field>
@@ -93,7 +113,8 @@ this repository contains the full copyright notices and license terms. -->
<field name="act_window" ref="act_account_tree"/>
</record>
<menuitem parent="menu_account_form"
- action="act_account_tree" id="menu_account_tree"/>
+ action="act_account_tree" id="menu_account_tree"
+ sequence="20"/>
<record model="ir.ui.view" id="account_view_tree2">
<field name="model">analytic_account.account</field>
<field name="type">tree</field>
@@ -108,7 +129,6 @@ this repository contains the full copyright notices and license terms. -->
<field name="credit"/>
<field name="balance"/>
<field name="currency"/>
- <field name="currency_digits" tree_invisible="1"/>
</tree>
]]>
</field>
diff --git a/de_DE.csv b/de_DE.csv
index 0615357..44a4b66 100644
--- a/de_DE.csv
+++ b/de_DE.csv
@@ -23,7 +23,7 @@ field,"account.statement.line,amount",0,Amount,Betrag,0
field,"account.statement.line,date",0,Date,Datum,0
field,"account.statement.line,description",0,Description,Beschreibung,0
field,"account.statement.line,invoice",0,Invoice,Rechnung,0
-field,"account.statement.line,move",0,Account Move,Buchung,0
+field,"account.statement.line,move",0,Account Move,Buchungssatz,0
field,"account.statement.line,party",0,Party,Partei,0
field,"account.statement.line,rec_name",0,Name,Name,0
field,"account.statement,lines",0,Transactions,Transaktionen,0
@@ -69,7 +69,7 @@ field,"analytic_account.line,move_line",0,Account Move Line,Buchungszeile,0
field,"analytic_account.line,name",0,Name,Name,0
field,"analytic_account.line,party",0,Party,Partei,0
field,"analytic_account.line,rec_name",0,Name,Name,0
-field,"analytic_account.line,reference",0,Reference,Verweis,0
+field,"analytic_account.line,reference",0,Reference,Interner Beleg,0
model,"account.statement.journal,name",0,Statement Journal,Journal Zahlungsverkehr,0
model,"account.statement.line,name",0,Account Statement Line,Zahlungsverkehr Position,0
model,"account.statement,name",0,Account Statement,Zahlungsverkehr,0
@@ -79,14 +79,16 @@ model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Accou
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Kostenstelle Auswahl,0
model,"analytic_account.line,name",0,Analytic Line,Kostenstelle Zeile,0
model,"ir.action,name",act_account_form,Analytic Accounts,Kostenstellen,0
+model,"ir.action,name",act_account_form2,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_line_form,Analytic Lines,Kostenstelle Zeilen,0
model,"ir.action,name",act_open_account,Open Account,Konto öffnen,0
model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan Öffnen,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstelle,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
+model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Neue Kostenstelle,0
model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan öffnen,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Kostenstellen Administration,0
selection,"account.statement,state",0,Canceled,Annulliert,0
diff --git a/es_CO.csv b/es_CO.csv
index bd77e3a..e38fa82 100644
--- a/es_CO.csv
+++ b/es_CO.csv
@@ -49,6 +49,7 @@ model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Accou
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Selección de Cuenta Analítica,0
model,"analytic_account.line,name",0,Analytic Line,Línea Analítica,0
model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.action,name",act_account_form2,Analytic Accounts,Cuentas Analíticas,1
model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas Analíticas,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas Analíticas,0
model,"ir.action,name",act_line_form,Analytic Lines,Líneas Analíticas,0
@@ -57,6 +58,7 @@ model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Ab
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta Analítica,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas Analíticas,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Nueva Cuenta Analítica,0
model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Administración Analítica,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédito - Débito,0
diff --git a/fr_FR.csv b/fr_FR.csv
index 9870532..0e19358 100644
--- a/fr_FR.csv
+++ b/fr_FR.csv
@@ -50,6 +50,7 @@ model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Accou
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Sélection compte analytique,0
model,"analytic_account.line,name",0,Analytic Line,Ligne analytique,0
model,"ir.action,name",act_account_form,Analytic Accounts,Comptes analytiques,0
+model,"ir.action,name",act_account_form2,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_line_form,Analytic Lines,Lignes analytiques,0
@@ -58,6 +59,7 @@ model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Ou
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Comptes analytiques,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
+model,"ir.ui.menu,name",menu_account_form_new,New Analytic Account,Nouveau compte analytique,0
model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Administration analytique,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédit - Débit,0
diff --git a/line.py b/line.py
index ab49501..3450906 100644
--- a/line.py
+++ b/line.py
@@ -1,10 +1,11 @@
-#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.
"Line"
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
-import mx.DateTime
from trytond.backend import TableHandler
+from trytond.pyson import Eval, PYSONEncoder
+import time
class Line(ModelSQL, ModelView):
@@ -13,15 +14,14 @@ class Line(ModelSQL, ModelView):
_description = __doc__
name = fields.Char('Name', required=True)
- debit = fields.Numeric('Debit', digits="(16, currency_digits)",
+ debit = fields.Numeric('Debit', digits=(16, Eval('currency_digits', 2)),
depends=['currency_digits'])
- credit = fields.Numeric('Credit', digits="(16, currency_digits)",
+ credit = fields.Numeric('Credit', digits=(16, Eval('currency_digits', 2)),
depends=['currency_digits'])
- currency = fields.Function('get_currency', type='many2one',
- relation='currency.currency', string='Currency',
- on_change_with=['move_line'])
- currency_digits = fields.Function('get_currency_digits', type='integer',
- string='Currency Digits', on_change_with=['move_line'])
+ currency = fields.Function(fields.Many2One('currency.currency', 'Currency',
+ on_change_with=['move_line']), 'get_currency')
+ currency_digits = fields.Function(fields.Integer('Currency Digits',
+ on_change_with=['move_line']), 'get_currency_digits')
account = fields.Many2One('analytic_account.account', 'Account',
required=True, select=1, domain=[('type', '!=', 'view')])
move_line = fields.Many2One('account.move.line', 'Account Move Line',
@@ -63,8 +63,7 @@ class Line(ModelSQL, ModelView):
def default_active(self, cursor, user, context=None):
return True
- def on_change_with_currency(self, cursor, user, ids, vals,
- context=None):
+ def on_change_with_currency(self, cursor, user, vals, context=None):
move_line_obj = self.pool.get('account.move.line')
if vals.get('move_line'):
move_line = move_line_obj.browse(cursor, user, vals['move_line'],
@@ -72,14 +71,13 @@ class Line(ModelSQL, ModelView):
return move_line.account.company.currency.id
return False
- def get_currency(self, cursor, user, ids, name, arg, context=None):
+ def get_currency(self, cursor, user, ids, name, context=None):
res = {}
for line in self.browse(cursor, user, ids, context=context):
res[line.id] = line.move_line.account.company.currency.id
return res
- def on_change_with_currency_digits(self, cursor, user, ids, vals,
- context=None):
+ def on_change_with_currency_digits(self, cursor, user, vals, context=None):
move_line_obj = self.pool.get('account.move.line')
if vals.get('move_line'):
move_line = move_line_obj.browse(cursor, user, vals['move_line'],
@@ -87,7 +85,7 @@ class Line(ModelSQL, ModelView):
return move_line.account.company.currency.digits
return 2
- def get_currency_digits(self, cursor, user, ids, name, arg, context=None):
+ def get_currency_digits(self, cursor, user, ids, name, context=None):
res = {}
for line in self.browse(cursor, user, ids, context=context):
res[line.id] = line.move_line.account.company.currency.digits
@@ -104,12 +102,12 @@ class Line(ModelSQL, ModelView):
res = obj + '.active'
if context.get('start_date'):
# Check start_date
- mx.DateTime.strptime(str(context['start_date']), '%Y-%m-%d')
+ time.strptime(str(context['start_date']), '%Y-%m-%d')
res += ' AND ' + obj + '.date >= date(\'' + \
str(context['start_date']) + '\')'
if context.get('end_date'):
# Check end_date
- mx.DateTime.strptime(str(context['end_date']), '%Y-%m-%d')
+ time.strptime(str(context['end_date']), '%Y-%m-%d')
res += ' AND ' + obj + '.date <= date(\'' + \
str(context['end_date']) + '\')'
return res
@@ -153,23 +151,18 @@ class OpenAccount(Wizard):
if context is None:
context = {}
- model_data_ids = model_data_obj.search(cursor, user, [
- ('fs_id', '=', 'act_line_form'),
- ('module', '=', 'analytic_account'),
- ('inherit', '=', False),
- ], limit=1, context=context)
- model_data = model_data_obj.browse(cursor, user, model_data_ids[0],
- context=context)
- res = act_window_obj.read(cursor, user, model_data.db_id, context=context)
- res['domain'] = [
+ act_window_id = model_data_obj.get_id(cursor, user, 'analytic_account',
+ 'act_line_form', context=context)
+ res = act_window_obj.read(cursor, user, act_window_id, context=context)
+ res['pyson_domain'] = [
('account', '=', data['id']),
]
if context.get('start_date'):
- res['domain'].append(('date', '>=', context['start_date']))
+ res['pyson_domain'].append(('date', '>=', context['start_date']))
if context.get('end_date'):
- res['domain'].append(('date', '<=', context['end_date']))
- res['domain'] = str(res['domain'])
+ res['pyson_domain'].append(('date', '<=', context['end_date']))
+ res['pyson_domain'] = PYSONEncoder().encode(res['pyson_domain'])
return res
OpenAccount()
diff --git a/setup.py b/setup.py
index a59bd9a..fe29ecb 100644
--- a/setup.py
+++ b/setup.py
@@ -2,19 +2,22 @@
#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, find_packages
+from setuptools import setup
import re
-info = eval(file('__tryton__.py').read())
+info = eval(open('__tryton__.py').read())
+major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
+major_version = int(major_version)
+minor_version = int(minor_version)
-requires = ['egenix-mx-base']
+requires = []
for dep in info.get('depends', []):
if not re.match(r'(ir|res|workflow|webdav)(\W|$)', dep):
- requires.append('trytond_' + dep)
-
-major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
-requires.append('trytond >= %s.%s' % (major_version, minor_version))
-requires.append('trytond < %s.%s' % (major_version, int(minor_version) + 1))
+ requires.append('trytond_%s >= %s.%s, < %s.%s' %
+ (dep, major_version, minor_version, major_version,
+ minor_version + 1))
+requires.append('trytond >= %s.%s, < %s.%s' %
+ (major_version, minor_version, major_version, minor_version + 1))
setup(name='trytond_analytic_account',
version=info.get('version', '0.0.1'),
@@ -27,6 +30,7 @@ setup(name='trytond_analytic_account',
package_dir={'trytond.modules.analytic_account': '.'},
packages=[
'trytond.modules.analytic_account',
+ 'trytond.modules.analytic_account.tests',
],
package_data={
'trytond.modules.analytic_account': info.get('xml', []) \
@@ -55,4 +59,6 @@ setup(name='trytond_analytic_account',
[trytond.modules]
analytic_account = trytond.modules.analytic_account
""",
+ test_suite='tests',
+ test_loader='trytond.test_loader:Loader',
)
diff --git a/tests/__init__.py b/tests/__init__.py
index ce64084..a76a403 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -1,4 +1,4 @@
#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_analytic_account import *
+from test_analytic_account import suite
diff --git a/tests/test_analytic_account.py b/tests/test_analytic_account.py
index 8c02ca7..17439ec 100644
--- a/tests/test_analytic_account.py
+++ b/tests/test_analytic_account.py
@@ -10,7 +10,7 @@ if os.path.isdir(DIR):
import unittest
import trytond.tests.test_tryton
-from trytond.tests.test_tryton import RPCProxy, CONTEXT, SOCK, test_view
+from trytond.tests.test_tryton import test_view
class AnalyticAccountTestCase(unittest.TestCase):
@@ -28,11 +28,10 @@ class AnalyticAccountTestCase(unittest.TestCase):
self.assertRaises(Exception, test_view('analytic_account'))
def suite():
- return unittest.TestLoader().loadTestsFromTestCase(AnalyticAccountTestCase)
+ suite = trytond.tests.test_tryton.suite()
+ suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
+ AnalyticAccountTestCase))
+ return suite
if __name__ == '__main__':
- suiteTrytond = trytond.tests.test_tryton.suite()
- suiteAnalyticAccount = suite()
- alltests = unittest.TestSuite([suiteTrytond, suiteAnalyticAccount])
- unittest.TextTestRunner(verbosity=2).run(alltests)
- SOCK.disconnect()
+ unittest.TextTestRunner(verbosity=2).run(suite())
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index aef6a18..c24b1cc 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.4.0
+Version: 1.6.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.4/
+Download-URL: http://downloads.tryton.org/1.6/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index faea94b..3d379af 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -16,8 +16,8 @@ setup.py
./__tryton__.py
./account.py
./line.py
-tests/__init__.py
-tests/test_analytic_account.py
+./tests/__init__.py
+./tests/test_analytic_account.py
trytond_analytic_account.egg-info/PKG-INFO
trytond_analytic_account.egg-info/SOURCES.txt
trytond_analytic_account.egg-info/dependency_links.txt
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 2e0d644..f565b24 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,7 +1,5 @@
-egenix-mx-base
-trytond_company
-trytond_currency
-trytond_account
-trytond_party
-trytond >= 1.4
-trytond < 1.5
\ No newline at end of file
+trytond_company >= 1.6, < 1.7
+trytond_currency >= 1.6, < 1.7
+trytond_account >= 1.6, < 1.7
+trytond_party >= 1.6, < 1.7
+trytond >= 1.6, < 1.7
\ No newline at end of file
commit fd362a873dd02dddf44c8a5df4a8fe6343f08292
Author: Daniel Baumann <daniel at debian.org>
Date: Mon Oct 19 21:43:37 2009 +0200
Adding upstream version 1.4.0.
diff --git a/CHANGELOG b/CHANGELOG
index 0b9d220..339e5f6 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,7 @@
-Version 1.2.1 - 2009-07-07
+Version 1.4.0 - 2009-10-19
+* Bug fixes (see mercurial logs for details)
+* Convert currency on line into Function field
+* Use digits of currency for debit and credit
* Use the right currency to compute balance, debit/credit of accounts
Version 1.2.0 - 2009-04-20
diff --git a/INSTALL b/INSTALL
index 4186548..1ac2c26 100644
--- a/INSTALL
+++ b/INSTALL
@@ -6,7 +6,7 @@ Prerequisites
* Python 2.4 or later (http://www.python.org/)
* egenix-mx-base (http://www.egenix.com/products/python/)
- * trytond 1.1.x (http://www.tryton.org/)
+ * trytond (http://www.tryton.org/)
* trytond_company (http://www.tryton.org/)
* trytond_party (http://www.tryton.org/)
* trytond_currency (http://www.tryton.org/)
diff --git a/MANIFEST.in b/MANIFEST.in
index 5343ad8..c61b52d 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -7,3 +7,4 @@ include LICENSE
include *.xml
include *.odt
include *.csv
+include tests/*
diff --git a/PKG-INFO b/PKG-INFO
index 9f6eaf9..96d441c 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.2.1
+Version: 1.4.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.2/
+Download-URL: http://downloads.tryton.org/1.4/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/__init__.py b/__init__.py
index 30c257c..6cd516f 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,4 +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 account import *
from line import *
diff --git a/__tryton__.py b/__tryton__.py
index 4e76fed..dca2dab 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -4,9 +4,9 @@
'name': 'Analytic Account',
'name_de_DE': 'Kostenstellen',
'name_es_CO': 'Contabilidad Analítica',
- 'name_es_ES': 'Contabilidad Analítica',
+ 'name_es_ES': 'Contabilidad analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '1.2.1',
+ 'version': '1.4.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
@@ -28,11 +28,11 @@ Zugehörige Berichte:
Y con reportes:
- Balance Contable Analítico
''',
- 'description_es_ES': '''Módulo Financiero y de Contabilidad con:
- - Contabilidad Analítica con cualquier cantidad de planes analíticos
+ 'description_es_ES': '''Módulo financiero y de contabilidad con:
+ - Contabilidad analítica con cualquier cantidad de planes analíticos
-Y con reportes:
- - Balance Contable Analítico
+Y con informes:
+ - Balance contable analítico
''',
'description_fr_FR': '''Module comptable et financier, avec:
- Comptabilité analytique autorisant un nombre arbitraire d'axes.
diff --git a/account.py b/account.py
index e24b0fc..1f99782 100644
--- a/account.py
+++ b/account.py
@@ -31,7 +31,7 @@ class Account(ModelSQL, ModelView):
'required': "type != 'root'",
})
parent = fields.Many2One('analytic_account.account', 'Parent', select=2,
- domain="[('parent', 'child_of', root)]",
+ domain=["('parent', 'child_of', root)"],
states={
'invisible': "type == 'root'",
'required': "type != 'root'",
@@ -145,7 +145,7 @@ class Account(ModelSQL, ModelView):
'ON (c.id = aa.company) ' \
'WHERE a.type != \'view\' ' \
'AND a.id IN (' + \
- ','.join(['%s' for x in all_ids]) + ') ' \
+ ','.join(('%s',) * len(all_ids)) + ') ' \
'AND ' + line_query + ' ' \
'AND a.active ' \
'GROUP BY a.id, c.currency', all_ids)
@@ -214,7 +214,7 @@ class Account(ModelSQL, ModelView):
'ON (c.id = aa.company) ' \
'WHERE a.type != \'view\' ' \
'AND a.id IN (' + \
- ','.join(['%s' for x in ids]) + ') ' \
+ ','.join(('%s',) * len(ids)) + ') ' \
'AND ' + line_query + ' ' \
'AND a.active ' \
'GROUP BY a.id, c.currency', ids)
diff --git a/de_DE.csv b/de_DE.csv
index 59c53f2..0615357 100644
--- a/de_DE.csv
+++ b/de_DE.csv
@@ -1,16 +1,43 @@
type,name,res_id,src,value,fuzzy
+error,account.statement,0,End Balance must be %s!,Endsaldo muss %s sein!,0
+error,account.statement.line,0,Amount (%s) greater than the amount to pay of invoice!,Der eingegebene Betrag (%s) ist größer als der Rechnungsbetrag!,0
+error,account.statement.line,0,Credit or debit account on journal is the same than the statement line account!,Haben- oder Sollkonto im Journal ist das selbe Konto wie das des Zahlungspostens!,0
+error,account.statement.line,0,Please provide debit and credit account on statement journal.,Bitte Soll- und Habenkonto im Journal Zahlungsverkehr angeben.,0
error,analytic_account.account,0,You can not create recursive accounts!,Konten können nicht rekursiv angelegt werden!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Es können nicht mehrere Konten mit dem selben Wurzelkonto oder einem fehlenden erforderlichen Wurzelkonto existieren!,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Mehrere Konten zum selben Wurzelkonto nicht möglich oder erforderliches Wurzelkonto fehlt!,0
error,analytic_account.line,0,Wrong credit/debit values!,Falsche Haben/Soll-Werte!,0
error,analytic_account.line,0,"You can not create move line
-on view/inactive account!",Posten kann nicht erstellt werden,0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Buchungszeile,0
+on view/inactive account!",Keine Berechtigung für die Erstellung von Buchungszeilen!,0
+field,"account.move.line,analytic_lines",0,Analytic Lines,Kostenstelle Zeilen,0
+field,"account.statement,currency_digits",0,Currency Digits,Stellen Währung,0
+field,"account.statement,date",0,Date,Datum,0
+field,"account.statement,end_balance",0,End Balance,Endsaldo,0
+field,"account.statement,journal",0,Journal,Journal,0
+field,"account.statement.journal,company",0,Company,Unternehmen,0
+field,"account.statement.journal,currency",0,Currency,Währung,0
+field,"account.statement.journal,journal",0,Journal,Journal,0
+field,"account.statement.journal,name",0,Name,Name,0
+field,"account.statement.journal,rec_name",0,Name,Name,0
+field,"account.statement.line,account",0,Account,Konto,0
+field,"account.statement.line,amount",0,Amount,Betrag,0
+field,"account.statement.line,date",0,Date,Datum,0
+field,"account.statement.line,description",0,Description,Beschreibung,0
+field,"account.statement.line,invoice",0,Invoice,Rechnung,0
+field,"account.statement.line,move",0,Account Move,Buchung,0
+field,"account.statement.line,party",0,Party,Partei,0
+field,"account.statement.line,rec_name",0,Name,Name,0
+field,"account.statement,lines",0,Transactions,Transaktionen,0
+field,"account.statement.line,statement",0,Statement,Zahlung,0
+field,"account.statement,move_lines",0,Move Lines,Buchungsposten,0
+field,"account.statement,rec_name",0,Name,Name,0
+field,"account.statement,start_balance",0,Start Balance,Anfangssaldo,0
+field,"account.statement,state",0,State,Status,0
field,"analytic_account.account,active",0,Active,Aktiv,0
field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Konto,0
field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Name,0
field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Auswahl,0
-field,"analytic_account.account,balance",0,Balance,Bilanz,0
-field,"analytic_account.account,childs",0,Children,Untergeordnet (Analytische Konten),0
+field,"analytic_account.account,balance",0,Balance,Saldo,0
+field,"analytic_account.account,childs",0,Children,Untergeordnet (Kostenstellen),0
field,"analytic_account.account,code",0,Code,Code,0
field,"analytic_account.account,company",0,Company,Unternehmen,0
field,"analytic_account.account,credit",0,Credit,Haben,0
@@ -20,12 +47,12 @@ field,"analytic_account.account,debit",0,Debit,Soll,0
field,"analytic_account.account,display_balance",0,Display Balance,Ansicht Bilanz,0
field,"analytic_account.account,mandatory",0,Mandatory,Erforderlich,0
field,"analytic_account.account,name",0,Name,Name,0
-field,"analytic_account.account,note",0,Note,Bemerkung,0
+field,"analytic_account.account,note",0,Note,Notiz,0
field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Enddatum,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Ab Datum,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Anfangsdatum,0
field,"analytic_account.account,parent",0,Parent,Übergeordnet (Kostenstelle),0
field,"analytic_account.account,rec_name",0,Name,Name,0
-field,"analytic_account.account,root",0,Root,Wurzelkonto,0
+field,"analytic_account.account,root",0,Root,Wurzel,0
field,"analytic_account.account.selection,accounts",0,Accounts,Konten,0
field,"analytic_account.account.selection,rec_name",0,Name,Name,0
field,"analytic_account.account,state",0,State,Status,0
@@ -34,6 +61,7 @@ field,"analytic_account.line,account",0,Account,Konto,0
field,"analytic_account.line,active",0,Active,Aktiv,0
field,"analytic_account.line,credit",0,Credit,Haben,0
field,"analytic_account.line,currency",0,Currency,Währung,0
+field,"analytic_account.line,currency_digits",0,Currency Digits,Währung (signifikante Stellen),0
field,"analytic_account.line,date",0,Date,Datum,0
field,"analytic_account.line,debit",0,Debit,Soll,0
field,"analytic_account.line,journal",0,Journal,Journal,0
@@ -41,40 +69,62 @@ field,"analytic_account.line,move_line",0,Account Move Line,Buchungszeile,0
field,"analytic_account.line,name",0,Name,Name,0
field,"analytic_account.line,party",0,Party,Partei,0
field,"analytic_account.line,rec_name",0,Name,Name,0
-field,"analytic_account.line,reference",0,Reference,Referenz,0
+field,"analytic_account.line,reference",0,Reference,Verweis,0
+model,"account.statement.journal,name",0,Statement Journal,Journal Zahlungsverkehr,0
+model,"account.statement.line,name",0,Account Statement Line,Zahlungsverkehr Position,0
+model,"account.statement,name",0,Account Statement,Zahlungsverkehr,0
model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Kostenstelle - Kostenstelle Auswahl,0
model,"analytic_account.account,name",0,Analytic Account,Kostenstelle,0
model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Kontenplan Öffnen Init,0
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Kostenstelle Auswahl,0
-model,"analytic_account.line,name",0,Analytic Line,Buchungszeile,0
+model,"analytic_account.line,name",0,Analytic Line,Kostenstelle Zeile,0
model,"ir.action,name",act_account_form,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
-model,"ir.action,name",act_line_form,Analytic Lines,Buchungszeilen,0
-model,"ir.action,name",act_open_account,Open Account,Kostenstelle öffnen,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Plan für Kostenstellen öffnen,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
+model,"ir.action,name",act_line_form,Analytic Lines,Kostenstelle Zeilen,0
+model,"ir.action,name",act_open_account,Open Account,Konto öffnen,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan Öffnen,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstelle,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Plan für Kostenstellen öffnen,0
-model,"res.group,name",group_analytic_admin,Analytic Administration,Administration Kostenstellen,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Kostenstellenplan öffnen,0
+model,"res.group,name",group_analytic_admin,Analytic Administration,Kostenstellen Administration,0
+selection,"account.statement,state",0,Canceled,Annulliert,0
+selection,"account.statement,state",0,Draft,Entwurf,0
+selection,"account.statement,state",0,Posted,Festgeschrieben,0
+selection,"account.statement,state",0,Validated,Geprüft,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Haben - Soll,0
selection,"analytic_account.account,display_balance",0,Debit - Credit,Soll - Haben,0
selection,"analytic_account.account,state",0,Closed,Geschlossen,0
selection,"analytic_account.account,state",0,Draft,Entwurf,0
selection,"analytic_account.account,state",0,Opened,Geöffnet,0
selection,"analytic_account.account,type",0,Normal,Normal,0
-selection,"analytic_account.account,type",0,Root,Wurzelkonto,0
+selection,"analytic_account.account,type",0,Root,Wurzel,0
selection,"analytic_account.account,type",0,View,Sicht,0
view,account.move.line,0,Analytic,Kostenstelle,0
+view,account.statement,0,Bank Statement,Bankauszug,0
+view,account.statement,0,Bank Statement Lines,Posten Bankauszüge,0
+view,account.statement,0,Bank Statements,Bankauszüge,0
+view,account.statement,0,Cancel,Annullieren,0
+view,account.statement,0,Move Lines,Buchungsposten,0
+view,account.statement,0,Post,Festschreiben,0
+view,account.statement,0,Reset to Draft,Auf Entwurf zurücksetzen,0
+view,account.statement,0,Statement,Zahlung,0
+view,account.statement,0,Statement Lines,Zahlungsposten,0
+view,account.statement,0,Statements,Zahlungsverkehr,0
+view,account.statement,0,Validate,Prüfen,0
+view,account.statement.journal,0,Statement Journal,Journal Zahlungsverkehr,0
+view,account.statement.journal,0,Statement Journals,Journale Zahlungsverkehr,0
+view,account.statement.line,0,Bank Statement Line,Posten Bankauszüge,0
+view,account.statement.line,0,Statement Line,Zahlungsposten,0
+view,account.statement.line,0,Statement Lines,Zahlungsposten,0
view,analytic_account.account,0,Analytic Account,Kostenstelle,0
view,analytic_account.account,0,Analytic Accounts,Kostenstellen,0
view,analytic_account.account,0,General Information,Allgemein,0
-view,analytic_account.account,0,Notes,Bemerkungen,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Plan für Kostenstellen öffnen,0
-view,analytic_account.line,0,Analytic Line,Buchungszeile,0
-view,analytic_account.line,0,Analytic Lines,Buchungszeilen,0
+view,analytic_account.account,0,Notes,Notizen,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Kostenstellenplan öffnen,0
+view,analytic_account.line,0,Analytic Line,Kostenstelle,0
+view,analytic_account.line,0,Analytic Lines,Kostenstellen,0
view,analytic_account.line,0,General Information,Allgemein,0
wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Abbrechen,0
wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Öffnen,0
diff --git a/es_CO.csv b/es_CO.csv
index b35bebd..bd77e3a 100644
--- a/es_CO.csv
+++ b/es_CO.csv
@@ -34,6 +34,7 @@ field,"analytic_account.line,account",0,Account,Cuenta,0
field,"analytic_account.line,active",0,Active,Activo,0
field,"analytic_account.line,credit",0,Credit,Crédito,0
field,"analytic_account.line,currency",0,Currency,Moneda,0
+field,"analytic_account.line,currency_digits",0,Currency Digits,Dígitos de Moneda,0
field,"analytic_account.line,date",0,Date,Fecha,0
field,"analytic_account.line,debit",0,Debit,Débito,0
field,"analytic_account.line,journal",0,Journal,Diario,0
diff --git a/es_ES.csv b/es_ES.csv
index 1990395..096d02e 100644
--- a/es_ES.csv
+++ b/es_ES.csv
@@ -1,12 +1,12 @@
type,name,res_id,src,value,fuzzy
error,analytic_account.account,0,You can not create recursive accounts!,No puede crear cuentas recursivas,0
error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta raiz obligatoria,0
-error,analytic_account.line,0,Wrong credit/debit values!,Los valores haber/deber son incorrectos,0
+error,analytic_account.line,0,Wrong credit/debit values!,Los valores debe/haber son incorrectos,0
error,analytic_account.line,0,"You can not create move line
on view/inactive account!","No puede crear una linea de asiento
-en una cuenta inactiva/vista",0
+en una cuenta vista/inactiva",0
field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas analíticas,0
-field,"analytic_account.account,active",0,Active,Activo,0
+field,"analytic_account.account,active",0,Active,Activa,0
field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Cuenta,0
field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nombre,0
field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Selección,0
@@ -16,7 +16,7 @@ field,"analytic_account.account,code",0,Code,Código,0
field,"analytic_account.account,company",0,Company,Empresa,0
field,"analytic_account.account,credit",0,Credit,Haber,0
field,"analytic_account.account,currency",0,Currency,Divisa,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Dígitos de la divisa,0
+field,"analytic_account.account,currency_digits",0,Currency Digits,Decimales de la divisa,0
field,"analytic_account.account,debit",0,Debit,Debe,0
field,"analytic_account.account,display_balance",0,Display Balance,Mostrar balance,0
field,"analytic_account.account,mandatory",0,Mandatory,Obligatorio,0
@@ -32,20 +32,21 @@ field,"analytic_account.account.selection,rec_name",0,Name,Nombre,0
field,"analytic_account.account,state",0,State,Estado,0
field,"analytic_account.account,type",0,Type,Tipo,0
field,"analytic_account.line,account",0,Account,Cuenta,0
-field,"analytic_account.line,active",0,Active,Activo,0
+field,"analytic_account.line,active",0,Active,Activa,0
field,"analytic_account.line,credit",0,Credit,Haber,0
field,"analytic_account.line,currency",0,Currency,Divisa,0
+field,"analytic_account.line,currency_digits",0,Currency Digits,Decimales de la divisa,0
field,"analytic_account.line,date",0,Date,Fecha,0
field,"analytic_account.line,debit",0,Debit,Debe,0
field,"analytic_account.line,journal",0,Journal,Diario,0
-field,"analytic_account.line,move_line",0,Account Move Line,Linea de asiento de cuenta,0
+field,"analytic_account.line,move_line",0,Account Move Line,Linea de asiento contable,0
field,"analytic_account.line,name",0,Name,Nombre,0
field,"analytic_account.line,party",0,Party,Tercero,0
field,"analytic_account.line,rec_name",0,Name,Nombre,0
field,"analytic_account.line,reference",0,Reference,Referencia,0
model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Cuenta analítica - Selección de cuenta analítica,0
model,"analytic_account.account,name",0,Analytic Account,Cuenta analítica,0
-model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Abrir inicio de plan de cuentas,0
+model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Inicializa la apertura del plan de cuentas,0
model,"analytic_account.account.selection,name",0,Analytic Account Selection,Selección de cuenta analítica,0
model,"analytic_account.line,name",0,Analytic Line,Línea analítica,0
model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas analíticas,0
@@ -53,17 +54,17 @@ model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas analíticas,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas analíticas,0
model,"ir.action,name",act_line_form,Analytic Lines,Líneas analíticas,0
model,"ir.action,name",act_open_account,Open Account,Abrir cuenta,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Abrir plan de cuentas analítico,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Abrir plan contable analítico,0
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta analítica,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas analíticas,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas analíticas,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir plan de cuentas analítico,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir plan contable analítico,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Administración analítica,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Haber - Debe,0
selection,"analytic_account.account,display_balance",0,Debit - Credit,Debe - Haber,0
-selection,"analytic_account.account,state",0,Closed,Cerrado,0
+selection,"analytic_account.account,state",0,Closed,Cerrada,0
selection,"analytic_account.account,state",0,Draft,Borrador,0
-selection,"analytic_account.account,state",0,Opened,Abierto,0
+selection,"analytic_account.account,state",0,Opened,Abierta,0
selection,"analytic_account.account,type",0,Normal,Normal,0
selection,"analytic_account.account,type",0,Root,Raíz,0
selection,"analytic_account.account,type",0,View,Vista,0
diff --git a/fr_FR.csv b/fr_FR.csv
index f5d1075..9870532 100644
--- a/fr_FR.csv
+++ b/fr_FR.csv
@@ -13,7 +13,7 @@ field,"analytic_account.account-analytic_account.account.selection,selection",0,
field,"analytic_account.account,balance",0,Balance,Balance,0
field,"analytic_account.account,childs",0,Children,Enfants,0
field,"analytic_account.account,code",0,Code,Code,0
-field,"analytic_account.account,company",0,Company,Compagnie,0
+field,"analytic_account.account,company",0,Company,Société,0
field,"analytic_account.account,credit",0,Credit,Crédit,0
field,"analytic_account.account,currency",0,Currency,Devise,0
field,"analytic_account.account,currency_digits",0,Currency Digits,Décimales de la devise,0
@@ -35,6 +35,7 @@ field,"analytic_account.line,account",0,Account,Compte,0
field,"analytic_account.line,active",0,Active,Actif,0
field,"analytic_account.line,credit",0,Credit,Crédit,0
field,"analytic_account.line,currency",0,Currency,Devise,0
+field,"analytic_account.line,currency_digits",0,Currency Digits,Décimales de la devise,0
field,"analytic_account.line,date",0,Date,Date,0
field,"analytic_account.line,debit",0,Debit,Débit,0
field,"analytic_account.line,journal",0,Journal,Journal,0
diff --git a/line.py b/line.py
index 28ea0f0..ab49501 100644
--- a/line.py
+++ b/line.py
@@ -4,6 +4,7 @@
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
import mx.DateTime
+from trytond.backend import TableHandler
class Line(ModelSQL, ModelView):
@@ -12,10 +13,15 @@ class Line(ModelSQL, ModelView):
_description = __doc__
name = fields.Char('Name', required=True)
- debit = fields.Numeric('Debit', digits=(16, 2))
- credit = fields.Numeric('Credit', digits=(16, 2))
- #TODO wrong field as currency comes from move_line
- currency = fields.Many2One('currency.currency', 'Currency', required=True)
+ debit = fields.Numeric('Debit', digits="(16, currency_digits)",
+ depends=['currency_digits'])
+ credit = fields.Numeric('Credit', digits="(16, currency_digits)",
+ depends=['currency_digits'])
+ currency = fields.Function('get_currency', type='many2one',
+ relation='currency.currency', string='Currency',
+ on_change_with=['move_line'])
+ currency_digits = fields.Function('get_currency_digits', type='integer',
+ string='Currency Digits', on_change_with=['move_line'])
account = fields.Many2One('analytic_account.account', 'Account',
required=True, select=1, domain=[('type', '!=', 'view')])
move_line = fields.Many2One('account.move.line', 'Account Move Line',
@@ -43,16 +49,12 @@ class Line(ModelSQL, ModelView):
})
self._order.insert(0, ('date', 'ASC'))
- def default_currency(self, cursor, user, context=None):
- company_obj = self.pool.get('company.company')
- currency_obj = self.pool.get('currency.currency')
- if context is None:
- context = {}
- if context.get('company'):
- company = company_obj.browse(cursor, user, context['company'],
- context=context)
- return company.currency.id
- return False
+ def init(self, cursor, module_name):
+ super(Line, self).init(cursor, module_name)
+ table = TableHandler(cursor, self, module_name)
+
+ # Migration from 1.2 currency has been changed in function field
+ table.not_null_action('currency', action='remove')
def default_date(self, cursor, user, context=None):
date_obj = self.pool.get('ir.date')
@@ -61,6 +63,36 @@ class Line(ModelSQL, ModelView):
def default_active(self, cursor, user, context=None):
return True
+ def on_change_with_currency(self, cursor, user, ids, vals,
+ context=None):
+ move_line_obj = self.pool.get('account.move.line')
+ if vals.get('move_line'):
+ move_line = move_line_obj.browse(cursor, user, vals['move_line'],
+ context=context)
+ return move_line.account.company.currency.id
+ return False
+
+ def get_currency(self, cursor, user, ids, name, arg, context=None):
+ res = {}
+ for line in self.browse(cursor, user, ids, context=context):
+ res[line.id] = line.move_line.account.company.currency.id
+ return res
+
+ def on_change_with_currency_digits(self, cursor, user, ids, vals,
+ context=None):
+ move_line_obj = self.pool.get('account.move.line')
+ if vals.get('move_line'):
+ move_line = move_line_obj.browse(cursor, user, vals['move_line'],
+ context=context)
+ return move_line.account.company.currency.digits
+ return 2
+
+ def get_currency_digits(self, cursor, user, ids, name, arg, context=None):
+ res = {}
+ for line in self.browse(cursor, user, ids, context=context):
+ res[line.id] = line.move_line.account.company.currency.digits
+ return res
+
def query_get(self, cursor, user, obj='l', context=None):
'''
Return SQL clause for analytic line depending of the context.
diff --git a/setup.py b/setup.py
index 1643553..a59bd9a 100644
--- a/setup.py
+++ b/setup.py
@@ -9,17 +9,12 @@ info = eval(file('__tryton__.py').read())
requires = ['egenix-mx-base']
for dep in info.get('depends', []):
- match = re.compile(
- '(ir|res|workflow|webdav)((\s|$|<|>|<=|>=|==|!=).*?$)').match(dep)
- if match:
- continue
- else:
- dep = 'trytond_' + dep
- requires.append(dep)
+ if not re.match(r'(ir|res|workflow|webdav)(\W|$)', dep):
+ requires.append('trytond_' + dep)
major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
requires.append('trytond >= %s.%s' % (major_version, minor_version))
-requires.append('trytond < %s.%s' % (major_version, str(int(minor_version) + 1)))
+requires.append('trytond < %s.%s' % (major_version, int(minor_version) + 1))
setup(name='trytond_analytic_account',
version=info.get('version', '0.0.1'),
diff --git a/tests/__init__.py b/tests/__init__.py
new file mode 100644
index 0000000..ce64084
--- /dev/null
+++ b/tests/__init__.py
@@ -0,0 +1,4 @@
+#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_analytic_account import *
diff --git a/tests/test_analytic_account.py b/tests/test_analytic_account.py
new file mode 100644
index 0000000..8c02ca7
--- /dev/null
+++ b/tests/test_analytic_account.py
@@ -0,0 +1,38 @@
+#!/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.
+
+import sys, os
+DIR = os.path.abspath(os.path.normpath(os.path.join(__file__,
+ '..', '..', '..', '..', '..', 'trytond')))
+if os.path.isdir(DIR):
+ sys.path.insert(0, os.path.dirname(DIR))
+
+import unittest
+import trytond.tests.test_tryton
+from trytond.tests.test_tryton import RPCProxy, CONTEXT, SOCK, test_view
+
+
+class AnalyticAccountTestCase(unittest.TestCase):
+ '''
+ Test AnalyticAccount module.
+ '''
+
+ def setUp(self):
+ trytond.tests.test_tryton.install_module('analytic_account')
+
+ def test0005views(self):
+ '''
+ Test views.
+ '''
+ self.assertRaises(Exception, test_view('analytic_account'))
+
+def suite():
+ return unittest.TestLoader().loadTestsFromTestCase(AnalyticAccountTestCase)
+
+if __name__ == '__main__':
+ suiteTrytond = trytond.tests.test_tryton.suite()
+ suiteAnalyticAccount = suite()
+ alltests = unittest.TestSuite([suiteTrytond, suiteAnalyticAccount])
+ unittest.TextTestRunner(verbosity=2).run(alltests)
+ SOCK.disconnect()
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index b7fd7c9..aef6a18 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.2.1
+Version: 1.4.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.2/
+Download-URL: http://downloads.tryton.org/1.4/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index 026aaac..faea94b 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -16,6 +16,8 @@ setup.py
./__tryton__.py
./account.py
./line.py
+tests/__init__.py
+tests/test_analytic_account.py
trytond_analytic_account.egg-info/PKG-INFO
trytond_analytic_account.egg-info/SOURCES.txt
trytond_analytic_account.egg-info/dependency_links.txt
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 2057b75..2e0d644 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -3,5 +3,5 @@ trytond_company
trytond_currency
trytond_account
trytond_party
-trytond >= 1.2
-trytond < 1.3
\ No newline at end of file
+trytond >= 1.4
+trytond < 1.5
\ No newline at end of file
commit 1cb6152dc0ebfc0829e173ce16d420d0182ca29a
Author: Daniel Baumann <daniel at debian.org>
Date: Fri Jul 10 14:22:41 2009 +0200
Adding upstream version 1.2.1.
diff --git a/CHANGELOG b/CHANGELOG
index d28f483..0b9d220 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 1.2.1 - 2009-07-07
+* Use the right currency to compute balance, debit/credit of accounts
+
Version 1.2.0 - 2009-04-20
* Bug fixes (see mercurial logs for details)
* Allow egg installation
diff --git a/PKG-INFO b/PKG-INFO
index 1580a19..9f6eaf9 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.2.0
+Version: 1.2.1
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
diff --git a/__tryton__.py b/__tryton__.py
index 61f092d..4e76fed 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -6,7 +6,7 @@
'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad Analítica',
'name_fr_FR': 'Comptabilité analytique',
- 'version': '1.2.0',
+ 'version': '1.2.1',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
diff --git a/account.py b/account.py
index f5f267f..e24b0fc 100644
--- a/account.py
+++ b/account.py
@@ -133,16 +133,22 @@ class Account(ModelSQL, ModelView):
line_query = line_obj.query_get(cursor, user, context=context)
cursor.execute('SELECT a.id, ' \
'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), ' \
- 'l.currency ' \
+ 'c.currency ' \
'FROM analytic_account_account a ' \
'LEFT JOIN analytic_account_line l ' \
'ON (a.id = l.account) ' \
+ 'LEFT JOIN account_move_line ml ' \
+ 'ON (ml.id = l.move_line) ' \
+ 'LEFT JOIN account_account aa ' \
+ 'ON (aa.id = ml.account) ' \
+ 'LEFT JOIN company_company c ' \
+ 'ON (c.id = aa.company) ' \
'WHERE a.type != \'view\' ' \
'AND a.id IN (' + \
','.join(['%s' for x in all_ids]) + ') ' \
'AND ' + line_query + ' ' \
'AND a.active ' \
- 'GROUP BY a.id, l.currency', all_ids)
+ 'GROUP BY a.id, c.currency', all_ids)
account_sum = {}
id2currency = {}
for account_id, sum, currency_id in cursor.fetchall():
@@ -196,16 +202,22 @@ class Account(ModelSQL, ModelView):
line_query = line_obj.query_get(cursor, user, context=context)
cursor.execute('SELECT a.id, ' \
'SUM(COALESCE(l.' + name + ', 0)), ' \
- 'l.currency ' \
+ 'c.currency ' \
'FROM analytic_account_account a ' \
'LEFT JOIN analytic_account_line l ' \
'ON (a.id = l.account) ' \
+ 'LEFT JOIN account_move_line ml ' \
+ 'ON (ml.id = l.move_line) ' \
+ 'LEFT JOIN account_account aa ' \
+ 'ON (aa.id = ml.account) ' \
+ 'LEFT JOIN company_company c ' \
+ 'ON (c.id = aa.company) ' \
'WHERE a.type != \'view\' ' \
'AND a.id IN (' + \
','.join(['%s' for x in ids]) + ') ' \
'AND ' + line_query + ' ' \
'AND a.active ' \
- 'GROUP BY a.id, l.currency', ids)
+ 'GROUP BY a.id, c.currency', ids)
id2currency = {}
for account_id, sum, currency_id in cursor.fetchall():
diff --git a/line.py b/line.py
index 59d51aa..28ea0f0 100644
--- a/line.py
+++ b/line.py
@@ -14,6 +14,7 @@ class Line(ModelSQL, ModelView):
name = fields.Char('Name', required=True)
debit = fields.Numeric('Debit', digits=(16, 2))
credit = fields.Numeric('Credit', digits=(16, 2))
+ #TODO wrong field as currency comes from move_line
currency = fields.Many2One('currency.currency', 'Currency', required=True)
account = fields.Many2One('analytic_account.account', 'Account',
required=True, select=1, domain=[('type', '!=', 'view')])
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index c4cde62..b7fd7c9 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.2.0
+Version: 1.2.1
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
commit 05fb4dbb2a3ec7fa026c41aa1cf2221b7e66aaee
Author: Daniel Baumann <daniel at debian.org>
Date: Tue Apr 21 11:09:57 2009 +0200
Adding upstream version 1.2.0.
diff --git a/CHANGELOG b/CHANGELOG
index 9801fce..d28f483 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,5 @@
-Version 1.0.1 - 2008-12-01
+Version 1.2.0 - 2009-04-20
+* Bug fixes (see mercurial logs for details)
* Allow egg installation
Version 1.0.0 - 2008-11-17
diff --git a/INSTALL b/INSTALL
index 7b25fe0..4186548 100644
--- a/INSTALL
+++ b/INSTALL
@@ -5,7 +5,8 @@ Prerequisites
-------------
* Python 2.4 or later (http://www.python.org/)
- * trytond 0.0.x (http://www.tryton.org/)
+ * egenix-mx-base (http://www.egenix.com/products/python/)
+ * trytond 1.1.x (http://www.tryton.org/)
* trytond_company (http://www.tryton.org/)
* trytond_party (http://www.tryton.org/)
* trytond_currency (http://www.tryton.org/)
@@ -14,7 +15,7 @@ Prerequisites
Installation
------------
-Once you've downloaded and unpacked a trytond_analytic_account source release, enter the
+Once you've downloaded and unpacked the trytond_analytic_account source release, enter the
directory where the archive was unpacked, and run:
python setup.py install
diff --git a/PKG-INFO b/PKG-INFO
index ab7fc01..1580a19 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.0.1
+Version: 1.2.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.0/
+Download-URL: http://downloads.tryton.org/1.2/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/__tryton__.py b/__tryton__.py
index e18061c..61f092d 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -3,9 +3,10 @@
{
'name': 'Analytic Account',
'name_de_DE': 'Kostenstellen',
- 'name_fr_FR': 'Comptabilité analytique',
+ 'name_es_CO': 'Contabilidad Analítica',
'name_es_ES': 'Contabilidad Analítica',
- 'version': '1.0.1',
+ 'name_fr_FR': 'Comptabilité analytique',
+ 'version': '1.2.0',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
@@ -21,11 +22,11 @@ And with report:
Zugehörige Berichte:
- Plan für Kostenstellen
''',
- 'description_fr_FR': '''Module comptable et financier, avec:
- - Comptabilité analytique autorisant un nombre arbitraire d'axes.
+ 'description_es_CO': '''Módulo Financiero y de Contabilidad con:
+ - Contabilidad Analítica con cualquier cantidad de planes analíticos
-Et le rapport:
- - Balance comptable analytique
+Y con reportes:
+ - Balance Contable Analítico
''',
'description_es_ES': '''Módulo Financiero y de Contabilidad con:
- Contabilidad Analítica con cualquier cantidad de planes analíticos
@@ -33,6 +34,12 @@ Et le rapport:
Y con reportes:
- Balance Contable Analítico
''',
+ 'description_fr_FR': '''Module comptable et financier, avec:
+ - Comptabilité analytique autorisant un nombre arbitraire d'axes.
+
+Et le rapport:
+ - Balance comptable analytique
+''',
'depends': [
'ir',
'company',
@@ -48,6 +55,7 @@ Y con reportes:
],
'translation': [
'de_DE.csv',
+ 'es_CO.csv',
'es_ES.csv',
'fr_FR.csv',
],
diff --git a/account.py b/account.py
index 8ebb791..f5f267f 100644
--- a/account.py
+++ b/account.py
@@ -1,20 +1,18 @@
-#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.
"Account"
-
-from trytond.osv import fields, OSV
-from trytond.wizard import Wizard, WizardOSV
+from trytond.model import ModelView, ModelSQL, fields
+from trytond.wizard import Wizard
from decimal import Decimal
import copy
-class Account(OSV):
+class Account(ModelSQL, ModelView):
'Analytic Account'
_name = 'analytic_account.account'
_description = __doc__
name = fields.Char('Name', required=True, translate=True, select=1)
- complete_name = fields.Function('get_complete_name', type='char',
- string='Name')
code = fields.Char('Code', select=1)
active = fields.Boolean('Active', select=2)
company = fields.Many2One('company.company', 'Company')
@@ -38,7 +36,7 @@ class Account(OSV):
'invisible': "type == 'root'",
'required': "type != 'root'",
})
- childs = fields.One2Many('analytic_account.account', 'parent', 'Childs')
+ childs = fields.One2Many('analytic_account.account', 'parent', 'Children')
balance = fields.Function('get_balance', digits="(16, currency_digits)",
string='Balance')
credit = fields.Function('get_credit_debit', digits="(16, currency_digits)",
@@ -77,8 +75,7 @@ class Account(OSV):
if context is None:
context = {}
if context.get('company'):
- return company_obj.name_get(cursor, user, context['company'],
- context=context)[0]
+ return context['company']
return False
def default_currency(self, cursor, user, context=None):
@@ -89,8 +86,7 @@ class Account(OSV):
if context.get('company'):
company = company_obj.browse(cursor, user, context['company'],
context=context)
- return currency_obj.name_get(cursor, user, company.currency.id,
- context=context)[0]
+ return company.currency.id
return False
def default_type(self, cursor, user, context=None):
@@ -120,10 +116,6 @@ class Account(OSV):
res[account.id] = account.currency.digits
return res
- def get_complete_name(self, cursor, user, ids, name, arg, context=None):
- res = self.name_get(cursor, user, ids, context=context)
- return dict(res)
-
def get_balance(self, cursor, user, ids, name, arg, context=None):
res = {}
line_obj = self.pool.get('analytic_account.line')
@@ -233,29 +225,29 @@ class Account(OSV):
id2account[account_id].currency, sum)
return res
- def name_search(self, cursor, user, name='', args=None, operator='ilike',
- context=None, limit=None):
- if name:
- ids = self.search(cursor, user,
- [('code', 'like', name + '%')] + args,
- limit=limit, context=context)
- if not ids:
- ids = self.search(cursor, user,
- [(self._rec_name, operator, name)] + args,
- limit=limit, context=context)
- else:
- ids = self.search(cursor, user, args, limit=limit, context=context)
- res = self.name_get(cursor, user, ids, context=context)
+ def get_rec_name(self, cursor, user, ids, name, arg, context=None):
+ if not ids:
+ return {}
+ res = {}
+ for account in self.browse(cursor, user, ids, context=context):
+ if account.code:
+ res[account.id] = account.code + ' - ' + unicode(account.name)
+ else:
+ res[account.id] = unicode(account.name)
return res
- def name_get(self, cursor, user, ids, context=None):
- if not ids:
- return []
- if isinstance(ids, (int, long)):
- ids = [ids]
- return [(r['id'], r['code'] and r['code'] + ' - ' + unicode(r[self._rec_name]) \
- or unicode(r[self._rec_name])) for r in self.read(cursor, user, ids,
- [self._rec_name, 'code'], context=context, load='_classic_write')]
+ def search_rec_name(self, cursor, user, name, args, context=None):
+ args2 = []
+ i = 0
+ while i < len(args):
+ ids = self.search(cursor, user, [('code', args[i][1], args[i][2])],
+ limit=1, context=context)
+ if ids:
+ args2.append(('code', args[i][1], args[i][2]))
+ else:
+ args2.append((self._rec_name, args[i][1], args[i][2]))
+ i += 1
+ return args2
def convert_view(self, cursor, user, tree, context=None):
res = tree.xpath('//field[@name=\'analytic_accounts\']')
@@ -305,8 +297,10 @@ class Account(OSV):
Account()
-class OpenChartAccountInit(WizardOSV):
+class OpenChartAccountInit(ModelView):
+ 'Open Chart Account Init'
_name = 'analytic_account.account.open_chart_account.init'
+ _description = __doc__
start_date = fields.Date('Start Date')
end_date = fields.Date('End Date')
@@ -357,15 +351,15 @@ class OpenChartAccount(Wizard):
OpenChartAccount()
-class AccountSelection(OSV):
+class AccountSelection(ModelSQL, ModelView):
'Analytic Account Selection'
_name = 'analytic_account.account.selection'
_description = __doc__
_rec_name = 'id'
- accounts = fields.Many2Many('analytic_account.account',
- 'analytic_account_account_selection_rel', 'selection', 'account',
- 'Accounts')
+ accounts = fields.Many2Many(
+ 'analytic_account.account-analytic_account.account.selection',
+ 'selection', 'account', 'Accounts')
def __init__(self):
super(AccountSelection, self).__init__()
@@ -401,3 +395,16 @@ class AccountSelection(OSV):
return True
AccountSelection()
+
+
+class AccountAccountSelection(ModelSQL):
+ 'Analytic Account - Analytic Account Selection'
+ _name = 'analytic_account.account-analytic_account.account.selection'
+ _description = __doc__
+ _table = 'analytic_account_account_selection_rel'
+ selection = fields.Many2One('analytic_account.account.selection',
+ 'Selection', ondelete='CASCADE', required=True, select=1)
+ account = fields.Many2One('analytic_account.account', 'Account',
+ ondelete='RESTRICT', required=True, select=1)
+
+AccountAccountSelection()
diff --git a/account.xml b/account.xml
index 958aae4..495c7c8 100644
--- a/account.xml
+++ b/account.xml
@@ -1,5 +1,6 @@
<?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. -->
+<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
+this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
<menuitem name="Analytic Account" parent="account.menu_account_configuration"
@@ -18,7 +19,7 @@
<label name="active"/>
<field name="active" xexpand="0" width="100"/>
<notebook colspan="6">
- <page string="General Information">
+ <page string="General Information" id="general">
<label name="type"/>
<field name="type"/>
<label name="display_balance"/>
@@ -34,11 +35,11 @@
<label name="mandatory"/>
<field name="mandatory"/>
</page>
- <page string="Notes">
+ <page string="Notes" id="notes">
<field name="note"/>
</page>
</notebook>
- <group colspan="6" col="2">
+ <group colspan="6" col="2" id="state">
<label name="state"/>
<field name="state"/>
</group>
@@ -53,7 +54,7 @@
<field name="arch" type="xml">
<![CDATA[
<tree string="Analytic Accounts">
- <field name="complete_name"/>
+ <field name="rec_name"/>
<field name="company" select="2"/>
<field name="type" select="2"/>
<field name="active" select="2" tree_invisible="1"/>
@@ -124,7 +125,7 @@
<field name="act_window" ref="act_account_tree2"/>
</record>
<record model="ir.action.wizard" id="act_open_chart_account">
- <field name="name">Open Chart of Analytic Account</field>
+ <field name="name">Open Chart of Analytic Accounts</field>
<field name="wiz_name">analytic_account.account.open_chart_account</field>
</record>
<menuitem parent="account.menu_charts" action="act_open_chart_account"
@@ -145,12 +146,23 @@
<field name="perm_delete" eval="True"/>
</record>
+ <record model="ir.rule.group" id="rule_group_account">
+ <field name="model" search="[('model', '=', 'analytic_account.account')]"/>
+ <field name="global_p" eval="True"/>
+ </record>
+ <record model="ir.rule" id="rule_account1">
+ <field name="field" search="[('name', '=', 'company'), ('model.model', '=', 'analytic_account.account')]"/>
+ <field name="operator">in</field>
+ <field name="operand">User/Current Companies</field>
+ <field name="rule_group" ref="rule_group_account"/>
+ </record>
+
<record model="ir.ui.view" id="open_chart_account_init_view_form">
<field name="model">analytic_account.account.open_chart_account.init</field>
<field name="type">form</field>
<field name="arch" type="xml">
<![CDATA[
- <form string="Open Chart of Analytic Account" col="2">
+ <form string="Open Chart of Analytic Accounts" col="2">
<label name="start_date"/>
<field name="start_date"/>
<label name="end_date"/>
diff --git a/de_DE.csv b/de_DE.csv
index 514a7a7..59c53f2 100644
--- a/de_DE.csv
+++ b/de_DE.csv
@@ -6,11 +6,13 @@ error,analytic_account.line,0,"You can not create move line
on view/inactive account!",Posten kann nicht erstellt werden,0
field,"account.move.line,analytic_lines",0,Analytic Lines,Buchungszeile,0
field,"analytic_account.account,active",0,Active,Aktiv,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Konto,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Name,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Auswahl,0
field,"analytic_account.account,balance",0,Balance,Bilanz,0
-field,"analytic_account.account,childs",0,Childs,Untergeordnet (Analytische Konten),0
+field,"analytic_account.account,childs",0,Children,Untergeordnet (Analytische Konten),0
field,"analytic_account.account,code",0,Code,Code,0
field,"analytic_account.account,company",0,Company,Unternehmen,0
-field,"analytic_account.account,complete_name",0,Name,Name,0
field,"analytic_account.account,credit",0,Credit,Haben,0
field,"analytic_account.account,currency",0,Currency,Währung,0
field,"analytic_account.account,currency_digits",0,Currency Digits,Währung (signifikante Stellen),0
@@ -22,8 +24,10 @@ field,"analytic_account.account,note",0,Note,Bemerkung,0
field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Enddatum,0
field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Ab Datum,0
field,"analytic_account.account,parent",0,Parent,Übergeordnet (Kostenstelle),0
+field,"analytic_account.account,rec_name",0,Name,Name,0
field,"analytic_account.account,root",0,Root,Wurzelkonto,0
field,"analytic_account.account.selection,accounts",0,Accounts,Konten,0
+field,"analytic_account.account.selection,rec_name",0,Name,Name,0
field,"analytic_account.account,state",0,State,Status,0
field,"analytic_account.account,type",0,Type,Typ,0
field,"analytic_account.line,account",0,Account,Konto,0
@@ -36,17 +40,23 @@ field,"analytic_account.line,journal",0,Journal,Journal,0
field,"analytic_account.line,move_line",0,Account Move Line,Buchungszeile,0
field,"analytic_account.line,name",0,Name,Name,0
field,"analytic_account.line,party",0,Party,Partei,0
+field,"analytic_account.line,rec_name",0,Name,Name,0
field,"analytic_account.line,reference",0,Reference,Referenz,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Kostenstelle - Kostenstelle Auswahl,0
+model,"analytic_account.account,name",0,Analytic Account,Kostenstelle,0
+model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Kontenplan Öffnen Init,0
+model,"analytic_account.account.selection,name",0,Analytic Account Selection,Kostenstelle Auswahl,0
+model,"analytic_account.line,name",0,Analytic Line,Buchungszeile,0
model,"ir.action,name",act_account_form,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
model,"ir.action,name",act_line_form,Analytic Lines,Buchungszeilen,0
model,"ir.action,name",act_open_account,Open Account,Kostenstelle öffnen,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Plan für Kostenstellen öffnen,0
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Kostenstellen,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Plan für Kostenstellen öffnen,0
model,"res.group,name",group_analytic_admin,Analytic Administration,Administration Kostenstellen,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Haben - Soll,0
selection,"analytic_account.account,display_balance",0,Debit - Credit,Soll - Haben,0
@@ -62,6 +72,7 @@ view,analytic_account.account,0,Analytic Accounts,Kostenstellen,0
view,analytic_account.account,0,General Information,Allgemein,0
view,analytic_account.account,0,Notes,Bemerkungen,0
view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Plan für Kostenstellen öffnen,0
view,analytic_account.line,0,Analytic Line,Buchungszeile,0
view,analytic_account.line,0,Analytic Lines,Buchungszeilen,0
view,analytic_account.line,0,General Information,Allgemein,0
diff --git a/es_ES.csv b/es_CO.csv
similarity index 68%
copy from es_ES.csv
copy to es_CO.csv
index 22b024d..b35bebd 100644
--- a/es_ES.csv
+++ b/es_CO.csv
@@ -1,16 +1,18 @@
type,name,res_id,src,value,fuzzy
-error,analytic_account.account,0,You can not create recursive accounts!,No puede crear cuentas recursivas!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,No se puede cancelar muchas cuentas con la misma cuenta base o una cuenta base obligatoria!,0
+error,analytic_account.account,0,You can not create recursive accounts!,¡No se puede crear cuentas recursivas!,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,¡No se puede tener varias cuentas con la misma cuenta padre o tantas sin cuenta padre!,0
error,analytic_account.line,0,Wrong credit/debit values!,Valores erróneos de crédito/debito!,0
error,analytic_account.line,0,"You can not create move line
-on view/inactive account!",No puede crear líneas de movimientos,0
+on view/inactive account!",No puede crearse línea de movimiento,0
field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas Analíticas,0
field,"analytic_account.account,active",0,Active,Activo,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Cuenta,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nombre,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Selección,0
field,"analytic_account.account,balance",0,Balance,Balance,0
-field,"analytic_account.account,childs",0,Childs,Hij at s,0
+field,"analytic_account.account,childs",0,Children,Hij at s,0
field,"analytic_account.account,code",0,Code,Código,0
field,"analytic_account.account,company",0,Company,Compañía,0
-field,"analytic_account.account,complete_name",0,Name,Nombre,0
field,"analytic_account.account,credit",0,Credit,Crédito,0
field,"analytic_account.account,currency",0,Currency,Moneda,0
field,"analytic_account.account,currency_digits",0,Currency Digits,Dígitos de Moneda,0
@@ -19,11 +21,13 @@ field,"analytic_account.account,display_balance",0,Display Balance,Mostrar Balan
field,"analytic_account.account,mandatory",0,Mandatory,Obligatorio,0
field,"analytic_account.account,name",0,Name,Nombre,0
field,"analytic_account.account,note",0,Note,Nota,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha Final,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha Inicial,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha Fin,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha Inicio,0
field,"analytic_account.account,parent",0,Parent,Padre,0
+field,"analytic_account.account,rec_name",0,Name,Nombre,0
field,"analytic_account.account,root",0,Root,Raíz,0
field,"analytic_account.account.selection,accounts",0,Accounts,Cuentas,0
+field,"analytic_account.account.selection,rec_name",0,Name,Nombre,0
field,"analytic_account.account,state",0,State,Estado,0
field,"analytic_account.account,type",0,Type,Tipo,0
field,"analytic_account.line,account",0,Account,Cuenta,0
@@ -33,20 +37,27 @@ field,"analytic_account.line,currency",0,Currency,Moneda,0
field,"analytic_account.line,date",0,Date,Fecha,0
field,"analytic_account.line,debit",0,Debit,Débito,0
field,"analytic_account.line,journal",0,Journal,Diario,0
-field,"analytic_account.line,move_line",0,Account Move Line,Movimiento de Línea de Cuenta,0
+field,"analytic_account.line,move_line",0,Account Move Line,Linea de Movimiento de Cuenta,0
field,"analytic_account.line,name",0,Name,Nombre,0
-field,"analytic_account.line,party",0,Party,Tercero,0
+field,"analytic_account.line,party",0,Party,Terceros,0
+field,"analytic_account.line,rec_name",0,Name,Nombre,0
field,"analytic_account.line,reference",0,Reference,Referencia,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Cuenta Analítica - Selección de Cuenta Analítica,0
+model,"analytic_account.account,name",0,Analytic Account,Cuenta Analítica,0
+model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Abrir Inicio de Plan de Cuentas,0
+model,"analytic_account.account.selection,name",0,Analytic Account Selection,Selección de Cuenta Analítica,0
+model,"analytic_account.line,name",0,Analytic Line,Línea Analítica,0
model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas Analíticas,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas Analíticas,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas Analíticas,0
model,"ir.action,name",act_line_form,Analytic Lines,Líneas Analíticas,0
model,"ir.action,name",act_open_account,Open Account,Abrir Cuenta,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta Analítica,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas Analíticas,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
+model,"res.group,name",group_analytic_admin,Analytic Administration,Administración Analítica,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédito - Débito,0
selection,"analytic_account.account,display_balance",0,Debit - Credit,Débito - Crédito,0
selection,"analytic_account.account,state",0,Closed,Cerrado,0
@@ -60,8 +71,8 @@ view,analytic_account.account,0,Analytic Account,Cuenta Analítica,0
view,analytic_account.account,0,Analytic Accounts,Cuentas Analíticas,0
view,analytic_account.account,0,General Information,Información General,0
view,analytic_account.account,0,Notes,Notas,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
-view,analytic_account.line,0,Analytic Line,Línea Analítica,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Abrir Plan de Cuentas Analítico,0
+view,analytic_account.line,0,Analytic Line,Línea analítica,0
view,analytic_account.line,0,Analytic Lines,Líneas Analíticas,0
view,analytic_account.line,0,General Information,Información General,0
wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Cancelar,0
diff --git a/es_ES.csv b/es_ES.csv
index 22b024d..1990395 100644
--- a/es_ES.csv
+++ b/es_ES.csv
@@ -1,54 +1,66 @@
type,name,res_id,src,value,fuzzy
-error,analytic_account.account,0,You can not create recursive accounts!,No puede crear cuentas recursivas!,0
-error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,No se puede cancelar muchas cuentas con la misma cuenta base o una cuenta base obligatoria!,0
-error,analytic_account.line,0,Wrong credit/debit values!,Valores erróneos de crédito/debito!,0
+error,analytic_account.account,0,You can not create recursive accounts!,No puede crear cuentas recursivas,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,No puede tener varias cuentas con la misma cuenta raiz o falta una cuenta raiz obligatoria,0
+error,analytic_account.line,0,Wrong credit/debit values!,Los valores haber/deber son incorrectos,0
error,analytic_account.line,0,"You can not create move line
-on view/inactive account!",No puede crear líneas de movimientos,0
-field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas Analíticas,0
+on view/inactive account!","No puede crear una linea de asiento
+en una cuenta inactiva/vista",0
+field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas analíticas,0
field,"analytic_account.account,active",0,Active,Activo,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Cuenta,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nombre,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Selección,0
field,"analytic_account.account,balance",0,Balance,Balance,0
-field,"analytic_account.account,childs",0,Childs,Hij at s,0
+field,"analytic_account.account,childs",0,Children,Hijos,0
field,"analytic_account.account,code",0,Code,Código,0
-field,"analytic_account.account,company",0,Company,Compañía,0
-field,"analytic_account.account,complete_name",0,Name,Nombre,0
-field,"analytic_account.account,credit",0,Credit,Crédito,0
-field,"analytic_account.account,currency",0,Currency,Moneda,0
-field,"analytic_account.account,currency_digits",0,Currency Digits,Dígitos de Moneda,0
-field,"analytic_account.account,debit",0,Debit,Débito,0
-field,"analytic_account.account,display_balance",0,Display Balance,Mostrar Balance,0
+field,"analytic_account.account,company",0,Company,Empresa,0
+field,"analytic_account.account,credit",0,Credit,Haber,0
+field,"analytic_account.account,currency",0,Currency,Divisa,0
+field,"analytic_account.account,currency_digits",0,Currency Digits,Dígitos de la divisa,0
+field,"analytic_account.account,debit",0,Debit,Debe,0
+field,"analytic_account.account,display_balance",0,Display Balance,Mostrar balance,0
field,"analytic_account.account,mandatory",0,Mandatory,Obligatorio,0
field,"analytic_account.account,name",0,Name,Nombre,0
field,"analytic_account.account,note",0,Note,Nota,0
-field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha Final,0
-field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha Inicial,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha fin,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha inicio,0
field,"analytic_account.account,parent",0,Parent,Padre,0
+field,"analytic_account.account,rec_name",0,Name,Nombre,0
field,"analytic_account.account,root",0,Root,Raíz,0
field,"analytic_account.account.selection,accounts",0,Accounts,Cuentas,0
+field,"analytic_account.account.selection,rec_name",0,Name,Nombre,0
field,"analytic_account.account,state",0,State,Estado,0
field,"analytic_account.account,type",0,Type,Tipo,0
field,"analytic_account.line,account",0,Account,Cuenta,0
field,"analytic_account.line,active",0,Active,Activo,0
-field,"analytic_account.line,credit",0,Credit,Crédito,0
-field,"analytic_account.line,currency",0,Currency,Moneda,0
+field,"analytic_account.line,credit",0,Credit,Haber,0
+field,"analytic_account.line,currency",0,Currency,Divisa,0
field,"analytic_account.line,date",0,Date,Fecha,0
-field,"analytic_account.line,debit",0,Debit,Débito,0
+field,"analytic_account.line,debit",0,Debit,Debe,0
field,"analytic_account.line,journal",0,Journal,Diario,0
-field,"analytic_account.line,move_line",0,Account Move Line,Movimiento de Línea de Cuenta,0
+field,"analytic_account.line,move_line",0,Account Move Line,Linea de asiento de cuenta,0
field,"analytic_account.line,name",0,Name,Nombre,0
field,"analytic_account.line,party",0,Party,Tercero,0
+field,"analytic_account.line,rec_name",0,Name,Nombre,0
field,"analytic_account.line,reference",0,Reference,Referencia,0
-model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.action,name",act_line_form,Analytic Lines,Líneas Analíticas,0
-model,"ir.action,name",act_open_account,Open Account,Abrir Cuenta,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
-model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta Analítica,0
-model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas Analíticas,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
-selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédito - Débito,0
-selection,"analytic_account.account,display_balance",0,Debit - Credit,Débito - Crédito,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Cuenta analítica - Selección de cuenta analítica,0
+model,"analytic_account.account,name",0,Analytic Account,Cuenta analítica,0
+model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Abrir inicio de plan de cuentas,0
+model,"analytic_account.account.selection,name",0,Analytic Account Selection,Selección de cuenta analítica,0
+model,"analytic_account.line,name",0,Analytic Line,Línea analítica,0
+model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas analíticas,0
+model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas analíticas,0
+model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas analíticas,0
+model,"ir.action,name",act_line_form,Analytic Lines,Líneas analíticas,0
+model,"ir.action,name",act_open_account,Open Account,Abrir cuenta,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Abrir plan de cuentas analítico,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta analítica,0
+model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas analíticas,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas analíticas,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Abrir plan de cuentas analítico,0
+model,"res.group,name",group_analytic_admin,Analytic Administration,Administración analítica,0
+selection,"analytic_account.account,display_balance",0,Credit - Debit,Haber - Debe,0
+selection,"analytic_account.account,display_balance",0,Debit - Credit,Debe - Haber,0
selection,"analytic_account.account,state",0,Closed,Cerrado,0
selection,"analytic_account.account,state",0,Draft,Borrador,0
selection,"analytic_account.account,state",0,Opened,Abierto,0
@@ -56,13 +68,13 @@ selection,"analytic_account.account,type",0,Normal,Normal,0
selection,"analytic_account.account,type",0,Root,Raíz,0
selection,"analytic_account.account,type",0,View,Vista,0
view,account.move.line,0,Analytic,Analítica,0
-view,analytic_account.account,0,Analytic Account,Cuenta Analítica,0
-view,analytic_account.account,0,Analytic Accounts,Cuentas Analíticas,0
-view,analytic_account.account,0,General Information,Información General,0
+view,analytic_account.account,0,Analytic Account,Cuenta analítica,0
+view,analytic_account.account,0,Analytic Accounts,Cuentas analíticas,0
+view,analytic_account.account,0,General Information,Información general,0
view,analytic_account.account,0,Notes,Notas,0
-view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
-view,analytic_account.line,0,Analytic Line,Línea Analítica,0
-view,analytic_account.line,0,Analytic Lines,Líneas Analíticas,0
-view,analytic_account.line,0,General Information,Información General,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Abrir plan de cuentas analítico,0
+view,analytic_account.line,0,Analytic Line,Línea analítica,0
+view,analytic_account.line,0,Analytic Lines,Líneas analíticas,0
+view,analytic_account.line,0,General Information,Información general,0
wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Cancelar,0
wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Abrir,0
diff --git a/fr_FR.csv b/fr_FR.csv
index 6e64243..f5d1075 100644
--- a/fr_FR.csv
+++ b/fr_FR.csv
@@ -3,15 +3,17 @@ error,analytic_account.account,0,You can not create recursive accounts!,Vous ne
error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte avec une racine obligatoire!,0
error,analytic_account.line,0,Wrong credit/debit values!,Valeurs crédit/débit incorrectes,0
error,analytic_account.line,0,"You can not create move line
-on view/inactive account!","Vous ne pouvez pas créer des mouvements
-sur des compte inactifs ou de type vue!",0
+on view/inactive account!","Vous ne pouvez pas créer de mouvements
+sur des comptes inactifs ou de type vue!",0
field,"account.move.line,analytic_lines",0,Analytic Lines,Lignes analytiques,0
field,"analytic_account.account,active",0,Active,Actif,0
+field,"analytic_account.account-analytic_account.account.selection,account",0,Account,Compte,0
+field,"analytic_account.account-analytic_account.account.selection,rec_name",0,Name,Nom,0
+field,"analytic_account.account-analytic_account.account.selection,selection",0,Selection,Sélection,0
field,"analytic_account.account,balance",0,Balance,Balance,0
-field,"analytic_account.account,childs",0,Childs,Enfants,0
+field,"analytic_account.account,childs",0,Children,Enfants,0
field,"analytic_account.account,code",0,Code,Code,0
-field,"analytic_account.account,company",0,Company,Companie,0
-field,"analytic_account.account,complete_name",0,Name,Nom,0
+field,"analytic_account.account,company",0,Company,Compagnie,0
field,"analytic_account.account,credit",0,Credit,Crédit,0
field,"analytic_account.account,currency",0,Currency,Devise,0
field,"analytic_account.account,currency_digits",0,Currency Digits,Décimales de la devise,0
@@ -23,12 +25,14 @@ field,"analytic_account.account,note",0,Note,Note,0
field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Date de fin,0
field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Date de début,0
field,"analytic_account.account,parent",0,Parent,Parent,0
+field,"analytic_account.account,rec_name",0,Name,Nom,0
field,"analytic_account.account,root",0,Root,Racine,0
field,"analytic_account.account.selection,accounts",0,Accounts,Comptes,0
+field,"analytic_account.account.selection,rec_name",0,Name,Nom,0
field,"analytic_account.account,state",0,State,État,0
field,"analytic_account.account,type",0,Type,Type,0
field,"analytic_account.line,account",0,Account,Compte,0
-field,"analytic_account.line,active",0,Active,actif,0
+field,"analytic_account.line,active",0,Active,Actif,0
field,"analytic_account.line,credit",0,Credit,Crédit,0
field,"analytic_account.line,currency",0,Currency,Devise,0
field,"analytic_account.line,date",0,Date,Date,0
@@ -37,17 +41,24 @@ field,"analytic_account.line,journal",0,Journal,Journal,0
field,"analytic_account.line,move_line",0,Account Move Line,Ligne de mouvement comptable,0
field,"analytic_account.line,name",0,Name,Nom,0
field,"analytic_account.line,party",0,Party,Partenaire,0
+field,"analytic_account.line,rec_name",0,Name,Nom,0
field,"analytic_account.line,reference",0,Reference,Référence,0
+model,"analytic_account.account-analytic_account.account.selection,name",0,Analytic Account - Analytic Account Selection,Compte analytique - Sélection compte analytique,0
+model,"analytic_account.account,name",0,Analytic Account,Compte analytique,0
+model,"analytic_account.account.open_chart_account.init,name",0,Open Chart Account Init,Ouvrir le plan comptable - Initialisation,0
+model,"analytic_account.account.selection,name",0,Analytic Account Selection,Sélection compte analytique,0
+model,"analytic_account.line,name",0,Analytic Line,Ligne analytique,0
model,"ir.action,name",act_account_form,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_account_tree,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_account_tree2,Analytic Accounts,Comptes analytiques,0
model,"ir.action,name",act_line_form,Analytic Lines,Lignes analytiques,0
model,"ir.action,name",act_open_account,Open Account,Ouvrir le compte,0
-model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Comptes analytiques,0
model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
-model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
+model,"res.group,name",group_analytic_admin,Analytic Administration,Administration analytique,0
selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédit - Débit,0
selection,"analytic_account.account,display_balance",0,Debit - Credit,Débit - Crédit,0
selection,"analytic_account.account,state",0,Closed,Fermé,0
@@ -62,6 +73,7 @@ view,analytic_account.account,0,Analytic Accounts,Comptes analytiques,0
view,analytic_account.account,0,General Information,Informations générales,0
view,analytic_account.account,0,Notes,Notes,0
view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Accounts,Ouvrir le plan comptable analytique,0
view,analytic_account.line,0,Analytic Line,Ligne analytique,0
view,analytic_account.line,0,Analytic Lines,Lignes analytiques,0
view,analytic_account.line,0,General Information,Informations générales,0
diff --git a/line.py b/line.py
index 668bf99..59d51aa 100644
--- a/line.py
+++ b/line.py
@@ -1,12 +1,12 @@
#This file is part of Tryton. The COPYRIGHT file at the top level
#of this repository contains the full copyright notices and license terms.
"Line"
-
-from trytond.osv import fields, OSV
+from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard
+import mx.DateTime
-class Line(OSV):
+class Line(ModelSQL, ModelView):
'Analytic Line'
_name = 'analytic_account.line'
_description = __doc__
@@ -50,8 +50,7 @@ class Line(OSV):
if context.get('company'):
company = company_obj.browse(cursor, user, context['company'],
context=context)
- return currency_obj.name_get(cursor, user, company.currency.id,
- context=context)[0]
+ return company.currency.id
return False
def default_date(self, cursor, user, context=None):
@@ -69,11 +68,17 @@ class Line(OSV):
if context is None:
context = {}
- res = obj + '.active '
+ res = obj + '.active'
if context.get('start_date'):
- res += 'AND ' + obj + '.date >= ' + str(context['start_date'])
+ # Check start_date
+ mx.DateTime.strptime(str(context['start_date']), '%Y-%m-%d')
+ res += ' AND ' + obj + '.date >= date(\'' + \
+ str(context['start_date']) + '\')'
if context.get('end_date'):
- res += 'AND ' + obj + '.date <= ' + str(context['end_date'])
+ # Check end_date
+ mx.DateTime.strptime(str(context['end_date']), '%Y-%m-%d')
+ res += ' AND ' + obj + '.date <= date(\'' + \
+ str(context['end_date']) + '\')'
return res
def check_account(self, cursor, user, ids):
@@ -87,7 +92,7 @@ class Line(OSV):
Line()
-class MoveLine(OSV):
+class MoveLine(ModelSQL, ModelView):
_name = 'account.move.line'
analytic_lines = fields.One2Many('analytic_account.line', 'move_line',
'Analytic Lines')
diff --git a/line.xml b/line.xml
index 18f7b3a..a8981fb 100644
--- a/line.xml
+++ b/line.xml
@@ -1,5 +1,6 @@
<?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. -->
+<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
+this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
<record model="ir.ui.view" id="line_view_form">
@@ -13,7 +14,7 @@
<label name="active"/>
<field name="active" xexpand="0" width="100"/>
<notebook colspan="4">
- <page string="General Information">
+ <page string="General Information" id="general">
<label name="account"/>
<field name="account"/>
<label name="date"/>
@@ -107,9 +108,9 @@
<field name="arch" type="xml">
<![CDATA[
<data>
- <xpath expr="/form/notebook/page[@string="General Information"]"
+ <xpath expr="/form/notebook/page[@id="general"]"
position="after">
- <page string="Analytic" col="1">
+ <page string="Analytic" col="1" id="analytic">
<separator name="analytic_lines"/>
<field name="analytic_lines"/>
</page>
diff --git a/setup.py b/setup.py
index 0d1fb24..1643553 100644
--- a/setup.py
+++ b/setup.py
@@ -7,7 +7,7 @@ import re
info = eval(file('__tryton__.py').read())
-requires = []
+requires = ['egenix-mx-base']
for dep in info.get('depends', []):
match = re.compile(
'(ir|res|workflow|webdav)((\s|$|<|>|<=|>=|==|!=).*?$)').match(dep)
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index 9839ba6..c4cde62 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.0.1
+Version: 1.2.0
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,7 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
-Download-URL: http://downloads.tryton.org/1.0/
+Download-URL: http://downloads.tryton.org/1.2/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index a5c865c..026aaac 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -7,6 +7,7 @@ README
account.xml
analytic_account.xml
de_DE.csv
+es_CO.csv
es_ES.csv
fr_FR.csv
line.xml
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
index 94effe8..2057b75 100644
--- a/trytond_analytic_account.egg-info/requires.txt
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -1,6 +1,7 @@
+egenix-mx-base
trytond_company
trytond_currency
trytond_account
trytond_party
-trytond >= 1.0
-trytond < 1.1
\ No newline at end of file
+trytond >= 1.2
+trytond < 1.3
\ No newline at end of file
commit 5aa5af2f5115651e2158761fcb5770cd3f93a3de
Author: Daniel Baumann <daniel at debian.org>
Date: Wed Jan 28 14:02:05 2009 +0100
Adding upstream version 1.0.1.
diff --git a/CHANGELOG b/CHANGELOG
index eacaaef..9801fce 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,2 +1,5 @@
+Version 1.0.1 - 2008-12-01
+* Allow egg installation
+
Version 1.0.0 - 2008-11-17
* Initial release
diff --git a/PKG-INFO b/PKG-INFO
index 88c3df4..ab7fc01 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond_analytic_account
-Version: 1.0.0
+Version: 1.0.1
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,6 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
+Download-URL: http://downloads.tryton.org/1.0/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/__tryton__.py b/__tryton__.py
index 8804d31..e18061c 100644
--- a/__tryton__.py
+++ b/__tryton__.py
@@ -5,7 +5,7 @@
'name_de_DE': 'Kostenstellen',
'name_fr_FR': 'Comptabilité analytique',
'name_es_ES': 'Contabilidad Analítica',
- 'version': '1.0.0',
+ 'version': '1.0.1',
'author': 'B2CK',
'email': 'info at b2ck.com',
'website': 'http://www.tryton.org/',
diff --git a/setup.py b/setup.py
index 0eee4a9..0d1fb24 100644
--- a/setup.py
+++ b/setup.py
@@ -27,6 +27,8 @@ setup(name='trytond_analytic_account',
author=info.get('author', ''),
author_email=info.get('email', ''),
url=info.get('website', ''),
+ download_url="http://downloads.tryton.org/" + \
+ info.get('version', '0.0.1').rsplit('.', 1)[0] + '/',
package_dir={'trytond.modules.analytic_account': '.'},
packages=[
'trytond.modules.analytic_account',
@@ -53,4 +55,9 @@ setup(name='trytond_analytic_account',
],
license='GPL-3',
install_requires=requires,
+ zip_safe=False,
+ entry_points="""
+ [trytond.modules]
+ analytic_account = trytond.modules.analytic_account
+ """,
)
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
index 418ec8f..9839ba6 100644
--- a/trytond_analytic_account.egg-info/PKG-INFO
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: trytond-analytic-account
-Version: 1.0.0
+Version: 1.0.1
Summary: Financial and Accounting Module with:
- Analytic accounting with any number of analytic charts
@@ -11,6 +11,7 @@ Home-page: http://www.tryton.org/
Author: B2CK
Author-email: info at b2ck.com
License: GPL-3
+Download-URL: http://downloads.tryton.org/1.0/
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
index 39ccaa4..a5c865c 100644
--- a/trytond_analytic_account.egg-info/SOURCES.txt
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -18,5 +18,7 @@ setup.py
trytond_analytic_account.egg-info/PKG-INFO
trytond_analytic_account.egg-info/SOURCES.txt
trytond_analytic_account.egg-info/dependency_links.txt
+trytond_analytic_account.egg-info/entry_points.txt
+trytond_analytic_account.egg-info/not-zip-safe
trytond_analytic_account.egg-info/requires.txt
trytond_analytic_account.egg-info/top_level.txt
\ No newline at end of file
diff --git a/trytond_analytic_account.egg-info/entry_points.txt b/trytond_analytic_account.egg-info/entry_points.txt
new file mode 100644
index 0000000..2053961
--- /dev/null
+++ b/trytond_analytic_account.egg-info/entry_points.txt
@@ -0,0 +1,4 @@
+
+ [trytond.modules]
+ analytic_account = trytond.modules.analytic_account
+
\ No newline at end of file
diff --git a/trytond_analytic_account.egg-info/not-zip-safe b/trytond_analytic_account.egg-info/not-zip-safe
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/trytond_analytic_account.egg-info/not-zip-safe
@@ -0,0 +1 @@
+
commit 59fecd7f60f5f81d46100f6722d2780068c91dd9
Author: Daniel Baumann <daniel at debian.org>
Date: Tue Nov 18 13:05:53 2008 +0100
Adding upstream version 1.0.0.
diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
index 0000000..eacaaef
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,2 @@
+Version 1.0.0 - 2008-11-17
+* Initial release
diff --git a/COPYRIGHT b/COPYRIGHT
new file mode 100644
index 0000000..37fef2d
--- /dev/null
+++ b/COPYRIGHT
@@ -0,0 +1,17 @@
+Copyright (C) 2004-2008 Tiny SPRL.
+Copyright (C) 2008 Cédric Krier.
+Copyright (C) 2008 Bertrand Chenal.
+Copyright (C) 2008 B2CK SPRL.
+
+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/>.
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 0000000..7b25fe0
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,33 @@
+Installing trytond_analytic_account
+==========================
+
+Prerequisites
+-------------
+
+ * Python 2.4 or later (http://www.python.org/)
+ * trytond 0.0.x (http://www.tryton.org/)
+ * trytond_company (http://www.tryton.org/)
+ * trytond_party (http://www.tryton.org/)
+ * trytond_currency (http://www.tryton.org/)
+ * trytond_account (http://www.tryton.org/)
+
+Installation
+------------
+
+Once you've downloaded and unpacked a trytond_analytic_account source release, enter the
+directory where the archive was unpacked, and run:
+
+ python setup.py install
+
+Note that you may need administrator/root privileges for this step, as
+this command will by default attempt to install module to the Python
+site-packages directory on your system.
+
+For advanced options, please refer to the easy_install and/or the distutils
+documentation:
+
+ http://peak.telecommunity.com/DevCenter/EasyInstall
+ http://docs.python.org/inst/inst.html
+
+To use without installation, extract the archive into ``trytond/modules`` with
+the directory name account_analytic.
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..94a9ed0
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ 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/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ <program> Copyright (C) <year> <name of author>
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/MANIFEST.in b/MANIFEST.in
new file mode 100644
index 0000000..5343ad8
--- /dev/null
+++ b/MANIFEST.in
@@ -0,0 +1,9 @@
+include INSTALL
+include README
+include TODO
+include COPYRIGHT
+include CHANGELOG
+include LICENSE
+include *.xml
+include *.odt
+include *.csv
diff --git a/PKG-INFO b/PKG-INFO
new file mode 100644
index 0000000..88c3df4
--- /dev/null
+++ b/PKG-INFO
@@ -0,0 +1,29 @@
+Metadata-Version: 1.0
+Name: trytond_analytic_account
+Version: 1.0.0
+Summary: Financial and Accounting Module with:
+ - Analytic accounting with any number of analytic charts
+
+And with report:
+ - Analytic account balance
+
+Home-page: http://www.tryton.org/
+Author: B2CK
+Author-email: info at b2ck.com
+License: GPL-3
+Description: UNKNOWN
+Platform: UNKNOWN
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Plugins
+Classifier: Intended Audience :: Developers
+Classifier: Intended Audience :: Financial and Insurance Industry
+Classifier: Intended Audience :: Legal Industry
+Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Natural Language :: English
+Classifier: Natural Language :: French
+Classifier: Natural Language :: German
+Classifier: Natural Language :: Spanish
+Classifier: Operating System :: OS Independent
+Classifier: Programming Language :: Python
+Classifier: Topic :: Office/Business
+Classifier: Topic :: Office/Business :: Financial :: Accounting
diff --git a/README b/README
new file mode 100644
index 0000000..0003e0b
--- /dev/null
+++ b/README
@@ -0,0 +1,36 @@
+trytond_analytic_account
+========================
+
+The analytic_account module of the Tryton application platform.
+See __tryton__.py
+
+Installing
+----------
+
+See INSTALL
+
+Support
+-------
+
+If you encounter any problems with Tryton, please don't hesitate to ask
+questions on the Tryton bug tracker, mailing list, wiki or IRC channel:
+
+ http://bugs.tryton.org/
+ http://groups.tryton.org/
+ http://wiki.tryton.org/
+ irc://irc.freenode.net/tryton
+
+License
+-------
+
+See LICENSE
+
+Copyright
+---------
+
+See COPYRIGHT
+
+
+For more information please visit the Tryton web site:
+
+ http://www.tryton.org/
diff --git a/__init__.py b/__init__.py
new file mode 100644
index 0000000..30c257c
--- /dev/null
+++ b/__init__.py
@@ -0,0 +1,4 @@
+#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 account import *
+from line import *
diff --git a/__tryton__.py b/__tryton__.py
new file mode 100644
index 0000000..8804d31
--- /dev/null
+++ b/__tryton__.py
@@ -0,0 +1,54 @@
+#This file is part of Tryton. The COPYRIGHT file at the top level of
+#this repository contains the full copyright notices and license terms.
+{
+ 'name': 'Analytic Account',
+ 'name_de_DE': 'Kostenstellen',
+ 'name_fr_FR': 'Comptabilité analytique',
+ 'name_es_ES': 'Contabilidad Analítica',
+ 'version': '1.0.0',
+ 'author': 'B2CK',
+ 'email': 'info at b2ck.com',
+ 'website': 'http://www.tryton.org/',
+ 'description': '''Financial and Accounting Module with:
+ - Analytic accounting with any number of analytic charts
+
+And with report:
+ - Analytic account balance
+''',
+ 'description_de_DE': '''Modul für Buchhhaltung mit:
+ - Kostenstellen mit einer beliebigen Anzahl von Tabellen
+
+Zugehörige Berichte:
+ - Plan für Kostenstellen
+''',
+ 'description_fr_FR': '''Module comptable et financier, avec:
+ - Comptabilité analytique autorisant un nombre arbitraire d'axes.
+
+Et le rapport:
+ - Balance comptable analytique
+''',
+ 'description_es_ES': '''Módulo Financiero y de Contabilidad con:
+ - Contabilidad Analítica con cualquier cantidad de planes analíticos
+
+Y con reportes:
+ - Balance Contable Analítico
+''',
+ 'depends': [
+ 'ir',
+ 'company',
+ 'currency',
+ 'account',
+ 'party',
+ 'res',
+ ],
+ 'xml': [
+ 'analytic_account.xml',
+ 'account.xml',
+ 'line.xml',
+ ],
+ 'translation': [
+ 'de_DE.csv',
+ 'es_ES.csv',
+ 'fr_FR.csv',
+ ],
+}
diff --git a/account.py b/account.py
new file mode 100644
index 0000000..8ebb791
--- /dev/null
+++ b/account.py
@@ -0,0 +1,403 @@
+#This file is part of Tryton. The COPYRIGHT file at the top level of this repository contains the full copyright notices and license terms.
+"Account"
+
+from trytond.osv import fields, OSV
+from trytond.wizard import Wizard, WizardOSV
+from decimal import Decimal
+import copy
+
+
+class Account(OSV):
+ 'Analytic Account'
+ _name = 'analytic_account.account'
+ _description = __doc__
+
+ name = fields.Char('Name', required=True, translate=True, select=1)
+ complete_name = fields.Function('get_complete_name', type='char',
+ string='Name')
+ code = fields.Char('Code', select=1)
+ active = fields.Boolean('Active', select=2)
+ company = fields.Many2One('company.company', 'Company')
+ currency = fields.Many2One('currency.currency', 'Currency', required=True)
+ currency_digits = fields.Function('get_currency_digits', type='integer',
+ string='Currency Digits', on_change_with=['currency'])
+ type = fields.Selection([
+ ('root', 'Root'),
+ ('view', 'View'),
+ ('normal', 'Normal'),
+ ], 'Type', required=True)
+ root = fields.Many2One('analytic_account.account', 'Root', select=2,
+ domain=[('parent', '=', False)],
+ states={
+ 'invisible': "type == 'root'",
+ 'required': "type != 'root'",
+ })
+ parent = fields.Many2One('analytic_account.account', 'Parent', select=2,
+ domain="[('parent', 'child_of', root)]",
+ states={
+ 'invisible': "type == 'root'",
+ 'required': "type != 'root'",
+ })
+ childs = fields.One2Many('analytic_account.account', 'parent', 'Childs')
+ balance = fields.Function('get_balance', digits="(16, currency_digits)",
+ string='Balance')
+ credit = fields.Function('get_credit_debit', digits="(16, currency_digits)",
+ string='Credit')
+ debit = fields.Function('get_credit_debit', digits="(16, currency_digits)",
+ string='Debit')
+ state = fields.Selection([
+ ('draft', 'Draft'),
+ ('opened', 'Opened'),
+ ('closed', 'Closed'),
+ ], 'State', required=True)
+ note = fields.Text('Note')
+ display_balance = fields.Selection([
+ ('debit-credit', 'Debit - Credit'),
+ ('credit-debit', 'Credit - Debit'),
+ ], 'Display Balance', required=True)
+ mandatory = fields.Boolean('Mandatory', states={
+ 'invisible': "type != 'root'",
+ })
+
+ def __init__(self):
+ super(Account, self).__init__()
+ self._constraints += [
+ ('check_recursion', 'recursive_accounts'),
+ ]
+ self._error_messages.update({
+ 'recursive_accounts': 'You can not create recursive accounts!',
+ })
+ self._order.insert(0, ('code', 'ASC'))
+
+ def default_active(self, cursor, user, context=None):
+ return True
+
+ def default_company(self, cursor, user, context=None):
+ company_obj = self.pool.get('company.company')
+ if context is None:
+ context = {}
+ if context.get('company'):
+ return company_obj.name_get(cursor, user, context['company'],
+ context=context)[0]
+ return False
+
+ def default_currency(self, cursor, user, context=None):
+ company_obj = self.pool.get('company.company')
+ currency_obj = self.pool.get('currency.currency')
+ if context is None:
+ context = {}
+ if context.get('company'):
+ company = company_obj.browse(cursor, user, context['company'],
+ context=context)
+ return currency_obj.name_get(cursor, user, company.currency.id,
+ context=context)[0]
+ return False
+
+ def default_type(self, cursor, user, context=None):
+ return 'normal'
+
+ def default_state(self, cursor, user, context=None):
+ return 'draft'
+
+ def default_display_balance(self, cursor, user, context=None):
+ return 'credit-debit'
+
+ def default_mandatory(self, cursor, user, context=None):
+ return False
+
+ def on_change_with_currency_digits(self, cursor, user, ids, vals,
+ context=None):
+ currency_obj = self.pool.get('currency.currency')
+ if vals.get('currency'):
+ currency = currency_obj.browse(cursor, user, vals['currency'],
+ context=context)
+ return currency.digits
+ return 2
+
+ def get_currency_digits(self, cursor, user, ids, name, arg, context=None):
+ res = {}
+ for account in self.browse(cursor, user, ids, context=context):
+ res[account.id] = account.currency.digits
+ return res
+
+ def get_complete_name(self, cursor, user, ids, name, arg, context=None):
+ res = self.name_get(cursor, user, ids, context=context)
+ return dict(res)
+
+ def get_balance(self, cursor, user, ids, name, arg, context=None):
+ res = {}
+ line_obj = self.pool.get('analytic_account.line')
+ currency_obj = self.pool.get('currency.currency')
+
+ child_ids = self.search(cursor, user, [('parent', 'child_of', ids)],
+ context=context)
+ all_ids = {}.fromkeys(ids + child_ids).keys()
+
+ id2account = {}
+ accounts = self.browse(cursor, user, all_ids, context=context)
+ for account in accounts:
+ id2account[account.id] = account
+
+ line_query = line_obj.query_get(cursor, user, context=context)
+ cursor.execute('SELECT a.id, ' \
+ 'SUM((COALESCE(l.debit, 0) - COALESCE(l.credit, 0))), ' \
+ 'l.currency ' \
+ 'FROM analytic_account_account a ' \
+ 'LEFT JOIN analytic_account_line l ' \
+ 'ON (a.id = l.account) ' \
+ 'WHERE a.type != \'view\' ' \
+ 'AND a.id IN (' + \
+ ','.join(['%s' for x in all_ids]) + ') ' \
+ 'AND ' + line_query + ' ' \
+ 'AND a.active ' \
+ 'GROUP BY a.id, l.currency', all_ids)
+ account_sum = {}
+ id2currency = {}
+ for account_id, sum, currency_id in cursor.fetchall():
+ account_sum.setdefault(account_id, Decimal('0.0'))
+ if currency_id != id2account[account_id].currency.id:
+ currency = None
+ if currency_id in id2currency:
+ currency = id2currency[currency_id]
+ else:
+ currency = currency_obj.browse(cursor, user, currency_id,
+ context=context)
+ id2currency[currency.id] = currency
+ account_sum[account_id] += currency_obj.compute(cursor, user,
+ currency, sum, id2account[account_id].currency,
+ round=True, context=context)
+ else:
+ account_sum[account_id] += currency_obj.round(cursor, user,
+ id2account[account_id].currency, sum)
+
+ for account_id in ids:
+ res.setdefault(account_id, Decimal('0.0'))
+ child_ids = self.search(cursor, user, [
+ ('parent', 'child_of', [account_id]),
+ ], context=context)
+ to_currency = id2account[account_id].currency
+ for child_id in child_ids:
+ from_currency = id2account[child_id].currency
+ res[account_id] += currency_obj.compute(cursor, user,
+ from_currency, account_sum.get(child_id, Decimal('0.0')),
+ to_currency, round=True, context=context)
+ res[account_id] = currency_obj.round(cursor, user, to_currency,
+ res[account_id])
+ if id2account[account_id].display_balance == 'credit-debit':
+ res[account_id] = - res[account_id]
+ return res
+
+ def get_credit_debit(self, cursor, user, ids, name, arg, context=None):
+ res = {}
+ line_obj = self.pool.get('analytic_account.line')
+ currency_obj = self.pool.get('currency.currency')
+
+ if name not in ('credit', 'debit'):
+ raise Exception('Bad argument')
+
+ id2account = {}
+ accounts = self.browse(cursor, user, ids, context=context)
+ for account in accounts:
+ res[account.id] = Decimal('0.0')
+ id2account[account.id] = account
+
+ line_query = line_obj.query_get(cursor, user, context=context)
+ cursor.execute('SELECT a.id, ' \
+ 'SUM(COALESCE(l.' + name + ', 0)), ' \
+ 'l.currency ' \
+ 'FROM analytic_account_account a ' \
+ 'LEFT JOIN analytic_account_line l ' \
+ 'ON (a.id = l.account) ' \
+ 'WHERE a.type != \'view\' ' \
+ 'AND a.id IN (' + \
+ ','.join(['%s' for x in ids]) + ') ' \
+ 'AND ' + line_query + ' ' \
+ 'AND a.active ' \
+ 'GROUP BY a.id, l.currency', ids)
+
+ id2currency = {}
+ for account_id, sum, currency_id in cursor.fetchall():
+ if currency_id != id2account[account_id].currency.id:
+ currency = None
+ if currency_id in id2currency:
+ currency = id2currency[currency_id]
+ else:
+ currency = currency_obj.browse(cursor, user, currency_id,
+ context=context)
+ id2currency[currency.id] = currency
+ res[account_id] += currency_obj.compute(cursor, user,
+ currency, sum, id2account[account_id].currency,
+ round=True, context=context)
+ else:
+ res[account_id] += currency_obj.round(cursor, user,
+ id2account[account_id].currency, sum)
+ return res
+
+ def name_search(self, cursor, user, name='', args=None, operator='ilike',
+ context=None, limit=None):
+ if name:
+ ids = self.search(cursor, user,
+ [('code', 'like', name + '%')] + args,
+ limit=limit, context=context)
+ if not ids:
+ ids = self.search(cursor, user,
+ [(self._rec_name, operator, name)] + args,
+ limit=limit, context=context)
+ else:
+ ids = self.search(cursor, user, args, limit=limit, context=context)
+ res = self.name_get(cursor, user, ids, context=context)
+ return res
+
+ def name_get(self, cursor, user, ids, context=None):
+ if not ids:
+ return []
+ if isinstance(ids, (int, long)):
+ ids = [ids]
+ return [(r['id'], r['code'] and r['code'] + ' - ' + unicode(r[self._rec_name]) \
+ or unicode(r[self._rec_name])) for r in self.read(cursor, user, ids,
+ [self._rec_name, 'code'], context=context, load='_classic_write')]
+
+ def convert_view(self, cursor, user, tree, context=None):
+ res = tree.xpath('//field[@name=\'analytic_accounts\']')
+ if not res:
+ return
+ element_accounts = res[0]
+
+ root_account_ids = self.search(cursor, user, [
+ ('parent', '=', False),
+ ], context=context)
+ if not root_account_ids:
+ element_accounts.getparent().getparent().remove(
+ element_accounts.getparent())
+ return
+ for account_id in root_account_ids:
+ newelement = copy.copy(element_accounts)
+ newelement.tag = 'label'
+ newelement.set('name', 'analytic_account_' + str(account_id))
+ element_accounts.addprevious(newelement)
+ newelement = copy.copy(element_accounts)
+ newelement.set('name', 'analytic_account_' + str(account_id))
+ element_accounts.addprevious(newelement)
+ parent = element_accounts.getparent()
+ parent.remove(element_accounts)
+
+ def analytic_accounts_fields_get(self, cursor, user, field,
+ fields_names=None, context=None):
+ res = {}
+ if fields_names is None:
+ fields_names = []
+
+ root_account_ids = self.search(cursor, user, [
+ ('parent', '=', False),
+ ], context=context)
+ for account in self.browse(cursor, user, root_account_ids,
+ context=context):
+ name = 'analytic_account_' + str(account.id)
+ if name in fields_names or not fields_names:
+ res[name] = field.copy()
+ res[name]['required'] = account.mandatory
+ res[name]['string'] = account.name
+ res[name]['relation'] = self._name
+ res[name]['domain'] = [('root', '=', account.id),
+ ('type', '=', 'normal')]
+ return res
+
+Account()
+
+
+class OpenChartAccountInit(WizardOSV):
+ _name = 'analytic_account.account.open_chart_account.init'
+ start_date = fields.Date('Start Date')
+ end_date = fields.Date('End Date')
+
+OpenChartAccountInit()
+
+
+class OpenChartAccount(Wizard):
+ 'Open Chart Of Account'
+ _name = 'analytic_account.account.open_chart_account'
+ states = {
+ 'init': {
+ 'result': {
+ 'type': 'form',
+ 'object': 'analytic_account.account.open_chart_account.init',
+ 'state': [
+ ('end', 'Cancel', 'tryton-cancel'),
+ ('open', 'Open', 'tryton-ok', True),
+ ],
+ },
+ },
+ 'open': {
+ 'result': {
+ 'type': 'action',
+ 'action': '_action_open_chart',
+ 'state': 'end',
+ },
+ },
+ }
+
+ def _action_open_chart(self, cursor, user, data, context=None):
+ model_data_obj = self.pool.get('ir.model.data')
+ act_window_obj = self.pool.get('ir.action.act_window')
+
+ model_data_ids = model_data_obj.search(cursor, user, [
+ ('fs_id', '=', 'act_account_tree2'),
+ ('module', '=', 'analytic_account'),
+ ('inherit', '=', False),
+ ], limit=1, context=context)
+ model_data = model_data_obj.browse(cursor, user, model_data_ids[0],
+ context=context)
+ res = act_window_obj.read(cursor, user, model_data.db_id, context=context)
+ res['context'] = str({
+ 'start_date': data['form']['start_date'],
+ 'end_date': data['form']['end_date']
+ })
+ return res
+
+OpenChartAccount()
+
+
+class AccountSelection(OSV):
+ 'Analytic Account Selection'
+ _name = 'analytic_account.account.selection'
+ _description = __doc__
+ _rec_name = 'id'
+
+ accounts = fields.Many2Many('analytic_account.account',
+ 'analytic_account_account_selection_rel', 'selection', 'account',
+ 'Accounts')
+
+ def __init__(self):
+ super(AccountSelection, self).__init__()
+ self._constraints += [
+ ('check_root', 'root_account'),
+ ]
+ self._error_messages.update({
+ 'root_account': 'Can not have many accounts with the same root ' \
+ 'or a missing mandatory root account!',
+ })
+
+ def check_root(self, cursor, user, ids):
+ "Check Root"
+ account_obj = self.pool.get('analytic_account.account')
+
+ root_account_ids = account_obj.search(cursor, user, [
+ ('parent', '=', False),
+ ])
+ root_accounts = account_obj.browse(cursor, user, root_account_ids)
+
+ selections = self.browse(cursor, user, ids)
+ for selection in selections:
+ roots = []
+ for account in selection.accounts:
+ if account.root.id in roots:
+ return False
+ roots.append(account.root.id)
+ if user: #Root can by pass
+ for account in root_accounts:
+ if account.mandatory:
+ if not account.id in roots:
+ return False
+ return True
+
+AccountSelection()
diff --git a/account.xml b/account.xml
new file mode 100644
index 0000000..958aae4
--- /dev/null
+++ b/account.xml
@@ -0,0 +1,163 @@
+<?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. -->
+<tryton>
+ <data>
+ <menuitem name="Analytic Account" parent="account.menu_account_configuration"
+ id="menu_analytic_account_configuration"/>
+
+ <record model="ir.ui.view" id="account_view_form">
+ <field name="model">analytic_account.account</field>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <form string="Analytic Account" col="6">
+ <label name="name"/>
+ <field name="name"/>
+ <label name="code"/>
+ <field name="code"/>
+ <label name="active"/>
+ <field name="active" xexpand="0" width="100"/>
+ <notebook colspan="6">
+ <page string="General Information">
+ <label name="type"/>
+ <field name="type"/>
+ <label name="display_balance"/>
+ <field name="display_balance"/>
+ <label name="root"/>
+ <field name="root"/>
+ <label name="parent"/>
+ <field name="parent"/>
+ <label name="company"/>
+ <field name="company"/>
+ <label name="currency"/>
+ <field name="currency"/>
+ <label name="mandatory"/>
+ <field name="mandatory"/>
+ </page>
+ <page string="Notes">
+ <field name="note"/>
+ </page>
+ </notebook>
+ <group colspan="6" col="2">
+ <label name="state"/>
+ <field name="state"/>
+ </group>
+ </form>
+ ]]>
+ </field>
+ </record>
+ <record model="ir.ui.view" id="account_view_tree">
+ <field name="model">analytic_account.account</field>
+ <field name="type">tree</field>
+ <field name="field_childs">childs</field>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <tree string="Analytic Accounts">
+ <field name="complete_name"/>
+ <field name="company" select="2"/>
+ <field name="type" select="2"/>
+ <field name="active" select="2" tree_invisible="1"/>
+ <field name="name" select="1" tree_invisible="1"/>
+ <field name="code" select="1" tree_invisible="1"/>
+ </tree>
+ ]]>
+ </field>
+ </record>
+ <record model="ir.action.act_window" id="act_account_form">
+ <field name="name">Analytic Accounts</field>
+ <field name="res_model">analytic_account.account</field>
+ <field name="view_type">form</field>
+ </record>
+ <record model="ir.action.act_window.view" id="act_account_form_view1">
+ <field name="sequence" eval="10"/>
+ <field name="view" ref="account_view_tree"/>
+ <field name="act_window" ref="act_account_form"/>
+ </record>
+ <record model="ir.action.act_window.view" id="act_account_form_view2">
+ <field name="sequence" eval="20"/>
+ <field name="view" ref="account_view_form"/>
+ <field name="act_window" ref="act_account_form"/>
+ </record>
+ <menuitem parent="menu_analytic_account_configuration"
+ action="act_account_form" id="menu_account_form"/>
+ <record model="ir.action.act_window" id="act_account_tree">
+ <field name="name">Analytic Accounts</field>
+ <field name="res_model">analytic_account.account</field>
+ <field name="view_type">tree</field>
+ <field name="domain">[('parent', '=', False)]</field>
+ </record>
+ <record model="ir.action.act_window.view" id="act_account_tree_view1">
+ <field name="sequence" eval="10"/>
+ <field name="view" ref="account_view_tree"/>
+ <field name="act_window" ref="act_account_tree"/>
+ </record>
+ <menuitem parent="menu_account_form"
+ action="act_account_tree" id="menu_account_tree"/>
+ <record model="ir.ui.view" id="account_view_tree2">
+ <field name="model">analytic_account.account</field>
+ <field name="type">tree</field>
+ <field name="field_childs">childs</field>
+ <field name="priority" eval="20"/>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <tree string="Analytic Accounts">
+ <field name="name"/>
+ <field name="code"/>
+ <field name="debit"/>
+ <field name="credit"/>
+ <field name="balance"/>
+ <field name="currency"/>
+ <field name="currency_digits" tree_invisible="1"/>
+ </tree>
+ ]]>
+ </field>
+ </record>
+ <record model="ir.action.act_window" id="act_account_tree2">
+ <field name="name">Analytic Accounts</field>
+ <field name="res_model">analytic_account.account</field>
+ <field name="view_type">tree</field>
+ <field name="domain">[('parent', '=', False)]</field>
+ </record>
+ <record model="ir.action.act_window.view" id="act_account_tree2_view1">
+ <field name="sequence" eval="10"/>
+ <field name="view" ref="account_view_tree2"/>
+ <field name="act_window" ref="act_account_tree2"/>
+ </record>
+ <record model="ir.action.wizard" id="act_open_chart_account">
+ <field name="name">Open Chart of Analytic Account</field>
+ <field name="wiz_name">analytic_account.account.open_chart_account</field>
+ </record>
+ <menuitem parent="account.menu_charts" action="act_open_chart_account"
+ icon="tryton-tree" id="menu_open_chart_account"/>
+ <record model="ir.model.access" id="access_account">
+ <field name="model" search="[('model', '=', 'analytic_account.account')]"/>
+ <field name="perm_read" eval="True"/>
+ <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_account_account_admin">
+ <field name="model" search="[('model', '=', 'analytic_account.account')]"/>
+ <field name="group" ref="group_analytic_admin"/>
+ <field name="perm_read" eval="True"/>
+ <field name="perm_write" eval="True"/>
+ <field name="perm_create" eval="True"/>
+ <field name="perm_delete" eval="True"/>
+ </record>
+
+ <record model="ir.ui.view" id="open_chart_account_init_view_form">
+ <field name="model">analytic_account.account.open_chart_account.init</field>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <form string="Open Chart of Analytic Account" col="2">
+ <label name="start_date"/>
+ <field name="start_date"/>
+ <label name="end_date"/>
+ <field name="end_date"/>
+ </form>
+ ]]>
+ </field>
+ </record>
+ </data>
+</tryton>
diff --git a/analytic_account.xml b/analytic_account.xml
new file mode 100644
index 0000000..afd6b32
--- /dev/null
+++ b/analytic_account.xml
@@ -0,0 +1,13 @@
+<?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. -->
+<tryton>
+ <data>
+ <record model="res.group" id="group_analytic_admin">
+ <field name="name">Analytic Administration</field>
+ </record>
+ <record model="res.user" id="res.user_admin">
+ <field name="groups" eval="[('add', ref('group_analytic_admin'))]"/>
+ </record>
+ </data>
+</tryton>
diff --git a/de_DE.csv b/de_DE.csv
new file mode 100644
index 0000000..514a7a7
--- /dev/null
+++ b/de_DE.csv
@@ -0,0 +1,69 @@
+type,name,res_id,src,value,fuzzy
+error,analytic_account.account,0,You can not create recursive accounts!,Konten können nicht rekursiv angelegt werden!,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Es können nicht mehrere Konten mit dem selben Wurzelkonto oder einem fehlenden erforderlichen Wurzelkonto existieren!,0
+error,analytic_account.line,0,Wrong credit/debit values!,Falsche Haben/Soll-Werte!,0
+error,analytic_account.line,0,"You can not create move line
+on view/inactive account!",Posten kann nicht erstellt werden,0
+field,"account.move.line,analytic_lines",0,Analytic Lines,Buchungszeile,0
+field,"analytic_account.account,active",0,Active,Aktiv,0
+field,"analytic_account.account,balance",0,Balance,Bilanz,0
+field,"analytic_account.account,childs",0,Childs,Untergeordnet (Analytische Konten),0
+field,"analytic_account.account,code",0,Code,Code,0
+field,"analytic_account.account,company",0,Company,Unternehmen,0
+field,"analytic_account.account,complete_name",0,Name,Name,0
+field,"analytic_account.account,credit",0,Credit,Haben,0
+field,"analytic_account.account,currency",0,Currency,Währung,0
+field,"analytic_account.account,currency_digits",0,Currency Digits,Währung (signifikante Stellen),0
+field,"analytic_account.account,debit",0,Debit,Soll,0
+field,"analytic_account.account,display_balance",0,Display Balance,Ansicht Bilanz,0
+field,"analytic_account.account,mandatory",0,Mandatory,Erforderlich,0
+field,"analytic_account.account,name",0,Name,Name,0
+field,"analytic_account.account,note",0,Note,Bemerkung,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Enddatum,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Ab Datum,0
+field,"analytic_account.account,parent",0,Parent,Übergeordnet (Kostenstelle),0
+field,"analytic_account.account,root",0,Root,Wurzelkonto,0
+field,"analytic_account.account.selection,accounts",0,Accounts,Konten,0
+field,"analytic_account.account,state",0,State,Status,0
+field,"analytic_account.account,type",0,Type,Typ,0
+field,"analytic_account.line,account",0,Account,Konto,0
+field,"analytic_account.line,active",0,Active,Aktiv,0
+field,"analytic_account.line,credit",0,Credit,Haben,0
+field,"analytic_account.line,currency",0,Currency,Währung,0
+field,"analytic_account.line,date",0,Date,Datum,0
+field,"analytic_account.line,debit",0,Debit,Soll,0
+field,"analytic_account.line,journal",0,Journal,Journal,0
+field,"analytic_account.line,move_line",0,Account Move Line,Buchungszeile,0
+field,"analytic_account.line,name",0,Name,Name,0
+field,"analytic_account.line,party",0,Party,Partei,0
+field,"analytic_account.line,reference",0,Reference,Referenz,0
+model,"ir.action,name",act_account_form,Analytic Accounts,Kostenstellen,0
+model,"ir.action,name",act_account_tree,Analytic Accounts,Kostenstellen,0
+model,"ir.action,name",act_account_tree2,Analytic Accounts,Kostenstellen,0
+model,"ir.action,name",act_line_form,Analytic Lines,Buchungszeilen,0
+model,"ir.action,name",act_open_account,Open Account,Kostenstelle öffnen,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Kostenstellen,0
+model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Kostenstellen,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Kostenstellen,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
+model,"res.group,name",group_analytic_admin,Analytic Administration,Administration Kostenstellen,0
+selection,"analytic_account.account,display_balance",0,Credit - Debit,Haben - Soll,0
+selection,"analytic_account.account,display_balance",0,Debit - Credit,Soll - Haben,0
+selection,"analytic_account.account,state",0,Closed,Geschlossen,0
+selection,"analytic_account.account,state",0,Draft,Entwurf,0
+selection,"analytic_account.account,state",0,Opened,Geöffnet,0
+selection,"analytic_account.account,type",0,Normal,Normal,0
+selection,"analytic_account.account,type",0,Root,Wurzelkonto,0
+selection,"analytic_account.account,type",0,View,Sicht,0
+view,account.move.line,0,Analytic,Kostenstelle,0
+view,analytic_account.account,0,Analytic Account,Kostenstelle,0
+view,analytic_account.account,0,Analytic Accounts,Kostenstellen,0
+view,analytic_account.account,0,General Information,Allgemein,0
+view,analytic_account.account,0,Notes,Bemerkungen,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Plan für Kostenstellen öffnen,0
+view,analytic_account.line,0,Analytic Line,Buchungszeile,0
+view,analytic_account.line,0,Analytic Lines,Buchungszeilen,0
+view,analytic_account.line,0,General Information,Allgemein,0
+wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Abbrechen,0
+wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Öffnen,0
diff --git a/es_ES.csv b/es_ES.csv
new file mode 100644
index 0000000..22b024d
--- /dev/null
+++ b/es_ES.csv
@@ -0,0 +1,68 @@
+type,name,res_id,src,value,fuzzy
+error,analytic_account.account,0,You can not create recursive accounts!,No puede crear cuentas recursivas!,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,No se puede cancelar muchas cuentas con la misma cuenta base o una cuenta base obligatoria!,0
+error,analytic_account.line,0,Wrong credit/debit values!,Valores erróneos de crédito/debito!,0
+error,analytic_account.line,0,"You can not create move line
+on view/inactive account!",No puede crear líneas de movimientos,0
+field,"account.move.line,analytic_lines",0,Analytic Lines,Líneas Analíticas,0
+field,"analytic_account.account,active",0,Active,Activo,0
+field,"analytic_account.account,balance",0,Balance,Balance,0
+field,"analytic_account.account,childs",0,Childs,Hij at s,0
+field,"analytic_account.account,code",0,Code,Código,0
+field,"analytic_account.account,company",0,Company,Compañía,0
+field,"analytic_account.account,complete_name",0,Name,Nombre,0
+field,"analytic_account.account,credit",0,Credit,Crédito,0
+field,"analytic_account.account,currency",0,Currency,Moneda,0
+field,"analytic_account.account,currency_digits",0,Currency Digits,Dígitos de Moneda,0
+field,"analytic_account.account,debit",0,Debit,Débito,0
+field,"analytic_account.account,display_balance",0,Display Balance,Mostrar Balance,0
+field,"analytic_account.account,mandatory",0,Mandatory,Obligatorio,0
+field,"analytic_account.account,name",0,Name,Nombre,0
+field,"analytic_account.account,note",0,Note,Nota,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Fecha Final,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Fecha Inicial,0
+field,"analytic_account.account,parent",0,Parent,Padre,0
+field,"analytic_account.account,root",0,Root,Raíz,0
+field,"analytic_account.account.selection,accounts",0,Accounts,Cuentas,0
+field,"analytic_account.account,state",0,State,Estado,0
+field,"analytic_account.account,type",0,Type,Tipo,0
+field,"analytic_account.line,account",0,Account,Cuenta,0
+field,"analytic_account.line,active",0,Active,Activo,0
+field,"analytic_account.line,credit",0,Credit,Crédito,0
+field,"analytic_account.line,currency",0,Currency,Moneda,0
+field,"analytic_account.line,date",0,Date,Fecha,0
+field,"analytic_account.line,debit",0,Debit,Débito,0
+field,"analytic_account.line,journal",0,Journal,Diario,0
+field,"analytic_account.line,move_line",0,Account Move Line,Movimiento de Línea de Cuenta,0
+field,"analytic_account.line,name",0,Name,Nombre,0
+field,"analytic_account.line,party",0,Party,Tercero,0
+field,"analytic_account.line,reference",0,Reference,Referencia,0
+model,"ir.action,name",act_account_form,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.action,name",act_account_tree,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.action,name",act_account_tree2,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.action,name",act_line_form,Analytic Lines,Líneas Analíticas,0
+model,"ir.action,name",act_open_account,Open Account,Abrir Cuenta,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Cuenta Analítica,0
+model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Cuentas Analíticas,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
+selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédito - Débito,0
+selection,"analytic_account.account,display_balance",0,Debit - Credit,Débito - Crédito,0
+selection,"analytic_account.account,state",0,Closed,Cerrado,0
+selection,"analytic_account.account,state",0,Draft,Borrador,0
+selection,"analytic_account.account,state",0,Opened,Abierto,0
+selection,"analytic_account.account,type",0,Normal,Normal,0
+selection,"analytic_account.account,type",0,Root,Raíz,0
+selection,"analytic_account.account,type",0,View,Vista,0
+view,account.move.line,0,Analytic,Analítica,0
+view,analytic_account.account,0,Analytic Account,Cuenta Analítica,0
+view,analytic_account.account,0,Analytic Accounts,Cuentas Analíticas,0
+view,analytic_account.account,0,General Information,Información General,0
+view,analytic_account.account,0,Notes,Notas,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Abrir Plan de Cuentas Analítico,0
+view,analytic_account.line,0,Analytic Line,Línea Analítica,0
+view,analytic_account.line,0,Analytic Lines,Líneas Analíticas,0
+view,analytic_account.line,0,General Information,Información General,0
+wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Cancelar,0
+wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Abrir,0
diff --git a/fr_FR.csv b/fr_FR.csv
new file mode 100644
index 0000000..6e64243
--- /dev/null
+++ b/fr_FR.csv
@@ -0,0 +1,69 @@
+type,name,res_id,src,value,fuzzy
+error,analytic_account.account,0,You can not create recursive accounts!,Vous ne pouvez pas créer des comptes récursifs!,0
+error,analytic_account.account.selection,0,Can not have many accounts with the same root or a missing mandatory root account!,Vous ne pouvez pas avoir plusieurs comptes avec la même racine ou un compte avec une racine obligatoire!,0
+error,analytic_account.line,0,Wrong credit/debit values!,Valeurs crédit/débit incorrectes,0
+error,analytic_account.line,0,"You can not create move line
+on view/inactive account!","Vous ne pouvez pas créer des mouvements
+sur des compte inactifs ou de type vue!",0
+field,"account.move.line,analytic_lines",0,Analytic Lines,Lignes analytiques,0
+field,"analytic_account.account,active",0,Active,Actif,0
+field,"analytic_account.account,balance",0,Balance,Balance,0
+field,"analytic_account.account,childs",0,Childs,Enfants,0
+field,"analytic_account.account,code",0,Code,Code,0
+field,"analytic_account.account,company",0,Company,Companie,0
+field,"analytic_account.account,complete_name",0,Name,Nom,0
+field,"analytic_account.account,credit",0,Credit,Crédit,0
+field,"analytic_account.account,currency",0,Currency,Devise,0
+field,"analytic_account.account,currency_digits",0,Currency Digits,Décimales de la devise,0
+field,"analytic_account.account,debit",0,Debit,Débit,0
+field,"analytic_account.account,display_balance",0,Display Balance,Balance affichée,0
+field,"analytic_account.account,mandatory",0,Mandatory,Obligatoire,0
+field,"analytic_account.account,name",0,Name,Nom,0
+field,"analytic_account.account,note",0,Note,Note,0
+field,"analytic_account.account.open_chart_account.init,end_date",0,End Date,Date de fin,0
+field,"analytic_account.account.open_chart_account.init,start_date",0,Start Date,Date de début,0
+field,"analytic_account.account,parent",0,Parent,Parent,0
+field,"analytic_account.account,root",0,Root,Racine,0
+field,"analytic_account.account.selection,accounts",0,Accounts,Comptes,0
+field,"analytic_account.account,state",0,State,État,0
+field,"analytic_account.account,type",0,Type,Type,0
+field,"analytic_account.line,account",0,Account,Compte,0
+field,"analytic_account.line,active",0,Active,actif,0
+field,"analytic_account.line,credit",0,Credit,Crédit,0
+field,"analytic_account.line,currency",0,Currency,Devise,0
+field,"analytic_account.line,date",0,Date,Date,0
+field,"analytic_account.line,debit",0,Debit,Débit,0
+field,"analytic_account.line,journal",0,Journal,Journal,0
+field,"analytic_account.line,move_line",0,Account Move Line,Ligne de mouvement comptable,0
+field,"analytic_account.line,name",0,Name,Nom,0
+field,"analytic_account.line,party",0,Party,Partenaire,0
+field,"analytic_account.line,reference",0,Reference,Référence,0
+model,"ir.action,name",act_account_form,Analytic Accounts,Comptes analytiques,0
+model,"ir.action,name",act_account_tree,Analytic Accounts,Comptes analytiques,0
+model,"ir.action,name",act_account_tree2,Analytic Accounts,Comptes analytiques,0
+model,"ir.action,name",act_line_form,Analytic Lines,Lignes analytiques,0
+model,"ir.action,name",act_open_account,Open Account,Ouvrir le compte,0
+model,"ir.action,name",act_open_chart_account,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
+model,"ir.ui.menu,name",menu_analytic_account_configuration,Analytic Account,Compte analytique,0
+model,"ir.ui.menu,name",menu_account_form,Analytic Accounts,Comptes analytiques,0
+model,"ir.ui.menu,name",menu_account_tree,Analytic Accounts,Comptes analytiques,0
+model,"ir.ui.menu,name",menu_open_chart_account,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
+selection,"analytic_account.account,display_balance",0,Credit - Debit,Crédit - Débit,0
+selection,"analytic_account.account,display_balance",0,Debit - Credit,Débit - Crédit,0
+selection,"analytic_account.account,state",0,Closed,Fermé,0
+selection,"analytic_account.account,state",0,Draft,Brouillon,0
+selection,"analytic_account.account,state",0,Opened,Ouvert,0
+selection,"analytic_account.account,type",0,Normal,Normal,0
+selection,"analytic_account.account,type",0,Root,Racine,0
+selection,"analytic_account.account,type",0,View,Vue,0
+view,account.move.line,0,Analytic,Analytique,0
+view,analytic_account.account,0,Analytic Account,Compte analytique,0
+view,analytic_account.account,0,Analytic Accounts,Comptes analytiques,0
+view,analytic_account.account,0,General Information,Informations générales,0
+view,analytic_account.account,0,Notes,Notes,0
+view,analytic_account.account.open_chart_account.init,0,Open Chart of Analytic Account,Ouvrir le plan comptable analytique,0
+view,analytic_account.line,0,Analytic Line,Ligne analytique,0
+view,analytic_account.line,0,Analytic Lines,Lignes analytiques,0
+view,analytic_account.line,0,General Information,Informations générales,0
+wizard_button,"analytic_account.account.open_chart_account,init,end",0,Cancel,Annuler,0
+wizard_button,"analytic_account.account.open_chart_account,init,open",0,Open,Ouvrir,0
diff --git a/line.py b/line.py
new file mode 100644
index 0000000..668bf99
--- /dev/null
+++ b/line.py
@@ -0,0 +1,137 @@
+#This file is part of Tryton. The COPYRIGHT file at the top level
+#of this repository contains the full copyright notices and license terms.
+"Line"
+
+from trytond.osv import fields, OSV
+from trytond.wizard import Wizard
+
+
+class Line(OSV):
+ 'Analytic Line'
+ _name = 'analytic_account.line'
+ _description = __doc__
+
+ name = fields.Char('Name', required=True)
+ debit = fields.Numeric('Debit', digits=(16, 2))
+ credit = fields.Numeric('Credit', digits=(16, 2))
+ currency = fields.Many2One('currency.currency', 'Currency', required=True)
+ account = fields.Many2One('analytic_account.account', 'Account',
+ required=True, select=1, domain=[('type', '!=', 'view')])
+ move_line = fields.Many2One('account.move.line', 'Account Move Line',
+ ondelete='CASCADE', required=True)
+ journal = fields.Many2One('account.journal', 'Journal', required=True,
+ select=1)
+ date = fields.Date('Date', required=True)
+ reference = fields.Char('Reference')
+ party = fields.Many2One('party.party', 'Party')
+ active = fields.Boolean('Active', select=2)
+
+ def __init__(self):
+ super(Line, self).__init__()
+ self._sql_constraints += [
+ ('credit_debit',
+ 'CHECK((credit * debit = 0.0) AND (credit + debit >= 0.0))',
+ 'Wrong credit/debit values!'),
+ ]
+ self._constraints += [
+ ('check_account', 'line_on_view_inactive_account'),
+ ]
+ self._error_messages.update({
+ 'line_on_view_inactive_account': 'You can not create move line\n' \
+ 'on view/inactive account!',
+ })
+ self._order.insert(0, ('date', 'ASC'))
+
+ def default_currency(self, cursor, user, context=None):
+ company_obj = self.pool.get('company.company')
+ currency_obj = self.pool.get('currency.currency')
+ if context is None:
+ context = {}
+ if context.get('company'):
+ company = company_obj.browse(cursor, user, context['company'],
+ context=context)
+ return currency_obj.name_get(cursor, user, company.currency.id,
+ context=context)[0]
+ return False
+
+ def default_date(self, cursor, user, context=None):
+ date_obj = self.pool.get('ir.date')
+ return date_obj.today(cursor, user, context=context)
+
+ def default_active(self, cursor, user, context=None):
+ return True
+
+ def query_get(self, cursor, user, obj='l', context=None):
+ '''
+ Return SQL clause for analytic line depending of the context.
+ obj is the SQL alias of the analytic_account_line in the query.
+ '''
+ if context is None:
+ context = {}
+
+ res = obj + '.active '
+ if context.get('start_date'):
+ res += 'AND ' + obj + '.date >= ' + str(context['start_date'])
+ if context.get('end_date'):
+ res += 'AND ' + obj + '.date <= ' + str(context['end_date'])
+ return res
+
+ def check_account(self, cursor, user, ids):
+ for line in self.browse(cursor, user, ids):
+ if line.account.type == 'view':
+ return False
+ if not line.account.active:
+ return False
+ return True
+
+Line()
+
+
+class MoveLine(OSV):
+ _name = 'account.move.line'
+ analytic_lines = fields.One2Many('analytic_account.line', 'move_line',
+ 'Analytic Lines')
+
+MoveLine()
+
+
+class OpenAccount(Wizard):
+ 'Open Account'
+ _name = 'analytic_account.line.open_account'
+ states = {
+ 'init': {
+ 'result': {
+ 'type': 'action',
+ 'action': '_action_open_account',
+ 'state': 'end',
+ },
+ },
+ }
+
+ def _action_open_account(self, cursor, user, data, context=None):
+ model_data_obj = self.pool.get('ir.model.data')
+ act_window_obj = self.pool.get('ir.action.act_window')
+
+ if context is None:
+ context = {}
+
+ model_data_ids = model_data_obj.search(cursor, user, [
+ ('fs_id', '=', 'act_line_form'),
+ ('module', '=', 'analytic_account'),
+ ('inherit', '=', False),
+ ], limit=1, context=context)
+ model_data = model_data_obj.browse(cursor, user, model_data_ids[0],
+ context=context)
+ res = act_window_obj.read(cursor, user, model_data.db_id, context=context)
+ res['domain'] = [
+ ('account', '=', data['id']),
+ ]
+
+ if context.get('start_date'):
+ res['domain'].append(('date', '>=', context['start_date']))
+ if context.get('end_date'):
+ res['domain'].append(('date', '<=', context['end_date']))
+ res['domain'] = str(res['domain'])
+ return res
+
+OpenAccount()
diff --git a/line.xml b/line.xml
new file mode 100644
index 0000000..18f7b3a
--- /dev/null
+++ b/line.xml
@@ -0,0 +1,123 @@
+<?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. -->
+<tryton>
+ <data>
+ <record model="ir.ui.view" id="line_view_form">
+ <field name="model">analytic_account.line</field>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <form string="Analytic Line">
+ <label name="name"/>
+ <field name="name"/>
+ <label name="active"/>
+ <field name="active" xexpand="0" width="100"/>
+ <notebook colspan="4">
+ <page string="General Information">
+ <label name="account"/>
+ <field name="account"/>
+ <label name="date"/>
+ <field name="date"/>
+ <label name="reference"/>
+ <field name="reference"/>
+ <label name="party"/>
+ <field name="party"/>
+ <label name="journal"/>
+ <field name="journal"/>
+ <label name="move_line"/>
+ <field name="move_line"/>
+ <label name="debit"/>
+ <field name="debit"/>
+ <label name="credit"/>
+ <field name="credit"/>
+ <label name="currency"/>
+ <field name="currency"/>
+ </page>
+ </notebook>
+ </form>
+ ]]>
+ </field>
+ </record>
+ <record model="ir.ui.view" id="line_view_tree">
+ <field name="model">analytic_account.line</field>
+ <field name="type">tree</field>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <tree string="Analytic Lines" editable="top">
+ <field name="move_line" select="1"/>
+ <field name="journal" select="2"/>
+ <field name="name" select="1"/>
+ <field name="reference" select="2"/>
+ <field name="date" select="1"/>
+ <field name="party" select="2"/>
+ <field name="account" select="2"/>
+ <field name="debit" select="2"/>
+ <field name="credit" select="2"/>
+ <field name="currency" select="2"/>
+ </tree>
+ ]]>
+ </field>
+ </record>
+ <record model="ir.action.act_window" id="act_line_form">
+ <field name="name">Analytic Lines</field>
+ <field name="res_model">analytic_account.line</field>
+ <field name="view_type">form</field>
+ </record>
+ <record model="ir.action.act_window.view" id="act_line_form_view1">
+ <field name="sequence" eval="10"/>
+ <field name="view" ref="line_view_tree"/>
+ <field name="act_window" ref="act_line_form"/>
+ </record>
+ <record model="ir.action.act_window.view" id="act_line_form_view2">
+ <field name="sequence" eval="20"/>
+ <field name="view" ref="line_view_form"/>
+ <field name="act_window" ref="act_line_form"/>
+ </record>
+
+ <record model="ir.model.access" id="access_line">
+ <field name="model" search="[('model', '=', 'analytic_account.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_line_account">
+ <field name="model" search="[('model', '=', 'analytic_account.line')]"/>
+ <field name="group" ref="account.group_account"/>
+ <field name="perm_read" eval="True"/>
+ <field name="perm_write" eval="True"/>
+ <field name="perm_create" eval="True"/>
+ <field name="perm_delete" eval="True"/>
+ </record>
+
+ <record model="ir.action.wizard" id="act_open_account">
+ <field name="name">Open Account</field>
+ <field name="wiz_name">analytic_account.line.open_account</field>
+ <field name="model">analytic_account.account</field>
+ </record>
+ <record model="ir.action.keyword" id="act_open_account_keyword">
+ <field name="keyword">tree_open</field>
+ <field name="model">analytic_account.account,0</field>
+ <field name="action" ref="act_open_account"/>
+ </record>
+
+ <record model="ir.ui.view" id="move_line_view_form">
+ <field name="model">account.move.line</field>
+ <field name="inherit" ref="account.move_line_view_form"/>
+ <field name="arch" type="xml">
+ <![CDATA[
+ <data>
+ <xpath expr="/form/notebook/page[@string="General Information"]"
+ position="after">
+ <page string="Analytic" col="1">
+ <separator name="analytic_lines"/>
+ <field name="analytic_lines"/>
+ </page>
+ </xpath>
+ </data>
+ ]]>
+ </field>
+ </record>
+
+ </data>
+</tryton>
diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 0000000..861a9f5
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,5 @@
+[egg_info]
+tag_build =
+tag_date = 0
+tag_svn_revision = 0
+
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..0eee4a9
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,56 @@
+#!/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.
+
+from setuptools import setup, find_packages
+import re
+
+info = eval(file('__tryton__.py').read())
+
+requires = []
+for dep in info.get('depends', []):
+ match = re.compile(
+ '(ir|res|workflow|webdav)((\s|$|<|>|<=|>=|==|!=).*?$)').match(dep)
+ if match:
+ continue
+ else:
+ dep = 'trytond_' + dep
+ requires.append(dep)
+
+major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
+requires.append('trytond >= %s.%s' % (major_version, minor_version))
+requires.append('trytond < %s.%s' % (major_version, str(int(minor_version) + 1)))
+
+setup(name='trytond_analytic_account',
+ version=info.get('version', '0.0.1'),
+ description=info.get('description', ''),
+ author=info.get('author', ''),
+ author_email=info.get('email', ''),
+ url=info.get('website', ''),
+ package_dir={'trytond.modules.analytic_account': '.'},
+ packages=[
+ 'trytond.modules.analytic_account',
+ ],
+ package_data={
+ 'trytond.modules.analytic_account': info.get('xml', []) \
+ + info.get('translation', []),
+ },
+ classifiers=[
+ 'Development Status :: 5 - Production/Stable',
+ 'Environment :: Plugins',
+ 'Intended Audience :: Developers',
+ 'Intended Audience :: Financial and Insurance Industry',
+ 'Intended Audience :: Legal Industry',
+ 'License :: OSI Approved :: GNU General Public License (GPL)',
+ 'Natural Language :: English',
+ 'Natural Language :: French',
+ 'Natural Language :: German',
+ 'Natural Language :: Spanish',
+ 'Operating System :: OS Independent',
+ 'Programming Language :: Python',
+ 'Topic :: Office/Business',
+ 'Topic :: Office/Business :: Financial :: Accounting',
+ ],
+ license='GPL-3',
+ install_requires=requires,
+)
diff --git a/trytond_analytic_account.egg-info/PKG-INFO b/trytond_analytic_account.egg-info/PKG-INFO
new file mode 100644
index 0000000..418ec8f
--- /dev/null
+++ b/trytond_analytic_account.egg-info/PKG-INFO
@@ -0,0 +1,29 @@
+Metadata-Version: 1.0
+Name: trytond-analytic-account
+Version: 1.0.0
+Summary: Financial and Accounting Module with:
+ - Analytic accounting with any number of analytic charts
+
+And with report:
+ - Analytic account balance
+
+Home-page: http://www.tryton.org/
+Author: B2CK
+Author-email: info at b2ck.com
+License: GPL-3
+Description: UNKNOWN
+Platform: UNKNOWN
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Plugins
+Classifier: Intended Audience :: Developers
+Classifier: Intended Audience :: Financial and Insurance Industry
+Classifier: Intended Audience :: Legal Industry
+Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Natural Language :: English
+Classifier: Natural Language :: French
+Classifier: Natural Language :: German
+Classifier: Natural Language :: Spanish
+Classifier: Operating System :: OS Independent
+Classifier: Programming Language :: Python
+Classifier: Topic :: Office/Business
+Classifier: Topic :: Office/Business :: Financial :: Accounting
diff --git a/trytond_analytic_account.egg-info/SOURCES.txt b/trytond_analytic_account.egg-info/SOURCES.txt
new file mode 100644
index 0000000..39ccaa4
--- /dev/null
+++ b/trytond_analytic_account.egg-info/SOURCES.txt
@@ -0,0 +1,22 @@
+CHANGELOG
+COPYRIGHT
+INSTALL
+LICENSE
+MANIFEST.in
+README
+account.xml
+analytic_account.xml
+de_DE.csv
+es_ES.csv
+fr_FR.csv
+line.xml
+setup.py
+./__init__.py
+./__tryton__.py
+./account.py
+./line.py
+trytond_analytic_account.egg-info/PKG-INFO
+trytond_analytic_account.egg-info/SOURCES.txt
+trytond_analytic_account.egg-info/dependency_links.txt
+trytond_analytic_account.egg-info/requires.txt
+trytond_analytic_account.egg-info/top_level.txt
\ No newline at end of file
diff --git a/trytond_analytic_account.egg-info/dependency_links.txt b/trytond_analytic_account.egg-info/dependency_links.txt
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/trytond_analytic_account.egg-info/dependency_links.txt
@@ -0,0 +1 @@
+
diff --git a/trytond_analytic_account.egg-info/requires.txt b/trytond_analytic_account.egg-info/requires.txt
new file mode 100644
index 0000000..94effe8
--- /dev/null
+++ b/trytond_analytic_account.egg-info/requires.txt
@@ -0,0 +1,6 @@
+trytond_company
+trytond_currency
+trytond_account
+trytond_party
+trytond >= 1.0
+trytond < 1.1
\ No newline at end of file
diff --git a/trytond_analytic_account.egg-info/top_level.txt b/trytond_analytic_account.egg-info/top_level.txt
new file mode 100644
index 0000000..93df119
--- /dev/null
+++ b/trytond_analytic_account.egg-info/top_level.txt
@@ -0,0 +1 @@
+trytond
--
tryton-modules-analytic-account
More information about the tryton-debian-vcs
mailing list