Merge remote-tracking branch 'odoo/master' into master-inline-searchview-ged

This commit is contained in:
Géry Debongnie 2014-06-10 11:43:17 +02:00
commit 8202561511
200 changed files with 15525 additions and 47742 deletions

4
.gitignore vendored
View File

@ -3,6 +3,7 @@ _build/
# dotfiles
.*
!.gitignore
# compiled python files
*.py[co]
# setup.py egg_info
@ -12,7 +13,8 @@ _build/
# hg stuff
*.orig
status
# odoo filestore
openerp/filestore
# generated for windows installer?
install/win32/*.bat
install/win32/meta.py

View File

@ -6,7 +6,7 @@ Odoo is a suite of web based open source business apps. More info at http://www
The easiest way to play with it is the <a href="https://www.odoo.com/page/start">Odoo free trial</a>, email registration is NOT required, use the "skip this step" link on the registration page to skip it.
Getting started with Odoo developement
Getting started with Odoo development
--------------------------------------
If you are a developer type the following command at your terminal [1]:

View File

@ -65,6 +65,7 @@ for a particular financial year and for preparation of vouchers there is a modul
'wizard/account_period_close_view.xml',
'wizard/account_reconcile_view.xml',
'wizard/account_unreconcile_view.xml',
'wizard/account_statement_from_invoice_view.xml',
'account_view.xml',
'account_report.xml',
'account_financial_report_data.xml',
@ -144,6 +145,7 @@ for a particular financial year and for preparation of vouchers there is a modul
'qweb' : [
"static/src/xml/account_move_reconciliation.xml",
"static/src/xml/account_move_line_quickadd.xml",
"static/src/xml/account_bank_statement_reconciliation.xml",
],
'demo': [
'demo/account_demo.xml',
@ -151,6 +153,7 @@ for a particular financial year and for preparation of vouchers there is a modul
'project/analytic_account_demo.xml',
'demo/account_minimal.xml',
'demo/account_invoice_demo.xml',
'demo/account_bank_statement.xml',
'account_unit_test.xml',
],
'test': [

View File

@ -2075,6 +2075,11 @@ class account_tax(osv.osv):
cur_price_unit+=amount2
return res
def compute_for_bank_reconciliation(self, cr, uid, tax_id, amount, context=None):
""" Called by RPC by the bank statement reconciliation widget """
tax = self.browse(cr, uid, tax_id, context=context)
return self.compute_all(cr, uid, [tax], amount, 1) # TOCHECK may use force_exclude parameter
def compute_all(self, cr, uid, taxes, price_unit, quantity, product=None, partner=None, force_excluded=False):
"""
:param force_excluded: boolean used to say that we don't want to consider the value of field price_include of

View File

@ -19,11 +19,10 @@
#
##############################################################################
import time
from openerp.osv import fields, osv
from openerp.tools.translate import _
import openerp.addons.decimal_precision as dp
from openerp.report import report_sxw
class account_bank_statement(osv.osv):
def create(self, cr, uid, vals, context=None):
@ -66,6 +65,18 @@ class account_bank_statement(osv.osv):
return periods[0]
return False
def _compute_default_statement_name(self, cr, uid, context=None):
if context is None:
context = {}
obj_seq = self.pool.get('ir.sequence')
default_journal_id = self._default_journal_id(cr, uid, context=context)
if default_journal_id != False:
period = self.pool.get('account.period').browse(cr, uid, self._get_period(cr, uid, context=context), context=context)
context['fiscalyear_id'] = period.fiscalyear_id.id
journal = self.pool.get('account.journal').browse(cr, uid, default_journal_id, None)
return obj_seq.next_by_id(cr, uid, journal.sequence_id.id, context=context)
return obj_seq.next_by_code(cr, uid, 'account.bank.statement', context=context)
def _currency(self, cursor, user, ids, name, args, context=None):
res = {}
res_currency_obj = self.pool.get('res.currency')
@ -92,12 +103,18 @@ class account_bank_statement(osv.osv):
result[line.statement_id.id] = True
return result.keys()
def _all_lines_reconciled(self, cr, uid, ids, name, args, context=None):
res = {}
for statement in self.browse(cr, uid, ids, context=context):
res[statement.id] = all([line.journal_entry_id.id for line in statement.line_ids])
return res
_order = "date desc, id desc"
_name = "account.bank.statement"
_description = "Bank Statement"
_inherit = ['mail.thread']
_columns = {
'name': fields.char('Reference', size=64, required=True, states={'draft': [('readonly', False)]}, readonly=True, help='if you give the Name other then /, its created Accounting Entries Move will be with same name as statement name. This allows the statement entries to have the same references than the statement itself'), # readonly for account_cash_statement
'name': fields.char('Reference', size=64, states={'draft': [('readonly', False)]}, readonly=True, help='if you give the Name other then /, its created Accounting Entries Move will be with same name as statement name. This allows the statement entries to have the same references than the statement itself'), # readonly for account_cash_statement
'date': fields.date('Date', required=True, states={'confirm': [('readonly', True)]}, select=True),
'journal_id': fields.many2one('account.journal', 'Journal', required=True,
readonly=True, states={'draft':[('readonly',False)]}),
@ -129,10 +146,11 @@ class account_bank_statement(osv.osv):
type='many2one', relation='res.currency'),
'account_id': fields.related('journal_id', 'default_debit_account_id', type='many2one', relation='account.account', string='Account used in this journal', readonly=True, help='used in statement reconciliation domain, but shouldn\'t be used elswhere.'),
'cash_control': fields.related('journal_id', 'cash_control' , type='boolean', relation='account.journal',string='Cash control'),
'all_lines_reconciled': fields.function(_all_lines_reconciled, string='All lines reconciled', type='boolean'),
}
_defaults = {
'name': "/",
'name': _compute_default_statement_name,
'date': fields.date.context_today,
'state': 'draft',
'journal_id': _default_journal_id,
@ -193,37 +211,6 @@ class account_bank_statement(osv.osv):
'ref': st_line.ref,
}
def _prepare_bank_move_line(self, cr, uid, st_line, move_id, amount, company_currency_id,
context=None):
"""Compute the args to build the dict of values to create the bank move line from a
statement line by calling the _prepare_move_line_vals. This method may be
overridden to implement custom move generation (making sure to call super() to
establish a clean extension chain).
:param browse_record st_line: account.bank.statement.line record to
create the move from.
:param int/long move_id: ID of the account.move to link the move line
:param float amount: amount of the move line
:param int/long company_currency_id: ID of currency of the concerned company
:return: dict of value to create() the bank account.move.line
"""
anl_id = st_line.analytic_account_id and st_line.analytic_account_id.id or False
debit = ((amount<0) and -amount) or 0.0
credit = ((amount>0) and amount) or 0.0
cur_id = False
amt_cur = False
if st_line.statement_id.currency.id <> company_currency_id:
cur_id = st_line.statement_id.currency.id
if st_line.account_id and st_line.account_id.currency_id and st_line.account_id.currency_id.id <> company_currency_id:
cur_id = st_line.account_id.currency_id.id
if cur_id:
res_currency_obj = self.pool.get('res.currency')
amt_cur = -res_currency_obj.compute(cr, uid, company_currency_id, cur_id, amount, context=context)
res = self._prepare_move_line_vals(cr, uid, st_line, move_id, debit, credit,
amount_currency=amt_cur, currency_id=cur_id, analytic_id=anl_id, context=context)
return res
def _get_counter_part_account(sefl, cr, uid, st_line, context=None):
"""Retrieve the account to use in the counterpart move.
This method may be overridden to implement custom move generation (making sure to
@ -248,8 +235,7 @@ class account_bank_statement(osv.osv):
"""
return st_line.partner_id and st_line.partner_id.id or False
def _prepare_counterpart_move_line(self, cr, uid, st_line, move_id, amount, company_currency_id,
context=None):
def _prepare_bank_move_line(self, cr, uid, st_line, move_id, amount, company_currency_id, context=None):
"""Compute the args to build the dict of values to create the counter part move line from a
statement line by calling the _prepare_move_line_vals. This method may be
overridden to implement custom move generation (making sure to call super() to
@ -266,19 +252,22 @@ class account_bank_statement(osv.osv):
account_id = self._get_counter_part_account(cr, uid, st_line, context=context)
partner_id = self._get_counter_part_partner(cr, uid, st_line, context=context)
debit = ((amount > 0) and amount) or 0.0
credit = ((amount < 0) and -amount) or 0.0
credit = ((amount < 0) and -amount) or 0.0
cur_id = False
amt_cur = False
if st_line.statement_id.currency.id <> company_currency_id:
if st_line.statement_id.currency.id != company_currency_id:
amt_cur = st_line.amount
cur_id = st_line.statement_id.currency.id
cur_id = st_line.currency_id or st_line.statement_id.currency.id
# TODO : FIXME the amount should be in the journal currency
if st_line.currency_id and st_line.amount_currency:
amt_cur = st_line.amount_currency
cur_id = st_line.currency_id.id
return self._prepare_move_line_vals(cr, uid, st_line, move_id, debit, credit,
amount_currency = amt_cur, currency_id = cur_id, account_id = account_id,
partner_id = partner_id, context=context)
amount_currency=amt_cur, currency_id=cur_id, account_id=account_id,
partner_id=partner_id, context=context)
def _prepare_move_line_vals(self, cr, uid, st_line, move_id, debit, credit, currency_id = False,
amount_currency= False, account_id = False, analytic_id = False,
partner_id = False, context=None):
def _prepare_move_line_vals(self, cr, uid, st_line, move_id, debit, credit, currency_id=False,
amount_currency=False, account_id=False, partner_id=False, context=None):
"""Prepare the dict of values to create the move line from a
statement line. All non-mandatory args will replace the default computed one.
This method may be overridden to implement custom move generation (making sure to
@ -293,7 +282,6 @@ class account_bank_statement(osv.osv):
:param float amount_currency: amount of the debit/credit expressed in the currency_id
:param int/long account_id: ID of the account to use in the move line if different
from the statement line account ID
:param int/long analytic_id: ID of analytic account to put on the move line
:param int/long partner_id: ID of the partner to put on the move line
:return: dict of value to create() the account.move.line
"""
@ -314,67 +302,8 @@ class account_bank_statement(osv.osv):
'period_id': st_line.statement_id.period_id.id,
'currency_id': amount_currency and cur_id,
'amount_currency': amount_currency,
'analytic_account_id': analytic_id,
}
def create_move_from_st_line(self, cr, uid, st_line_id, company_currency_id, st_line_number, context=None):
"""Create the account move from the statement line.
:param int/long st_line_id: ID of the account.bank.statement.line to create the move from.
:param int/long company_currency_id: ID of the res.currency of the company
:param char st_line_number: will be used as the name of the generated account move
:return: ID of the account.move created
"""
if context is None:
context = {}
res_currency_obj = self.pool.get('res.currency')
account_move_obj = self.pool.get('account.move')
account_move_line_obj = self.pool.get('account.move.line')
account_bank_statement_line_obj = self.pool.get('account.bank.statement.line')
st_line = account_bank_statement_line_obj.browse(cr, uid, st_line_id, context=context)
st = st_line.statement_id
context.update({'date': st_line.date})
move_vals = self._prepare_move(cr, uid, st_line, st_line_number, context=context)
move_id = account_move_obj.create(cr, uid, move_vals, context=context)
account_bank_statement_line_obj.write(cr, uid, [st_line.id], {
'move_ids': [(4, move_id, False)]
})
torec = []
acc_cur = ((st_line.amount<=0) and st.journal_id.default_debit_account_id) or st_line.account_id
context.update({
'res.currency.compute.account': acc_cur,
})
amount = res_currency_obj.compute(cr, uid, st.currency.id,
company_currency_id, st_line.amount, context=context)
bank_move_vals = self._prepare_bank_move_line(cr, uid, st_line, move_id, amount,
company_currency_id, context=context)
move_line_id = account_move_line_obj.create(cr, uid, bank_move_vals, context=context)
torec.append(move_line_id)
counterpart_move_vals = self._prepare_counterpart_move_line(cr, uid, st_line, move_id,
amount, company_currency_id, context=context)
account_move_line_obj.create(cr, uid, counterpart_move_vals, context=context)
for line in account_move_line_obj.browse(cr, uid, [x.id for x in
account_move_obj.browse(cr, uid, move_id,
context=context).line_id],
context=context):
if line.state <> 'valid':
raise osv.except_osv(_('Error!'),
_('Journal item "%s" is not valid.') % line.name)
# Bank statements will not consider boolean on journal entry_posted
account_move_obj.post(cr, uid, [move_id], context=context)
return move_id
def get_next_st_line_number(self, cr, uid, st_number, st_line, context=None):
return st_number + '/' + str(st_line.sequence)
def balance_check(self, cr, uid, st_id, journal_type='bank', context=None):
st = self.browse(cr, uid, st_id, context=context)
if not ((abs((st.balance_end or 0.0) - st.balance_end_real) < 0.0001) or (abs((st.balance_end or 0.0) - st.balance_end_real) < 0.0001)):
@ -389,49 +318,30 @@ class account_bank_statement(osv.osv):
return state in ('draft','open')
def button_confirm_bank(self, cr, uid, ids, context=None):
obj_seq = self.pool.get('ir.sequence')
if context is None:
context = {}
for st in self.browse(cr, uid, ids, context=context):
j_type = st.journal_id.type
company_currency_id = st.journal_id.company_id.currency_id.id
if not self.check_status_condition(cr, uid, st.state, journal_type=j_type):
continue
self.balance_check(cr, uid, st.id, journal_type=j_type, context=context)
if (not st.journal_id.default_credit_account_id) \
or (not st.journal_id.default_debit_account_id):
raise osv.except_osv(_('Configuration Error!'),
_('Please verify that an account is defined in the journal.'))
if not st.name == '/':
st_number = st.name
else:
c = {'fiscalyear_id': st.period_id.fiscalyear_id.id}
if st.journal_id.sequence_id:
st_number = obj_seq.next_by_id(cr, uid, st.journal_id.sequence_id.id, context=c)
else:
st_number = obj_seq.next_by_code(cr, uid, 'account.bank.statement', context=c)
raise osv.except_osv(_('Configuration Error!'), _('Please verify that an account is defined in the journal.'))
for line in st.move_line_ids:
if line.state <> 'valid':
raise osv.except_osv(_('Error!'),
_('The account entries lines are not in valid state.'))
raise osv.except_osv(_('Error!'), _('The account entries lines are not in valid state.'))
move_ids = []
for st_line in st.line_ids:
if st_line.analytic_account_id:
if not st.journal_id.analytic_journal_id:
raise osv.except_osv(_('No Analytic Journal!'),_("You have to assign an analytic journal on the '%s' journal!") % (st.journal_id.name,))
if not st_line.amount:
continue
st_line_number = self.get_next_st_line_number(cr, uid, st_number, st_line, context)
self.create_move_from_st_line(cr, uid, st_line.id, company_currency_id, st_line_number, context)
self.write(cr, uid, [st.id], {
'name': st_number,
'balance_end_real': st.balance_end
}, context=context)
self.message_post(cr, uid, [st.id], body=_('Statement %s confirmed, journal items were created.') % (st_number,), context=context)
if not st_line.journal_entry_id.id:
raise osv.except_osv(_('Error!'), _('All the account entries lines must be processed in order to close the statement.'))
move_ids.append(st_line.journal_entry_id.id)
self.pool.get('account.move').post(cr, uid, move_ids, context=context)
self.message_post(cr, uid, [st.id], body=_('Statement %s confirmed, journal items were created.') % (st.name,), context=context)
return self.write(cr, uid, ids, {'state':'confirm'}, context=context)
def button_cancel(self, cr, uid, ids, context=None):
@ -492,93 +402,356 @@ class account_bank_statement(osv.osv):
return super(account_bank_statement, self).copy(cr, uid, id, default, context=context)
def button_journal_entries(self, cr, uid, ids, context=None):
ctx = (context or {}).copy()
ctx['journal_id'] = self.browse(cr, uid, ids[0], context=context).journal_id.id
return {
'name': _('Journal Items'),
'view_type':'form',
'view_mode':'tree',
'res_model':'account.move.line',
'view_id':False,
'type':'ir.actions.act_window',
'domain':[('statement_id','in',ids)],
'context':ctx,
}
ctx = (context or {}).copy()
ctx['journal_id'] = self.browse(cr, uid, ids[0], context=context).journal_id.id
return {
'name': _('Journal Items'),
'view_type':'form',
'view_mode':'tree',
'res_model':'account.move.line',
'view_id':False,
'type':'ir.actions.act_window',
'domain':[('statement_id','in',ids)],
'context':ctx,
}
def number_of_lines_reconciled(self, cr, uid, id, context=None):
bsl_obj = self.pool.get('account.bank.statement.line')
return bsl_obj.search_count(cr, uid, [('statement_id','=',id), ('journal_entry_id','!=',False)], context=context)
def get_format_currency_js_function(self, cr, uid, id, context=None):
""" Returns a string that can be used to instanciate a javascript function.
That function formats a number according to the statement's journal currency """
company_currency = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.currency_id
currency_obj = id and self.browse(cr, uid, id, context=context).journal_id.currency or company_currency
digits = 2 # TODO : from currency_obj
if currency_obj.position == 'after':
return "return amount.toFixed("+str(digits)+") + ' "+currency_obj.symbol+"';"
elif currency_obj.position == 'before':
return "return '"+currency_obj.symbol+" ' + amount.toFixed("+str(digits)+");"
class account_bank_statement_line(osv.osv):
def onchange_partner_id(self, cr, uid, ids, partner_id, context=None):
obj_partner = self.pool.get('res.partner')
if context is None:
context = {}
if not partner_id:
return {}
part = obj_partner.browse(cr, uid, partner_id, context=context)
if not part.supplier and not part.customer:
type = 'general'
elif part.supplier and part.customer:
type = 'general'
else:
if part.supplier == True:
type = 'supplier'
if part.customer == True:
type = 'customer'
res_type = self.onchange_type(cr, uid, ids, partner_id=partner_id, type=type, context=context)
if res_type['value'] and res_type['value'].get('account_id', False):
return {'value': {'type': type, 'account_id': res_type['value']['account_id']}}
return {'value': {'type': type}}
def get_data_for_reconciliations(self, cr, uid, ids, context=None):
""" Used to instanciate a batch of reconciliations in a single request """
# Build a list of reconciliations data
ret = []
mv_line_ids_selected = []
for st_line_id in ids:
reconciliation_data = {
'st_line': self.get_statement_line_for_reconciliation(cr, uid, st_line_id, context),
'reconciliation_proposition': self.get_reconciliation_proposition(cr, uid, st_line_id, mv_line_ids_selected, context)
}
for mv_line in reconciliation_data['reconciliation_proposition']:
mv_line_ids_selected.append(mv_line['id'])
ret.append(reconciliation_data);
def onchange_type(self, cr, uid, line_id, partner_id, type, context=None):
res = {'value': {}}
obj_partner = self.pool.get('res.partner')
# Check if, now that 'candidate' move lines were selected, there are moves left for statement lines
for reconciliation_data in ret:
if not reconciliation_data['st_line']['has_no_partner']:
if self.get_move_lines_counterparts(cr, uid, reconciliation_data['st_line']['id'], excluded_ids=mv_line_ids_selected, count=True, context=context) == 0:
reconciliation_data['st_line']['no_match'] = True
return ret
def get_statement_line_for_reconciliation(self, cr, uid, id, context=None):
""" Returns the data required by the bank statement reconciliation use case """
line = self.browse(cr, uid, id, context=context)
statement_currency = line.journal_id.currency or line.journal_id.company_id.currency_id
rml_parser = report_sxw.rml_parse(cr, uid, 'statement_line_widget', context=context)
amount_str = line.amount > 0 and line.amount or -line.amount
amount_str = rml_parser.formatLang(amount_str, currency_obj=statement_currency)
amount_currency_str = ""
if line.amount_currency and line.currency_id:
amount_currency_str = rml_parser.formatLang(line.amount_currency, currency_obj=line.currency_id)
dict = {
'id': line.id,
'ref': line.ref,
'note': line.note or "",
'name': line.name,
'date': line.date,
'amount': line.amount,
'amount_str': amount_str,
'no_match': self.get_move_lines_counterparts(cr, uid, id, count=True, context=context) == 0 and line.partner_id.id,
'partner_id': line.partner_id.id,
'statement_id': line.statement_id.id,
'account_code': line.journal_id.default_debit_account_id.code,
'account_name': line.journal_id.default_debit_account_id.name,
'partner_name': line.partner_id.name,
'amount_currency_str': amount_currency_str,
'has_no_partner': not line.partner_id.id,
}
if line.partner_id.id:
if line.amount > 0:
dict['open_balance_account_id'] = line.partner_id.property_account_receivable.id
else:
dict['open_balance_account_id'] = line.partner_id.property_account_payable.id
return dict
def get_reconciliation_proposition(self, cr, uid, id, excluded_ids=[], context=None):
""" Returns move lines that constitute the best guess to reconcile a statement line. """
st_line = self.browse(cr, uid, id, context=context)
company_currency = st_line.journal_id.company_id.currency_id.id
statement_currency = st_line.journal_id.currency.id or company_currency
# either use the unsigned debit/credit fields or the signed amount_currency field
sign = 1
if statement_currency == company_currency:
if st_line.amount > 0:
amount_field = 'debit'
else:
amount_field = 'credit'
else:
amount_field = 'amount_currency'
if st_line.amount < 0:
sign = -1
# look for exact match
exact_match_id = self.get_move_lines_counterparts(cr, uid, id, excluded_ids=excluded_ids, limit=1, additional_domain=[(amount_field,'=',(sign*st_line.amount))])
if exact_match_id:
return exact_match_id
# select oldest move lines
if sign == -1:
mv_lines = self.get_move_lines_counterparts(cr, uid, id, excluded_ids=excluded_ids, limit=50, additional_domain=[(amount_field,'<',0)])
else:
mv_lines = self.get_move_lines_counterparts(cr, uid, id, excluded_ids=excluded_ids, limit=50, additional_domain=[(amount_field,'>',0)])
ret = []
total = 0
# get_move_lines_counterparts inverts debit and credit
amount_field = 'debit' if amount_field == 'credit' else 'credit'
for line in mv_lines:
if total + line[amount_field] <= st_line.amount:
ret.append(line)
total += line[amount_field]
else:
break
return ret
def get_move_lines_counterparts(self, cr, uid, id, excluded_ids=[], str="", offset=0, limit=None, count=False, additional_domain=[], context=None):
""" Find the move lines that could be used to reconcile a statement line and returns the counterpart that could be created to reconcile them
If count is true, only returns the count.
:param integer id: the id of the statement line
:param integers list excluded_ids: ids of move lines that should not be fetched
:param string str: string to filter lines
:param integer offset: offset of the request
:param integer limit: number of lines to fetch
:param boolean count: just return the number of records
:param tuples list domain: additional domain restrictions
"""
if context is None:
context = {}
if not partner_id:
return res
account_id = False
line = self.browse(cr, uid, line_id, context=context)
if not line or (line and not line[0].account_id):
part = obj_partner.browse(cr, uid, partner_id, context=context)
if type == 'supplier':
account_id = part.property_account_payable.id
else:
account_id = part.property_account_receivable.id
res['value']['account_id'] = account_id
return res
rml_parser = report_sxw.rml_parse(cr, uid, 'statement_line_counterpart_widget', context=context)
st_line = self.browse(cr, uid, id, context=context)
company_currency = st_line.journal_id.company_id.currency_id
statement_currency = st_line.journal_id.currency or company_currency
mv_line_pool = self.pool.get('account.move.line')
currency_obj = self.pool.get('res.currency')
domain = additional_domain + [
('partner_id', '=', st_line.partner_id.id),
('reconcile_id', '=', False),
('state','=','valid'),
'|',('account_id.type', '=', 'receivable'),
('account_id.type', '=', 'payable'), #Let the front-end warn the user if he tries to mix payable and receivable in the same reconciliation
]
if excluded_ids:
domain.append(('id', 'not in', excluded_ids))
if str:
domain += ['|', ('move_id.name', 'ilike', str), ('move_id.ref', 'ilike', str)]
#partially reconciled lines can be displayed only once
reconcile_partial_ids = []
ids = mv_line_pool.search(cr, uid, domain, offset=offset, limit=limit, order="date_maturity asc, id asc", context=context)
if count:
nb_lines = 0
for line in mv_line_pool.browse(cr, uid, ids, context=context):
if line.reconcile_partial_id and line.reconcile_partial_id.id in reconcile_partial_ids:
continue
nb_lines += 1
if line.reconcile_partial_id:
reconcile_partial_ids.append(line.reconcile_partial_id.id)
return nb_lines
else:
ret = []
for line in mv_line_pool.browse(cr, uid, ids, context=context):
if line.reconcile_partial_id and line.reconcile_partial_id.id in reconcile_partial_ids:
continue
amount_currency_str = ""
if line.currency_id and line.amount_currency:
amount_currency_str = rml_parser.formatLang(line.amount_currency, currency_obj=line.currency_id)
ret_line = {
'id': line.id,
'name': line.move_id.name,
'ref': line.move_id.ref,
'account_code': line.account_id.code,
'account_name': line.account_id.name,
'account_type': line.account_id.type,
'date_maturity': line.date_maturity,
'date': line.date,
'period_name': line.period_id.name,
'journal_name': line.journal_id.name,
'amount_currency_str': amount_currency_str,
}
if statement_currency.id != company_currency.id and line.currency_id and line.currency_id.id == statement_currency.id:
if line.amount_residual_currency < 0:
ret_line['debit'] = 0
ret_line['credit'] = -line.amount_residual_currency
else:
ret_line['debit'] = line.amount_residual_currency if line.credit != 0 else 0
ret_line['credit'] = line.amount_residual_currency if line.debit != 0 else 0
ret_line['amount_currency_str'] = rml_parser.formatLang(line.amount_residual, currency_obj=company_currency)
else:
if line.amount_residual < 0:
ret_line['debit'] = 0
ret_line['credit'] = -line.amount_residual
else:
ret_line['debit'] = line.amount_residual if line.credit != 0 else 0
ret_line['credit'] = line.amount_residual if line.debit != 0 else 0
ctx = context.copy()
ctx.update({'date': st_line.date})
ret_line['debit'] = currency_obj.compute(cr, uid, statement_currency.id, company_currency.id, ret_line['debit'], context=ctx)
ret_line['credit'] = currency_obj.compute(cr, uid, statement_currency.id, company_currency.id, ret_line['credit'], context=ctx)
ret_line['debit_str'] = rml_parser.formatLang(ret_line['debit'], currency_obj=statement_currency)
ret_line['credit_str'] = rml_parser.formatLang(ret_line['credit'], currency_obj=statement_currency)
ret.append(ret_line)
if line.reconcile_partial_id:
reconcile_partial_ids.append(line.reconcile_partial_id.id)
return ret
def process_reconciliation(self, cr, uid, id, mv_line_dicts, context=None):
""" Creates a move line for each item of mv_line_dicts and for the statement line. Reconcile a new move line with its counterpart_move_line_id if specified. Finally, mark the statement line as reconciled by putting the newly created move id in the column journal_entry_id.
:param int id: id of the bank statement line
:param list of dicts mv_line_dicts: move lines to create. If counterpart_move_line_id is specified, reconcile with it
"""
st_line = self.browse(cr, uid, id, context=context)
company_currency = st_line.journal_id.company_id.currency_id
statement_currency = st_line.journal_id.currency or company_currency
bs_obj = self.pool.get('account.bank.statement')
am_obj = self.pool.get('account.move')
aml_obj = self.pool.get('account.move.line')
currency_obj = self.pool.get('res.currency')
# Checks
if st_line.journal_entry_id.id != False:
raise osv.except_osv(_('Error!'), _('The bank statement line was already reconciled.'))
for mv_line_dict in mv_line_dicts:
for field in ['debit', 'credit', 'amount_currency']:
if field not in mv_line_dict:
mv_line_dict[field] = 0.0
if mv_line_dict.get('counterpart_move_line_id'):
mv_line = aml_obj.browse(cr, uid, mv_line_dict.get('counterpart_move_line_id'), context=context)
if mv_line.reconcile_id:
raise osv.except_osv(_('Error!'), _('A selected move line was already reconciled.'))
# Create the move
move_name = st_line.statement_id.name + "/" + str(st_line.sequence)
move_vals = bs_obj._prepare_move(cr, uid, st_line, move_name, context=context)
move_id = am_obj.create(cr, uid, move_vals, context=context)
# Create the move line for the statement line
amount = currency_obj.compute(cr, uid, st_line.statement_id.currency.id, company_currency.id, st_line.amount, context=context)
bank_st_move_vals = bs_obj._prepare_bank_move_line(cr, uid, st_line, move_id, amount, company_currency.id, context=context)
aml_obj.create(cr, uid, bank_st_move_vals, context=context)
st_line_currency_rate = bank_st_move_vals['amount_currency'] and statement_currency.id == company_currency.id and (bank_st_move_vals['amount_currency'] / st_line.amount) or False
st_line_currency = bank_st_move_vals['currency_id']
# Complete the dicts
st_line_statement_id = st_line.statement_id.id
st_line_journal_id = st_line.journal_id.id
st_line_partner_id = st_line.partner_id.id
st_line_company_id = st_line.company_id.id
st_line_period_id = st_line.statement_id.period_id.id
for mv_line_dict in mv_line_dicts:
mv_line_dict['ref'] = move_name
mv_line_dict['move_id'] = move_id
mv_line_dict['period_id'] = st_line_period_id
mv_line_dict['journal_id'] = st_line_journal_id
mv_line_dict['partner_id'] = st_line_partner_id
mv_line_dict['company_id'] = st_line_company_id
mv_line_dict['statement_id'] = st_line_statement_id
if mv_line_dict.get('counterpart_move_line_id'):
mv_line = aml_obj.browse(cr, uid, mv_line_dict['counterpart_move_line_id'], context=context)
mv_line_dict['account_id'] = mv_line.account_id.id
if statement_currency.id != company_currency.id:
mv_line_dict['amount_currency'] = mv_line_dict['debit'] - mv_line_dict['credit']
mv_line_dict['currency_id'] = statement_currency.id
mv_line_dict['debit'] = currency_obj.compute(cr, uid, statement_currency.id, company_currency.id, mv_line_dict['debit'])
mv_line_dict['credit'] = currency_obj.compute(cr, uid, statement_currency.id, company_currency.id, mv_line_dict['credit'])
elif st_line_currency and st_line_currency_rate:
mv_line_dict['amount_currency'] = self.pool.get('res.currency').round(cr, uid, st_line.currency_id, (mv_line_dict['debit'] - mv_line_dict['credit']) * st_line_currency_rate)
mv_line_dict['currency_id'] = st_line_currency
# Create move lines
move_line_pairs_to_reconcile = []
for mv_line_dict in mv_line_dicts:
counterpart_move_line_id = None # NB : this attribute is irrelevant for aml_obj.create() and needs to be removed from the dict
if mv_line_dict.get('counterpart_move_line_id'):
counterpart_move_line_id = mv_line_dict['counterpart_move_line_id']
del mv_line_dict['counterpart_move_line_id']
new_aml_id = aml_obj.create(cr, uid, mv_line_dict, context=context)
if counterpart_move_line_id != None:
move_line_pairs_to_reconcile.append([new_aml_id, counterpart_move_line_id])
# Reconcile
for pair in move_line_pairs_to_reconcile:
# TODO : too slow
aml_obj.reconcile_partial(cr, uid, pair, context=context)
# Mark the statement line as reconciled
self.write(cr, uid, id, {'journal_entry_id': move_id}, context=context)
# FIXME : if it wasn't for the multicompany security settings in account_security.xml, the method would just
# return [('journal_entry_id', '=', False)]
# Unfortunately, that spawns a "no access rights" error ; it shouldn't.
def _needaction_domain_get(self, cr, uid, context=None):
user = self.pool.get("res.users").browse(cr, uid, uid)
return ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id]),('journal_entry_id', '=', False)]
_order = "statement_id desc, sequence"
_name = "account.bank.statement.line"
_description = "Bank Statement Line"
_inherit = ['ir.needaction_mixin']
_columns = {
'name': fields.char('Description', required=True),
'date': fields.date('Date', required=True),
'amount': fields.float('Amount', digits_compute=dp.get_precision('Account')),
'type': fields.selection([
('supplier','Supplier'),
('customer','Customer'),
('general','General')
], 'Type', required=True),
'partner_id': fields.many2one('res.partner', 'Partner'),
'account_id': fields.many2one('account.account','Account',
required=True),
'statement_id': fields.many2one('account.bank.statement', 'Statement',
select=True, required=True, ondelete='cascade'),
'bank_account_id': fields.many2one('res.partner.bank','Bank Account'),
'statement_id': fields.many2one('account.bank.statement', 'Statement', select=True, required=True, ondelete='cascade'),
'journal_id': fields.related('statement_id', 'journal_id', type='many2one', relation='account.journal', string='Journal', store=True, readonly=True),
'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'move_ids': fields.many2many('account.move',
'account_bank_statement_line_move_rel', 'statement_line_id','move_id',
'Moves'),
'ref': fields.char('Reference', size=32),
'note': fields.text('Notes'),
'sequence': fields.integer('Sequence', select=True, help="Gives the sequence order when displaying a list of bank statement lines."),
'company_id': fields.related('statement_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True),
'journal_entry_id': fields.many2one('account.move', 'Journal Entry'),
'amount_currency': fields.float('Amount Currency', help="The amount expressed in an optional other currency if it is a multi-currency entry.", digits_compute=dp.get_precision('Account')),
'currency_id': fields.many2one('res.currency', 'Currency', help="The optional other currency if it is a multi-currency entry."),
}
_defaults = {
'name': lambda self,cr,uid,context={}: self.pool.get('ir.sequence').get(cr, uid, 'account.bank.statement.line'),
'date': lambda self,cr,uid,context={}: context.get('date', fields.date.context_today(self,cr,uid,context=context)),
'type': 'general',
}
class account_statement_operation_template(osv.osv):
_name = "account.statement.operation.template"
_description = "Preset for the lines that can be created in a bank statement reconciliation"
_columns = {
'name': fields.char('Button Label', required=True),
'account_id': fields.many2one('account.account', 'Account', ondelete='cascade', domain=[('type','!=','view')]),
'label': fields.char('Label'),
'amount_type': fields.selection([('fixed', 'Fixed'),('percentage_of_total','Percentage of total amount'),('percentage_of_balance', 'Percentage of open balance')],
'Amount type', required=True),
'amount': fields.float('Amount', digits_compute=dp.get_precision('Account'), help="Leave to 0 to ignore."),
'tax_id': fields.many2one('account.tax', 'Tax', ondelete='cascade'),
'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account', ondelete='cascade'),
}
_defaults = {
'amount_type': 'fixed',
'amount': 0.0
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -216,7 +216,7 @@ class account_invoice(osv.osv):
_name = "account.invoice"
_inherit = ['mail.thread']
_description = 'Invoice'
_order = "id desc"
_order = "number desc, id desc"
_track = {
'type': {
},

View File

@ -796,6 +796,8 @@ class account_move_line(osv.osv):
raise osv.except_osv(_('Warning'), _("Journal Item '%s' (id: %s), Move '%s' is already reconciled!") % (line.name, line.id, line.move_id.name))
if line.reconcile_partial_id:
for line2 in line.reconcile_partial_id.line_partial_ids:
if line2.state != 'valid':
raise osv.except_osv(_('Warning'), _("Journal Item '%s' (id: %s) cannot be used in a reconciliation as it is not balanced!") % (line2.name, line2.id))
if not line2.reconcile_id:
if line2.id not in merges:
merges.append(line2.id)

View File

@ -6,10 +6,10 @@
<field name="currency_id" ref="base.EUR"/>
<field name="company_id" ref="base.main_company"/>
<field name="partner_id" ref="base.res_partner_1"/>
<field name="journal_id" ref="account.sales_journal"/>
<field name="journal_id" ref="account.expenses_journal"/>
<field name="state">draft</field>
<field name="type">in_invoice</field>
<field name="account_id" ref="account.a_recv"/>
<field name="account_id" ref="account.a_pay"/>
<field name="name">Test invoice 1</field>
</record>
<record id="test_tax_line" model="account.invoice.tax">

View File

@ -489,6 +489,13 @@
src_model="account.journal"/>
<!-- Bank statement -->
<record id="action_bank_reconcile_bank_statements" model="ir.actions.client">
<field name="name">Reconciliation on Bank Statements</field>
<field name="tag">bank_statement_reconciliation_view</field>
<field name="context">{'statement_id': active_id}</field>
</record>
<record id="view_account_bank_statement_filter" model="ir.ui.view">
<field name="name">account.cash.statement.select</field>
<field name="model">account.bank.statement</field>
@ -525,6 +532,7 @@
</tree>
</field>
</record>
<record id="view_bank_statement_search" model="ir.ui.view">
<field name="name">account.bank.statement.search</field>
<field name="model">account.bank.statement</field>
@ -544,6 +552,7 @@
</search>
</field>
</record>
<record id="view_bank_statement_form" model="ir.ui.view">
<field name="name">account.bank.statement.form</field>
<field name="model">account.bank.statement</field>
@ -551,14 +560,21 @@
<field name="arch" type="xml">
<form string="Bank Statement" version="7.0">
<header>
<button name="button_confirm_bank" states="draft" string="Confirm" type="object" class="oe_highlight"/>
<button name="button_dummy" states="draft" string="Compute" type="object" class="oe_highlight"/>
<field name="all_lines_reconciled" invisible="1" />
<span attrs="{'invisible':['|',('all_lines_reconciled','=',True),('line_ids','=',[])]}">
<button name="%(action_bank_reconcile_bank_statements)d" states="draft" string="Reconcile" type="action" class="oe_highlight"/>
</span>
<span attrs="{'invisible':[('all_lines_reconciled','=',False)]}">
<button name="button_confirm_bank" states="draft" string="Close" type="object" class="oe_highlight"/>
</span>
<button name="button_cancel" states="confirm" string="Cancel Statement" type="object"/>
<field name="state" widget="statusbar" statusbar_visible="draft,confirm"/>
</header>
<sheet>
<div class="oe_right oe_button_box" name="import_buttons">
<!-- Put here related buttons -->
<button class="oe_inline oe_stat_button" name="%(action_view_account_statement_from_invoice_lines)d"
string="Import Invoice" type="action"
attrs="{'invisible':[('state','=','confirm')]}" widget="statinfo" icon="fa-pencil-square-o"/>
</div>
<label for="name" class="oe_edit_only"/>
<h1><field name="name"/></h1>
@ -581,41 +597,30 @@
<notebook>
<page string="Transactions" name="statement_line_ids">
<field name="line_ids" context="{'date':date}">
<tree editable="bottom" string="Statement lines">
<tree editable="bottom" string="Statement lines" colors="grey:journal_entry_id!=False">
<field name="sequence" readonly="1" invisible="1"/>
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)" domain="[
<field name="journal_entry_id" invisible="1"/>
<field name="date" attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="name" attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="ref" attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="partner_id" domain="[
'&amp;',
'|',('parent_id','=',False),('is_company','=',True),
'|',('customer','=',True),('supplier','=',True)]" context="{'default_supplier': 1}"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="account_id" options='{"no_open":True}' domain="[('journal_id','=',parent.journal_id), ('company_id', '=', parent.company_id)]"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]"/>
<field name="amount"/>
'|',('customer','=',True),('supplier','=',True)]"
context="{'default_supplier': 1}"
attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="amount" attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="amount_currency" groups="base.group_multi_currency" attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="currency_id" groups="base.group_multi_currency" attrs="{'readonly' : [('journal_entry_id', '!=', False)] }"/>
<field name="bank_account_id" groups="base.group_no_one"/>
</tree>
<form string="Statement lines" version="7.0">
<group col="4">
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="account_id" domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view'), ('company_id', '=', parent.company_id)]"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]"/>
<field name="amount"/>
<field name="sequence" readonly="0"/>
</group>
<separator string="Notes"/>
<field name="note"/>
</form>
</field>
</page>
</notebook>
<group class="oe_subtotal_footer oe_right" colspan="2" name="sale_total">
<div class="oe_subtotal_footer_separator oe_inline">
<label for="balance_end" />
<button name="button_dummy" states="draft" string="(update)" type="object" class="oe_edit_only oe_link"/>
</div>
<field name="balance_end" nolabel="1" class="oe_subtotal_footer_separator" widget='monetary' options="{'currency_field': 'currency_id'}"/>
</group>
@ -683,6 +688,85 @@
<field name="filter" eval="True"/>
</record>
<record id="action_bank_reconcile" model="ir.actions.client">
<field name="name">Reconciliation on Bank Statements</field>
<field name="res_model">account.bank.statement.line</field>
<field name="tag">bank_statement_reconciliation_view</field>
</record>
<!-- because of the needaction badge, groups needs to be specified -->
<menuitem id="menu_bank_reconcile_bank_statements" name="Reconciliation on Bank Statements" parent="account.periodical_processing_reconciliation" groups="group_account_user" action="action_bank_reconcile" sequence="20"/>
<record id="view_account_statement_operation_template_form" model="ir.ui.view">
<field name="name">account.statement.operation.template.form</field>
<field name="model">account.statement.operation.template</field>
<field name="arch" type="xml">
<form string="Statement Operation Templates" version="7.0">
<sheet>
<div class="oe_title">
<label for="name" class="oe_edit_only"/>
<h1>
<field name="name"/>
</h1>
</div>
<group>
<group>
<field name="account_id"/>
<field name="amount_type"/>
<field name="tax_id"/>
</group>
<group>
<field name="label"/>
<label for="amount"/>
<div>
<field name="amount" class="oe_inline" />
<label string="%" class="oe_inline" attrs="{'invisible':[('amount_type','not in',('percentage_of_total', 'percentage_of_balance'))]}" />
</div>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record id="view_account_statement_operation_template_tree" model="ir.ui.view">
<field name="name">account.statement.operation.template.tree</field>
<field name="model">account.statement.operation.template</field>
<field name="arch" type="xml">
<tree string="Bank Reconciliation Move Presets">
<field name="name"/>
<field name="account_id"/>
<field name="amount_type"/>
</tree>
</field>
</record>
<record id="view_account_statement_operation_template_search" model="ir.ui.view">
<field name="name">account.statement.operation.template.search</field>
<field name="model">account.statement.operation.template</field>
<field name="arch" type="xml">
<search string="Bank Reconciliation Move preset">
<filter string="With tax" domain="[('tax_id','!=',False)]"/>
<field name="amount_type"/>
</search>
</field>
</record>
<record id="action_account_statement_operation_template" model="ir.actions.act_window">
<field name="name">Statement Operation Templates</field>
<field name="res_model">account.statement.operation.template</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_account_statement_operation_template_search"/>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to create a statement operation template.
</p><p>
Those can be used to quickly create a move line when reconciling
your bank statements.
</p>
</field>
</record>
<menuitem action="action_account_statement_operation_template" id="menu_action_account_statement_operation_template" parent="menu_configuration_misc" name="Statement Operation Templates" sequence="22"/>
<!-- Account Types -->
<record id="view_account_type_search" model="ir.ui.view">
<field name="name">account.account.type.search</field>
@ -1602,11 +1686,11 @@
<form string="Payment Term" version="7.0">
<group>
<group string="Amount Computation">
<field name="value"/>
<label for="value_amount" string="Amount To Pay" attrs="{'invisible':[('value','=','balance')]}"/>
<div attrs="{'invisible':[('value','=','balance')]}">
<field name="value_amount" class="oe_inline"/>
</div>
<field name="value"/>
<label for="value_amount" string="Amount To Pay" attrs="{'invisible':[('value','=','balance')]}"/>
<div attrs="{'invisible':[('value','=','balance')]}">
<field name="value_amount" class="oe_inline"/>
</div>
</group>
<group string="Due Date Computation">
<field name="days"/>
@ -2258,7 +2342,13 @@
<field name="arch" type="xml">
<form string="Statement" version="7.0">
<header>
<button name="button_confirm_cash" states="open" string="Close CashBox" type="object" class="oe_highlight"/>
<field name="all_lines_reconciled" invisible="1" />
<span attrs="{'invisible':['|',('all_lines_reconciled','=',True),('line_ids','=',[])]}">
<button name="%(action_bank_reconcile_bank_statements)d" states="open" string="Reconcile" type="action" class="oe_highlight"/>
</span>
<span attrs="{'invisible':[('all_lines_reconciled','=',False)]}">
<button name="button_confirm_cash" states="open" string="Close CashBox" type="object" class="oe_highlight"/>
</span>
<button name="button_open" states="draft" string="Open CashBox" type="object" class="oe_highlight"/>
<button name="button_cancel" states="confirm,open" string="Cancel CashBox" type="object"/>
<field name="state" widget="statusbar" nolabel="1" statusbar_visible="draft,confirm"/>
@ -2288,10 +2378,7 @@
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id','=',parent.journal_id), ('company_id', '=', parent.company_id)]" name="account_id"/>
<field name="analytic_account_id" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]" groups="analytic.group_analytic_accounting" />
<field name="partner_id"/>
<field name="amount"/>
</tree>
<form string="Statement lines" version="7.0">
@ -2299,10 +2386,7 @@
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view'), ('company_id', '=', parent.company_id)]" name="account_id"/>
<field name="analytic_account_id" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]" groups="analytic.group_analytic_accounting" />
<field name="partner_id"/>
<field name="amount"/>
<field name="sequence"/>
</group>

View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- A bank statement -->
<record id="demo_bank_statement_1" model="account.bank.statement">
<field name="journal_id" ref="account.bank_journal"/>
<field name="period_id" ref="account.period_5"/>
<field name="date" eval="time.strftime('%Y')+'-01-01'"/>
<field name="user_id" ref="base.user_demo"/>
<field name="reference_type">none</field>
<field name="name">BNK/2014/001</field>
<field name="balance_end" eval="2040.0"/>
<field name="company_id" ref="base.main_company"/>
<field name="state">draft</field>
<field name="balance_start" eval="0.0"/>
<field name="balance_end_real" eval="3707.58"/>
</record>
<record id="demo_bank_statement_line_1" model="account.bank.statement.line">
<field name="ref">001</field>
<field name="statement_id" ref="demo_bank_statement_1"/>
<field name="sequence" eval="1"/>
<field name="company_id" ref="base.main_company"/>
<field name="name">First 2000 € of SAJ/2014/001</field>
<field name="journal_id" ref="account.bank_journal"/>
<field name="amount" eval="2000.0"/>
<field name="date" eval="time.strftime('%Y')+'-01-01'"/>
<field name="partner_id" ref="base.res_partner_9"/>
</record>
<record id="demo_bank_statement_line_2" model="account.bank.statement.line">
<field name="ref">002</field>
<field name="statement_id" ref="demo_bank_statement_1"/>
<field name="sequence" eval="2"/>
<field name="company_id" ref="base.main_company"/>
<field name="name">SAJ/2014/002</field>
<field name="journal_id" ref="account.bank_journal"/>
<field name="amount" eval="650.0"/>
<field name="date" eval="time.strftime('%Y')+'-01-01'"/>
<field name="partner_id" ref="base.res_partner_9"/>
</record>
<record id="demo_bank_statement_line_3" model="account.bank.statement.line">
<field name="ref">003</field>
<field name="statement_id" ref="demo_bank_statement_1"/>
<field name="sequence" eval="3"/>
<field name="company_id" ref="base.main_company"/>
<field name="name">Bank fees</field>
<field name="journal_id" ref="account.bank_journal"/>
<field name="amount" eval="32.58"/>
<field name="date" eval="time.strftime('%Y')+'-01-01'"/>
</record>
<record id="demo_bank_statement_line_4" model="account.bank.statement.line">
<field name="ref">004</field>
<field name="statement_id" ref="demo_bank_statement_1"/>
<field name="sequence" eval="4"/>
<field name="company_id" ref="base.main_company"/>
<field name="name">SAJ/2014/003 and SAJ/2014/004</field>
<field name="journal_id" ref="account.bank_journal"/>
<field name="amount" eval="1025.0"/>
<field name="date" eval="time.strftime('%Y')+'-01-01'"/>
<field name="partner_id" ref="base.res_partner_2"/>
</record>
<!-- Statement operation templates -->
<record id="statement_operation_template_1" model="account.statement.operation.template">
<field name="name">Discount For Early Payment</field>
<field name="account_id" ref="a_expense"></field>
<field name="label">Discount</field>
<field name="amount_type">percentage_of_total</field>
<field name="amount">-7</field>
</record>
<record id="statement_operation_template_2" model="account.statement.operation.template">
<field name="name">Bank Fees</field>
<field name="account_id" ref="a_expense"></field>
<field name="label">Bank Fees</field>
<field name="amount_type">fixed</field>
<field name="amount"></field>
</record>
<record id="statement_operation_template_3" model="account.statement.operation.template">
<field name="name">Profit / Loss</field>
<field name="account_id" ref="a_sale"></field>
<field name="label">Profit / Loss</field>
<field name="amount_type">fixed</field>
<field name="amount"></field>
</record>
</data>
</openerp>

View File

@ -44,5 +44,135 @@
<field name="partner_id" ref="base.res_partner_17"/>
<field name="name">Zed+ Antivirus</field>
</record>
<!-- Some customer invoices used to show the reconciliation process on the bank statement -->
<record id="invoice_1" model="account.invoice">
<field name="currency_id" ref="base.EUR"/>
<field name="company_id" ref="base.main_company"/>
<field name="journal_id" ref="account.sales_journal"/>
<field name="state">draft</field>
<field name="type">out_invoice</field>
<field name="account_id" ref="a_recv"/>
<field name="partner_id" ref="base.res_partner_9"/>
</record>
<record id="invoice_1_line_1" model="account.invoice.line">
<field name="name">Otpez Laptop without OS</field>
<field name="invoice_id" ref="invoice_1"/>
<field name="price_unit">642</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<record id="invoice_1_line_2" model="account.invoice.line">
<field name="name">Linutop</field>
<field name="invoice_id" ref="invoice_1"/>
<field name="price_unit">280</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<workflow action="invoice_open" model="account.invoice" ref="invoice_1"/>
<record id="invoice_2" model="account.invoice">
<field name="currency_id" ref="base.EUR"/>
<field name="company_id" ref="base.main_company"/>
<field name="journal_id" ref="account.sales_journal"/>
<field name="state">draft</field>
<field name="type">out_invoice</field>
<field name="account_id" ref="a_recv"/>
<field name="partner_id" ref="base.res_partner_9"/>
<field eval="time.strftime('%Y-%m') + '-01'" name="date_invoice"/>
</record>
<record id="invoice_2_line_1" model="account.invoice.line">
<field name="name">8-port Switch</field>
<field name="invoice_id" ref="invoice_2"/>
<field name="price_unit">50</field>
<field name="quantity">3</field>
<field name="account_id" ref="a_sale"/>
</record>
<record id="invoice_2_line_2" model="account.invoice.line">
<field name="name">30m RJ45 wire</field>
<field name="invoice_id" ref="invoice_2"/>
<field name="price_unit">25</field>
<field name="quantity">20</field>
<field name="account_id" ref="a_sale"/>
</record>
<workflow action="invoice_open" model="account.invoice" ref="invoice_2"/>
<record id="invoice_3" model="account.invoice">
<field name="currency_id" ref="base.EUR"/>
<field name="company_id" ref="base.main_company"/>
<field name="journal_id" ref="account.sales_journal"/>
<field name="state">draft</field>
<field name="type">out_invoice</field>
<field name="account_id" ref="a_recv"/>
<field name="partner_id" ref="base.res_partner_2"/>
<field eval="time.strftime('%Y-%m') + '-08'" name="date_invoice"/>
</record>
<record id="invoice_3_line_1" model="account.invoice.line">
<field name="name">TypeMatrix Dvorak Keyboard</field>
<field name="invoice_id" ref="invoice_3"/>
<field name="price_unit">90</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<record id="invoice_3_line_2" model="account.invoice.line">
<field name="name">Ergonomic Mouse</field>
<field name="invoice_id" ref="invoice_3"/>
<field name="price_unit">15</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<workflow action="invoice_open" model="account.invoice" ref="invoice_3"/>
<record id="invoice_4" model="account.invoice">
<field name="currency_id" ref="base.EUR"/>
<field name="company_id" ref="base.main_company"/>
<field name="journal_id" ref="account.sales_journal"/>
<field name="state">draft</field>
<field name="type">out_invoice</field>
<field name="account_id" ref="a_recv"/>
<field name="partner_id" ref="base.res_partner_2"/>
<field eval="time.strftime('%Y-%m') + '-15'" name="date_invoice"/>
</record>
<record id="invoice_4_line_1" model="account.invoice.line">
<field name="name">Desktop Computer Table</field>
<field name="invoice_id" ref="invoice_4"/>
<field name="price_unit">80</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<record id="invoice_4_line_2" model="account.invoice.line">
<field name="name">Desktop Lamp</field>
<field name="invoice_id" ref="invoice_4"/>
<field name="price_unit">20</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<workflow action="invoice_open" model="account.invoice" ref="invoice_4"/>
<record id="invoice_5" model="account.invoice">
<field name="currency_id" ref="base.EUR"/>
<field name="company_id" ref="base.main_company"/>
<field name="journal_id" ref="account.sales_journal"/>
<field name="state">draft</field>
<field name="type">out_invoice</field>
<field name="account_id" ref="a_recv"/>
<field name="partner_id" ref="base.res_partner_9"/>
<field eval="time.strftime('%Y-%m') + '-08'" name="date_invoice"/>
</record>
<record id="invoice_5_line_1" model="account.invoice.line">
<field name="name">TypeMatrix Dvorak Keyboard</field>
<field name="invoice_id" ref="invoice_5"/>
<field name="price_unit">90</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<record id="invoice_5_line_2" model="account.invoice.line">
<field name="name">Ergonomic Mouse</field>
<field name="invoice_id" ref="invoice_5"/>
<field name="price_unit">15</field>
<field name="quantity">5</field>
<field name="account_id" ref="a_sale"/>
</record>
<workflow action="invoice_open" model="account.invoice" ref="invoice_5"/>
</data>
</openerp>

View File

@ -98,3 +98,4 @@ access_account_sequence_fiscal_year_sale_manager,account.sequence.fiscalyear.sal
access_account_treasury_report_manager,account.treasury.report.manager,model_account_treasury_report,account.group_account_manager,1,0,0,0
access_account_financial_report,account.financial.report,model_account_financial_report,account.group_account_user,1,1,1,1
access_account_financial_report_invoice,account.financial.report invoice,model_account_financial_report,account.group_account_invoice,1,0,0,0
access_account_statement_operation_template,account.statement.operation.template,model_account_statement_operation_template,account.group_account_user,1,1,1,1

1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
98 access_account_treasury_report_manager account.treasury.report.manager model_account_treasury_report account.group_account_manager 1 0 0 0
99 access_account_financial_report account.financial.report model_account_financial_report account.group_account_user 1 1 1 1
100 access_account_financial_report_invoice account.financial.report invoice model_account_financial_report account.group_account_invoice 1 0 0 0
101 access_account_statement_operation_template account.statement.operation.template model_account_statement_operation_template account.group_account_user 1 1 1 1

View File

@ -0,0 +1,264 @@
.openerp .oe_bank_statement_reconciliation {
font-size: 12px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
cursor: default;
/* icons */ }
.openerp .oe_bank_statement_reconciliation h1 {
width: 48%;
padding: 0 0 0 15px;
margin: 0 0 35px 0;
float: left;
font-size: 2.3em; }
.openerp .oe_bank_statement_reconciliation h2 {
font-size: 1.8em; }
.openerp .oe_bank_statement_reconciliation .progress {
width: 49%;
margin: 6px 15px 0 0;
float: right;
position: relative;
display: inline-block; }
.openerp .oe_bank_statement_reconciliation .progress .progress-text {
text-align: center;
position: absolute;
width: 100%;
left: 0;
top: 2px;
z-index: 10;
text-shadow: -1px -1px 0 #f5f5f5, 1px -1px 0 #f5f5f5, -1px 1px 0 #f5f5f5, 1px 1px 0 #f5f5f5; }
.openerp .oe_bank_statement_reconciliation .oe_form_sheet {
position: relative;
padding-bottom: 30px; }
.openerp .oe_bank_statement_reconciliation .protip {
margin: 0;
position: absolute;
bottom: 7px;
right: 15px;
text-align: right;
color: #bbb; }
.openerp .oe_bank_statement_reconciliation .done_message {
width: 100%;
padding: 0 20%;
margin-top: 50px;
margin-bottom: 50px; }
.openerp .oe_bank_statement_reconciliation .done_message h2 {
margin-bottom: 30px; }
.openerp .oe_bank_statement_reconciliation .done_message h2 .congrats_icon {
float: right;
font-size: 2em;
position: relative;
top: -0.25em; }
.openerp .oe_bank_statement_reconciliation .done_message .achievements {
margin-top: 30px;
text-align: center;
position: relative; }
.openerp .oe_bank_statement_reconciliation .done_message .achievements .achievement {
font-size: 4em;
margin: 0 0.3em;
position: relative;
vertical-align: middle;
text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.2); }
.openerp .oe_bank_statement_reconciliation .done_message .achievements .achievement i {
font-size: 0.5em;
color: white;
position: absolute;
top: 50%;
margin-top: -0.55em;
left: 0;
width: 100%;
text-align: center; }
.openerp .oe_bank_statement_reconciliation .done_message .action_buttons {
text-align: center; }
.openerp .oe_bank_statement_reconciliation .glyphicon {
font-size: 12px !important; }
.openerp .oe_bank_statement_reconciliation .glyphicon.line_info_button {
color: #ccc !important; }
.openerp .oe_bank_statement_reconciliation .accounting_view .glyphicon-add-remove:before {
content: "\2212"; }
.openerp .oe_bank_statement_reconciliation .match .glyphicon-add-remove:before {
content: "\2b"; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line {
margin-bottom: 30px;
/* gap between accounting_view and action view */
/* popover */
/* arrays of move lines */
/* Partie infos */
/* Match view */
/* Action create */ }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line table {
width: 100%; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .toggle_match, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .toggle_create {
-webkit-transition-property: -webkit-transform;
-moz-transition-property: -moz-transform;
-ms-transition-property: -ms-transform;
-o-transition-property: -o-transform;
transition-property: transform;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg); }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .visible_toggle, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line[data-mode="match"] .toggle_match, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line[data-mode="create"] .toggle_create {
visibility: visible !important;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg); }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .change_partner_container {
width: 200px;
display: none;
position: relative !important; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line[data-mode="inactive"] .initial_line > td {
background-color: #f8f8f8 !important; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line.no_match:not(.no_partner) .initial_line {
cursor: default !important; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line.no_match:not(.no_partner) .initial_line .line_info_button {
cursor: pointer; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line.no_match:not(.no_partner) .toggle_match {
visibility: hidden !important; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line.no_partner .partner_name, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line.no_partner .line_open_balance {
display: none !important; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line > table > tbody > tr:nth-child(1) > td table {
margin-bottom: 10px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line table.details td:first-child {
padding-right: 10px;
font-weight: bold; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table {
width: 100%; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr {
cursor: pointer; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr.created_line, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr.created_line {
cursor: default !important; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr.created_line .line_remove_button, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr.created_line .line_remove_button {
cursor: pointer; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td {
padding: 1px 8px;
vertical-align: middle; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(1), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(7), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(1), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(7) {
width: 15px;
padding: 0; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(1), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(1) {
text-align: left; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(2), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(2) {
width: 80px;
padding-left: 3px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(3), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(3) {
width: 100px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(5), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(5) {
text-align: right;
width: 15%; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(6), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(6) {
width: 15%;
text-align: right;
padding-right: 3px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(7), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table td:nth-child(7) {
text-align: right; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr.line_open_balance, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr.line_open_balance {
color: #bbb; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr .glyphicon:not(.line_info_button), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr .glyphicon:not(.line_info_button) {
visibility: hidden;
color: #555; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr:hover .glyphicon, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr.active .glyphicon, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr:hover .glyphicon, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr.active .glyphicon {
visibility: visible; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr .do_partial_reconcile_button, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr .do_partial_reconcile_button {
color: #f0ad4e;
padding-right: 5px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr .undo_partial_reconcile_button, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match table tr .undo_partial_reconcile_button {
color: #555;
padding-right: 5px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view .initial_line > td {
border-top: 1px solid #bbbbbb;
padding-top: 4px;
padding-bottom: 5px;
background-color: #f0f0f0;
-webkit-transition-property: background-color;
-moz-transition-property: background-color;
-ms-transition-property: background-color;
transition-property: background-color; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view .initial_line > td:nth-child(1), .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view .initial_line > td:nth-child(7) {
border-top: none;
background: white !important;
padding-top: 6px;
padding-bottom: 3px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view caption {
text-align: left;
font-size: 1.1em;
font-weight: bold;
height: 26px;
margin: 0 15px 4px 15px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view caption .button_ok {
float: right; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view caption .button_ok:disabled {
opacity: 0.5; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view caption > span, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view caption > input {
position: relative;
top: 7px;
/* meh */
font-weight: bold;
cursor: pointer; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view td:nth-child(6) {
border-left: 1px solid black; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr.initial_line > td:nth-child(5) {
border-top: 1px solid black; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .accounting_view tr.initial_line > td:nth-child(6) {
border-top: 1px solid black; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls {
padding: 0 0 5px 18px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls .filter {
width: 240px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls .pager_control_left, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls .pager_control_right {
display: inline-block;
cursor: pointer; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls .pager_control_left {
margin-right: 10px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls .pager_control_left.disabled, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .match_controls .pager_control_right.disabled {
color: #ddd;
cursor: default; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .match .show_more {
display: inline-block;
margin-left: 18px;
margin-top: 5px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create {
margin: 0 15px;
border: 1px solid #d5d5d5;
border-radius: 5px;
padding: 10px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .quick_add {
margin-bottom: 10px;
clear: both; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .quick_add:empty {
display: none; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .quick_add:empty {
display: none; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table {
width: 49%;
height: 26px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table:nth-child(2n+1) {
float: left; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table:nth-child(2n) {
float: right; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table th {
font-weight: bold;
line-height: 26px;
padding-right: 8px;
min-width: 100px;
border-right: 1px solid #ddd;
white-space: nowrap;
width: 1%; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table td {
width: 99%;
padding-left: 8px; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table input, .openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table select {
width: 100%; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table.add_line_container:nth-child(2n+1) {
width: 98%;
float: none;
margin: auto; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table.add_line_container td {
text-align: center; }
.openerp .oe_bank_statement_reconciliation .oe_bank_statement_reconciliation_line .create .oe_form > table.add_line_container .add_line {
line-height: 26px; }

View File

@ -0,0 +1,447 @@
$actionColWidth: 15px;
$mainTableBordersPadding: 3px;
$lightBorder: 1px solid #bbb;
$accountingBorder: 1px solid #000;
$initialLineBackground: #f0f0f0;
.openerp .oe_bank_statement_reconciliation {
font-size: 12px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
cursor: default;
h1 {
width: 48%;
padding: 0 0 0 $actionColWidth;
margin: 0 0 35px 0;
float: left;
font-size: 2.3em;
}
h2 {
font-size: 1.8em;
}
.progress {
width: 49%;
margin: 6px $actionColWidth 0 0;
float: right;
position: relative;
display: inline-block;
.progress-text {
text-align: center;
position: absolute;
width: 100%;
left: 0;
top: 2px;
z-index: 10;
text-shadow:
-1px -1px 0 #f5f5f5,
1px -1px 0 #f5f5f5,
-1px 1px 0 #f5f5f5,
1px 1px 0 #f5f5f5;
}
}
.oe_form_sheet {
position: relative;
padding-bottom: 30px;
}
.protip {
margin: 0;
position: absolute;
bottom: 7px;
right: 15px;
text-align: right;
color: #bbb;
}
.done_message {
width: 100%;
padding: 0 20%;
margin-top: 50px;
margin-bottom: 50px;
h2 {
margin-bottom: 30px;
.congrats_icon {
float: right;
font-size: 2em;
position: relative;
top: -0.25em;
}
}
.achievements {
margin-top: 30px;
text-align: center;
position: relative;
.achievement {
font-size: 4em;
margin: 0 0.3em;
position: relative;
vertical-align: middle;
text-shadow: 2px 2px 0px rgba(0,0,0,0.2);
i {
font-size: 0.5em;
color: white;
position: absolute;
top: 50%;
margin-top: -0.55em;
left: 0;
width: 100%;
text-align: center;
//text-shadow: 1px 1px 0 black;
}
}
}
.action_buttons {
text-align: center;
}
}
/* icons */
.glyphicon {
font-size: 12px !important;
&.line_info_button {
color: #ccc !important;
}
}
.accounting_view .glyphicon-add-remove:before {
content: "\2212";
}
.match .glyphicon-add-remove:before {
content: "\2b";
}
// bankStatementReconciliationLine widget
.oe_bank_statement_reconciliation_line {
margin-bottom: 30px;
table {
width: 100%;
}
// modes : default
.toggle_match, .toggle_create {
-webkit-transition-property: -webkit-transform;
-moz-transition-property: -moz-transform;
-ms-transition-property: -ms-transform;
-o-transition-property: -o-transform;
transition-property: transform;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
.visible_toggle {
visibility: visible !important;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg);
}
.change_partner_container {
width: 200px;
display: none;
position: relative !important;
}
// modes : specific
&[data-mode="match"] {
.toggle_match {
@extend .visible_toggle;
}
}
&[data-mode="create"] {
.toggle_create {
@extend .visible_toggle;
}
}
&[data-mode="inactive"] {
.initial_line > td {
background-color: ($initialLineBackground + #080808) !important;
}
}
&.no_match:not(.no_partner) {
.initial_line {
cursor: default !important;
.line_info_button {
cursor: pointer;
}
}
.toggle_match {
visibility: hidden !important;
}
}
&.no_partner {
.partner_name, .line_open_balance {
display: none !important;
}
}
/* gap between accounting_view and action view */
> table > tbody > tr:nth-child(1) > td table {
margin-bottom: 10px;
}
/* popover */
table.details {
td:first-child {
padding-right: 10px;
font-weight: bold;
}
}
/* arrays of move lines */
.accounting_view, .match table {
width: 100%;
tr {
cursor: pointer;
&.created_line {
cursor: default !important;
.line_remove_button {
cursor: pointer;
}
}
}
td {
padding: 1px 8px;
vertical-align: middle;
}
td:nth-child(1), td:nth-child(7) {
width: $actionColWidth;
padding: 0;
}
td:nth-child(1) {
text-align: left;
}
td:nth-child(2) {
width: 80px;
padding-left: $mainTableBordersPadding;
}
td:nth-child(3) {
width: 100px;
}
td:nth-child(4) {
}
td:nth-child(5) {
text-align: right;
width: 15%;
}
td:nth-child(6) {
width: 15%;
text-align: right;
padding-right: $mainTableBordersPadding;
}
td:nth-child(7) {
text-align: right;
}
tr.line_open_balance {
color: #bbb;
}
tr .glyphicon:not(.line_info_button) {
visibility: hidden;
color: #555;
}
tr:hover .glyphicon, tr.active .glyphicon {
visibility: visible;
}
tr .do_partial_reconcile_button {
color: #f0ad4e;
padding-right: 5px;
}
tr .undo_partial_reconcile_button {
color: #555;
padding-right: 5px;
}
}
/* Partie infos */
.accounting_view {
.initial_line > td {
border-top: $lightBorder;
padding-top: 4px;
padding-bottom: 5px;
background-color: $initialLineBackground;
-webkit-transition-property: background-color;
-moz-transition-property: background-color;
-ms-transition-property: background-color;
transition-property: background-color;
&:nth-child(1), &:nth-child(7) {
border-top: none;
background: white !important;
// Hack pour l'alignement au px près
padding-top: 6px;
padding-bottom: 3px;
}
}
caption {
text-align: left;
font-size: 1.1em;
font-weight: bold;
height: 26px;
margin: 0 $actionColWidth 4px $actionColWidth;
.button_ok {
float: right;
&:disabled {
opacity: 0.5;
}
}
> span, > input {
position: relative; top: 7px; /* meh */
font-weight: bold;
cursor: pointer;
}
}
// accounting "T"
td:nth-child(6) { border-left: $accountingBorder; }
tr.initial_line > td {
&:nth-child(5) { border-top: $accountingBorder; }
&:nth-child(6) { border-top: $accountingBorder; }
}
}
/* Match view */
.match {
.match_controls {
padding: 0 0 5px ($actionColWidth+$mainTableBordersPadding);
.filter {
width: 240px;
}
.pager_control_left, .pager_control_right {
display: inline-block;
cursor: pointer;
}
.pager_control_left {
margin-right: 10px;
}
.pager_control_left.disabled, .pager_control_right.disabled {
color: #ddd;
cursor: default;
}
}
.show_more {
display: inline-block;
margin-left: ($actionColWidth+$mainTableBordersPadding);
margin-top: 5px;
}
}
/* Action create */
.create {
margin: 0 $actionColWidth;
border: 1px solid #d5d5d5;
border-radius: 5px;
padding: 10px;
.quick_add {
margin-bottom: 10px;
clear: both;
&:empty {
display: none;
}
}
.quick_add:empty {
display: none;
}
.oe_form > table {
width: 49%;
height: 26px;
&:nth-child(2n+1) { float: left; }
&:nth-child(2n) { float: right; }
th {
font-weight: bold;
line-height: 26px;
padding-right: 8px;
min-width: 100px;
border-right: 1px solid #ddd;
white-space: nowrap;
width: 1%;
}
td {
width: 99%;
padding-left: 8px;
}
input, select {
width: 100%;
}
&.add_line_container {
&:nth-child(2n+1) {
width: 98%;
float: none;
margin: auto;
}
td {
text-align: center;
}
.add_line {
line-height: 26px;
}
}
}
}
}
}

View File

@ -1,130 +0,0 @@
openerp.account = function (instance) {
openerp.account.quickadd(instance);
var _t = instance.web._t,
_lt = instance.web._lt;
var QWeb = instance.web.qweb;
instance.web.account = instance.web.account || {};
instance.web.views.add('tree_account_reconciliation', 'instance.web.account.ReconciliationListView');
instance.web.account.ReconciliationListView = instance.web.ListView.extend({
init: function() {
this._super.apply(this, arguments);
var self = this;
this.current_partner = null;
this.on('record_selected', this, function() {
if (self.get_selected_ids().length === 0) {
self.$(".oe_account_recon_reconcile").attr("disabled", "");
} else {
self.$(".oe_account_recon_reconcile").removeAttr("disabled");
}
});
},
load_list: function() {
var self = this;
var tmp = this._super.apply(this, arguments);
if (this.partners) {
this.$el.prepend(QWeb.render("AccountReconciliation", {widget: this}));
this.$(".oe_account_recon_previous").click(function() {
self.current_partner = (((self.current_partner - 1) % self.partners.length) + self.partners.length) % self.partners.length;
self.search_by_partner();
});
this.$(".oe_account_recon_next").click(function() {
self.current_partner = (self.current_partner + 1) % self.partners.length;
self.search_by_partner();
});
this.$(".oe_account_recon_reconcile").click(function() {
self.reconcile();
});
this.$(".oe_account_recom_mark_as_reconciled").click(function() {
self.mark_as_reconciled();
});
}
return tmp;
},
do_search: function(domain, context, group_by) {
var self = this;
this.last_domain = domain;
this.last_context = context;
this.last_group_by = group_by;
this.old_search = _.bind(this._super, this);
var mod = new instance.web.Model("account.move.line", context, domain);
return mod.call("list_partners_to_reconcile", []).then(function(result) {
var current = self.current_partner !== null ? self.partners[self.current_partner][0] : null;
self.partners = result;
var index = _.find(_.range(self.partners.length), function(el) {
if (current === self.partners[el][0])
return true;
});
if (index !== undefined)
self.current_partner = index;
else
self.current_partner = self.partners.length == 0 ? null : 0;
self.search_by_partner();
});
},
search_by_partner: function() {
var self = this;
var fct = function() {
return self.old_search(new instance.web.CompoundDomain(self.last_domain,
[["partner_id", "in", self.current_partner === null ? [] :
[self.partners[self.current_partner][0]] ]]), self.last_context, self.last_group_by);
};
if (self.current_partner === null) {
self.last_reconciliation_date = _t("Never");
return fct();
} else {
return new instance.web.Model("res.partner").call("read",
[self.partners[self.current_partner][0], ["last_reconciliation_date"]]).then(function(res) {
self.last_reconciliation_date =
instance.web.format_value(res.last_reconciliation_date, {"type": "datetime"}, _t("Never"));
return fct();
});
}
},
reconcile: function() {
var self = this;
var ids = this.get_selected_ids();
if (ids.length === 0) {
new instance.web.Dialog(this, {
title: _t("Warning"),
size: 'medium',
}, $("<div />").text(_t("You must choose at least one record."))).open();
return false;
}
new instance.web.Model("ir.model.data").call("get_object_reference", ["account", "action_view_account_move_line_reconcile"]).then(function(result) {
var additional_context = _.extend({
active_id: ids[0],
active_ids: ids,
active_model: self.model
});
return self.rpc("/web/action/load", {
action_id: result[1],
context: additional_context
}).done(function (result) {
result.context = instance.web.pyeval.eval('contexts', [result.context, additional_context]);
result.flags = result.flags || {};
result.flags.new_window = true;
return self.do_action(result, {
on_close: function () {
self.do_search(self.last_domain, self.last_context, self.last_group_by);
}
});
});
});
},
mark_as_reconciled: function() {
var self = this;
var id = self.partners[self.current_partner][0];
new instance.web.Model("res.partner").call("mark_as_reconciled", [[id]]).then(function() {
self.do_search(self.last_domain, self.last_context, self.last_group_by);
});
},
do_select: function (ids, records) {
this.trigger('record_selected')
this._super.apply(this, arguments);
},
});
};

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,194 @@
<?xml version="1.0" encoding="UTF-8"?>
<templates xml:space="preserve">
<t t-name="bank_statement_nothing_to_reconcile">
<div class="oe_form_sheetbg"><div class="oe_form_sheet oe_form_sheet_width">
<div class="oe_view_nocontent"><p>
<b>Good Job!</b> Bank statements are fully reconciled.</p>
<p>This page displays all the bank transactions that are to be reconciled and provides with a neat interface to do so.</p>
</div>
</div></div>
</t>
<t t-name="bank_statement_reconciliation">
<div class="oe_form_sheetbg"><div class="oe_form_sheet oe_form_sheet_width">
<h1><t t-esc="title"/></h1>
<div class="progress progress-striped">
<div class="progress-text"><span class="valuenow">0</span> / <span class="valuemax"><t t-esc="total_lines"/></span></div>
<div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" t-att-aria-valuemax="total_lines" style="width: 0%;">
</div>
</div>
<div class="oe_clear"></div>
<div class="reconciliation_lines_container"></div>
<p class='protip'>Tip : Hit ctrl-enter to validate the whole sheet.</p>
</div></div>
</t>
<t t-name="bank_statement_reconciliation_done_message">
<div class='done_message'>
<h2><t t-raw="title" /></h2>
<p>It took you <strong><t t-esc="time_taken" /></strong> to reconcile <strong><t t-esc="transactions_done" /> transactions.<br/></strong> That's on average <t t-esc="sec_per_item" /> seconds per transaction.</p>
<t t-if="done_with_ctrl_enter !== 0">
<p>You validated <t t-esc="done_with_ctrl_enter" /> reconciliations with the ctrl-enter shortcut.</p>
</t>
<p class='achievements'>
<t t-foreach="achievements" t-as="achievement">
<i class='fa fa-certificate achievement' t-att-data-title='achievement.title' t-att-data-content='achievement.desc'><i t-att-class="'fa '+achievement.icon"></i></i>
</t>
</p>
<p class="action_buttons">
<t t-if="has_statement_id">
<button class="button_back_to_statement">Back to statement</button>
<button class="button_close_statement">Close the statement</button>
</t>
</p>
</div>
</t>
<t t-name="bank_statement_reconciliation_line">
<table t-att-data-mode="mode">
<tr>
<td>
<table class="accounting_view">
<caption>
<button class="button_ok"></button>
<span class="partner_name"><t t-esc="line.partner_name"/></span>
<div class="change_partner_container oe_form"></div>
</caption>
<tbody class="tbody_initial_line">
<tr class="initial_line">
<td><span class="toggle_match glyphicon glyphicon-cog"></span></td>
<td><t t-esc="line.account_code"/></td>
<td><t t-esc="line.date"/></td>
<td><t t-esc="line.name"/>
<t t-if="line.amount_currency_str"> (<t t-esc="line.amount_currency_str"/>)</t></td>
<td><t t-if="line.amount &gt; 0">
<t t-esc="line.amount_str"/></t></td>
<td><t t-if="line.amount &lt; 0">
<t t-esc="line.amount_str"/></t></td>
<td><span class="line_info_button glyphicon glyphicon-info-sign" t-att-data-content="line.q_popover"></span></td>
</tr>
</tbody>
<tbody class="tbody_matched_lines"></tbody>
<tbody class="tbody_created_lines"></tbody>
<tbody class="tbody_open_balance"></tbody>
</table>
</td>
</tr>
<tr>
<td>
<div class="action_pane match">
<div class="match_controls">
<input type="text" class="filter" placeholder="Filter" value="" />
<span class="pager_control_right pull-right glyphicon glyphicon-chevron-right"></span>
<span class="pager_control_left pull-right glyphicon glyphicon-chevron-left"></span>
</div>
<table></table>
</div>
<div class="action_pane create">
<!-- NB : I use a .quick_add:empty selector. whitespace characters being a node, there shall be none -->
<div class="quick_add btn-group btn-group-sm"><t t-foreach="presets" t-as="preset"><button type='button' class='btn btn-default preset' t-att-data-presetid="preset.id"><t t-esc="preset.name"/></button></t></div>
<div class="oe_form create_form">
<!-- here come some form_create_field -->
<table class="create_field add_line_container"><tr><td><a href="javascript:void(0)" class="add_line">New</a></td></tr></table>
</div>
</div>
</td>
</tr>
</table>
</t>
<t t-name="filter_no_match">
<tr><td style='text-align: center;'>No result matching '<t t-esc="filter_str" />'</td></tr>
</t>
<t t-name="form_create_field">
<table t-att-class='"create_field create_"+id'><tr>
<th><t t-esc="label"/></th>
<td class="create_account_container" t-att-class='"create_"+id+"_container"'></td>
</tr></table>
</t>
<t t-name="bank_statement_reconciliation_line_details">
<table class='details'>
<tr><td>Date</td><td><t t-esc="line.date"/></td></tr>
<tr><td>Partner</td><td><t t-esc="line.partner_name"/></td></tr>
<tr t-if="line.ref"><td>Transaction</td><td><t t-esc="line.ref"/></td></tr>
<tr><td>Description</td><td><t t-esc="line.name"/></td></tr>
<tr><td>Amount</td><td><t t-esc="line.amount_str"/><t t-if="line.amount_currency_str"> (<t t-esc="line.amount_currency_str"/>)</t></td></tr>
<tr><td>Account</td><td><t t-esc="line.account_code"/> <t t-esc="line.account_name"/></td></tr>
</table>
</t>
<t t-name="bank_statement_reconciliation_move_line">
<tr class="mv_line" t-att-data-lineid="line.id" t-att-data-selected="selected">
<td><span class="glyphicon glyphicon-add-remove"></span></td>
<td><t t-esc="line.account_code"/></td>
<td><t t-esc="line.q_due_date"/></td>
<td><t t-esc="line.q_label"/></td>
<td><t t-if="line.debit !== 0">
<t t-if="line.propose_partial_reconcile" t-call="icon_do_partial_reconciliation"></t>
<t t-if="line.partial_reconcile" t-call="icon_undo_partial_reconciliation"></t>
<t t-esc="line.debit_str"/>
</t></td>
<td><t t-if="line.credit !== 0">
<t t-if="line.propose_partial_reconcile"><t t-call="icon_do_partial_reconciliation" /></t>
<t t-if="line.partial_reconcile"><t t-call="icon_undo_partial_reconciliation" /></t>
<t t-esc="line.credit_str"/>
</t></td>
<td><span class="line_info_button glyphicon glyphicon-info-sign" t-att-data-content="line.q_popover"></span></td>
</tr>
</t>
<t t-name="icon_do_partial_reconciliation">
<i class="do_partial_reconcile_button fa fa-exclamation-triangle" data-content="This move's amount is higher than the transaction's amount. Click to do a partial reconciliation"></i>
</t>
<t t-name="icon_undo_partial_reconciliation">
<i class="undo_partial_reconcile_button fa fa-exclamation-triangle" data-content="Undo the partial reconciliation."></i>
</t>
<t t-name="bank_statement_reconciliation_move_line_details">
<table class='details'>
<tr><td>ID</td><td><t t-esc="line.id"/></td></tr>
<tr><td>Account</td><td><t t-esc="line.account_code"/> <t t-esc="line.account_name"/></td></tr>
<tr><td>Journal</td><td><t t-esc="line.journal_name"/></td></tr>
<tr><td>Period</td><td><t t-esc="line.period_name"/></td></tr>
<tr><td>Date</td><td><t t-esc="line.date"/></td></tr>
<tr><td>Due Date</td><td><t t-esc="line.q_due_date"/></td></tr>
<tr><td>Amount</td>
<td><t t-if="line.debit !== 0" t-esc="line.debit_str"/><t t-if="line.credit !== 0" t-esc="line.credit_str"/>
<t t-if="line.amount_currency_str"> (<t t-esc="line.amount_currency_str"/>)</t>
</td></tr>
</table>
</t>
<t t-name="bank_statement_reconciliation_created_line">
<tr class="created_line" t-att-data-lineid="line.id">
<td><t t-if="! line.no_remove_action"><span class="line_remove_button glyphicon glyphicon-remove"></span></t></td>
<td><t t-esc="line.account_num"/></td>
<td></td>
<td><t t-esc="line.label"/></td>
<td><t t-if="line.amount &lt; 0"><t t-esc="line.amount_str"/></t></td>
<td><t t-if="line.amount &gt; 0"><t t-esc="line.amount_str"/></t></td>
<td></td>
</tr>
</t>
<t t-name="bank_statement_reconciliation_line_open_balance">
<tr class="line_open_balance">
<td><span class="toggle_create glyphicon glyphicon-play"></span></td>
<td><t t-esc="account_code"/></td>
<td></td>
<td>Open balance</td>
<td><t t-esc="debit"/></td>
<td><t t-esc="credit"/></td>
<td></td>
</tr>
</t>
</templates>

View File

@ -76,4 +76,4 @@
I check that the past accounts are taken into account in partner credit
-
!assert {model: res.partner, id: base.res_partner_2, string: Total Receivable does not takes unreconciled moves of previous years}:
- credit == 15.0
- credit == 1040.0

View File

@ -8,7 +8,8 @@
<link rel="stylesheet" href="/account/static/src/css/account_move_reconciliation.css"/>
<link rel="stylesheet" href="/account/static/src/css/account_move_line_quickadd.css"/>
<link rel="stylesheet" href="/account/static/src/css/account_bank_and_cash.css"/>
<script type="text/javascript" src="/account/static/src/js/account_move_reconciliation.js"></script>
<link rel="stylesheet" href="/account/static/src/css/account_bank_statement_reconciliation.css"/>
<script type="text/javascript" src="/account/static/src/js/account_widgets.js"></script>
<script type="text/javascript" src="/account/static/src/js/account_move_line_quickadd.js"></script>
</xpath>
</template>

View File

@ -63,8 +63,6 @@ import account_report_account_balance
import account_change_currency
import pos_box;
import pos_box
import account_statement_from_invoice
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -22,7 +22,6 @@
import time
from openerp.osv import fields, osv
from openerp.tools.translate import _
class account_statement_from_invoice_lines(osv.osv_memory):
"""
@ -40,7 +39,7 @@ class account_statement_from_invoice_lines(osv.osv_memory):
statement_id = context.get('statement_id', False)
if not statement_id:
return {'type': 'ir.actions.act_window_close'}
data = self.read(cr, uid, ids, context=context)[0]
data = self.read(cr, uid, ids, context=context)[0]
line_ids = data['line_ids']
if not line_ids:
return {'type': 'ir.actions.act_window_close'}
@ -49,14 +48,11 @@ class account_statement_from_invoice_lines(osv.osv_memory):
statement_obj = self.pool.get('account.bank.statement')
statement_line_obj = self.pool.get('account.bank.statement.line')
currency_obj = self.pool.get('res.currency')
voucher_obj = self.pool.get('account.voucher')
voucher_line_obj = self.pool.get('account.voucher.line')
line_date = time.strftime('%Y-%m-%d')
statement = statement_obj.browse(cr, uid, statement_id, context=context)
# for each selected move lines
for line in line_obj.browse(cr, uid, line_ids, context=context):
voucher_res = {}
ctx = context.copy()
# take the date for computation of currency => use payment date
ctx['date'] = line_date
@ -70,55 +66,19 @@ class account_statement_from_invoice_lines(osv.osv_memory):
if line.amount_currency:
amount = currency_obj.compute(cr, uid, line.currency_id.id,
statement.currency.id, line.amount_currency, context=ctx)
elif (line.invoice and line.invoice.currency_id.id <> statement.currency.id):
elif (line.invoice and line.invoice.currency_id.id != statement.currency.id):
amount = currency_obj.compute(cr, uid, line.invoice.currency_id.id,
statement.currency.id, amount, context=ctx)
context.update({'move_line_ids': [line.id],
'invoice_id': line.invoice.id})
type = 'general'
ttype = amount < 0 and 'payment' or 'receipt'
sign = 1
if line.journal_id.type in ('sale', 'sale_refund'):
type = 'customer'
ttype = 'receipt'
elif line.journal_id.type in ('purchase', 'purhcase_refund'):
type = 'supplier'
ttype = 'payment'
sign = -1
result = voucher_obj.onchange_partner_id(cr, uid, [], partner_id=line.partner_id.id, journal_id=statement.journal_id.id, amount=sign*amount, currency_id= statement.currency.id, ttype=ttype, date=line_date, context=context)
voucher_res = { 'type': ttype,
'name': line.name,
'partner_id': line.partner_id.id,
'journal_id': statement.journal_id.id,
'account_id': result['value'].get('account_id', statement.journal_id.default_credit_account_id.id),
'company_id': statement.company_id.id,
'currency_id': statement.currency.id,
'date': statement.date,
'amount': sign*amount,
'payment_rate': result['value']['payment_rate'],
'payment_rate_currency_id': result['value']['payment_rate_currency_id'],
'period_id':statement.period_id.id}
voucher_id = voucher_obj.create(cr, uid, voucher_res, context=context)
voucher_line_dict = {}
for line_dict in result['value']['line_cr_ids'] + result['value']['line_dr_ids']:
move_line = line_obj.browse(cr, uid, line_dict['move_line_id'], context)
if line.move_id.id == move_line.move_id.id:
voucher_line_dict = line_dict
if voucher_line_dict:
voucher_line_dict.update({'voucher_id': voucher_id})
voucher_line_obj.create(cr, uid, voucher_line_dict, context=context)
statement_line_obj.create(cr, uid, {
'name': line.name or '?',
'amount': amount,
'type': type,
'partner_id': line.partner_id.id,
'account_id': line.account_id.id,
'statement_id': statement_id,
'ref': line.ref,
'voucher_id': voucher_id,
'date': statement.date,
}, context=context)
return {'type': 'ir.actions.act_window_close'}

View File

@ -56,7 +56,6 @@ class CashBoxIn(CashBox):
return {
'statement_id' : record.id,
'journal_id' : record.journal_id.id,
'account_id' : record.journal_id.internal_account_id.id,
'amount' : box.amount or 0.0,
'ref' : '%s' % (box.ref or ''),
'name' : box.name,
@ -73,7 +72,6 @@ class CashBoxOut(CashBox):
return {
'statement_id' : record.id,
'journal_id' : record.journal_id.id,
'account_id' : record.journal_id.internal_account_id.id,
'amount' : -amount if amount > 0.0 else amount,
'name' : box.name,
}

View File

@ -74,6 +74,7 @@ The analytic plan validates the minimum and maximum percentage at the time of cr
'wizard/analytic_plan_create_model_view.xml',
'wizard/account_crossovered_analytic_view.xml',
'views/report_crossoveredanalyticplans.xml',
'views/account_analytic_plans.xml',
],
'demo': [],
'test': ['test/acount_analytic_plans_report.yml'],

View File

@ -233,57 +233,25 @@
<!-- add property field on default analytic account-->
<record model="ir.ui.view" id="view_default_inherit_form">
<field name="name">account.analytic.default.form.plans</field>
<field name="model">account.analytic.default</field>
<field name="inherit_id" ref="account_analytic_default.view_account_analytic_default_form"/>
<field name="arch" type="xml">
<field name="analytic_id" required="1" position="replace">
<field name="analytics_id" required="1"/>
</field>
<record model="ir.ui.view" id="view_default_inherit_form">
<field name="name">account.analytic.default.form.plans</field>
<field name="model">account.analytic.default</field>
<field name="inherit_id" ref="account_analytic_default.view_account_analytic_default_form"/>
<field name="arch" type="xml">
<field name="analytic_id" required="1" position="replace">
<field name="analytics_id" required="1"/>
</field>
</record>
<record model="ir.ui.view" id="view_default_inherit_tree">
<field name="name">account.analytic.default.tree.plans</field>
<field name="model">account.analytic.default</field>
<field name="inherit_id" ref="account_analytic_default.view_account_analytic_default_tree"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='analytic_id']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//field[@name='analytic_id']" position="after">
<field name="analytics_id" required="1"/>
</xpath>
</field>
</record>
<record id="view_bank_statement_inherit_form" model="ir.ui.view">
<field name="name">account.bank.statement.form.inherit</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_form"/>
<field name="arch" type="xml">
<xpath expr="/form/sheet/notebook/page/field[@name='line_ids']/tree/field[@name='analytic_account_id']" position="replace">
<field name="analytics_id" groups="analytic.group_analytic_accounting"/>
</xpath>
<xpath expr="/form/sheet/notebook/page/field[@name='line_ids']/form/group/field[@name='analytic_account_id']" position="replace">
<field name="analytics_id" groups="analytic.group_analytic_accounting"/>
</xpath>
</field>
</record>
<record id="view_bank_statement_inherit_form2" model="ir.ui.view">
<field name="name">account.bank.statement.form.inherit</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
<field name="arch" type="xml">
<xpath expr="/form/sheet/notebook/page/field[@name='line_ids']/tree/field[@name='analytic_account_id']" position="replace">
<field name="analytics_id" groups="analytic.group_analytic_accounting"/>
</xpath>
<xpath expr="/form/sheet/notebook/page/field[@name='line_ids']/form/group/field[@name='analytic_account_id']" position="replace">
<field name="analytics_id" groups="analytic.group_analytic_accounting"/>
</xpath>
</field>
</record>
</field>
</record>
<record model="ir.ui.view" id="view_default_inherit_tree">
<field name="name">account.analytic.default.tree.plans</field>
<field name="model">account.analytic.default</field>
<field name="inherit_id" ref="account_analytic_default.view_account_analytic_default_tree"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='analytic_id']" position="replace">
<field name="analytics_id" required="1"/>
</xpath>
</field>
</record>
</data>
</openerp>

View File

@ -0,0 +1,35 @@
openerp.account_analytic_plans = function(instance) {
var _t = instance.web._t,
_lt = instance.web._lt;
var QWeb = instance.web.qweb;
instance.web.account.bankStatementReconciliation.include({
init: function(parent, context) {
this._super(parent, context);
delete this.create_form_fields.analytic_account_id;
this.create_form_fields["analytic_plan"] = {
id: "analytic_plan",
index: 4,
corresponding_property: "analytics_id",
label: _t("Analytic Distribution"),
required: false,
tabindex: 14,
group: "analytic.group_analytic_accounting",
constructor: instance.web.form.FieldMany2One,
field_properties: {
relation: "account.analytic.plan.instance",
string: _t("Analytic Distribution"),
type: "many2one",
}
};
},
start: function() {
return this._super().then(function() {
});
},
});
};

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- vim:fdn=3:
-->
<openerp>
<data>
<template id="assets_backend" name="account analytic plans assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript" src="/account_analytic_plans/static/src/js/account_bank_reconciliation.js"></script>
</xpath>
</template>
</data>
</openerp>

View File

@ -42,20 +42,11 @@
<field name="inherit_id" ref="account.view_bank_statement_form"/>
<field name="arch" type="xml">
<data>
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='date']" position="after">
<field name="val_date" invisible="1"/>
</xpath>
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='amount']" position="after">
<field name="val_date" invisible="1"/>
<field name="globalisation_id" string="Glob. Id" invisible="1"/>
<field name="state" invisible="1"/>
</xpath>
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='date']" position="after">
<field name="val_date"/>
</xpath>
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='amount']" position="after">
<field name="globalisation_id"/>
<field name="state" invisible="1"/>
</xpath>
</data>
</field>
</record>
@ -74,10 +65,7 @@
<field name="name"/>
<field name="statement_id"/>
<field name="ref" readonly="1"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('type', '&lt;&gt;', 'view')]"/>
<field name="partner_id"/>
<field name="amount" readonly="1" sum="Total Amount"/>
<field name="globalisation_id" string="Glob. Id"/>
<field name="globalisation_amount" string="Glob. Am."/>
@ -98,10 +86,7 @@
<field name="val_date"/>
<field name="name"/>
<field name="ref" readonly="0"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('type', '&lt;&gt;', 'view')]"/>
<field name="partner_id"/>
<field name="amount"/>
<field name="globalisation_id"/>
<field name="sequence" readonly="0"/>
@ -129,7 +114,6 @@
<field name="statement_id"/>
<field name="globalisation_id" string="Glob. Id"/>
<group string="Extended Filters..." expand="0">
<field name="account_id"/>
<field name="partner_id"/>
<field name="amount"/>
<field name="globalisation_amount" string="Glob. Amount"/>
@ -138,7 +122,6 @@
<group string="Group By" expand="1">
<filter string="Journal" context="{'group_by':'journal_id'}" icon="terp-folder-green"/>
<filter string="Statement" context="{'group_by':'statement_id'}" icon="terp-folder-orange"/>
<filter string="Fin.Account" context="{'group_by':'account_id'}" icon="terp-folder-yellow"/>
</group>
</search>
</field>

View File

@ -107,12 +107,9 @@ class account_payment_populate_statement(osv.osv_memory):
st_line_id = statement_line_obj.create(cr, uid, {
'name': line.order_id.reference or '?',
'amount': - amount,
'type': 'supplier',
'partner_id': line.partner_id.id,
'account_id': line.move_line_id.account_id.id,
'statement_id': statement.id,
'ref': line.communication,
'voucher_id': voucher_id,
}, context=context)
line_obj.write(cr, uid, [line.id], {'bank_statement_line_id': st_line_id})

View File

@ -22,6 +22,5 @@
import account_voucher
import invoice
import report
import wizard
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -49,7 +49,6 @@ This module manages:
'security/ir.model.access.csv',
'account_voucher_sequence.xml',
'account_voucher_workflow.xml',
'wizard/account_statement_from_invoice_view.xml',
'account_voucher_view.xml',
'voucher_payment_receipt_view.xml',
'voucher_sales_purchase_view.xml',

View File

@ -327,7 +327,6 @@ class account_voucher(osv.osv):
}
_columns = {
'active': fields.boolean('Active', help="By default, reconciliation vouchers made on draft bank statements are set as inactive, which allow to hide the customer/supplier payment while the bank statement isn't confirmed."),
'type':fields.selection([
('sale','Sale'),
('purchase','Purchase'),
@ -389,7 +388,6 @@ class account_voucher(osv.osv):
'currency_help_label': fields.function(_fnct_currency_help_label, type='text', string="Helping Sentence", help="This sentence helps you to know how to specify the payment rate by giving you the direct effect it has"),
}
_defaults = {
'active': True,
'period_id': _get_period,
'partner_id': _get_partner,
'journal_id':_get_journal,
@ -1583,114 +1581,6 @@ class account_voucher_line(osv.osv):
})
return values
class account_bank_statement(osv.osv):
_inherit = 'account.bank.statement'
def button_confirm_bank(self, cr, uid, ids, context=None):
voucher_obj = self.pool.get('account.voucher')
voucher_ids = []
for statement in self.browse(cr, uid, ids, context=context):
voucher_ids += [line.voucher_id.id for line in statement.line_ids if line.voucher_id]
if voucher_ids:
voucher_obj.write(cr, uid, voucher_ids, {'active': True}, context=context)
return super(account_bank_statement, self).button_confirm_bank(cr, uid, ids, context=context)
def button_cancel(self, cr, uid, ids, context=None):
voucher_obj = self.pool.get('account.voucher')
for st in self.browse(cr, uid, ids, context=context):
voucher_ids = []
for line in st.line_ids:
if line.voucher_id:
voucher_ids.append(line.voucher_id.id)
voucher_obj.cancel_voucher(cr, uid, voucher_ids, context)
return super(account_bank_statement, self).button_cancel(cr, uid, ids, context=context)
def create_move_from_st_line(self, cr, uid, st_line_id, company_currency_id, next_number, context=None):
voucher_obj = self.pool.get('account.voucher')
move_line_obj = self.pool.get('account.move.line')
bank_st_line_obj = self.pool.get('account.bank.statement.line')
st_line = bank_st_line_obj.browse(cr, uid, st_line_id, context=context)
if st_line.voucher_id:
voucher_obj.write(cr, uid, [st_line.voucher_id.id],
{'number': next_number,
'date': st_line.date,
'period_id': st_line.statement_id.period_id.id},
context=context)
if st_line.voucher_id.state == 'cancel':
voucher_obj.action_cancel_draft(cr, uid, [st_line.voucher_id.id], context=context)
voucher_obj.signal_proforma_voucher(cr, uid, [st_line.voucher_id.id])
v = voucher_obj.browse(cr, uid, st_line.voucher_id.id, context=context)
bank_st_line_obj.write(cr, uid, [st_line_id], {
'move_ids': [(4, v.move_id.id, False)]
})
return move_line_obj.write(cr, uid, [x.id for x in v.move_ids], {'statement_id': st_line.statement_id.id}, context=context)
return super(account_bank_statement, self).create_move_from_st_line(cr, uid, st_line.id, company_currency_id, next_number, context=context)
def write(self, cr, uid, ids, vals, context=None):
# Restrict to modify the journal if we already have some voucher of reconciliation created/generated.
# Because the voucher keeps in memory the journal it was created with.
for bk_st in self.browse(cr, uid, ids, context=context):
if vals.get('journal_id') and bk_st.line_ids:
if any([x.voucher_id and True or False for x in bk_st.line_ids]):
raise osv.except_osv(_('Unable to Change Journal!'), _('You can not change the journal as you already reconciled some statement lines!'))
return super(account_bank_statement, self).write(cr, uid, ids, vals, context=context)
class account_bank_statement_line(osv.osv):
_inherit = 'account.bank.statement.line'
def onchange_partner_id(self, cr, uid, ids, partner_id, context=None):
res = super(account_bank_statement_line, self).onchange_partner_id(cr, uid, ids, partner_id, context=context)
if 'value' not in res:
res['value'] = {}
res['value'].update({'voucher_id' : False})
return res
def onchange_amount(self, cr, uid, ids, amount, context=None):
return {'value' : {'voucher_id' : False}}
def _amount_reconciled(self, cursor, user, ids, name, args, context=None):
if not ids:
return {}
res = {}
for line in self.browse(cursor, user, ids, context=context):
if line.voucher_id:
res[line.id] = line.voucher_id.amount#
else:
res[line.id] = 0.0
return res
def _check_amount(self, cr, uid, ids, context=None):
for obj in self.browse(cr, uid, ids, context=context):
if obj.voucher_id:
diff = abs(obj.amount) - abs(obj.voucher_id.amount)
if not self.pool.get('res.currency').is_zero(cr, uid, obj.statement_id.currency, diff):
return False
return True
_constraints = [
(_check_amount, 'The amount of the voucher must be the same amount as the one on the statement line.', ['amount']),
]
_columns = {
'amount_reconciled': fields.function(_amount_reconciled,
string='Amount reconciled', type='float'),
'voucher_id': fields.many2one('account.voucher', 'Reconciliation'),
}
def unlink(self, cr, uid, ids, context=None):
voucher_obj = self.pool.get('account.voucher')
statement_line = self.browse(cr, uid, ids, context=context)
unlink_ids = []
for st_line in statement_line:
if st_line.voucher_id:
unlink_ids.append(st_line.voucher_id.id)
voucher_obj.unlink(cr, uid, unlink_ids, context=context)
return super(account_bank_statement_line, self).unlink(cr, uid, ids, context=context)
def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context):
results = []
for operation in operations:

View File

@ -194,58 +194,6 @@
<field name="search_view_id" ref="view_voucher_filter"/>
</record>
<record id="view_bank_statement_form_invoice" model="ir.ui.view">
<field name="name">account.bank.statement.invoice.form.inherit</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_form"/>
<field name="arch" type="xml">
<xpath expr="//div[@name='import_buttons']" position="inside">
<button class="oe_inline oe_stat_button" name="%(action_view_account_statement_from_invoice_lines)d"
string="Import Invoice" type="action"
attrs="{'invisible':[('state','=','confirm')]}" widget="statinfo" icon="fa-pencil-square-o"/>
</xpath>
</field>
</record>
<record id="view_bank_statement_form_voucher" model="ir.ui.view">
<field name="name">account.bank.statement.voucher.tree.inherit</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_form"/>
<field name="arch" type="xml">
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='amount']" position="after">
<field name="voucher_id" string="" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount &lt; 0 and 'payment' or 'receipt', 'type': amount &lt; 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False, 'account_id': account_id}"/>
</xpath>
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='sequence']" position="before">
<field name="voucher_id" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount &lt; 0 and 'payment' or 'receipt', 'type': amount &lt; 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False, 'account_id': account_id}"/>
</xpath>
<field name="amount" position="attributes">
<attribute name="on_change">onchange_amount(amount)</attribute>
</field>
</field>
</record>
<record id="view_cash_statement_tree_voucher" model="ir.ui.view">
<field name="name">account.cash.statement.voucher.tree.inherit</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
<field name="arch" type="xml">
<xpath expr="//page/field[@name='line_ids']/tree/field[@name='amount']" position="after">
<field name="voucher_id" context="{'line_type': type, 'default_type': amount &lt; 0 and 'payment' or 'receipt', 'type': amount &lt; 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'account_id': account_id}"/>
</xpath>
</field>
</record>
<record id="view_cash_statement_form_voucher" model="ir.ui.view">
<field name="name">account.cash.statement.voucher.form.inherit</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
<field name="arch" type="xml">
<xpath expr="//page/field[@name='line_ids']/form/group/field[@name='amount']" position="after">
<field name="voucher_id" context="{'line_type': type, 'default_type': amount &lt; 0 and 'payment' or 'receipt', 'type': amount &lt; 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'account_id': account_id}"/>
</xpath>
</field>
</record>
<!-- res.config form view -->
<record model="ir.ui.view" id="view_account_settings_currency_xchange_form">
<field name="name">account.config.settings.inherit</field>

View File

@ -1,24 +0,0 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import account_statement_from_invoice
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -11,6 +11,7 @@ from openerp import SUPERUSER_ID
from openerp import http
from openerp.http import request
from openerp.addons.web.controllers.main import db_monodb, ensure_db, set_cookie_and_redirect, login_and_redirect
from openerp.addons.auth_signup.controllers.main import AuthSignupHome as Home
from openerp.modules.registry import RegistryManager
from openerp.tools.translate import _
@ -44,7 +45,7 @@ def fragment_to_query_string(func):
#----------------------------------------------------------
# Controller
#----------------------------------------------------------
class OAuthLogin(openerp.addons.web.controllers.main.Home):
class OAuthLogin(Home):
def list_providers(self):
try:
provider_obj = request.registry.get('auth.oauth.provider')
@ -67,10 +68,13 @@ class OAuthLogin(openerp.addons.web.controllers.main.Home):
return providers
def get_state(self, provider):
redirect = request.params.get('redirect', 'web')
if not redirect.startswith(('//', 'http://', 'https://')):
redirect = '%s%s' % (request.httprequest.url_root, redirect)
state = dict(
d=request.session.db,
p=provider['id'],
r=request.httprequest.full_path
r=redirect,
)
token = request.params.get('token')
if token:
@ -141,8 +145,7 @@ class OAuthController(http.Controller):
menu = state.get('m')
redirect = state.get('r')
url = '/web'
if redirect and not redirect.startswith('/auth_oauth/signin') and \
(not redirect.startswith('/web/login') or 'redirect' in urlparse.urlsplit(redirect).query):
if redirect:
url = redirect
elif action:
url = '/web#action=%s' % action

View File

@ -6,6 +6,7 @@ import urllib2
import simplejson
import openerp
from openerp.addons.auth_signup.res_users import SignupError
from openerp.osv import osv, fields
from openerp import SUPERUSER_ID
@ -55,14 +56,37 @@ class res_users(osv.Model):
This method can be overridden to add alternative signin methods.
"""
oauth_uid = validation['user_id']
user_ids = self.search(cr, uid, [("oauth_uid", "=", oauth_uid), ('oauth_provider_id', '=', provider)])
if not user_ids:
raise openerp.exceptions.AccessDenied()
assert len(user_ids) == 1
user = self.browse(cr, uid, user_ids[0], context=context)
user.write({'oauth_access_token': params['access_token']})
return user.login
try:
oauth_uid = validation['user_id']
user_ids = self.search(cr, uid, [("oauth_uid", "=", oauth_uid), ('oauth_provider_id', '=', provider)])
if not user_ids:
raise openerp.exceptions.AccessDenied()
assert len(user_ids) == 1
user = self.browse(cr, uid, user_ids[0], context=context)
user.write({'oauth_access_token': params['access_token']})
return user.login
except openerp.exceptions.AccessDenied, access_denied_exception:
if context and context.get('no_user_creation'):
return None
state = simplejson.loads(params['state'])
token = state.get('t')
oauth_uid = validation['user_id']
email = validation.get('email', 'provider_%s_user_%s' % (provider, oauth_uid))
name = validation.get('name', email)
values = {
'name': name,
'login': email,
'email': email,
'oauth_provider_id': provider,
'oauth_uid': oauth_uid,
'oauth_access_token': params['access_token'],
'active': True,
}
try:
_, login, _ = self.signup(cr, uid, values, token, context=context)
return login
except SignupError:
raise access_denied_exception
def auth_oauth(self, cr, uid, provider, params, context=None):
# Advice by Google (to avoid Confused Deputy Problem)

View File

@ -87,6 +87,7 @@
<field name="sequence"/>
<field name="name"/>
<field name="kind"/>
<field name="model_id"/>
<field name="filter_id"/>
</tree>
</field>

View File

@ -73,7 +73,8 @@
<div class="oe_import_error_report"></div>
<table class="oe_import_grid" />
</div>
<div class="oe_padding">
<h2>Frequently Asked Questions</h2>
<dl>

View File

@ -1,86 +0,0 @@
#!/usr/bin/env python
import argparse
import os
import sys
import tempfile
import zipfile
try:
import requests
except ImportError:
# no multipart encoding in stdlib and this script is temporary
sys.exit("This script requires the 'requests' module. ( pip install requests )")
session = requests.session()
def deploy_module(module_path, url, login, password, db=''):
url = url.rstrip('/')
authenticate(url, login, password, db)
module_file = zip_module(module_path)
try:
return upload_module(url, module_file)
finally:
os.remove(module_file)
def upload_module(server, module_file):
print("Uploading module file...")
url = server + '/base_import_module/upload'
files = dict(mod_file=open(module_file, 'rb'))
res = session.post(url, files=files)
if res.status_code != 200:
raise Exception("Could not authenticate on server '%s'" % server)
return res.text
def authenticate(server, login, password, db=''):
print("Authenticating on server '%s' ..." % server)
# Fixate session with a given db if any
session.get(server + '/web/login', params=dict(db=db))
args = dict(login=login, password=password, db=db)
res = session.post(server + '/base_import_module/login', args)
if res.status_code == 404:
raise Exception("The server '%s' does not have the 'base_import_module' installed." % server)
elif res.status_code != 200:
raise Exception(res.text)
def zip_module(path):
path = os.path.abspath(path)
if not os.path.isdir(path):
raise Exception("Could not find module directory '%s'" % path)
container, module_name = os.path.split(path)
temp = tempfile.mktemp(suffix='.zip')
try:
print("Zipping module directory...")
with zipfile.ZipFile(temp, 'w') as zfile:
for root, dirs, files in os.walk(path):
for file in files:
file_path = os.path.join(root, file)
zfile.write(file_path, file_path.split(container).pop())
return temp
except Exception:
os.remove(temp)
raise
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Deploy a module on an OpenERP server.')
parser.add_argument('path', help="Path of the module to deploy")
parser.add_argument('--url', dest='url', help='Url of the server (default=http://localhost:8069)', default="http://localhost:8069")
parser.add_argument('--db', dest='db', help='Database to use if server does not use db-filter.')
parser.add_argument('--login', dest='login', default="admin", help='Login (default=admin)')
parser.add_argument('--password', dest='password', default="admin", help='Password (default=admin)')
parser.add_argument('--no-ssl-check', dest='no_ssl_check', action='store_true', help='Do not check ssl cert')
if len(sys.argv) == 1:
sys.exit(parser.print_help())
args = parser.parse_args()
if args.no_ssl_check:
session.verify = False
try:
result = deploy_module(args.path, args.url, args.login, args.password, args.db)
print(result)
except Exception, e:
sys.exit("ERROR: %s" % e)

View File

@ -1273,7 +1273,7 @@ class calendar_event(osv.Model):
if data.get('count'):
data['end_type'] = 'count'
else:
data['end_type'] = 'final_date'
data['end_type'] = 'end_date'
return data
def message_get_subscription_data(self, cr, uid, ids, user_pid=None, context=None):

View File

@ -126,10 +126,10 @@
<field name="use_leads"/><label for="use_leads" string="Leads"/>
<field name="use_opportunities" class="oe_inline"/><label for="use_opportunities"/>
</xpath>
<xpath expr="//group/field[@name='active']" position="inside">
<xpath expr="//group[@name='left']" position="after">
<group>
<label for="alias_name" string="Email Alias"
attrs="p'invisible': [('alias_domain', '=', False)]}"/>
attrs="{'invisible': [('alias_domain', '=', False)]}"/>
<div name="alias_def"
attrs="{'invisible': [('alias_domain', '=', False)]}">
<field name="alias_id" class="oe_read_only oe_inline"

View File

@ -74,7 +74,7 @@ class sale_order(osv.Model):
if not grid_id:
raise osv.except_osv(_('No Grid Available!'), _('No grid matching for this carrier!'))
if order.state != 'draft':
if order.state not in ('draft', 'sent'):
raise osv.except_osv(_('Order not in Draft State!'), _('The order state have to be draft to add delivery lines.'))
grid = grid_obj.browse(cr, uid, grid_id, context=context)

View File

@ -39,16 +39,15 @@ instance.edi.EdiImport = instance.web.Widget.extend({
});
}
else {
$('<div>').dialog({
modal: true,
title: 'Import Successful!',
buttons: {
Ok: function() {
$(this).dialog("close");
window.location = "/";
new instance.web.Dialog(this,{
title: 'Import Successful!',
buttons: {
Ok: function() {
this.parents('.modal').modal('hide');
window.location = "/";
}
}
}
}).html(_t('The document has been successfully imported!'));
},$('<div>').html(_t('The document has been successfully imported!'))).open();
}
},
on_imported_error: function(response){
@ -58,13 +57,12 @@ instance.edi.EdiImport = instance.web.Widget.extend({
msg += "\n " + _t("Reason:") + response.data.message;
}
var params = {error: response, message: msg};
$(instance.web.qweb.render("CrashManager.warning", params)).dialog({
title: _t("Document Import Notification"),
modal: true,
buttons: {
Ok: function() { $(this).dialog("close"); }
}
});
new instance.web.Dialog(this,{
title: _t("Document Import Notification"),
buttons: {
Ok: function() { this.parents('.modal').modal('hide');}
}
},$(instance.web.qweb.render("CrashManager.warning", params))).open();
}
});

View File

@ -417,7 +417,7 @@ class email_template(osv.osv):
partner_to = values.pop('partner_to', '')
if partner_to:
# placeholders could generate '', 3, 2 due to some empty field values
tpl_partner_ids = [pid for pid in partner_to.split(',') if pid]
tpl_partner_ids = [int(pid) for pid in partner_to.split(',') if pid]
partner_ids += self.pool['res.partner'].exists(cr, SUPERUSER_ID, tpl_partner_ids, context=context)
results[res_id]['partner_ids'] = partner_ids
return results

View File

@ -42,6 +42,8 @@ this event.
'data': [
'event_sale_view.xml',
'event_sale_data.xml',
'event_sale_report.xml',
'views/report_registrationbadge.xml',
'security/ir.model.access.csv',
],
'demo': ['event_demo.xml'],

View File

@ -123,5 +123,102 @@
<field name="seats_max">5</field>
</record>
<record id="event.event_1" model="event.event">
<field name="badge_back"><![CDATA[
<h2>Program</h2>
<div><strong>Registrations</strong><small> are from 8:30 am, except on Friday from 9:00 am</small></div>
<div>
<strong>Lunch</strong><small> is served between 1:00 pm and 2:00 pm.</small>
</div>
<h2>Special Events</h2>
<table style="border: 1px solid black;">
<tr style="border: 1px solid black;">
<td class="text-center" width="15%"><strong>4/6</strong></td>
<td class="text-center" width="25%"><strong>19h00</strong></td>
<td><small>Barbecue Beer Event</small></td>
</tr>
<tr>
<td class="text-center"><strong>5/6</strong></td>
<td class="text-center"><strong>18h30</strong></td>
<td><small>Odoo Awards Ceremony</small></td>
</tr>
</table>
<br/>
<div class="row">
<div class="col-xs-5">
<p>
<i class="fa fa-twitter"/> #OpenDays
</p>
</div>
<div class="col-xs-6">
<div class="small">Wifi network: opendays</div>
<div class="small">Wifi password: odoo2014</div>
</div>
</div>
<div class="row">
<small class="col-xs-3" style="float: left; padding-right: 0px; padding-left: 0px;">sponsored by</small>
<div class="col-xs-2" style="padding-right: 0px; padding-left: 0px;">
<span>
<img class="img img-responsive" src="https://www.odoo.com/openerp_website/static/src/img/logo_white.png"/>
</span>
</div>
</div>
]]></field>
<field name="badge_innerleft"><![CDATA[
<h2>Premium Tickets</h2>
<table class="text-center">
<tr>
<td width="10%"></td>
<td width="10%" style="height:45px; width:110px; border-radius: 90px 90px 0 0; -moz-border-radius: 90px 90px 0 0; -webkit-border-radius: 90px 90px 0 0; background:lightgrey; text-align: -webkit-center; padding-top: 10px;"><div>Full</div><div> Catering</div></td>
<td width="5%"></td>
<td width="10%" style="height:45px; width:110px; border-radius: 90px 90px 0 0; -moz-border-radius: 90px 90px 0 0; -webkit-border-radius: 90px 90px 0 0; background:lightgrey; text-align: -webkit-center; padding-top: 10px;"><div>BBQ &amp;</div><div>Beer Event</div></td>
<td width="5%"></td>
<td width="10%" style="height:45px; width:110px; border-radius: 90px 90px 0 0; -moz-border-radius: 90px 90px 0 0; -webkit-border-radius: 90px 90px 0 0; background:lightgrey; text-align: -webkit-center; padding-top: 10px;"><div>Awards &amp;</div> <div>Walking</div><div> Dinner</div></td>
<td width="10%"></td>
</tr>
<tr style="background:lightgrey; height: 15px;">
<td colspan="7"></td>
</tr>
<tr style="background:lightgrey; height: 35px;">
<td></td>
<td>Every Day</td>
<td colspan="3">June 4th</td>
<td>June 5th</td>
<td></td>
</tr>
</table>
<br/><br/>
<h2>Free Tickets</h2>
<table class="text-center">
<tr>
<td width="10%"></td>
<td width="10%" style="height:45px; width:110px; border-radius: 90px 90px 0 0; -moz-border-radius: 90px 90px 0 0; -webkit-border-radius: 90px 90px 0 0; background:lightgrey; text-align: -webkit-center; padding-top: 10px;"><div>Drinks</div></td>
<td width="5%"></td>
<td width="10%" style="height:45px; width:110px; border-radius: 90px 90px 0 0; -moz-border-radius: 90px 90px 0 0; -webkit-border-radius: 90px 90px 0 0; background:lightgrey; text-align: -webkit-center; padding-top: 10px;"><div>Premium</div><div>Ticket</div><div>onsite</div></td>
<td width="25%"></td>
</tr>
<tr style="background:lightgrey; height: 15px;">
<td colspan="5"></td>
</tr>
<tr style="background:lightgrey; height: 35px;">
<td></td>
<td>Every Day</td>
<td></td>
<td>60 €/day<div>30 €/Friday</div></td>
<td></td>
</tr>
</table>
]]></field>
<field name="badge_innerright"><![CDATA[
<div>
<h2>Exhibition Hall</h2>
</div>
<div>
Picture of the exhibition hall
</div>
]]></field>
</record>
</data>
</openerp>

View File

@ -159,7 +159,11 @@ class event_event(osv.osv):
help="The maximum registration level is equal to the sum of the maximum registration of event ticket." +
"If you have too much registrations you are not able to confirm your event. (0 to ignore this rule )",
type='integer',
readonly=True),
readonly=True,
store={
'event.event': (lambda self, cr, uid, ids, c = {}: ids, ['event_ticket_ids'], 20),
'event.event.ticket': (_get_ticket_events, ['seats_max'], 10),
}),
'seats_available': fields.function(Event._get_seats, oldname='register_avail', string='Available Seats',
type='integer', multi='seats_reserved',
store={
@ -168,6 +172,9 @@ class event_event(osv.osv):
['seats_max', 'registration_ids'], 20),
'event.event.ticket': (_get_ticket_events, ['seats_max'], 10),
}),
'badge_back': fields.html('Badge Back', readonly=False, translate=True, states={'done': [('readonly', True)]}),
'badge_innerleft': fields.html('Badge Innner Left', readonly=False, translate=True, states={'done': [('readonly', True)]}),
'badge_innerright': fields.html('Badge Inner Right', readonly=False, translate=True, states={'done': [('readonly', True)]}),
}
_defaults = {
'event_ticket_ids': _get_tickets

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="paperformat_euro_lowmargin" model="report.paperformat">
<field name="name">European A4 low margin</field>
<field name="default" eval="True" />
<field name="format">A4</field>
<field name="page_height">0</field>
<field name="page_width">0</field>
<field name="orientation">Portrait</field>
<field name="margin_top">5</field>
<field name="margin_bottom">5</field>
<field name="margin_left">5</field>
<field name="margin_right">5</field>
<field name="header_line" eval="False" />
<field name="header_spacing">0</field>
<field name="dpi">80</field>
</record>
<report
id="action_report_registrationbadge"
model="event.registration"
string="Badge"
report_type="qweb-html"
name="event_sale.report_registrationbadge"
file="event_sale.report_registrationbadge"
/>
<record id="action_report_registrationbadge" model="ir.actions.report.xml">
<field name="paperformat_id" ref="event_sale.paperformat_euro_lowmargin"/>
</record>
</data>
</openerp>

View File

@ -99,5 +99,45 @@
</field>
</record>
<!-- Edit badge report form -->
<record id="view_event_form" model="ir.ui.view">
<field name="name">view_event_form</field>
<field name="model">event.event</field>
<field name="inherit_id" ref="event.view_event_form"/>
<field name="arch" type="xml">
<data>
<xpath expr="//notebook" position="inside">
<page string="Ticket Types">
<field name="event_ticket_ids" context="{'default_name': name}">
<tree string="Payments" editable="bottom">
<field name="name"/>
<field name="product_id" on_change='onchange_product_id(product_id)'/>
<field name="deadline"/>
<field name="price"/>
<field name="seats_max"/>
<field name="seats_reserved"/>
<field name="seats_unconfirmed"/>
</tree>
</field>
</page>
</xpath>
<field name="nb_register" position="after">
<field name="event_ticket_id" domain="[('event_id', '=', context.get('event_id'))]"/>
</field>
<xpath expr="//notebook" position="inside">
<page string="Badge">
<label for="badge_back" class="oe_edit_only">Badge (Back)</label>
<field name="badge_back" nolabel="1" placeholder="Event badge_back..."/>
<hr/>
<label for="badge_innerleft" class="oe_edit_only">Badge (Inner Left)</label>
<field name="badge_innerleft" nolabel="1" placeholder="Event badge_innerleft..."/>
<hr/>
<label for="badge_innerright" class="oe_edit_only">Badge (Inner Right)</label>
<field name="badge_innerright" nolabel="1" placeholder="Event badge_innerright..."/>
</page>
</xpath>
</data>
</field>
</record>
</data>
</openerp>

View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="report_registrationbadge">
<t t-call="report.html_container">
<t t-foreach="docs" t-as="o">
<div class="page">
<div class="row">
<!-- Inner right -->
<div class="col-xs-6 text-center" style="padding-left:7mm; border-left:1px dashed black; height: 149mm; -webkit-transform:rotate(180deg); padding-top: 7mm">
<div>
<div class="row">
<div class="col-xs-12">
<div>
<span t-if="o.event_id.organizer_id.company_id.logo_web and o.event_id.organizer_id.is_company">
<img t-att-src="'data:image/png;base64,%s' % o.event_id.organizer_id.company_id.logo_web" style="max-height:1cm; max-width:4cm;"/>
</span>
<div>
<h5 t-field="o.event_id.name"/>
</div>
<div>
<h5>June 4th - 6th , 2014</h5>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12 text-center">
<t t-if="o.event_ticket_id">
<div>
<strong><span t-field="o.event_ticket_id"/></strong>
</div>
</t>
<div>
<t t-if="o.partner_id.is_company == True">
<small>
<h3 t-field="o.partner_id.name"/>
<h5 t-field="o.name"/>
</small>
</t>
</div>
</div>
</div>
<br/>
<div class="row">
<div class="col-xs-12 mt32 text-center" style="background: lightgrey;">
<h3>Status</h3>
</div>
</div>
</div>
</div>
<!-- Inner left -->
<div class="col-xs-6" style="padding-right:7mm; height: 149mm; -webkit-transform:rotate(180deg); padding-top: 2mm;">
<span t-field="o.event_id.badge_back"/>
</div>
</div>
<div class="row">
<!-- Back -->
<div class="col-xs-6 text-center" style="padding-right:7mm; border-top:1px dashed black; height: 148mm;">
<span t-field="o.event_id.badge_innerleft"/>
</div>
<!-- Front -->
<div class="col-xs-6 text-center" style="border-left:1px dashed black; border-top:1px dashed black; height: 148mm; text-center">
<span t-field="o.event_id.badge_innerright"/>
</div>
</div>
</div>
</t>
</t>
</template>
</data>
</openerp>

View File

@ -129,9 +129,9 @@
<field name="name">Lancia</field>
<field name="image" type="base64" file="fleet/static/img/brand_lancia-image.png"/>
</record>
<record id="brand_lander rover" model="fleet.vehicle.model.brand">
<field name="name">Lander Rover</field>
<field name="image" type="base64" file="fleet/static/img/brand_lander rover-image.png"/>
<record id="brand_land rover" model="fleet.vehicle.model.brand">
<field name="name">Land Rover</field>
<field name="image" type="base64" file="fleet/static/img/brand_land rover-image.png"/>
</record>
<record id="brand_lexus" model="fleet.vehicle.model.brand">
<field name="name">Lexus</field>

View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -380,10 +380,6 @@ class gamification_challenge(osv.Model):
##### Automatic actions #####
def generate_goals_from_challenge(self, cr, uid, ids, context=None):
_logger.warning("Deprecated, use private method _generate_goals_from_challenge(...) instead.")
return self._generate_goals_from_challenge(cr, uid, ids, context=context)
def _generate_goals_from_challenge(self, cr, uid, ids, context=None):
"""Generate the goals for each line and user.

View File

@ -333,7 +333,8 @@ class gamification_goal(osv.Model):
if definition.computation_mode == 'sum':
field_name = definition.field_id.name
res = obj.read_group(cr, uid, domain, [field_name], [field_name], context=context)
# TODO for master: group on user field in batch mode
res = obj.read_group(cr, uid, domain, [field_name], [], context=context)
new_value = res and res[0][field_name] or 0.0
else: # computation mode = count

View File

@ -141,7 +141,7 @@ class hr_timesheet_sheet(osv.osv):
return {
sheet_id: {
'timesheet_activity_count': Timesheet.search_count(cr,uid, [('sheet_id','=', sheet_id)], context=context),
'attendance_count': Attendance.search_count(cr,uid, [('sheed_id', '=', sheet_id)], context=context)
'attendance_count': Attendance.search_count(cr,uid, [('sheet_id', '=', sheet_id)], context=context)
}
for sheet_id in ids
}

View File

@ -89,9 +89,9 @@ description provided by the CODA configuration tables is based upon the CODA
V2.2 specifications.
If required, you can manually adjust the descriptions via the CODA configuration menu.
''',
'images' : ['images/coda_logs.jpeg','images/import_coda_logs.jpeg'],
'depends': ['account_voucher','base_iban', 'l10n_be_invoice_bba',],
'demo': [],
'images': ['images/coda_logs.jpeg', 'images/import_coda_logs.jpeg'],
'depends': ['account_voucher', 'base_iban', 'l10n_be_invoice_bba'],
'demo': ['l10n_be_coda_demo.xml'],
'data': [
'l10n_be_coda_wizard.xml',
'l10n_be_coda_view.xml',

View File

@ -0,0 +1,36 @@
<?xml version="1.0" ?>
<openerp>
<data>
<record id="demo_bank_account" model="res.partner.bank">
<field name="state">bank</field>
<field name="acc_number">BE33737018595246</field>
<field name="bank_bic">KREDBEBB</field>
<field name="journal_id" ref="account.bank_journal"/>
<field name="partner_id" ref="base.main_partner"/>
</record>
<!--
Fiscal year
-->
<record id="data_fiscalyear_2011" model="account.fiscalyear">
<field eval="'Fiscal Year X 2011'" name="name"/>
<field eval="'FY2011'" name="code"/>
<field eval="'2011-01-01'" name="date_start"/>
<field eval="'2011-12-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<!--
Fiscal Periods
-->
<record id="period_1_2011" model="account.period">
<field eval="'01/2011'" name="code"/>
<field eval="'X 01/2011'" name="name"/>
<field name="fiscalyear_id" ref="data_fiscalyear_2011"/>
<field eval="'2011-01-01'" name="date_start"/>
<field eval="'2011-01-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
</data>
</openerp>

View File

@ -25,8 +25,6 @@
<field name="name"/>
<field name="ref" readonly="0"/>
<field name="partner_id"/>
<field name="type" />
<field domain="[('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field name="amount"/>
<field name="sequence" readonly="0"/>
</group>
@ -46,10 +44,7 @@
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="account_id" options='{"no_open":True}' domain="[('type', '&lt;&gt;', 'view')]"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('type', '&lt;&gt;', 'view')]"/>
<field name="partner_id"/>
<field name="amount"/>
<field name="note"/>
</tree>
@ -66,17 +61,14 @@
<filter name="credit" string="Credit" domain="[('amount','&lt;',0)]" icon="terp-folder-orange" help="Credit Transactions."/>
<field name="statement_id"/>
<group expand="0" string="Extended Filters...">
<field name="account_id"/>
<field name="partner_id"/>
<field name="amount"/>
<field name="type"/>
<field name="note"/>
</group>
<newline/>
<group string="Group By" expand="0">
<filter string="Partner" context="{'group_by':'partner_id'}" icon="terp-folder-green"/>
<filter string="Statement" context="{'group_by':'statement_id'}" icon="terp-folder-orange"/>
<filter string="Fin.Account" context="{'group_by':'account_id'}" icon="terp-folder-yellow"/>
</group>
</search>
</field>

View File

@ -10,7 +10,6 @@
<form string="Import CODA File" version="7.0">
<group col="2">
<field name="coda_data" filename="coda_fname"/>
<field name="temporary_account_id" />
</group>
<footer>
<button name="coda_parsing" string="_Import" type="object" class="oe_highlight"/>

View File

@ -37,20 +37,10 @@ class account_coda_import(osv.osv_memory):
'coda_data': fields.binary('CODA File', required=True),
'coda_fname': fields.char('CODA Filename', size=128, required=True),
'note': fields.text('Log'),
'temporary_account_id': fields.many2one('account.account', 'Temporary Account', domain="[('type','!=','view')]", help="It acts as a temporary account for general amount", required=True),
}
def _get_default_tmp_account(self, cr, uid, context):
tmp_accounts = self.pool.get('account.account').search(cr, uid, [('code', '=', '490000')])
if tmp_accounts and len(tmp_accounts) > 0:
tmp_account_id = tmp_accounts[0]
else:
tmp_account_id = False
return tmp_account_id
_defaults = {
'coda_fname': lambda *a: '',
'temporary_account_id': _get_default_tmp_account,
}
def coda_parsing(self, cr, uid, ids, context=None, batch=False, codafile=None, codafilename=None):
@ -64,7 +54,6 @@ class account_coda_import(osv.osv_memory):
try:
codafile = data.coda_data
codafilename = data.coda_fname
temporaryaccount = data.temporary_account_id.id
except:
raise osv.except_osv(_('Error'), _('Wizard in incorrect state. Please hit the Cancel button'))
return {}
@ -149,7 +138,6 @@ class account_coda_import(osv.osv_memory):
statementLine['amount'] = float(rmspaces(line[32:47])) / 1000
if statementLine['debit'] == '1':
statementLine['amount'] = - statementLine['amount']
statementLine['transaction_type'] = line[53]
statementLine['transactionDate'] = time.strftime(tools.DEFAULT_SERVER_DATE_FORMAT, time.strptime(rmspaces(line[47:53]), '%d%m%y'))
statementLine['transaction_family'] = rmspaces(line[54:56])
statementLine['transaction_code'] = rmspaces(line[56:58])
@ -211,7 +199,6 @@ class account_coda_import(osv.osv_memory):
infoLine['sequence'] = len(statement['lines']) + 1
infoLine['ref'] = rmspaces(line[2:10])
infoLine['transactionRef'] = rmspaces(line[10:31])
infoLine['transaction_type'] = line[31]
infoLine['transaction_family'] = rmspaces(line[32:34])
infoLine['transaction_code'] = rmspaces(line[34:36])
infoLine['transaction_category'] = rmspaces(line[36:39])
@ -304,91 +291,78 @@ class account_coda_import(osv.osv_memory):
if 'counterpartyAddress' in line and line['counterpartyAddress'] != '':
note.append(_('Counter Party Address') + ': ' + line['counterpartyAddress'])
line['name'] = "\n".join(filter(None, [line['counterpartyName'], line['communication']]))
line['transaction_type'] = 'general'
partner = None
partner_id = None
invoice = False
if line['communication_struct'] and 'communication_type' in line and line['communication_type'] == '101':
ids = self.pool.get('account.invoice').search(cr, uid, [('reference', '=', line['communication']), ('reference_type', '=', 'bba')])
if ids:
invoice = self.pool.get('account.invoice').browse(cr, uid, ids[0])
partner = invoice.partner_id
partner_id = partner.id
if invoice.type in ['in_invoice', 'in_refund'] and line['debit'] == '1':
line['transaction_type'] = 'supplier'
elif invoice.type in ['out_invoice', 'out_refund'] and line['debit'] == '0':
line['transaction_type'] = 'customer'
line['account'] = invoice.account_id.id
line['reconcile'] = False
if invoice.type in ['in_invoice', 'out_invoice']:
iml_ids = self.pool.get('account.move.line').search(cr, uid, [('move_id', '=', invoice.move_id.id), ('reconcile_id', '=', False), ('account_id.reconcile', '=', True)])
if iml_ids:
line['reconcile'] = iml_ids[0]
if line['reconcile']:
voucher_vals = {
'type': line['transaction_type'] == 'supplier' and 'payment' or 'receipt',
'name': line['name'],
'partner_id': partner_id,
'journal_id': statement['journal_id'].id,
'account_id': statement['journal_id'].default_credit_account_id.id,
'company_id': statement['journal_id'].company_id.id,
'currency_id': statement['journal_id'].company_id.currency_id.id,
'date': line['entryDate'],
'amount': abs(line['amount']),
'period_id': statement['period_id'],
'invoice_id': invoice.id,
}
context['invoice_id'] = invoice.id
voucher_vals.update(self.pool.get('account.voucher').onchange_partner_id(cr, uid, [],
partner_id=partner_id,
journal_id=statement['journal_id'].id,
amount=abs(line['amount']),
currency_id=statement['journal_id'].company_id.currency_id.id,
ttype=line['transaction_type'] == 'supplier' and 'payment' or 'receipt',
date=line['transactionDate'],
context=context
)['value'])
line_drs = []
for line_dr in voucher_vals['line_dr_ids']:
line_drs.append((0, 0, line_dr))
voucher_vals['line_dr_ids'] = line_drs
line_crs = []
for line_cr in voucher_vals['line_cr_ids']:
line_crs.append((0, 0, line_cr))
voucher_vals['line_cr_ids'] = line_crs
line['voucher_id'] = self.pool.get('account.voucher').create(cr, uid, voucher_vals, context=context)
# Gère les communications structurées
# TODO : à faire primer sur resolution_proposition : si la communication indique une facture, on la sélectionne
# if ids:
# invoice = self.pool.get('account.invoice').browse(cr, uid, ids[0])
# partner = invoice.partner_id
# partner_id = partner.id
# if invoice.type in ['in_invoice', 'in_refund'] and line['debit'] == '1':
# line['transaction_type'] = 'supplier'
# elif invoice.type in ['out_invoice', 'out_refund'] and line['debit'] == '0':
# line['transaction_type'] = 'customer'
# line['account'] = invoice.account_id.id
# line['reconcile'] = False
# if invoice.type in ['in_invoice', 'out_invoice']:
# iml_ids = self.pool.get('account.move.line').search(cr, uid, [('move_id', '=', invoice.move_id.id), ('reconcile_id', '=', False), ('account_id.reconcile', '=', True)])
# if iml_ids:
# line['reconcile'] = iml_ids[0]
# if line['reconcile']:
# voucher_vals = {
# 'type': line['transaction_type'] == 'supplier' and 'payment' or 'receipt',
# 'name': line['name'],
# 'partner_id': partner_id,
# 'journal_id': statement['journal_id'].id,
# 'account_id': statement['journal_id'].default_credit_account_id.id,
# 'company_id': statement['journal_id'].company_id.id,
# 'currency_id': statement['journal_id'].company_id.currency_id.id,
# 'date': line['entryDate'],
# 'amount': abs(line['amount']),
# 'period_id': statement['period_id'],
# 'invoice_id': invoice.id,
# }
# context['invoice_id'] = invoice.id
# voucher_vals.update(self.pool.get('account.voucher').onchange_partner_id(cr, uid, [],
# partner_id=partner_id,
# journal_id=statement['journal_id'].id,
# amount=abs(line['amount']),
# currency_id=statement['journal_id'].company_id.currency_id.id,
# ttype=line['transaction_type'] == 'supplier' and 'payment' or 'receipt',
# date=line['transactionDate'],
# context=context
# )['value'])
# line_drs = []
# for line_dr in voucher_vals['line_dr_ids']:
# line_drs.append((0, 0, line_dr))
# voucher_vals['line_dr_ids'] = line_drs
# line_crs = []
# for line_cr in voucher_vals['line_cr_ids']:
# line_crs.append((0, 0, line_cr))
# voucher_vals['line_cr_ids'] = line_crs
# line['voucher_id'] = self.pool.get('account.voucher').create(cr, uid, voucher_vals, context=context)
if 'counterpartyNumber' in line and line['counterpartyNumber']:
ids = self.pool.get('res.partner.bank').search(cr, uid, [('acc_number', '=', str(line['counterpartyNumber']))])
if ids and len(ids) > 0:
partner = self.pool.get('res.partner.bank').browse(cr, uid, ids[0], context=context).partner_id
partner_id = partner.id
if not invoice:
if line['debit'] == '0':
line['account'] = partner.property_account_receivable.id
if partner.customer:
line['transaction_type'] = 'customer'
elif line['debit'] == '1':
line['account'] = partner.property_account_payable.id
if partner.supplier:
line['transaction_type'] = 'supplier'
if not partner and not invoice:
line['account'] = temporaryaccount
if 'communication' in line and line['communication'] != '':
note.append(_('Communication') + ': ' + line['communication'])
if 'voucher_id' not in line:
line['voucher_id'] = None
data = {
'name': line['name'],
'note': "\n".join(note),
'date': line['entryDate'],
'amount': line['amount'],
'type': line['transaction_type'],
'partner_id': partner_id,
'account_id': line['account'],
'statement_id': statement['id'],
'ref': line['ref'],
'sequence': line['sequence'],
'voucher_id': line['voucher_id'],
'coda_account_number': line['counterpartyNumber'],
}
self.pool.get('account.bank.statement.line').create(cr, uid, data, context=context)

View File

@ -2,27 +2,20 @@
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (c) 2007 ACYSOS S.L. (http://acysos.com) All Rights Reserved.
# Pedro Tarrafeta (pedro@acysos.com)
# Copyright (c) 2008-2010 Zikzakmedia S.L. (http://zikzakmedia.com) All Rights Reserved.
# Jordi Esteve <jesteve@zikzakmedia.com>
# $Id$
#
# 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
# it under the terms of the GNU Affero 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.
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -8,7 +8,6 @@
# Dpto. Consultoría <consultoria@opentia.es>
# Copyright (c) 2013 Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
# Pedro Manuel Baeza <pedro.baeza@serviciosbaeza.com>
# $Id$
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@ -27,37 +26,39 @@
{
"name" : "Spanish Charts of Accounts (PGCE 2008)",
"version" : "3.0",
"version" : "4.0",
"author" : "Spanish Localization Team",
'website' : 'https://launchpad.net/openerp-spain',
"category" : "Localization/Account Charts",
"description": """
Spanish Charts of Accounts (PGCE 2008).
=======================================
Spanish charts of accounts (PGCE 2008).
========================================
* Defines the following chart of account templates:
* Spanish General Chart of Accounts 2008
* Spanish General Chart of Accounts 2008 for small and medium companies
* Spanish General Chart of Accounts 2008 for associations
* Spanish general chart of accounts 2008
* Spanish general chart of accounts 2008 for small and medium companies
* Spanish general chart of accounts 2008 for associations
* Defines templates for sale and purchase VAT
* Defines tax code templates
* Defines fiscal positions for spanish fiscal legislation
""",
"license" : "AGPL-3",
"depends" : ["account", "base_vat", "base_iban"],
"data" : [
"account_chart.xml",
"taxes_data.xml",
"fiscal_templates.xml",
"account_chart_pymes.xml",
"taxes_data_pymes.xml",
"fiscal_templates_pymes.xml",
"account_chart_assoc.xml",
"taxes_data_assoc.xml",
"fiscal_templates_assoc.xml",
"account_type.xml",
"account_chart_template.xml",
"account_account_common.xml",
"account_account_full.xml",
"account_account_pymes.xml",
"account_account_assoc.xml",
"tax_codes_common.xml",
"taxes_common.xml",
"fiscal_templates_common.xml",
"account_chart_template_post.xml",
"l10n_es_wizard.xml",
],
"demo" : [],
'auto_install': False,
"installable": True,
'images': ['images/config_chart_l10n_es.jpeg','images/l10n_es_chart.jpeg'],
'images': ['images/config_chart_l10n_es.png', 'images/l10n_es_chart.png'],
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,695 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<!--
Cuentas que sólo están en el PGC PYMEs:
(2935), (296);
(5935), (596);
(663);
(7962), (7963);
Cuentas que tienen un nombre distinto en el plan de asociaciones:
(100), (103), (104), (1040), (1044), (12), (130);
(240), (249);
(490);
(65), (671), (691), (694);
(791), (794);
(2013-10-07)
Pedro M. Baeza - pedro.baeza@serviciosbaeza.com
Serv. Tecnol. Avanzados - http://www.serviciosbaeza.com
Refactorización general
-->
<data noupdate="0">
<record id="pgc_pymes_100" model="account.account.template">
<field name="code">100</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_10"/>
<field name="type">view</field>
<field name="name">Capital social</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_100_child" model="account.account.template">
<field name="code">100</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_100"/>
<field name="type">other</field>
<field name="name">Capital social</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_103" model="account.account.template">
<field name="code">103</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_10"/>
<field name="type">view</field>
<field name="name">Socios por desembolsos no exigidos</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1030" model="account.account.template">
<field name="code">1030</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_103"/>
<field name="type">view</field>
<field name="name">Socios por desembolsos no exigidos, capital social</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1030_child" model="account.account.template">
<field name="code">1030</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_1030"/>
<field name="type">other</field>
<field name="name">Socios por desembolsos no exigidos, capital social</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1034" model="account.account.template">
<field name="code">1034</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_103"/>
<field name="type">view</field>
<field name="name">Socios por desembolsos no exigidos, capital pendiente de inscripción</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1034_child" model="account.account.template">
<field name="code">1034</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_1034"/>
<field name="type">other</field>
<field name="name">Socios por desembolsos no exigidos, capital pendiente de inscripción</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_104" model="account.account.template">
<field name="code">104</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_10"/>
<field name="type">view</field>
<field name="name">Socios por aportaciones no dinerarias pendientes</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1040" model="account.account.template">
<field name="code">1040</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_104"/>
<field name="type">view</field>
<field name="name">Socios por aportaciones no dinerarias pendientes, capital social</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1040_child" model="account.account.template">
<field name="code">1040</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_1040"/>
<field name="type">other</field>
<field name="name">Socios por aportaciones no dinerarias pendientes, capital social</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1044" model="account.account.template">
<field name="code">1044</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_104"/>
<field name="type">view</field>
<field name="name">Socios por aportaciones no dinerarias pendientes, capital pendiente de inscripción</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_1044_child" model="account.account.template">
<field name="code">1044</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_1044"/>
<field name="type">other</field>
<field name="name">Socios por aportaciones no dinerarias pendientes, capital pendiente de inscripción</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_12" model="account.account.template">
<field name="code">12</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_1"/>
<field name="type">view</field>
<field name="name">Resultados pendientes de aplicación</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_120" model="account.account.template">
<field name="code">120</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_12"/>
<field name="type">view</field>
<field name="name">Remanente</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_120_child" model="account.account.template">
<field name="code">120</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_120"/>
<field name="type">other</field>
<field name="name">Remanente</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_121" model="account.account.template">
<field name="code">121</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_12"/>
<field name="type">view</field>
<field name="name">Resultados negativos de ejercicios anteriores</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_121_child" model="account.account.template">
<field name="code">121</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_121"/>
<field name="type">other</field>
<field name="name">Resultados negativos de ejercicios anteriores</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_129" model="account.account.template">
<field name="code">129</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_12"/>
<field name="type">view</field>
<field name="name">Resultado del ejercicio</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_129_child" model="account.account.template">
<field name="code">129</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_129"/>
<field name="type">other</field>
<field name="name">Resultado del ejercicio</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_130_child" model="account.account.template">
<field name="code">130</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_130"/>
<field name="type">other</field>
<field name="name">Subvenciones oficiales de capital</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_132_child" model="account.account.template">
<field name="code">132</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_132"/>
<field name="type">other</field>
<field name="name">Otras subvenciones, donaciones y legados</field>
<field name="user_type" ref="l10n_es.account_type_capital"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_240" model="account.account.template">
<field name="code">240</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_24"/>
<field name="type">view</field>
<field name="name">Participaciones en partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2403" model="account.account.template">
<field name="code">2403</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_240"/>
<field name="type">view</field>
<field name="name">Participaciones en empresas del grupo</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2403_child" model="account.account.template">
<field name="code">2403</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2403"/>
<field name="type">other</field>
<field name="name">Participaciones en empresas del grupo</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2404" model="account.account.template">
<field name="code">2404</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_240"/>
<field name="type">view</field>
<field name="name">Participaciones en empresas asociadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2404_child" model="account.account.template">
<field name="code">2404</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2404"/>
<field name="type">other</field>
<field name="name">Participaciones en empresas asociadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2405" model="account.account.template">
<field name="code">2405</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_240"/>
<field name="type">view</field>
<field name="name">Participaciones en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2405_child" model="account.account.template">
<field name="code">2405</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2405"/>
<field name="type">other</field>
<field name="name">Participaciones en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_249" model="account.account.template">
<field name="code">249</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_24"/>
<field name="type">view</field>
<field name="name">Desembolsos pendientes sobre participaciones en partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2493" model="account.account.template">
<field name="code">2493</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_249"/>
<field name="type">view</field>
<field name="name">Desembolsos pendientes sobre participaciones en empresas del grupo</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2493_child" model="account.account.template">
<field name="code">2493</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2493"/>
<field name="type">other</field>
<field name="name">Desembolsos pendientes sobre participaciones en empresas del grupo</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2494" model="account.account.template">
<field name="code">2494</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_249"/>
<field name="type">view</field>
<field name="name">Desembolsos pendientes sobre participaciones en empresas asociadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2494_child" model="account.account.template">
<field name="code">2494</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2494"/>
<field name="type">other</field>
<field name="name">Desembolsos pendientes sobre participaciones en empresas asociadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2495" model="account.account.template">
<field name="code">2495</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_249"/>
<field name="type">view</field>
<field name="name">Desembolsos pendientes sobre participaciones en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2495_child" model="account.account.template">
<field name="code">2495</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2495"/>
<field name="type">other</field>
<field name="name">Desembolsos pendientes sobre participaciones en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_255_child" model="account.account.template">
<field name="code">255</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_255"/>
<field name="type">other</field>
<field name="name">Activos por derivados financieros</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2935" model="account.account.template">
<field name="code">2935</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_293"/>
<field name="type">view</field>
<field name="name">Deterioro de valor de participaciones a largo plazo en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_2935_child" model="account.account.template">
<field name="code">2935</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_2935"/>
<field name="type">other</field>
<field name="name">Deterioro de valor de participaciones a largo plazo en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_296" model="account.account.template">
<field name="code">296</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_29"/>
<field name="type">view</field>
<field name="name">Deterioro de valor de participaciones en el patrimonio neto a largo plazo</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_296_child" model="account.account.template">
<field name="code">296</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_296"/>
<field name="type">other</field>
<field name="name">Deterioro de valor de participaciones en el patrimonio neto a largo plazo</field>
<field name="user_type" ref="l10n_es.account_type_inmo"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pyme_490" model="account.account.template">
<field name="code">490</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_49"/>
<field name="type">view</field>
<field name="name">Deterioro de valor de créditos por operaciones comerciales</field>
<field name="user_type" ref="l10n_es.account_type_terceros"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pyme_490_child" model="account.account.template">
<field name="code">490</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pyme_490"/>
<field name="type">other</field>
<field name="name">Deterioro de valor de créditos por operaciones comerciales</field>
<field name="user_type" ref="l10n_es.account_type_terceros"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pyme_551" model="account.account.template">
<field name="code">551</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_55"/>
<field name="type">view</field>
<field name="name">Cuenta corriente con socios y administradores</field>
<field name="user_type" ref="l10n_es.account_type_financieras"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pyme_551_child" model="account.account.template">
<field name="code">551</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pyme_551"/>
<field name="type">other</field>
<field name="name">Cuenta corriente con socios y administradores</field>
<field name="user_type" ref="l10n_es.account_type_financieras"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_5935" model="account.account.template">
<field name="code">5935</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_593"/>
<field name="type">view</field>
<field name="name">Deterioro de valor de participaciones a corto plazo en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_financieras"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_5935_child" model="account.account.template">
<field name="code">5935</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_5935"/>
<field name="type">other</field>
<field name="name">Deterioro de valor de participaciones a corto plazo en otras partes vinculadas</field>
<field name="user_type" ref="l10n_es.account_type_financieras"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_596" model="account.account.template">
<field name="code">596</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_59"/>
<field name="type">view</field>
<field name="name">Deterioro de valor de participaciones a corto plazo</field>
<field name="user_type" ref="l10n_es.account_type_financieras"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_596_child" model="account.account.template">
<field name="code">596</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_596"/>
<field name="type">other</field>
<field name="name">Deterioro de valor de participaciones a corto plazo</field>
<field name="user_type" ref="l10n_es.account_type_financieras"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_65" model="account.account.template">
<field name="code">65</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_6"/>
<field name="type">view</field>
<field name="name">Otros gastos de gestión</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_650" model="account.account.template">
<field name="code">650</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_65"/>
<field name="type">view</field>
<field name="name">Pérdidas de créditos comerciales incobrables</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_650_child" model="account.account.template">
<field name="code">650</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_650"/>
<field name="type">other</field>
<field name="name">Pérdidas de créditos comerciales incobrables</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_651" model="account.account.template">
<field name="code">651</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_65"/>
<field name="type">view</field>
<field name="name">Resultados de operaciones en común</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_6510" model="account.account.template">
<field name="code">6510</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_651"/>
<field name="type">view</field>
<field name="name">Beneficio transferido (gestor)</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_6510_child" model="account.account.template">
<field name="code">6510</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_6510"/>
<field name="type">other</field>
<field name="name">Beneficio transferido (gestor)</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_6511" model="account.account.template">
<field name="code">6511</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_651"/>
<field name="type">view</field>
<field name="name">Pérdida soportada (partícipe o asociado no gestor)</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_6511_child" model="account.account.template">
<field name="code">6511</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_6511"/>
<field name="type">other</field>
<field name="name">Pérdida soportada (partícipe o asociado no gestor)</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_659" model="account.account.template">
<field name="code">659</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_65"/>
<field name="type">view</field>
<field name="name">Otras pérdidas en gestión corriente</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_659_child" model="account.account.template">
<field name="code">659</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_659"/>
<field name="type">other</field>
<field name="name">Otras pérdidas en gestión corriente</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_663_child" model="account.account.template">
<field name="code">663</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_663"/>
<field name="type">other</field>
<field name="name">Pérdidas por valoración de instrumentos financieros por su valor razonable</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_671" model="account.account.template">
<field name="code">671</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_67"/>
<field name="type">view</field>
<field name="name">Pérdidas procedentes del inmovilizado material</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_671_child" model="account.account.template">
<field name="code">671</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_671"/>
<field name="type">other</field>
<field name="name">Pérdidas procedentes del inmovilizado material</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_691" model="account.account.template">
<field name="code">691</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_69"/>
<field name="type">view</field>
<field name="name">Pérdidas por deterioro del inmovilizado material</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_691_child" model="account.account.template">
<field name="code">691</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_691"/>
<field name="type">other</field>
<field name="name">Pérdidas por deterioro del inmovilizado material</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_694" model="account.account.template">
<field name="code">694</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_69"/>
<field name="type">view</field>
<field name="name">Pérdidas por deterioro de créditos por operaciones comerciales</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_694_child" model="account.account.template">
<field name="code">694</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_694"/>
<field name="type">other</field>
<field name="name">Pérdidas por deterioro de créditos por operaciones comerciales</field>
<field name="user_type" ref="account.data_account_type_expense"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_763_child" model="account.account.template">
<field name="code">763</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_763"/>
<field name="type">other</field>
<field name="name">Beneficios por valoración de instrumentos financieros por su valor razonable</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_791" model="account.account.template">
<field name="code">791</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_79"/>
<field name="type">view</field>
<field name="name">Reversión del deterioro del inmovilizado material</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_791_child" model="account.account.template">
<field name="code">791</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_791"/>
<field name="type">other</field>
<field name="name">Reversión del deterioro del inmovilizado material</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_794" model="account.account.template">
<field name="code">794</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_79"/>
<field name="type">view</field>
<field name="name">Reversión del deterioro de créditos por operaciones comerciales</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_794_child" model="account.account.template">
<field name="code">794</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_794"/>
<field name="type">other</field>
<field name="name">Reversión del deterioro de créditos por operaciones comerciales</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_7962" model="account.account.template">
<field name="code">7962</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_796"/>
<field name="type">view</field>
<field name="name">Reversión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo, otras partes vinculadas</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_7962_child" model="account.account.template">
<field name="code">7962</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_7962"/>
<field name="type">other</field>
<field name="name">Reversión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo, otras partes vinculadas</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_7963" model="account.account.template">
<field name="code">7963</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_796"/>
<field name="type">view</field>
<field name="name">Reversión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo, otras empresas</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
<record id="pgc_pymes_7963_child" model="account.account.template">
<field name="code">7963</field>
<field name="reconcile" eval="False"/>
<field name="parent_id" ref="pgc_pymes_7963"/>
<field name="type">other</field>
<field name="name">Reversión del deterioro de participaciones en instrumentos de patrimonio neto a largo plazo, otras empresas</field>
<field name="user_type" ref="account.data_account_type_income"/>
<field name="chart_template_id" ref="l10n_es.account_chart_template_pymes"/>
</record>
</data>
</openerp>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">
<!-- Plantillas de los planes contables -->
<record id="account_chart_template_common" model="account.chart.template">
<field name="name">PGCE común</field>
<field name="visible" eval="False"/>
<field name="complete_tax_set" eval="False"/>
</record>
<record id="account_chart_template_assoc" model="account.chart.template">
<field name="name">PGCE entidades sin ánimo de lucro 2008</field>
<field name="complete_tax_set" eval="True"/>
<field name="parent_id" ref="account_chart_template_common"/>
</record>
<record id="account_chart_template_assoc_value" model="ir.values">
<field name="name">PGCE entidades sin ánimo de lucro 2008</field>
<field name="model">account.chart.template</field>
<field name="key">default</field>
<field name="res_id" ref="account_chart_template_assoc"/>
<field name="value" ref="base.EUR"/>
</record>
<record id="account_chart_template_pymes" model="account.chart.template">
<field name="name">PGCE PYMEs 2008</field>
<field name="complete_tax_set" eval="True"/>
<field name="parent_id" ref="account_chart_template_common"/>
</record>
<record id="account_chart_template_pymes_value" model="ir.values">
<field name="name">PGCE PYMEs 2008</field>
<field name="model">account.chart.template</field>
<field name="key">default</field>
<field name="res_id" ref="account_chart_template_pymes"/>
<field name="value" ref="base.EUR"/>
</record>
<record id="account_chart_template_full" model="account.chart.template">
<field name="name">PGCE completo 2008</field>
<field name="complete_tax_set" eval="True"/>
<field name="parent_id" ref="account_chart_template_common"/>
</record>
<record id="account_chart_template_full_value" model="ir.values">
<field name="name">PGCE completo 2008</field>
<field name="model">account.chart.template</field>
<field name="key">default</field>
<field name="res_id" ref="account_chart_template_full"/>
<field name="value" ref="base.EUR"/>
</record>
</data>
</openerp>

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">
<!-- Plantillas de los planes contables - Asignación del resto de valores -->
<record id="account_chart_template_common" model="account.chart.template">
<field name="tax_code_root_id" ref="vat_code_chart_root"/>
<field name="account_root_id" ref="pgc_0"/>
<field name="property_account_receivable" ref="pgc_4300_child"/>
<field name="property_account_payable" ref="pgc_4100_child"/>
<field name="property_account_expense_categ" ref="pgc_600_child"/>
<field name="property_account_income_categ" ref="pgc_7000_child"/>
</record>
<record id="account_chart_template_full" model="account.chart.template">
<field name="tax_code_root_id" ref="vat_code_chart_root"/>
<field name="bank_account_view_id" ref="pgc_572"/>
</record>
<record id="account_chart_template_pymes" model="account.chart.template">
<field name="tax_code_root_id" ref="vat_code_chart_root"/>
<field name="bank_account_view_id" ref="pgc_572"/>
</record>
<record id="account_chart_template_assoc" model="account.chart.template">
<field name="tax_code_root_id" ref="vat_code_chart_root"/>
<field name="bank_account_view_id" ref="pgc_572"/>
</record>
</data>
</openerp>

View File

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<!-- Actualizar método de cierre de tipos de cuenta estándar -->
<data noupdate="1">
<record id="account.data_account_type_income"
model="account.account.type">
<field name="name">Income</field>
<field name="close_method">balance</field>
</record>
<record id="account.data_account_type_expense"
model="account.account.type">
<field name="name">Expense</field>
<field name="close_method">balance</field>
</record>
</data>
<!-- Tipos de cuenta nuevos -->
<data noupdate="0">
<record id="account_type_capital" model="account.account.type">
<field name="name">Capital</field>
<field name="code">capital</field>
<field name="report_type">asset</field>
<field name="close_method">balance</field>
</record>
<record id="account_type_inmo" model="account.account.type">
<field name="name">Inmovilizado</field>
<field name="code">inmo</field>
<field name="report_type">asset</field>
<field name="close_method">balance</field>
</record>
<record id="account_type_stock" model="account.account.type">
<field name="name">Existencias</field>
<field name="code">stock</field>
<field name="report_type">asset</field>
<field name="close_method">balance</field>
</record>
<record id="account_type_terceros" model="account.account.type">
<field name="name">Terceros</field>
<field name="code">terceros</field>
<field name="close_method">balance</field>
</record>
<record id="account_type_financieras" model="account.account.type">
<field name="name">Financieras</field>
<field name="code">financieras</field>
<field name="close_method">balance</field>
</record>
<record id="account_type_gastos_neto" model="account.account.type">
<field name="name">Gastos patrimonio neto</field>
<field name="code">gastos_neto</field>
<field name="report_type">expense</field>
<field name="close_method">balance</field>
</record>
<record id="account_type_ingresos_neto" model="account.account.type">
<field name="name">Ingresos patrimonio neto</field>
<field name="code">ingresos_neto</field>
<field name="report_type">income</field>
<field name="close_method">balance</field>
</record>
</data>
</openerp>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,970 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">
<!-- Definición de posiciones fiscales Régimen Nacional, Recargo de Equivalencia,
Extracomunitario, Intracomunitario y Retención de IRPFs
Añadidas posiciones fiscales Retención de IRPF 18%, 15%, 7%, 1% :
Jordi Esteve (Zikzakmedia) - jesteve@zikzakmedia.com 2009-11-21
Añadidas posiciones fiscales Retención de IRPF 19%, 2% :
Jordi Esteve (Zikzakmedia) - jesteve@zikzakmedia.com 2010-02-18
Añadido mapeo de cuentas del regimen de equivalencia para compras :
Ignacio Ibeas (Acysos) - ignacio@acysos.com 2011-02-22
Añadidas posiciones fiscales Retención de IRPF 18%, 15%, 7%, 1% :
Jordi Esteve (Zikzakmedia) - jesteve@zikzakmedia.com (2009-11-21)
Añadidas posiciones fiscales Retención de IRPF 19%, 2% :
Jordi Esteve (Zikzakmedia) - jesteve@zikzakmedia.com 2010-02-18
Añadido mapeo de cuentas del regimen de equivalencia para compras y ventas separados:
Ignacio Ibeas (Acysos) - ignacio@acysos.com 2011-05-06
Eliminación IVAs obsoletos 7%, 8%, 16% y 18%
Eliminación IRPFs obsoletos 18% y 19%
Eliminación recargos de equivalencia obsoletos 1% y 4%
Pedro M. Baeza <pedro.baeza@serviciosbaeza.com> (Serv. Tecnol. Avanzados) (2014-03-20)
-->
<!-- ************************************************************* -->
<!-- Fiscal Position Templates -->
<!-- ************************************************************* -->
<record id="fp_nacional" model="account.fiscal.position.template">
<field name="name">Régimen Nacional</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_recargo" model="account.fiscal.position.template">
<field name="name">Recargo de Equivalencia</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_extra" model="account.fiscal.position.template">
<field name="name">Régimen Extracomunitario</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_intra" model="account.fiscal.position.template">
<field name="name">Régimen Intracomunitario</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf21" model="account.fiscal.position.template">
<field name="name">Retención IRPF 21%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf20" model="account.fiscal.position.template">
<field name="name">Retención IRPF 20%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf15" model="account.fiscal.position.template">
<field name="name">Retención IRPF 15%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf9" model="account.fiscal.position.template">
<field name="name">Retención IRPF 9%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf7" model="account.fiscal.position.template">
<field name="name">Retención IRPF 7%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf2" model="account.fiscal.position.template">
<field name="name">Retención IRPF 2%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<record id="fp_irpf1" model="account.fiscal.position.template">
<field name="name">Retención IRPF 1%</field>
<field name="chart_template_id" ref="account_chart_template_common"/>
</record>
<!-- ************************************************************* -->
<!-- Fiscal Position Tax Templates -->
<!-- ************************************************************* -->
<!-- Extracomunitarios -->
<record id="fptt_extra_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_X4_compras_bc"/>
</record>
<record id="fptt_extra_4_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_sop_4_inv"/>
<field name="tax_dest_id" ref="iva_X4_compras_bi"/>
</record>
<record id="fptt_extra_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_X10_compras_bc"/>
</record>
<record id="fptt_extra_10_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_sop_10_inv"/>
<field name="tax_dest_id" ref="iva_X10_compras_bi"/>
</record>
<record id="fptt_extra_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_X21_compras_bc"/>
</record>
<record id="fptt_extra_21_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_sop_21_inv"/>
<field name="tax_dest_id" ref="iva_X21_compras_bi"/>
</record>
<record id="fptt_extra_ventas_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_X0"/>
</record>
<record id="fptt_extra_ventas_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_X0"/>
</record>
<record id="fptt_extra_ventas_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_extra"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_X0"/>
</record>
<!-- Intracomunitarios -->
<record id="fptt_intra_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_IC_compras_4_bc"/>
</record>
<record id="fptt_intra_4_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_sop_4_inv"/>
<field name="tax_dest_id" ref="iva_IC_compras_4_bi"/>
</record>
<record id="fptt_intra_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_IC_compras_10_bc"/>
</record>
<record id="fptt_intra_10_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_sop_10_inv"/>
<field name="tax_dest_id" ref="iva_IC_compras_10_bi"/>
</record>
<record id="fptt_intra_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_IC_compras_21_bc"/>
</record>
<record id="fptt_intra_21_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_sop_21_inv"/>
<field name="tax_dest_id" ref="iva_IC_compras_21_bi"/>
</record>
<record id="fptt_intra_ventas_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_IO"/>
</record>
<record id="fptt_intra_ventas_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_IO"/>
</record>
<record id="fptt_intra_ventas_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_intra"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_IO"/>
</record>
<!-- Recargo de equivalencia -->
<record id="fptt_recargo_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_recargo_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="re_05"/>
</record>
<record id="fptt_recargo_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_recargo_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="re_14"/>
</record>
<record id="fptt_recargo_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_recargo_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="re_52"/>
</record>
<record id="fptt_recargo_buy_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_recargo_buy_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="re_buy_05"/>
</record>
<record id="fptt_recargo_buy_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_recargo_buy_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="re_buy_14"/>
</record>
<record id="fptt_recargo_buy_4_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_4_inv"/>
<field name="tax_dest_id" ref="iva_sop_4_inv"/>
</record>
<record id="fptt_recargo_buy_4_2_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_4_inv"/>
<field name="tax_dest_id" ref="re_buy_05"/>
</record>
<record id="fptt_recargo_buy_10_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_10_inv"/>
<field name="tax_dest_id" ref="iva_sop_10_inv"/>
</record>
<record id="fptt_recargo_buy_10_2_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_10_inv"/>
<field name="tax_dest_id" ref="re_buy_14"/>
</record>
<record id="fptt_recargo_buy_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_recargo_buy_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="re_buy_52"/>
</record>
<record id="fptt_recargo_buy_21_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_21_inv"/>
<field name="tax_dest_id" ref="iva_sop_21_inv"/>
</record>
<record id="fptt_recargo_buy_21_2_inv"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_recargo"/>
<field name="tax_src_id" ref="iva_sop_21_inv"/>
<field name="tax_dest_id" ref="re_buy_52"/>
</record>
<!-- Retenciones IRPF 21% -->
<record id="fptt_irpf21sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf21sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_21"/>
</record>
<record id="fptt_irpf21sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf21sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_21"/>
</record>
<record id="fptt_irpf21sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf21sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_21"/>
</record>
<record id="fptt_irpf21_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf21_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_21"/>
</record>
<record id="fptt_irpf21_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf21_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_21"/>
</record>
<record id="fptt_irpf21_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf21_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_21"/>
</record>
<record id="fptt_irpf21sale_ex"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="iva_rep_ex"/>
</record>
<record id="fptt_irpf21sale_ex_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="irpf_sale_21"/>
</record>
<record id="fptt_irpf21_0" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="iva_sop_ex"/>
</record>
<record id="fptt_irpf21_0_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf21"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="irpf_21"/>
</record>
<!-- Retenciones IRPF 20% -->
<record id="fptt_irpf20sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf20sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_20"/>
</record>
<record id="fptt_irpf20sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf20sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_20"/>
</record>
<record id="fptt_irpf20sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf20sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_20"/>
</record>
<record id="fptt_irpf20_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf20_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_20"/>
</record>
<record id="fptt_irpf20_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf20_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_20"/>
</record>
<record id="fptt_irpf20_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf20_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf20"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_20"/>
</record>
<!-- Retenciones IRPF 15% -->
<record id="fptt_irpf15sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf15sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_15"/>
</record>
<record id="fptt_irpf15sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf15sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_15"/>
</record>
<record id="fptt_irpf15sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf15sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_15"/>
</record>
<record id="fptt_irpf15_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf15_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_15"/>
</record>
<record id="fptt_irpf15_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf15_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_15"/>
</record>
<record id="fptt_irpf15_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf15_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf15"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_15"/>
</record>
<!-- Retenciones IRPF 9% -->
<record id="fptt_irpf9sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf9sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_9"/>
</record>
<record id="fptt_irpf9sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf9sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_9"/>
</record>
<record id="fptt_irpf9sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf9sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_9"/>
</record>
<record id="fptt_irpf9_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf9_21_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_9"/>
</record>
<record id="fptt_irpf9_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf9_10_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_9"/>
</record>
<record id="fptt_irpf9_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf9_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_9"/>
</record>
<record id="fptt_irpf9sale_ex"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="iva_rep_ex"/>
</record>
<record id="fptt_irpf9sale_ex_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="irpf_sale_9"/>
</record>
<record id="fptt_irpf9_0" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="iva_sop_ex"/>
</record>
<record id="fptt_irpf9_0_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf9"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="irpf_9"/>
</record>
<!-- Retenciones IRPF 7% -->
<record id="fptt_irpf7sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf7sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_7"/>
</record>
<record id="fptt_irpf7sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf7sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_7"/>
</record>
<record id="fptt_irpf7sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf7sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_7"/>
</record>
<record id="fptt_irpf7_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf7_21_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_7"/>
</record>
<record id="fptt_irpf7_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf7_10_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_7"/>
</record>
<record id="fptt_irpf7_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf7_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf7"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_7"/>
</record>
<!-- Retenciones IRPF 2% -->
<record id="fptt_irpf2sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf2sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_2"/>
</record>
<record id="fptt_irpf2sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf2sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_2"/>
</record>
<record id="fptt_irpf2sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf2sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_2"/>
</record>
<record id="fptt_irpf2_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf2_21_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_2"/>
</record>
<record id="fptt_irpf2_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf2_10_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_2"/>
</record>
<record id="fptt_irpf2_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf2_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_2"/>
</record>
<record id="fptt_irpf2sale_ex"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="iva_rep_ex"/>
</record>
<record id="fptt_irpf2sale_ex_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="irpf_sale_2"/>
</record>
<record id="fptt_irpf2_0" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="iva_sop_ex"/>
</record>
<record id="fptt_irpf2_0_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf2"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="irpf_2"/>
</record>
<!-- Retenciones IRPF 1% -->
<record id="fptt_irpf1sale_21"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="iva_rep_21"/>
</record>
<record id="fptt_irpf1sale_21_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_21"/>
<field name="tax_dest_id" ref="irpf_sale_1"/>
</record>
<record id="fptt_irpf1sale_10"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="iva_rep_10"/>
</record>
<record id="fptt_irpf1sale_10_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_10"/>
<field name="tax_dest_id" ref="irpf_sale_1"/>
</record>
<record id="fptt_irpf1sale_4"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="iva_rep_4"/>
</record>
<record id="fptt_irpf1sale_4_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_4"/>
<field name="tax_dest_id" ref="irpf_sale_1"/>
</record>
<record id="fptt_irpf1_21" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="iva_sop_21"/>
</record>
<record id="fptt_irpf1_21_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_21"/>
<field name="tax_dest_id" ref="irpf_1"/>
</record>
<record id="fptt_irpf1_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="iva_sop_10"/>
</record>
<record id="fptt_irpf1_10_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_10"/>
<field name="tax_dest_id" ref="irpf_1"/>
</record>
<record id="fptt_irpf1_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="iva_sop_4"/>
</record>
<record id="fptt_irpf1_4_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_4"/>
<field name="tax_dest_id" ref="irpf_1"/>
</record>
<record id="fptt_irpf1sale_ex"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="iva_rep_ex"/>
</record>
<record id="fptt_irpf1sale_ex_2"
model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_rep_ex"/>
<field name="tax_dest_id" ref="irpf_sale_1"/>
</record>
<record id="fptt_irpf1_0" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="iva_sop_ex"/>
</record>
<record id="fptt_irpf1_0_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fp_irpf1"/>
<field name="tax_src_id" ref="iva_sop_ex"/>
<field name="tax_dest_id" ref="irpf_1"/>
</record>
<!-- ************************************************************* -->
<!-- Fiscal Position Account Templates -->
<!-- ************************************************************* -->
<!-- Extracomunitarios -->
<record id="fpat_extra_acc_1"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_extra"/>
<field name="account_src_id" ref="pgc_7000_child"/>
<field name="account_dest_id" ref="pgc_7002_child"/>
</record>
<record id="fpat_extra_acc_2"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_extra"/>
<field name="account_src_id" ref="pgc_7010_child"/>
<field name="account_dest_id" ref="pgc_7012_child"/>
</record>
<record id="fpat_extra_acc_3"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_extra"/>
<field name="account_src_id" ref="pgc_7020_child"/>
<field name="account_dest_id" ref="pgc_7022_child"/>
</record>
<record id="fpat_extra_acc_4"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_extra"/>
<field name="account_src_id" ref="pgc_7030_child"/>
<field name="account_dest_id" ref="pgc_7032_child"/>
</record>
<record id="fpat_extra_acc_5"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_extra"/>
<field name="account_src_id" ref="pgc_7040_child"/>
<field name="account_dest_id" ref="pgc_7042_child"/>
</record>
<record id="fpat_extra_acc_6"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_extra"/>
<field name="account_src_id" ref="pgc_7050_child"/>
<field name="account_dest_id" ref="pgc_7052_child"/>
</record>
<!-- Intracomunitarios -->
<record id="fpat_intra_acc_1"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_intra"/>
<field name="account_src_id" ref="pgc_7000_child"/>
<field name="account_dest_id" ref="pgc_7001_child"/>
</record>
<record id="fpat_intra_acc_2"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_intra"/>
<field name="account_src_id" ref="pgc_7010_child"/>
<field name="account_dest_id" ref="pgc_7011_child"/>
</record>
<record id="fpat_intra_acc_3"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_intra"/>
<field name="account_src_id" ref="pgc_7020_child"/>
<field name="account_dest_id" ref="pgc_7021_child"/>
</record>
<record id="fpat_intra_acc_4"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_intra"/>
<field name="account_src_id" ref="pgc_7030_child"/>
<field name="account_dest_id" ref="pgc_7031_child"/>
</record>
<record id="fpat_intra_acc_5"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_intra"/>
<field name="account_src_id" ref="pgc_7040_child"/>
<field name="account_dest_id" ref="pgc_7041_child"/>
</record>
<record id="fpat_intra_acc_6"
model="account.fiscal.position.account.template">
<field name="position_id" ref="fp_intra"/>
<field name="account_src_id" ref="pgc_7050_child"/>
<field name="account_dest_id" ref="pgc_7051_child"/>
</record>
</data>
</openerp>

File diff suppressed because it is too large Load Diff

View File

@ -7,77 +7,47 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2012-01-17 10:53+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:40+0000\n"
"Last-Translator: Pedro Manuel Baeza <pedro.baeza@gmail.com>\n"
"Language-Team: Arabic <ar@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr "عرض"

View File

@ -4,83 +4,55 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.6\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2010-11-15 12:17+0000\n"
"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
"<jesteve@zikzakmedia.com>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:17+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Pla comptable espanyol (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
@ -106,6 +78,3 @@ msgstr ""
#~ "\n"
#~ "Nota: Hauríeu d'instal·lar el mòdul l10n_ES_account_balance_report\n"
#~ "per a reports de comptes anuals (balanç, perdudes i guanys).\n"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Pla comptable espanyol (PGCE 2008)"

View File

@ -7,77 +7,47 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2012-01-27 09:00+0000\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:40+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Danish <da@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""

View File

@ -1,112 +1,52 @@
# German translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-01-12 20:18+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: German <de@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:17+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
#~ "\n"
#~ "* Defines the following chart of account templates:\n"
#~ " * Spanish General Chart of Accounts 2008.\n"
#~ " * Spanish General Chart of Accounts 2008 for small and medium "
#~ "companies.\n"
#~ "* Defines templates for sale and purchase VAT.\n"
#~ "* Defines tax code templates.\n"
#~ "\n"
#~ "Note: You should install the l10n_ES_account_balance_report module\n"
#~ "for yearly account reporting (balance, profit & losses).\n"
#~ msgstr ""
#~ "Spanischer Kontenrahmen (PGCE 2008)\n"
#~ "\n"
#~ "* Stellt die folgenden Kontenrahmen bereit:\n"
#~ " * Allgemeiner spanischer Kontenrahmen 2008\n"
#~ " * Allgemeiner spanischer Kontenrahmen 2008 für kleine und "
#~ "mittelständische Unternehmen.\n"
#~ "* Definiert Vorlagen für die Umsatzsteuer für Verkauf und Einkauf\n"
#~ "* Definiert Vorlagen für Steuersätze\n"
#~ "\n"
#~ "Hinweis: Für jährliche Berichte zur Buchhaltung (Bilanz, Überschüsse & "
#~ "Verluste) sollten Sie das Modul l10n_ES_account_balance_report "
#~ "installieren.\n"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Spanischer Kontenrahmen (PGCE 2008)"

View File

@ -6,81 +6,51 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.6\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2010-12-28 07:52+0000\n"
"Last-Translator: Borja López Soilán (NeoPolus) <borjalopezsoilan@gmail.com>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:43+0000\n"
"Last-Translator: Pedro Manuel Baeza <pedro.baeza@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr "Inmovilizado"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr "Existencias"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr "Terceros - A pagar"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Ingresos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Gastos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr "Financieras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr "Impuestos"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr "Ingresos"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr "Terceros - A cobrar"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr "Capital"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
msgstr "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr "Existencias"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr "Financieras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Gastos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Ingresos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr "Inmovilizado"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr "Terceros"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr "Vista"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"

View File

@ -1,111 +1,53 @@
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
# Spanish (Costa Rica) translation for openobject-addons
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2012-02-17 17:44+0000\n"
"Last-Translator: Freddy Gonzalez <freddy.gonzalez.contreras@gmail.com>\n"
"Language-Team: \n"
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:43+0000\n"
"Last-Translator: Pedro Manuel Baeza <pedro.baeza@gmail.com>\n"
"Language-Team: Spanish (Costa Rica) <es_CR@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"Language: \n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr "Inmobilizado"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr "Existencias"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr "Terceros - A Pagar"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Ingresos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Gastos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr "Financieras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr "Impuestos"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr "Ingresos"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr "Terceros - A Cobrar"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr "Capital"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
msgstr "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr "Existencias"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr "Financieras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Gastos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Ingresos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr "Terceros"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr "Vista"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
#~ "\n"
#~ "* Defines the following chart of account templates:\n"
#~ " * Spanish General Chart of Accounts 2008.\n"
#~ " * Spanish General Chart of Accounts 2008 for small and medium "
#~ "companies.\n"
#~ "* Defines templates for sale and purchase VAT.\n"
#~ "* Defines tax code templates.\n"
#~ "\n"
#~ "Note: You should install the l10n_ES_account_balance_report module\n"
#~ "for yearly account reporting (balance, profit & losses).\n"
#~ msgstr ""
#~ "Plan General Contable Español (PGCE 2008)\n"
#~ "\n"
#~ "* Define las siguientes plantillas de planes de cuentas:\n"
#~ " * Plan General Contable Español 2008.\n"
#~ " * Plan General Contable Español 2008 para pequeñas y medianas "
#~ "empresas (PYMES).\n"
#~ "* Define plantillas de impuestos de ventas y compras.\n"
#~ "* Define plantillas de códigos de impuesto.\n"
#~ "\n"
#~ "Note: Debería instalar el módulo l10n_ES_account_balance_report\n"
#~ "para reportes de cuentas anuales (balance, perdidas y ganancias).\n"

View File

@ -6,44 +6,75 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.6\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2010-12-28 07:52+0000\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:42+0000\n"
"Last-Translator: Borja López Soilán (NeoPolus) <borjalopezsoilan@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-05 05:58+0000\n"
"X-Generator: Launchpad (build 13830)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:ir.module.module,shortdesc:l10n_es.module_meta_information
msgid "Spanish Charts of Accounts (PGCE 2008)"
msgstr "Plan Contable Español (PGCE 2008)"
#. module: l10n_es
#: model:ir.module.module,description:l10n_es.module_meta_information
msgid ""
"Spanish Charts of Accounts (PGCE 2008)\n"
"\n"
"* Defines the following chart of account templates:\n"
" * Spanish General Chart of Accounts 2008.\n"
" * Spanish General Chart of Accounts 2008 for small and medium "
"companies.\n"
"* Defines templates for sale and purchase VAT.\n"
"* Defines tax code templates.\n"
"\n"
"Note: You should install the l10n_ES_account_balance_report module\n"
"for yearly account reporting (balance, profit & losses).\n"
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
"Plan General Contable Español (PGCE 2008)\n"
"\n"
"* Define las siguientes plantillas de planes de cuentas:\n"
" * Plan General Contable Español 2008.\n"
" * Plan General Contable Español 2008 para pequeñas y medianas "
"empresas (PYMES).\n"
"* Define plantillas de impuestos de ventas y compras.\n"
"* Define plantillas de códigos de impuesto.\n"
"\n"
"Note: Debería instalar el módulo l10n_ES_account_balance_report\n"
"para reportes de cuentas anuales (balance, perdidas y ganancias).\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
#~ "\n"
#~ "* Defines the following chart of account templates:\n"
#~ " * Spanish General Chart of Accounts 2008.\n"
#~ " * Spanish General Chart of Accounts 2008 for small and medium "
#~ "companies.\n"
#~ "* Defines templates for sale and purchase VAT.\n"
#~ "* Defines tax code templates.\n"
#~ "\n"
#~ "Note: You should install the l10n_ES_account_balance_report module\n"
#~ "for yearly account reporting (balance, profit & losses).\n"
#~ msgstr ""
#~ "Plan General Contable Español (PGCE 2008)\n"
#~ "\n"
#~ "* Define las siguientes plantillas de planes de cuentas:\n"
#~ " * Plan General Contable Español 2008.\n"
#~ " * Plan General Contable Español 2008 para pequeñas y medianas "
#~ "empresas (PYMES).\n"
#~ "* Define plantillas de impuestos de ventas y compras.\n"
#~ "* Define plantillas de códigos de impuesto.\n"
#~ "\n"
#~ "Note: Debería instalar el módulo l10n_ES_account_balance_report\n"
#~ "para reportes de cuentas anuales (balance, perdidas y ganancias).\n"

View File

@ -1,86 +1,58 @@
# Spanish (Paraguay) translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-03-21 16:21+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Spanish (Paraguay) <es_PY@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:25+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
@ -106,6 +78,3 @@ msgstr ""
#~ "\n"
#~ "Note: Debería instalar el módulo l10n_ES_account_balance_report\n"
#~ "para reportes de cuentas anuales (balance, perdidas y ganancias).\n"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"

View File

@ -6,44 +6,75 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.6\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2010-12-28 07:52+0000\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:38+0000\n"
"Last-Translator: Borja López Soilán (NeoPolus) <borjalopezsoilan@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-05 05:58+0000\n"
"X-Generator: Launchpad (build 13830)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:ir.module.module,shortdesc:l10n_es.module_meta_information
msgid "Spanish Charts of Accounts (PGCE 2008)"
msgstr "Plan Contable Español (PGCE 2008)"
#. module: l10n_es
#: model:ir.module.module,description:l10n_es.module_meta_information
msgid ""
"Spanish Charts of Accounts (PGCE 2008)\n"
"\n"
"* Defines the following chart of account templates:\n"
" * Spanish General Chart of Accounts 2008.\n"
" * Spanish General Chart of Accounts 2008 for small and medium "
"companies.\n"
"* Defines templates for sale and purchase VAT.\n"
"* Defines tax code templates.\n"
"\n"
"Note: You should install the l10n_ES_account_balance_report module\n"
"for yearly account reporting (balance, profit & losses).\n"
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
"Plan General Contable Español (PGCE 2008)\n"
"\n"
"* Define las siguientes plantillas de planes de cuentas:\n"
" * Plan General Contable Español 2008.\n"
" * Plan General Contable Español 2008 para pequeñas y medianas "
"empresas (PYMES).\n"
"* Define plantillas de impuestos de ventas y compras.\n"
"* Define plantillas de códigos de impuesto.\n"
"\n"
"Note: Debería instalar el módulo l10n_ES_account_balance_report\n"
"para reportes de cuentas anuales (balance, perdidas y ganancias).\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
#~ "\n"
#~ "* Defines the following chart of account templates:\n"
#~ " * Spanish General Chart of Accounts 2008.\n"
#~ " * Spanish General Chart of Accounts 2008 for small and medium "
#~ "companies.\n"
#~ "* Defines templates for sale and purchase VAT.\n"
#~ "* Defines tax code templates.\n"
#~ "\n"
#~ "Note: You should install the l10n_ES_account_balance_report module\n"
#~ "for yearly account reporting (balance, profit & losses).\n"
#~ msgstr ""
#~ "Plan General Contable Español (PGCE 2008)\n"
#~ "\n"
#~ "* Define las siguientes plantillas de planes de cuentas:\n"
#~ " * Plan General Contable Español 2008.\n"
#~ " * Plan General Contable Español 2008 para pequeñas y medianas "
#~ "empresas (PYMES).\n"
#~ "* Define plantillas de impuestos de ventas y compras.\n"
#~ "* Define plantillas de códigos de impuesto.\n"
#~ "\n"
#~ "Note: Debería instalar el módulo l10n_ES_account_balance_report\n"
#~ "para reportes de cuentas anuales (balance, perdidas y ganancias).\n"

View File

@ -1,88 +1,56 @@
# French translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-01-14 00:16+0000\n"
"Last-Translator: Maxime Chambreuil (http://www.savoirfairelinux.com) "
"<maxime.chambreuil@savoirfairelinux.com>\n"
"Language-Team: French <fr@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:29+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan comptable espagnol (PGCE 2008)"

View File

@ -1,86 +1,58 @@
# Galician translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-02-14 11:06+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Galician <gl@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:29+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
@ -105,6 +77,3 @@ msgstr ""
#~ "\n"
#~ "Nota: Debería instalá-lo módulo \"l10n_ES_account_balance_report\"\n"
#~ "para os informes financieros anuales (balance, pérdidas e ganancias).\n"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan Contable Español (PGCE 2008)"

View File

@ -1,83 +1,52 @@
# Hungarian translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-01-10 10:43+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Hungarian <hu@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:38+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""

View File

@ -1,86 +1,55 @@
# Italian translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-01-13 22:58+0000\n"
"Last-Translator: Nicola Riolini - Micronaet <Unknown>\n"
"Language-Team: Italian <it@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:39+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Piano dei conti della Spagna (PGCE 2008)"

View File

@ -4,10 +4,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 7.0alpha\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2012-11-24 02:53+0000\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:03+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
@ -16,67 +16,37 @@ msgstr ""
"Plural-Forms: \n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""

53
addons/l10n_es/i18n/nl.po Normal file
View File

@ -0,0 +1,53 @@
# Dutch translation for openobject-addons
# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:43+0000\n"
"Last-Translator: Jan Jurkus (GCE CAD-Service) <ict@gcecad-service.nl>\n"
"Language-Team: Dutch <nl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr "Kapitaal"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""

View File

@ -1,86 +1,53 @@
# Occitan (post 1500) translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-11-20 09:22+0000\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:39+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Occitan (post 1500) <oc@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Plan comptable espanhòl (PGCE 2008)"

View File

@ -1,86 +1,55 @@
# Portuguese translation for openobject-addons
# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2010-12-20 20:33+0000\n"
"Last-Translator: Rui Franco (multibase.pt) <Unknown>\n"
"Language-Team: Portuguese <pt@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:39+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Esquema de contas espanhol (PGCE 2008)"

View File

@ -7,80 +7,54 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-03-09 22:32+0000\n"
"Last-Translator: Emerson <Unknown>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:40+0000\n"
"Last-Translator: Fábio Martinelli - http://zupy.com.br "
"<webmaster@zupy.com.br>\n"
"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr "Capital"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr "Estoques"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr "Financeiras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Despesas Líquidas"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Resultado de equivalência patrimonial"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
msgstr "Terceiros"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Spanish Charts of Accounts (PGCE 2008)"
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
@ -106,6 +80,3 @@ msgstr ""
#~ "\n"
#~ "Note: You should install the l10n_ES_account_balance_report module\n"
#~ "for yearly account reporting (balance, profit & losses).\n"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Spanish Charts of Accounts (PGCE 2008)"

53
addons/l10n_es/i18n/sl.po Normal file
View File

@ -0,0 +1,53 @@
# Slovenian translation for openobject-addons
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:39+0000\n"
"Last-Translator: Dušan Laznik (Mentis) <laznik@mentis.si>\n"
"Language-Team: Slovenian <sl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr "Capital"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr "Existencias"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr "Financieras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Gastos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Ingresos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr "Terceros"

View File

@ -1,110 +1,52 @@
# Serbian latin translation for openobject-addons
# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_es
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-10-13 15:18+0000\n"
"Last-Translator: Milan Milosevic <Unknown>\n"
"Language-Team: Serbian latin <sr@latin@li.org>\n"
"Project-Id-Version: OpenERP Server 7.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2013-10-10 16:40+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid ""
#~ "Spanish Charts of Accounts (PGCE 2008)\n"
#~ "\n"
#~ "* Defines the following chart of account templates:\n"
#~ " * Spanish General Chart of Accounts 2008.\n"
#~ " * Spanish General Chart of Accounts 2008 for small and medium "
#~ "companies.\n"
#~ "* Defines templates for sale and purchase VAT.\n"
#~ "* Defines tax code templates.\n"
#~ "\n"
#~ "Note: You should install the l10n_ES_account_balance_report module\n"
#~ "for yearly account reporting (balance, profit & losses).\n"
#~ msgstr ""
#~ "Računske tabele za Španiju (PGCE 2008)\n"
#~ "\n"
#~ "*Definiše sledeće modele za računske tabele:\n"
#~ " *Opšte računske tabele za Španiju 2008.\n"
#~ " *OPšte računske tabele za Španiju za mala i srednja preduzeća.\n"
#~ "*Definiše modele za prodaju i nabavku VAT-a.\n"
#~ "*Definiše model za takseni kod.\n"
#~ "\n"
#~ "Beleška: Trebalo bi da instalirate modul ''l10n_ES_account_balance_report''\n"
#~ "za godišnje izveštaje o računu (balans, prihod i rashod).\n"
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "Računske tabele za Španiju (PGCE 2008)"

View File

@ -1,86 +1,53 @@
# Turkish translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-11-24 02:53+0000\n"
"PO-Revision-Date: 2011-06-08 10:18+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2014-05-29 22:03+0000\n"
"PO-Revision-Date: 2014-05-29 22:43+0000\n"
"Last-Translator: Pedro Manuel Baeza <pedro.baeza@gmail.com>\n"
"Language-Team: Turkish <tr@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2014-05-30 05:56+0000\n"
"X-Generator: Launchpad (build 17023)\n"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.inmo
msgid "Inmobilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.stock
msgid "Existencias"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_pay
msgid "Terceros - A Pagar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos_neto
msgid "Gastos patrimonio neto"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.financieras
msgid "Financieras"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.tax
msgid "Impuestos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.ingresos
msgid "Ingresos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros_-_rec
msgid "Terceros - A Cobrar"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.capital
#: model:account.account.type,name:l10n_es.account_type_capital
msgid "Capital"
msgstr "Capital"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_stock
msgid "Existencias"
msgstr "Existencias"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_financieras
msgid "Financieras"
msgstr "Financieras"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_gastos_neto
msgid "Gastos patrimonio neto"
msgstr "Gastos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_ingresos_neto
msgid "Ingresos patrimonio neto"
msgstr "Ingresos patrimonio neto"
#. module: l10n_es
#: model:account.account.type,name:l10n_es.account_type_inmo
msgid "Inmovilizado"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.gastos
msgid "Gastos"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.terceros
#: model:account.account.type,name:l10n_es.account_type_terceros
msgid "Terceros"
msgstr ""
#. module: l10n_es
#: model:account.account.type,name:l10n_es.view
msgid "View"
msgstr ""
#~ msgid "Spanish Charts of Accounts (PGCE 2008)"
#~ msgstr "İspanya Hesap tabloları (PGCE 2008)"
msgstr "Terceros"

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Some files were not shown because too many files have changed in this diff Show More