diff --git a/addons/account/account.py b/addons/account/account.py
index bb24aec1748..3959799f1bb 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -132,7 +132,6 @@ class account_payment_term_line(osv.osv):
(_check_percent, 'Percentages for Payment Term Line must be between 0 and 1, Example: 0.02 for 2%.', ['value_amount']),
]
-account_payment_term_line()
class account_account_type(osv.osv):
_name = "account.account.type"
@@ -198,7 +197,6 @@ class account_account_type(osv.osv):
}
_order = "code"
-account_account_type()
def _code_get(self, cr, uid, context=None):
acc_type_obj = self.pool.get('account.account.type')
@@ -212,7 +210,6 @@ def _code_get(self, cr, uid, context=None):
class account_tax(osv.osv):
_name = 'account.tax'
-account_tax()
class account_account(osv.osv):
_order = "parent_left"
@@ -697,7 +694,6 @@ class account_account(osv.osv):
self._check_moves(cr, uid, ids, "unlink", context=context)
return super(account_account, self).unlink(cr, uid, ids, context=context)
-account_account()
class account_journal(osv.osv):
_name = "account.journal"
@@ -849,7 +845,6 @@ class account_journal(osv.osv):
return self.name_get(cr, user, ids, context=context)
-account_journal()
class account_fiscalyear(osv.osv):
_name = "account.fiscalyear"
@@ -945,7 +940,6 @@ class account_fiscalyear(osv.osv):
ids = self.search(cr, user, [('name', operator, name)]+ args, limit=limit)
return self.name_get(cr, user, ids, context=context)
-account_fiscalyear()
class account_period(osv.osv):
_name = "account.period"
@@ -1007,8 +1001,7 @@ class account_period(osv.osv):
def find(self, cr, uid, dt=None, context=None):
if context is None: context = {}
if not dt:
- dt = fields.date.context_today(self,cr,uid,context=context)
-#CHECKME: shouldn't we check the state of the period?
+ dt = fields.date.context_today(self, cr, uid, context=context)
args = [('date_start', '<=' ,dt), ('date_stop', '>=', dt)]
if context.get('company_id', False):
args.append(('company_id', '=', context['company_id']))
@@ -1016,7 +1009,7 @@ class account_period(osv.osv):
company_id = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.id
args.append(('company_id', '=', company_id))
result = []
- if context.get('account_period_prefer_normal'):
+ if context.get('account_period_prefer_normal', True):
# look for non-special periods first, and fallback to all if no result is found
result = self.search(cr, uid, args + [('special', '=', False)], context=context)
if not result:
@@ -1027,6 +1020,9 @@ class account_period(osv.osv):
def action_draft(self, cr, uid, ids, *args):
mode = 'draft'
+ for period in self.browse(cr, uid, ids):
+ if period.fiscalyear_id.state == 'done':
+ raise osv.except_osv(_('Warning !'), _('You can not re-open a period which belongs to closed fiscal year'))
cr.execute('update account_journal_period set state=%s where period_id in %s', (mode, tuple(ids),))
cr.execute('update account_period set state=%s where id in %s', (mode, tuple(ids),))
return True
@@ -1068,7 +1064,6 @@ class account_period(osv.osv):
return self.search(cr, uid, [('date_start', '>=', period_date_start), ('date_stop', '<=', period_date_stop), ('company_id', '=', company1_id)])
return self.search(cr, uid, [('date_start', '>=', period_date_start), ('date_stop', '<=', period_date_stop), ('company_id', '=', company1_id), ('special', '=', False)])
-account_period()
class account_journal_period(osv.osv):
_name = "account.journal.period"
@@ -1125,7 +1120,6 @@ class account_journal_period(osv.osv):
}
_order = "period_id"
-account_journal_period()
class account_fiscalyear(osv.osv):
_inherit = "account.fiscalyear"
@@ -1142,7 +1136,6 @@ class account_fiscalyear(osv.osv):
})
return super(account_fiscalyear, self).copy(cr, uid, id, default=default, context=context)
-account_fiscalyear()
#----------------------------------------------------------
# Entries
#----------------------------------------------------------
@@ -1220,7 +1213,7 @@ class account_move(osv.osv):
return res
def _get_period(self, cr, uid, context=None):
- ctx = dict(context or {}, account_period_prefer_normal=True)
+ ctx = dict(context or {})
period_ids = self.pool.get('account.period').find(cr, uid, context=ctx)
return period_ids[0]
@@ -1381,6 +1374,7 @@ class account_move(osv.osv):
'ref':False,
'balance':False,
'account_tax_id':False,
+ 'statement_id': False,
})
if 'journal_id' in vals and vals.get('journal_id', False):
@@ -1417,6 +1411,7 @@ class account_move(osv.osv):
context = {} if context is None else context.copy()
default.update({
'state':'draft',
+ 'ref': False,
'name':'/',
})
context.update({
@@ -1638,7 +1633,6 @@ class account_move(osv.osv):
valid_moves = [move.id for move in valid_moves]
return len(valid_moves) > 0 and valid_moves or False
-account_move()
class account_move_reconcile(osv.osv):
_name = "account.move.reconcile"
@@ -1712,7 +1706,6 @@ class account_move_reconcile(osv.osv):
result.append((r.id,r.name))
return result
-account_move_reconcile()
#----------------------------------------------------------
# Tax
@@ -1792,7 +1785,7 @@ class account_tax_code(osv.osv):
if context.get('period_id', False):
period_id = context['period_id']
else:
- period_id = self.pool.get('account.period').find(cr, uid)
+ period_id = self.pool.get('account.period').find(cr, uid, context=context)
if not period_id:
return dict.fromkeys(ids, 0.0)
period_id = period_id[0]
@@ -1860,7 +1853,6 @@ class account_tax_code(osv.osv):
]
_order = 'code'
-account_tax_code()
class account_tax(osv.osv):
"""
@@ -2268,7 +2260,6 @@ class account_tax(osv.osv):
total += r['amount']
return res
-account_tax()
# ---------------------------------------------------------
# Account Entries Models
@@ -2380,7 +2371,6 @@ class account_model(osv.osv):
return {'value': {'company_id': company_id}}
-account_model()
class account_model_line(osv.osv):
_name = "account.model.line"
@@ -2404,7 +2394,6 @@ class account_model_line(osv.osv):
('credit_debit1', 'CHECK (credit*debit=0)', 'Wrong credit or debit value in model, they must be positive!'),
('credit_debit2', 'CHECK (credit+debit>=0)', 'Wrong credit or debit value in model, they must be positive!'),
]
-account_model_line()
# ---------------------------------------------------------
# Account Subscription
@@ -2478,7 +2467,6 @@ class account_subscription(osv.osv):
self.write(cr, uid, ids, {'state':'running'})
return True
-account_subscription()
class account_subscription_line(osv.osv):
_name = "account.subscription.line"
@@ -2507,7 +2495,6 @@ class account_subscription_line(osv.osv):
_rec_name = 'date'
-account_subscription_line()
# ---------------------------------------------------------------
# Account Templates: Account, Tax, Tax Code and chart. + Wizard
@@ -2515,7 +2502,6 @@ account_subscription_line()
class account_tax_template(osv.osv):
_name = 'account.tax.template'
-account_tax_template()
class account_account_template(osv.osv):
_order = "code"
@@ -2643,7 +2629,6 @@ class account_account_template(osv.osv):
obj_acc._parent_store_compute(cr)
return acc_template_ref
-account_account_template()
class account_add_tmpl_wizard(osv.osv_memory):
"""Add one more account from the template.
@@ -2697,7 +2682,6 @@ class account_add_tmpl_wizard(osv.osv_memory):
def action_cancel(self, cr, uid, ids, context=None):
return { 'type': 'state', 'state': 'end' }
-account_add_tmpl_wizard()
class account_tax_code_template(osv.osv):
@@ -2769,7 +2753,6 @@ class account_tax_code_template(osv.osv):
(_check_recursion, 'Error!\nYou cannot create recursive Tax Codes.', ['parent_id'])
]
_order = 'code,name'
-account_tax_code_template()
class account_chart_template(osv.osv):
@@ -2802,7 +2785,6 @@ class account_chart_template(osv.osv):
'complete_tax_set': True,
}
-account_chart_template()
class account_tax_template(osv.osv):
@@ -2932,7 +2914,6 @@ class account_tax_template(osv.osv):
res.update({'tax_template_to_tax': tax_template_to_tax, 'account_dict': todo_dict})
return res
-account_tax_template()
# Fiscal Position Templates
@@ -2980,7 +2961,6 @@ class account_fiscal_position_template(osv.osv):
})
return True
-account_fiscal_position_template()
class account_fiscal_position_tax_template(osv.osv):
_name = 'account.fiscal.position.tax.template'
@@ -2993,7 +2973,6 @@ class account_fiscal_position_tax_template(osv.osv):
'tax_dest_id': fields.many2one('account.tax.template', 'Replacement Tax')
}
-account_fiscal_position_tax_template()
class account_fiscal_position_account_template(osv.osv):
_name = 'account.fiscal.position.account.template'
@@ -3005,7 +2984,6 @@ class account_fiscal_position_account_template(osv.osv):
'account_dest_id': fields.many2one('account.account.template', 'Account Destination', domain=[('type','<>','view')], required=True)
}
-account_fiscal_position_account_template()
# ---------------------------------------------------------
# Account generation from template wizards
@@ -3398,7 +3376,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
try:
tmp2 = obj_data.get_object_reference(cr, uid, *ref)
if tmp2:
- self.pool.get(tmp2[0]).write(cr, uid, tmp2[1], {
+ self.pool[tmp2[0]].write(cr, uid, tmp2[1], {
'currency_id': obj_wizard.currency_id.id
})
except ValueError, e:
@@ -3545,7 +3523,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
current_num += 1
return True
-wizard_multi_charts_accounts()
class account_bank_accounts_wizard(osv.osv_memory):
_name='account.bank.accounts.wizard'
@@ -3557,6 +3534,5 @@ class account_bank_accounts_wizard(osv.osv_memory):
'account_type': fields.selection([('cash','Cash'), ('check','Check'), ('bank','Bank')], 'Account Type', size=32),
}
-account_bank_accounts_wizard()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_analytic_line.py b/addons/account/account_analytic_line.py
index f3617106f28..e141f33b9d1 100644
--- a/addons/account/account_analytic_line.py
+++ b/addons/account/account_analytic_line.py
@@ -143,7 +143,6 @@ class account_analytic_line(osv.osv):
return res
return False
-account_analytic_line()
class res_partner(osv.osv):
""" Inherits partner and adds contract information in the partner form """
@@ -154,6 +153,5 @@ class res_partner(osv.osv):
'partner_id', 'Contracts', readonly=True),
}
-res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py
index 8e1a5dd26c6..023765d73f0 100644
--- a/addons/account/account_bank_statement.py
+++ b/addons/account/account_bank_statement.py
@@ -61,7 +61,7 @@ class account_bank_statement(osv.osv):
return res
def _get_period(self, cr, uid, context=None):
- periods = self.pool.get('account.period').find(cr, uid,context=context)
+ periods = self.pool.get('account.period').find(cr, uid, context=context)
if periods:
return periods[0]
return False
@@ -500,7 +500,6 @@ class account_bank_statement(osv.osv):
'context':ctx,
}
-account_bank_statement()
class account_bank_statement_line(osv.osv):
@@ -576,6 +575,5 @@ class account_bank_statement_line(osv.osv):
'type': 'general',
}
-account_bank_statement_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_cash_statement.py b/addons/account/account_cash_statement.py
index 86d3b0d24de..40f0ca80738 100644
--- a/addons/account/account_cash_statement.py
+++ b/addons/account/account_cash_statement.py
@@ -66,7 +66,6 @@ class account_cashbox_line(osv.osv):
'bank_statement_id' : fields.many2one('account.bank.statement', ondelete='cascade'),
}
-account_cashbox_line()
class account_cash_statement(osv.osv):
@@ -316,7 +315,6 @@ class account_cash_statement(osv.osv):
return self.write(cr, uid, ids, {'closing_date': time.strftime("%Y-%m-%d %H:%M:%S")}, context=context)
-account_cash_statement()
class account_journal(osv.osv):
_inherit = 'account.journal'
@@ -336,7 +334,6 @@ class account_journal(osv.osv):
'cashbox_line_ids' : _default_cashbox_line_ids,
}
-account_journal()
class account_journal_cashbox_line(osv.osv):
_name = 'account.journal.cashbox.line'
@@ -348,6 +345,5 @@ class account_journal_cashbox_line(osv.osv):
_order = 'pieces asc'
-account_journal_cashbox_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_financial_report.py b/addons/account/account_financial_report.py
index e8b58f61882..0c2e5845b89 100644
--- a/addons/account/account_financial_report.py
+++ b/addons/account/account_financial_report.py
@@ -138,6 +138,5 @@ class account_financial_report(osv.osv):
'style_overwrite': 0,
}
-account_financial_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py
index 222a0bebbb4..c47cf70b673 100644
--- a/addons/account/account_invoice.py
+++ b/addons/account/account_invoice.py
@@ -286,7 +286,10 @@ class account_invoice(osv.osv):
'payment_ids': fields.function(_compute_lines, relation='account.move.line', type="many2many", string='Payments'),
'move_name': fields.char('Journal Entry', size=64, readonly=True, states={'draft':[('readonly',False)]}),
'user_id': fields.many2one('res.users', 'Salesperson', readonly=True, track_visibility='onchange', states={'draft':[('readonly',False)]}),
- 'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position', readonly=True, states={'draft':[('readonly',False)]})
+ 'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position', readonly=True, states={'draft':[('readonly',False)]}),
+ 'commercial_partner_id': fields.related('partner_id', 'commercial_partner_id', string='Commercial Entity', type='many2one',
+ relation='res.partner', store=True, readonly=True,
+ help="The commercial entity that will be used on Journal Entries for this invoice")
}
_defaults = {
'type': _get_type,
@@ -313,7 +316,7 @@ class account_invoice(osv.osv):
context = {}
if context.get('active_model', '') in ['res.partner'] and context.get('active_ids', False) and context['active_ids']:
- partner = self.pool.get(context['active_model']).read(cr, uid, context['active_ids'], ['supplier','customer'])[0]
+ partner = self.pool[context['active_model']].read(cr, uid, context['active_ids'], ['supplier','customer'])[0]
if not view_type:
view_id = self.pool.get('ir.ui.view').search(cr, uid, [('name', '=', 'account.invoice.tree')])
view_type = 'tree'
@@ -367,18 +370,6 @@ class account_invoice(osv.osv):
context['view_id'] = view_id
return context
- def create(self, cr, uid, vals, context=None):
- if context is None:
- context = {}
- try:
- return super(account_invoice, self).create(cr, uid, vals, context)
- except Exception, e:
- if '"journal_id" viol' in e.args[0]:
- raise orm.except_orm(_('Configuration Error!'),
- _('There is no Sale/Purchase Journal(s) defined.'))
- else:
- raise orm.except_orm(_('Unknown Error!'), str(e))
-
def invoice_print(self, cr, uid, ids, context=None):
'''
This function prints the invoice and mark it as sent, so that we can see more easily the next step of the workflow
@@ -997,8 +988,7 @@ class account_invoice(osv.osv):
'narration':inv.comment
}
period_id = inv.period_id and inv.period_id.id or False
- ctx.update(company_id=inv.company_id.id,
- account_period_prefer_normal=True)
+ ctx.update(company_id=inv.company_id.id)
if not period_id:
period_ids = period_obj.find(cr, uid, inv.date_invoice, context=ctx)
period_id = period_ids and period_ids[0] or False
@@ -1274,9 +1264,7 @@ class account_invoice(osv.osv):
ref = invoice.reference
else:
ref = self._convert_ref(cr, uid, invoice.number)
- partner = invoice.partner_id
- if partner.parent_id and not partner.is_company:
- partner = partner.parent_id
+ partner = self.pool['res.partner']._find_accounting_partner(invoice.partner_id)
# Pay attention to the sign for both debit/credit AND amount_currency
l1 = {
'debit': direction * pay_amount>0 and direction * pay_amount,
@@ -1596,7 +1584,6 @@ class account_invoice_line(osv.osv):
unique_tax_ids = product_change_result['value']['invoice_line_tax_id']
return {'value':{'invoice_line_tax_id': unique_tax_ids}}
-account_invoice_line()
class account_invoice_tax(osv.osv):
_name = "account.invoice.tax"
@@ -1747,15 +1734,11 @@ class res_partner(osv.osv):
'invoice_ids': fields.one2many('account.invoice.line', 'partner_id', 'Invoices', readonly=True),
}
- def _find_accounting_partner(self, part):
+ def _find_accounting_partner(self, partner):
'''
Find the partner for which the accounting entries will be created
'''
- #if the chosen partner is not a company and has a parent company, use the parent for the journal entries
- #because you want to invoice 'Agrolait, accounting department' but the journal items are for 'Agrolait'
- if part.parent_id and not part.is_company:
- part = part.parent_id
- return part
+ return partner.commercial_partner_id
def copy(self, cr, uid, id, default=None, context=None):
default = default or {}
diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml
index 8c0854bd6c6..7469c38decb 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -117,6 +117,7 @@
+
@@ -320,7 +321,8 @@
+ options='{"always_reload": True}'
+ domain="[('customer', '=', True)]"/>
@@ -447,18 +449,20 @@
account.invoice
-
+
-
-
+
+
+
-
+
+
@@ -621,8 +625,6 @@
-
-
0 AND credit > 0 AND (last_reconciliation_date IS NULL OR max_date > last_reconciliation_date)
ORDER BY last_reconciliation_date""")
- ids = cr.fetchall()
- ids = len(ids) and [x[0] for x in ids] or []
- return self.pool.get('res.partner').name_get(cr, uid, ids, context=context)
+ ids = [x[0] for x in cr.fetchall()]
+ if not ids:
+ return []
+
+ # To apply the ir_rules
+ partner_obj = self.pool.get('res.partner')
+ ids = partner_obj.search(cr, uid, [('id', 'in', ids)], context=context)
+ return partner_obj.name_get(cr, uid, ids, context=context)
def reconcile_partial(self, cr, uid, ids, type='auto', context=None, writeoff_acc_id=False, writeoff_period_id=False, writeoff_journal_id=False):
move_rec_obj = self.pool.get('account.move.reconcile')
@@ -980,8 +980,7 @@ class account_move_line(osv.osv):
if context is None:
context = {}
period_pool = self.pool.get('account.period')
- ctx = dict(context, account_period_prefer_normal=True)
- pids = period_pool.find(cr, user, date, context=ctx)
+ pids = period_pool.find(cr, user, date, context=context)
if pids:
res.update({
'period_id':pids[0]
@@ -1303,6 +1302,5 @@ class account_move_line(osv.osv):
bool(journal.currency),bool(journal.analytic_journal_id)))
return result
-account_move_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index b8dcefdd3a4..13bc694a1cc 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -1112,7 +1112,7 @@
-
+
@@ -1194,7 +1194,12 @@
sequence="1"
groups="group_account_user"
/>
-
+
+ Journal Items
+ account.move.line
+ {'search_default_partner_id': [active_id], 'default_partner_id': active_id}
+
+ account.move.line
@@ -1288,7 +1293,7 @@
-
+
@@ -1352,7 +1357,7 @@
-
+
@@ -1771,23 +1776,6 @@
-
-
-
-
-
\n"
" "
msgstr ""
+"
\n"
+" Klik om een journaal toe te voegen.\n"
+"
\n"
+" Een journaal groepeert boekingen in functie\n"
+" van de dagelijkse bezigheden.\n"
+"
\n"
+" Een firma geruikt doorgaans een journaal per betaalmethode "
+"(kas,\n"
+" bankrekeningen, cheques), een aankoopdagboek, een "
+"verkoopdagboek\n"
+" en een diversendagboek.\n"
+"
\n"
+" "
#. module: account
#: model:ir.model,name:account.model_account_fiscalyear_close_state
@@ -9276,6 +9405,9 @@ msgid ""
"computed. Because it is space consuming, we do not allow to use it while "
"doing a comparison."
msgstr ""
+"Met deze optie krijgt u meer details over de manier waarop de saldi worden "
+"berekend. Omdat dit ruimte inneemt, is deze optie niet mogelijk bij "
+"vergelijkingen."
#. module: account
#: model:ir.model,name:account.model_account_fiscalyear_close
@@ -9292,6 +9424,8 @@ msgstr "De code van de rekening moet uniek zijn per firma."
#: help:product.template,property_account_expense:0
msgid "This account will be used to value outgoing stock using cost price."
msgstr ""
+"Deze rekening dient voor de voorraadwaardering van de uitgaande voorraad op "
+"basis van de kostprijs."
#. module: account
#: view:account.invoice:0
@@ -9354,6 +9488,17 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik als u een nieuwe recurrente boeking wilt maken.\n"
+"
\n"
+" Een terugkerende boeking wordt regelmatig op een bepaald "
+"tijdstip herhaald,\n"
+" vb. bij vervallen van een contract of overeenkomst met een\n"
+" klant of een leverancier. U kunt dergelijke boekingen "
+"voorbereiden\n"
+" zodat deze automatisch worden geboekt.\n"
+"
\n"
+" "
#. module: account
#: view:account.journal:0
@@ -9396,6 +9541,8 @@ msgid ""
"This allows you to check writing and printing.\n"
" This installs the module account_check_writing."
msgstr ""
+"Hiermee kunt u cheques schrijven en afdrukken.\n"
+" Hiermee wordt de module account_check_writing geïnstalleerd."
#. module: account
#: model:res.groups,name:account.group_account_invoice
@@ -9681,6 +9828,9 @@ msgid ""
"chart\n"
" of accounts."
msgstr ""
+"Bevestigde facturen kunnen niet meer\n"
+" worden gewijzigd. Facturen krijgen een uniek nummer\n"
+" en de boekingen worden gemaakt."
#. module: account
#: model:process.node,note:account.process_node_bankstatement0
@@ -9906,11 +10056,15 @@ msgid ""
"payments.\n"
" This installs the module account_payment."
msgstr ""
+"Hiermee kunt u betaalopdrachten maken\n"
+" * die als basis dienen voor verdere automatisering,\n"
+" * om efficiënter betalingen te kunnen uitvoeren.\n"
+" Hiermee wordt de module account_payment geïnstalleerd."
#. module: account
#: xsl:account.transfer:0
msgid "Document"
-msgstr ""
+msgstr "Document"
#. module: account
#: view:account.chart.template:0
@@ -10132,7 +10286,7 @@ msgstr "Kan geen boekingen maken tussen verschillende firma's."
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_periodical_processing
msgid "Periodic Processing"
-msgstr ""
+msgstr "Periodieke verwerking"
#. module: account
#: view:account.invoice.report:0
@@ -10212,7 +10366,7 @@ msgstr "Vervaldatum"
#: model:account.payment.term,name:account.account_payment_term_immediate
#: model:account.payment.term,note:account.account_payment_term_immediate
msgid "Immediate Payment"
-msgstr ""
+msgstr "Contante betaling"
#. module: account
#: code:addons/account/account.py:1464
@@ -10424,11 +10578,16 @@ msgid ""
"analytic account.\n"
" This installs the module account_budget."
msgstr ""
+"Hiermee kunnen accountants budgetten beheren.\n"
+" Als de hoofdbudgetten zijn ingesteld, kunnen de "
+"projectleiders\n"
+" het geplande bedrag instellen per analytische rekening.\n"
+" Hiermee wordt de module account_budget geïnstalleerd."
#. module: account
#: field:account.bank.statement.line,name:0
msgid "OBI"
-msgstr ""
+msgstr "Omschrijving"
#. module: account
#: help:res.partner,property_account_payable:0
@@ -10915,6 +11074,8 @@ msgid ""
"If you unreconcile transactions, you must also verify all the actions that "
"are linked to those transactions because they will not be disable"
msgstr ""
+"Als u afgepunte transacties ongedaan maakt, moet u alle gekoppelde acties "
+"nakijken, want deze worden niet ongedaan gemaakt."
#. module: account
#: code:addons/account/account_move_line.py:1059
@@ -10949,6 +11110,9 @@ msgid ""
"customer. The tool search can also be used to personalise your Invoices "
"reports and so, match this analysis to your needs."
msgstr ""
+"Dit rapport biedt een overzicht van het bedrag gefactureerd aan uw klant. De "
+"zoekfunctie kan worden aangepast om het overzicht van uw facturen te "
+"personaliseren, zodat u de gewenste analyse krijgt."
#. module: account
#: view:account.partner.reconcile.process:0
@@ -11207,6 +11371,16 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik als u een nieuw btw-vak wilt toevoegen.\n"
+"
\n"
+" Afhankelijk van uw land, dient een btw-vak om uw btw-"
+"aangifte in te vullen.\n"
+" In OpenERP kunt u een btw-structuur instellen en elke btw-"
+"berekening\n"
+" kan in een of meer btw-vakken worden opgenomen.\n"
+"
\n"
+" Selecteer de periode en het journaal.\n"
+"
\n"
+" Hiermee kan de boekhouder in een sneltempo boekingen "
+"invoeren in\n"
+" OpenERP. Als u een aankoopfactuur wilt inboeken,\n"
+" begint u met de kostenrekening. OpenERP stelt automatisch\n"
+" de betrokken btw voor die is gekoppeld aan deze rekening, "
+"net\n"
+" als de centralisatierekening.\n"
+"
\n"
+" "
#. module: account
#: help:account.invoice.line,account_id:0
@@ -11403,7 +11589,7 @@ msgstr "Rekeningmodel"
#: code:addons/account/account_cash_statement.py:292
#, python-format
msgid "Loss"
-msgstr ""
+msgstr "Verlies"
#. module: account
#: selection:account.entries.report,month:0
@@ -11475,7 +11661,7 @@ msgstr "Kostenrekening van productsjabloon"
#. module: account
#: field:res.partner,property_payment_term:0
msgid "Customer Payment Term"
-msgstr ""
+msgstr "Betaaltermijn klant"
#. module: account
#: help:accounting.report,label_filter:0
diff --git a/addons/account/i18n/pt_BR.po b/addons/account/i18n/pt_BR.po
index ba985c5e0a8..d1816589139 100644
--- a/addons/account/i18n/pt_BR.po
+++ b/addons/account/i18n/pt_BR.po
@@ -7,15 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2012-12-22 23:17+0000\n"
-"Last-Translator: Fábio Martinelli - http://zupy.com.br "
-"\n"
+"PO-Revision-Date: 2013-04-18 17:44+0000\n"
+"Last-Translator: Thiago Tognoli \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: 2013-03-16 05:19+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-19 05:24+0000\n"
+"X-Generator: Launchpad (build 16567)\n"
#. module: account
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
@@ -431,7 +430,7 @@ msgstr "Data de criação"
#. module: account
#: selection:account.journal,type:0
msgid "Purchase Refund"
-msgstr "Devolução da Venda"
+msgstr "Devolução de Compra"
#. module: account
#: selection:account.journal,type:0
@@ -12678,13 +12677,6 @@ msgstr ""
#~ msgid "This period is already closed !"
#~ msgstr "Este período já está fechado"
-#, python-format
-#~ msgid ""
-#~ "Selected Move lines does not have any account move enties in draft state"
-#~ msgstr ""
-#~ "As linhas do movimento selecionado nao tem nenhuma conta a ser movida para o "
-#~ "estado de esboço"
-
#~ msgid "Unpaid Customer Refunds"
#~ msgstr "Reembolsos a clientes não pagos"
@@ -13232,6 +13224,13 @@ msgstr ""
#~ msgid "Can not %s draft/proforma/cancel invoice."
#~ msgstr "Não pode %s provisório/proforma/cancelar fatura."
+#, python-format
+#~ msgid ""
+#~ "Selected Move lines does not have any account move enties in draft state"
+#~ msgstr ""
+#~ "As linhas de movimento selecionadas não tem nenhum movimento nesta conta no "
+#~ "modo provisório"
+
#, python-format
#~ msgid "Can not pay draft/proforma/cancel invoice."
#~ msgstr "Não se pode pagar uma fatura provisória/proforma/cancelada"
diff --git a/addons/account/i18n/zh_CN.po b/addons/account/i18n/zh_CN.po
index ff84dd866e8..0e216ddb68f 100644
--- a/addons/account/i18n/zh_CN.po
+++ b/addons/account/i18n/zh_CN.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2013-01-30 03:58+0000\n"
-"Last-Translator: Wei \"oldrev\" Li \n"
+"PO-Revision-Date: 2013-04-25 09:04+0000\n"
+"Last-Translator: Oliver Yuan \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: 2013-03-16 05:20+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-26 05:34+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
#. module: account
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
@@ -10748,7 +10748,7 @@ msgstr "手动的发票税(非主营业务纳税)"
#: code:addons/account/account_invoice.py:550
#, python-format
msgid "The payment term of supplier does not have a payment term line."
-msgstr ""
+msgstr "供应商付款条件没有包含付款条件行"
#. module: account
#: field:account.account,parent_right:0
diff --git a/addons/account/installer.py b/addons/account/installer.py
index c00b80071b8..537371d0f64 100644
--- a/addons/account/installer.py
+++ b/addons/account/installer.py
@@ -23,10 +23,16 @@ import datetime
from dateutil.relativedelta import relativedelta
import logging
from operator import itemgetter
-from os.path import join as opj
import time
+import urllib2
+import urlparse
-from openerp import tools
+try:
+ import simplejson as json
+except ImportError:
+ import json # noqa
+
+from openerp.release import serie
from openerp.tools.translate import _
from openerp.osv import fields, osv
@@ -38,13 +44,28 @@ class account_installer(osv.osv_memory):
def _get_charts(self, cr, uid, context=None):
modules = self.pool.get('ir.module.module')
+
+ # try get the list on apps server
+ try:
+ apps_server = self.pool.get('ir.config_parameter').get_param(cr, uid, 'apps.server', 'https://apps.openerp.com')
+
+ up = urlparse.urlparse(apps_server)
+ url = '{0.scheme}://{0.netloc}/apps/charts?serie={1}'.format(up, serie)
+
+ j = urllib2.urlopen(url, timeout=3).read()
+ apps_charts = json.loads(j)
+
+ charts = dict(apps_charts)
+ except Exception:
+ charts = dict()
+
# Looking for the module with the 'Account Charts' category
category_name, category_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'module_category_localization_account_charts')
ids = modules.search(cr, uid, [('category_id', '=', category_id)], context=context)
- charts = list(
- sorted(((m.name, m.shortdesc)
- for m in modules.browse(cr, uid, ids, context=context)),
- key=itemgetter(1)))
+ if ids:
+ charts.update((m.name, m.shortdesc) for m in modules.browse(cr, uid, ids, context=context))
+
+ charts = sorted(charts.items(), key=itemgetter(1))
charts.insert(0, ('configurable', _('Custom')))
return charts
@@ -57,9 +78,9 @@ class account_installer(osv.osv_memory):
"country."),
'date_start': fields.date('Start Date', required=True),
'date_stop': fields.date('End Date', required=True),
- 'period': fields.selection([('month', 'Monthly'), ('3months','3 Monthly')], 'Periods', required=True),
+ 'period': fields.selection([('month', 'Monthly'), ('3months', '3 Monthly')], 'Periods', required=True),
'company_id': fields.many2one('res.company', 'Company', required=True),
- 'has_default_company' : fields.boolean('Has Default Company', readonly=True),
+ 'has_default_company': fields.boolean('Has Default Company', readonly=True),
}
def _default_company(self, cr, uid, context=None):
@@ -78,30 +99,29 @@ class account_installer(osv.osv_memory):
'has_default_company': _default_has_default_company,
'charts': 'configurable'
}
-
+
def get_unconfigured_cmp(self, cr, uid, context=None):
""" get the list of companies that have not been configured yet
but don't care about the demo chart of accounts """
- cmp_select = []
company_ids = self.pool.get('res.company').search(cr, uid, [], context=context)
cr.execute("SELECT company_id FROM account_account WHERE active = 't' AND account_account.parent_id IS NULL AND name != %s", ("Chart For Automated Tests",))
configured_cmp = [r[0] for r in cr.fetchall()]
return list(set(company_ids)-set(configured_cmp))
-
+
def check_unconfigured_cmp(self, cr, uid, context=None):
""" check if there are still unconfigured companies """
if not self.get_unconfigured_cmp(cr, uid, context=context):
raise osv.except_osv(_('No unconfigured company !'), _("There is currently no company without chart of account. The wizard will therefore not be executed."))
-
+
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
- if context is None:context = {}
- res = super(account_installer, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
+ if context is None: context = {}
+ res = super(account_installer, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=False)
cmp_select = []
# display in the widget selection only the companies that haven't been configured yet
unconfigured_cmp = self.get_unconfigured_cmp(cr, uid, context=context)
for field in res['fields']:
if field == 'company_id':
- res['fields'][field]['domain'] = [('id','in',unconfigured_cmp)]
+ res['fields'][field]['domain'] = [('id', 'in', unconfigured_cmp)]
res['fields'][field]['selection'] = [('', '')]
if unconfigured_cmp:
cmp_select = [(line.id, line.name) for line in self.pool.get('res.company').browse(cr, uid, unconfigured_cmp)]
@@ -117,7 +137,7 @@ class account_installer(osv.osv_memory):
def execute(self, cr, uid, ids, context=None):
self.execute_simple(cr, uid, ids, context)
- super(account_installer, self).execute(cr, uid, ids, context=context)
+ return super(account_installer, self).execute(cr, uid, ids, context=context)
def execute_simple(self, cr, uid, ids, context=None):
if context is None:
@@ -129,8 +149,8 @@ class account_installer(osv.osv_memory):
if not f_ids:
name = code = res['date_start'][:4]
if int(name) != int(res['date_stop'][:4]):
- name = res['date_start'][:4] +'-'+ res['date_stop'][:4]
- code = res['date_start'][2:4] +'-'+ res['date_stop'][2:4]
+ name = res['date_start'][:4] + '-' + res['date_stop'][:4]
+ code = res['date_start'][2:4] + '-' + res['date_stop'][2:4]
vals = {
'name': name,
'code': code,
@@ -150,8 +170,7 @@ class account_installer(osv.osv_memory):
chart = self.read(cr, uid, ids, ['charts'],
context=context)[0]['charts']
_logger.debug('Installing chart of accounts %s', chart)
- return modules | set([chart])
+ return (modules | set([chart])) - set(['has_default_company', 'configurable'])
-account_installer()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/ir_sequence.py b/addons/account/ir_sequence.py
index 56e1a4d0367..d3615a847b7 100644
--- a/addons/account/ir_sequence.py
+++ b/addons/account/ir_sequence.py
@@ -38,7 +38,6 @@ class ir_sequence_fiscalyear(osv.osv):
'Main Sequence must be different from current !'),
]
-ir_sequence_fiscalyear()
class ir_sequence(osv.osv):
_inherit = 'ir.sequence'
@@ -56,6 +55,5 @@ class ir_sequence(osv.osv):
return super(ir_sequence, self)._next(cr, uid, [line.sequence_id.id], context)
return super(ir_sequence, self)._next(cr, uid, seq_ids, context)
-ir_sequence()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/partner.py b/addons/account/partner.py
index ae8d2fc1871..f582da6b765 100644
--- a/addons/account/partner.py
+++ b/addons/account/partner.py
@@ -66,7 +66,6 @@ class account_fiscal_position(osv.osv):
break
return account_id
-account_fiscal_position()
class account_fiscal_position_tax(osv.osv):
_name = 'account.fiscal.position.tax'
@@ -84,7 +83,6 @@ class account_fiscal_position_tax(osv.osv):
'A tax fiscal position could be defined only once time on same taxes.')
]
-account_fiscal_position_tax()
class account_fiscal_position_account(osv.osv):
_name = 'account.fiscal.position.account'
@@ -102,7 +100,6 @@ class account_fiscal_position_account(osv.osv):
'An account fiscal position could be defined only once time on same accounts.')
]
-account_fiscal_position_account()
class res_partner(osv.osv):
_name = 'res.partner'
@@ -236,6 +233,10 @@ class res_partner(osv.osv):
'last_reconciliation_date': fields.datetime('Latest Full Reconciliation Date', help='Date on which the partner accounting entries were fully reconciled last time. It differs from the last date where a reconciliation has been made for this partner, as here we depict the fact that nothing more was to be reconciled at this date. This can be achieved in 2 different ways: either the last unreconciled debit/credit entry of this partner was reconciled, either the user pressed the button "Nothing more to reconcile" during the manual reconciliation process.')
}
-res_partner()
+ def _commercial_fields(self, cr, uid, context=None):
+ return super(res_partner, self)._commercial_fields(cr, uid, context=context) + \
+ ['debit_limit', 'property_account_payable', 'property_account_receivable', 'property_account_position',
+ 'property_payment_term', 'property_supplier_payment_term', 'last_reconciliation_date']
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/partner_view.xml b/addons/account/partner_view.xml
index 1267e20165b..b6fae3140b5 100644
--- a/addons/account/partner_view.xml
+++ b/addons/account/partner_view.xml
@@ -50,6 +50,29 @@
+
+ {'search_default_partner_id': [active_id], 'default_partner_id': active_id}
+ Contracts/Analytic Accounts
+ account.analytic.account
+ tree,form
+
+
+ partner.view.buttons
+ res.partner
+
+
+
+
+
+
+
+
+
+
+
Fiscal Positionsaccount.fiscal.position
@@ -73,7 +96,7 @@
-
+
@@ -103,20 +126,13 @@
+
+
+
Accounting-related settings are managed on
+
+
-
-
-
-
-
diff --git a/addons/account/product.py b/addons/account/product.py
index ce1ac83d6dd..3df3ad9bd17 100644
--- a/addons/account/product.py
+++ b/addons/account/product.py
@@ -39,7 +39,6 @@ class product_category(osv.osv):
view_load=True,
help="This account will be used for invoices to value expenses."),
}
-product_category()
#----------------------------------------------------------
# Products
@@ -70,6 +69,5 @@ class product_template(osv.osv):
help="This account will be used for invoices instead of the default one to value expenses for the current product."),
}
-product_template()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/project.py b/addons/account/project/project.py
index f4927331ca8..b4dcdde2d30 100644
--- a/addons/account/project/project.py
+++ b/addons/account/project/project.py
@@ -38,7 +38,6 @@ class account_analytic_journal(osv.osv):
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
-account_analytic_journal()
class account_journal(osv.osv):
_inherit="account.journal"
@@ -47,6 +46,5 @@ class account_journal(osv.osv):
'analytic_journal_id':fields.many2one('account.analytic.journal','Analytic Journal', help="Journal for analytic entries"),
}
-account_journal()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml
index aa567d2fc79..79a1e76c7e7 100644
--- a/addons/account/project/project_view.xml
+++ b/addons/account/project/project_view.xml
@@ -31,7 +31,7 @@
-
+
diff --git a/addons/account/project/wizard/account_analytic_balance_report.py b/addons/account/project/wizard/account_analytic_balance_report.py
index 81d6c192962..02b2eb6e95d 100644
--- a/addons/account/project/wizard/account_analytic_balance_report.py
+++ b/addons/account/project/wizard/account_analytic_balance_report.py
@@ -52,7 +52,6 @@ class account_analytic_balance(osv.osv_memory):
'datas': datas,
}
-account_analytic_balance()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/account_analytic_chart.py b/addons/account/project/wizard/account_analytic_chart.py
index 01c606d5f08..4a26eec7c95 100644
--- a/addons/account/project/wizard/account_analytic_chart.py
+++ b/addons/account/project/wizard/account_analytic_chart.py
@@ -46,5 +46,4 @@ class account_analytic_chart(osv.osv_memory):
result['context'] = str(result_context)
return result
-account_analytic_chart()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/account_analytic_cost_ledger_for_journal_report.py b/addons/account/project/wizard/account_analytic_cost_ledger_for_journal_report.py
index fdb8eafb402..814cbb8cacc 100644
--- a/addons/account/project/wizard/account_analytic_cost_ledger_for_journal_report.py
+++ b/addons/account/project/wizard/account_analytic_cost_ledger_for_journal_report.py
@@ -52,5 +52,4 @@ class account_analytic_cost_ledger_journal_report(osv.osv_memory):
'datas': datas,
}
-account_analytic_cost_ledger_journal_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/account_analytic_cost_ledger_report.py b/addons/account/project/wizard/account_analytic_cost_ledger_report.py
index 1c74c61e31f..ffd56352382 100644
--- a/addons/account/project/wizard/account_analytic_cost_ledger_report.py
+++ b/addons/account/project/wizard/account_analytic_cost_ledger_report.py
@@ -52,5 +52,4 @@ class account_analytic_cost_ledger(osv.osv_memory):
'datas': datas,
}
-account_analytic_cost_ledger()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/account_analytic_inverted_balance_report.py b/addons/account/project/wizard/account_analytic_inverted_balance_report.py
index 10f97baf755..9e54f4f848d 100644
--- a/addons/account/project/wizard/account_analytic_inverted_balance_report.py
+++ b/addons/account/project/wizard/account_analytic_inverted_balance_report.py
@@ -51,5 +51,4 @@ class account_analytic_inverted_balance(osv.osv_memory):
'datas': datas,
}
-account_analytic_inverted_balance()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/account_analytic_journal_report.py b/addons/account/project/wizard/account_analytic_journal_report.py
index e70649cd406..61fe2cd318a 100644
--- a/addons/account/project/wizard/account_analytic_journal_report.py
+++ b/addons/account/project/wizard/account_analytic_journal_report.py
@@ -71,5 +71,4 @@ class account_analytic_journal_report(osv.osv_memory):
res.update({'analytic_account_journal_id': journal_ids})
return res
-account_analytic_journal_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/project_account_analytic_line.py b/addons/account/project/wizard/project_account_analytic_line.py
index c5a496527c1..40777f73e7d 100644
--- a/addons/account/project/wizard/project_account_analytic_line.py
+++ b/addons/account/project/wizard/project_account_analytic_line.py
@@ -53,6 +53,5 @@ class project_account_analytic_line(osv.osv_memory):
'search_view_id': id['res_id'],
}
-project_account_analytic_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_analytic_entries_report.py b/addons/account/report/account_analytic_entries_report.py
index dad0dedc9fc..f7d1177e3b0 100644
--- a/addons/account/report/account_analytic_entries_report.py
+++ b/addons/account/report/account_analytic_entries_report.py
@@ -81,6 +81,5 @@ class analytic_entries_report(osv.osv):
a.move_id,a.product_id,a.product_uom_id
)
""")
-analytic_entries_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_entries_report.py b/addons/account/report/account_entries_report.py
index d53e6153981..6060d97c182 100644
--- a/addons/account/report/account_entries_report.py
+++ b/addons/account/report/account_entries_report.py
@@ -81,7 +81,7 @@ class account_entries_report(osv.osv):
period_obj = self.pool.get('account.period')
for arg in args:
if arg[0] == 'period_id' and arg[2] == 'current_period':
- current_period = period_obj.find(cr, uid)[0]
+ current_period = period_obj.find(cr, uid, context=context)[0]
args.append(['period_id','in',[current_period]])
break
elif arg[0] == 'period_id' and arg[2] == 'current_year':
@@ -100,7 +100,7 @@ class account_entries_report(osv.osv):
fiscalyear_obj = self.pool.get('account.fiscalyear')
period_obj = self.pool.get('account.period')
if context.get('period', False) == 'current_period':
- current_period = period_obj.find(cr, uid)[0]
+ current_period = period_obj.find(cr, uid, context=context)[0]
domain.append(['period_id','in',[current_period]])
elif context.get('year', False) == 'current_year':
current_year = fiscalyear_obj.find(cr, uid)
@@ -152,6 +152,5 @@ class account_entries_report(osv.osv):
where l.state != 'draft'
)
""")
-account_entries_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_invoice_report.py b/addons/account/report/account_invoice_report.py
index af6ae1eede7..799b9b1c9fb 100644
--- a/addons/account/report/account_invoice_report.py
+++ b/addons/account/report/account_invoice_report.py
@@ -70,6 +70,7 @@ class account_invoice_report(osv.osv):
'categ_id': fields.many2one('product.category','Category of Product', readonly=True),
'journal_id': fields.many2one('account.journal', 'Journal', readonly=True),
'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
+ 'commercial_partner_id': fields.many2one('res.partner', 'Partner Company', help="Commercial Entity"),
'company_id': fields.many2one('res.company', 'Company', readonly=True),
'user_id': fields.many2one('res.users', 'Salesperson', readonly=True),
'price_total': fields.float('Total Without Tax', readonly=True),
@@ -108,7 +109,7 @@ class account_invoice_report(osv.osv):
sub.fiscal_position, sub.user_id, sub.company_id, sub.nbr, sub.type, sub.state,
sub.categ_id, sub.date_due, sub.account_id, sub.account_line_id, sub.partner_bank_id,
sub.product_qty, sub.price_total / cr.rate as price_total, sub.price_average /cr.rate as price_average,
- cr.rate as currency_rate, sub.residual / cr.rate as residual
+ cr.rate as currency_rate, sub.residual / cr.rate as residual, sub.commercial_partner_id as commercial_partner_id
"""
return select_str
@@ -170,7 +171,8 @@ class account_invoice_report(osv.osv):
LEFT JOIN account_invoice a ON a.id = l.invoice_id
WHERE a.id = ai.id)
ELSE 1::bigint
- END::numeric AS residual
+ END::numeric AS residual,
+ ai.commercial_partner_id as commercial_partner_id
"""
return select_str
@@ -193,7 +195,7 @@ class account_invoice_report(osv.osv):
ai.partner_id, ai.payment_term, ai.period_id, u.name, ai.currency_id, ai.journal_id,
ai.fiscal_position, ai.user_id, ai.company_id, ai.type, ai.state, pt.categ_id,
ai.date_due, ai.account_id, ail.account_id, ai.partner_bank_id, ai.residual,
- ai.amount_total, u.uom_type, u.category_id
+ ai.amount_total, u.uom_type, u.category_id, ai.commercial_partner_id
"""
return group_by_str
@@ -210,13 +212,12 @@ class account_invoice_report(osv.osv):
cr.id IN (SELECT id
FROM res_currency_rate cr2
WHERE (cr2.currency_id = sub.currency_id)
- AND ((sub.date IS NOT NULL AND cr.name <= sub.date)
- OR (sub.date IS NULL AND cr.name <= NOW()))
+ AND ((sub.date IS NOT NULL AND cr2.name <= sub.date)
+ OR (sub.date IS NULL AND cr2.name <= NOW()))
ORDER BY name DESC LIMIT 1)
)""" % (
self._table,
self._select(), self._sub_select(), self._from(), self._group_by()))
-account_invoice_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_invoice_report_view.xml b/addons/account/report/account_invoice_report_view.xml
index dad70f695dc..96dc948b09a 100644
--- a/addons/account/report/account_invoice_report_view.xml
+++ b/addons/account/report/account_invoice_report_view.xml
@@ -14,6 +14,7 @@
+
@@ -65,7 +66,8 @@
-
+
+
diff --git a/addons/account/report/account_print_invoice.rml b/addons/account/report/account_print_invoice.rml
index 4ffa7a33f9d..9268c94d4c7 100644
--- a/addons/account/report/account_print_invoice.rml
+++ b/addons/account/report/account_print_invoice.rml
@@ -168,7 +168,7 @@
Tel. : [[ (o.partner_id.phone) or removeParentNode('para') ]]Fax : [[ (o.partner_id.fax) or removeParentNode('para') ]]
- VAT : [[ (o.partner_id.vat) or removeParentNode('para') ]]
+ TIN : [[ (o.partner_id.vat) or removeParentNode('para') ]]
diff --git a/addons/account/report/account_report.py b/addons/account/report/account_report.py
index 11a6374b24e..60b994dad07 100644
--- a/addons/account/report/account_report.py
+++ b/addons/account/report/account_report.py
@@ -66,7 +66,6 @@ class report_account_receivable(osv.osv):
group by
to_char(date,'YYYY:IW'), a.type
)""")
-report_account_receivable()
#a.type in ('receivable','payable')
class temp_range(osv.osv):
@@ -77,7 +76,6 @@ class temp_range(osv.osv):
'name': fields.char('Range',size=64)
}
-temp_range()
class report_aged_receivable(osv.osv):
_name = "report.aged.receivable"
@@ -147,7 +145,6 @@ class report_aged_receivable(osv.osv):
select id,name from temp_range
)""")
-report_aged_receivable()
class report_invoice_created(osv.osv):
_name = "report.invoice.created"
@@ -200,7 +197,6 @@ class report_invoice_created(osv.osv):
AND
(to_date(to_char(inv.create_date, 'YYYY-MM-dd'),'YYYY-MM-dd') > (CURRENT_DATE-15))
)""")
-report_invoice_created()
class report_account_type_sales(osv.osv):
_name = "report.account_type.sales"
@@ -241,7 +237,6 @@ class report_account_type_sales(osv.osv):
group by
to_char(inv.date_invoice, 'YYYY'),to_char(inv.date_invoice,'MM'),inv.currency_id, inv.period_id, inv_line.product_id, account.user_type
)""")
-report_account_type_sales()
class report_account_sales(osv.osv):
@@ -283,6 +278,5 @@ class report_account_sales(osv.osv):
group by
to_char(inv.date_invoice, 'YYYY'),to_char(inv.date_invoice,'MM'),inv.currency_id, inv.period_id, inv_line.product_id, account.id
)""")
-report_account_sales()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_treasury_report.py b/addons/account/report/account_treasury_report.py
index 1ee411708c7..f7785d0827b 100644
--- a/addons/account/report/account_treasury_report.py
+++ b/addons/account/report/account_treasury_report.py
@@ -78,6 +78,5 @@ class account_treasury_report(osv.osv):
group by p.id, p.fiscalyear_id, p.date_start, am.company_id
)
""")
-account_treasury_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/res_currency.py b/addons/account/res_currency.py
index 9564b4e57c6..a7d3e5bc345 100644
--- a/addons/account/res_currency.py
+++ b/addons/account/res_currency.py
@@ -43,6 +43,5 @@ class res_currency_account(osv.osv):
rate = float(tot2)/float(tot1)
return rate
-res_currency_account()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/static/src/js/account_move_reconciliation.js b/addons/account/static/src/js/account_move_reconciliation.js
index dbbfe3cc069..cbc0abc4f4d 100644
--- a/addons/account/static/src/js/account_move_reconciliation.js
+++ b/addons/account/static/src/js/account_move_reconciliation.js
@@ -26,7 +26,7 @@ openerp.account = function (instance) {
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.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() {
diff --git a/addons/account/wizard/account_automatic_reconcile.py b/addons/account/wizard/account_automatic_reconcile.py
index 88d31b5b6c5..f6f0c90b1e2 100644
--- a/addons/account/wizard/account_automatic_reconcile.py
+++ b/addons/account/wizard/account_automatic_reconcile.py
@@ -246,6 +246,5 @@ class account_automatic_reconcile(osv.osv_memory):
'context': context,
}
-account_automatic_reconcile()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_change_currency.py b/addons/account/wizard/account_change_currency.py
index 73fd52b3fcb..c3726ece676 100644
--- a/addons/account/wizard/account_change_currency.py
+++ b/addons/account/wizard/account_change_currency.py
@@ -73,6 +73,5 @@ class account_change_currency(osv.osv_memory):
obj_inv.write(cr, uid, [invoice.id], {'currency_id': new_currency}, context=context)
return {'type': 'ir.actions.act_window_close'}
-account_change_currency()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_chart.py b/addons/account/wizard/account_chart.py
index 32b83a0a670..38df2f7484d 100644
--- a/addons/account/wizard/account_chart.py
+++ b/addons/account/wizard/account_chart.py
@@ -105,6 +105,5 @@ class account_chart(osv.osv_memory):
'fiscalyear': _get_fiscalyear,
}
-account_chart()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_financial_report.py b/addons/account/wizard/account_financial_report.py
index dde07eb7034..2ce7118335a 100644
--- a/addons/account/wizard/account_financial_report.py
+++ b/addons/account/wizard/account_financial_report.py
@@ -93,6 +93,5 @@ class accounting_report(osv.osv_memory):
'datas': data,
}
-accounting_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_fiscalyear_close.py b/addons/account/wizard/account_fiscalyear_close.py
index d4f7b3e6654..6ceb833816b 100644
--- a/addons/account/wizard/account_fiscalyear_close.py
+++ b/addons/account/wizard/account_fiscalyear_close.py
@@ -278,6 +278,5 @@ class account_fiscalyear_close(osv.osv_memory):
return {'type': 'ir.actions.act_window_close'}
-account_fiscalyear_close()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_fiscalyear_close_state.py b/addons/account/wizard/account_fiscalyear_close_state.py
index 746f1c47976..ed84ab65184 100644
--- a/addons/account/wizard/account_fiscalyear_close_state.py
+++ b/addons/account/wizard/account_fiscalyear_close_state.py
@@ -56,6 +56,5 @@ class account_fiscalyear_close_state(osv.osv_memory):
return {'type': 'ir.actions.act_window_close'}
-account_fiscalyear_close_state()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_invoice_refund.py b/addons/account/wizard/account_invoice_refund.py
index df4ad3494d2..5be9ebc5c80 100644
--- a/addons/account/wizard/account_invoice_refund.py
+++ b/addons/account/wizard/account_invoice_refund.py
@@ -181,9 +181,9 @@ class account_invoice_refund(osv.osv_memory):
invoice = invoice[0]
del invoice['id']
invoice_lines = inv_line_obj.browse(cr, uid, invoice['invoice_line'], context=context)
- invoice_lines = inv_obj._refund_cleanup_lines(cr, uid, invoice_lines)
+ invoice_lines = inv_obj._refund_cleanup_lines(cr, uid, invoice_lines, context=context)
tax_lines = inv_tax_obj.browse(cr, uid, invoice['tax_line'], context=context)
- tax_lines = inv_obj._refund_cleanup_lines(cr, uid, tax_lines)
+ tax_lines = inv_obj._refund_cleanup_lines(cr, uid, tax_lines, context=context)
invoice.update({
'type': inv.type,
'date_invoice': date,
@@ -220,6 +220,5 @@ class account_invoice_refund(osv.osv_memory):
return self.compute_refund(cr, uid, ids, data_refund, context=context)
-account_invoice_refund()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_invoice_state.py b/addons/account/wizard/account_invoice_state.py
index 70d2984cef0..1aed2c6c477 100644
--- a/addons/account/wizard/account_invoice_state.py
+++ b/addons/account/wizard/account_invoice_state.py
@@ -42,7 +42,6 @@ class account_invoice_confirm(osv.osv_memory):
return {'type': 'ir.actions.act_window_close'}
-account_invoice_confirm()
class account_invoice_cancel(osv.osv_memory):
"""
@@ -64,6 +63,5 @@ class account_invoice_cancel(osv.osv_memory):
account_invoice_obj.signal_invoice_cancel(cr , uid, [record['id']])
return {'type': 'ir.actions.act_window_close'}
-account_invoice_cancel()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_journal_select.py b/addons/account/wizard/account_journal_select.py
index 7edd7923f4c..a4a1d4a6a9f 100644
--- a/addons/account/wizard/account_journal_select.py
+++ b/addons/account/wizard/account_journal_select.py
@@ -45,6 +45,5 @@ class account_journal_select(osv.osv_memory):
result['context'] = str({'journal_id': journal_id, 'period_id': period_id})
return result
-account_journal_select()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_move_bank_reconcile.py b/addons/account/wizard/account_move_bank_reconcile.py
index 283068ae693..0fb4633163b 100644
--- a/addons/account/wizard/account_move_bank_reconcile.py
+++ b/addons/account/wizard/account_move_bank_reconcile.py
@@ -59,6 +59,5 @@ the bank account\nin the journal definition for reconciliation.'))
'type': 'ir.actions.act_window'
}
-account_move_bank_reconcile()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_move_line_reconcile_select.py b/addons/account/wizard/account_move_line_reconcile_select.py
index 76af8538e05..658a6c5d503 100644
--- a/addons/account/wizard/account_move_line_reconcile_select.py
+++ b/addons/account/wizard/account_move_line_reconcile_select.py
@@ -50,6 +50,5 @@ class account_move_line_reconcile_select(osv.osv_memory):
'type': 'ir.actions.act_window'
}
-account_move_line_reconcile_select()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_move_line_select.py b/addons/account/wizard/account_move_line_select.py
index b56621f2114..630db9fd1d6 100644
--- a/addons/account/wizard/account_move_line_select.py
+++ b/addons/account/wizard/account_move_line_select.py
@@ -67,6 +67,5 @@ class account_move_line_select(osv.osv_memory):
result['domain']=result['domain'][0:-1]+','+domain+result['domain'][-1]
return result
-account_move_line_select()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_move_line_unreconcile_select.py b/addons/account/wizard/account_move_line_unreconcile_select.py
index f9009fc8199..31fbeddeea8 100644
--- a/addons/account/wizard/account_move_line_unreconcile_select.py
+++ b/addons/account/wizard/account_move_line_unreconcile_select.py
@@ -39,6 +39,5 @@ class account_move_line_unreconcile_select(osv.osv_memory):
'type': 'ir.actions.act_window'
}
-account_move_line_unreconcile_select()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_open_closed_fiscalyear.py b/addons/account/wizard/account_open_closed_fiscalyear.py
index 3b5d956d381..f4e90ae9f2f 100644
--- a/addons/account/wizard/account_open_closed_fiscalyear.py
+++ b/addons/account/wizard/account_open_closed_fiscalyear.py
@@ -43,6 +43,5 @@ class account_open_closed_fiscalyear(osv.osv_memory):
cr.execute('delete from account_move where id IN %s', (tuple(ids_move),))
return {'type': 'ir.actions.act_window_close'}
-account_open_closed_fiscalyear()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_period_close.py b/addons/account/wizard/account_period_close.py
index fad757c0ff9..a50861c65ef 100644
--- a/addons/account/wizard/account_period_close.py
+++ b/addons/account/wizard/account_period_close.py
@@ -55,6 +55,5 @@ class account_period_close(osv.osv_memory):
return {'type': 'ir.actions.act_window_close'}
-account_period_close()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_reconcile.py b/addons/account/wizard/account_reconcile.py
index 81609249fd7..0d5a3525af4 100644
--- a/addons/account/wizard/account_reconcile.py
+++ b/addons/account/wizard/account_reconcile.py
@@ -91,7 +91,6 @@ class account_move_line_reconcile(osv.osv_memory):
period_id, journal_id, context=context)
return {'type': 'ir.actions.act_window_close'}
-account_move_line_reconcile()
class account_move_line_reconcile_writeoff(osv.osv_memory):
"""
@@ -149,7 +148,6 @@ class account_move_line_reconcile_writeoff(osv.osv_memory):
context['analytic_id'] = data['analytic_id'][0]
if context['date_p']:
date = context['date_p']
-
ids = period_obj.find(cr, uid, dt=date, context=context)
if ids:
period_id = ids[0]
@@ -158,6 +156,5 @@ class account_move_line_reconcile_writeoff(osv.osv_memory):
period_id, journal_id, context=context)
return {'type': 'ir.actions.act_window_close'}
-account_move_line_reconcile_writeoff()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_reconcile_partner_process.py b/addons/account/wizard/account_reconcile_partner_process.py
index 1c317111888..bcbdb3fb5db 100644
--- a/addons/account/wizard/account_reconcile_partner_process.py
+++ b/addons/account/wizard/account_reconcile_partner_process.py
@@ -98,6 +98,5 @@ class account_partner_reconcile_process(osv.osv_memory):
'next_partner_id': _get_partner,
}
-account_partner_reconcile_process()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_account_balance.py b/addons/account/wizard/account_report_account_balance.py
index e883a59c102..fd3c966e306 100644
--- a/addons/account/wizard/account_report_account_balance.py
+++ b/addons/account/wizard/account_report_account_balance.py
@@ -38,6 +38,5 @@ class account_balance_report(osv.osv_memory):
data = self.pre_print_report(cr, uid, ids, data, context=context)
return {'type': 'ir.actions.report.xml', 'report_name': 'account.account.balance', 'datas': data}
-account_balance_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_aged_partner_balance.py b/addons/account/wizard/account_report_aged_partner_balance.py
index 1054e7fa285..c483487b78f 100644
--- a/addons/account/wizard/account_report_aged_partner_balance.py
+++ b/addons/account/wizard/account_report_aged_partner_balance.py
@@ -86,6 +86,5 @@ class account_aged_trial_balance(osv.osv_memory):
'datas': data
}
-account_aged_trial_balance()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_central_journal.py b/addons/account/wizard/account_report_central_journal.py
index da8be6d4735..a6bc111fa35 100644
--- a/addons/account/wizard/account_report_central_journal.py
+++ b/addons/account/wizard/account_report_central_journal.py
@@ -38,7 +38,6 @@ class account_central_journal(osv.osv_memory):
'datas': data,
}
-account_central_journal()
#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_common.py b/addons/account/wizard/account_report_common.py
index 52a35327845..c457140684a 100644
--- a/addons/account/wizard/account_report_common.py
+++ b/addons/account/wizard/account_report_common.py
@@ -178,6 +178,5 @@ class account_common_report(osv.osv_memory):
data['form']['used_context'] = used_context
return self._print_report(cr, uid, ids, data, context=context)
-account_common_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_common_account.py b/addons/account/wizard/account_report_common_account.py
index 7cedf427386..13b83c32958 100644
--- a/addons/account/wizard/account_report_common_account.py
+++ b/addons/account/wizard/account_report_common_account.py
@@ -41,7 +41,6 @@ class account_common_account_report(osv.osv_memory):
data['form'].update(self.read(cr, uid, ids, ['display_account'], context=context)[0])
return data
-account_common_account_report()
#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_common_journal.py b/addons/account/wizard/account_report_common_journal.py
index 609c2840ca6..a03315ecf7c 100644
--- a/addons/account/wizard/account_report_common_journal.py
+++ b/addons/account/wizard/account_report_common_journal.py
@@ -50,6 +50,5 @@ class account_common_journal_report(osv.osv_memory):
data['form']['active_ids'] = self.pool.get('account.journal.period').search(cr, uid, [('journal_id', 'in', data['form']['journal_ids']), ('period_id', 'in', period_list)], context=context)
return data
-account_common_journal_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_common_partner.py b/addons/account/wizard/account_report_common_partner.py
index 9779005b0de..d50a54ef32c 100644
--- a/addons/account/wizard/account_report_common_partner.py
+++ b/addons/account/wizard/account_report_common_partner.py
@@ -42,7 +42,6 @@ class account_common_partner_report(osv.osv_memory):
data['form'].update(self.read(cr, uid, ids, ['result_selection'], context=context)[0])
return data
-account_common_partner_report()
#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_general_journal.py b/addons/account/wizard/account_report_general_journal.py
index 4a170a84db1..e5e516b1f38 100644
--- a/addons/account/wizard/account_report_general_journal.py
+++ b/addons/account/wizard/account_report_general_journal.py
@@ -34,7 +34,6 @@ class account_general_journal(osv.osv_memory):
data = self.pre_print_report(cr, uid, ids, data, context=context)
return {'type': 'ir.actions.report.xml', 'report_name': 'account.general.journal', 'datas': data}
-account_general_journal()
#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_general_ledger.py b/addons/account/wizard/account_report_general_ledger.py
index a10ff624fee..fae60df63fb 100644
--- a/addons/account/wizard/account_report_general_ledger.py
+++ b/addons/account/wizard/account_report_general_ledger.py
@@ -58,6 +58,5 @@ class account_report_general_ledger(osv.osv_memory):
return { 'type': 'ir.actions.report.xml', 'report_name': 'account.general.ledger_landscape', 'datas': data}
return { 'type': 'ir.actions.report.xml', 'report_name': 'account.general.ledger', 'datas': data}
-account_report_general_ledger()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_partner_balance.py b/addons/account/wizard/account_report_partner_balance.py
index 33a7a42072c..fbe18f27d69 100644
--- a/addons/account/wizard/account_report_partner_balance.py
+++ b/addons/account/wizard/account_report_partner_balance.py
@@ -50,6 +50,5 @@ class account_partner_balance(osv.osv_memory):
'datas': data,
}
-account_partner_balance()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_partner_ledger.py b/addons/account/wizard/account_report_partner_ledger.py
index d1e6dd9809e..fdabe49ff17 100644
--- a/addons/account/wizard/account_report_partner_ledger.py
+++ b/addons/account/wizard/account_report_partner_ledger.py
@@ -67,6 +67,5 @@ class account_partner_ledger(osv.osv_memory):
'datas': data,
}
-account_partner_ledger()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_print_journal.py b/addons/account/wizard/account_report_print_journal.py
index b91fe04660a..3ad45268248 100644
--- a/addons/account/wizard/account_report_print_journal.py
+++ b/addons/account/wizard/account_report_print_journal.py
@@ -72,7 +72,6 @@ class account_print_journal(osv.osv_memory):
report_name = 'account.journal.period.print'
return {'type': 'ir.actions.report.xml', 'report_name': report_name, 'datas': data}
-account_print_journal()
#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_state_open.py b/addons/account/wizard/account_state_open.py
index 1351b8f0ac1..1950a139983 100644
--- a/addons/account/wizard/account_state_open.py
+++ b/addons/account/wizard/account_state_open.py
@@ -37,6 +37,5 @@ class account_state_open(osv.osv_memory):
obj_invoice.signal_open_test(cr, uid, context['active_ids'][0])
return {'type': 'ir.actions.act_window_close'}
-account_state_open()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_subscription_generate.py b/addons/account/wizard/account_subscription_generate.py
index f5babc4fd87..a61f3eee252 100644
--- a/addons/account/wizard/account_subscription_generate.py
+++ b/addons/account/wizard/account_subscription_generate.py
@@ -48,6 +48,5 @@ class account_subscription_generate(osv.osv_memory):
result['domain'] = str([('id','in',moves_created)])
return result
-account_subscription_generate()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_tax_chart.py b/addons/account/wizard/account_tax_chart.py
index 84859e2077c..3283d2ba6d1 100644
--- a/addons/account/wizard/account_tax_chart.py
+++ b/addons/account/wizard/account_tax_chart.py
@@ -38,7 +38,7 @@ class account_tax_chart(osv.osv_memory):
def _get_period(self, cr, uid, context=None):
"""Return default period value"""
- period_ids = self.pool.get('account.period').find(cr, uid)
+ period_ids = self.pool.get('account.period').find(cr, uid, context=context)
return period_ids and period_ids[0] or False
def account_tax_chart_open_window(self, cr, uid, ids, context=None):
@@ -73,6 +73,5 @@ class account_tax_chart(osv.osv_memory):
'target_move': 'posted'
}
-account_tax_chart()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_unreconcile.py b/addons/account/wizard/account_unreconcile.py
index ff592a329c7..425e549fec2 100644
--- a/addons/account/wizard/account_unreconcile.py
+++ b/addons/account/wizard/account_unreconcile.py
@@ -33,7 +33,6 @@ class account_unreconcile(osv.osv_memory):
obj_move_line._remove_move_reconcile(cr, uid, context['active_ids'], context=context)
return {'type': 'ir.actions.act_window_close'}
-account_unreconcile()
class account_unreconcile_reconcile(osv.osv_memory):
_name = "account.unreconcile.reconcile"
@@ -48,6 +47,5 @@ class account_unreconcile_reconcile(osv.osv_memory):
obj_move_reconcile.unlink(cr, uid, rec_ids, context=context)
return {'type': 'ir.actions.act_window_close'}
-account_unreconcile_reconcile()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_use_model.py b/addons/account/wizard/account_use_model.py
index 795284c8fef..06f02719065 100644
--- a/addons/account/wizard/account_use_model.py
+++ b/addons/account/wizard/account_use_model.py
@@ -71,6 +71,5 @@ class account_use_model(osv.osv_memory):
'type': 'ir.actions.act_window',
}
-account_use_model()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_validate_account_move.py b/addons/account/wizard/account_validate_account_move.py
index faf7f8e2ccd..324248284f1 100644
--- a/addons/account/wizard/account_validate_account_move.py
+++ b/addons/account/wizard/account_validate_account_move.py
@@ -40,7 +40,6 @@ class validate_account_move(osv.osv_memory):
obj_move.button_validate(cr, uid, ids_move, context=context)
return {'type': 'ir.actions.act_window_close'}
-validate_account_move()
class validate_account_move_lines(osv.osv_memory):
_name = "validate.account.move.lines"
@@ -61,7 +60,6 @@ class validate_account_move_lines(osv.osv_memory):
raise osv.except_osv(_('Warning!'), _('Selected Entry Lines does not have any account move enties in draft state.'))
obj_move.button_validate(cr, uid, move_ids, context)
return {'type': 'ir.actions.act_window_close'}
-validate_account_move_lines()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_vat.py b/addons/account/wizard/account_vat.py
index a60a7906e28..37bf4b029a6 100644
--- a/addons/account/wizard/account_vat.py
+++ b/addons/account/wizard/account_vat.py
@@ -59,6 +59,5 @@ class account_vat_declaration(osv.osv_memory):
'datas': datas,
}
-account_vat_declaration()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/pos_box.py b/addons/account/wizard/pos_box.py
index 49178dfd3ea..874a8e3b7c9 100644
--- a/addons/account/wizard/pos_box.py
+++ b/addons/account/wizard/pos_box.py
@@ -21,7 +21,7 @@ class CashBox(osv.osv_memory):
active_model = context.get('active_model', False) or False
active_ids = context.get('active_ids', []) or []
- records = self.pool.get(active_model).browse(cr, uid, active_ids, context=context)
+ records = self.pool[active_model].browse(cr, uid, active_ids, context=context)
return self._run(cr, uid, ids, records, context=None)
@@ -63,11 +63,12 @@ class CashBoxIn(CashBox):
'name' : box.name,
}
-CashBoxIn()
class CashBoxOut(CashBox):
_name = 'cash.box.out'
+ _columns = CashBox._columns.copy()
+
def _compute_values_for_statement_line(self, cr, uid, box, record, context=None):
amount = box.amount or 0.0
return {
@@ -78,4 +79,3 @@ class CashBoxOut(CashBox):
'name' : box.name,
}
-CashBoxOut()
diff --git a/addons/account_analytic_analysis/account_analytic_analysis.py b/addons/account_analytic_analysis/account_analytic_analysis.py
index 0a56c80766b..33ab3be209c 100644
--- a/addons/account_analytic_analysis/account_analytic_analysis.py
+++ b/addons/account_analytic_analysis/account_analytic_analysis.py
@@ -352,11 +352,10 @@ class account_analytic_account(osv.osv):
res[account.id] = 0.0
sale_ids = sale_obj.search(cr, uid, [('project_id','=', account.id), ('state', '=', 'manual')], context=context)
for sale in sale_obj.browse(cr, uid, sale_ids, context=context):
- if not sale.invoiced:
- res[account.id] += sale.amount_untaxed
- for invoice in sale.invoice_ids:
- if invoice.state not in ('draft', 'cancel'):
- res[account.id] -= invoice.amount_untaxed
+ res[account.id] += sale.amount_untaxed
+ for invoice in sale.invoice_ids:
+ if invoice.state != 'cancel':
+ res[account.id] -= invoice.amount_untaxed
return res
def _timesheet_ca_invoiced_calc(self, cr, uid, ids, name, arg, context=None):
diff --git a/addons/account_analytic_analysis/account_analytic_analysis_view.xml b/addons/account_analytic_analysis/account_analytic_analysis_view.xml
index 6f670b2c6b9..d31746e7e70 100644
--- a/addons/account_analytic_analysis/account_analytic_analysis_view.xml
+++ b/addons/account_analytic_analysis/account_analytic_analysis_view.xml
@@ -213,7 +213,7 @@
-
+
@@ -267,7 +267,7 @@
-
+
diff --git a/addons/account_analytic_default/account_analytic_default.py b/addons/account_analytic_default/account_analytic_default.py
index 9d7df0aa010..1696874f0f5 100644
--- a/addons/account_analytic_default/account_analytic_default.py
+++ b/addons/account_analytic_default/account_analytic_default.py
@@ -67,7 +67,6 @@ class account_analytic_default(osv.osv):
best_index = index
return res
-account_analytic_default()
class account_invoice_line(osv.osv):
_inherit = "account.invoice.line"
@@ -82,7 +81,6 @@ class account_invoice_line(osv.osv):
res_prod['value'].update({'account_analytic_id': False})
return res_prod
-account_invoice_line()
class stock_picking(osv.osv):
@@ -97,7 +95,6 @@ class stock_picking(osv.osv):
return super(stock_picking, self)._get_account_analytic_invoice(cursor, user, picking, move_line)
-stock_picking()
class sale_order_line(osv.osv):
_inherit = "sale.order.line"
@@ -118,6 +115,5 @@ class sale_order_line(osv.osv):
inv_line_obj.write(cr, uid, [line.id], {'account_analytic_id': rec.analytic_id.id}, context=context)
return create_ids
-sale_order_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_analytic_default/i18n/nl_BE.po b/addons/account_analytic_default/i18n/nl_BE.po
index 4d7b5295f16..86fed1b535a 100644
--- a/addons/account_analytic_default/i18n/nl_BE.po
+++ b/addons/account_analytic_default/i18n/nl_BE.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-11-27 13:19+0000\n"
+"PO-Revision-Date: 2013-04-15 15:56+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \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: 2013-03-16 05:28+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
#. module: account_analytic_default
#: model:ir.actions.act_window,name:account_analytic_default.analytic_rule_action_partner
@@ -40,6 +40,9 @@ msgid ""
"default (e.g. create new customer invoice or Sales order if we select this "
"product, it will automatically take this as an analytic account)"
msgstr ""
+"Kies een product voor de analytische rekening in analytische "
+"standaardrekening (vb. maak een nieuwe verkoopfactuur of verkooporder: als "
+"we dit product kiezen, wordt de analytische rekening voorgesteld)."
#. module: account_analytic_default
#: model:ir.model,name:account_analytic_default.model_stock_picking
@@ -64,6 +67,9 @@ msgid ""
"default (e.g. create new customer invoice or Sales order if we select this "
"partner, it will automatically take this as an analytic account)"
msgstr ""
+"Kies een relatie voor de analytische rekening in analytische "
+"standaardrekening (vb. maak een nieuwe verkoopfactuur of verkooporder: als "
+"we deze relatie kiezen, wordt de analytische rekening voorgesteld)."
#. module: account_analytic_default
#: view:account.analytic.default:0
@@ -118,6 +124,9 @@ msgid ""
"default (e.g. create new customer invoice or Sales order if we select this "
"company, it will automatically take this as an analytic account)"
msgstr ""
+"Kies een firma voor de analytische rekening in analytische standaardrekening "
+"(vb. maak een nieuwe verkoopfactuur of verkooporder: als we deze firma "
+"kiezen, wordt de analytische rekening voorgesteld)."
#. module: account_analytic_default
#: view:account.analytic.default:0
diff --git a/addons/account_analytic_plans/account_analytic_plans.py b/addons/account_analytic_plans/account_analytic_plans.py
index 5834db99cd3..54b15ad565b 100644
--- a/addons/account_analytic_plans/account_analytic_plans.py
+++ b/addons/account_analytic_plans/account_analytic_plans.py
@@ -40,10 +40,10 @@ class one2many_mod2(fields.one2many):
plan = journal.plan_id
if plan and len(plan.plan_ids) > pnum:
acc_id = plan.plan_ids[pnum].root_analytic_id.id
- ids2 = obj.pool.get(self._obj).search(cr, user, [(self._fields_id,'in',ids),('analytic_account_id','child_of',[acc_id])], limit=self._limit)
+ ids2 = obj.pool[self._obj].search(cr, user, [(self._fields_id,'in',ids),('analytic_account_id','child_of',[acc_id])], limit=self._limit)
if ids2 is None:
- ids2 = obj.pool.get(self._obj).search(cr, user, [(self._fields_id,'in',ids)], limit=self._limit)
- for r in obj.pool.get(self._obj)._read_flat(cr, user, ids2, [self._fields_id], context=context, load='_classic_write'):
+ ids2 = obj.pool[self._obj].search(cr, user, [(self._fields_id,'in',ids)], limit=self._limit)
+ for r in obj.pool[self._obj]._read_flat(cr, user, ids2, [self._fields_id], context=context, load='_classic_write'):
res[r[self._fields_id]].append( r['id'] )
return res
@@ -65,7 +65,6 @@ class account_analytic_line(osv.osv):
'percentage': fields.float('Percentage')
}
-account_analytic_line()
class account_analytic_plan(osv.osv):
_name = "account.analytic.plan"
@@ -75,7 +74,6 @@ class account_analytic_plan(osv.osv):
'plan_ids': fields.one2many('account.analytic.plan.line', 'plan_id', 'Analytic Plans'),
}
-account_analytic_plan()
class account_analytic_plan_line(osv.osv):
_name = "account.analytic.plan.line"
@@ -94,7 +92,6 @@ class account_analytic_plan_line(osv.osv):
'max_required': 100.0,
}
-account_analytic_plan_line()
class account_analytic_plan_instance(osv.osv):
_name = "account.analytic.plan.instance"
@@ -257,7 +254,6 @@ class account_analytic_plan_instance(osv.osv):
vals['code'] = this.code and (str(this.code)+'*') or "*"
return super(account_analytic_plan_instance, self).write(cr, uid, ids, vals, context=context)
-account_analytic_plan_instance()
class account_analytic_plan_instance_line(osv.osv):
_name = "account.analytic.plan.instance.line"
@@ -280,7 +276,6 @@ class account_analytic_plan_instance_line(osv.osv):
res.append((record['id'], record['analytic_account_id']))
return res
-account_analytic_plan_instance_line()
class account_journal(osv.osv):
_inherit = "account.journal"
@@ -289,7 +284,6 @@ class account_journal(osv.osv):
'plan_id': fields.many2one('account.analytic.plan', 'Analytic Plans'),
}
-account_journal()
class account_invoice_line(osv.osv):
_inherit = "account.invoice.line"
@@ -315,7 +309,6 @@ class account_invoice_line(osv.osv):
res_prod['value'].update({'analytics_id': rec.analytics_id.id})
return res_prod
-account_invoice_line()
class account_move_line(osv.osv):
@@ -370,7 +363,6 @@ class account_move_line(osv.osv):
result = super(account_move_line, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar=toolbar, submenu=submenu)
return result
-account_move_line()
class account_invoice(osv.osv):
_name = "account.invoice"
@@ -425,14 +417,12 @@ class account_invoice(osv.osv):
il['analytic_lines'].append((0, 0, al_vals))
return iml
-account_invoice()
class account_analytic_plan(osv.osv):
_inherit = "account.analytic.plan"
_columns = {
'default_instance_id': fields.many2one('account.analytic.plan.instance', 'Default Entries'),
}
-account_analytic_plan()
class analytic_default(osv.osv):
_inherit = "account.analytic.default"
@@ -440,7 +430,6 @@ class analytic_default(osv.osv):
'analytics_id': fields.many2one('account.analytic.plan.instance', 'Analytic Distribution'),
}
-analytic_default()
class sale_order_line(osv.osv):
_inherit = "sale.order.line"
@@ -459,7 +448,6 @@ class sale_order_line(osv.osv):
inv_line_obj.write(cr, uid, [line.id], {'analytics_id': rec.analytics_id.id}, context=context)
return create_ids
-sale_order_line()
class account_bank_statement(osv.osv):
@@ -488,7 +476,6 @@ class account_bank_statement(osv.osv):
continue
return True
-account_bank_statement()
class account_bank_statement_line(osv.osv):
@@ -497,6 +484,5 @@ class account_bank_statement_line(osv.osv):
_columns = {
'analytics_id': fields.many2one('account.analytic.plan.instance', 'Analytic Distribution'),
}
-account_bank_statement_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_analytic_plans/account_analytic_plans_view.xml b/addons/account_analytic_plans/account_analytic_plans_view.xml
index 3dcbcda6952..be46b9a6923 100644
--- a/addons/account_analytic_plans/account_analytic_plans_view.xml
+++ b/addons/account_analytic_plans/account_analytic_plans_view.xml
@@ -64,30 +64,6 @@
-
-
-
- account.invoice.line.form.inherit
- account.invoice.line
-
-
-
-
-
-
-
-
-
- account.invoice.supplier.form.inherit
- account.invoice
-
- 2
-
-
-
-
-
-
diff --git a/addons/account_analytic_plans/wizard/account_crossovered_analytic.py b/addons/account_analytic_plans/wizard/account_crossovered_analytic.py
index 640443c8a0b..d3581d6c457 100644
--- a/addons/account_analytic_plans/wizard/account_crossovered_analytic.py
+++ b/addons/account_analytic_plans/wizard/account_crossovered_analytic.py
@@ -71,6 +71,5 @@ class account_crossovered_analytic(osv.osv_memory):
'datas': datas,
}
-account_crossovered_analytic()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_analytic_plans/wizard/analytic_plan_create_model.py b/addons/account_analytic_plans/wizard/analytic_plan_create_model.py
index 7038a6f1025..3a206aa227e 100644
--- a/addons/account_analytic_plans/wizard/analytic_plan_create_model.py
+++ b/addons/account_analytic_plans/wizard/analytic_plan_create_model.py
@@ -55,6 +55,5 @@ class analytic_plan_create_model(osv.osv_memory):
else:
return {'type': 'ir.actions.act_window_close'}
-analytic_plan_create_model()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_anglo_saxon/product.py b/addons/account_anglo_saxon/product.py
index 443642d048b..b52d9ed3bbd 100644
--- a/addons/account_anglo_saxon/product.py
+++ b/addons/account_anglo_saxon/product.py
@@ -48,7 +48,6 @@ class product_category(osv.osv):
help="This account will be used to value outgoing stock using cost price."),
}
-product_category()
class product_template(osv.osv):
_inherit = "product.template"
@@ -78,7 +77,6 @@ class product_template(osv.osv):
help="This account will be used to value outgoing stock using cost price."),
}
-product_template()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_anglo_saxon/purchase.py b/addons/account_anglo_saxon/purchase.py
index 959f8b7eb49..c10a2a97d80 100644
--- a/addons/account_anglo_saxon/purchase.py
+++ b/addons/account_anglo_saxon/purchase.py
@@ -37,6 +37,5 @@ class purchase_order(osv.osv):
new_account_id = self.pool.get('account.fiscal.position').map_account(cr, uid, fpos, acc_id)
line.update({'account_id': new_account_id})
return line
-purchase_order()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_anglo_saxon/stock.py b/addons/account_anglo_saxon/stock.py
index 191249a6640..1cf3ecf21ef 100644
--- a/addons/account_anglo_saxon/stock.py
+++ b/addons/account_anglo_saxon/stock.py
@@ -57,7 +57,6 @@ class stock_picking(osv.osv):
self.pool.get('account.invoice.line').write(cr, uid, [ol.id], {'account_id': a})
return res
-stock_picking()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_asset/account_asset.py b/addons/account_asset/account_asset.py
index 5a22a888772..5c019155fdc 100644
--- a/addons/account_asset/account_asset.py
+++ b/addons/account_asset/account_asset.py
@@ -70,7 +70,6 @@ class account_asset_category(osv.osv):
res['value'] = {'account_depreciation_id': account_asset_id}
return res
-account_asset_category()
class account_asset_asset(osv.osv):
_name = 'account.asset.asset'
@@ -80,10 +79,10 @@ class account_asset_asset(osv.osv):
for asset in self.browse(cr, uid, ids, context=context):
if asset.account_move_line_ids:
raise osv.except_osv(_('Error!'), _('You cannot delete an asset that contains posted depreciation lines.'))
- return super(account_account, self).unlink(cr, uid, ids, context=context)
+ return super(account_asset_asset, self).unlink(cr, uid, ids, context=context)
def _get_period(self, cr, uid, context=None):
- periods = self.pool.get('account.period').find(cr, uid)
+ periods = self.pool.get('account.period').find(cr, uid, context=context)
if periods:
return periods[0]
else:
@@ -361,7 +360,6 @@ class account_asset_asset(osv.osv):
'context': context,
}
-account_asset_asset()
class account_asset_depreciation_line(osv.osv):
_name = 'account.asset.depreciation.line'
@@ -456,7 +454,6 @@ class account_asset_depreciation_line(osv.osv):
asset.write({'state': 'close'})
return created_move_ids
-account_asset_depreciation_line()
class account_move_line(osv.osv):
_inherit = 'account.move.line'
@@ -465,7 +462,6 @@ class account_move_line(osv.osv):
'entry_ids': fields.one2many('account.move.line', 'asset_id', 'Entries', readonly=True, states={'draft':[('readonly',False)]}),
}
-account_move_line()
class account_asset_history(osv.osv):
_name = 'account.asset.history'
@@ -490,6 +486,5 @@ class account_asset_history(osv.osv):
'user_id': lambda self, cr, uid, ctx: uid
}
-account_asset_history()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_asset/account_asset_invoice.py b/addons/account_asset/account_asset_invoice.py
index 7e2f24f0d0a..d5b1c298c0b 100644
--- a/addons/account_asset/account_asset_invoice.py
+++ b/addons/account_asset/account_asset_invoice.py
@@ -35,7 +35,6 @@ class account_invoice(osv.osv):
res['asset_id'] = x.get('asset_id', False)
return res
-account_invoice()
class account_invoice_line(osv.osv):
@@ -66,6 +65,5 @@ class account_invoice_line(osv.osv):
asset_obj.validate(cr, uid, [asset_id], context=context)
return True
-account_invoice_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_asset/account_asset_view.xml b/addons/account_asset/account_asset_view.xml
index c4cb17bded3..fe1fcf473ba 100644
--- a/addons/account_asset/account_asset_view.xml
+++ b/addons/account_asset/account_asset_view.xml
@@ -223,7 +223,7 @@
-
+
diff --git a/addons/account_asset/i18n/nl_BE.po b/addons/account_asset/i18n/nl_BE.po
index 5bee5f9bfd9..3413cf38ac8 100644
--- a/addons/account_asset/i18n/nl_BE.po
+++ b/addons/account_asset/i18n/nl_BE.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2012-11-27 13:35+0000\n"
+"PO-Revision-Date: 2013-04-15 15:59+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \n"
"Language-Team: Dutch (Belgium) \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:50+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
#. module: account_asset
#: view:account.asset.asset:0
@@ -148,7 +148,7 @@ msgstr "Dit is het bedrag dat u niet kunt afschrijven."
#. module: account_asset
#: help:account.asset.asset,method_period:0
msgid "The amount of time between two depreciations, in months"
-msgstr ""
+msgstr "De tijd tussen twee afschrijvingen, in maanden"
#. module: account_asset
#: field:account.asset.depreciation.line,depreciation_date:0
@@ -265,7 +265,7 @@ msgstr "Duur wijzigen"
#: help:account.asset.category,method_number:0
#: help:account.asset.history,method_number:0
msgid "The number of depreciations needed to depreciate your asset"
-msgstr ""
+msgstr "Het aantal keer dat er moet worden afgeschreven."
#. module: account_asset
#: view:account.asset.category:0
@@ -295,7 +295,7 @@ msgstr ""
#. module: account_asset
#: field:account.asset.depreciation.line,remaining_value:0
msgid "Next Period Depreciation"
-msgstr ""
+msgstr "Volgende afschrijvingsperiode"
#. module: account_asset
#: help:account.asset.history,method_period:0
@@ -346,7 +346,7 @@ msgstr "Investeringscategorie zoeken"
#. module: account_asset
#: view:asset.modify:0
msgid "months"
-msgstr ""
+msgstr "maanden"
#. module: account_asset
#: model:ir.model,name:account_asset.model_account_invoice_line
@@ -608,7 +608,7 @@ msgstr "Afschrijvingsmethode"
#. module: account_asset
#: field:account.asset.depreciation.line,amount:0
msgid "Current Depreciation"
-msgstr ""
+msgstr "Huidige afschrijving"
#. module: account_asset
#: field:account.asset.asset,name:0
@@ -653,6 +653,9 @@ msgid ""
" * Linear: Calculated on basis of: Gross Value / Number of Depreciations\n"
" * Degressive: Calculated on basis of: Residual Value * Degressive Factor"
msgstr ""
+"Kies de methode om het aantal afschrijvingsregels te berekenen.\n"
+" * Lineair: op basis van: brutowaarde / aantal afschrijvingen\n"
+" * Degressief: op basis van: restwaarde * degressieve factor"
#. module: account_asset
#: field:account.asset.depreciation.line,move_check:0
diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py
index 1554880ac38..40ab1c778f0 100644
--- a/addons/account_asset/report/account_asset_report.py
+++ b/addons/account_asset/report/account_asset_report.py
@@ -82,6 +82,5 @@ class asset_asset_report(osv.osv):
a.purchase_value, a.id, a.salvage_value
)""")
-asset_asset_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml
index 4865196c4a8..c772c6e4103 100644
--- a/addons/account_asset/report/account_asset_report_view.xml
+++ b/addons/account_asset/report/account_asset_report_view.xml
@@ -49,7 +49,7 @@
-
+
diff --git a/addons/account_asset/wizard/account_asset_change_duration.py b/addons/account_asset/wizard/account_asset_change_duration.py
index 19782c76367..f27507ac2b3 100755
--- a/addons/account_asset/wizard/account_asset_change_duration.py
+++ b/addons/account_asset/wizard/account_asset_change_duration.py
@@ -127,6 +127,5 @@ class asset_modify(osv.osv_memory):
asset_obj.compute_depreciation_board(cr, uid, [asset_id], context=context)
return {'type': 'ir.actions.act_window_close'}
-asset_modify()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_asset/wizard/wizard_asset_compute.py b/addons/account_asset/wizard/wizard_asset_compute.py
index cc870329840..f7cc6cf89c0 100755
--- a/addons/account_asset/wizard/wizard_asset_compute.py
+++ b/addons/account_asset/wizard/wizard_asset_compute.py
@@ -30,7 +30,7 @@ class asset_depreciation_confirmation_wizard(osv.osv_memory):
}
def _get_period(self, cr, uid, context=None):
- periods = self.pool.get('account.period').find(cr, uid)
+ periods = self.pool.get('account.period').find(cr, uid, context=context)
if periods:
return periods[0]
return False
@@ -55,6 +55,5 @@ class asset_depreciation_confirmation_wizard(osv.osv_memory):
'type': 'ir.actions.act_window',
}
-asset_depreciation_confirmation_wizard()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_bank_statement_extensions/account_bank_statement.py b/addons/account_bank_statement_extensions/account_bank_statement.py
index 60dcc6dfa25..b9e44ee8f9c 100644
--- a/addons/account_bank_statement_extensions/account_bank_statement.py
+++ b/addons/account_bank_statement_extensions/account_bank_statement.py
@@ -56,7 +56,6 @@ class account_bank_statement(osv.osv):
(tuple([x.id for x in st.line_ids]),))
return True
-account_bank_statement()
class account_bank_statement_line_global(osv.osv):
_name = 'account.bank.statement.line.global'
@@ -100,7 +99,6 @@ class account_bank_statement_line_global(osv.osv):
ids = self.search(cr, user, args, context=context, limit=limit)
return self.name_get(cr, user, ids, context=context)
-account_bank_statement_line_global()
class account_bank_statement_line(osv.osv):
_inherit = 'account.bank.statement.line'
@@ -130,6 +128,5 @@ class account_bank_statement_line(osv.osv):
Please go to the associated bank statement in order to delete and/or modify bank statement line.'))
return super(account_bank_statement_line, self).unlink(cr, uid, ids, context=context)
-account_bank_statement_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_bank_statement_extensions/res_partner_bank.py b/addons/account_bank_statement_extensions/res_partner_bank.py
index f866634a08c..22baa78d39f 100644
--- a/addons/account_bank_statement_extensions/res_partner_bank.py
+++ b/addons/account_bank_statement_extensions/res_partner_bank.py
@@ -35,5 +35,4 @@ class res_partner_bank(osv.osv):
ids = self.search(cr, user, args, context=context, limit=limit)
return self.name_get(cr, user, ids, context=context)
-res_partner_bank()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_bank_statement_extensions/wizard/cancel_statement_line.py b/addons/account_bank_statement_extensions/wizard/cancel_statement_line.py
index 46d71354d4b..15c242e9c33 100644
--- a/addons/account_bank_statement_extensions/wizard/cancel_statement_line.py
+++ b/addons/account_bank_statement_extensions/wizard/cancel_statement_line.py
@@ -32,6 +32,5 @@ class cancel_statement_line(osv.osv_memory):
line_obj.write(cr, uid, line_ids, {'state': 'draft'}, context=context)
return {}
-cancel_statement_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_bank_statement_extensions/wizard/confirm_statement_line.py b/addons/account_bank_statement_extensions/wizard/confirm_statement_line.py
index 3a887a52441..c330a2cc359 100644
--- a/addons/account_bank_statement_extensions/wizard/confirm_statement_line.py
+++ b/addons/account_bank_statement_extensions/wizard/confirm_statement_line.py
@@ -32,6 +32,5 @@ class confirm_statement_line(osv.osv_memory):
line_obj.write(cr, uid, line_ids, {'state': 'confirm'}, context=context)
return {}
-confirm_statement_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_budget/account_budget.py b/addons/account_budget/account_budget.py
index a88c468fff1..e6fc3a29668 100644
--- a/addons/account_budget/account_budget.py
+++ b/addons/account_budget/account_budget.py
@@ -48,7 +48,6 @@ class account_budget_post(osv.osv):
}
_order = "name"
-account_budget_post()
class crossovered_budget(osv.osv):
@@ -104,7 +103,6 @@ class crossovered_budget(osv.osv):
})
return True
-crossovered_budget()
class crossovered_budget_lines(osv.osv):
@@ -202,7 +200,6 @@ class crossovered_budget_lines(osv.osv):
'company_id': fields.related('crossovered_budget_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True)
}
-crossovered_budget_lines()
class account_analytic_account(osv.osv):
_inherit = "account.analytic.account"
@@ -211,6 +208,5 @@ class account_analytic_account(osv.osv):
'crossovered_budget_line': fields.one2many('crossovered.budget.lines', 'analytic_account_id', 'Budget Lines'),
}
-account_analytic_account()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_budget/wizard/account_budget_analytic.py b/addons/account_budget/wizard/account_budget_analytic.py
index 0cdb7504f75..90285b90d1e 100644
--- a/addons/account_budget/wizard/account_budget_analytic.py
+++ b/addons/account_budget/wizard/account_budget_analytic.py
@@ -50,6 +50,5 @@ class account_budget_analytic(osv.osv_memory):
'datas': datas,
}
-account_budget_analytic()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_budget/wizard/account_budget_crossovered_report.py b/addons/account_budget/wizard/account_budget_crossovered_report.py
index 97fc43c8e9d..6f89a3cd95c 100644
--- a/addons/account_budget/wizard/account_budget_crossovered_report.py
+++ b/addons/account_budget/wizard/account_budget_crossovered_report.py
@@ -51,6 +51,5 @@ class account_budget_crossvered_report(osv.osv_memory):
'datas': datas,
}
-account_budget_crossvered_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_budget/wizard/account_budget_crossovered_summary_report.py b/addons/account_budget/wizard/account_budget_crossovered_summary_report.py
index f42c39ec6ac..6e3131b584c 100644
--- a/addons/account_budget/wizard/account_budget_crossovered_summary_report.py
+++ b/addons/account_budget/wizard/account_budget_crossovered_summary_report.py
@@ -53,7 +53,6 @@ class account_budget_crossvered_summary_report(osv.osv_memory):
'datas': datas,
}
-account_budget_crossvered_summary_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_budget/wizard/account_budget_report.py b/addons/account_budget/wizard/account_budget_report.py
index 5db6c68d508..54c3180ee0d 100644
--- a/addons/account_budget/wizard/account_budget_report.py
+++ b/addons/account_budget/wizard/account_budget_report.py
@@ -52,6 +52,5 @@ class account_budget_report(osv.osv_memory):
'datas': datas,
}
-account_budget_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_cancel/i18n/hu.po b/addons/account_cancel/i18n/hu.po
index 6b63bb37bb2..bab8304030f 100644
--- a/addons/account_cancel/i18n/hu.po
+++ b/addons/account_cancel/i18n/hu.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-01-30 16:46+0000\n"
-"Last-Translator: Krisztian Eyssen \n"
+"PO-Revision-Date: 2013-04-04 13:17+0000\n"
+"Last-Translator: krnkris \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: 2013-03-16 05:42+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-05 05:37+0000\n"
+"X-Generator: Launchpad (build 16550)\n"
#. module: account_cancel
#: view:account.invoice:0
msgid "Cancel"
-msgstr ""
+msgstr "Sztornó"
#~ msgid "Account Cancel"
#~ msgstr "Érvénytelenítés"
diff --git a/addons/account_check_writing/account.py b/addons/account_check_writing/account.py
index 62b7336dc5f..035e3a710b0 100644
--- a/addons/account_check_writing/account.py
+++ b/addons/account_check_writing/account.py
@@ -29,7 +29,6 @@ class account_journal(osv.osv):
'use_preprint_check': fields.boolean('Use Preprinted Check'),
}
-account_journal()
class res_company(osv.osv):
_inherit = "res.company"
@@ -46,5 +45,4 @@ class res_company(osv.osv):
'check_layout' : lambda *a: 'top',
}
-res_company()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_check_writing/account_voucher.py b/addons/account_check_writing/account_voucher.py
index 7a5d12f5cff..8e1ad2e1fbf 100644
--- a/addons/account_check_writing/account_voucher.py
+++ b/addons/account_check_writing/account_voucher.py
@@ -97,4 +97,3 @@ class account_voucher(osv.osv):
res['arch'] = etree.tostring(doc)
return res
-account_voucher()
diff --git a/addons/account_check_writing/i18n/hu.po b/addons/account_check_writing/i18n/hu.po
new file mode 100644
index 00000000000..528cb4fed60
--- /dev/null
+++ b/addons/account_check_writing/i18n/hu.po
@@ -0,0 +1,247 @@
+# Hungarian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-11 22:57+0000\n"
+"Last-Translator: krnkris \n"
+"Language-Team: Hungarian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-12 05:21+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
+
+#. module: account_check_writing
+#: selection:res.company,check_layout:0
+msgid "Check on Top"
+msgstr "Fennt lévő csekk"
+
+#. module: account_check_writing
+#: report:account.print.check.top:0
+msgid "Open Balance"
+msgstr "Nyitó egyenleg"
+
+#. module: account_check_writing
+#: view:account.check.write:0
+#: view:account.voucher:0
+msgid "Print Check"
+msgstr "Csekk nyomtatása"
+
+#. module: account_check_writing
+#: selection:res.company,check_layout:0
+msgid "Check in middle"
+msgstr "Középen lévő csekk"
+
+#. module: account_check_writing
+#: help:res.company,check_layout:0
+msgid ""
+"Check on top is compatible with Quicken, QuickBooks and Microsoft Money. "
+"Check in middle is compatible with Peachtree, ACCPAC and DacEasy. Check on "
+"bottom is compatible with Peachtree, ACCPAC and DacEasy only"
+msgstr ""
+"Fennt lévő csekk kompatibilis a Quicken, QuickBooks és Microsoft Money "
+"csekkekekl. A középen lévő csekkek kompatibilisek a Peachtree, ACCPAC és "
+"DacEasy csekkekel. Az alul lévő csekkek kompatibilisek a Peachtree, ACCPAC "
+"és DacEasy only csekkekel."
+
+#. module: account_check_writing
+#: selection:res.company,check_layout:0
+msgid "Check on bottom"
+msgstr "Alul lévő csekkek"
+
+#. module: account_check_writing
+#: model:ir.actions.act_window,name:account_check_writing.action_account_check_write
+msgid "Print Check in Batch"
+msgstr "Csekkek kötegelt nyomtatása"
+
+#. module: account_check_writing
+#: code:addons/account_check_writing/wizard/account_check_batch_printing.py:59
+#, python-format
+msgid "One of the printed check already got a number."
+msgstr "Egyik, már kinyomtatott csekk már el van látva számmal."
+
+#. module: account_check_writing
+#: help:account.journal,allow_check_writing:0
+msgid "Check this if the journal is to be used for writing checks."
+msgstr "Jelölje be ezt, ha naplót csekkírásra használja."
+
+#. module: account_check_writing
+#: field:account.journal,allow_check_writing:0
+msgid "Allow Check writing"
+msgstr "Csekk írás engedélyezése."
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+#: report:account.print.check.top:0
+msgid "Description"
+msgstr "Leírás"
+
+#. module: account_check_writing
+#: model:ir.model,name:account_check_writing.model_account_journal
+msgid "Journal"
+msgstr "Napló"
+
+#. module: account_check_writing
+#: model:ir.actions.act_window,name:account_check_writing.action_write_check
+#: model:ir.ui.menu,name:account_check_writing.menu_action_write_check
+msgid "Write Checks"
+msgstr "Csekkek írása"
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+#: report:account.print.check.top:0
+msgid "Discount"
+msgstr "Kedvezmény"
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+#: report:account.print.check.top:0
+msgid "Original Amount"
+msgstr "Eredeti összeg"
+
+#. module: account_check_writing
+#: field:res.company,check_layout:0
+msgid "Check Layout"
+msgstr "Csekk elrendezése"
+
+#. module: account_check_writing
+#: field:account.voucher,allow_check:0
+msgid "Allow Check Writing"
+msgstr "Csekk írás engedélyezése"
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+#: report:account.print.check.top:0
+msgid "Payment"
+msgstr "Kifizetés"
+
+#. module: account_check_writing
+#: field:account.journal,use_preprint_check:0
+msgid "Use Preprinted Check"
+msgstr "Előre nyomtatott csekk használata"
+
+#. module: account_check_writing
+#: model:ir.actions.report.xml,name:account_check_writing.account_print_check_bottom
+msgid "Print Check (Bottom)"
+msgstr "Csekk nyomtatás (Alsó)"
+
+#. module: account_check_writing
+#: model:ir.actions.act_window,help:account_check_writing.action_write_check
+msgid ""
+"
\n"
+" Click to create a new check. \n"
+"
\n"
+" The check payment form allows you to track the payment you "
+"do\n"
+" to your suppliers using checks. When you select a supplier, "
+"the\n"
+" payment method and an amount for the payment, OpenERP will\n"
+" propose to reconcile your payment with the open supplier\n"
+" invoices or bills.\n"
+"
\n"
+" "
+msgstr ""
+"
\n"
+" Kattintson új csekk létrehozásához. \n"
+"
\n"
+" A csekk kifizetési lap lehetővé teszi a beszállítókhoz "
+"történt \n"
+" csekken történt kifizetések nyomon követését. Ha kiválaszt "
+"egy beszállítót,\n"
+" a fizetési módot és az összeget, OpenERP javasolni fogja \n"
+" a fizetés összeegyeztetését a még nyitott beszállítói "
+"számlákkal és\n"
+" fizetésekkel.\n"
+"
\n"
+" "
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+#: report:account.print.check.top:0
+msgid "Due Date"
+msgstr "Fizetési határidő"
+
+#. module: account_check_writing
+#: model:ir.actions.report.xml,name:account_check_writing.account_print_check_middle
+msgid "Print Check (Middle)"
+msgstr "Csekk nyomtatás (Középső)"
+
+#. module: account_check_writing
+#: model:ir.model,name:account_check_writing.model_res_company
+msgid "Companies"
+msgstr "Vállalatok"
+
+#. module: account_check_writing
+#: code:addons/account_check_writing/wizard/account_check_batch_printing.py:59
+#, python-format
+msgid "Error!"
+msgstr "Hiba!"
+
+#. module: account_check_writing
+#: help:account.check.write,check_number:0
+msgid "The number of the next check number to be printed."
+msgstr "A következő csekkszám nyomtatása"
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+msgid "Balance Due"
+msgstr "Esedékes egyenleg"
+
+#. module: account_check_writing
+#: model:ir.actions.report.xml,name:account_check_writing.account_print_check_top
+msgid "Print Check (Top)"
+msgstr "Csekk nyomtatás (Felső)"
+
+#. module: account_check_writing
+#: report:account.print.check.bottom:0
+#: report:account.print.check.middle:0
+#: report:account.print.check.top:0
+msgid "Check Amount"
+msgstr "Csekk végösszege"
+
+#. module: account_check_writing
+#: model:ir.model,name:account_check_writing.model_account_voucher
+msgid "Accounting Voucher"
+msgstr "Könyvelési bizonylat"
+
+#. module: account_check_writing
+#: view:account.check.write:0
+msgid "or"
+msgstr "vagy"
+
+#. module: account_check_writing
+#: field:account.voucher,amount_in_word:0
+msgid "Amount in Word"
+msgstr "Összeg szavakkal"
+
+#. module: account_check_writing
+#: model:ir.model,name:account_check_writing.model_account_check_write
+msgid "Prin Check in Batch"
+msgstr "Csekk kötegelt nyomtatása"
+
+#. module: account_check_writing
+#: view:account.check.write:0
+msgid "Cancel"
+msgstr "Mégse"
+
+#. module: account_check_writing
+#: field:account.check.write,check_number:0
+msgid "Next Check Number"
+msgstr "Következő csekk száma"
+
+#. module: account_check_writing
+#: view:account.check.write:0
+msgid "Check"
+msgstr "Csekk"
diff --git a/addons/account_check_writing/wizard/account_check_batch_printing.py b/addons/account_check_writing/wizard/account_check_batch_printing.py
index afeb5de6445..c3a13e2c687 100644
--- a/addons/account_check_writing/wizard/account_check_batch_printing.py
+++ b/addons/account_check_writing/wizard/account_check_batch_printing.py
@@ -83,5 +83,4 @@ class account_check_write(osv.osv_memory):
'nodestroy': True
}
-account_check_write()
diff --git a/addons/account_followup/account_followup_customers.xml b/addons/account_followup/account_followup_customers.xml
index 6be11399b68..6893abe012e 100644
--- a/addons/account_followup/account_followup_customers.xml
+++ b/addons/account_followup/account_followup_customers.xml
@@ -10,7 +10,7 @@
-
+
@@ -29,7 +29,7 @@
res.partner
-
+
diff --git a/addons/account_followup/i18n/hu.po b/addons/account_followup/i18n/hu.po
index a8fc4f8963c..e69bb7b38c0 100644
--- a/addons/account_followup/i18n/hu.po
+++ b/addons/account_followup/i18n/hu.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-11-11 15:21+0000\n"
-"Last-Translator: Krisztian Eyssen \n"
+"PO-Revision-Date: 2013-04-04 13:15+0000\n"
+"Last-Translator: krnkris \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: 2013-03-16 05:11+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-05 05:37+0000\n"
+"X-Generator: Launchpad (build 16550)\n"
#. module: account_followup
#: model:email.template,subject:account_followup.email_template_account_followup_default
@@ -22,12 +22,12 @@ msgstr ""
#: model:email.template,subject:account_followup.email_template_account_followup_level1
#: model:email.template,subject:account_followup.email_template_account_followup_level2
msgid "${user.company_id.name} Payment Reminder"
-msgstr ""
+msgstr "${user.company_id.name} Fizetési felszólítás"
#. module: account_followup
#: help:res.partner,latest_followup_level_id:0
msgid "The maximum follow-up level"
-msgstr ""
+msgstr "Fizetési-emlékeztető szint maximuma"
#. module: account_followup
#: view:account_followup.stat:0
@@ -43,33 +43,33 @@ msgstr "Fizetési emlékeztető"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(date)s"
-msgstr ""
+msgstr "%(date)s"
#. module: account_followup
#: field:res.partner,payment_next_action_date:0
msgid "Next Action Date"
-msgstr ""
+msgstr "Következő művelet időpontja"
#. module: account_followup
#: view:account_followup.followup.line:0
#: field:account_followup.followup.line,manual_action:0
msgid "Manual Action"
-msgstr ""
+msgstr "Kézi művelet"
#. module: account_followup
#: field:account_followup.sending.results,needprinting:0
msgid "Needs Printing"
-msgstr ""
+msgstr "Nyomtatás szükséges"
#. module: account_followup
#: view:res.partner:0
msgid "⇾ Mark as Done"
-msgstr ""
+msgstr "⇾ Jelölje elvégzettnek"
#. module: account_followup
#: field:account_followup.followup.line,manual_action_note:0
msgid "Action To Do"
-msgstr ""
+msgstr "Elvégzendő művelet"
#. module: account_followup
#: field:account_followup.followup,company_id:0
@@ -94,34 +94,34 @@ msgstr "E-mail tárgya"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(user_signature)s"
-msgstr ""
+msgstr "%(user_signature)s"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "days overdue, do the following actions:"
-msgstr ""
+msgstr "a határidő napján, a következő műveleteket hajtsa végre:"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "Follow-up Steps"
-msgstr ""
+msgstr "Fizetési-emlékezetető lépései"
#. module: account_followup
#: field:account_followup.print,email_body:0
msgid "Email Body"
-msgstr ""
+msgstr "E-mail szövege"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print
msgid "Send Follow-Ups"
-msgstr ""
+msgstr "Fizetési-emlékezető küldése"
#. module: account_followup
#: report:account_followup.followup.print:0
#: code:addons/account_followup/account_followup.py:263
#, python-format
msgid "Amount"
-msgstr ""
+msgstr "Összeg"
#. module: account_followup
#: help:res.partner,payment_next_action:0
@@ -129,11 +129,14 @@ msgid ""
"This is the next action to be taken. It will automatically be set when the "
"partner gets a follow-up level that requires a manual action. "
msgstr ""
+"Ez a következő elvégezni kívánt művelet. Ez automatikusan beállított amint "
+"a partner elér egy olyan fizetési-emlékeztető szintet, ami kézi beavatkozást "
+"igényel. "
#. module: account_followup
#: view:res.partner:0
msgid "No Responsible"
-msgstr ""
+msgstr "Nincs felelős"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line2
@@ -158,6 +161,24 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Tisztelt %(partner_name)s,\n"
+"\n"
+"Csalódottan vettük tudomásul, és ezért fizetési-emlékeztetőt vagyunk "
+"kénytelenek küldeni, mivel a számlája már régebben esedékessé vált.\n"
+"\n"
+"Fontos, hogy azonnal fizessenek, egyéb esetben kénytelenek vagyunk elbírálni "
+"a számlájuk lezárását, ami azzal jár, hogy nem leszünk képesek időben "
+"szállítani az Önök vállalakozásának (termékeket/szolgáltatásokat).\n"
+"Kérjük Önöket a fizetés 8 napon belüli pontos teljesítésére.\n"
+"\n"
+"Ha a fizetéssel kapcsolatban probléma merült fel, amit mi nem vettünk "
+"figyelembe, akkor kérjük vegyék fel a könyvelési csoportunkkal a "
+"kapcsolatot, hogy elháríthassuk azt amilyen gyorsan csak lehet.\n"
+"\n"
+"A lejárt számlák részleteit lentebb találják.\n"
+"\n"
+"Üdvözlettel,\n"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_level0
@@ -195,6 +216,39 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+"\n"
+"
Tisztelt ${object.name},
\n"
+"
\n"
+" Ha időközben kiegyenlítésre került, vagy a mi hibánkból adódóan téves, "
+"akkor tárgytalan, \n"
+"de adataink szerint a következő tétel kifizetés nélkül maradt. \n"
+"Kérjük Önöket a fizetés 8 napon belüli pontos teljesítésére.\n"
+"\n"
+"Ha a levél elküldése előtt a fizetés már megtörtént akkor kérjük tekintsék "
+"ezt tárgytalannak. Kérjük vegyék fel a kapcsolatot könyvelési "
+"csoportunkkal. \n"
+"\n"
+"
\n"
+" "
#. module: account_followup
#: view:account_followup.stat.by.partner:0
@@ -209,17 +263,17 @@ msgstr "Tartozik összesen"
#. module: account_followup
#: field:res.partner,payment_next_action:0
msgid "Next Action"
-msgstr ""
+msgstr "Következő művelet"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": Partner Name"
-msgstr ""
+msgstr ": Partner neve"
#. module: account_followup
#: field:account_followup.followup.line,manual_action_responsible_id:0
msgid "Assign a Responsible"
-msgstr ""
+msgstr "Jelöljön ki egy felelőst"
#. module: account_followup
#: view:account_followup.followup:0
@@ -255,6 +309,16 @@ msgid ""
" same customer, the actions of the most \n"
" overdue invoice will be executed."
msgstr ""
+"Egy vevő kifizetetlen számlájának emlékeztetésére,\n"
+" meghatározhat különböző műveleteket a vevő késedel-\n"
+" métől függően. Ezek a műveletek fizetési-emlékeztető "
+"szintekbe\n"
+" csoportosítottak, melyek a számla fizetési határidő "
+"dátumától\n"
+" számított bizonyos napokon lesznek kapcsolva.\n"
+" Ha több lejárt számlája is van ugyanannak a \n"
+" vevőnek, akkor a leghosszabb nappal lejárt művelet \n"
+" lesz elvégezve."
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -269,7 +333,7 @@ msgstr "Partnerek"
#. module: account_followup
#: sql_constraint:account_followup.followup:0
msgid "Only one follow-up per company is allowed"
-msgstr ""
+msgstr "Vállalatonként csak egy fizetési-emlékeztető engedélyezett"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:254
@@ -280,12 +344,12 @@ msgstr "Fizetési emlékeztető"
#. module: account_followup
#: help:account_followup.followup.line,send_letter:0
msgid "When processing, it will print a letter"
-msgstr ""
+msgstr "Ha el lesz végeve, akkor levelet fog nyomtatni"
#. module: account_followup
#: field:res.partner,payment_earliest_due_date:0
msgid "Worst Due Date"
-msgstr ""
+msgstr "Legroszabb leghoszabb lejárati idő"
#. module: account_followup
#: view:account_followup.stat:0
@@ -295,17 +359,17 @@ msgstr "Nem peresített"
#. module: account_followup
#: view:account_followup.print:0
msgid "Send emails and generate letters"
-msgstr ""
+msgstr "Küldjön e-mail-t és hozzon létre levelet"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_customer_followup
msgid "Manual Follow-Ups"
-msgstr ""
+msgstr "Kézi fizetési-emlékeztető"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(partner_name)s"
-msgstr ""
+msgstr "%(partner_name)s"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_level1
@@ -347,6 +411,40 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+" \n"
+"
Dear ${object.name},
\n"
+"
\n"
+" Csalódottan vettük tudomásul, és ezért fizetési-emlékeztetőt vagyunk "
+"kénytelenek küldeni, mivel a számlája már régebben esedékessé vált.Fontos, "
+"hogy azonnal fizessenek, egyéb esetben kénytelenek vagyunk elbírálni a "
+"számlájuk lezárását, ami azzal jár, hogy nem leszünk képesek időben "
+"szállítani az Önök vállalakozásának (termékeket/szolgáltatásokat).\n"
+"Kérjük Önöket a fizetés 8 napon belüli pontos teljesítésére.\n"
+"Ha a fizetéssel kapcsolatban probléma merült fel, amit mi nem vettünk "
+"figyelembe, akkor kérjük vegyék fel a könyvelési csoportunkkal a "
+"kapcsolatot, hogy elháríthassuk azt amilyen gyorsan csak lehet.\n"
+"A lejárt számlák részleteit lentebb találják.\n"
+"
\n"
+" "
#. module: account_followup
#: field:account_followup.stat,debit:0
@@ -356,49 +454,49 @@ msgstr "Tartozik"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat
msgid "Follow-up Statistics"
-msgstr ""
+msgstr "Fizetési-emlékeztető statisztikák"
#. module: account_followup
#: view:res.partner:0
msgid "Send Overdue Email"
-msgstr ""
+msgstr "Lejárt dátumú fizetésről e-mail emlékeztető küldése"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup_line
msgid "Follow-up Criteria"
-msgstr ""
+msgstr "Fizetési-emlékeztető kritériom"
#. module: account_followup
#: help:account_followup.followup.line,sequence:0
msgid "Gives the sequence order when displaying a list of follow-up lines."
-msgstr "Megadja a fizetési emlékeztető sorok listázási sorrendjét."
+msgstr "Megadja a fizetési-emlékeztető sorok listázási sorrendjét."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:166
#, python-format
msgid " will be sent"
-msgstr ""
+msgstr " el lesz küldve"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": User's Company Name"
-msgstr ""
+msgstr ": Felhasználó vállalata neve"
#. module: account_followup
#: view:account_followup.followup.line:0
#: field:account_followup.followup.line,send_letter:0
msgid "Send a Letter"
-msgstr ""
+msgstr "Levél küldése"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form
msgid "Payment Follow-ups"
-msgstr ""
+msgstr "fizetési-emlékeztetők kifizetése"
#. module: account_followup
#: field:account_followup.followup.line,delay:0
msgid "Due Days"
-msgstr ""
+msgstr "Határidő túllépése napokban"
#. module: account_followup
#: field:account.move.line,followup_line_id:0
@@ -414,12 +512,12 @@ msgstr "Legutolsó fizetési emlékeztető"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.menu_manual_reconcile_followup
msgid "Reconcile Invoices & Payments"
-msgstr ""
+msgstr "Számlák & Fizetések párosítása"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.account_followup_s
msgid "Do Manual Follow-Ups"
-msgstr ""
+msgstr "Kézi fizetési-emlékeztető elvégzése"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -429,17 +527,17 @@ msgstr "P."
#. module: account_followup
#: field:account_followup.print,email_conf:0
msgid "Send Email Confirmation"
-msgstr ""
+msgstr "E-mail megerősítés küldése"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Follow-up Entries with period in current year"
-msgstr ""
+msgstr "Fizetési-emlékeztető bejegyzések a tárgyi évben"
#. module: account_followup
#: field:account_followup.stat.by.partner,date_followup:0
msgid "Latest follow-up"
-msgstr ""
+msgstr "Legutóbbi fizetési-emlékeztető"
#. module: account_followup
#: field:account_followup.print,partner_lang:0
@@ -450,12 +548,12 @@ msgstr "E-mail küldése a partner nyelvén"
#: code:addons/account_followup/wizard/account_followup_print.py:169
#, python-format
msgid " email(s) sent"
-msgstr ""
+msgstr " e-mail(ek) elküldve"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_print
msgid "Print Follow-up & Send Mail to Customers"
-msgstr ""
+msgstr "Fizetési-emlékeztető nyomtatása & E-mail küldése a vevők részére"
#. module: account_followup
#: field:account_followup.followup.line,description:0
@@ -466,12 +564,12 @@ msgstr "Kinyomtatott üzenet"
#: code:addons/account_followup/wizard/account_followup_print.py:155
#, python-format
msgid "Anybody"
-msgstr ""
+msgstr "Bárki"
#. module: account_followup
#: help:account_followup.followup.line,send_email:0
msgid "When processing, it will send an email"
-msgstr ""
+msgstr "végrehajtáskor egy e-mailt fog küldeni"
#. module: account_followup
#: view:account_followup.stat.by.partner:0
@@ -481,7 +579,7 @@ msgstr "Emlékeztetendő partner"
#. module: account_followup
#: view:res.partner:0
msgid "Print Overdue Payments"
-msgstr ""
+msgstr "Határidőn túli fizetések nyomtatása"
#. module: account_followup
#: field:account_followup.followup.line,followup_id:0
@@ -494,11 +592,12 @@ msgstr "Fizetési emlékeztetők"
#, python-format
msgid "Email not sent because of email address of partner not filled in"
msgstr ""
+"E-mail nem lett elküldve, mert a partner e-mail címe nem lett kitöltve"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup
msgid "Account Follow-up"
-msgstr ""
+msgstr "Fizetési-emlékeztető könyvelés"
#. module: account_followup
#: help:res.partner,payment_responsible_id:0
@@ -506,11 +605,13 @@ msgid ""
"Optionally you can assign a user to this field, which will make him "
"responsible for the action."
msgstr ""
+"Választhat felhasználót is erre a mezőre, ami felelőssé teszi erre a "
+"műveletre."
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_sending_results
msgid "Results from the sending of the different letters and emails"
-msgstr ""
+msgstr "A különböző levelek és e-mailek küldéséből származó eredmény"
#. module: account_followup
#: constraint:account_followup.followup.line:0
@@ -518,27 +619,29 @@ msgid ""
"Your description is invalid, use the right legend or %% if you want to use "
"the percent character."
msgstr ""
+"A leírása érvénytelen, használja a jobb oldali feliratot vagy %% ha akarja a "
+"százalék karaktert használja."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:172
#, python-format
msgid " manual action(s) assigned:"
-msgstr ""
+msgstr " kézi művelet(ek) hozzárendelve:"
#. module: account_followup
#: view:res.partner:0
msgid "Search Partner"
-msgstr ""
+msgstr "Partner keresés"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.account_followup_print_menu
msgid "Send Letters and Emails"
-msgstr ""
+msgstr "Levelek és E-mailek küldése"
#. module: account_followup
#: view:account_followup.followup:0
msgid "Search Follow-up"
-msgstr ""
+msgstr "Fizetési-emlékeztető keresése"
#. module: account_followup
#: view:res.partner:0
@@ -549,12 +652,12 @@ msgstr ""
#: code:addons/account_followup/wizard/account_followup_print.py:237
#, python-format
msgid "Send Letters and Emails: Actions Summary"
-msgstr ""
+msgstr "Levelek és E-mailek küldése: Műveletek összegzése"
#. module: account_followup
#: view:account_followup.print:0
msgid "or"
-msgstr ""
+msgstr "vagy"
#. module: account_followup
#: view:res.partner:0
@@ -562,21 +665,23 @@ msgid ""
"If not specified by the latest follow-up level, it will send from the "
"default email template"
msgstr ""
+"Ha nincs meghatározva a legutóbbi fizetési-emlékeztető szinttel, akkor az "
+"alapértelmezett e-mail sablonnal lesz elküldve"
#. module: account_followup
#: sql_constraint:account_followup.followup.line:0
msgid "Days of the follow-up levels must be different"
-msgstr ""
+msgstr "A fizetési-emlékeztető szintek napjainak különbözőeknek kell lenniük"
#. module: account_followup
#: view:res.partner:0
msgid "Click to mark the action as done."
-msgstr ""
+msgstr "Kattintson a művelet elvégzésének jelülésére."
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.menu_action_followup_stat_follow
msgid "Follow-Ups Analysis"
-msgstr ""
+msgstr "Fizetési-emlékeztető elemzések"
#. module: account_followup
#: help:res.partner,payment_next_action_date:0
@@ -586,11 +691,16 @@ msgid ""
"action. Can be practical to set manually e.g. to see if he keeps his "
"promises."
msgstr ""
+"Ez az amikor kézi fizetési-emlékeztető szükséges. A mai nap lesz beállítva, "
+"ha a partner egy olyan fizetési-emlékeztető szintet kap ami kézi "
+"beavatkozást igényel. Praktikus lehet kézire állítani pl. megfigyelni, hogy "
+"betartja-e a szavát."
#. module: account_followup
#: view:res.partner:0
msgid "Print overdue payments report independent of follow-up line"
msgstr ""
+"fizetési-emlékeztető soroktól független lejárt fizetési tételek nyomtatása"
#. module: account_followup
#: help:account_followup.print,date:0
@@ -609,7 +719,7 @@ msgstr "Fizetési emlékeztető küldés időpontja"
#: view:res.partner:0
#: field:res.partner,payment_responsible_id:0
msgid "Follow-up Responsible"
-msgstr ""
+msgstr "Fizetési-emlékeztető felelőse"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_level2
@@ -646,6 +756,37 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+" \n"
+"
Dear ${object.name},
\n"
+"
\n"
+" A többszörös fizetési-emlékeztető ellenére, még mindig nem történt meg a "
+"számla kiegyenlítése.\n"
+"Ha nem történik meg a kiegyenlítés 8 napon belül, törvényes úton vagyunk "
+"kénytelenek az adósságot behajtani, minden további felszólítás nélkül.\n"
+"Úgy gondoljuk, hogy ez nem lesz szükséges lépés a lenti részletekkel "
+"kapcsolatban.\n"
+"Az üggyel kapcsolatban felmerült kérdésekben, kérjük vegyék fel a "
+"kapcsolatot a könyvelési csoportunkkal.\n"
+"
\n"
+" "
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -655,7 +796,7 @@ msgstr "Bizonylat: vevő folyószámla kivonat"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.account_followup_menu
msgid "Follow-up Levels"
-msgstr ""
+msgstr "Fizetési-emlékeztető szintek"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line4
@@ -678,40 +819,54 @@ msgid ""
"Best Regards,\n"
" "
msgstr ""
+"\n"
+"Tisztelt %(partner_name)s,\n"
+"\n"
+"A többszörös fizetési-emlékeztető ellenére, még mindig nem történt meg a "
+"számla kiegyenlítése.\n"
+"Ha nem történik meg a kiegyenlítés 8 napon belül, törvényes úton vagyunk "
+"kénytelenek az adósságot behajtani, minden további felszólítás nélkül.\n"
+"Úgy gondoljuk, hogy ez nem lesz szükséges lépés a lenti részletekkel "
+"kapcsolatban.\n"
+"Az üggyel kapcsolatban felmerült kérdésekben, kérjük vegyék fel a "
+"kapcsolatot a könyvelési csoportunkkal.\n"
+"\n"
+"Üdvözlettel,\n"
+" "
#. module: account_followup
#: field:res.partner,payment_amount_due:0
msgid "Amount Due"
-msgstr ""
+msgstr "Esedékes összeg"
#. module: account_followup
#: field:account.move.line,followup_date:0
msgid "Latest Follow-up"
-msgstr "Legutolsó fizetési emlékeztető"
+msgstr "Legutobbi fizetési emlékeztető"
#. module: account_followup
#: view:account_followup.sending.results:0
msgid "Download Letters"
-msgstr ""
+msgstr "Levelek letöltése"
#. module: account_followup
#: field:account_followup.print,company_id:0
#: field:res.partner,unreconciled_aml_ids:0
msgid "unknown"
-msgstr ""
+msgstr "ismeretlen"
#. module: account_followup
#: code:addons/account_followup/account_followup.py:314
#, python-format
msgid "Printed overdue payments report"
-msgstr ""
+msgstr "Lejárt fizetési tételek jelentésének nyomtatása"
#. module: account_followup
#: help:account_followup.followup.line,manual_action:0
msgid ""
"When processing, it will set the manual action to be taken for that "
"customer. "
-msgstr ""
+msgstr "Végrehajtáskor, a vevőhöz a kézi műveletet fogja beállítani. "
#. module: account_followup
#: view:res.partner:0
@@ -721,18 +876,25 @@ msgid ""
" order to exclude it from the next follow-up "
"actions."
msgstr ""
+"Alább a vevő ügyleteinek története.\n"
+" Ellenőrizheti a \"Nincs fizetési-emlékeztető\" "
+"soron\n"
+" a következő fizetési-emlékeztető műveletekből "
+"való kizárását."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:171
#, python-format
msgid " email(s) should have been sent, but "
-msgstr ""
+msgstr " ki kellett volna küldeni az e-mail(ek)t, de "
#. module: account_followup
#: help:account_followup.print,test_print:0
msgid ""
"Check if you want to print follow-ups without changing follow-ups level."
msgstr ""
+"Ellenőrizze, hogy a fizetési-emlékeztető szintek változtatása nélkül "
+"szeretné a fizetési-emlékeztetők nyomtatást."
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_move_line
@@ -742,12 +904,12 @@ msgstr "Könyvelési tételsorok"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Total:"
-msgstr ""
+msgstr "Összesen:"
#. module: account_followup
#: field:account_followup.followup.line,email_template_id:0
msgid "Email Template"
-msgstr ""
+msgstr "E-mail sablon"
#. module: account_followup
#: field:account_followup.print,summary:0
@@ -758,7 +920,7 @@ msgstr "Összegzés"
#: view:account_followup.followup.line:0
#: field:account_followup.followup.line,send_email:0
msgid "Send an Email"
-msgstr ""
+msgstr "Egy E-amil küldése"
#. module: account_followup
#: field:account_followup.stat,credit:0
@@ -768,7 +930,7 @@ msgstr "Követel"
#. module: account_followup
#: field:res.partner,payment_amount_overdue:0
msgid "Amount Overdue"
-msgstr ""
+msgstr "Lejárt összeg"
#. module: account_followup
#: help:res.partner,latest_followup_level_id_without_lit:0
@@ -776,12 +938,14 @@ msgid ""
"The maximum follow-up level without taking into account the account move "
"lines with litigation"
msgstr ""
+"A maximum fizetési-emlékeztető szint ami megtehető anélkül, hogy az ne "
+"kerüljön peres eléjárásra"
#. module: account_followup
#: view:account_followup.stat:0
#: field:res.partner,latest_followup_date:0
msgid "Latest Follow-up Date"
-msgstr ""
+msgstr "Legutóbbi fizetési-emlékeztető dátuma."
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_default
@@ -814,6 +978,34 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+" \n"
+"
Tisztelt ${object.name},
\n"
+"
\n"
+" Ha időközben kiegyenlítésre került, vagy a mi hibánkból adódóan téves, "
+"akkor tárgytalan, \n"
+"de adataink szerint a következő tétel kifizetés nélkül maradt. \n"
+"Kérjük Önöket a fizetés 8 napon belüli pontos teljesítésére.\n"
+"Ha a levél elküldése előtt a fizetés már megtörtént akkor kérjük tekintsék "
+"ezt tárgytalannak. Kérjük vegyék fel a kapcsolatot könyvelési "
+"csoportunkkal. \n"
+"
\n"
+" "
#. module: account_followup
#: field:account.move.line,result:0
@@ -826,17 +1018,17 @@ msgstr "Egyenleg"
#. module: account_followup
#: help:res.partner,payment_note:0
msgid "Payment Note"
-msgstr ""
+msgstr "Megjegyzés a fizetéshez"
#. module: account_followup
#: view:res.partner:0
msgid "My Follow-ups"
-msgstr ""
+msgstr "Fizetési-emlékeztetőim"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(company_name)s"
-msgstr ""
+msgstr "%(company_name)s"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line1
@@ -854,6 +1046,18 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Dear %(partner_name)s,\n"
+"\n"
+" Ha időközben kiegyenlítésre került, vagy a mi hibánkból adódóan téves, "
+"akkor tárgytalan, de adataink szerint a következő tétel kifizetés nélkül "
+"maradt. Kérjük Önöket a fizetés 8 napon belüli pontos teljesítésére.\n"
+"\n"
+"Ha a levél elküldése előtt a fizetés már megtörtént akkor kérjük tekintsék "
+"ezt tárgytalannak. Kérjük vegyék fel a kapcsolatot könyvelési "
+"csoportunkkal. \n"
+"\n"
+"Üdvözlettel,\n"
#. module: account_followup
#: field:account_followup.stat,date_move_last:0
@@ -870,12 +1074,12 @@ msgstr "Időszak"
#: code:addons/account_followup/wizard/account_followup_print.py:228
#, python-format
msgid "%s partners have no credits and as such the action is cleared"
-msgstr ""
+msgstr "%s a partnernek nincs hitele azért a művelet törölve lett"
#. module: account_followup
#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
msgid "Follow-up Report"
-msgstr ""
+msgstr "Fizetési-emlékeztető jelentés"
#. module: account_followup
#: view:res.partner:0
@@ -883,6 +1087,8 @@ msgid ""
", the latest payment follow-up\n"
" was:"
msgstr ""
+", a legutóbbi fizetési-emlékeztető kifizetés\n"
+" ez volt:"
#. module: account_followup
#: view:account_followup.print:0
@@ -892,7 +1098,7 @@ msgstr "Mégse"
#. module: account_followup
#: view:account_followup.sending.results:0
msgid "Close"
-msgstr ""
+msgstr "Lezár"
#. module: account_followup
#: view:account_followup.stat:0
@@ -908,23 +1114,23 @@ msgstr "Maximális fizetési emlékeztető szint"
#: code:addons/account_followup/wizard/account_followup_print.py:171
#, python-format
msgid " had unknown email address(es)"
-msgstr ""
+msgstr " ismeretlen e-mail címe(i) van(nak)"
#. module: account_followup
#: view:res.partner:0
msgid "Responsible"
-msgstr ""
+msgstr "Felelős"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.menu_finance_followup
#: view:res.partner:0
msgid "Payment Follow-up"
-msgstr ""
+msgstr "Fizetési-emlékeztető kifizetés"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": Current Date"
-msgstr ""
+msgstr ": Jelenlegi dátum"
#. module: account_followup
#: view:account_followup.print:0
@@ -933,16 +1139,20 @@ msgid ""
" set the manual actions per customer, according to "
"the follow-up levels defined."
msgstr ""
+"Ez a művelet fizetési-emlékeztető e-mail küldéseket indít, levelet nyomtat "
+"és\n"
+" beállítja a vevőnkénti kézi műveletet, a fizetési-"
+"emlékeztető szintek beállításának megfelelően."
#. module: account_followup
#: field:account_followup.followup.line,name:0
msgid "Follow-Up Action"
-msgstr ""
+msgstr "Fizetési-emlékeztető művelet"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Including journal entries marked as a litigation"
-msgstr ""
+msgstr "Beleértve a peres megjelölésű jelentés bejegyzéseket"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -955,7 +1165,7 @@ msgstr "Megjegyzés"
#. module: account_followup
#: view:account_followup.sending.results:0
msgid "Summary of actions"
-msgstr ""
+msgstr "Műveletek összegzése"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -965,7 +1175,7 @@ msgstr "Hiv."
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "After"
-msgstr ""
+msgstr "Utána"
#. module: account_followup
#: view:account_followup.stat:0
@@ -975,7 +1185,7 @@ msgstr "Tárgyév"
#. module: account_followup
#: field:res.partner,latest_followup_level_id_without_lit:0
msgid "Latest Follow-up Level without litigation"
-msgstr ""
+msgstr "Legitóbbi per nélküli fizetési-emlékeztetőt szint"
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_account_manual_reconcile_receivable
@@ -985,6 +1195,10 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Nem talált jelentés tartalmat.\n"
+"
\n"
+" "
#. module: account_followup
#: view:account.move.line:0
@@ -994,7 +1208,7 @@ msgstr "Partner tételek"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Follow-up lines"
-msgstr ""
+msgstr "Fizetési emlékeztető sorok"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line3
@@ -1015,6 +1229,21 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Tisztelt %(partner_name)s,\n"
+"\n"
+" A többszörös fizetési-emlékeztető ellenére, még mindig nem történt meg a "
+"számla kiegyenlítése.\n"
+"Ha nem történik meg a kiegyenlítés 8 napon belül, törvényes úton vagyunk "
+"kénytelenek az adósságot behajtani, minden további felszólítás nélkül.\n"
+"\n"
+"Úgy gondoljuk, hogy ez nem lesz szükséges lépés a lenti részletekkel "
+"kapcsolatban.\n"
+"\n"
+"Az üggyel kapcsolatban felmerült kérdésekben, kérjük vegyék fel a "
+"kapcsolatot a könyvelési csoportunkkal.\n"
+"\n"
+"Üdvözlettel,\n"
#. module: account_followup
#: help:account_followup.print,partner_lang:0
@@ -1036,6 +1265,13 @@ msgid ""
"installed\n"
" using to top right icon."
msgstr ""
+"Írja ide ennek a levélnek a levél bemutatását,\n"
+" a fizetési-emlékeztető szint szerint. "
+"Használhatóak a\n"
+" következő kulcsszavak a szövegben. Meg kell "
+"lennie\n"
+" az összes jobb felső ikon szerinti nyelv "
+"fordításban is!"
#. module: account_followup
#: view:account_followup.stat:0
@@ -1051,7 +1287,7 @@ msgstr "Név"
#. module: account_followup
#: field:res.partner,latest_followup_level_id:0
msgid "Latest Follow-up Level"
-msgstr ""
+msgstr "Legitóbbi fizetési-emlékeztető szint"
#. module: account_followup
#: field:account_followup.stat,date_move:0
@@ -1062,23 +1298,23 @@ msgstr "Első tétel"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat_by_partner
msgid "Follow-up Statistics by Partner"
-msgstr ""
+msgstr "Fizetési-emlékeztető partnerenkénti statisztika"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:172
#, python-format
msgid " letter(s) in report"
-msgstr ""
+msgstr " level(ek) a jelentésben"
#. module: account_followup
#: view:res.partner:0
msgid "Partners with Overdue Credits"
-msgstr ""
+msgstr "Lejárt fizetési hitelekkel rendelkező partnerek"
#. module: account_followup
#: view:res.partner:0
msgid "Customer Followup"
-msgstr ""
+msgstr "Vevői fizetési-emlékeztető"
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_account_followup_definition_form
@@ -1094,22 +1330,33 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Kattintson a fizetési-emlékeztető szint és műveletének "
+"létrehozásához.\n"
+"
\n"
+" Minden lépéshez, határozza meg a műveletet amit a lejárat "
+"után annyi nappal el fog végezni.\n"
+" Lehetséges nyomtatás és e-mail sablon használatával egy "
+"üzenet eljuttatása a vevő\n"
+" részére.\n"
+"
\n"
+" "
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:166
#, python-format
msgid "Follow-up letter of "
-msgstr ""
+msgstr "Fizetési-emlékeztető levél ide "
#. module: account_followup
#: view:res.partner:0
msgid "The"
-msgstr ""
+msgstr "A"
#. module: account_followup
#: view:account_followup.print:0
msgid "Send follow-ups"
-msgstr ""
+msgstr "Fizetési-emlékeztető küldése"
#. module: account_followup
#: view:account.move.line:0
@@ -1124,7 +1371,7 @@ msgstr "Sorszám"
#. module: account_followup
#: view:res.partner:0
msgid "Follow-ups To Do"
-msgstr ""
+msgstr "Még végrehejtandó fizetési-emlékeztető"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -1143,26 +1390,30 @@ msgid ""
"the reminder. Could be negative if you want to send a polite alert "
"beforehand."
msgstr ""
+"A számla lejárati dátuma utáni napok száma, amíg várakozik a felszólítás "
+"küldése előtt. Negatív is lehet, ha egy udvarias levelet szeretne küldeni a "
+"lejárati dátumra vonatkozólag."
#. module: account_followup
#: help:res.partner,latest_followup_date:0
msgid "Latest date that the follow-up level of the partner was changed"
msgstr ""
+"Legutóbbi dátum amikor a vevőnek a fizetési-emlékeztető szintje változott"
#. module: account_followup
#: field:account_followup.print,test_print:0
msgid "Test Print"
-msgstr ""
+msgstr "Nyomtatás teszt"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": User Name"
-msgstr ""
+msgstr ": Felhasználó neve"
#. module: account_followup
#: view:res.partner:0
msgid "Accounting"
-msgstr ""
+msgstr "Könyvelés"
#. module: account_followup
#: field:account_followup.stat,blocked:0
@@ -1172,7 +1423,7 @@ msgstr "Zárolt"
#. module: account_followup
#: field:res.partner,payment_note:0
msgid "Customer Payment Promise"
-msgstr ""
+msgstr "Vevő fizetésre vonatkozó igérete"
#, python-format
#~ msgid "Follwoup Summary"
diff --git a/addons/account_followup/i18n/nl_BE.po b/addons/account_followup/i18n/nl_BE.po
index 1a92e60dfc9..64a73d776ef 100644
--- a/addons/account_followup/i18n/nl_BE.po
+++ b/addons/account_followup/i18n/nl_BE.po
@@ -1,20 +1,21 @@
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
-# * account_followup
-#
+# * account_followup
+# Els Van Vossel , 2013.
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-12-17 09:57+0000\n"
-"Last-Translator: Niels Huylebroeck \n"
-"Language-Team: \n"
+"PO-Revision-Date: 2013-04-15 23:02+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
+"Language-Team: Els Van Vossel\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:11+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-17 05:15+0000\n"
+"X-Generator: Launchpad (build 16567)\n"
+"Language: nl\n"
#. module: account_followup
#: model:email.template,subject:account_followup.email_template_account_followup_default
@@ -22,12 +23,12 @@ msgstr ""
#: model:email.template,subject:account_followup.email_template_account_followup_level1
#: model:email.template,subject:account_followup.email_template_account_followup_level2
msgid "${user.company_id.name} Payment Reminder"
-msgstr ""
+msgstr "${user.company_id.name} Aanmaning"
#. module: account_followup
#: help:res.partner,latest_followup_level_id:0
msgid "The maximum follow-up level"
-msgstr ""
+msgstr "Het maximale aanmaningsniveau"
#. module: account_followup
#: view:account_followup.stat:0
@@ -43,33 +44,33 @@ msgstr "Aanmanen"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(date)s"
-msgstr ""
+msgstr "%(date)s"
#. module: account_followup
#: field:res.partner,payment_next_action_date:0
msgid "Next Action Date"
-msgstr ""
+msgstr "Volgende actiedatum"
#. module: account_followup
#: view:account_followup.followup.line:0
#: field:account_followup.followup.line,manual_action:0
msgid "Manual Action"
-msgstr ""
+msgstr "Manuele actie"
#. module: account_followup
#: field:account_followup.sending.results,needprinting:0
msgid "Needs Printing"
-msgstr ""
+msgstr "Moet worden afgedrukt"
#. module: account_followup
#: view:res.partner:0
msgid "⇾ Mark as Done"
-msgstr ""
+msgstr "⇾ Als Gedaan markeren"
#. module: account_followup
#: field:account_followup.followup.line,manual_action_note:0
msgid "Action To Do"
-msgstr ""
+msgstr "Uit te voeren actie"
#. module: account_followup
#: field:account_followup.followup,company_id:0
@@ -89,39 +90,39 @@ msgstr "Factuurdatum"
#. module: account_followup
#: field:account_followup.print,email_subject:0
msgid "Email Subject"
-msgstr "E-mail onderwerp"
+msgstr "E-mailonderwerp"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(user_signature)s"
-msgstr ""
+msgstr "%(user_signature)s"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "days overdue, do the following actions:"
-msgstr ""
+msgstr "dagen vervallen, voer volgende acties uit:"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "Follow-up Steps"
-msgstr ""
+msgstr "Aanmaningsstappen"
#. module: account_followup
#: field:account_followup.print,email_body:0
msgid "Email Body"
-msgstr ""
+msgstr "E-mailbericht"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print
msgid "Send Follow-Ups"
-msgstr ""
+msgstr "Aanmaningen versturen"
#. module: account_followup
#: report:account_followup.followup.print:0
#: code:addons/account_followup/account_followup.py:263
#, python-format
msgid "Amount"
-msgstr ""
+msgstr "Bedrag"
#. module: account_followup
#: help:res.partner,payment_next_action:0
@@ -129,11 +130,14 @@ msgid ""
"This is the next action to be taken. It will automatically be set when the "
"partner gets a follow-up level that requires a manual action. "
msgstr ""
+"Dit is de volgende actie die moet worden ondernomen. Deze wordt automatisch "
+"ingesteld als de relatie een aanmaningsniveau bereikt waarvoor een manuele "
+"actie is vereist. "
#. module: account_followup
#: view:res.partner:0
msgid "No Responsible"
-msgstr ""
+msgstr "Niemand verantwoordelijk"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line2
@@ -158,6 +162,24 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Beste %(partner_name)s,\n"
+"\n"
+"Het spijt ons te moeten vaststellen dat, ondanks een eerdere aanmaning, u "
+"nog steeds een openstaand saldo hebt.\n"
+"\n"
+"Wij verzoeken u dringend het openstaande saldo te betalen. Bij gebrek aan "
+"betaling, zijn wij genoodzaakt de verdere levering van goederen en diensten "
+"stop te zetten.\n"
+"Gelieve de betalingen uit te voeren binnen de 8 dagen.\n"
+"\n"
+"Als er een probleem is rond de betaling waarvan wij niet op de hoogte zijn, "
+"kunt u steeds contact opnemen met onze boekhouding, zodat dit snel kan "
+"worden opgelost.\n"
+"\n"
+"Hierna vindt u een overzicht van de vervallen documenten.\n"
+"\n"
+"Hoogachtend,\n"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_level0
@@ -195,6 +217,38 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+"\n"
+"
Beste ${object.name},
\n"
+"
\n"
+" Volgens onze informatie, heeft u nog een openstaand saldo. Wij verzoeken "
+"u het nodige te doen om deze betaling binnen de 8 dagen over te schrijven op "
+"onze rekening.\n"
+"\n"
+"Indien uw betaling deze e-mail heeft gekruist, mag u dit bericht als "
+"onbestaand beschouwen. Neem gerust contact op met onze boekhouding mocht u "
+"nog vragen hebben.\n"
+"\n"
+"
\n"
+" "
#. module: account_followup
#: view:account_followup.stat.by.partner:0
@@ -209,17 +263,17 @@ msgstr "Totaal debet"
#. module: account_followup
#: field:res.partner,payment_next_action:0
msgid "Next Action"
-msgstr ""
+msgstr "Volgende actie"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": Partner Name"
-msgstr ""
+msgstr "Relatienaam"
#. module: account_followup
#: field:account_followup.followup.line,manual_action_responsible_id:0
msgid "Assign a Responsible"
-msgstr ""
+msgstr "Duid iemand aan die verantwoordelijk is"
#. module: account_followup
#: view:account_followup.followup:0
@@ -231,7 +285,7 @@ msgstr "Aanmaning"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "VAT:"
-msgstr "BTW:"
+msgstr "Btw:"
#. module: account_followup
#: view:account_followup.stat:0
@@ -255,11 +309,24 @@ msgid ""
" same customer, the actions of the most \n"
" overdue invoice will be executed."
msgstr ""
+"Om klanten aan te manen tot betaling, kunt u\n"
+" verschillende acties instellen in functie van de "
+"grootte\n"
+" van het openstaand bedrag. Deze acties worden "
+"samengevoegd\n"
+" in aanmaningsniveaus die worden aangesproken als de\n"
+" vervaldatum van een factuur een ingesteld aantal "
+"dagen\n"
+" overschrijdt. Als de klant ook andere openstaande "
+"facturen heeft,\n"
+" worden de acties uitgevoerd in functie van het "
+"langst \n"
+" openstaande document."
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Date :"
-msgstr "Datum :"
+msgstr "Datum:"
#. module: account_followup
#: field:account_followup.print,partner_ids:0
@@ -269,43 +336,43 @@ msgstr "Relaties"
#. module: account_followup
#: sql_constraint:account_followup.followup:0
msgid "Only one follow-up per company is allowed"
-msgstr ""
+msgstr "Per bedrijf is maar een aanmaningsniveau toegelaten."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:254
#, python-format
msgid "Invoices Reminder"
-msgstr "Facturen aanmaning"
+msgstr "Aanmaning facturen"
#. module: account_followup
#: help:account_followup.followup.line,send_letter:0
msgid "When processing, it will print a letter"
-msgstr ""
+msgstr "Bij verwerking wordt een brief gemaakt"
#. module: account_followup
#: field:res.partner,payment_earliest_due_date:0
msgid "Worst Due Date"
-msgstr ""
+msgstr "Slechtste vervaldatum"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Not Litigation"
-msgstr ""
+msgstr "Geen betwisting"
#. module: account_followup
#: view:account_followup.print:0
msgid "Send emails and generate letters"
-msgstr ""
+msgstr "Verstuur e-mails en maak brieven"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_customer_followup
msgid "Manual Follow-Ups"
-msgstr ""
+msgstr "Manuele aanmaningen"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(partner_name)s"
-msgstr ""
+msgstr "%(partner_name)s"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_level1
@@ -347,6 +414,42 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+" \n"
+"
Beste ${object.name},
\n"
+"
\n"
+" Het spijt ons te moeten vaststellen dat, ondanks een eerdere aanmaning, "
+"u nog steeds een openstaand saldo hebt.\n"
+"Wij verzoeken u dringend het openstaande saldo te betalen. Bij gebrek aan "
+"betaling, zijn wij genoodzaakt de verdere levering van goederen en diensten "
+"stop te zetten.\n"
+"Gelieve de betalingen uit te voeren binnen de 8 dagen.\n"
+"\n"
+"Als er een probleem is rond de betaling waarvan wij niet op de hoogte zijn, "
+"kunt u steeds contact opnemen met onze boekhouding, zodat dit snel kan "
+"worden opgelost.\n"
+"\n"
+"Hierna vindt u een overzicht van de vervallen documenten.\n"
+"
\n"
+" "
#. module: account_followup
#: field:account_followup.stat,debit:0
@@ -356,49 +459,49 @@ msgstr "Debet"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat
msgid "Follow-up Statistics"
-msgstr ""
+msgstr "Aanmaningsstatistieken"
#. module: account_followup
#: view:res.partner:0
msgid "Send Overdue Email"
-msgstr ""
+msgstr "Aanmaningsmail sturen"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup_line
msgid "Follow-up Criteria"
-msgstr ""
+msgstr "Aanmaningscriteria"
#. module: account_followup
#: help:account_followup.followup.line,sequence:0
msgid "Gives the sequence order when displaying a list of follow-up lines."
-msgstr "Bepaalt de volgorde bij het afbeelden van de aanmaningregels"
+msgstr "Bepaalt de volgorde bij het weergeven van de aanmaningslijnen."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:166
#, python-format
msgid " will be sent"
-msgstr ""
+msgstr " wordt verstuurd"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": User's Company Name"
-msgstr ""
+msgstr "Bedrijfsnaam van gebruiker"
#. module: account_followup
#: view:account_followup.followup.line:0
#: field:account_followup.followup.line,send_letter:0
msgid "Send a Letter"
-msgstr ""
+msgstr "Brief sturen"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form
msgid "Payment Follow-ups"
-msgstr ""
+msgstr "Aanmaningen"
#. module: account_followup
#: field:account_followup.followup.line,delay:0
msgid "Due Days"
-msgstr ""
+msgstr "Dagen vervallen"
#. module: account_followup
#: field:account.move.line,followup_line_id:0
@@ -414,48 +517,48 @@ msgstr "Laatste aanmaning"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.menu_manual_reconcile_followup
msgid "Reconcile Invoices & Payments"
-msgstr ""
+msgstr "Facturen en betalingen afpunten"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.account_followup_s
msgid "Do Manual Follow-Ups"
-msgstr ""
+msgstr "Manuele aanmaningen uitvoeren"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Li."
-msgstr ""
+msgstr "Bt."
#. module: account_followup
#: field:account_followup.print,email_conf:0
msgid "Send Email Confirmation"
-msgstr ""
+msgstr "Bevestiging per e-mail sturen"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Follow-up Entries with period in current year"
-msgstr ""
+msgstr "Aanmaningen met periode in huidig jaar"
#. module: account_followup
#: field:account_followup.stat.by.partner,date_followup:0
msgid "Latest follow-up"
-msgstr ""
+msgstr "Laatste aanmaning"
#. module: account_followup
#: field:account_followup.print,partner_lang:0
msgid "Send Email in Partner Language"
-msgstr "Stuur email-bericht in taal relatie"
+msgstr "Stuur e-mail in taal relatie"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:169
#, python-format
msgid " email(s) sent"
-msgstr ""
+msgstr " e-mail(s) verstuurd"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_print
msgid "Print Follow-up & Send Mail to Customers"
-msgstr ""
+msgstr "Aanmaningen afdrukken & mail sturen naar klanten"
#. module: account_followup
#: field:account_followup.followup.line,description:0
@@ -466,12 +569,12 @@ msgstr "Afgedrukt bericht"
#: code:addons/account_followup/wizard/account_followup_print.py:155
#, python-format
msgid "Anybody"
-msgstr ""
+msgstr "Iedereen"
#. module: account_followup
#: help:account_followup.followup.line,send_email:0
msgid "When processing, it will send an email"
-msgstr ""
+msgstr "Bij verwerking wordt een e-mail verstuurd"
#. module: account_followup
#: view:account_followup.stat.by.partner:0
@@ -481,7 +584,7 @@ msgstr "Relatie voor aanmaning"
#. module: account_followup
#: view:res.partner:0
msgid "Print Overdue Payments"
-msgstr ""
+msgstr "Vervallen documenten afdrukken"
#. module: account_followup
#: field:account_followup.followup.line,followup_id:0
@@ -494,11 +597,13 @@ msgstr "Aanmaningen"
#, python-format
msgid "Email not sent because of email address of partner not filled in"
msgstr ""
+"E-mail is niet verstuurd, omdat er voor de relatie geen e-mailadres is "
+"ingevuld."
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup
msgid "Account Follow-up"
-msgstr ""
+msgstr "Aanmaningen"
#. module: account_followup
#: help:res.partner,payment_responsible_id:0
@@ -506,11 +611,13 @@ msgid ""
"Optionally you can assign a user to this field, which will make him "
"responsible for the action."
msgstr ""
+"U kunt eventueel een gebruiker toewijzen aan dit veld. Dit betekent dat hij "
+"verantwoordelijk is voor deze actie."
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_sending_results
msgid "Results from the sending of the different letters and emails"
-msgstr ""
+msgstr "Resultaten van het versturen van brieven en e-mails"
#. module: account_followup
#: constraint:account_followup.followup.line:0
@@ -518,43 +625,45 @@ msgid ""
"Your description is invalid, use the right legend or %% if you want to use "
"the percent character."
msgstr ""
+"Uw beschrijving is niet geldig. Gebruik de juiste parameter of %% als u het "
+"percentageteken wilt gebruiken."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:172
#, python-format
msgid " manual action(s) assigned:"
-msgstr ""
+msgstr " manuele actie(s) toegewezen"
#. module: account_followup
#: view:res.partner:0
msgid "Search Partner"
-msgstr ""
+msgstr "Relatie zoeken"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.account_followup_print_menu
msgid "Send Letters and Emails"
-msgstr ""
+msgstr "Brieven en e-mails sturen"
#. module: account_followup
#: view:account_followup.followup:0
msgid "Search Follow-up"
-msgstr ""
+msgstr "Aanmaningen zoeken"
#. module: account_followup
#: view:res.partner:0
msgid "Account Move line"
-msgstr ""
+msgstr "Boeking"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:237
#, python-format
msgid "Send Letters and Emails: Actions Summary"
-msgstr ""
+msgstr "Brieven en e-mails sturen: overzicht acties"
#. module: account_followup
#: view:account_followup.print:0
msgid "or"
-msgstr ""
+msgstr "of"
#. module: account_followup
#: view:res.partner:0
@@ -562,21 +671,23 @@ msgid ""
"If not specified by the latest follow-up level, it will send from the "
"default email template"
msgstr ""
+"Indien dit niet is ingesteld via de laatste aanmaning, dan wordt de "
+"standaard e-mailsjabloon gebruikt."
#. module: account_followup
#: sql_constraint:account_followup.followup.line:0
msgid "Days of the follow-up levels must be different"
-msgstr ""
+msgstr "De dagen moeten verschillen per aanmaningsniveau."
#. module: account_followup
#: view:res.partner:0
msgid "Click to mark the action as done."
-msgstr ""
+msgstr "Klik om de actie als Gedaan te markeren."
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.menu_action_followup_stat_follow
msgid "Follow-Ups Analysis"
-msgstr ""
+msgstr "Aanmaningsanalyse"
#. module: account_followup
#: help:res.partner,payment_next_action_date:0
@@ -586,11 +697,15 @@ msgid ""
"action. Can be practical to set manually e.g. to see if he keeps his "
"promises."
msgstr ""
+"Dit is als er manuele opvolging nodig is. De datum wordt ingesteld op de "
+"huidige datum als de relatie een aanmaningsniveau bereikt waarvoor een "
+"manuele handeling nodig is. Kan handig zijn om dit als manueel in te "
+"stellen, vb. om na te gaan of beloften worden nagekomen."
#. module: account_followup
#: view:res.partner:0
msgid "Print overdue payments report independent of follow-up line"
-msgstr ""
+msgstr "Aanmaningen afdrukken onafgezien van de aanmaningslijn."
#. module: account_followup
#: help:account_followup.print,date:0
@@ -609,7 +724,7 @@ msgstr "Verzenddatum aanmaning"
#: view:res.partner:0
#: field:res.partner,payment_responsible_id:0
msgid "Follow-up Responsible"
-msgstr ""
+msgstr "Verantwoordelijk voor aanmaning"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_level2
@@ -646,16 +761,48 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+" \n"
+"
Beste ${object.name},
\n"
+"
\n"
+" Ondanks het feit dat wij u meerdere aanmaningen hebben gestuurd, is uw "
+"openstaand saldo nog steeds niet betaald.\n"
+"Indien de betaling ervan niet binnen de 8 dagen op onze rekening staat, "
+"schakelen wij een advocaat in om het verschuldigde saldo bij u te innen. U "
+"ontvangt hierover geen verdere communicatie.\n"
+"Wij gaan ervan uit dat deze stap niet nodig zal zijn. De details van de "
+"openstaande betalingen vindt u hierna.\n"
+"Aarzel niet contact op te nemen met onze boekhouding als u nog vragen "
+"heeft.\n"
+"
\n"
+" "
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Document : Customer account statement"
-msgstr ""
+msgstr "Document: Rekeninguittreksel"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.account_followup_menu
msgid "Follow-up Levels"
-msgstr ""
+msgstr "Aanmaningsniveaus"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line4
@@ -678,11 +825,27 @@ msgid ""
"Best Regards,\n"
" "
msgstr ""
+"\n"
+"Beste %(partner_name)s,\n"
+"\n"
+"Ondanks meerdere aanmaningen, merken wij dat uw saldo nog steeds openstaat.\n"
+"\n"
+"Indien het openstaande saldo niet binnen 8 dagen op onze rekening is gestort "
+", zullen wij een advocaat inschakelen. Wij sturen in dat verband geen "
+"bericht meer.\n"
+"\n"
+"Wij gaan ervan uit dat deze actie niet nodig zal zijn. Details van de "
+"openstaande documenten vindt u hierbij.\n"
+"\n"
+"Aarzel niet contact op te nemen met de boekhouding als u nog vragen heeft.\n"
+"\n"
+"Hoogachtend,\n"
+" "
#. module: account_followup
#: field:res.partner,payment_amount_due:0
msgid "Amount Due"
-msgstr ""
+msgstr "Vervallen bedrag"
#. module: account_followup
#: field:account.move.line,followup_date:0
@@ -692,19 +855,19 @@ msgstr "Laatste aanmaning"
#. module: account_followup
#: view:account_followup.sending.results:0
msgid "Download Letters"
-msgstr ""
+msgstr "Brieven downloaden"
#. module: account_followup
#: field:account_followup.print,company_id:0
#: field:res.partner,unreconciled_aml_ids:0
msgid "unknown"
-msgstr ""
+msgstr "onbekend"
#. module: account_followup
#: code:addons/account_followup/account_followup.py:314
#, python-format
msgid "Printed overdue payments report"
-msgstr ""
+msgstr "Afgedrukt aanmaningsrapport"
#. module: account_followup
#: help:account_followup.followup.line,manual_action:0
@@ -712,6 +875,7 @@ msgid ""
"When processing, it will set the manual action to be taken for that "
"customer. "
msgstr ""
+"Bij verwerking zal de manuele actie voor die klant worden ingesteld. "
#. module: account_followup
#: view:res.partner:0
@@ -721,18 +885,25 @@ msgid ""
" order to exclude it from the next follow-up "
"actions."
msgstr ""
+"Hieronder vindt u een overzicht van de transacties voor deze\n"
+" klant. U kunt \"Stuur geen aanmaning\" kiezen "
+"om\n"
+" de factuur uit te sluiten van volgende "
+"aanmaningsacties."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:171
#, python-format
msgid " email(s) should have been sent, but "
-msgstr ""
+msgstr " e-mail(s) zouden moeten zijn verstuurd, maar "
#. module: account_followup
#: help:account_followup.print,test_print:0
msgid ""
"Check if you want to print follow-ups without changing follow-ups level."
msgstr ""
+"Schakel dit veld in als u aanmaningen wilt afdrukken zonder het niveau te "
+"veranderen."
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_move_line
@@ -742,23 +913,23 @@ msgstr "Boekingen"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Total:"
-msgstr ""
+msgstr "Totaal:"
#. module: account_followup
#: field:account_followup.followup.line,email_template_id:0
msgid "Email Template"
-msgstr ""
+msgstr "E-mailsjabloon"
#. module: account_followup
#: field:account_followup.print,summary:0
msgid "Summary"
-msgstr ""
+msgstr "Overzicht"
#. module: account_followup
#: view:account_followup.followup.line:0
#: field:account_followup.followup.line,send_email:0
msgid "Send an Email"
-msgstr ""
+msgstr "E-mail versturen"
#. module: account_followup
#: field:account_followup.stat,credit:0
@@ -768,7 +939,7 @@ msgstr "Krediet"
#. module: account_followup
#: field:res.partner,payment_amount_overdue:0
msgid "Amount Overdue"
-msgstr ""
+msgstr "Vervallen bedrag"
#. module: account_followup
#: help:res.partner,latest_followup_level_id_without_lit:0
@@ -776,12 +947,14 @@ msgid ""
"The maximum follow-up level without taking into account the account move "
"lines with litigation"
msgstr ""
+"Het maximale aanmaningsniveau, zonder rekening te houden met boekingen die "
+"worden betwist."
#. module: account_followup
#: view:account_followup.stat:0
#: field:res.partner,latest_followup_date:0
msgid "Latest Follow-up Date"
-msgstr ""
+msgstr "Datum laatste aanmaning"
#. module: account_followup
#: model:email.template,body_html:account_followup.email_template_account_followup_default
@@ -814,6 +987,33 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+"
\n"
+" \n"
+"
Beste ${object.name},
\n"
+"
\n"
+" Volgens onze administratie hebben wij het onderstaande bedrag nog niet "
+"ontvangen. Wij verzoeken\n"
+"u het verschuldigde bedrag uiterlijk binnen 8 dagen over te maken.\n"
+"Indien dit schrijven uw betaling heeft gekruist, kunt u deze herinnering als "
+"niet verzonden beschouwen.\n"
+"Voor meer info kunt u steeds contact opnemen met onze boekhouding.\n"
+"
\n"
+" "
#. module: account_followup
#: field:account.move.line,result:0
@@ -826,17 +1026,17 @@ msgstr "Saldo"
#. module: account_followup
#: help:res.partner,payment_note:0
msgid "Payment Note"
-msgstr ""
+msgstr "Betalingsbewijs"
#. module: account_followup
#: view:res.partner:0
msgid "My Follow-ups"
-msgstr ""
+msgstr "Mijn aanmaningen"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(company_name)s"
-msgstr ""
+msgstr "%(company_name)s"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line1
@@ -854,28 +1054,40 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Beste %(partner_name)s,\n"
+"\n"
+"Volgens onze administratie hebben wij het onderstaande bedrag nog niet "
+"ontvangen. Wij verzoeken u het verschuldigde bedrag binnen 8 dagen over te "
+"maken.\n"
+"\n"
+"Indien dit schrijven uw betaling heeft gekruist, kunt u deze herinnering als "
+"niet verzonden beschouwen.\n"
+"Voor meer info kunt u steeds contact opnemen met onze boekhouding.\n"
+"\n"
+"Hoogachtend,\n"
#. module: account_followup
#: field:account_followup.stat,date_move_last:0
#: field:account_followup.stat.by.partner,date_move_last:0
msgid "Last move"
-msgstr ""
+msgstr "Laatste boeking"
#. module: account_followup
#: field:account_followup.stat,period_id:0
msgid "Period"
-msgstr ""
+msgstr "Periode"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:228
#, python-format
msgid "%s partners have no credits and as such the action is cleared"
-msgstr ""
+msgstr "%s relaties hebben geen schulden en de actie wordt gewist"
#. module: account_followup
#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
msgid "Follow-up Report"
-msgstr ""
+msgstr "Aanmaningsrapport"
#. module: account_followup
#: view:res.partner:0
@@ -883,48 +1095,50 @@ msgid ""
", the latest payment follow-up\n"
" was:"
msgstr ""
+", het laatste aanmaningsniveau\n"
+" was:"
#. module: account_followup
#: view:account_followup.print:0
msgid "Cancel"
-msgstr ""
+msgstr "Annuleren"
#. module: account_followup
#: view:account_followup.sending.results:0
msgid "Close"
-msgstr ""
+msgstr "Afsluiten"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Litigation"
-msgstr ""
+msgstr "Betwist"
#. module: account_followup
#: field:account_followup.stat.by.partner,max_followup_id:0
msgid "Max Follow Up Level"
-msgstr ""
+msgstr "Max. aanmaningsniveau"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:171
#, python-format
msgid " had unknown email address(es)"
-msgstr ""
+msgstr " had een onbekend e-mailadres"
#. module: account_followup
#: view:res.partner:0
msgid "Responsible"
-msgstr ""
+msgstr "Verantwoordelijke"
#. module: account_followup
#: model:ir.ui.menu,name:account_followup.menu_finance_followup
#: view:res.partner:0
msgid "Payment Follow-up"
-msgstr ""
+msgstr "Aanmaningen"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": Current Date"
-msgstr ""
+msgstr ": Huidige datum"
#. module: account_followup
#: view:account_followup.print:0
@@ -933,16 +1147,19 @@ msgid ""
" set the manual actions per customer, according to "
"the follow-up levels defined."
msgstr ""
+"Met deze actie stuurt u aanmaningsmails, kunt u brieven afdrukken en\n"
+" manuele acties instellen per klant, in functie van "
+"de ingestelde aanmaningsniveaus."
#. module: account_followup
#: field:account_followup.followup.line,name:0
msgid "Follow-Up Action"
-msgstr ""
+msgstr "Aanmaningsactie"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Including journal entries marked as a litigation"
-msgstr ""
+msgstr "Inclusief betwiste boekingen"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -955,7 +1172,7 @@ msgstr "Omschrijving"
#. module: account_followup
#: view:account_followup.sending.results:0
msgid "Summary of actions"
-msgstr ""
+msgstr "Overzicht van acties"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -965,17 +1182,17 @@ msgstr "Ref"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "After"
-msgstr ""
+msgstr "Na"
#. module: account_followup
#: view:account_followup.stat:0
msgid "This Fiscal year"
-msgstr ""
+msgstr "Dit boekjaar"
#. module: account_followup
#: field:res.partner,latest_followup_level_id_without_lit:0
msgid "Latest Follow-up Level without litigation"
-msgstr ""
+msgstr "Laatste aanmaningsniveau met betwisting"
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_account_manual_reconcile_receivable
@@ -985,16 +1202,20 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Geen boekingen gevonden.\n"
+"
\n"
+" "
#. module: account_followup
#: view:account.move.line:0
msgid "Partner entries"
-msgstr ""
+msgstr "Relatieboekingen"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Follow-up lines"
-msgstr ""
+msgstr "Aanmaningsregels"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line3
@@ -1015,6 +1236,21 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Beste %(partner_name)s,\n"
+"\n"
+"Ondanks eerdere aanmaningen, heeft u nog steeds een openstaand saldo.\n"
+"\n"
+"Als uw betaling binnen de 8 dagen opnieuw uitblijft, zijn wij genoodzaakt de "
+"vordering definitief uit handen te geven.\n"
+"\n"
+"Wij vertrouwen erop dat u het niet zover zult laten komen. Details van hety "
+"openstaande saldo vindt u hierna.\n"
+"\n"
+"Indien u nog vragen heeft, kunt u steeds contact opnemen met onze "
+"boekhouding.\n"
+"\n"
+"Hoogachtend,\n"
#. module: account_followup
#: help:account_followup.print,partner_lang:0
@@ -1022,6 +1258,8 @@ msgid ""
"Do not change message text, if you want to send email in partner language, "
"or configure from company"
msgstr ""
+"Wijzig de tekst niet als u de e-mail in de taal van de relatie wilt sturen, "
+"of stel de tekst in op firma."
#. module: account_followup
#: view:account_followup.followup.line:0
@@ -1034,12 +1272,18 @@ msgid ""
"installed\n"
" using to top right icon."
msgstr ""
+"Schrijf hier de inleiding van uw brief,\n"
+" in functie van het aanmaningsniveau. U kunt\n"
+" de volgende parameters in de tekst gebruiken. "
+"Vergeet\n"
+" niet all geïnstalleerde talen te vertalen via "
+"het pictogram in de rechterbovenhoek."
#. module: account_followup
#: view:account_followup.stat:0
#: model:ir.actions.act_window,name:account_followup.action_followup_stat
msgid "Follow-ups Sent"
-msgstr ""
+msgstr "Verstuurde aanmaningen"
#. module: account_followup
#: field:account_followup.followup,name:0
@@ -1049,34 +1293,34 @@ msgstr "Naam:"
#. module: account_followup
#: field:res.partner,latest_followup_level_id:0
msgid "Latest Follow-up Level"
-msgstr ""
+msgstr "Laatste aanmaningsniveau"
#. module: account_followup
#: field:account_followup.stat,date_move:0
#: field:account_followup.stat.by.partner,date_move:0
msgid "First move"
-msgstr ""
+msgstr "Eerste boeking"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat_by_partner
msgid "Follow-up Statistics by Partner"
-msgstr ""
+msgstr "Aanmaningsstatistieken per relatie"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:172
#, python-format
msgid " letter(s) in report"
-msgstr ""
+msgstr " brieven in rapport"
#. module: account_followup
#: view:res.partner:0
msgid "Partners with Overdue Credits"
-msgstr ""
+msgstr "Klanten met openstaande facturen"
#. module: account_followup
#: view:res.partner:0
msgid "Customer Followup"
-msgstr ""
+msgstr "Aanmaningen"
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_account_followup_definition_form
@@ -1092,42 +1336,52 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik als u de aanmaningsniveaus wilt instellen met de "
+"daaraan gekoppelde acties.\n"
+"
\n"
+" Per stap kunt u de acties opgeven en ook de dagen vervallen. "
+"U kunt\n"
+" brieven en e-mailsjablonen maken om specifieke berichten "
+"naar de klant te sturen.\n"
+"
\n"
+" "
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:166
#, python-format
msgid "Follow-up letter of "
-msgstr ""
+msgstr "Aanmaningsbrief van "
#. module: account_followup
#: view:res.partner:0
msgid "The"
-msgstr ""
+msgstr "De"
#. module: account_followup
#: view:account_followup.print:0
msgid "Send follow-ups"
-msgstr ""
+msgstr "Aanmaningen versturen"
#. module: account_followup
#: view:account.move.line:0
msgid "Total credit"
-msgstr ""
+msgstr "Totaal credit"
#. module: account_followup
#: field:account_followup.followup.line,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Volgorde"
#. module: account_followup
#: view:res.partner:0
msgid "Follow-ups To Do"
-msgstr ""
+msgstr "Te versturen aanmaningen"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Customer Ref :"
-msgstr ""
+msgstr "Klantenref.:"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -1141,26 +1395,30 @@ msgid ""
"the reminder. Could be negative if you want to send a polite alert "
"beforehand."
msgstr ""
+"Het aantal dagen dat de vervaldatum van de factuur moet zijn overschreden "
+"voordat een aanmaning wordt verstuurd. Kan negatief zijn als u vooraf een "
+"vriendelijk bericht wilt sturen."
#. module: account_followup
#: help:res.partner,latest_followup_date:0
msgid "Latest date that the follow-up level of the partner was changed"
msgstr ""
+"Laatste datum waarop het aanmaningsniveau van de relatie is gewijzigd."
#. module: account_followup
#: field:account_followup.print,test_print:0
msgid "Test Print"
-msgstr ""
+msgstr "Testafdruk"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid ": User Name"
-msgstr ""
+msgstr ": Gberuikersnaam"
#. module: account_followup
#: view:res.partner:0
msgid "Accounting"
-msgstr ""
+msgstr "Boekhouding"
#. module: account_followup
#: field:account_followup.stat,blocked:0
@@ -1170,7 +1428,7 @@ msgstr "Geblokkeerd"
#. module: account_followup
#: field:res.partner,payment_note:0
msgid "Customer Payment Promise"
-msgstr ""
+msgstr "Betalingsbelofte klant"
#~ msgid "All payable entries"
#~ msgstr "Alle crediteuren"
diff --git a/addons/account_followup/report/account_followup_report.py b/addons/account_followup/report/account_followup_report.py
index 9ca8d3c2332..8d120cb88ba 100644
--- a/addons/account_followup/report/account_followup_report.py
+++ b/addons/account_followup/report/account_followup_report.py
@@ -91,6 +91,5 @@ class account_followup_stat(osv.osv):
GROUP BY
l.id, l.partner_id, l.company_id, l.blocked, l.period_id
)""")
-account_followup_stat()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_followup/wizard/account_followup_print.py b/addons/account_followup/wizard/account_followup_print.py
index 37b4300b03f..c14b5c071f6 100644
--- a/addons/account_followup/wizard/account_followup_print.py
+++ b/addons/account_followup/wizard/account_followup_print.py
@@ -72,7 +72,6 @@ class account_followup_stat_by_partner(osv.osv):
GROUP BY
l.partner_id, l.company_id
)""") #Blocked is to take into account litigation
-account_followup_stat_by_partner()
class account_followup_sending_results(osv.osv_memory):
@@ -106,7 +105,6 @@ class account_followup_sending_results(osv.osv_memory):
'description':_get_description,
}
-account_followup_sending_results()
class account_followup_print(osv.osv_memory):
@@ -315,6 +313,5 @@ class account_followup_print(osv.osv_memory):
to_update[str(id)]= {'level': fups[followup_line_id][1], 'partner_id': stat_line_id}
return {'partner_ids': partner_list, 'to_update': to_update}
-account_followup_print()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/account_invoice.py b/addons/account_payment/account_invoice.py
index bcce77a54ce..8fa98780c83 100644
--- a/addons/account_payment/account_invoice.py
+++ b/addons/account_payment/account_invoice.py
@@ -42,6 +42,5 @@ class Invoice(osv.osv):
raise osv.except_osv(_('Error!'), _("You cannot cancel an invoice which has already been imported in a payment order. Remove it from the following payment order : %s."%(payment_order_name)))
return super(Invoice, self).action_cancel(cr, uid, ids, context=context)
-Invoice()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/account_move_line.py b/addons/account_payment/account_move_line.py
index c601d9e8da3..266876db95f 100644
--- a/addons/account_payment/account_move_line.py
+++ b/addons/account_payment/account_move_line.py
@@ -57,6 +57,5 @@ class account_move_line(osv.osv):
raise osv.except_osv(_('Error!'), _('There is no partner defined on the entry line.'))
return line2bank
-account_move_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py
index 2b0fe1271d2..dc001e2e2a3 100644
--- a/addons/account_payment/account_payment.py
+++ b/addons/account_payment/account_payment.py
@@ -62,7 +62,6 @@ class payment_mode(osv.osv):
return {'value': result}
-payment_mode()
class payment_order(osv.osv):
_name = 'payment.order'
@@ -170,7 +169,6 @@ class payment_order(osv.osv):
payment_line_obj.write(cr, uid, payment_line_ids, {'date': False}, context=context)
return super(payment_order, self).write(cr, uid, ids, vals, context=context)
-payment_order()
class payment_line(osv.osv):
_name = 'payment.line'
@@ -417,6 +415,5 @@ class payment_line(osv.osv):
res['communication2']['states']['normal'] = [('readonly', False)]
return res
-payment_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/report/order.rml b/addons/account_payment/report/order.rml
index ca2315d81b1..02675baf0b2 100644
--- a/addons/account_payment/report/order.rml
+++ b/addons/account_payment/report/order.rml
@@ -253,10 +253,10 @@
[[ get_invoice_name(line.ml_inv_ref.id) or '-' ]]
- [[line.date=='False' and '-' or formatLang(line.date,date=True) ]]
+ [[not line.date and '-' or formatLang(line.date,date=True) ]]
- [[ formatLang(line.amount or '-', currency_obj=line.company_currency) ]]
+ [[ formatLang(line.amount or 0.0, currency_obj=line.company_currency) ]]
[[ formatLang(line.amount_currency, currency_obj=line.currency) ]]
diff --git a/addons/account_payment/wizard/account_payment_order.py b/addons/account_payment/wizard/account_payment_order.py
index 4bd969726fe..08d36c45eff 100644
--- a/addons/account_payment/wizard/account_payment_order.py
+++ b/addons/account_payment/wizard/account_payment_order.py
@@ -118,6 +118,5 @@ class payment_order_create(osv.osv_memory):
'target': 'new',
}
-payment_order_create()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/wizard/account_payment_pay.py b/addons/account_payment/wizard/account_payment_pay.py
index 03ff46125f5..5e2dc652068 100644
--- a/addons/account_payment/wizard/account_payment_pay.py
+++ b/addons/account_payment/wizard/account_payment_pay.py
@@ -54,6 +54,5 @@ class account_payment_make_payment(osv.osv_memory):
# id = obj_model.read(cr, uid, [result], ['res_id'])[0]['res_id']
# return obj_act.read(cr, uid, [id])[0]
-account_payment_make_payment()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/wizard/account_payment_populate_statement.py b/addons/account_payment/wizard/account_payment_populate_statement.py
index edd47065e3a..92b1b1452f5 100644
--- a/addons/account_payment/wizard/account_payment_populate_statement.py
+++ b/addons/account_payment/wizard/account_payment_populate_statement.py
@@ -118,6 +118,5 @@ class account_payment_populate_statement(osv.osv_memory):
line_obj.write(cr, uid, [line.id], {'bank_statement_line_id': st_line_id})
return {'type': 'ir.actions.act_window_close'}
-account_payment_populate_statement()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_sequence/account_sequence.py b/addons/account_sequence/account_sequence.py
index 5b344600599..3b8b2335068 100644
--- a/addons/account_sequence/account_sequence.py
+++ b/addons/account_sequence/account_sequence.py
@@ -40,7 +40,6 @@ class account_move(osv.osv):
self.write(cr, uid, [move.id], {'internal_sequence_number': seq_no})
return res
-account_move()
class account_journal(osv.osv):
_inherit = "account.journal"
@@ -49,7 +48,6 @@ class account_journal(osv.osv):
'internal_sequence_id': fields.many2one('ir.sequence', 'Internal Sequence', help="This sequence will be used to maintain the internal number for the journal entries related to this journal."),
}
-account_journal()
class account_move_line(osv.osv):
_inherit = "account.move.line"
@@ -58,6 +56,5 @@ class account_move_line(osv.osv):
'internal_sequence_number': fields.related('move_id','internal_sequence_number', type='char', relation='account.move', help='Internal Sequence Number', string='Internal Number'),
}
-account_move_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_sequence/account_sequence_installer.py b/addons/account_sequence/account_sequence_installer.py
index e800bbad7ee..91316a61962 100644
--- a/addons/account_sequence/account_sequence_installer.py
+++ b/addons/account_sequence/account_sequence_installer.py
@@ -79,6 +79,5 @@ class account_sequence_installer(osv.osv_memory):
ir_values_obj.set(cr, uid, key='default', key2=False, name='internal_sequence_id', models =[('account.journal', False)], value=ir_seq)
return res
-account_sequence_installer()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_test/account_test.py b/addons/account_test/account_test.py
index da7bb8e308d..98e27380837 100644
--- a/addons/account_test/account_test.py
+++ b/addons/account_test/account_test.py
@@ -56,5 +56,4 @@ class accounting_assert_test(osv.osv):
'sequence': 10,
}
-accounting_assert_test()
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index c6f754ed18f..b176c3b8fd9 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -40,7 +40,6 @@ class res_company(osv.osv):
domain="[('type', '=', 'other')]",),
}
-res_company()
class account_config_settings(osv.osv_memory):
_inherit = 'account.config.settings'
@@ -85,7 +84,7 @@ class account_voucher(osv.osv):
if context is None: context = {}
if context.get('period_id', False):
return context.get('period_id')
- periods = self.pool.get('account.period').find(cr, uid)
+ periods = self.pool.get('account.period').find(cr, uid, context=context)
return periods and periods[0] or False
def _make_journal_search(self, cr, uid, ttype, context=None):
@@ -1488,7 +1487,6 @@ class account_voucher_line(osv.osv):
'type':ttype
})
return values
-account_voucher_line()
class account_bank_statement(osv.osv):
_inherit = 'account.bank.statement'
@@ -1540,7 +1538,6 @@ class account_bank_statement(osv.osv):
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)
-account_bank_statement()
class account_bank_statement_line(osv.osv):
_inherit = 'account.bank.statement.line'
@@ -1594,7 +1591,6 @@ class account_bank_statement_line(osv.osv):
voucher_obj.unlink(cr, uid, unlink_ids, context=context)
return super(account_bank_statement_line, self).unlink(cr, uid, ids, context=context)
-account_bank_statement_line()
def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context):
results = []
diff --git a/addons/account_voucher/account_voucher_view.xml b/addons/account_voucher/account_voucher_view.xml
index f429480f656..4674d62b6a0 100644
--- a/addons/account_voucher/account_voucher_view.xml
+++ b/addons/account_voucher/account_voucher_view.xml
@@ -129,7 +129,7 @@
-
+
diff --git a/addons/account_voucher/i18n/hu.po b/addons/account_voucher/i18n/hu.po
index 746ffe5b247..1a50a813042 100644
--- a/addons/account_voucher/i18n/hu.po
+++ b/addons/account_voucher/i18n/hu.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2013-03-26 15:03+0000\n"
+"PO-Revision-Date: 2013-04-04 11:34+0000\n"
"Last-Translator: krnkris \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: 2013-03-27 04:36+0000\n"
-"X-Generator: Launchpad (build 16540)\n"
+"X-Launchpad-Export-Date: 2013-04-05 05:37+0000\n"
+"X-Generator: Launchpad (build 16550)\n"
#. module: account_voucher
#: field:account.bank.statement.line,voucher_id:0
msgid "Reconciliation"
-msgstr ""
+msgstr "Párosítás"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_config_settings
@@ -51,7 +51,7 @@ msgstr "Nyitott vevő tételek"
#: view:account.voucher:0
#: view:sale.receipt.report:0
msgid "Group By..."
-msgstr "Csoportosítás"
+msgstr "Csoportosítás ezzel..."
#. module: account_voucher
#: help:account.voucher,writeoff_amount:0
@@ -102,7 +102,7 @@ msgstr "Számla kifizetése"
#. module: account_voucher
#: view:account.voucher:0
msgid "Are you sure you want to cancel this receipt?"
-msgstr ""
+msgstr "Biztos, hogy vissza akarja vonni ezt a bevételi bizonylatot?"
#. module: account_voucher
#: view:account.voucher:0
@@ -137,6 +137,8 @@ msgid ""
"You can not change the journal as you already reconciled some statement "
"lines!"
msgstr ""
+"Nem tudja a naplót megváltoztatni mivel a kivonatok egyes sorait már "
+"párosította!"
#. module: account_voucher
#: view:account.voucher:0
@@ -160,6 +162,15 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Ha az értékesítési bizonylat igazolva lett, rögzítheti az \n"
+" értékesítéshez tartozó vevői befizetést.\n"
+"
\n"
+" "
#. module: account_voucher
#: help:account.voucher,message_unread:0
msgid "If checked new messages require your attention."
-msgstr ""
+msgstr "Ha be van jelölve, akkor figyelje az új üzeneteket."
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_bank_statement_line
@@ -298,17 +316,17 @@ msgstr "ÁFA"
#: code:addons/account_voucher/account_voucher.py:879
#, python-format
msgid "Invalid Action!"
-msgstr ""
+msgstr "Érvénytelen lépés!"
#. module: account_voucher
#: field:account.voucher,comment:0
msgid "Counterpart Comment"
-msgstr ""
+msgstr "Ellenoldali meglyegyzés"
#. module: account_voucher
#: field:account.voucher.line,account_analytic_id:0
msgid "Analytic Account"
-msgstr "Gyűjtőkód"
+msgstr "Gyűjtő/elemző könyvelés"
#. module: account_voucher
#: help:account.voucher,message_summary:0
@@ -316,11 +334,13 @@ msgid ""
"Holds the Chatter summary (number of messages, ...). This summary is "
"directly in html format in order to be inserted in kanban views."
msgstr ""
+"A chettelés összegzést megállítja (üzenetek száma,...). Ez az összegzés "
+"direkt HTML formátumú ahhoz hogy beilleszthető legyen a kanban nézetekbe."
#. module: account_voucher
#: view:account.voucher:0
msgid "Total Allocation"
-msgstr ""
+msgstr "Összes kiosztás"
#. module: account_voucher
#: view:account.voucher:0
@@ -330,7 +350,7 @@ msgstr "Fizetési információ"
#. module: account_voucher
#: view:account.voucher:0
msgid "(update)"
-msgstr ""
+msgstr "(frissítés)"
#. module: account_voucher
#: view:account.voucher:0
@@ -349,20 +369,20 @@ msgstr "Számlák importálása"
#: code:addons/account_voucher/account_voucher.py:1112
#, python-format
msgid "Wrong voucher line"
-msgstr "Nem megfelelő nyugta sorok"
+msgstr "Nem megfelelő nyugta sor"
#. module: account_voucher
#: selection:account.voucher,pay_now:0
#: selection:sale.receipt.report,pay_now:0
msgid "Pay Later or Group Funds"
-msgstr "Későbbi fizetés"
+msgstr "Fizessen később vagy csoportosítsa a pénzeket"
#. module: account_voucher
#: view:account.voucher:0
#: selection:account.voucher,type:0
#: selection:sale.receipt.report,type:0
msgid "Receipt"
-msgstr "Befizetés"
+msgstr "Bevételi bizonylat"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:1018
@@ -372,6 +392,9 @@ msgid ""
"settings, to manage automatically the booking of accounting entries related "
"to differences between exchange rates."
msgstr ""
+"Be kell állítani a 'Átváltási arány nyereség számlája' a könyvelés "
+"beállításainál, ahhoz, hogy kezelni tudja az automatikus könyvelését azoknak "
+"a számla tételeknek, melyek az átváltási arányok különbségéből adódhatnak."
#. module: account_voucher
#: view:account.voucher:0
@@ -399,7 +422,7 @@ msgstr "Szállítói nyugta"
#. module: account_voucher
#: field:account.voucher,message_follower_ids:0
msgid "Followers"
-msgstr ""
+msgstr "Követők"
#. module: account_voucher
#: selection:account.voucher.line,type:0
@@ -410,13 +433,13 @@ msgstr "Tartozik"
#: code:addons/account_voucher/account_voucher.py:1547
#, python-format
msgid "Unable to change journal !"
-msgstr ""
+msgstr "Naplót nem lehet megváltoztatni !"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,nbr:0
msgid "# of Voucher Lines"
-msgstr "Nyugtasorok száma"
+msgstr "# nyugta sor száma"
#. module: account_voucher
#: view:sale.receipt.report:0
@@ -446,6 +469,13 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Kattintson új beszállítói fizetés létrehozásához.\n"
+"
\n"
+" OpenERP segít a kifizetéseinek, valamint a beszállítók "
+"részére még fizetendő mérleg könnyű nyomon követéséhez.\n"
+"
\n"
+" "
#. module: account_voucher
#: view:account.voucher:0
@@ -460,12 +490,12 @@ msgstr "Nyugta tételek"
#. module: account_voucher
#: field:account.voucher,name:0
msgid "Memo"
-msgstr "Megnevezés"
+msgstr "Emlékeztető"
#. module: account_voucher
#: view:account.voucher:0
msgid "Are you sure to unreconcile and cancel this record ?"
-msgstr ""
+msgstr "Biztosan visszavonja a bejegyzés párosítását?"
#. module: account_voucher
#: field:account.voucher,is_multi_currency:0
@@ -494,17 +524,25 @@ msgid ""
"\n"
"* The 'Cancelled' status is used when user cancel voucher."
msgstr ""
+" * A 'Tervezet' állapotot használja amint egy felhasználó létrehoz egy új és "
+"még le nem igazolt nyugtát. \n"
+"* 'Pro-forma' lesz, ha a nyugta Pro-forma állapotú, a nyugtának még nincs "
+"nyugta száma. \n"
+"* 'Elküldött' állapotú, ha egy felhasználó létrehozta a nyugtát, egy nyugta "
+"számot generált hozzá, és a könyvelésben egy nyugta bevitel létre lett hozva "
+" \n"
+"* A 'Visszavonva' állapot lesz, ha egy felhasználó visszavonta a nyugtát."
#. module: account_voucher
#: field:account.voucher,writeoff_amount:0
msgid "Difference Amount"
-msgstr ""
+msgstr "Különbség számla"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,due_delay:0
msgid "Avg. Due Delay"
-msgstr "Álagos fizetési határidő"
+msgstr "Álagos fizetési késedelem"
#. module: account_voucher
#: code:addons/account_voucher/invoice.py:34
@@ -543,12 +581,24 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Kattintson új kifizetés rögzítéséhez. \n"
+"
\n"
+" Vigye be a vásárlót és a fizetési módot és utána, vagy "
+"hozzon\n"
+" létre kézzel egy fizetési rekordot, vagy az OpenERP fel fog "
+"ajánlani\n"
+" automatikusan a fizetéshez tartozó összeegyeztetést a\n"
+" nyitott számlákkal vagy értékesítési bevételi "
+"bizonylatokkal.\n"
+"
\n"
+" "
#. module: account_voucher
#: field:account.config.settings,expense_currency_exchange_account_id:0
#: field:res.company,expense_currency_exchange_account_id:0
msgid "Loss Exchange Rate Account"
-msgstr ""
+msgstr "Árfolyamveszteség számla"
#. module: account_voucher
#: view:account.voucher:0
@@ -572,7 +622,7 @@ msgstr "Ellenőrizendő"
#: code:addons/account_voucher/account_voucher.py:1194
#, python-format
msgid "change"
-msgstr ""
+msgstr "módosítás"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:1014
@@ -582,6 +632,9 @@ msgid ""
"settings, to manage automatically the booking of accounting entries related "
"to differences between exchange rates."
msgstr ""
+"Be kell állítani a 'Árfolyamveszteség számla' a könyvelés beállításoknál, "
+"ahhoz, hogy kezelni tudja automatikusan a könyvelési tételek rögzítését, "
+"melyek az átváltási árfolyam különbségekkel összefüggenek."
#. module: account_voucher
#: view:account.voucher:0
@@ -599,11 +652,13 @@ msgid ""
"Fields with internal purpose only that depicts if the voucher is a multi "
"currency one or not"
msgstr ""
+"Belső használatú mezők, melyek azt ábrázolják, hogy a nyugták több "
+"pénzneműek vagy nem"
#. module: account_voucher
#: view:account.invoice:0
msgid "Register Payment"
-msgstr "Kifizetés"
+msgstr "Kifizetés rögzítés"
#. module: account_voucher
#: field:account.statement.from.invoice.lines,line_ids:0
@@ -618,7 +673,7 @@ msgstr "December"
#. module: account_voucher
#: view:sale.receipt.report:0
msgid "Group by month of Invoice Date"
-msgstr ""
+msgstr "Csoportosítás számla dátuma alapján"
#. module: account_voucher
#: view:sale.receipt.report:0
@@ -636,7 +691,7 @@ msgstr "Pénznem"
#. module: account_voucher
#: view:account.statement.from.invoice.lines:0
msgid "Payable and Receivables"
-msgstr "Vevők és szállítók"
+msgstr "Fizetendők & Bevételek"
#. module: account_voucher
#: view:account.voucher:0
@@ -651,7 +706,7 @@ msgstr "Nyugta állapota"
#. module: account_voucher
#: view:account.voucher:0
msgid "Are you sure to unreconcile this record?"
-msgstr ""
+msgstr "Biztosan törölni szeretné ennek a rekordnak a párosítását?"
#. module: account_voucher
#: field:account.voucher,company_id:0
@@ -664,18 +719,18 @@ msgstr "Vállalat"
#. module: account_voucher
#: help:account.voucher,paid:0
msgid "The Voucher has been totally paid."
-msgstr "A nyugta ki lett egyenlítve"
+msgstr "A nyugta teljesen ki lett egyenlítve"
#. module: account_voucher
#: selection:account.voucher,payment_option:0
msgid "Reconcile Payment Balance"
-msgstr ""
+msgstr "Fizetési egyenleg párosítás"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:975
#, python-format
msgid "Configuration Error !"
-msgstr ""
+msgstr "Beállítási hiba!"
#. module: account_voucher
#: view:account.voucher:0
@@ -687,7 +742,7 @@ msgstr "Nyugta tervezetek"
#: view:sale.receipt.report:0
#: field:sale.receipt.report,price_total_tax:0
msgid "Total With Tax"
-msgstr "Bruttó érték"
+msgstr "Bruttó érték adóval"
#. module: account_voucher
#: view:account.voucher:0
@@ -699,18 +754,18 @@ msgstr "Beszerzési nyugta"
#: field:account.voucher,state:0
#: view:sale.receipt.report:0
msgid "Status"
-msgstr ""
+msgstr "Állapot"
#. module: account_voucher
#: view:account.voucher:0
msgid "Allocation"
-msgstr ""
+msgstr "Kiosztás"
#. module: account_voucher
#: view:account.statement.from.invoice.lines:0
#: view:account.voucher:0
msgid "or"
-msgstr ""
+msgstr "vagy"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -720,7 +775,7 @@ msgstr "Augusztus"
#. module: account_voucher
#: view:account.voucher:0
msgid "Validate Payment"
-msgstr ""
+msgstr "Fizetés jóváhagyása"
#. module: account_voucher
#: help:account.voucher,audit:0
@@ -728,6 +783,8 @@ msgid ""
"Check this box if you are unsure of that journal entry and if you want to "
"note it as 'to be reviewed' by an accounting expert."
msgstr ""
+"Jelölje be, ha bizonytalan a napló tétel kontírozásában. Ennek hatására "
+"könyvelő szekértő által 'ellenőrizendő'-ként jelölődik meg."
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -738,7 +795,7 @@ msgstr "Október"
#: code:addons/account_voucher/account_voucher.py:976
#, python-format
msgid "Please activate the sequence of selected journal !"
-msgstr ""
+msgstr "Kérem a sorozat aktiválását a kiválasztott naplóra !"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -748,23 +805,23 @@ msgstr "Június"
#. module: account_voucher
#: field:account.voucher,payment_rate_currency_id:0
msgid "Payment Rate Currency"
-msgstr ""
+msgstr "Fizetési pénznem aránya"
#. module: account_voucher
#: field:account.voucher,paid:0
msgid "Paid"
-msgstr ""
+msgstr "Rendezett"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt
msgid "Sales Receipts"
-msgstr ""
+msgstr "Értékesítési bevételi bizonylatok"
#. module: account_voucher
#: field:account.voucher,message_is_follower:0
msgid "Is a Follower"
-msgstr ""
+msgstr "Ez egy követő"
#. module: account_voucher
#: field:account.voucher,analytic_id:0
@@ -791,7 +848,7 @@ msgstr "Kiterjesztett szűrők"
#. module: account_voucher
#: field:account.voucher,paid_amount_in_company_currency:0
msgid "Paid Amount in Company Currency"
-msgstr ""
+msgstr "Kifizetett összeg a vállalat pénznemében"
#. module: account_voucher
#: field:account.bank.statement.line,amount_reconciled:0
@@ -807,7 +864,7 @@ msgstr "Azonnali kifizetés"
#. module: account_voucher
#: field:account.voucher.line,type:0
msgid "Dr/Cr"
-msgstr ""
+msgstr "T/K"
#. module: account_voucher
#: field:account.voucher,pre_line:0
@@ -818,7 +875,7 @@ msgstr "Előző kifizetések ?"
#: code:addons/account_voucher/account_voucher.py:1112
#, python-format
msgid "The invoice you are willing to pay is not valid anymore."
-msgstr ""
+msgstr "A kifizetni kívánt számla már nem érvényes."
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -829,52 +886,52 @@ msgstr "Január"
#: model:ir.actions.act_window,name:account_voucher.action_voucher_list
#: model:ir.ui.menu,name:account_voucher.menu_encode_entries_by_voucher
msgid "Journal Vouchers"
-msgstr "Nyugták"
+msgstr "Nyugták naplói"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_res_company
msgid "Companies"
-msgstr ""
+msgstr "Vállalatok"
#. module: account_voucher
#: field:account.voucher,message_summary:0
msgid "Summary"
-msgstr ""
+msgstr "Összegzés"
#. module: account_voucher
#: field:account.voucher,active:0
msgid "Active"
-msgstr ""
+msgstr "Aktív"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:982
#, python-format
msgid "Please define a sequence on the journal."
-msgstr ""
+msgstr "Kérem egy sorozat meghatározását a naplón."
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.act_pay_voucher
#: model:ir.actions.act_window,name:account_voucher.action_vendor_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_receipt
msgid "Customer Payments"
-msgstr ""
+msgstr "Vevői befizetések"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt_report_all
#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt_report_all
#: view:sale.receipt.report:0
msgid "Sales Receipts Analysis"
-msgstr ""
+msgstr "Értékesítési bevételi bizonylatok elemzései"
#. module: account_voucher
#: view:sale.receipt.report:0
msgid "Group by Invoice Date"
-msgstr ""
+msgstr "Számla dátuma szerinti csoportosítása"
#. module: account_voucher
#: view:account.voucher:0
msgid "Post"
-msgstr "Könyvelés"
+msgstr "Elküld"
#. module: account_voucher
#: view:account.voucher:0
@@ -885,7 +942,7 @@ msgstr "Számlák és kifizetetlen tételek"
#: view:sale.receipt.report:0
#: field:sale.receipt.report,price_total:0
msgid "Total Without Tax"
-msgstr "Nettó érték"
+msgstr "Nettó, adó nélküli érték"
#. module: account_voucher
#: view:account.voucher:0
@@ -921,7 +978,7 @@ msgstr "Bankkivonat"
#. module: account_voucher
#: view:account.bank.statement:0
msgid "onchange_amount(amount)"
-msgstr ""
+msgstr "onchange_amount(amount)"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -954,19 +1011,19 @@ msgstr "Nyugta tételsorok"
#: view:account.statement.from.invoice.lines:0
#: view:account.voucher:0
msgid "Cancel"
-msgstr "Mégsem"
+msgstr "Visszavonás"
#. module: account_voucher
#: model:ir.actions.client,name:account_voucher.action_client_invoice_menu
msgid "Open Invoicing Menu"
-msgstr ""
+msgstr "Számlázási menü megnyitása"
#. module: account_voucher
#: selection:account.voucher,state:0
#: view:sale.receipt.report:0
#: selection:sale.receipt.report,state:0
msgid "Pro-forma"
-msgstr "Pro forma"
+msgstr "Pro-forma"
#. module: account_voucher
#: view:account.voucher:0
@@ -979,6 +1036,8 @@ msgstr "Könyvelési tételsorok"
#, python-format
msgid "Please define default credit/debit accounts on the journal \"%s\"."
msgstr ""
+"Kérem meghatározni az alapértelmezett követelés/tartozás könyvelést a naplón "
+"\"%s\"."
#. module: account_voucher
#: selection:account.voucher,type:0
@@ -995,7 +1054,7 @@ msgstr "Fizetés"
#. module: account_voucher
#: view:account.voucher:0
msgid "Currency Options"
-msgstr ""
+msgstr "Pénznem lehetőségek"
#. module: account_voucher
#: help:account.voucher,payment_option:0
@@ -1005,6 +1064,10 @@ msgid ""
"either choose to keep open this difference on the partner's account, or "
"reconcile it with the payment(s)"
msgstr ""
+"Ez a mező megkönnyíti a választást ahhoz, hogy mit szeretne tenni a "
+"kifizetett összeg és a kiosztott összeg közti különbségekkel. Hagyhatja "
+"nyitottan ezt a különbséget a partner számláján, vagy párosíthatja a "
+"fizetés(ek)el."
#. module: account_voucher
#: model:ir.actions.act_window,help:account_voucher.action_sale_receipt_report_all
@@ -1018,16 +1081,24 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Erről a jelentésről, a vevőnek elküldött számlákról és fizetési\n"
+" határidőkről és késve fizetésről áttekintést kaphat. A \n"
+" keresési eszköz használható a számla beszámolók személyre\n"
+" szabásához és így, az elemzést az igényének megfelelően "
+"alakíthatja.\n"
+"
\n"
+" "
#. module: account_voucher
#: view:account.voucher:0
msgid "Posted Vouchers"
-msgstr ""
+msgstr "Elküldött nyugták"
#. module: account_voucher
#: field:account.voucher,payment_rate:0
msgid "Exchange Rate"
-msgstr ""
+msgstr "Árfolyam arány"
#. module: account_voucher
#: view:account.voucher:0
@@ -1047,7 +1118,7 @@ msgstr "Május"
#. module: account_voucher
#: view:account.voucher:0
msgid "Sale Receipt"
-msgstr ""
+msgstr "Értékesítési bevételi bizonylat"
#. module: account_voucher
#: view:account.voucher:0
@@ -1066,7 +1137,7 @@ msgstr "Belső megjegyzések"
#: view:account.voucher:0
#: field:account.voucher,line_cr_ids:0
msgid "Credits"
-msgstr "Követel"
+msgstr "Követelések"
#. module: account_voucher
#: field:account.voucher.line,amount_original:0
@@ -1076,7 +1147,7 @@ msgstr "Eredeti összeg"
#. module: account_voucher
#: view:account.voucher:0
msgid "Purchase Receipt"
-msgstr ""
+msgstr "Vásárlási bevételi bizonylatok"
#. module: account_voucher
#: help:account.voucher,payment_rate:0
@@ -1084,6 +1155,8 @@ msgid ""
"The specific rate that will be used, in this voucher, between the selected "
"currency (in 'Payment Rate Currency' field) and the voucher currency."
msgstr ""
+"Az arány, mely ezen nyugtán lesz használva, a kiválasztott pénznem (a "
+"'Fizetési pénznem aránya' mezőben) és a nyugta pénzneme közt."
#. module: account_voucher
#: view:account.voucher:0
@@ -1115,12 +1188,12 @@ msgstr "Február"
#. module: account_voucher
#: view:account.voucher:0
msgid "Supplier Invoices and Outstanding transactions"
-msgstr "Bejövő számlák és kifizetetlen tételek"
+msgstr "Beszállítók bejövő számlái és kifizetetlen tételek"
#. module: account_voucher
#: field:account.voucher,reference:0
msgid "Ref #"
-msgstr "Hiv. szám"
+msgstr "Hiv. szám #"
#. module: account_voucher
#: view:sale.receipt.report:0
@@ -1132,7 +1205,7 @@ msgstr "Év"
#: field:account.config.settings,income_currency_exchange_account_id:0
#: field:res.company,income_currency_exchange_account_id:0
msgid "Gain Exchange Rate Account"
-msgstr ""
+msgstr "Árfolyamnyereség számla"
#. module: account_voucher
#: selection:account.voucher,type:0
@@ -1148,7 +1221,7 @@ msgstr "Április"
#. module: account_voucher
#: help:account.voucher,tax_id:0
msgid "Only for tax excluded from price"
-msgstr ""
+msgstr "Csak az árakból kihagyott adók"
#. module: account_voucher
#: field:account.voucher,type:0
@@ -1158,7 +1231,7 @@ msgstr "Alapértelmezett típus"
#. module: account_voucher
#: help:account.voucher,message_ids:0
msgid "Messages and communication history"
-msgstr ""
+msgstr "Üzenetek és kommunikációs történet"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_statement_from_invoice_lines
@@ -1182,12 +1255,16 @@ msgid ""
"The amount of the voucher must be the same amount as the one on the "
"statement line."
msgstr ""
+"A nyugtán lévő összegnek ugyanannak kell lennie mint ami a kivonat sorában "
+"szerepel."
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:879
#, python-format
msgid "Cannot delete voucher(s) which are already opened or paid."
msgstr ""
+"Nem lehet olyan nyugtá(ka)t törölni, melyek meg lettek nyitva vagy ki lettek "
+"fozetve."
#. module: account_voucher
#: help:account.voucher,date:0
@@ -1197,7 +1274,7 @@ msgstr "Könyvelési tételek teljesítési dátuma"
#. module: account_voucher
#: model:mail.message.subtype,name:account_voucher.mt_voucher_state_change
msgid "Status Change"
-msgstr ""
+msgstr "Állapotváltozás"
#. module: account_voucher
#: selection:account.voucher,payment_option:0
@@ -1225,7 +1302,7 @@ msgstr "Nettó érték"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_sale_receipt_report
msgid "Sales Receipt Statistics"
-msgstr "Értékesítési nyugta statisztika"
+msgstr "Értékesítési bevételi bizonylatok statisztikái"
#. module: account_voucher
#: view:account.voucher:0
@@ -1244,14 +1321,14 @@ msgstr "Nyitott egyenleg"
#. module: account_voucher
#: model:mail.message.subtype,description:account_voucher.mt_voucher_state_change
msgid "Status changed"
-msgstr ""
+msgstr "Állapot megváltozott"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:1014
#: code:addons/account_voucher/account_voucher.py:1018
#, python-format
msgid "Insufficient Configuration!"
-msgstr ""
+msgstr "Nem megfelelő beállítás!"
#. module: account_voucher
#: help:account.voucher,active:0
@@ -1260,6 +1337,9 @@ msgid ""
"inactive, which allow to hide the customer/supplier payment while the bank "
"statement isn't confirmed."
msgstr ""
+"Alapértelmezetten, a tervezet bank kivonathoz párosított nyugták nem lesznek "
+"aktívak, így el lehet tüntetni a vevő/beszállító fizetéseket amíg a banki "
+"kivonatok nem kerülnek jóváhagyásra."
#~ msgid "Particulars"
#~ msgstr "Adatok"
@@ -1310,9 +1390,6 @@ msgstr ""
#~ msgid "Want to remove accounting entries too ?"
#~ msgstr "A könyvelési tételeket is törölni szeretné?"
-#~ msgid "Sales Receipt"
-#~ msgstr "Nyugta"
-
#~ msgid "Unreconciliation"
#~ msgstr "Párosítás visszavonása"
@@ -1485,3 +1562,6 @@ msgstr ""
#~ msgid "Canceled"
#~ msgstr "Érvénytelenített"
+
+#~ msgid "Sales Receipt"
+#~ msgstr "Értékesítési bevételi bizonylat"
diff --git a/addons/account_voucher/i18n/nl_BE.po b/addons/account_voucher/i18n/nl_BE.po
index 0cdc8cd8399..a58e655aec6 100644
--- a/addons/account_voucher/i18n/nl_BE.po
+++ b/addons/account_voucher/i18n/nl_BE.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2012-12-19 18:04+0000\n"
+"PO-Revision-Date: 2013-04-26 16:01+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \n"
"Language-Team: Els Van Vossel\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:33+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-27 05:44+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
"Language: nl\n"
#. module: account_voucher
@@ -138,6 +138,8 @@ msgid ""
"You can not change the journal as you already reconciled some statement "
"lines!"
msgstr ""
+"U kunt het journaal niet veranderen, omdat er al uittreksellijnen zijn "
+"afgepunt."
#. module: account_voucher
#: view:account.voucher:0
@@ -148,7 +150,7 @@ msgstr "Goedkeuren"
#: model:ir.actions.act_window,name:account_voucher.action_vendor_payment
#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_payment
msgid "Supplier Payments"
-msgstr ""
+msgstr "Leveranciersbetalingen"
#. module: account_voucher
#: model:ir.actions.act_window,help:account_voucher.action_purchase_receipt
@@ -223,7 +225,7 @@ msgstr "Berichten"
#: model:ir.actions.act_window,name:account_voucher.action_purchase_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_purchase_receipt
msgid "Purchase Receipts"
-msgstr ""
+msgstr "Aankoopbewijzen"
#. module: account_voucher
#: field:account.voucher.line,move_line_id:0
@@ -431,7 +433,7 @@ msgstr "Debet"
#: code:addons/account_voucher/account_voucher.py:1547
#, python-format
msgid "Unable to change journal !"
-msgstr ""
+msgstr "Het dagboek kan niet worden gewijzigd"
#. module: account_voucher
#: view:sale.receipt.report:0
@@ -745,7 +747,7 @@ msgstr "Augustus"
#. module: account_voucher
#: view:account.voucher:0
msgid "Validate Payment"
-msgstr ""
+msgstr "Betaling bevestigen"
#. module: account_voucher
#: help:account.voucher,audit:0
@@ -786,7 +788,7 @@ msgstr "Betaald"
#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt
msgid "Sales Receipts"
-msgstr ""
+msgstr "Verkoopbewijzen"
#. module: account_voucher
#: field:account.voucher,message_is_follower:0
@@ -834,7 +836,7 @@ msgstr "Onmiddellijk betalen"
#. module: account_voucher
#: field:account.voucher.line,type:0
msgid "Dr/Cr"
-msgstr ""
+msgstr "Db/Cr"
#. module: account_voucher
#: field:account.voucher,pre_line:0
@@ -845,7 +847,7 @@ msgstr "Vorige betalingen?"
#: code:addons/account_voucher/account_voucher.py:1112
#, python-format
msgid "The invoice you are willing to pay is not valid anymore."
-msgstr ""
+msgstr "De factuur die u wilt betalen, is niet meer geldig."
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -884,7 +886,7 @@ msgstr "Gelieve een reeks in te stellen voor het journaal."
#: model:ir.actions.act_window,name:account_voucher.action_vendor_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_receipt
msgid "Customer Payments"
-msgstr ""
+msgstr "Klantenbetalingen"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt_report_all
@@ -938,7 +940,7 @@ msgstr "Nummer"
#. module: account_voucher
#: selection:account.voucher.line,type:0
msgid "Credit"
-msgstr ""
+msgstr "Credit"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_bank_statement
@@ -1279,7 +1281,7 @@ msgstr "Openstaand saldo"
#. module: account_voucher
#: model:mail.message.subtype,description:account_voucher.mt_voucher_state_change
msgid "Status changed"
-msgstr ""
+msgstr "Status vgewijzigd"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:1014
diff --git a/addons/account_voucher/invoice.py b/addons/account_voucher/invoice.py
index c0584ddbd52..03a3e5fab67 100644
--- a/addons/account_voucher/invoice.py
+++ b/addons/account_voucher/invoice.py
@@ -52,6 +52,5 @@ class invoice(osv.osv):
}
}
-invoice()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_voucher/report/account_voucher_sales_receipt.py b/addons/account_voucher/report/account_voucher_sales_receipt.py
index 2ab76c252f5..246cd8b47e8 100644
--- a/addons/account_voucher/report/account_voucher_sales_receipt.py
+++ b/addons/account_voucher/report/account_voucher_sales_receipt.py
@@ -126,6 +126,5 @@ class sale_receipt_report(osv.osv):
)
""")
-sale_receipt_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_voucher/voucher_payment_receipt_view.xml b/addons/account_voucher/voucher_payment_receipt_view.xml
index de873c9195c..109c2f9aec9 100644
--- a/addons/account_voucher/voucher_payment_receipt_view.xml
+++ b/addons/account_voucher/voucher_payment_receipt_view.xml
@@ -11,7 +11,7 @@
-
+
@@ -34,7 +34,7 @@
-
+
diff --git a/addons/account_voucher/voucher_sales_purchase_view.xml b/addons/account_voucher/voucher_sales_purchase_view.xml
index 05b783dd339..6a84a09d5e6 100644
--- a/addons/account_voucher/voucher_sales_purchase_view.xml
+++ b/addons/account_voucher/voucher_sales_purchase_view.xml
@@ -10,7 +10,7 @@
-
+
@@ -32,7 +32,7 @@
-
+
diff --git a/addons/account_voucher/wizard/account_statement_from_invoice.py b/addons/account_voucher/wizard/account_statement_from_invoice.py
index fce251df175..de5121a819b 100644
--- a/addons/account_voucher/wizard/account_statement_from_invoice.py
+++ b/addons/account_voucher/wizard/account_statement_from_invoice.py
@@ -123,6 +123,5 @@ class account_statement_from_invoice_lines(osv.osv_memory):
}, context=context)
return {'type': 'ir.actions.act_window_close'}
-account_statement_from_invoice_lines()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py
index 42651acb0c6..ac298713b04 100644
--- a/addons/analytic/analytic.py
+++ b/addons/analytic/analytic.py
@@ -171,9 +171,9 @@ class account_analytic_account(osv.osv):
return result
_columns = {
- 'name': fields.char('Account/Contract Name', size=128, required=True),
+ 'name': fields.char('Account/Contract Name', size=128, required=True, track_visibility='onchange'),
'complete_name': fields.function(_get_full_name, type='char', string='Full Name'),
- 'code': fields.char('Reference', select=True),
+ 'code': fields.char('Reference', select=True, track_visibility='onchange'),
'type': fields.selection([('view','Analytic View'), ('normal','Analytic Account'),('contract','Contract or Project'),('template','Template of Contract')], 'Type of Account', required=True,
help="If you select the View Type, it means you won\'t allow to create journal entries using that account.\n"\
"The type 'Analytic account' stands for usual accounts that you only want to use in accounting.\n"\
@@ -191,10 +191,10 @@ class account_analytic_account(osv.osv):
'quantity': fields.function(_debit_credit_bal_qtty, type='float', string='Quantity', multi='debit_credit_bal_qtty'),
'quantity_max': fields.float('Prepaid Service Units', help='Sets the higher limit of time to work on the contract, based on the timesheet. (for instance, number of hours in a limited support contract.)'),
'partner_id': fields.many2one('res.partner', 'Customer'),
- 'user_id': fields.many2one('res.users', 'Project Manager'),
- 'manager_id': fields.many2one('res.users', 'Account Manager'),
+ 'user_id': fields.many2one('res.users', 'Project Manager', track_visibility='onchange'),
+ 'manager_id': fields.many2one('res.users', 'Account Manager', track_visibility='onchange'),
'date_start': fields.date('Start Date'),
- 'date': fields.date('End Date', select=True),
+ 'date': fields.date('End Date', select=True, track_visibility='onchange'),
'company_id': fields.many2one('res.company', 'Company', required=False), #not required because we want to allow different companies to use the same chart of account, except for leaf accounts.
'state': fields.selection([('template', 'Template'),('draft','New'),('open','In Progress'),('pending','To Renew'),('close','Closed'),('cancelled', 'Cancelled')], 'Status', required=True, track_visibility='onchange'),
'currency_id': fields.function(_currency, fnct_inv=_set_company_currency, #the currency_id field is readonly except if it's a view account and if there is no company
diff --git a/addons/analytic/i18n/lt.po b/addons/analytic/i18n/lt.po
new file mode 100644
index 00000000000..d9073313307
--- /dev/null
+++ b/addons/analytic/i18n/lt.po
@@ -0,0 +1,388 @@
+# Lithuanian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-29 15:10+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Lithuanian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
+
+#. module: analytic
+#: field:account.analytic.account,child_ids:0
+msgid "Child Accounts"
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "In Progress"
+msgstr ""
+
+#. module: analytic
+#: code:addons/analytic/analytic.py:229
+#, python-format
+msgid "Contract: "
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Template"
+msgstr ""
+
+#. module: analytic
+#: view:account.analytic.account:0
+msgid "End Date"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.line,unit_amount:0
+msgid "Specifies the amount of quantity to count."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,debit:0
+msgid "Debit"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.account,type:0
+msgid ""
+"If you select the View Type, it means you won't allow to create journal "
+"entries using that account.\n"
+"The type 'Analytic account' stands for usual accounts that you only want to "
+"use in accounting.\n"
+"If you select Contract or Project, it offers you the possibility to manage "
+"the validity and the invoicing options for this account.\n"
+"The special type 'Template of Contract' allows you to define a template with "
+"default data that you can reuse easily."
+msgstr ""
+
+#. module: analytic
+#: view:account.analytic.account:0
+msgid ""
+"Once the end date of the contract is\n"
+" passed or the maximum number of "
+"service\n"
+" units (e.g. support contract) is\n"
+" reached, the account manager is "
+"notified \n"
+" by email to renew the contract with "
+"the\n"
+" customer."
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,type:0
+msgid "Contract or Project"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,name:0
+msgid "Account/Contract Name"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,manager_id:0
+msgid "Account Manager"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,message_follower_ids:0
+msgid "Followers"
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Closed"
+msgstr ""
+
+#. module: analytic
+#: model:mail.message.subtype,name:analytic.mt_account_pending
+msgid "Contract to Renew"
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "New"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,user_id:0
+msgid "Project Manager"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,state:0
+msgid "Status"
+msgstr ""
+
+#. module: analytic
+#: code:addons/analytic/analytic.py:271
+#, python-format
+msgid "%s (copy)"
+msgstr ""
+
+#. module: analytic
+#: model:ir.model,name:analytic.model_account_analytic_line
+msgid "Analytic Line"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,description:0
+#: field:account.analytic.line,name:0
+msgid "Description"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,message_unread:0
+msgid "Unread Messages"
+msgstr ""
+
+#. module: analytic
+#: constraint:account.analytic.account:0
+msgid "Error! You cannot create recursive analytic accounts."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,company_id:0
+#: field:account.analytic.line,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: analytic
+#: view:account.analytic.account:0
+msgid "Renewal"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.account,message_ids:0
+msgid "Messages and communication history"
+msgstr ""
+
+#. module: analytic
+#: model:mail.message.subtype,description:analytic.mt_account_opened
+msgid "Stage opened"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.account,quantity_max:0
+msgid ""
+"Sets the higher limit of time to work on the contract, based on the "
+"timesheet. (for instance, number of hours in a limited support contract.)"
+msgstr ""
+
+#. module: analytic
+#: code:addons/analytic/analytic.py:160
+#, python-format
+msgid ""
+"If you set a company, the currency selected has to be the same as it's "
+"currency. \n"
+"You can remove the company belonging, and thus change the currency, only on "
+"analytic account of type 'view'. This can be really usefull for "
+"consolidation purposes of several companies charts with different "
+"currencies, for example."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,message_is_follower:0
+msgid "Is a Follower"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.line,user_id:0
+msgid "User"
+msgstr ""
+
+#. module: analytic
+#: model:mail.message.subtype,description:analytic.mt_account_pending
+msgid "Contract pending"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.line,date:0
+msgid "Date"
+msgstr ""
+
+#. module: analytic
+#: model:mail.message.subtype,name:analytic.mt_account_closed
+msgid "Contract Finished"
+msgstr ""
+
+#. module: analytic
+#: view:account.analytic.account:0
+msgid "Terms and Conditions"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.line,amount:0
+msgid ""
+"Calculated by multiplying the quantity and the price given in the Product's "
+"cost price. Always expressed in the company main currency."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,partner_id:0
+msgid "Customer"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,child_complete_ids:0
+msgid "Account Hierarchy"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,message_ids:0
+msgid "Messages"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,parent_id:0
+msgid "Parent Analytic Account"
+msgstr ""
+
+#. module: analytic
+#: view:account.analytic.account:0
+msgid "Contract Information"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,template_id:0
+#: selection:account.analytic.account,type:0
+msgid "Template of Contract"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,message_summary:0
+msgid "Summary"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,quantity_max:0
+msgid "Prepaid Service Units"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,credit:0
+msgid "Credit"
+msgstr ""
+
+#. module: analytic
+#: model:mail.message.subtype,name:analytic.mt_account_opened
+msgid "Contract Opened"
+msgstr ""
+
+#. module: analytic
+#: model:mail.message.subtype,description:analytic.mt_account_closed
+msgid "Contract closed"
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,type:0
+msgid "Analytic View"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,balance:0
+msgid "Balance"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.account,message_unread:0
+msgid "If checked new messages require your attention."
+msgstr ""
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "To Renew"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,quantity:0
+#: field:account.analytic.line,unit_amount:0
+msgid "Quantity"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,date:0
+msgid "Date End"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,code:0
+msgid "Reference"
+msgstr ""
+
+#. module: analytic
+#: code:addons/analytic/analytic.py:160
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: analytic
+#: model:res.groups,name:analytic.group_analytic_accounting
+msgid "Analytic Accounting"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.line,amount:0
+msgid "Amount"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,complete_name:0
+msgid "Full Account Name"
+msgstr ""
+
+#. module: analytic
+#: view:account.analytic.account:0
+#: selection:account.analytic.account,type:0
+#: field:account.analytic.line,account_id:0
+#: model:ir.model,name:analytic.model_account_analytic_account
+msgid "Analytic Account"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,currency_id:0
+msgid "Currency"
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.account,message_summary:0
+msgid ""
+"Holds the Chatter summary (number of messages, ...). This summary is "
+"directly in html format in order to be inserted in kanban views."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,type:0
+msgid "Type of Account"
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,date_start:0
+msgid "Start Date"
+msgstr ""
+
+#. module: analytic
+#: constraint:account.analytic.line:0
+msgid "You cannot create analytic line on view account."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,line_ids:0
+msgid "Analytic Entries"
+msgstr ""
diff --git a/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py
index 8b10381434d..a1bf43714ce 100644
--- a/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py
+++ b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py
@@ -152,6 +152,5 @@ class account_analytic_account(osv.osv):
'nodestroy': True,
}
-account_analytic_account()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/analytic_contract_hr_expense/i18n/nl_BE.po b/addons/analytic_contract_hr_expense/i18n/nl_BE.po
new file mode 100644
index 00000000000..4bc0cc559e5
--- /dev/null
+++ b/addons/analytic_contract_hr_expense/i18n/nl_BE.po
@@ -0,0 +1,72 @@
+# Dutch (Belgium) 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-15 16:33+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
+"Language-Team: Dutch (Belgium) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
+
+#. module: analytic_contract_hr_expense
+#: view:account.analytic.account:0
+msgid "or view"
+msgstr "of bekijk"
+
+#. module: analytic_contract_hr_expense
+#: view:account.analytic.account:0
+msgid "Nothing to invoice, create"
+msgstr "Niets te factureren, aanmaken"
+
+#. module: analytic_contract_hr_expense
+#: view:account.analytic.account:0
+msgid "expenses"
+msgstr "onkosten"
+
+#. module: analytic_contract_hr_expense
+#: model:ir.model,name:analytic_contract_hr_expense.model_account_analytic_account
+msgid "Analytic Account"
+msgstr "Analytische rekening"
+
+#. module: analytic_contract_hr_expense
+#: code:addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py:129
+#, python-format
+msgid "Expenses to Invoice of %s"
+msgstr "Te factureren onkosten van %s"
+
+#. module: analytic_contract_hr_expense
+#: code:addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py:121
+#, python-format
+msgid "Expenses of %s"
+msgstr "Onkosten van %s"
+
+#. module: analytic_contract_hr_expense
+#: field:account.analytic.account,expense_invoiced:0
+#: field:account.analytic.account,expense_to_invoice:0
+#: field:account.analytic.account,remaining_expense:0
+msgid "unknown"
+msgstr "onbekend"
+
+#. module: analytic_contract_hr_expense
+#: field:account.analytic.account,est_expenses:0
+msgid "Estimation of Expenses to Invoice"
+msgstr "Te verwachten te factureren onkosten"
+
+#. module: analytic_contract_hr_expense
+#: field:account.analytic.account,charge_expenses:0
+msgid "Charge Expenses"
+msgstr "Onkosten doorrekenen"
+
+#. module: analytic_contract_hr_expense
+#: view:account.analytic.account:0
+msgid "⇒ Invoice"
+msgstr "⇒ Factuur"
diff --git a/addons/anonymization/anonymization.py b/addons/anonymization/anonymization.py
index de46e2e8d03..025f1f79f70 100644
--- a/addons/anonymization/anonymization.py
+++ b/addons/anonymization/anonymization.py
@@ -411,7 +411,7 @@ class ir_model_fields_anonymize_wizard(osv.osv_memory):
model_name = field.model_id.model
field_name = field.field_id.name
field_type = field.field_id.ttype
- table_name = self.pool.get(model_name)._table
+ table_name = self.pool[model_name]._table
# get the current value
sql = "select id, %s from %s" % (field_name, table_name)
@@ -543,7 +543,7 @@ class ir_model_fields_anonymize_wizard(osv.osv_memory):
fixes = group(fixes, ('model_name', 'field_name'))
for line in data:
- table_name = self.pool.get(line['model_id'])._table if self.pool.get(line['model_id']) else None
+ table_name = self.pool[line['model_id']]._table if line['model_id'] in self.pool else None
# check if custom sql exists:
key = (line['model_id'], line['field_id'])
diff --git a/addons/audittrail/audittrail.py b/addons/audittrail/audittrail.py
index 811c5387697..159baf3a9e7 100644
--- a/addons/audittrail/audittrail.py
+++ b/addons/audittrail/audittrail.py
@@ -70,8 +70,7 @@ class audittrail_rule(osv.osv):
obj_model = self.pool.get('ir.model.data')
#start Loop
for thisrule in self.browse(cr, uid, ids):
- obj = self.pool.get(thisrule.object_id.model)
- if not obj:
+ if thisrule.object_id.model not in self.pool:
raise osv.except_osv(
_('WARNING: audittrail is not part of the pool'),
_('Change audittrail depends -- Setting rule as DRAFT'))
@@ -131,7 +130,7 @@ class audittrail_log(osv.osv):
model_object = resname.object_id
res_id = resname.res_id
if model_object and res_id:
- model_pool = self.pool.get(model_object.model)
+ model_pool = self.pool[model_object.model]
res = model_pool.read(cr, uid, res_id, ['name'])
data[resname.id] = res['name']
else:
@@ -190,7 +189,7 @@ def get_value_text(cr, uid, pool, resource_pool, method, field, value):
field_obj = (resource_pool._all_columns.get(field)).column
if field_obj._type in ('one2many','many2many'):
- data = pool.get(field_obj._obj).name_get(cr, uid, value)
+ data = pool[field_obj._obj].name_get(cr, uid, value)
#return the modifications on x2many fields as a list of names
res = map(lambda x:x[1], data)
elif field_obj._type == 'many2one':
@@ -212,7 +211,7 @@ def create_log_line(cr, uid, log_id, model, lines=None):
if lines is None:
lines = []
pool = openerp.registry(cr.dbname)
- obj_pool = pool.get(model.model)
+ obj_pool = pool[model.model]
model_pool = pool.get('ir.model')
field_pool = pool.get('ir.model.fields')
log_line_pool = pool.get('audittrail.log.line')
@@ -251,7 +250,7 @@ def log_fct(cr, uid_orig, model, method, fct_src, *args, **kw):
@return: Returns result as per method of Object proxy
"""
pool = openerp.registry(cr.dbname)
- resource_pool = pool.get(model)
+ resource_pool = pool[model]
model_pool = pool.get('ir.model')
model_ids = model_pool.search(cr, SUPERUSER_ID, [('model', '=', model)])
model_id = model_ids and model_ids[0] or False
@@ -321,7 +320,7 @@ def get_data(cr, uid, pool, res_ids, model, method):
}
"""
data = {}
- resource_pool = pool.get(model.model)
+ resource_pool = pool[model.model]
# read all the fields of the given resources in super admin mode
for resource in resource_pool.read(cr, SUPERUSER_ID, res_ids):
values = {}
@@ -390,7 +389,7 @@ def prepare_audittrail_log_line(cr, uid, pool, model, resource_id, method, old_v
key: []
}
# loop on all the fields
- for field_name, field_definition in pool.get(model.model)._all_columns.items():
+ for field_name, field_definition in pool[model.model]._all_columns.items():
if field_name in ('__last_update', 'id'):
continue
#if the field_list param is given, skip all the fields not in that list
@@ -457,7 +456,7 @@ def process_data(cr, uid, pool, res_ids, model, method, old_values=None, new_val
# if at least one modification has been found
for model_id, resource_id in lines:
- name = pool.get(model.model).name_get(cr, uid, [resource_id])[0][1]
+ name = pool[model.model].name_get(cr, uid, [resource_id])[0][1]
vals = {
'method': method,
'object_id': model_id,
diff --git a/addons/audittrail/wizard/audittrail_view_log.py b/addons/audittrail/wizard/audittrail_view_log.py
index d06da281933..4385970f8d9 100644
--- a/addons/audittrail/wizard/audittrail_view_log.py
+++ b/addons/audittrail/wizard/audittrail_view_log.py
@@ -61,6 +61,5 @@ class audittrail_view_log(osv.osv_memory):
#End Loop
return result
-audittrail_view_log()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/auth_crypt/i18n/lt.po b/addons/auth_crypt/i18n/lt.po
new file mode 100644
index 00000000000..03f0bd5249f
--- /dev/null
+++ b/addons/auth_crypt/i18n/lt.po
@@ -0,0 +1,28 @@
+# Lithuanian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-24 18:24+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Lithuanian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-25 05:20+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
+
+#. module: auth_crypt
+#: field:res.users,password_crypt:0
+msgid "Encrypted Password"
+msgstr "Užšifruotas slaptažodis"
+
+#. module: auth_crypt
+#: model:ir.model,name:auth_crypt.model_res_users
+msgid "Users"
+msgstr "Naudotojai"
diff --git a/addons/auth_crypt/i18n/nl_BE.po b/addons/auth_crypt/i18n/nl_BE.po
index b9477ece5dc..abb65c8700f 100644
--- a/addons/auth_crypt/i18n/nl_BE.po
+++ b/addons/auth_crypt/i18n/nl_BE.po
@@ -1,42 +1,28 @@
# Dutch (Belgium) translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
+# FIRST AUTHOR , 2013.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-03 16:03+0000\n"
-"PO-Revision-Date: 2012-07-26 17:52+0000\n"
-"Last-Translator: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-15 16:02+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
"Language-Team: Dutch (Belgium) \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-12-04 05:53+0000\n"
-"X-Generator: Launchpad (build 16335)\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
-#. module: base_crypt
-#: model:ir.model,name:base_crypt.model_res_users
+#. module: auth_crypt
+#: field:res.users,password_crypt:0
+msgid "Encrypted Password"
+msgstr "Geëncrypteerd wachtwoord"
+
+#. module: auth_crypt
+#: model:ir.model,name:auth_crypt.model_res_users
msgid "Users"
-msgstr ""
-
-#~ msgid "You can not have two users with the same login !"
-#~ msgstr "U kunt geen twee gebruikers met dezelfde login maken."
-
-#, python-format
-#~ msgid "Please specify the password !"
-#~ msgstr "Gelieve een wachtwoord op te geven"
-
-#~ msgid "The chosen company is not in the allowed companies for this user"
-#~ msgstr ""
-#~ "De gekozen firma behoort niet tot de toegelaten bedrijven voor deze "
-#~ "gebruiker."
-
-#~ msgid "res.users"
-#~ msgstr "res.users"
-
-#, python-format
-#~ msgid "Error"
-#~ msgstr "Fout"
+msgstr "Gebruikers"
diff --git a/addons/auth_ldap/users_ldap.py b/addons/auth_ldap/users_ldap.py
index e8778449da5..8e7128ca91e 100644
--- a/addons/auth_ldap/users_ldap.py
+++ b/addons/auth_ldap/users_ldap.py
@@ -227,7 +227,6 @@ class CompanyLDAP(osv.osv):
'create_user': True,
}
-CompanyLDAP()
class res_company(osv.osv):
@@ -236,7 +235,6 @@ class res_company(osv.osv):
'ldaps': fields.one2many(
'res.company.ldap', 'company', 'LDAP Parameters'),
}
-res_company()
class users(osv.osv):
@@ -282,5 +280,4 @@ class users(osv.osv):
cr.close()
raise openerp.exceptions.AccessDenied()
-users()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/auth_oauth/static/src/js/auth_oauth.js b/addons/auth_oauth/static/src/js/auth_oauth.js
index 7ee83bd99e9..131ae5c1c42 100644
--- a/addons/auth_oauth/static/src/js/auth_oauth.js
+++ b/addons/auth_oauth/static/src/js/auth_oauth.js
@@ -5,6 +5,7 @@ openerp.auth_oauth = function(instance) {
start: function(parent, params) {
var self = this;
var d = this._super.apply(this, arguments);
+ this.$el.hide();
this.$el.on('click', 'a.zocial', this.on_oauth_sign_in);
this.oauth_providers = [];
if(this.params.oauth_error === 1) {
@@ -24,6 +25,8 @@ openerp.auth_oauth = function(instance) {
var db = this.$("form [name=db]").val();
if (db) {
this.rpc("/auth_oauth/list_providers", { dbname: db }).done(this.on_oauth_loaded);
+ } else {
+ this.$el.show();
}
},
on_oauth_loaded: function(result) {
@@ -32,6 +35,7 @@ openerp.auth_oauth = function(instance) {
if (this.oauth_providers.length === 1 && params.type === 'signup') {
this.do_oauth_sign_in(this.oauth_providers[0]);
} else {
+ this.$el.show();
this.$('.oe_oauth_provider_login_button').remove();
var buttons = QWeb.render("auth_oauth.Login.button",{"widget":this});
this.$(".oe_login_pane form ul").after(buttons);
@@ -57,7 +61,7 @@ openerp.auth_oauth = function(instance) {
state: JSON.stringify(state),
};
var url = provider.auth_endpoint + '?' + $.param(params);
- window.location = url;
+ instance.web.redirect(url);
},
_oauth_state: function(provider) {
// return the state object sent back with the redirected uri
diff --git a/addons/auth_oauth_signup/i18n/lt.po b/addons/auth_oauth_signup/i18n/lt.po
new file mode 100644
index 00000000000..27fb83e6a4f
--- /dev/null
+++ b/addons/auth_oauth_signup/i18n/lt.po
@@ -0,0 +1,23 @@
+# Lithuanian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-24 18:21+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Lithuanian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-25 05:20+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
+
+#. module: auth_oauth_signup
+#: model:ir.model,name:auth_oauth_signup.model_res_users
+msgid "Users"
+msgstr "Naudotojai"
diff --git a/addons/auth_oauth_signup/i18n/nl_BE.po b/addons/auth_oauth_signup/i18n/nl_BE.po
new file mode 100644
index 00000000000..04d5034d029
--- /dev/null
+++ b/addons/auth_oauth_signup/i18n/nl_BE.po
@@ -0,0 +1,23 @@
+# Dutch (Belgium) 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-15 16:01+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
+"Language-Team: Dutch (Belgium) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
+
+#. module: auth_oauth_signup
+#: model:ir.model,name:auth_oauth_signup.model_res_users
+msgid "Users"
+msgstr "Gebruikers"
diff --git a/addons/auth_openid/res_users.py b/addons/auth_openid/res_users.py
index feea2d8d396..47e119f2a1e 100644
--- a/addons/auth_openid/res_users.py
+++ b/addons/auth_openid/res_users.py
@@ -91,7 +91,6 @@ class res_users(osv.osv):
raise
self._uid_cache.setdefault(db, {})[uid] = passwd
-res_users()
diff --git a/addons/auth_signup/i18n/lt.po b/addons/auth_signup/i18n/lt.po
new file mode 100644
index 00000000000..7ae419856e6
--- /dev/null
+++ b/addons/auth_signup/i18n/lt.po
@@ -0,0 +1,279 @@
+# Lithuanian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-29 15:13+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Lithuanian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
+
+#. module: auth_signup
+#: field:res.partner,signup_type:0
+msgid "Signup Token Type"
+msgstr ""
+
+#. module: auth_signup
+#: field:base.config.settings,auth_signup_uninvited:0
+msgid "Allow external users to sign up"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:16
+#, python-format
+msgid "Confirm Password"
+msgstr ""
+
+#. module: auth_signup
+#: help:base.config.settings,auth_signup_uninvited:0
+msgid "If unchecked, only invited users may sign up."
+msgstr ""
+
+#. module: auth_signup
+#: model:ir.model,name:auth_signup.model_base_config_settings
+msgid "base.config.settings"
+msgstr ""
+
+#. module: auth_signup
+#: code:addons/auth_signup/res_users.py:265
+#, python-format
+msgid "Cannot send email: user has no email address."
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:24
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:28
+#, python-format
+msgid "Reset password"
+msgstr ""
+
+#. module: auth_signup
+#: field:base.config.settings,auth_signup_template_user_id:0
+msgid "Template user for new users created through signup"
+msgstr ""
+
+#. module: auth_signup
+#: model:email.template,subject:auth_signup.reset_password_email
+msgid "Password reset"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:117
+#, python-format
+msgid "Please enter a password and confirm it."
+msgstr ""
+
+#. module: auth_signup
+#: view:res.users:0
+msgid "Send an email to the user to (re)set their password."
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:23
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:26
+#, python-format
+msgid "Sign Up"
+msgstr ""
+
+#. module: auth_signup
+#: selection:res.users,state:0
+msgid "New"
+msgstr ""
+
+#. module: auth_signup
+#: code:addons/auth_signup/res_users.py:258
+#, python-format
+msgid "Mail sent to:"
+msgstr ""
+
+#. module: auth_signup
+#: field:res.users,state:0
+msgid "Status"
+msgstr ""
+
+#. module: auth_signup
+#: model:email.template,body_html:auth_signup.reset_password_email
+msgid ""
+"\n"
+"
A password reset was requested for the OpenERP account linked to this "
+"email.
\n"
+"\n"
+"
You may change your password by following this link.
\n"
+"\n"
+"
Note: If you do not expect this, you can safely ignore this email.
"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:111
+#, python-format
+msgid "Please enter a name."
+msgstr ""
+
+#. module: auth_signup
+#: model:ir.model,name:auth_signup.model_res_users
+msgid "Users"
+msgstr ""
+
+#. module: auth_signup
+#: field:res.partner,signup_url:0
+msgid "Signup URL"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:114
+#, python-format
+msgid "Please enter a username."
+msgstr ""
+
+#. module: auth_signup
+#: selection:res.users,state:0
+msgid "Active"
+msgstr ""
+
+#. module: auth_signup
+#: code:addons/auth_signup/res_users.py:269
+#, python-format
+msgid ""
+"Cannot send email: no outgoing email server configured.\n"
+"You can configure it under Settings/General Settings."
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:12
+#, python-format
+msgid "Username"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:8
+#, python-format
+msgid "Name"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:170
+#, python-format
+msgid "Please enter a username or email address."
+msgstr ""
+
+#. module: auth_signup
+#: selection:res.users,state:0
+msgid "Resetting Password"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:13
+#, python-format
+msgid "Username (Email)"
+msgstr ""
+
+#. module: auth_signup
+#: field:res.partner,signup_expiration:0
+msgid "Signup Expiration"
+msgstr ""
+
+#. module: auth_signup
+#: help:base.config.settings,auth_signup_reset_password:0
+msgid "This allows users to trigger a password reset from the Login page."
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:22
+#, python-format
+msgid "Log in"
+msgstr ""
+
+#. module: auth_signup
+#: field:res.partner,signup_valid:0
+msgid "Signup Token is Valid"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:108
+#: code:addons/auth_signup/static/src/js/auth_signup.js:111
+#: code:addons/auth_signup/static/src/js/auth_signup.js:114
+#: code:addons/auth_signup/static/src/js/auth_signup.js:117
+#: code:addons/auth_signup/static/src/js/auth_signup.js:120
+#: code:addons/auth_signup/static/src/js/auth_signup.js:167
+#: code:addons/auth_signup/static/src/js/auth_signup.js:170
+#, python-format
+msgid "Login"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:94
+#, python-format
+msgid "Invalid signup token"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:120
+#, python-format
+msgid "Passwords do not match; please retype them."
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/js/auth_signup.js:108
+#: code:addons/auth_signup/static/src/js/auth_signup.js:167
+#, python-format
+msgid "No database selected !"
+msgstr ""
+
+#. module: auth_signup
+#: view:res.users:0
+msgid "Reset Password"
+msgstr ""
+
+#. module: auth_signup
+#: field:base.config.settings,auth_signup_reset_password:0
+msgid "Enable password reset from Login page"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:27
+#, python-format
+msgid "Back to Login"
+msgstr ""
+
+#. module: auth_signup
+#. openerp-web
+#: code:addons/auth_signup/static/src/xml/auth_signup.xml:22
+#, python-format
+msgid "Sign up"
+msgstr ""
+
+#. module: auth_signup
+#: model:ir.model,name:auth_signup.model_res_partner
+msgid "Partner"
+msgstr ""
+
+#. module: auth_signup
+#: field:res.partner,signup_token:0
+msgid "Signup Token"
+msgstr ""
diff --git a/addons/auth_signup/i18n/zh_CN.po b/addons/auth_signup/i18n/zh_CN.po
index 333dd1be2dc..aa8d9f952c1 100644
--- a/addons/auth_signup/i18n/zh_CN.po
+++ b/addons/auth_signup/i18n/zh_CN.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-04 20:16+0000\n"
-"Last-Translator: 盈通 ccdos \n"
+"PO-Revision-Date: 2013-04-16 04:33+0000\n"
+"Last-Translator: Key \n"
"Language-Team: Chinese (Simplified) \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:52+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-17 05:15+0000\n"
+"X-Generator: Launchpad (build 16567)\n"
#. module: auth_signup
#: field:res.partner,signup_type:0
@@ -73,7 +73,7 @@ msgstr "重置密码"
#: code:addons/auth_signup/static/src/js/auth_signup.js:117
#, python-format
msgid "Please enter a password and confirm it."
-msgstr ""
+msgstr "请输入密码并确认。"
#. module: auth_signup
#: view:res.users:0
diff --git a/addons/auth_signup/res_users.py b/addons/auth_signup/res_users.py
index b5383e41775..f4a985280ac 100644
--- a/addons/auth_signup/res_users.py
+++ b/addons/auth_signup/res_users.py
@@ -200,6 +200,9 @@ class res_users(osv.Model):
'partner_id': partner.id,
'email': values.get('email') or values.get('login'),
})
+ if partner.company_id:
+ values['company_id'] = partner.company_id.id
+ values['company_ids'] = [(6,0,[partner.company_id.id])]
self._signup_create_user(cr, uid, values, context=context)
else:
# no token, sign up an external user
diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py
index 62c808ed556..9d7d4d34ac4 100644
--- a/addons/base_action_rule/base_action_rule.py
+++ b/addons/base_action_rule/base_action_rule.py
@@ -96,7 +96,7 @@ class base_action_rule(osv.osv):
""" filter the list record_ids that satisfy the action filter """
if record_ids and action_filter:
assert action.model == action_filter.model_id, "Filter model different from action rule model"
- model = self.pool.get(action_filter.model_id)
+ model = self.pool[action_filter.model_id]
domain = [('id', 'in', record_ids)] + eval(action_filter.domain)
ctx = dict(context or {})
ctx.update(eval(action_filter.context))
@@ -106,7 +106,7 @@ class base_action_rule(osv.osv):
def _process(self, cr, uid, action, record_ids, context=None):
""" process the given action on the records """
# execute server actions
- model = self.pool.get(action.model_id.model)
+ model = self.pool[action.model_id.model]
if action.server_action_ids:
server_action_ids = map(int, action.server_action_ids)
for record in model.browse(cr, uid, record_ids, context):
@@ -195,7 +195,7 @@ class base_action_rule(osv.osv):
ids = self.search(cr, SUPERUSER_ID, [])
for action_rule in self.browse(cr, SUPERUSER_ID, ids):
model = action_rule.model_id.model
- model_obj = self.pool.get(model)
+ model_obj = self.pool[model]
if not hasattr(model_obj, 'base_action_ruled'):
model_obj.create = self._wrap_create(model_obj.create, model)
model_obj.write = self._wrap_write(model_obj.write, model)
@@ -232,7 +232,7 @@ class base_action_rule(osv.osv):
last_run = get_datetime(action.last_run) if action.last_run else False
# retrieve all the records that satisfy the action's condition
- model = self.pool.get(action.model_id.model)
+ model = self.pool[action.model_id.model]
domain = []
ctx = dict(context)
if action.filter_id:
diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py
index ca75c9e20fc..896349ec5e6 100644
--- a/addons/base_calendar/base_calendar.py
+++ b/addons/base_calendar/base_calendar.py
@@ -591,7 +591,7 @@ property or property parameter."),
for vals in self.browse(cr, uid, ids, context=context):
if vals.ref and vals.ref.user_id:
- mod_obj = self.pool.get(vals.ref._name)
+ mod_obj = self.pool[vals.ref._name]
res=mod_obj.read(cr,uid,[vals.ref.id],['duration','class'],context)
defaults = {'user_id': vals.user_id.id, 'organizer_id': vals.ref.user_id.id,'duration':res[0]['duration'],'class':res[0]['class']}
mod_obj.copy(cr, uid, vals.ref.id, default=defaults, context=context)
@@ -632,7 +632,6 @@ property or property parameter."),
res = super(calendar_attendee, self).create(cr, uid, vals, context=context)
return res
-calendar_attendee()
class res_alarm(osv.osv):
"""Resource Alarm """
@@ -684,7 +683,7 @@ true, it will allow you to hide the event alarm information without removing it.
ir_obj = self.pool.get('ir.model')
model_id = ir_obj.search(cr, uid, [('model', '=', model)])[0]
- model_obj = self.pool.get(model)
+ model_obj = self.pool[model]
for data in model_obj.browse(cr, uid, ids, context=context):
basic_alarm = data.alarm_id
@@ -754,7 +753,7 @@ true, it will allow you to hide the event alarm information without removing it.
alarm_obj = self.pool.get('calendar.alarm')
ir_obj = self.pool.get('ir.model')
model_id = ir_obj.search(cr, uid, [('model', '=', model)])[0]
- model_obj = self.pool.get(model)
+ model_obj = self.pool[model]
for data in model_obj.browse(cr, uid, ids, context=context):
alarm_ids = alarm_obj.search(cr, uid, [('model_id', '=', model_id), ('res_id', '=', data.id)])
if alarm_ids:
@@ -763,7 +762,6 @@ true, it will allow you to hide the event alarm information without removing it.
where id=%%s' % model_obj._table,(data.id,))
return True
-res_alarm()
class calendar_alarm(osv.osv):
_name = 'calendar.alarm'
@@ -853,13 +851,15 @@ class calendar_alarm(osv.osv):
for alarm in self.browse(cr, uid, alarm_ids, context=context):
next_trigger_date = None
update_vals = {}
- model_obj = self.pool.get(alarm.model_id.model)
+ model_obj = self.pool[alarm.model_id.model]
res_obj = model_obj.browse(cr, uid, alarm.res_id, context=context)
re_dates = []
if hasattr(res_obj, 'rrule') and res_obj.rrule:
event_date = datetime.strptime(res_obj.date, '%Y-%m-%d %H:%M:%S')
- recurrent_dates = get_recurrent_dates(res_obj.rrule, res_obj.exdate, event_date, res_obj.exrule)
+ #exdate is a string and we need a list
+ exdate = res_obj.exdate and res_obj.exdate.split(',') or []
+ recurrent_dates = get_recurrent_dates(res_obj.rrule, exdate, event_date, res_obj.exrule)
trigger_interval = alarm.trigger_interval
if trigger_interval == 'days':
@@ -916,7 +916,6 @@ From:
self.write(cr, uid, [alarm.id], update_vals)
return True
-calendar_alarm()
class calendar_event(osv.osv):
@@ -1608,7 +1607,6 @@ rule or repeating pattern of time to exclude from the recurring rule."),
"""
return self.write(cr, uid, ids, {'state': 'confirmed'}, context)
-calendar_event()
class calendar_todo(osv.osv):
""" Calendar Task """
@@ -1657,7 +1655,6 @@ class calendar_todo(osv.osv):
__attribute__ = {}
-calendar_todo()
class ir_values(osv.osv):
@@ -1702,7 +1699,6 @@ class ir_values(osv.osv):
return super(ir_values, self).get(cr, uid, key, key2, new_model, \
meta, context, res_id_req, without_user, key2_req)
-ir_values()
class ir_model(osv.osv):
@@ -1728,7 +1724,6 @@ class ir_model(osv.osv):
val['id'] = base_calendar_id2real_id(val['id'])
return isinstance(ids, (str, int, long)) and data[0] or data
-ir_model()
original_exp_report = openerp.service.report.exp_report
diff --git a/addons/base_calendar/base_calendar_data.xml b/addons/base_calendar/base_calendar_data.xml
index 727a0703db2..64aa7ba59b6 100644
--- a/addons/base_calendar/base_calendar_data.xml
+++ b/addons/base_calendar/base_calendar_data.xml
@@ -126,7 +126,7 @@
Run Event Reminder
- 1
+ 5minutes-1
diff --git a/addons/base_calendar/crm_meeting.py b/addons/base_calendar/crm_meeting.py
index 6010f5ccfca..aa476002abc 100644
--- a/addons/base_calendar/crm_meeting.py
+++ b/addons/base_calendar/crm_meeting.py
@@ -135,7 +135,7 @@ class mail_message(osv.osv):
def _find_allowed_model_wise(self, cr, uid, doc_model, doc_dict, context=None):
if doc_model == 'crm.meeting':
- for virtual_id in self.pool.get(doc_model).get_recurrent_ids(cr, uid, doc_dict.keys(), [], context=context):
+ for virtual_id in self.pool[doc_model].get_recurrent_ids(cr, uid, doc_dict.keys(), [], context=context):
doc_dict.setdefault(virtual_id, doc_dict[get_real_ids(virtual_id)])
return super(mail_message, self)._find_allowed_model_wise(cr, uid, doc_model, doc_dict, context=context)
diff --git a/addons/base_calendar/i18n/es_MX.po b/addons/base_calendar/i18n/es_MX.po
index fcb00c6d478..9a2fe449d37 100644
--- a/addons/base_calendar/i18n/es_MX.po
+++ b/addons/base_calendar/i18n/es_MX.po
@@ -1,929 +1,879 @@
-# Spanish translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# Spanish (Mexico) 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 , 2010.
+# FIRST AUTHOR , 2013.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2011-01-18 01:17+0000\n"
-"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
-"\n"
-"Language-Team: Spanish \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-24 15:25+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Spanish (Mexico) \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:52+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2013-04-25 05:20+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
#. module: base_calendar
#: selection:calendar.alarm,trigger_related:0
#: selection:res.alarm,trigger_related:0
msgid "The event starts"
-msgstr "El evento comienza"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-msgid "Hourly"
-msgstr "Cada hora"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Required to Join"
-msgstr "Requerido para unirse"
+#: view:calendar.event:0
+msgid "My Events"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,exdate:0
#: help:calendar.todo,exdate:0
+#: help:crm.meeting,exdate:0
msgid ""
"This property defines the list of date/time exceptions for a recurring "
"calendar component."
msgstr ""
-"Esta propiedad define la lista de excepciones de fecha/hora para un evento "
-"de calendario recurrente."
#. module: base_calendar
-#: constraint:res.users:0
-msgid "The chosen company is not in the allowed companies for this user"
-msgstr ""
-"La compañía seleccionada no está en las compañías permitidas para este "
-"usuario"
-
-#. module: base_calendar
-#: field:calendar.event.edit.all,name:0
-msgid "Title"
-msgstr "Título"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
#: selection:calendar.event,rrule_type:0
#: selection:calendar.todo,rrule_type:0
-msgid "Monthly"
-msgstr "Mensual"
+#: selection:crm.meeting,rrule_type:0
+msgid "Week(s)"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Invited User"
-msgstr "Usuario invitado"
+#: field:calendar.event,we:0
+#: field:calendar.todo,we:0
+#: field:crm.meeting,we:0
+msgid "Wed"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Invitation"
-msgstr "Invitación"
+#: selection:calendar.attendee,cutype:0
+msgid "Unknown"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,recurrency:0
#: help:calendar.todo,recurrency:0
+#: help:crm.meeting,recurrency:0
msgid "Recurrent Meeting"
-msgstr "Reunión periódica"
+msgstr ""
+
+#. module: base_calendar
+#: model:crm.meeting.type,name:base_calendar.categ_meet5
+msgid "Feedback Meeting"
+msgstr ""
#. module: base_calendar
#: model:ir.actions.act_window,name:base_calendar.action_res_alarm_view
#: model:ir.ui.menu,name:base_calendar.menu_crm_meeting_avail_alarm
msgid "Alarms"
-msgstr "Alarmas"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
#: selection:calendar.event,week_list:0
#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
msgid "Sunday"
-msgstr "Domingo"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: field:calendar.attendee,role:0
msgid "Role"
-msgstr "Rol"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: view:calendar.event:0
+#: view:crm.meeting:0
msgid "Invitation details"
-msgstr "Detalles de la invitación"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,byday:0
#: selection:calendar.event,byday:0
#: selection:calendar.todo,byday:0
+#: selection:crm.meeting,byday:0
msgid "Fourth"
-msgstr "Cuarto"
+msgstr ""
#. module: base_calendar
-#: field:calendar.event,show_as:0
-#: field:calendar.todo,show_as:0
-msgid "Show as"
-msgstr "Mostrar como"
+#: model:ir.model,name:base_calendar.model_res_users
+msgid "Users"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,day:0
-#: selection:base.calendar.set.exrule,select1:0
#: field:calendar.event,day:0
#: selection:calendar.event,select1:0
#: field:calendar.todo,day:0
#: selection:calendar.todo,select1:0
+#: field:crm.meeting,day:0
+#: selection:crm.meeting,select1:0
msgid "Date of month"
-msgstr "Día del mes"
+msgstr ""
#. module: base_calendar
#: selection:calendar.event,class:0
#: selection:calendar.todo,class:0
+#: selection:crm.meeting,class:0
msgid "Public"
-msgstr "Público"
+msgstr ""
#. module: base_calendar
-#: view:calendar.event:0
-msgid " "
-msgstr " "
+#: selection:calendar.alarm,trigger_interval:0
+#: selection:res.alarm,trigger_interval:0
+msgid "Hours"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "March"
-msgstr "Marzo"
+msgstr ""
#. module: base_calendar
-#: code:addons/base_calendar/base_calendar.py:414
-#: code:addons/base_calendar/wizard/base_calendar_set_exrule.py:90
-#, python-format
-msgid "Warning !"
-msgstr "¡Aviso!"
+#: help:calendar.attendee,cutype:0
+msgid "Specify the type of Invitation"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+#: field:crm.meeting,message_unread:0
+msgid "Unread Messages"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
#: selection:calendar.event,week_list:0
#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
msgid "Friday"
-msgstr "Viernes"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,allday:0
#: field:calendar.todo,allday:0
+#: field:crm.meeting,allday:0
msgid "All Day"
-msgstr "Todo el día"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,select1:0
-#: field:calendar.event,select1:0
-#: field:calendar.todo,select1:0
-msgid "Option"
-msgstr "Opción"
+#: field:calendar.event,vtimezone:0
+#: field:calendar.todo,vtimezone:0
+#: field:crm.meeting,vtimezone:0
+msgid "Timezone"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,availability:0
#: selection:calendar.event,show_as:0
#: selection:calendar.todo,show_as:0
-#: selection:res.users,availability:0
+#: selection:crm.meeting,show_as:0
msgid "Free"
-msgstr "Libre"
+msgstr ""
+
+#. module: base_calendar
+#: help:crm.meeting,message_unread:0
+msgid "If checked new messages require your attention."
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,rsvp:0
msgid "Indicats whether the favor of a reply is requested"
-msgstr "Indica si es requerida la confirmación de una respuesta."
+msgstr ""
#. module: base_calendar
-#: model:ir.model,name:base_calendar.model_ir_attachment
-msgid "ir.attachment"
-msgstr "ir.adjunto"
+#: field:calendar.alarm,alarm_id:0
+msgid "Basic Alarm"
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,delegated_to:0
msgid "The users that the original request was delegated to"
-msgstr "Los usuarios a los que les fue delegado la petición original"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,ref:0
msgid "Event Ref"
-msgstr "Ref. evento"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,we:0
-#: field:calendar.event,we:0
-#: field:calendar.todo,we:0
-msgid "Wed"
-msgstr "Mié"
-
-#. module: base_calendar
-#: view:calendar.event:0
-msgid "Show Time as"
-msgstr "Mostrar hora como"
-
-#. module: base_calendar
-#: field:base.calendar.set.exrule,tu:0
#: field:calendar.event,tu:0
#: field:calendar.todo,tu:0
+#: field:crm.meeting,tu:0
msgid "Tue"
-msgstr "Mar"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-#: selection:calendar.event,rrule_type:0
-#: selection:calendar.todo,rrule_type:0
-msgid "Yearly"
-msgstr "Anualmente"
+#: selection:calendar.event,byday:0
+#: selection:calendar.todo,byday:0
+#: selection:crm.meeting,byday:0
+msgid "Third"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,trigger_related:0
#: selection:res.alarm,trigger_related:0
msgid "The event ends"
-msgstr "El evento finaliza"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,byday:0
#: selection:calendar.event,byday:0
#: selection:calendar.todo,byday:0
+#: selection:crm.meeting,byday:0
msgid "Last"
-msgstr "Última"
+msgstr ""
#. module: base_calendar
-#: help:calendar.attendee,state:0
-msgid "Status of the attendee's participation"
-msgstr "Estado de la participación de los asistentes"
+#: help:crm.meeting,message_ids:0
+msgid "Messages and communication history"
+msgstr ""
#. module: base_calendar
-#: selection:calendar.attendee,cutype:0
-msgid "Room"
-msgstr "Sala"
+#: field:crm.meeting,message_ids:0
+msgid "Messages"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,trigger_interval:0
-#: selection:calendar.event,freq:0
-#: selection:calendar.todo,freq:0
#: selection:res.alarm,trigger_interval:0
msgid "Days"
-msgstr "Días"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: view:calendar.event:0
-msgid "Invitation Detail"
-msgstr "Detalle de la invitación"
+msgid "To"
+msgstr ""
#. module: base_calendar
-#: code:addons/base_calendar/base_calendar.py:1355
-#: code:addons/base_calendar/wizard/base_calendar_invite_attendee.py:96
-#: code:addons/base_calendar/wizard/base_calendar_invite_attendee.py:143
-#: code:addons/base_calendar/wizard/base_calendar_set_exrule.py:128
-#: code:addons/base_calendar/wizard/base_calendar_set_exrule.py:136
+#: code:addons/base_calendar/base_calendar.py:1260
#, python-format
msgid "Error!"
-msgstr "¡Error!"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,role:0
msgid "Chair Person"
-msgstr "Presidente"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+msgid "My Meetings"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,action:0
msgid "Procedure"
-msgstr "Procedimiento"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.event,recurrent_id:0
+#: field:calendar.todo,recurrent_id:0
+#: field:crm.meeting,recurrent_id:0
+msgid "Recurrent ID"
+msgstr ""
#. module: base_calendar
#: selection:calendar.event,state:0
#: selection:calendar.todo,state:0
msgid "Cancelled"
-msgstr "Cancelada"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,trigger_interval:0
#: selection:res.alarm,trigger_interval:0
msgid "Minutes"
-msgstr "Minutos"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,action:0
msgid "Display"
-msgstr "Mostrar"
+msgstr ""
#. module: base_calendar
-#: view:calendar.event.edit.all:0
-msgid "Edit all Occurrences"
-msgstr "Editar todas las ocurrencias"
+#: help:calendar.attendee,state:0
+msgid "Status of the attendee's participation"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Invitation type"
-msgstr "Tipo de invitación"
+#: view:crm.meeting:0
+msgid "Mail To"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-msgid "Secondly"
-msgstr "En segundo lugar"
+#: field:crm.meeting,name:0
+msgid "Meeting Subject"
+msgstr ""
#. module: base_calendar
-#: field:calendar.alarm,event_date:0
-#: field:calendar.attendee,event_date:0
#: view:calendar.event:0
-msgid "Event Date"
-msgstr "Fecha evento"
+msgid "End of Recurrence"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: view:calendar.event:0
msgid "Group By..."
-msgstr "Agrupar por..."
-
-#. module: base_calendar
-#: help:base_calendar.invite.attendee,email:0
-msgid "Provide external email address who will receive this invitation."
msgstr ""
-"Proporcione las direcciones de correo externas de quienes recibiran esta "
-"invitacion."
#. module: base_calendar
-#: model:ir.module.module,description:base_calendar.module_meta_information
-msgid ""
-"Full featured calendar system that supports:\n"
-" - Calendar of events\n"
-" - Alerts (create requests)\n"
-" - Recurring events\n"
-" - Invitations to people"
+#: view:calendar.event:0
+msgid "Recurrency Option"
msgstr ""
-"Completo sistema de calendario que soporta:\n"
-" - Calendario de eventos\n"
-" - Alertas (crea peticiones)\n"
-" - Eventos recursivos\n"
-" - Invitación de personas"
#. module: base_calendar
-#: help:calendar.attendee,cutype:0
-msgid "Specify the type of Invitation"
-msgstr "Especifique el tipo de invitación"
+#: view:calendar.event:0
+msgid "Choose day where repeat the meeting"
+msgstr ""
#. module: base_calendar
-#: selection:calendar.event,freq:0
-#: selection:calendar.todo,freq:0
-msgid "Years"
-msgstr "Años"
+#: view:crm.meeting:0
+#: model:ir.actions.act_window,name:base_calendar.action_crm_meeting
+msgid "Meetings"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.event,recurrent_id_date:0
+#: field:calendar.todo,recurrent_id_date:0
+#: field:crm.meeting,recurrent_id_date:0
+msgid "Recurrent ID date"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,event_end_date:0
#: field:calendar.attendee,event_end_date:0
msgid "Event End Date"
-msgstr "Fecha del final del evento"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,role:0
msgid "Optional Participation"
-msgstr "Participación opcional"
+msgstr ""
#. module: base_calendar
-#: field:calendar.event,date_deadline:0
-#: field:calendar.todo,date_deadline:0
-msgid "Deadline"
-msgstr "Fecha límite"
+#: help:crm.meeting,message_summary:0
+msgid ""
+"Holds the Chatter summary (number of messages, ...). This summary is "
+"directly in html format in order to be inserted in kanban views."
+msgstr ""
#. module: base_calendar
-#: code:addons/base_calendar/base_calendar.py:385
-#: code:addons/base_calendar/base_calendar.py:1088
-#: code:addons/base_calendar/base_calendar.py:1090
+#: code:addons/base_calendar/base_calendar.py:399
+#: code:addons/base_calendar/base_calendar.py:441
+#: code:addons/base_calendar/base_calendar.py:1013
+#: code:addons/base_calendar/base_calendar.py:1015
+#: code:addons/base_calendar/base_calendar.py:1460
#, python-format
msgid "Warning!"
-msgstr "¡Aviso!"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,active:0
#: help:calendar.todo,active:0
+#: help:crm.meeting,active:0
msgid ""
"If the active field is set to true, it will allow you to hide the "
"event alarm information without removing it."
msgstr ""
-"Si el campo activo se establece a verdadero, se omitirá la alarma del "
-"evento, sin embargo no se eliminará."
#. module: base_calendar
-#: model:ir.module.module,shortdesc:base_calendar.module_meta_information
-msgid "Basic Calendar Functionality"
-msgstr "Funcionalidad básica del calendario"
+#: field:calendar.alarm,repeat:0
+#: field:calendar.event,count:0
+#: field:calendar.todo,count:0
+#: field:crm.meeting,count:0
+#: field:res.alarm,repeat:0
+msgid "Repeat"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,organizer:0
#: field:calendar.event,organizer_id:0
#: field:calendar.todo,organizer:0
#: field:calendar.todo,organizer_id:0
+#: field:crm.meeting,organizer:0
+#: field:crm.meeting,organizer_id:0
msgid "Organizer"
-msgstr "Organizador"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: view:calendar.event:0
#: field:calendar.event,user_id:0
#: field:calendar.todo,user_id:0
+#: field:crm.meeting,user_id:0
msgid "Responsible"
-msgstr "Responsable"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
-#: model:res.request.link,name:base_calendar.request_link_meeting
+#: model:res.request.link,name:base_calendar.request_link_event
msgid "Event"
-msgstr "Evento"
-
-#. module: base_calendar
-#: help:calendar.event,edit_all:0
-#: help:calendar.todo,edit_all:0
-msgid "Edit all Occurrences of recurrent Meeting."
-msgstr "Editar todas las ocurrencias de la reunión recurrente."
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,trigger_occurs:0
#: selection:res.alarm,trigger_occurs:0
msgid "Before"
-msgstr "Antes de"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
#: selection:calendar.event,state:0
#: selection:calendar.todo,state:0
+#: field:crm.meeting,date_open:0
+#: selection:crm.meeting,state:0
msgid "Confirmed"
-msgstr "Confirmada"
-
-#. module: base_calendar
-#: model:ir.actions.act_window,name:base_calendar.action_calendar_event_edit_all
-msgid "Edit all events"
-msgstr "Editar todos los eventos"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,attendee_ids:0
#: field:calendar.event,attendee_ids:0
+#: field:calendar.event,partner_ids:0
#: field:calendar.todo,attendee_ids:0
+#: field:calendar.todo,partner_ids:0
+#: field:crm.meeting,attendee_ids:0
+#: field:crm.meeting,partner_ids:0
msgid "Attendees"
-msgstr "Asistentes"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
msgid "Confirm"
-msgstr "Confirmar"
+msgstr ""
#. module: base_calendar
#: model:ir.model,name:base_calendar.model_calendar_todo
msgid "Calendar Task"
-msgstr "Calendario de tareas"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,su:0
#: field:calendar.event,su:0
#: field:calendar.todo,su:0
+#: field:crm.meeting,su:0
msgid "Sun"
-msgstr "Dom"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,cutype:0
msgid "Invite Type"
-msgstr "Tipo de invitación"
-
-#. module: base_calendar
-#: help:calendar.attendee,partner_id:0
-msgid "Partner related to contact"
-msgstr "Partner relacionado con el contacto"
+msgstr ""
#. module: base_calendar
#: view:res.alarm:0
msgid "Reminder details"
-msgstr "Detalles del recordatorio"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,parent_ids:0
msgid "Delegrated From"
-msgstr "Delegado desde"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,select1:0
#: selection:calendar.event,select1:0
#: selection:calendar.todo,select1:0
+#: selection:crm.meeting,select1:0
msgid "Day of month"
-msgstr "Día del mes"
-
-#. module: base_calendar
-#: view:calendar.event:0
-#: field:calendar.event,location:0
-#: field:calendar.event.edit.all,location:0
-#: field:calendar.todo,location:0
-msgid "Location"
-msgstr "Lugar"
-
-#. module: base_calendar
-#: field:base_calendar.invite.attendee,send_mail:0
-msgid "Send mail?"
-msgstr "¿Enviar email?"
-
-#. module: base_calendar
-#: field:base_calendar.invite.attendee,email:0
-#: selection:calendar.alarm,action:0
-#: field:calendar.attendee,email:0
-msgid "Email"
-msgstr "Correo electrónico"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Event Detail"
-msgstr "Detalles del evento"
-
-#. module: base_calendar
-#: selection:calendar.alarm,state:0
-msgid "Run"
-msgstr "Ejecutar"
-
-#. module: base_calendar
-#: field:calendar.event,exdate:0
-#: field:calendar.todo,exdate:0
-msgid "Exception Date/Times"
-msgstr "Fecha/horas excepción"
-
-#. module: base_calendar
-#: selection:calendar.event,class:0
-#: selection:calendar.todo,class:0
-msgid "Confidential"
-msgstr "Confidencial"
-
-#. module: base_calendar
-#: field:base.calendar.set.exrule,end_date:0
-#: field:calendar.event,end_date:0
-#: field:calendar.todo,end_date:0
-msgid "Repeat Until"
-msgstr "Repetir hasta"
-
-#. module: base_calendar
-#: model:ir.actions.act_window,help:base_calendar.action_res_alarm_view
-msgid ""
-"Create specific calendar alarms that may be assigned to calendar events or "
-"meetings."
msgstr ""
-"Crear alarmas específicas que puedan ser asignadas a eventos de calendario o "
-"reuniones."
#. module: base_calendar
-#: view:calendar.event:0
-msgid "Visibility"
-msgstr "Visibilidad"
+#: field:crm.meeting,message_follower_ids:0
+msgid "Followers"
+msgstr ""
#. module: base_calendar
-#: field:calendar.attendee,rsvp:0
-msgid "Required Reply?"
-msgstr "¿Respuesta requerida?"
-
-#. module: base_calendar
-#: field:calendar.event,base_calendar_url:0
-#: field:calendar.todo,base_calendar_url:0
-msgid "Caldav URL"
-msgstr "URL de caldav"
-
-#. module: base_calendar
-#: view:base.calendar.set.exrule:0
-msgid "Select range to Exclude"
-msgstr "Elija el rango a excluir"
-
-#. module: base_calendar
-#: field:calendar.event,recurrent_uid:0
-#: field:calendar.todo,recurrent_uid:0
-msgid "Recurrent ID"
-msgstr "ID recurrente"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
-#: selection:calendar.event,month_list:0
-#: selection:calendar.todo,month_list:0
-msgid "July"
-msgstr "Julio"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-#: selection:calendar.attendee,state:0
-msgid "Accepted"
-msgstr "Aceptada"
-
-#. module: base_calendar
-#: field:base.calendar.set.exrule,th:0
-#: field:calendar.event,th:0
-#: field:calendar.todo,th:0
-msgid "Thu"
-msgstr "Jue"
-
-#. module: base_calendar
-#: field:calendar.attendee,child_ids:0
-msgid "Delegrated To"
-msgstr "Delegada en"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Required Reply"
-msgstr "Respuesta requerida"
-
-#. module: base_calendar
-#: selection:calendar.event,end_type:0
-#: selection:calendar.todo,end_type:0
-msgid "Forever"
-msgstr "Siempre"
+#: field:calendar.event,location:0
+#: field:calendar.todo,location:0
+#: field:crm.meeting,location:0
+msgid "Location"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,role:0
msgid "Participation required"
-msgstr "Participación requerida"
+msgstr ""
#. module: base_calendar
-#: view:base.calendar.set.exrule:0
-msgid "_Cancel"
-msgstr "_Cancelar"
+#: view:calendar.event:0
+#: field:calendar.event,show_as:0
+#: field:calendar.todo,show_as:0
+#: field:crm.meeting,show_as:0
+msgid "Show Time as"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.alarm,action:0
+#: field:calendar.attendee,email:0
+msgid "Email"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.attendee,cutype:0
+msgid "Room"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.alarm,state:0
+msgid "Run"
+msgstr ""
+
+#. module: base_calendar
+#: model:ir.model,name:base_calendar.model_calendar_alarm
+msgid "Event alarm information"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/base_calendar.py:1015
+#, python-format
+msgid "Count cannot be negative or 0."
+msgstr ""
+
+#. module: base_calendar
+#: field:crm.meeting,create_date:0
+msgid "Creation Date"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+#: model:ir.model,name:base_calendar.model_crm_meeting
+#: model:res.request.link,name:base_calendar.request_link_meeting
+msgid "Meeting"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.event,rrule_type:0
+#: selection:calendar.todo,rrule_type:0
+#: selection:crm.meeting,rrule_type:0
+msgid "Month(s)"
+msgstr ""
+
+#. module: base_calendar
+#: view:calendar.event:0
+msgid "Visibility"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.attendee,rsvp:0
+msgid "Required Reply?"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.event,base_calendar_url:0
+#: field:calendar.todo,base_calendar_url:0
+#: field:crm.meeting,base_calendar_url:0
+msgid "Caldav URL"
+msgstr ""
+
+#. module: base_calendar
+#: model:ir.model,name:base_calendar.model_mail_wizard_invite
+msgid "Invite wizard"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.event,month_list:0
+#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
+msgid "July"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.attendee,state:0
+msgid "Accepted"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.event,th:0
+#: field:calendar.todo,th:0
+#: field:crm.meeting,th:0
+msgid "Thu"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+msgid "Meeting Details"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.attendee,child_ids:0
+msgid "Delegrated To"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/crm_meeting.py:102
+#, python-format
+msgid "The following contacts have no email address :"
+msgstr ""
+
+#. module: base_calendar
+#: selection:calendar.event,rrule_type:0
+#: selection:calendar.todo,rrule_type:0
+#: selection:crm.meeting,rrule_type:0
+msgid "Year(s)"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting.type:0
+#: model:ir.actions.act_window,name:base_calendar.action_crm_meeting_type
+#: model:ir.ui.menu,name:base_calendar.menu_crm_meeting_type
+msgid "Meeting Types"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,create_date:0
#: field:calendar.todo,create_date:0
msgid "Created"
-msgstr "Creada"
+msgstr ""
#. module: base_calendar
#: selection:calendar.event,class:0
#: selection:calendar.todo,class:0
-msgid "Private"
-msgstr "Privada"
+#: selection:crm.meeting,class:0
+msgid "Public for Employees"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-#: selection:calendar.event,rrule_type:0
-#: selection:calendar.todo,rrule_type:0
-msgid "Daily"
-msgstr "Diariamente"
+#: view:crm.meeting:0
+msgid "hours"
+msgstr ""
#. module: base_calendar
-#: code:addons/base_calendar/base_calendar.py:385
-#, python-format
-msgid "Can not Duplicate"
-msgstr "No se puede duplicar"
-
-#. module: base_calendar
-#: field:calendar.event,class:0
-#: field:calendar.todo,class:0
-msgid "Mark as"
-msgstr "Marcar como"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-#: field:calendar.attendee,partner_address_id:0
-msgid "Contact"
-msgstr "Contacto"
-
-#. module: base_calendar
-#: help:calendar.event,rrule_type:0
-#: help:calendar.todo,rrule_type:0
-msgid "Let the event automatically repeat at that interval"
-msgstr "Permite que el evento se repita automáticamente en ese intervalo"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-#: view:calendar.event:0
-msgid "Delegate"
-msgstr "Delegar"
-
-#. module: base_calendar
-#: field:base_calendar.invite.attendee,partner_id:0
-#: view:calendar.attendee:0
#: field:calendar.attendee,partner_id:0
-msgid "Partner"
-msgstr "Empresa"
+msgid "Contact"
+msgstr ""
#. module: base_calendar
-#: view:base_calendar.invite.attendee:0
-#: selection:base_calendar.invite.attendee,type:0
-msgid "Partner Contacts"
-msgstr "Contactos de la empresa"
+#: field:calendar.attendee,language:0
+msgid "Language"
+msgstr ""
#. module: base_calendar
-#: view:base.calendar.set.exrule:0
-msgid "_Ok"
-msgstr "_Aceptar"
+#: field:calendar.event,end_date:0
+#: field:calendar.todo,end_date:0
+#: field:crm.meeting,end_date:0
+msgid "Repeat Until"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+msgid "Options"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,byday:0
#: selection:calendar.event,byday:0
#: selection:calendar.todo,byday:0
+#: selection:crm.meeting,byday:0
msgid "First"
-msgstr "Primera"
-
-#. module: base_calendar
-#: view:calendar.event:0
-msgid "Privacy"
-msgstr "Privacidad"
-
-#. module: base_calendar
-#: field:calendar.event,vtimezone:0
-#: field:calendar.todo,vtimezone:0
-msgid "Timezone"
-msgstr "Zona horaria"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
+#: view:crm.meeting:0
msgid "Subject"
-msgstr "Asunto"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "September"
-msgstr "Septiembre"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "December"
-msgstr "Diciembre"
+msgstr ""
#. module: base_calendar
-#: help:base_calendar.invite.attendee,send_mail:0
-msgid "Check this if you want to send an Email to Invited Person"
-msgstr "Marque aquí si quiere enviar un correo a la persona invitada"
+#: selection:calendar.event,week_list:0
+#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
+msgid "Tuesday"
+msgstr ""
+
+#. module: base_calendar
+#: field:crm.meeting,categ_ids:0
+msgid "Tags"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
msgid "Availability"
-msgstr "Disponibilidad"
-
-#. module: base_calendar
-#: view:calendar.event.edit.all:0
-msgid "_Save"
-msgstr "_Guardar"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,cutype:0
msgid "Individual"
-msgstr "Individual"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,count:0
#: help:calendar.todo,count:0
+#: help:crm.meeting,count:0
msgid "Repeat x times"
-msgstr "Repetir x veces"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,user_id:0
msgid "Owner"
-msgstr "Dueño"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Delegation Info"
-msgstr "Información delegación"
+#: help:calendar.event,rrule_type:0
+#: help:calendar.todo,rrule_type:0
+#: help:crm.meeting,rrule_type:0
+msgid "Let the event automatically repeat at that interval"
+msgstr ""
#. module: base_calendar
-#: view:calendar.event:0
-#: field:calendar.event.edit.all,date:0
-msgid "Start Date"
-msgstr "Fecha inicio"
+#: model:ir.ui.menu,name:base_calendar.mail_menu_calendar
+msgid "Calendar"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,cn:0
msgid "Common name"
-msgstr "Nombre común"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: selection:calendar.attendee,state:0
msgid "Declined"
-msgstr "Rechazada"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "My Role"
-msgstr "Mi rol"
+#: code:addons/base_calendar/base_calendar.py:1460
+#, python-format
+msgid "Group by date is not supported, use the calendar view instead."
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
-msgid "My Events"
-msgstr "Mis eventos"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-#: view:calendar.event:0
+#: view:crm.meeting:0
msgid "Decline"
-msgstr "Rechazar"
-
-#. module: base_calendar
-#: selection:calendar.event,freq:0
-#: selection:calendar.todo,freq:0
-msgid "Weeks"
-msgstr "Semanas"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,cutype:0
msgid "Group"
-msgstr "Grupo"
+msgstr ""
#. module: base_calendar
-#: field:calendar.event,edit_all:0
-#: field:calendar.todo,edit_all:0
-msgid "Edit All"
-msgstr "Editar todo"
+#: selection:calendar.event,class:0
+#: selection:calendar.todo,class:0
+#: selection:crm.meeting,class:0
+msgid "Private"
+msgstr ""
#. module: base_calendar
-#: field:base_calendar.invite.attendee,contact_ids:0
-msgid "Contacts"
-msgstr "Contactos"
+#: view:calendar.event:0
+#: field:calendar.event,class:0
+#: field:calendar.todo,class:0
+#: field:crm.meeting,class:0
+msgid "Privacy"
+msgstr ""
#. module: base_calendar
#: model:ir.model,name:base_calendar.model_res_alarm
msgid "Basic Alarm Information"
-msgstr "Información sobre la alarma básica"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,fr:0
#: field:calendar.event,fr:0
#: field:calendar.todo,fr:0
+#: field:crm.meeting,fr:0
msgid "Fri"
-msgstr "Vie"
+msgstr ""
#. module: base_calendar
-#: selection:calendar.alarm,trigger_interval:0
-#: selection:calendar.event,freq:0
-#: selection:calendar.todo,freq:0
-#: selection:res.alarm,trigger_interval:0
-msgid "Hours"
-msgstr "Horas"
-
-#. module: base_calendar
-#: code:addons/base_calendar/base_calendar.py:1090
-#, python-format
-msgid "Count can not be Negative"
-msgstr "La cuenta no puede ser negativa"
+#: view:calendar.event:0
+msgid "Invitation Detail"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,member:0
msgid "Member"
-msgstr "Miembro"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,location:0
#: help:calendar.todo,location:0
+#: help:crm.meeting,location:0
msgid "Location of Event"
-msgstr "Ubicación del evento"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,rrule:0
#: field:calendar.todo,rrule:0
+#: field:crm.meeting,rrule:0
msgid "Recurrent Rule"
-msgstr "Regla recurrente"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,state:0
msgid "Draft"
-msgstr "Borrador"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,attach:0
msgid "Attachment"
-msgstr "Adjunto"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Invitation From"
-msgstr "Invitación desde"
+#: field:crm.meeting,date_closed:0
+msgid "Closed"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
-msgid "End of Recurrency"
-msgstr "Fin de recurrencia"
+msgid "From"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
-#: field:calendar.event.edit.all,alarm_id:0
+#: field:calendar.event,alarm_id:0
+#: field:calendar.todo,alarm_id:0
+#: field:crm.meeting,alarm_id:0
msgid "Reminder"
-msgstr "Recordatorio"
+msgstr ""
#. module: base_calendar
-#: view:base.calendar.set.exrule:0
-#: model:ir.model,name:base_calendar.model_base_calendar_set_exrule
-msgid "Set Exrule"
-msgstr "Establecer Exregla"
+#: selection:calendar.event,end_type:0
+#: selection:calendar.todo,end_type:0
+#: selection:crm.meeting,end_type:0
+msgid "Number of repetitions"
+msgstr ""
+
+#. module: base_calendar
+#: model:crm.meeting.type,name:base_calendar.categ_meet2
+msgid "Internal Meeting"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
#: model:ir.actions.act_window,name:base_calendar.action_view_event
#: model:ir.ui.menu,name:base_calendar.menu_events
msgid "Events"
-msgstr "Eventos"
+msgstr ""
#. module: base_calendar
-#: model:ir.actions.act_window,name:base_calendar.action_view_calendar_invite_attendee_wizard
-#: model:ir.model,name:base_calendar.model_base_calendar_invite_attendee
-msgid "Invite Attendees"
-msgstr "Invitar asistentes"
+#: field:calendar.alarm,state:0
+#: field:calendar.attendee,state:0
+#: view:calendar.event:0
+#: field:calendar.event,state:0
+#: field:calendar.todo,state:0
+#: field:crm.meeting,state:0
+msgid "Status"
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,email:0
msgid "Email of Invited Person"
-msgstr "Email del invitado"
+msgstr ""
#. module: base_calendar
-#: field:calendar.alarm,repeat:0
-#: field:calendar.event,count:0
-#: field:calendar.todo,count:0
-#: field:res.alarm,repeat:0
-msgid "Repeat"
-msgstr "Repetir"
+#: model:crm.meeting.type,name:base_calendar.categ_meet1
+msgid "Customer Meeting"
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,dir:0
@@ -931,186 +881,193 @@ msgid ""
"Reference to the URIthat points to the directory information corresponding "
"to the attendee."
msgstr ""
-"La referencia a la URI que apunta a la información del directorio "
-"correspondiente al participante."
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "August"
-msgstr "Agosto"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
#: selection:calendar.event,week_list:0
#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
msgid "Monday"
-msgstr "Lunes"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,byday:0
-#: selection:calendar.event,byday:0
-#: selection:calendar.todo,byday:0
-msgid "Third"
-msgstr "Tercero"
+#: model:crm.meeting.type,name:base_calendar.categ_meet4
+msgid "Open Discussion"
+msgstr ""
+
+#. module: base_calendar
+#: model:ir.model,name:base_calendar.model_ir_model
+msgid "Models"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "June"
-msgstr "Junio"
+msgstr ""
#. module: base_calendar
-#: field:calendar.alarm,alarm_id:0
-msgid "Basic Alarm"
-msgstr "Alarma básica"
-
-#. module: base_calendar
-#: view:base.calendar.set.exrule:0
+#: field:calendar.alarm,event_date:0
+#: field:calendar.attendee,event_date:0
#: view:calendar.event:0
-msgid "The"
-msgstr "El"
+msgid "Event Date"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+msgid "Invitations"
+msgstr ""
+
+#. module: base_calendar
+#: view:calendar.event:0
+#: view:crm.meeting:0
+msgid "The"
+msgstr ""
+
+#. module: base_calendar
+#: field:crm.meeting,write_date:0
+msgid "Write Date"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: field:calendar.attendee,delegated_from:0
msgid "Delegated From"
-msgstr "Delegado desde"
+msgstr ""
+
+#. module: base_calendar
+#: field:crm.meeting,message_is_follower:0
+msgid "Is a Follower"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,user_id:0
msgid "User"
-msgstr "Usuario"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
#: field:calendar.event,date:0
+#: field:crm.meeting,date:0
msgid "Date"
-msgstr "Fecha"
+msgstr ""
+
+#. module: base_calendar
+#: view:calendar.event:0
+msgid "Start Date"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "November"
-msgstr "Noviembre"
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,member:0
msgid "Indicate the groups that the attendee belongs to"
-msgstr "Indicar los grupos a los que pertenece el asistente"
+msgstr ""
#. module: base_calendar
-#: view:base_calendar.invite.attendee:0
-msgid "Data"
-msgstr "Datos"
-
-#. module: base_calendar
-#: field:base.calendar.set.exrule,mo:0
#: field:calendar.event,mo:0
#: field:calendar.todo,mo:0
+#: field:crm.meeting,mo:0
msgid "Mon"
-msgstr "Lun"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,count:0
-msgid "Count"
-msgstr "Total"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-#: selection:calendar.event,freq:0
-#: selection:calendar.todo,freq:0
-msgid "No Repeat"
-msgstr "No repetir"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "October"
-msgstr "Octubre"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
+#: selection:calendar.attendee,state:0
#: view:calendar.event:0
+#: selection:calendar.event,state:0
+#: selection:calendar.todo,state:0
+#: view:crm.meeting:0
msgid "Uncertain"
-msgstr "Incierto"
+msgstr ""
#. module: base_calendar
-#: field:calendar.attendee,language:0
-msgid "Language"
-msgstr "Idioma"
+#: constraint:calendar.event:0
+#: constraint:calendar.todo:0
+#: constraint:crm.meeting:0
+msgid "Error ! End date cannot be set before start date."
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,trigger_occurs:0
#: field:res.alarm,trigger_occurs:0
msgid "Triggers"
-msgstr "Disparadores"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "January"
-msgstr "Enero"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,trigger_related:0
#: field:res.alarm,trigger_related:0
msgid "Related to"
-msgstr "Relacionado con"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,interval:0
#: field:calendar.alarm,trigger_interval:0
#: field:res.alarm,trigger_interval:0
msgid "Interval"
-msgstr "Intervalo"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
#: selection:calendar.event,week_list:0
#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
msgid "Wednesday"
-msgstr "Miércoles"
-
-#. module: base_calendar
-#: code:addons/base_calendar/base_calendar.py:1088
-#, python-format
-msgid "Interval can not be Negative"
-msgstr "El intervalo no puede ser negativo"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,name:0
#: view:calendar.event:0
+#: field:crm.meeting,message_summary:0
msgid "Summary"
-msgstr "Resumen"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,active:0
#: field:calendar.event,active:0
#: field:calendar.todo,active:0
+#: field:crm.meeting,active:0
#: field:res.alarm,active:0
msgid "Active"
-msgstr "Activo"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/base_calendar.py:399
+#, python-format
+msgid "You cannot duplicate a calendar attendee."
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
msgid "Choose day in the month where repeat the meeting"
-msgstr "Elija el día del mes en que se repetirá la reunión"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,action:0
msgid "Action"
-msgstr "Acción"
-
-#. module: base_calendar
-#: help:base_calendar.invite.attendee,type:0
-msgid "Select whom you want to Invite"
-msgstr "Seleccione a quien quiere invitar"
+msgstr ""
#. module: base_calendar
#: help:calendar.alarm,duration:0
@@ -1119,52 +1076,38 @@ msgid ""
"Duration' and 'Repeat' are both optional, but if one occurs, so MUST the "
"other"
msgstr ""
-"Duración' y 'Repetir' son ambos opcionales, pero si uno está activo también "
-"debe estarlo el otro"
-
-#. module: base_calendar
-#: model:ir.model,name:base_calendar.model_calendar_event_edit_all
-msgid "Calendar Edit all event"
-msgstr "Editar todos los eventos del calendario"
#. module: base_calendar
#: help:calendar.attendee,role:0
msgid "Participation role for the calendar user"
-msgstr "Rol de participación para el usuario del calendario."
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: field:calendar.attendee,delegated_to:0
msgid "Delegated To"
-msgstr "Delegado a"
+msgstr ""
#. module: base_calendar
#: help:calendar.alarm,action:0
msgid "Defines the action to be invoked when an alarm is triggered"
-msgstr "Define la acción a invocar cuando salte la alarma"
+msgstr ""
+
+#. module: base_calendar
+#: view:crm.meeting:0
+msgid "Starting at"
+msgstr ""
#. module: base_calendar
#: selection:calendar.event,end_type:0
#: selection:calendar.todo,end_type:0
+#: selection:crm.meeting,end_type:0
msgid "End date"
-msgstr "Fecha de fin"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
msgid "Search Events"
-msgstr "Buscar eventos"
-
-#. module: base_calendar
-#: view:calendar.event:0
-msgid "Recurrency Option"
-msgstr "Opción de recurrencia"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-#: selection:calendar.event,rrule_type:0
-#: selection:calendar.todo,rrule_type:0
-msgid "Weekly"
-msgstr "Semanal"
+msgstr ""
#. module: base_calendar
#: help:calendar.alarm,active:0
@@ -1173,87 +1116,70 @@ msgid ""
"If the active field is set to true, it will allow you to hide the event "
"alarm information without removing it."
msgstr ""
-"Si el campo activo es verdadero, le permitirá ocultar la notificación de "
-"aviso del evento sin eliminarlo."
#. module: base_calendar
-#: field:calendar.event,recurrent_id:0
-#: field:calendar.todo,recurrent_id:0
-msgid "Recurrent ID date"
-msgstr "ID fecha recurrente"
+#: field:calendar.event,end_type:0
+#: field:calendar.todo,end_type:0
+#: field:crm.meeting,end_type:0
+msgid "Recurrence Termination"
+msgstr ""
#. module: base_calendar
-#: sql_constraint:res.users:0
-msgid "You can not have two users with the same login !"
-msgstr "¡No puede tener dos usuarios con el mismo identificador de usuario!"
-
-#. module: base_calendar
-#: field:calendar.alarm,state:0
-#: view:calendar.attendee:0
-#: field:calendar.attendee,state:0
-#: view:calendar.event:0
-#: field:calendar.event,state:0
-#: field:calendar.todo,state:0
-msgid "State"
-msgstr "Estado"
+#: view:crm.meeting:0
+msgid "Until"
+msgstr ""
#. module: base_calendar
#: view:res.alarm:0
msgid "Reminder Details"
-msgstr "Detalles del recordatorio"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "To Review"
-msgstr "A revisar"
+#: model:crm.meeting.type,name:base_calendar.categ_meet3
+msgid "Off-site Meeting"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,freq:0
-#: field:calendar.event,freq:0
-#: field:calendar.todo,freq:0
-msgid "Frequency"
-msgstr "Frecuencia"
+#: view:crm.meeting:0
+msgid "Day of Month"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,state:0
msgid "Done"
-msgstr "Hecho"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,interval:0
#: help:calendar.todo,interval:0
+#: help:crm.meeting,interval:0
msgid "Repeat every (Days/Week/Month/Year)"
-msgstr "Repetir cada (días/semana/mes/año)"
+msgstr ""
#. module: base_calendar
-#: view:base_calendar.invite.attendee:0
-#: field:base_calendar.invite.attendee,user_ids:0
-msgid "Users"
-msgstr "Usuarios"
+#: view:crm.meeting:0
+msgid "All Day?"
+msgstr ""
#. module: base_calendar
-#: view:base.calendar.set.exrule:0
-msgid "of"
-msgstr "de"
-
-#. module: base_calendar
-#: view:base_calendar.invite.attendee:0
#: view:calendar.event:0
-#: view:calendar.event.edit.all:0
msgid "Cancel"
-msgstr "Cancelar"
+msgstr ""
#. module: base_calendar
-#: model:ir.model,name:base_calendar.model_res_users
-msgid "res.users"
-msgstr "res.usuarios"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
-#: selection:calendar.event,week_list:0
-#: selection:calendar.todo,week_list:0
-msgid "Tuesday"
-msgstr "Martes"
+#: model:ir.actions.act_window,help:base_calendar.action_crm_meeting
+msgid ""
+"
\n"
+" Click to schedule a new meeting.\n"
+"
\n"
+" The calendar is shared between employees and fully integrated "
+"with\n"
+" other applications such as the employee holidays or the "
+"business\n"
+" opportunities.\n"
+"
\n"
+" "
+msgstr ""
#. module: base_calendar
#: help:calendar.alarm,description:0
@@ -1262,129 +1188,103 @@ msgid ""
"calendar component, than that provided by the "
"\"SUMMARY\" property"
msgstr ""
-"Facilita una descripción más completa del componente del calendario que la "
-"facilitada por la propiedad \"RESUMEN\""
#. module: base_calendar
#: view:calendar.event:0
msgid "Responsible User"
-msgstr "Usuario responsable"
+msgstr ""
#. module: base_calendar
+#: view:crm.meeting:0
+msgid "Select Weekdays"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/base_calendar.py:1519
#: selection:calendar.attendee,availability:0
#: selection:calendar.event,show_as:0
#: selection:calendar.todo,show_as:0
-#: selection:res.users,availability:0
+#: selection:crm.meeting,show_as:0
+#, python-format
msgid "Busy"
-msgstr "Ocupado"
+msgstr ""
#. module: base_calendar
#: model:ir.model,name:base_calendar.model_calendar_event
msgid "Calendar Event"
-msgstr "Evento de calendario"
-
-#. module: base_calendar
-#: selection:calendar.attendee,state:0
-#: selection:calendar.event,state:0
-#: selection:calendar.todo,state:0
-msgid "Tentative"
-msgstr "Provisional"
-
-#. module: base_calendar
-#: field:calendar.event,interval:0
-#: field:calendar.todo,interval:0
-msgid "Repeat every"
-msgstr "Repetir cada"
-
-#. module: base_calendar
-#: selection:calendar.event,end_type:0
-#: selection:calendar.todo,end_type:0
-msgid "Fix amout of times"
-msgstr "Cantidad fija de veces"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,recurrency:0
#: field:calendar.todo,recurrency:0
+#: field:crm.meeting,recurrency:0
msgid "Recurrent"
-msgstr "Recurrente"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,rrule_type:0
#: field:calendar.todo,rrule_type:0
+#: field:crm.meeting,rrule_type:0
msgid "Recurrency"
-msgstr "Recurrencia"
+msgstr ""
#. module: base_calendar
-#: model:ir.actions.act_window,name:base_calendar.action_view_attendee_form
-#: model:ir.ui.menu,name:base_calendar.menu_attendee_invitations
-msgid "Event Invitations"
-msgstr "Invitaciones al evento"
-
-#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
#: selection:calendar.event,week_list:0
#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
msgid "Thursday"
-msgstr "Jueves"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,exrule:0
#: field:calendar.todo,exrule:0
+#: field:crm.meeting,exrule:0
msgid "Exception Rule"
-msgstr "Regla de excepción"
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,language:0
msgid ""
"To specify the language for text values in aproperty or property parameter."
msgstr ""
-"Para indicar el idioma de los valores de texto en una propiedad o parámetro "
-"de propiedad."
#. module: base_calendar
#: view:calendar.event:0
msgid "Details"
-msgstr "Detalles"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,exrule:0
#: help:calendar.todo,exrule:0
+#: help:crm.meeting,exrule:0
msgid ""
"Defines a rule or repeating pattern of time to exclude from the recurring "
"rule."
msgstr ""
-"Define una regla o patrón de repetición de tiempo a excluir de la regla "
-"recurrente."
#. module: base_calendar
-#: field:base.calendar.set.exrule,month_list:0
#: field:calendar.event,month_list:0
#: field:calendar.todo,month_list:0
+#: field:crm.meeting,month_list:0
msgid "Month"
-msgstr "Mes"
-
-#. module: base_calendar
-#: view:base_calendar.invite.attendee:0
-#: view:calendar.event:0
-msgid "Invite People"
-msgstr "Invitar personas"
-
-#. module: base_calendar
-#: help:calendar.event,rrule:0
-#: help:calendar.todo,rrule:0
-msgid ""
-"Defines a rule or repeating pattern for recurring events\n"
-"e.g.: Every other month on the last Sunday of the month for 10 occurrences: "
-" FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=-1SU"
msgstr ""
-"Define una regla o patrón repetitivo para eventos recurrentes.\n"
-"Por ejemplo: Para 10 ocurrencias cada último domingo de cada dos meses : "
-"FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=-1SU"
+
+#. module: base_calendar
+#: selection:calendar.event,rrule_type:0
+#: selection:calendar.todo,rrule_type:0
+#: selection:crm.meeting,rrule_type:0
+msgid "Day(s)"
+msgstr ""
+
+#. module: base_calendar
+#: view:calendar.event:0
+msgid "Confirmed Events"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,dir:0
msgid "URI Reference"
-msgstr "Referencia URI"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,description:0
@@ -1393,110 +1293,115 @@ msgstr "Referencia URI"
#: field:calendar.event,name:0
#: field:calendar.todo,description:0
#: field:calendar.todo,name:0
+#: field:crm.meeting,description:0
msgid "Description"
-msgstr "Descripción"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "May"
-msgstr "Mayo"
-
-#. module: base_calendar
-#: field:base_calendar.invite.attendee,type:0
-#: view:calendar.attendee:0
-msgid "Type"
-msgstr "Tipo"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Search Invitations"
-msgstr "Buscar invitaciones"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,trigger_occurs:0
#: selection:res.alarm,trigger_occurs:0
msgid "After"
-msgstr "Después de"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,state:0
msgid "Stop"
-msgstr "Parar"
+msgstr ""
#. module: base_calendar
#: model:ir.model,name:base_calendar.model_ir_values
msgid "ir.values"
-msgstr "ir.valores"
+msgstr ""
#. module: base_calendar
-#: model:ir.model,name:base_calendar.model_ir_model
-msgid "Objects"
-msgstr "Objetos"
+#: view:crm.meeting:0
+msgid "Search Meetings"
+msgstr ""
+
+#. module: base_calendar
+#: model:ir.model,name:base_calendar.model_ir_attachment
+msgid "ir.attachment"
+msgstr ""
+
+#. module: base_calendar
+#: model:ir.model,name:base_calendar.model_crm_meeting_type
+msgid "Meeting Type"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
#: selection:calendar.attendee,state:0
msgid "Delegated"
-msgstr "Delegada"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,sa:0
#: field:calendar.event,sa:0
#: field:calendar.todo,sa:0
+#: field:crm.meeting,sa:0
msgid "Sat"
-msgstr "Sáb"
+msgstr ""
#. module: base_calendar
-#: view:calendar.event:0
-msgid "Choose day where repeat the meeting"
-msgstr "Eligir día en el que repetir la cita"
+#: model:ir.actions.act_window,help:base_calendar.action_res_alarm_view
+msgid ""
+"
\n"
+" Click to setup a new alarm type.\n"
+"
\n"
+" You can define a customized type of calendar alarm that may "
+"be\n"
+" assigned to calendar events or meetings.\n"
+"
\n"
+" "
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,freq:0
-msgid "Minutely"
-msgstr "Cada minuto"
+#: selection:crm.meeting,state:0
+msgid "Unconfirmed"
+msgstr ""
#. module: base_calendar
#: help:calendar.attendee,sent_by:0
msgid "Specify the user that is acting on behalf of the calendar user"
msgstr ""
-"Indique el usuario que está actuando en nombre del usuario del calendario."
#. module: base_calendar
#: view:calendar.event:0
-#: field:calendar.event.edit.all,date_deadline:0
+#: field:calendar.event,date_deadline:0
+#: field:calendar.todo,date_deadline:0
+#: field:crm.meeting,date_deadline:0
msgid "End Date"
-msgstr "Fecha final"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "February"
-msgstr "Febrero"
-
-#. module: base_calendar
-#: selection:calendar.event,freq:0
-#: selection:calendar.todo,freq:0
-msgid "Months"
-msgstr "Meses"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,cutype:0
msgid "Resource"
-msgstr "Recurso"
+msgstr ""
#. module: base_calendar
+#: field:crm.meeting.type,name:0
#: field:res.alarm,name:0
msgid "Name"
-msgstr "Nombre"
+msgstr ""
#. module: base_calendar
-#: model:ir.model,name:base_calendar.model_calendar_alarm
-msgid "Event alarm information"
-msgstr "Información del aviso del evento"
+#: field:calendar.event,exdate:0
+#: field:calendar.todo,exdate:0
+#: field:crm.meeting,exdate:0
+msgid "Exception Date/Times"
+msgstr ""
#. module: base_calendar
#: help:calendar.alarm,name:0
@@ -1504,154 +1409,162 @@ msgid ""
"Contains the text to be used as the message subject for "
"email or contains the text to be used for display"
msgstr ""
-"Contiene el texto a usar como asunto del mensaje para correos electrónicos, "
-"o contiene el texto a mostrar"
#. module: base_calendar
-#: field:calendar.event,alarm_id:0
-#: field:calendar.event,base_calendar_alarm_id:0
-#: field:calendar.todo,alarm_id:0
-#: field:calendar.todo,base_calendar_alarm_id:0
-msgid "Alarm"
-msgstr "Alarma"
-
-#. module: base_calendar
-#: code:addons/base_calendar/wizard/base_calendar_set_exrule.py:90
-#, python-format
-msgid "Please Apply Recurrency before applying Exception Rule."
+#: model:ir.model,name:base_calendar.model_mail_message
+msgid "Message"
+msgstr ""
+
+#. module: base_calendar
+#: field:calendar.event,base_calendar_alarm_id:0
+#: field:calendar.todo,base_calendar_alarm_id:0
+#: field:crm.meeting,base_calendar_alarm_id:0
+msgid "Alarm"
msgstr ""
-"Por favor, aplique la repetición antes de aplicar la excepción de la regla"
#. module: base_calendar
#: field:calendar.attendee,sent_by_uid:0
msgid "Sent By User"
-msgstr "Enviado por usuario"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,month_list:0
#: selection:calendar.event,month_list:0
#: selection:calendar.todo,month_list:0
+#: selection:crm.meeting,month_list:0
msgid "April"
-msgstr "Abril"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/crm_meeting.py:106
+#, python-format
+msgid "Email addresses not found"
+msgstr ""
#. module: base_calendar
#: view:calendar.event:0
msgid "Recurrency period"
-msgstr "Periodo de recurrencia"
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,week_list:0
#: field:calendar.event,week_list:0
#: field:calendar.todo,week_list:0
+#: field:crm.meeting,week_list:0
msgid "Weekday"
-msgstr "Día de la semana"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/base_calendar.py:1013
+#, python-format
+msgid "Interval cannot be negative."
+msgstr ""
#. module: base_calendar
-#: field:base.calendar.set.exrule,byday:0
#: field:calendar.event,byday:0
#: field:calendar.todo,byday:0
+#: field:crm.meeting,byday:0
msgid "By day"
-msgstr "Por día"
+msgstr ""
+
+#. module: base_calendar
+#: code:addons/base_calendar/base_calendar.py:441
+#, python-format
+msgid "First you have to specify the date of the invitation."
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,model_id:0
msgid "Model"
-msgstr "Modelo"
+msgstr ""
#. module: base_calendar
#: selection:calendar.alarm,action:0
msgid "Audio"
-msgstr "Audio"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,id:0
#: field:calendar.todo,id:0
+#: field:crm.meeting,id:0
msgid "ID"
-msgstr "ID"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,role:0
msgid "For information Purpose"
-msgstr "Con propósito informativo"
+msgstr ""
#. module: base_calendar
-#: view:base_calendar.invite.attendee:0
-msgid "Invite"
-msgstr "Invitar"
+#: field:calendar.event,select1:0
+#: field:calendar.todo,select1:0
+#: field:crm.meeting,select1:0
+msgid "Option"
+msgstr ""
#. module: base_calendar
#: model:ir.model,name:base_calendar.model_calendar_attendee
msgid "Attendee information"
-msgstr "Información asistentes"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,res_id:0
msgid "Resource ID"
-msgstr "ID del registro"
+msgstr ""
#. module: base_calendar
#: selection:calendar.attendee,state:0
msgid "Needs Action"
-msgstr "Necesita acción"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,sent_by:0
msgid "Sent By"
-msgstr "Enviado por"
+msgstr ""
#. module: base_calendar
#: field:calendar.event,sequence:0
#: field:calendar.todo,sequence:0
+#: field:crm.meeting,sequence:0
msgid "Sequence"
-msgstr "Secuencia"
+msgstr ""
#. module: base_calendar
#: help:calendar.event,alarm_id:0
#: help:calendar.todo,alarm_id:0
+#: help:crm.meeting,alarm_id:0
msgid "Set an alarm at this time, before the event occurs"
-msgstr "Configure una alarma en este momento, antes de que ocurra el evento"
+msgstr ""
#. module: base_calendar
-#: selection:base_calendar.invite.attendee,type:0
-msgid "Internal User"
-msgstr "Usuario interno"
-
-#. module: base_calendar
-#: view:calendar.attendee:0
#: view:calendar.event:0
+#: view:crm.meeting:0
msgid "Accept"
-msgstr "Aceptar"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,week_list:0
#: selection:calendar.event,week_list:0
#: selection:calendar.todo,week_list:0
+#: selection:crm.meeting,week_list:0
msgid "Saturday"
-msgstr "Sábado"
+msgstr ""
#. module: base_calendar
-#: view:calendar.attendee:0
-msgid "Invitation To"
-msgstr "Invitación a"
+#: field:calendar.event,interval:0
+#: field:calendar.todo,interval:0
+#: field:crm.meeting,interval:0
+msgid "Repeat Every"
+msgstr ""
#. module: base_calendar
-#: selection:base.calendar.set.exrule,byday:0
#: selection:calendar.event,byday:0
#: selection:calendar.todo,byday:0
+#: selection:crm.meeting,byday:0
msgid "Second"
-msgstr "Segundo"
+msgstr ""
#. module: base_calendar
#: field:calendar.attendee,availability:0
-#: field:res.users,availability:0
msgid "Free/Busy"
-msgstr "Libre/Ocupado"
-
-#. module: base_calendar
-#: field:calendar.event,end_type:0
-#: field:calendar.todo,end_type:0
-msgid "Way to end reccurency"
-msgstr "Forma de terminar recurrencia"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,duration:0
@@ -1659,20 +1572,16 @@ msgstr "Forma de terminar recurrencia"
#: field:calendar.event,duration:0
#: field:calendar.todo,date:0
#: field:calendar.todo,duration:0
+#: field:crm.meeting,duration:0
#: field:res.alarm,duration:0
#: field:res.alarm,trigger_duration:0
msgid "Duration"
-msgstr "Duración"
-
-#. module: base_calendar
-#: selection:base_calendar.invite.attendee,type:0
-msgid "External Email"
-msgstr "Email externo"
+msgstr ""
#. module: base_calendar
#: field:calendar.alarm,trigger_date:0
msgid "Trigger Date"
-msgstr "Fecha activación"
+msgstr ""
#. module: base_calendar
#: help:calendar.alarm,attach:0
@@ -1684,19 +1593,10 @@ msgid ""
" * Points to a procedure resource, which is invoked when "
" the alarm is triggered for procedure."
msgstr ""
-"* Apunta a un recurso de sonido, que se escucha cuando la alarma se activa "
-"por audio.\n"
-"* El archivo que está intentando ser enviado como adjunto en el correo "
-"electrónico.\n"
-"* Apunta a un recurso de procedimiento, que se invoca cuando la alarma se "
-"activa por procedimiento."
#. module: base_calendar
-#: selection:base.calendar.set.exrule,byday:0
#: selection:calendar.event,byday:0
#: selection:calendar.todo,byday:0
+#: selection:crm.meeting,byday:0
msgid "Fifth"
-msgstr "Quinto"
-
-#~ msgid "Set Exclude range"
-#~ msgstr "Fijar el rango de exclusión"
+msgstr ""
diff --git a/addons/base_crypt/i18n/nl_BE.po b/addons/base_crypt/i18n/nl_BE.po
index 7ad3faa1ef5..d77a3f14b47 100644
--- a/addons/base_crypt/i18n/nl_BE.po
+++ b/addons/base_crypt/i18n/nl_BE.po
@@ -8,19 +8,19 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-12-03 16:03+0000\n"
-"PO-Revision-Date: 2012-07-26 17:52+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2013-04-15 16:02+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
"Language-Team: Dutch (Belgium) \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:49+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
#. module: base_crypt
#: model:ir.model,name:base_crypt.model_res_users
msgid "Users"
-msgstr ""
+msgstr "Gebruikers"
#~ msgid "You can not have two users with the same login !"
#~ msgstr "U kunt geen twee gebruikers met dezelfde login maken."
diff --git a/addons/base_iban/base_iban.py b/addons/base_iban/base_iban.py
index 0872af2d0f3..d50ca33ff15 100644
--- a/addons/base_iban/base_iban.py
+++ b/addons/base_iban/base_iban.py
@@ -181,6 +181,5 @@ class res_partner_bank(osv.osv):
(_check_bank, '\nPlease define BIC/Swift code on bank for bank type IBAN Account to make valid payments', ['bic'])
]
-res_partner_bank()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_report_designer/base_report_designer.py b/addons/base_report_designer/base_report_designer.py
index cdfc7112d09..bc7959a17df 100644
--- a/addons/base_report_designer/base_report_designer.py
+++ b/addons/base_report_designer/base_report_designer.py
@@ -20,12 +20,13 @@
##############################################################################
import base64
+from StringIO import StringIO
+
+from openerp.modules.module import get_module_resource
import openerp.modules.registry
from openerp.osv import osv
from openerp_sxw2rml import sxw2rml
-from StringIO import StringIO
-from openerp import addons
-
+
class report_xml(osv.osv):
_inherit = 'ir.actions.report.xml'
@@ -36,9 +37,9 @@ class report_xml(osv.osv):
'''
sxwval = StringIO(base64.decodestring(file_sxw))
if file_type=='sxw':
- fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_oo2rml.xsl'),'rb')
+ fp = open(get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_oo2rml.xsl'),'rb')
if file_type=='odt':
- fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_odt2rml.xsl'),'rb')
+ fp = open(get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_odt2rml.xsl'),'rb')
return {'report_rml_content': str(sxw2rml(sxwval, xsl=fp.read()))}
def upload_report(self, cr, uid, report_id, file_sxw, file_type, context=None):
@@ -47,9 +48,9 @@ class report_xml(osv.osv):
'''
sxwval = StringIO(base64.decodestring(file_sxw))
if file_type=='sxw':
- fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_oo2rml.xsl'),'rb')
+ fp = open(get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_oo2rml.xsl'),'rb')
if file_type=='odt':
- fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_odt2rml.xsl'),'rb')
+ fp = open(get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_odt2rml.xsl'),'rb')
report = self.pool['ir.actions.report.xml'].write(cr, uid, [report_id], {
'report_sxw_content': base64.decodestring(file_sxw),
'report_rml_content': str(sxw2rml(sxwval, xsl=fp.read())),
@@ -75,7 +76,6 @@ class report_xml(osv.osv):
'report_rml_content': rml_data and base64.encodestring(rml_data) or False
}
-report_xml()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_report_designer/base_report_designer_installer.xml b/addons/base_report_designer/base_report_designer_installer.xml
index 657eae8fd63..99898f5a703 100644
--- a/addons/base_report_designer/base_report_designer_installer.xml
+++ b/addons/base_report_designer/base_report_designer_installer.xml
@@ -20,7 +20,7 @@
-
+
diff --git a/addons/base_report_designer/installer.py b/addons/base_report_designer/installer.py
index bfda6e7a30f..7fddc27f037 100644
--- a/addons/base_report_designer/installer.py
+++ b/addons/base_report_designer/installer.py
@@ -23,7 +23,6 @@ from openerp.osv import fields
from openerp.osv import osv
import base64
from openerp.tools.translate import _
-from openerp import addons
class base_report_designer_installer(osv.osv_memory):
_name = 'base_report_designer.installer'
@@ -31,13 +30,13 @@ class base_report_designer_installer(osv.osv_memory):
def default_get(self, cr, uid, fields, context=None):
data = super(base_report_designer_installer, self).default_get(cr, uid, fields, context=context)
- plugin_file = open(addons.get_module_resource('base_report_designer','plugin', 'openerp_report_designer.zip'),'rb')
- data['plugin_file'] = base64.encodestring(plugin_file.read())
+ base_url = self.pool.get('ir.config_parameter').get_param(cr, uid, 'web.base.url')
+ data['plugin_file'] = base_url + '/base_report_designer/static/base-report-designer-plugin/openerp_report_designer.zip'
return data
_columns = {
'name':fields.char('File name', size=34),
- 'plugin_file':fields.binary('OpenObject Report Designer Plug-in', readonly=True, help="OpenObject Report Designer plug-in file. Save as this file and install this plug-in in OpenOffice."),
+ 'plugin_file':fields.char('OpenObject Report Designer Plug-in', size=256, readonly=True, help="OpenObject Report Designer plug-in file. Save as this file and install this plug-in in OpenOffice."),
'description':fields.text('Description', readonly=True)
}
@@ -58,6 +57,5 @@ class base_report_designer_installer(osv.osv_memory):
4. if your connection success, A message appears like 'You can start creating your report in current document.'.
"""
}
-base_report_designer_installer()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_report_designer/openerp_sxw2rml/normalized_odt2rml.xsl b/addons/base_report_designer/openerp_sxw2rml/normalized_odt2rml.xsl
index 50ffb3d81be..9f9e5050d69 100644
--- a/addons/base_report_designer/openerp_sxw2rml/normalized_odt2rml.xsl
+++ b/addons/base_report_designer/openerp_sxw2rml/normalized_odt2rml.xsl
@@ -414,7 +414,7 @@
- .
+
diff --git a/addons/base_report_designer/openerp_sxw2rml/normalized_oo2rml.xsl b/addons/base_report_designer/openerp_sxw2rml/normalized_oo2rml.xsl
index 66ef0b5b53c..ae68ae1ed1b 100644
--- a/addons/base_report_designer/openerp_sxw2rml/normalized_oo2rml.xsl
+++ b/addons/base_report_designer/openerp_sxw2rml/normalized_oo2rml.xsl
@@ -414,7 +414,7 @@
- .
+
diff --git a/addons/base_report_designer/plugin/openerp_report_designer.zip b/addons/base_report_designer/static/base-report-designer-plugin/openerp_report_designer.zip
similarity index 100%
rename from addons/base_report_designer/plugin/openerp_report_designer.zip
rename to addons/base_report_designer/static/base-report-designer-plugin/openerp_report_designer.zip
diff --git a/addons/base_report_designer/wizard/base_report_designer_modify.py b/addons/base_report_designer/wizard/base_report_designer_modify.py
index 838f591a2f4..e8ed45e7ce1 100644
--- a/addons/base_report_designer/wizard/base_report_designer_modify.py
+++ b/addons/base_report_designer/wizard/base_report_designer_modify.py
@@ -54,7 +54,6 @@ class base_report_sxw(osv.osv_memory):
'target': 'new',
}
-base_report_sxw()
class base_report_file_sxw(osv.osv_memory):
"""Base Report File sxw """
@@ -116,7 +115,6 @@ class base_report_file_sxw(osv.osv_memory):
'type': 'ir.actions.act_window',
'target': 'new',
}
-base_report_file_sxw()
class base_report_rml_save(osv.osv_memory):
"""Base Report file Save"""
@@ -146,6 +144,5 @@ class base_report_rml_save(osv.osv_memory):
'file_rml':fields.binary('Save As'),
}
-base_report_rml_save()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_setup/i18n/nl_BE.po b/addons/base_setup/i18n/nl_BE.po
index f22fd2c8adc..518ada07a5c 100644
--- a/addons/base_setup/i18n/nl_BE.po
+++ b/addons/base_setup/i18n/nl_BE.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-10-01 11:22+0000\n"
+"PO-Revision-Date: 2013-04-26 16:24+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \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: 2013-03-16 05:12+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-27 05:44+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
#. module: base_setup
#: view:sale.config.settings:0
msgid "Emails Integration"
-msgstr ""
+msgstr "E-mailintegratie"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
@@ -29,18 +29,19 @@ msgstr "Gast"
#. module: base_setup
#: view:sale.config.settings:0
msgid "Contacts"
-msgstr ""
+msgstr "Contactpersonen"
#. module: base_setup
#: model:ir.model,name:base_setup.model_base_config_settings
msgid "base.config.settings"
-msgstr ""
+msgstr "base.config.settings"
#. module: base_setup
#: field:base.config.settings,module_auth_oauth:0
msgid ""
"Use external authentication providers, sign in with google, facebook, ..."
msgstr ""
+"Gebruik externe verificatieproviders. Meld aan met Google, Facebook, ..."
#. module: base_setup
#: view:sale.config.settings:0
@@ -54,11 +55,19 @@ msgid ""
"OpenERP using specific\n"
" plugins for your preferred email application."
msgstr ""
+"OpenERP maakt het mogelijk om automatisch leads (of andere documenten)\n"
+" aan te maken op basis van inkomende e-mails. U "
+"kunt automatisch e-mails synchroniseren met OpenERP\n"
+" met behulp van reguliere POP / IMAP-accounts, "
+"via een direct e-mailintegratiescript voor uw\n"
+" e-mailserver, of door zelf uw e-mails naar "
+"OpenERP te sturen met behulp van specifieke\n"
+" plug-ins voor uw favoriete e-mailprogramma."
#. module: base_setup
#: field:sale.config.settings,module_sale:0
msgid "SALE"
-msgstr ""
+msgstr "VERKOOP"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
@@ -68,24 +77,24 @@ msgstr "Lid"
#. module: base_setup
#: view:base.config.settings:0
msgid "Portal access"
-msgstr ""
+msgstr "Portaaltoegang"
#. module: base_setup
#: view:base.config.settings:0
msgid "Authentication"
-msgstr ""
+msgstr "Verificatie"
#. module: base_setup
#: view:sale.config.settings:0
msgid "Quotations and Sales Orders"
-msgstr ""
+msgstr "Offertes en verkooporders"
#. module: base_setup
#: view:base.config.settings:0
#: model:ir.actions.act_window,name:base_setup.action_general_configuration
#: model:ir.ui.menu,name:base_setup.menu_general_configuration
msgid "General Settings"
-msgstr ""
+msgstr "Algemeen"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
@@ -95,12 +104,12 @@ msgstr "Donor"
#. module: base_setup
#: view:base.config.settings:0
msgid "Email"
-msgstr ""
+msgstr "E-mail"
#. module: base_setup
#: field:sale.config.settings,module_crm:0
msgid "CRM"
-msgstr ""
+msgstr "Relatiebeheer"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
@@ -110,32 +119,32 @@ msgstr "Patiënt"
#. module: base_setup
#: field:base.config.settings,module_base_import:0
msgid "Allow users to import data from CSV files"
-msgstr ""
+msgstr "Gebruikers mogen gegevens importeren uit csv-bestanden"
#. module: base_setup
#: field:base.config.settings,module_multi_company:0
msgid "Manage multiple companies"
-msgstr ""
+msgstr "Meerdere bedrijven beheren"
#. module: base_setup
#: view:sale.config.settings:0
msgid "On Mail Client"
-msgstr ""
+msgstr "Op e-mailclient"
#. module: base_setup
#: view:base.config.settings:0
msgid "--db-filter=YOUR_DATABAE"
-msgstr ""
+msgstr "--db-filter=UW_DATABASE"
#. module: base_setup
#: field:sale.config.settings,module_web_linkedin:0
msgid "Get contacts automatically from linkedIn"
-msgstr ""
+msgstr "Haal contactpersonen op uit LinkedIn"
#. module: base_setup
#: field:sale.config.settings,module_plugin_thunderbird:0
msgid "Enable Thunderbird plug-in"
-msgstr ""
+msgstr "Activeer de Thunderbirdplug-in"
#. module: base_setup
#: view:base.setup.terminology:0
@@ -145,22 +154,22 @@ msgstr "res_config_contents"
#. module: base_setup
#: view:sale.config.settings:0
msgid "Customer Features"
-msgstr ""
+msgstr "Klantenopties"
#. module: base_setup
#: view:base.config.settings:0
msgid "Import / Export"
-msgstr ""
+msgstr "Import / Export"
#. module: base_setup
#: view:sale.config.settings:0
msgid "Sale Features"
-msgstr ""
+msgstr "Verkoopopties"
#. module: base_setup
#: field:sale.config.settings,module_plugin_outlook:0
msgid "Enable Outlook plug-in"
-msgstr ""
+msgstr "Activeer de Outlookplug-in"
#. module: base_setup
#: view:base.setup.terminology:0
@@ -179,7 +188,7 @@ msgstr "Huurder"
#. module: base_setup
#: help:base.config.settings,module_share:0
msgid "Share or embbed any screen of openerp."
-msgstr ""
+msgstr "Gelijk welk scherm van OpenERP delen of insluiten"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
@@ -192,6 +201,8 @@ msgid ""
"When you create a new contact (person or company), you will be able to load "
"all the data from LinkedIn (photos, address, etc)."
msgstr ""
+"Als u een nieuwe contactpersoon maakt (persoon of bedrijf), kunt u alle "
+"gegevens van LinkedIn laden (foto, adres, enz.)"
#. module: base_setup
#: help:base.config.settings,module_multi_company:0
@@ -200,6 +211,9 @@ msgid ""
"companies.\n"
" This installs the module multi_company."
msgstr ""
+"Werken in omgevingen met meerdere bedrijven, met de nodige "
+"toegangsbeveiliging tussen de bedrijven.\n"
+" Hiermee installeert u de module multi_company."
#. module: base_setup
#: view:base.config.settings:0
@@ -208,6 +222,9 @@ msgid ""
"You can\n"
" launch the OpenERP Server with the option"
msgstr ""
+"Het openbare portaal is alleen toegankelijk als u zich in een enkele "
+"databasemodus bevindt. U kunt\n"
+" de OpenERP-server starten met de optie"
#. module: base_setup
#: view:base.config.settings:0
@@ -215,11 +232,13 @@ msgid ""
"You will find more options in your company details: address for the header "
"and footer, overdue payments texts, etc."
msgstr ""
+"U vindt meer opties bij de bedrijfsgegevens: adres voor de kop- en "
+"voettekst, teksten voor achterstallige betalingen, enz."
#. module: base_setup
#: model:ir.model,name:base_setup.model_sale_config_settings
msgid "sale.config.settings"
-msgstr ""
+msgstr "sale.config.settings"
#. module: base_setup
#: field:base.setup.terminology,partner:0
@@ -238,6 +257,12 @@ msgid ""
"projects,\n"
" etc."
msgstr ""
+"Wanneer u een document naar een klant stuurt,\n"
+" (offerte, factuur), kan uw klant\n"
+" aanmelden en zijn documenten bekijken,\n"
+" uw bedrijfsnieuws lezen, zijn projecten "
+"controleren,\n"
+" enz."
#. module: base_setup
#: model:ir.model,name:base_setup.model_base_setup_terminology
@@ -253,6 +278,8 @@ msgstr "Cliënt"
#: help:base.config.settings,module_portal_anonymous:0
msgid "Enable the public part of openerp, openerp becomes a public website."
msgstr ""
+"Activeer het openbare deel van OpenERP; OpenERP wordt hiermee een openbare "
+"website."
#. module: base_setup
#: help:sale.config.settings,module_plugin_thunderbird:0
@@ -265,6 +292,13 @@ msgid ""
" Partner from the selected emails.\n"
" This installs the module plugin_thunderbird."
msgstr ""
+"Met de plug-in kunt u e-mails met bijlagen koppelen aan de geselecteerde\n"
+" OpenERP-objecten. U kunt een relatie of een lead kiezen en\n"
+" de gekozen e-mail koppelen als een .eml-bestand als bijlage\n"
+" aan het geselecteerde record. U kunt documenten aanmaken "
+"voor CRM-lead\n"
+" en relaties vanuit de geselecteerde e-mails. Hiermee "
+"installeert u de module plugin_thunderbird."
#. module: base_setup
#: selection:base.setup.terminology,partner:0
@@ -280,7 +314,7 @@ msgstr "Gebruik een andere benaming voor Klant"
#: model:ir.actions.act_window,name:base_setup.action_sale_config
#: view:sale.config.settings:0
msgid "Configure Sales"
-msgstr ""
+msgstr "Verkoop instellen"
#. module: base_setup
#: help:sale.config.settings,module_plugin_outlook:0
@@ -293,16 +327,23 @@ msgid ""
" email into an OpenERP mail message with attachments.\n"
" This installs the module plugin_outlook."
msgstr ""
+"Met de Outlookplug-in kunt u een object selecteren dat u wilt toevoegen\n"
+" aan uw e-mail en de bijlagen van MS Outlook. U kunt een "
+"relatie \n"
+" of een lead kiezen en de geselecteerde e-mail archiveren in "
+"een\n"
+" OpenERP-mailbericht met bijlagen.\n"
+" Hiermee installeert u de module plugin_outlook."
#. module: base_setup
#: view:base.config.settings:0
msgid "Options"
-msgstr ""
+msgstr "Opties"
#. module: base_setup
#: field:base.config.settings,module_portal:0
msgid "Activate the customer portal"
-msgstr ""
+msgstr "Klantenportaal activeren"
#. module: base_setup
#: view:base.config.settings:0
@@ -311,36 +352,37 @@ msgid ""
" Once activated, the login page will be "
"replaced by the public website."
msgstr ""
+"Na activering zal de aanmeldpagina worden vervangen door de openbare website."
#. module: base_setup
#: field:base.config.settings,module_share:0
msgid "Allow documents sharing"
-msgstr ""
+msgstr "Sta het delen van documenten toe"
#. module: base_setup
#: view:base.config.settings:0
msgid "(company news, jobs, contact form, etc.)"
-msgstr ""
+msgstr "(bedrijfsnieuws, vacatures, contactformulier, enz.)"
#. module: base_setup
#: field:base.config.settings,module_portal_anonymous:0
msgid "Activate the public portal"
-msgstr ""
+msgstr "Openbare portaal activeren"
#. module: base_setup
#: view:base.config.settings:0
msgid "Configure outgoing email servers"
-msgstr ""
+msgstr "Uitgaande e-mailservers instellen"
#. module: base_setup
#: view:sale.config.settings:0
msgid "Social Network Integration"
-msgstr ""
+msgstr "Integratie sociale netwerken"
#. module: base_setup
#: help:base.config.settings,module_portal:0
msgid "Give your customers access to their documents."
-msgstr ""
+msgstr "Geef uw klanten toegang tot hun documenten."
#. module: base_setup
#: view:base.config.settings:0
@@ -352,7 +394,7 @@ msgstr "Afbreken"
#: view:base.config.settings:0
#: view:sale.config.settings:0
msgid "Apply"
-msgstr ""
+msgstr "Toepassen"
#. module: base_setup
#: view:base.setup.terminology:0
@@ -363,12 +405,12 @@ msgstr "Kies uw terminologie"
#: view:base.config.settings:0
#: view:sale.config.settings:0
msgid "or"
-msgstr ""
+msgstr "of"
#. module: base_setup
#: view:base.config.settings:0
msgid "Configure your company data"
-msgstr ""
+msgstr "Uw bedrijfsgegevens instellen"
#~ msgid "Logo"
#~ msgstr "Logo"
diff --git a/addons/base_status/i18n/lt.po b/addons/base_status/i18n/lt.po
new file mode 100644
index 00000000000..cdaf9b0db37
--- /dev/null
+++ b/addons/base_status/i18n/lt.po
@@ -0,0 +1,76 @@
+# Lithuanian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-29 15:17+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Lithuanian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:107
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:166
+#, python-format
+msgid "%s has been opened."
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:199
+#, python-format
+msgid "%s has been renewed."
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_stage.py:210
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:107
+#, python-format
+msgid ""
+"You can not escalate, you are already at the top level regarding your sales-"
+"team category."
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:193
+#, python-format
+msgid "%s is now pending."
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:187
+#, python-format
+msgid "%s has been canceled."
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_stage.py:210
+#, python-format
+msgid ""
+"You are already at the top level of your sales-team category.\n"
+"Therefore you cannot escalate furthermore."
+msgstr ""
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:181
+#, python-format
+msgid "%s has been closed."
+msgstr ""
diff --git a/addons/base_status/i18n/nl_BE.po b/addons/base_status/i18n/nl_BE.po
new file mode 100644
index 00000000000..6a3c2d83fc7
--- /dev/null
+++ b/addons/base_status/i18n/nl_BE.po
@@ -0,0 +1,80 @@
+# Dutch (Belgium) 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-15 16:40+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
+"Language-Team: Dutch (Belgium) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:107
+#, python-format
+msgid "Error !"
+msgstr "Fout"
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:166
+#, python-format
+msgid "%s has been opened."
+msgstr "%s is geopend."
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:199
+#, python-format
+msgid "%s has been renewed."
+msgstr "%s is vernieuwd."
+
+#. module: base_status
+#: code:addons/base_status/base_stage.py:210
+#, python-format
+msgid "Error!"
+msgstr "Fout"
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:107
+#, python-format
+msgid ""
+"You can not escalate, you are already at the top level regarding your sales-"
+"team category."
+msgstr ""
+"U kunt niet escaleren; u heeft het hoogste niveau in de verkoopteams al "
+"bereikt."
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:193
+#, python-format
+msgid "%s is now pending."
+msgstr "%s is wachtend."
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:187
+#, python-format
+msgid "%s has been canceled."
+msgstr "%s is geannuleerd."
+
+#. module: base_status
+#: code:addons/base_status/base_stage.py:210
+#, python-format
+msgid ""
+"You are already at the top level of your sales-team category.\n"
+"Therefore you cannot escalate furthermore."
+msgstr ""
+"U bent al op het hoogste niveau van uw verkoopteam.\n"
+"U kunt dus niet verder escaleren."
+
+#. module: base_status
+#: code:addons/base_status/base_state.py:181
+#, python-format
+msgid "%s has been closed."
+msgstr "%s is gesloten."
diff --git a/addons/base_vat/base_vat.py b/addons/base_vat/base_vat.py
index 616333e3b47..e7501334997 100644
--- a/addons/base_vat/base_vat.py
+++ b/addons/base_vat/base_vat.py
@@ -134,6 +134,9 @@ class res_partner(osv.osv):
'vat_subjected': fields.boolean('VAT Legal Statement', help="Check this box if the partner is subjected to the VAT. It will be used for the VAT legal statement.")
}
+ def _commercial_fields(self, cr, uid, context=None):
+ return super(res_partner, self)._commercial_fields(cr, uid, context=context) + ['vat_subjected']
+
def _construct_constraint_msg(self, cr, uid, ids, context=None):
def default_vat_check(cn, vn):
# by default, a VAT number is valid if:
@@ -243,6 +246,5 @@ class res_partner(osv.osv):
return False
return check == int(vat[8])
-res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_vat/i18n/nl_BE.po b/addons/base_vat/i18n/nl_BE.po
index 39966dc58ef..a2fe05c5705 100644
--- a/addons/base_vat/i18n/nl_BE.po
+++ b/addons/base_vat/i18n/nl_BE.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-10-01 11:23+0000\n"
+"PO-Revision-Date: 2013-04-15 16:03+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \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: 2013-03-16 05:10+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
#. module: base_vat
#: view:res.partner:0
msgid "Check Validity"
-msgstr ""
+msgstr "Geldigheid controleren"
#. module: base_vat
#: code:addons/base_vat/base_vat.py:147
@@ -45,7 +45,7 @@ msgstr "Bedrijven"
#: code:addons/base_vat/base_vat.py:111
#, python-format
msgid "Error!"
-msgstr ""
+msgstr "Fout"
#. module: base_vat
#: help:res.partner,vat_subjected:0
diff --git a/addons/board/static/src/js/dashboard.js b/addons/board/static/src/js/dashboard.js
index bd9625a4fa8..3489b686e1b 100644
--- a/addons/board/static/src/js/dashboard.js
+++ b/addons/board/static/src/js/dashboard.js
@@ -419,8 +419,10 @@ instance.board.AddToDashboard = instance.web.search.Input.extend({
instance.web.SearchView.include({
add_common_inputs: function() {
this._super();
- (new instance.board.AddToDashboard(this));
-
+ var vm = this.getParent().getParent();
+ if (vm.inner_action && vm.inner_action.views) {
+ (new instance.board.AddToDashboard(this));
+ }
}
});
diff --git a/addons/claim_from_delivery/i18n/nl_BE.po b/addons/claim_from_delivery/i18n/nl_BE.po
index a8793109b5f..38aab39e523 100644
--- a/addons/claim_from_delivery/i18n/nl_BE.po
+++ b/addons/claim_from_delivery/i18n/nl_BE.po
@@ -8,29 +8,29 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-10-01 11:24+0000\n"
+"PO-Revision-Date: 2013-04-15 16:38+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \n"
"Language-Team: Dutch (Belgium) \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:41+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
#. module: claim_from_delivery
#: view:stock.picking.out:0
msgid "Claims"
-msgstr ""
+msgstr "Klachten"
#. module: claim_from_delivery
#: model:res.request.link,name:claim_from_delivery.request_link_claim_from_delivery
msgid "Delivery Order"
-msgstr ""
+msgstr "Leveringsorder"
#. module: claim_from_delivery
#: model:ir.actions.act_window,name:claim_from_delivery.action_claim_from_delivery
msgid "Claim From Delivery"
-msgstr ""
+msgstr "Klachten van levering"
#~ msgid "Claim"
#~ msgstr "Klacht"
diff --git a/addons/contacts/i18n/lt.po b/addons/contacts/i18n/lt.po
new file mode 100644
index 00000000000..f785a308009
--- /dev/null
+++ b/addons/contacts/i18n/lt.po
@@ -0,0 +1,45 @@
+# Lithuanian 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-24 18:20+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Lithuanian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-25 05:20+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
+
+#. module: contacts
+#: model:ir.actions.act_window,help:contacts.action_contacts
+msgid ""
+"
\n"
+" Click to add a contact in your address book.\n"
+"
\n"
+" OpenERP helps you easily track all activities related to\n"
+" a customer; discussions, history of business opportunities,\n"
+" documents, etc.\n"
+"
\n"
+" "
+msgstr ""
+"
\n"
+"Spauskite, kad sukurtumėte kontaktą adresų knygoje.\n"
+"
\n"
+"OpenERP pagalba galima stebėti visus veiksmus susijusius su\n"
+"kontaktu; bendravimas, pardavimų galimybių istorija,\n"
+"dokumentai, ir t.t.\n"
+"
\n"
+" "
+
+#. module: contacts
+#: model:ir.actions.act_window,name:contacts.action_contacts
+#: model:ir.ui.menu,name:contacts.menu_contacts
+msgid "Contacts"
+msgstr "Kontaktai"
diff --git a/addons/contacts/i18n/nl_BE.po b/addons/contacts/i18n/nl_BE.po
new file mode 100644
index 00000000000..78fdb540ad6
--- /dev/null
+++ b/addons/contacts/i18n/nl_BE.po
@@ -0,0 +1,46 @@
+# Dutch (Belgium) 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 , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-12-21 17:05+0000\n"
+"PO-Revision-Date: 2013-04-15 16:01+0000\n"
+"Last-Translator: Els Van Vossel (Agaplan) \n"
+"Language-Team: Dutch (Belgium) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-04-16 04:37+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
+
+#. module: contacts
+#: model:ir.actions.act_window,help:contacts.action_contacts
+msgid ""
+"
\n"
+" Click to add a contact in your address book.\n"
+"
\n"
+" OpenERP helps you easily track all activities related to\n"
+" a customer; discussions, history of business opportunities,\n"
+" documents, etc.\n"
+"
\n"
+" "
+msgstr ""
+"
\n"
+" Klik hier om een contactpersoon toe te voegen aan het "
+"adresboek.\n"
+"
\n"
+" Met OpenERP kunt u eenvoudig alle activiteiten registreren met "
+"betrekking tot \n"
+" een klant, discussies, opportuniteiten, documenten, enz. \n"
+"
\n"
+" "
+
+#. module: contacts
+#: model:ir.actions.act_window,name:contacts.action_contacts
+#: model:ir.ui.menu,name:contacts.menu_contacts
+msgid "Contacts"
+msgstr "Contactpersonen"
diff --git a/addons/crm/__init__.py b/addons/crm/__init__.py
index d78fb09eae7..4e3a704d5f3 100644
--- a/addons/crm/__init__.py
+++ b/addons/crm/__init__.py
@@ -28,6 +28,7 @@ import report
import wizard
import res_partner
import res_config
+import base_partner_merge
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py
index 0dd075d48e6..8e17a882076 100644
--- a/addons/crm/__openerp__.py
+++ b/addons/crm/__openerp__.py
@@ -81,6 +81,8 @@ Dashboard for CRM will include:
'crm_lead_view.xml',
'crm_lead_menu.xml',
+ 'crm_case_section_view.xml',
+
'crm_meeting_menu.xml',
'crm_phonecall_view.xml',
@@ -95,6 +97,7 @@ Dashboard for CRM will include:
'board_crm_view.xml',
'res_config_view.xml',
+ 'base_partner_merge_view.xml',
],
'demo': [
'crm_demo.xml',
@@ -103,20 +106,37 @@ Dashboard for CRM will include:
'crm_action_rule_demo.xml',
],
'test': [
- 'test/process/communication_with_customer.yml',
- 'test/process/lead2opportunity2win.yml',
- 'test/process/lead2opportunity_assign_salesmen.yml',
- 'test/process/merge_opportunity.yml',
- 'test/process/cancel_lead.yml',
- 'test/process/segmentation.yml',
- 'test/process/phonecalls.yml',
- 'test/ui/crm_demo.yml',
- 'test/ui/duplicate_lead.yml',
- 'test/ui/delete_lead.yml',
+ 'test/crm_lead_message.yml',
+ 'test/lead2opportunity2win.yml',
+ 'test/lead2opportunity_assign_salesmen.yml',
+ 'test/crm_lead_merge.yml',
+ 'test/crm_lead_cancel.yml',
+ 'test/segmentation.yml',
+ 'test/phonecalls.yml',
+ 'test/crm_lead_onchange.yml',
+ 'test/crm_lead_copy.yml',
+ 'test/crm_lead_unlink.yml',
+ ],
+ 'css': [
+ 'static/src/css/crm.css'
+ ],
+ 'js': [
+ 'static/src/js/crm.js'
],
'installable': True,
'application': True,
'auto_install': False,
- 'images': ['images/crm_dashboard.png', 'images/customers.png','images/leads.png','images/opportunities_kanban.png','images/opportunities_form.png','images/opportunities_calendar.png','images/opportunities_graph.png','images/logged_calls.png','images/scheduled_calls.png','images/stages.png'],
+ 'images': [
+ 'images/crm_dashboard.png',
+ 'images/customers.png',
+ 'images/leads.png',
+ 'images/opportunities_kanban.png',
+ 'images/opportunities_form.png',
+ 'images/opportunities_calendar.png',
+ 'images/opportunities_graph.png',
+ 'images/logged_calls.png',
+ 'images/scheduled_calls.png',
+ 'images/stages.png',
+ ],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/base_partner_merge.py b/addons/crm/base_partner_merge.py
new file mode 100644
index 00000000000..b2645e7fb79
--- /dev/null
+++ b/addons/crm/base_partner_merge.py
@@ -0,0 +1,760 @@
+#!/usr/bin/env python
+from __future__ import absolute_import
+from email.utils import parseaddr
+import functools
+import htmlentitydefs
+import itertools
+import logging
+import operator
+import re
+from ast import literal_eval
+from openerp.tools import mute_logger
+
+# Validation Library https://pypi.python.org/pypi/validate_email/1.1
+from .validate_email import validate_email
+
+from openerp.osv import osv, orm
+from openerp.osv import fields
+from openerp.osv.orm import browse_record
+from openerp.tools.translate import _
+
+pattern = re.compile("&(\w+?);")
+
+_logger = logging.getLogger('base.partner.merge')
+
+
+# http://www.php2python.com/wiki/function.html-entity-decode/
+def html_entity_decode_char(m, defs=htmlentitydefs.entitydefs):
+ try:
+ return defs[m.group(1)]
+ except KeyError:
+ return m.group(0)
+
+
+def html_entity_decode(string):
+ return pattern.sub(html_entity_decode_char, string)
+
+
+def sanitize_email(email):
+ assert isinstance(email, basestring) and email
+
+ result = re.subn(r';|/|:', ',',
+ html_entity_decode(email or ''))[0].split(',')
+
+ emails = [parseaddr(email)[1]
+ for item in result
+ for email in item.split()]
+
+ return [email.lower()
+ for email in emails
+ if validate_email(email)]
+
+
+def is_integer_list(ids):
+ return all(isinstance(i, (int, long)) for i in ids)
+
+
+class ResPartner(osv.Model):
+ _inherit = 'res.partner'
+
+ _columns = {
+ 'id': fields.integer('Id', readonly=True),
+ 'create_date': fields.datetime('Create Date', readonly=True),
+ }
+
+class MergePartnerLine(osv.TransientModel):
+ _name = 'base.partner.merge.line'
+
+ _columns = {
+ 'wizard_id': fields.many2one('base.partner.merge.automatic.wizard',
+ 'Wizard'),
+ 'min_id': fields.integer('MinID'),
+ 'aggr_ids': fields.char('Ids', required=True),
+ }
+
+ _order = 'min_id asc'
+
+
+class MergePartnerAutomatic(osv.TransientModel):
+ """
+ The idea behind this wizard is to create a list of potential partners to
+ merge. We use two objects, the first one is the wizard for the end-user.
+ And the second will contain the partner list to merge.
+ """
+ _name = 'base.partner.merge.automatic.wizard'
+
+ _columns = {
+ # Group by
+ 'group_by_email': fields.boolean('Email'),
+ 'group_by_name': fields.boolean('Name'),
+ 'group_by_is_company': fields.boolean('Is Company'),
+ 'group_by_vat': fields.boolean('VAT'),
+ 'group_by_parent_id': fields.boolean('Parent Company'),
+
+ 'state': fields.selection([('option', 'Option'),
+ ('selection', 'Selection'),
+ ('finished', 'Finished')],
+ 'State',
+ readonly=True,
+ required=True),
+ 'number_group': fields.integer("Group of Contacts", readonly=True),
+ 'current_line_id': fields.many2one('base.partner.merge.line', 'Current Line'),
+ 'line_ids': fields.one2many('base.partner.merge.line', 'wizard_id', 'Lines'),
+ 'partner_ids': fields.many2many('res.partner', string='Contacts'),
+
+ 'exclude_contact': fields.boolean('A user associated to the contact'),
+ 'exclude_journal_item': fields.boolean('Journal Items associated to the contact'),
+ 'maximum_group': fields.integer("Maximum of Group of Contacts"),
+ }
+
+ _defaults = {
+ 'state': 'option',
+ }
+
+ def get_fk_on(self, cr, table):
+ q = """ SELECT cl1.relname as table,
+ att1.attname as column
+ FROM pg_constraint as con, pg_class as cl1, pg_class as cl2,
+ pg_attribute as att1, pg_attribute as att2
+ WHERE con.conrelid = cl1.oid
+ AND con.confrelid = cl2.oid
+ AND array_lower(con.conkey, 1) = 1
+ AND con.conkey[1] = att1.attnum
+ AND att1.attrelid = cl1.oid
+ AND cl2.relname = %s
+ AND att2.attname = 'id'
+ AND array_lower(con.confkey, 1) = 1
+ AND con.confkey[1] = att2.attnum
+ AND att2.attrelid = cl2.oid
+ AND con.contype = 'f'
+ """
+ return cr.execute(q, (table,))
+
+ def _update_foreign_keys(self, cr, uid, src_partners, dst_partner, context=None):
+ _logger.debug('_update_foreign_keys for dst_partner: %s for src_partners: %r', dst_partner.id, list(map(operator.attrgetter('id'), src_partners)))
+
+ # find the many2one relation to a partner
+ proxy = self.pool.get('res.partner')
+ self.get_fk_on(cr, 'res_partner')
+
+ # ignore two tables
+
+ for table, column in cr.fetchall():
+ if 'base_partner_merge_' in table:
+ continue
+ partner_ids = tuple(map(int, src_partners))
+
+ query = "SELECT column_name FROM information_schema.columns WHERE table_name LIKE '%s'" % (table)
+ cr.execute(query, ())
+ columns = []
+ for data in cr.fetchall():
+ if data[0] != column:
+ columns.append(data[0])
+
+ query_dic = {
+ 'table': table,
+ 'column': column,
+ 'value': columns[0],
+ }
+ if len(columns) <= 1:
+ # unique key treated
+ query = """
+ UPDATE "%(table)s" as ___tu
+ SET %(column)s = %%s
+ WHERE
+ %(column)s = %%s AND
+ NOT EXISTS (
+ SELECT 1
+ FROM "%(table)s" as ___tw
+ WHERE
+ %(column)s = %%s AND
+ ___tu.%(value)s = ___tw.%(value)s
+ )""" % query_dic
+ for partner_id in partner_ids:
+ cr.execute(query, (dst_partner.id, partner_id, dst_partner.id))
+ else:
+ cr.execute("SAVEPOINT recursive_partner_savepoint")
+ try:
+ query = 'UPDATE "%(table)s" SET %(column)s = %%s WHERE %(column)s IN %%s' % query_dic
+ cr.execute(query, (dst_partner.id, partner_ids,))
+
+ if column == proxy._parent_name and table == 'res_partner':
+ query = """
+ WITH RECURSIVE cycle(id, parent_id) AS (
+ SELECT id, parent_id FROM res_partner
+ UNION
+ SELECT cycle.id, res_partner.parent_id
+ FROM res_partner, cycle
+ WHERE res_partner.id = cycle.parent_id AND
+ cycle.id != cycle.parent_id
+ )
+ SELECT id FROM cycle WHERE id = parent_id AND id = %s
+ """
+ cr.execute(query, (dst_partner.id,))
+ if cr.fetchall():
+ cr.execute("ROLLBACK TO SAVEPOINT recursive_partner_savepoint")
+ finally:
+ cr.execute("RELEASE SAVEPOINT recursive_partner_savepoint")
+
+ def _update_reference_fields(self, cr, uid, src_partners, dst_partner, context=None):
+ _logger.debug('_update_reference_fields for dst_partner: %s for src_partners: %r', dst_partner.id, list(map(operator.attrgetter('id'), src_partners)))
+
+ def update_records(model, src, field_model='model', field_id='res_id', context=None):
+ proxy = self.pool.get(model)
+ if proxy is None:
+ return
+ domain = [(field_model, '=', 'res.partner'), (field_id, '=', src.id)]
+ ids = proxy.search(cr, uid, domain, context=context)
+ return proxy.write(cr, uid, ids, {field_id: dst_partner.id}, context=context)
+
+ update_records = functools.partial(update_records, context=context)
+
+ for partner in src_partners:
+ update_records('base.calendar', src=partner, field_model='model_id.model')
+ update_records('ir.attachment', src=partner, field_model='res_model')
+ update_records('mail.followers', src=partner, field_model='res_model')
+ update_records('mail.message', src=partner)
+ update_records('marketing.campaign.workitem', src=partner, field_model='object_id.model')
+ update_records('ir.model.data', src=partner)
+
+ proxy = self.pool['ir.model.fields']
+ domain = [('ttype', '=', 'reference')]
+ record_ids = proxy.search(cr, uid, domain, context=context)
+
+ for record in proxy.browse(cr, uid, record_ids, context=context):
+ proxy_model = self.pool[record.model]
+
+ field_type = proxy_model._columns.get(record.name).__class__._type
+
+ if field_type == 'function':
+ continue
+
+ for partner in src_partners:
+ domain = [
+ (record.name, '=', 'res.partner,%d' % partner.id)
+ ]
+ model_ids = proxy_model.search(cr, uid, domain, context=context)
+ values = {
+ record.name: 'res.partner,%d' % dst_partner.id,
+ }
+ proxy_model.write(cr, uid, model_ids, values, context=context)
+
+ def _update_values(self, cr, uid, src_partners, dst_partner, context=None):
+ _logger.debug('_update_values for dst_partner: %s for src_partners: %r', dst_partner.id, list(map(operator.attrgetter('id'), src_partners)))
+
+ columns = dst_partner._columns
+ def write_serializer(column, item):
+ if isinstance(item, browse_record):
+ return item.id
+ else:
+ return item
+
+ values = dict()
+ for column, field in columns.iteritems():
+ if field._type not in ('many2many', 'one2many', 'function'):
+ for item in itertools.chain(src_partners, [dst_partner]):
+ if item[column]:
+ values[column] = write_serializer(column, item[column])
+
+ values.pop('id', None)
+ parent_id = values.pop('parent_id', None)
+ dst_partner.write(values)
+ if parent_id and parent_id != dst_partner.id:
+ try:
+ dst_partner.write({'parent_id': parent_id})
+ except (osv.except_osv, orm.except_orm):
+ _logger.info('Skip recursive partner hierarchies for parent_id %s of partner: %s', parent_id, dst_partner.id)
+
+ @mute_logger('openerp.osv.expression', 'openerp.osv.orm')
+ def _merge(self, cr, uid, partner_ids, context=None):
+ proxy = self.pool.get('res.partner')
+
+ partner_ids = proxy.exists(cr, uid, list(partner_ids), context=context)
+ if len(partner_ids) < 2:
+ return
+
+ partners = proxy.browse(cr, uid, list(partner_ids), context=context)
+ ordered_partners = sorted(sorted(partners,
+ key=operator.attrgetter('create_date'), reverse=True),
+ key=operator.attrgetter('active'), reverse=True)
+
+ dst_partner = ordered_partners[-1]
+ src_partners = ordered_partners[:-1]
+ _logger.info("dst_partner: %s", dst_partner.id)
+
+ call_it = lambda function: function(cr, uid, src_partners, dst_partner,
+ context=context)
+
+ call_it(self._update_foreign_keys)
+ call_it(self._update_reference_fields)
+ call_it(self._update_values)
+
+ _logger.info("---merged---")
+
+ for partner in src_partners:
+ partner.unlink()
+
+
+ def clean_emails(self, cr, uid, context=None):
+ """
+ Clean the email address of the partner, if there is an email field with
+ a mimum of two addresses, the system will create a new partner, with the
+ information of the previous one and will copy the new cleaned email into
+ the email field.
+ """
+ if context is None:
+ context = {}
+
+ proxy_model = self.pool['ir.model.fields']
+ field_ids = proxy_model.search(cr, uid, [('model', '=', 'res.partner'),
+ ('ttype', 'like', '%2many')],
+ context=context)
+ fields = proxy_model.read(cr, uid, field_ids, context=context)
+ reset_fields = dict((field['name'], []) for field in fields)
+
+ proxy_partner = self.pool['res.partner']
+ context['active_test'] = False
+ ids = proxy_partner.search(cr, uid, [], context=context)
+
+ fields = ['name', 'var' 'partner_id' 'is_company', 'email']
+ partners = proxy_partner.read(cr, uid, ids, fields, context=context)
+
+ partners.sort(key=operator.itemgetter('id'))
+ partners_len = len(partners)
+
+ _logger.info('partner_len: %r', partners_len)
+
+ for idx, partner in enumerate(partners):
+ if not partner['email']:
+ continue
+
+ percent = (idx / float(partners_len)) * 100.0
+ _logger.info('idx: %r', idx)
+ _logger.info('percent: %r', percent)
+ try:
+ emails = sanitize_email(partner['email'])
+ head, tail = emails[:1], emails[1:]
+ email = head[0] if head else False
+
+ proxy_partner.write(cr, uid, [partner['id']],
+ {'email': email}, context=context)
+
+ for email in tail:
+ values = dict(reset_fields, email=email)
+ proxy_partner.copy(cr, uid, partner['id'], values,
+ context=context)
+
+ except Exception:
+ _logger.exception("There is a problem with this partner: %r", partner)
+ raise
+ return True
+
+ def close_cb(self, cr, uid, ids, context=None):
+ return {'type': 'ir.actions.act_window_close'}
+
+ def _generate_query(self, fields, maximum_group=100):
+ group_fields = ', '.join(fields)
+
+ filters = []
+ for field in fields:
+ if field in ['email', 'name']:
+ filters.append((field, 'IS NOT', 'NULL'))
+
+ criteria = ' AND '.join('%s %s %s' % (field, operator, value)
+ for field, operator, value in filters)
+
+ text = [
+ "SELECT min(id), array_agg(id)",
+ "FROM res_partner",
+ ]
+
+ if criteria:
+ text.append('WHERE %s' % criteria)
+
+ text.extend([
+ "GROUP BY %s" % group_fields,
+ "HAVING COUNT(*) >= 2",
+ "ORDER BY min(id)",
+ ])
+
+ if maximum_group:
+ text.extend([
+ "LIMIT %s" % maximum_group,
+ ])
+
+ return ' '.join(text)
+
+ def _compute_selected_groupby(self, this):
+ group_by_str = 'group_by_'
+ group_by_len = len(group_by_str)
+
+ fields = [
+ key[group_by_len:]
+ for key in self._columns.keys()
+ if key.startswith(group_by_str)
+ ]
+
+ groups = [
+ field
+ for field in fields
+ if getattr(this, '%s%s' % (group_by_str, field), False)
+ ]
+
+ if not groups:
+ raise osv.except_osv(_('Error'),
+ _("You have to specify a filter for your selection"))
+
+ return groups
+
+ def next_cb(self, cr, uid, ids, context=None):
+ """
+ Don't compute any thing
+ """
+ context = dict(context or {}, active_test=False)
+ this = self.browse(cr, uid, ids[0], context=context)
+ if this.current_line_id:
+ this.current_line_id.unlink()
+ return self._next_screen(this)
+
+ def _next_screen(self, this):
+ this.refresh()
+ values = {}
+ if this.line_ids:
+ # in this case, we try to find the next record.
+ current_line = this.line_ids[0]
+ current_partner_ids = literal_eval(current_line.aggr_ids)
+ values.update({
+ 'current_line_id': current_line.id,
+ 'partner_ids': [(6, 0, current_partner_ids)],
+ 'state': 'selection',
+ })
+ else:
+ values.update({
+ 'current_line_id': False,
+ 'partner_ids': [],
+ 'state': 'finished',
+ })
+
+ this.write(values)
+
+ return {
+ 'type': 'ir.actions.act_window',
+ 'res_model': this._name,
+ 'res_id': this.id,
+ 'view_mode': 'form',
+ 'target': 'new',
+ }
+
+ def _model_is_installed(self, cr, uid, model, context=None):
+ proxy = self.pool.get('ir.model')
+ domain = [('model', '=', model)]
+ return proxy.search_count(cr, uid, domain, context=context) > 0
+
+ def _partner_use_in(self, cr, uid, aggr_ids, models, context=None):
+ """
+ Check if there is no occurence of this group of partner in the selected
+ model
+ """
+ for model, field in models.iteritems():
+ proxy = self.pool.get(model)
+ domain = [(field, 'in', aggr_ids)]
+ if proxy.search_count(cr, uid, domain, context=context):
+ return True
+ return False
+
+ def compute_models(self, cr, uid, ids, context=None):
+ """
+ Compute the different models needed by the system if you want to exclude
+ some partners.
+ """
+ assert is_integer_list(ids)
+
+ this = self.browse(cr, uid, ids[0], context=context)
+
+ models = {}
+ if this.exclude_contact:
+ models['res.users'] = 'partner_id'
+
+ if self._model_is_installed(cr, uid, 'account.move.line', context=context) and this.exclude_journal_item:
+ models['account.move.line'] = 'partner_id'
+
+ return models
+
+ def _process_query(self, cr, uid, ids, query, context=None):
+ """
+ Execute the select request and write the result in this wizard
+ """
+ proxy = self.pool.get('base.partner.merge.line')
+ this = self.browse(cr, uid, ids[0], context=context)
+ models = self.compute_models(cr, uid, ids, context=context)
+ cr.execute(query)
+
+ counter = 0
+ for min_id, aggr_ids in cr.fetchall():
+ if models and self._partner_use_in(cr, uid, aggr_ids, models, context=context):
+ continue
+ values = {
+ 'wizard_id': this.id,
+ 'min_id': min_id,
+ 'aggr_ids': aggr_ids,
+ }
+
+ proxy.create(cr, uid, values, context=context)
+ counter += 1
+
+ values = {
+ 'state': 'selection',
+ 'number_group': counter,
+ }
+
+ this.write(values)
+
+ _logger.info("counter: %s", counter)
+
+ def start_process_cb(self, cr, uid, ids, context=None):
+ """
+ Start the process.
+ * Compute the selected groups (with duplication)
+ * If the user has selected the 'exclude_XXX' fields, avoid the partners.
+ """
+ assert is_integer_list(ids)
+
+ context = dict(context or {}, active_test=False)
+ this = self.browse(cr, uid, ids[0], context=context)
+ groups = self._compute_selected_groupby(this)
+ query = self._generate_query(groups, this.maximum_group)
+ self._process_query(cr, uid, ids, query, context=context)
+
+ return self._next_screen(this)
+
+ def automatic_process_cb(self, cr, uid, ids, context=None):
+ assert is_integer_list(ids)
+ this = self.browse(cr, uid, ids[0], context=context)
+ this.start_process_cb()
+ this.refresh()
+
+ for line in this.line_ids:
+ partner_ids = literal_eval(line.aggr_ids)
+ self._merge(cr, uid, partner_ids, context=context)
+ line.unlink()
+ cr.commit()
+
+ this.write({'state': 'finished'})
+ return {
+ 'type': 'ir.actions.act_window',
+ 'res_model': this._name,
+ 'res_id': this.id,
+ 'view_mode': 'form',
+ 'target': 'new',
+ }
+
+ def parent_migration_process_cb(self, cr, uid, ids, context=None):
+ assert is_integer_list(ids)
+
+ context = dict(context or {}, active_test=False)
+ this = self.browse(cr, uid, ids[0], context=context)
+
+ query = """
+ SELECT
+ min(p1.id),
+ array_agg(DISTINCT p1.id)
+ FROM
+ res_partner as p1
+ INNER join
+ res_partner as p2
+ ON
+ p1.email = p2.email AND
+ p1.name = p2.name AND
+ (p1.parent_id = p2.id OR p1.id = p2.parent_id)
+ WHERE
+ p2.id IS NOT NULL
+ GROUP BY
+ p1.email,
+ p1.name,
+ CASE WHEN p1.parent_id = p2.id THEN p2.id
+ ELSE p1.id
+ END
+ HAVING COUNT(*) >= 2
+ ORDER BY
+ min(p1.id)
+ """
+
+ self._process_query(cr, uid, ids, query, context=context)
+
+ for line in this.line_ids:
+ partner_ids = literal_eval(line.aggr_ids)
+ self._merge(cr, uid, partner_ids, context=context)
+ line.unlink()
+ cr.commit()
+
+ this.write({'state': 'finished'})
+
+ cr.execute("""
+ UPDATE
+ res_partner
+ SET
+ is_company = NULL,
+ parent_id = NULL
+ WHERE
+ parent_id = id
+ """)
+
+ return {
+ 'type': 'ir.actions.act_window',
+ 'res_model': this._name,
+ 'res_id': this.id,
+ 'view_mode': 'form',
+ 'target': 'new',
+ }
+
+ def update_all_process_cb(self, cr, uid, ids, context=None):
+ assert is_integer_list(ids)
+
+ # WITH RECURSIVE cycle(id, parent_id) AS (
+ # SELECT id, parent_id FROM res_partner
+ # UNION
+ # SELECT cycle.id, res_partner.parent_id
+ # FROM res_partner, cycle
+ # WHERE res_partner.id = cycle.parent_id AND
+ # cycle.id != cycle.parent_id
+ # )
+ # UPDATE res_partner
+ # SET parent_id = NULL
+ # WHERE id in (SELECT id FROM cycle WHERE id = parent_id);
+
+ this = self.browse(cr, uid, ids[0], context=context)
+
+ self.parent_migration_process_cb(cr, uid, ids, context=None)
+
+ list_merge = [
+ {'group_by_vat': True, 'group_by_email': True, 'group_by_name': True},
+ # {'group_by_name': True, 'group_by_is_company': True, 'group_by_parent_id': True},
+ # {'group_by_email': True, 'group_by_is_company': True, 'group_by_parent_id': True},
+ # {'group_by_name': True, 'group_by_vat': True, 'group_by_is_company': True, 'exclude_journal_item': True},
+ # {'group_by_email': True, 'group_by_vat': True, 'group_by_is_company': True, 'exclude_journal_item': True},
+ # {'group_by_email': True, 'group_by_is_company': True, 'exclude_contact': True, 'exclude_journal_item': True},
+ # {'group_by_name': True, 'group_by_is_company': True, 'exclude_contact': True, 'exclude_journal_item': True}
+ ]
+
+ for merge_value in list_merge:
+ id = self.create(cr, uid, merge_value, context=context)
+ self.automatic_process_cb(cr, uid, [id], context=context)
+
+ cr.execute("""
+ UPDATE
+ res_partner
+ SET
+ is_company = NULL
+ WHERE
+ parent_id IS NOT NULL AND
+ is_company IS NOT NULL
+ """)
+
+ # cr.execute("""
+ # UPDATE
+ # res_partner as p1
+ # SET
+ # is_company = NULL,
+ # parent_id = (
+ # SELECT p2.id
+ # FROM res_partner as p2
+ # WHERE p2.email = p1.email AND
+ # p2.parent_id != p2.id
+ # LIMIT 1
+ # )
+ # WHERE
+ # p1.parent_id = p1.id
+ # """)
+
+ return self._next_screen(this)
+
+ def merge_cb(self, cr, uid, ids, context=None):
+ assert is_integer_list(ids)
+
+ context = dict(context or {}, active_test=False)
+ this = self.browse(cr, uid, ids[0], context=context)
+
+ partner_ids = set(map(int, this.partner_ids))
+ if not partner_ids:
+ this.write({'state': 'finished'})
+ return {
+ 'type': 'ir.actions.act_window',
+ 'res_model': this._name,
+ 'res_id': this.id,
+ 'view_mode': 'form',
+ 'target': 'new',
+ }
+
+ self._merge(cr, uid, partner_ids, context=context)
+
+ this.current_line_id.unlink()
+
+ return self._next_screen(this)
+
+ def merge_multi(self, cr, uid, ids, context=None):
+
+ active_model = context.get('active_model')
+ if active_model != 'res.partner':
+ raise osv.except_osv(
+ _('Error'),
+ _('This wizard can only used with the Partners')
+ )
+
+ partner_ids = context.get('active_ids', [])
+
+ MINIMAL_NUMBER = 2
+ if len(partner_ids) < MINIMAL_NUMBER:
+ raise osv.except_osv(
+ _('Error'),
+ _("You can't use this wizard with only one Partner")
+ )
+
+ self._merge(cr, uid, partner_ids, context=context)
+
+ return True
+
+ def auto_set_parent_id(self, cr, uid, ids, context=None):
+ assert is_integer_list(ids)
+
+ # select partner who have one least invoice
+ partner_treated = ['@gmail.com']
+ cr.execute(""" SELECT p.id, p.email
+ FROM res_partner as p
+ LEFT JOIN account_invoice as a
+ ON p.id = a.partner_id AND a.state in ('open','paid')
+ WHERE p.grade_id is NOT NULL
+ GROUP BY p.id
+ ORDER BY COUNT(a.id) DESC
+ """)
+ re_email = re.compile(r".*@")
+ for id, email in cr.fetchall():
+ # check email domain
+ email = re_email.sub("@", email or "")
+ if not email or email in partner_treated:
+ continue
+ partner_treated.append(email)
+
+ # don't update the partners if they are more of one who have invoice
+ cr.execute(""" SELECT *
+ FROM res_partner as p
+ WHERE p.id != %s AND p.email LIKE '%%%s' AND
+ EXISTS (SELECT * FROM account_invoice as a WHERE p.id = a.partner_id AND a.state in ('open','paid'))
+ """ % (id, email))
+
+ if len(cr.fetchall()) > 1:
+ _logger.info("%s MORE OF ONE COMPANY", email)
+ continue
+
+ # to display changed values
+ cr.execute(""" SELECT id,email
+ FROM res_partner
+ WHERE parent_id != %s AND id != %s AND email LIKE '%%%s'
+ """ % (id, id, email))
+ _logger.info("%r", cr.fetchall())
+
+ # upgrade
+ cr.execute(""" UPDATE res_partner
+ SET parent_id = %s
+ WHERE id != %s AND email LIKE '%%%s'
+ """ % (id, id, email))
+ return False
diff --git a/addons/crm/base_partner_merge_view.xml b/addons/crm/base_partner_merge_view.xml
new file mode 100644
index 00000000000..74e7a72d7a8
--- /dev/null
+++ b/addons/crm/base_partner_merge_view.xml
@@ -0,0 +1,138 @@
+
+
+
+
+
+
+
+ Deduplicate Contacts
+ base.partner.merge.automatic.wizard
+ form
+ form
+ new
+ {'active_test': False}
+
+
+
+
+
+ base.partner.merge.automatic.wizard.form
+ base.partner.merge.automatic.wizard
+
+
+
+
+
+
+ pool.get('base.partner.merge.automatic.wizard').merge_multi(cr, uid, None, context)
+ True
+
+ Automatic Merge
+
+ code
+ ir.actions.server
+
+
+
+
+ res.partner
+ Automatic Merge
+
+
+
+
+
+
diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index df6d5e12b66..7b6fe02afa8 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -98,6 +98,7 @@ class crm_case_stage(osv.osv):
'case_default': True,
}
+
class crm_case_section(osv.osv):
""" Model for sales teams. """
_name = "crm.case.section"
@@ -107,7 +108,7 @@ class crm_case_section(osv.osv):
_order = "complete_name"
def get_full_name(self, cr, uid, ids, field_name, arg, context=None):
- return dict(self.name_get(cr, uid, ids, context=context))
+ return dict(self.name_get(cr, uid, ids, context=context))
_columns = {
'name': fields.char('Sales Team', size=64, required=True, translate=True),
@@ -117,27 +118,36 @@ class crm_case_section(osv.osv):
"true, it will allow you to hide the sales team without removing it."),
'change_responsible': fields.boolean('Reassign Escalated', help="When escalating to this team override the salesman with the team leader."),
'user_id': fields.many2one('res.users', 'Team Leader'),
- 'member_ids':fields.many2many('res.users', 'sale_member_rel', 'section_id', 'member_id', 'Team Members'),
+ 'member_ids': fields.many2many('res.users', 'sale_member_rel', 'section_id', 'member_id', 'Team Members'),
'reply_to': fields.char('Reply-To', size=64, help="The email address put in the 'Reply-To' of all emails sent by OpenERP about cases in this sales team"),
'parent_id': fields.many2one('crm.case.section', 'Parent Team'),
'child_ids': fields.one2many('crm.case.section', 'parent_id', 'Child Teams'),
'resource_calendar_id': fields.many2one('resource.calendar', "Working Time", help="Used to compute open days"),
'note': fields.text('Description'),
- 'working_hours': fields.float('Working Hours', digits=(16,2 )),
+ 'working_hours': fields.float('Working Hours', digits=(16, 2)),
'stage_ids': fields.many2many('crm.case.stage', 'section_stage_rel', 'section_id', 'stage_id', 'Stages'),
'alias_id': fields.many2one('mail.alias', 'Alias', ondelete="cascade", required=True,
help="The email address associated with this team. New emails received will automatically "
"create new leads assigned to the team."),
+ 'open_lead_ids': fields.one2many('crm.lead', 'section_id',
+ string='Open Leads', readonly=True,
+ domain=['&', ('type', '!=', 'opportunity'), ('state', 'not in', ['done', 'cancel'])]),
+ 'open_opportunity_ids': fields.one2many('crm.lead', 'section_id',
+ string='Open Opportunities', readonly=True,
+ domain=['&', '|', ('type', '=', 'opportunity'), ('type', '=', 'both'), ('state', 'not in', ['done', 'cancel'])]),
+ 'color': fields.integer('Color Index'),
+ 'use_leads': fields.boolean('Leads',
+ help="This enables the management of leads in the sales team. Otherwise the sales team manages only opportunities."),
}
def _get_stage_common(self, cr, uid, context):
- ids = self.pool.get('crm.case.stage').search(cr, uid, [('case_default','=',1)], context=context)
+ ids = self.pool.get('crm.case.stage').search(cr, uid, [('case_default', '=', 1)], context=context)
return ids
_defaults = {
'active': 1,
'stage_ids': _get_stage_common,
- 'alias_domain': False, # always hide alias during creation
+ 'use_leads': True,
}
_sql_constraints = [
@@ -150,7 +160,7 @@ class crm_case_section(osv.osv):
def name_get(self, cr, uid, ids, context=None):
"""Overrides orm name_get method"""
- if not isinstance(ids, list) :
+ if not isinstance(ids, list):
ids = [ids]
res = []
if not ids:
@@ -167,20 +177,20 @@ class crm_case_section(osv.osv):
def create(self, cr, uid, vals, context=None):
mail_alias = self.pool.get('mail.alias')
if not vals.get('alias_id'):
- vals.pop('alias_name', None) # prevent errors during copy()
+ alias_name = vals.pop('alias_name', None) or vals.get('name') # prevent errors during copy()
alias_id = mail_alias.create_unique_alias(cr, uid,
- {'alias_name': vals['name']},
+ {'alias_name': alias_name},
model_name="crm.lead",
context=context)
vals['alias_id'] = alias_id
res = super(crm_case_section, self).create(cr, uid, vals, context)
- mail_alias.write(cr, uid, [vals['alias_id']], {'alias_defaults': {'section_id': res, 'type':'lead'}}, context)
+ mail_alias.write(cr, uid, [vals['alias_id']], {'alias_defaults': {'section_id': res, 'type': 'lead'}}, context)
return res
def unlink(self, cr, uid, ids, context=None):
# Cascade-delete mail aliases as well, as they should not exist without the sales team.
mail_alias = self.pool.get('mail.alias')
- alias_ids = [team.alias_id.id for team in self.browse(cr, uid, ids, context=context) if team.alias_id ]
+ alias_ids = [team.alias_id.id for team in self.browse(cr, uid, ids, context=context) if team.alias_id]
res = super(crm_case_section, self).unlink(cr, uid, ids, context=context)
mail_alias.unlink(cr, uid, alias_ids, context=context)
return res
@@ -230,4 +240,5 @@ class crm_payment_mode(osv.osv):
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
}
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/crm_case_section_view.xml b/addons/crm/crm_case_section_view.xml
new file mode 100644
index 00000000000..c788872b47e
--- /dev/null
+++ b/addons/crm/crm_case_section_view.xml
@@ -0,0 +1,294 @@
+
+
+
+
+
+
+
+ Leads
+ crm.lead
+ tree,form
+ ['|', ('type','=','lead'), ('type','=',False)]
+
+
+ {
+ 'search_default_section_id': [active_id],
+ 'search_default_open': 1,
+ 'default_section_id': active_id,
+ 'default_type': 'lead',
+ 'stage_type': 'lead',
+ }
+
+
+
+ Use leads if you need a qualification step before creating an
+ opportunity or a customer. It can be a business card you received,
+ a contact form filled in your website, or a file of unqualified
+ prospects you import, etc.
+
+ Once qualified, the lead can be converted into a business
+ opportunity and/or a new customer in your address book.
+
+ OpenERP helps you keep track of your sales pipeline to follow
+ up potential sales and better forecast your future revenues.
+
+ You will be able to plan meetings and phone calls from
+ opportunities, convert them into quotations, attach related
+ documents, track all discussions, and much more.
+
+ Use sales team to organize your different salespersons or
+ departments into separate teams. Each team will work in
+ its own list of opportunities.
+
+ Use sales team to organize your different salespersons or
+ departments into separate teams. Each team will work in
+ its own list of opportunities.
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/crm/crm_data.xml b/addons/crm/crm_data.xml
index 3db7a457dfd..f24aee13c1d 100644
--- a/addons/crm/crm_data.xml
+++ b/addons/crm/crm_data.xml
@@ -27,8 +27,10 @@
- Sales Department
+ SalesSales
+ True
+
@@ -64,12 +66,6 @@
To manage quotations and sale orders, install the "Sales Management" application.
]]>
-
- sales
-
-
- {'type':'lead'}
-
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index 56990f0e8f9..61e8c75cea8 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -22,6 +22,7 @@
from openerp.addons.base_status.base_stage import base_stage
import crm
from datetime import datetime
+from operator import itemgetter
from openerp.osv import fields, osv
import time
from openerp import tools
@@ -84,6 +85,13 @@ class crm_lead(base_stage, format_address, osv.osv):
},
}
+ def get_empty_list_help(self, cr, uid, help, context=None):
+ if context.get('default_type') == 'lead':
+ context['empty_list_help_model'] = 'crm.case.section'
+ context['empty_list_help_id'] = context.get('default_section_id')
+ context['empty_list_help_document_name'] = _("leads")
+ return super(crm_lead, self).get_empty_list_help(cr, uid, help, context=context)
+
def create(self, cr, uid, vals, context=None):
if context is None:
context = {}
@@ -355,6 +363,16 @@ class crm_lead(base_stage, format_address, osv.osv):
}
return {'value' : values}
+ def on_change_user(self, cr, uid, ids, user_id, context=None):
+ """ When changing the user, also set a section_id or restrict section id
+ to the ones user_id is member of. """
+ section_id = False
+ if user_id:
+ section_ids = self.pool.get('crm.case.section').search(cr, uid, ['|', ('user_id', '=', user_id), ('member_ids', '=', user_id)], context=context)
+ if section_ids:
+ section_id = section_ids[0]
+ return {'value': {'section_id': section_id}}
+
def _check(self, cr, uid, ids=False, context=None):
""" Override of the base.stage method.
Function called by the scheduler to process cases for date actions
@@ -628,12 +646,13 @@ class crm_lead(base_stage, format_address, osv.osv):
opportunities = self.browse(cr, uid, ids, context=context)
sequenced_opps = []
for opportunity in opportunities:
+ sequence = -1
if opportunity.stage_id and opportunity.stage_id.state != 'cancel':
- sequenced_opps.append((opportunity.stage_id.sequence, opportunity))
- else:
- sequenced_opps.append((-1, opportunity))
- sequenced_opps.sort(key=lambda tup: tup[0], reverse=True)
- opportunities = [opportunity for sequence, opportunity in sequenced_opps]
+ sequence = opportunity.stage_id.sequence
+ sequenced_opps.append(((int(sequence != -1 and opportunity.type == 'opportunity'), sequence, -opportunity.id), opportunity))
+
+ sequenced_opps.sort(reverse=True)
+ opportunities = map(itemgetter(1), sequenced_opps)
ids = [opportunity.id for opportunity in opportunities]
highest = opportunities[0]
opportunities_rest = opportunities[1:]
@@ -652,11 +671,10 @@ class crm_lead(base_stage, format_address, osv.osv):
opportunities.extend(opportunities_rest)
self._merge_notify(cr, uid, highest, opportunities, context=context)
# Check if the stage is in the stages of the sales team. If not, assign the stage with the lowest sequence
- if merged_data.get('type') == 'opportunity' and merged_data.get('section_id'):
- section_stages = self.pool.get('crm.case.section').read(cr, uid, merged_data['section_id'], ['stage_ids'], context=context)
- if merged_data.get('stage_id') not in section_stages['stage_ids']:
- stages_sequences = self.pool.get('crm.case.stage').search(cr, uid, [('id','in',section_stages['stage_ids'])], order='sequence', limit=1, context=context)
- merged_data['stage_id'] = stages_sequences and stages_sequences[0] or False
+ if merged_data.get('section_id'):
+ section_stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('section_ids', 'in', merged_data['section_id']), ('type', '=', merged_data.get('type'))], order='sequence', context=context)
+ if merged_data.get('stage_id') not in section_stage_ids:
+ merged_data['stage_id'] = section_stage_ids and section_stage_ids[0] or False
# Write merged data into first opportunity
self.write(cr, uid, [highest.id], merged_data, context=context)
# Delete tail opportunities
@@ -1035,6 +1053,14 @@ class crm_lead(base_stage, format_address, osv.osv):
message = _("%s a call for %s.%s") % (prefix, phonecall.date, suffix)
return self.message_post(cr, uid, ids, body=message, context=context)
+ def log_meeting(self, cr, uid, ids, meeting_subject, meeting_date, duration, context=None):
+ if not duration:
+ duration = _('unknown')
+ else:
+ duration = str(duration)
+ message = _("Meeting scheduled at '%s' Subject: %s Duration: %s hour(s)") % (meeting_date, meeting_subject, duration)
+ return self.message_post(cr, uid, ids, body=message, context=context)
+
def onchange_state(self, cr, uid, ids, state_id, context=None):
if state_id:
country_id=self.pool.get('res.country.state').browse(cr, uid, state_id, context).country_id.id
diff --git a/addons/crm/crm_lead_data.xml b/addons/crm/crm_lead_data.xml
index 8ee352f25c0..0979a94eb3f 100644
--- a/addons/crm/crm_lead_data.xml
+++ b/addons/crm/crm_lead_data.xml
@@ -7,68 +7,69 @@
Newdraft
-
-
+
+ bothOpportunityopen
-
-
+
+ lead
-
- Qualification
-
- open
-
-
- opportunity
-
-
- Proposition
-
- open
-
-
- opportunity
-
-
- Negotiation
-
- open
-
-
- opportunity
-
-
- Won
-
- done
-
-
-
- opportunity
- Deadcancel
-
-
+
+ lead
+
+ Qualification
+
+ open
+
+
+ opportunity
+
+
+ Proposition
+
+ open
+
+
+ opportunity
+
+
+ Negotiation
+
+ open
+
+
+ opportunity
+
+
+ Won
+
+
+ done
+
+
+
+ opportunity
+ Lostcancel
-
-
+
+ opportunity
diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml
index 8c38ed41a1c..2226b4ac895 100644
--- a/addons/crm/crm_lead_menu.xml
+++ b/addons/crm/crm_lead_menu.xml
@@ -9,34 +9,23 @@
['|', ('type','=','lead'), ('type','=',False)]
- {'default_type':'lead', 'stage_type':'lead'}
-
-
- Click to create an unqualified lead.
-
- Use leads if you need a qualification step before creating an
- opportunity or a customer. It can be a business card you received,
- a contact form filled in your website, or a file of unqualified
- prospects you import, etc.
-
- Once qualified, the lead can be converted into a business
- opportunity and/or a new customer in your address book.
-
+ Use leads if you need a qualification step before creating an
+ opportunity or a customer. It can be a business card you received,
+ a contact form filled in your website, or a file of unqualified
+ prospects you import, etc.
+
+ Once qualified, the lead can be converted into a business
+ opportunity and/or a new customer in your address book.
+
- OpenERP helps you keep track of your sales pipeline to follow
- up potential sales and better forecast your future revenues.
-
- You will be able to plan meetings and phone calls from
- opportunities, convert them into quotations, attach related
- documents, track all discussions, and much more.
-
+
+ Click to create a new opportunity.
+
+ OpenERP helps you keep track of your sales pipeline to follow
+ up potential sales and better forecast your future revenues.
+
+ You will be able to plan meetings and phone calls from
+ opportunities, convert them into quotations, attach related
+ documents, track all discussions, and much more.
+
- Use sales team to organize your different salespersons or
- departments into separate teams. Each team will work in
- its own list of opportunities.
-
-
-
-
-
-
-
@@ -233,7 +130,7 @@
@@ -248,7 +145,7 @@
-
+
@@ -261,7 +158,7 @@
-
+
@@ -275,7 +172,7 @@
@@ -295,13 +192,6 @@
groups="base.group_no_one"
parent="base.menu_crm_config_lead"/>
-
- Cases by Sales Team
- crm.case.section
- [('parent_id','=',False)]
- tree
-
-
@@ -434,7 +324,7 @@
-
+
@@ -448,7 +338,7 @@
diff --git a/addons/crm/i18n/hu.po b/addons/crm/i18n/hu.po
index 193fbdfc6cb..98313efb4f3 100644
--- a/addons/crm/i18n/hu.po
+++ b/addons/crm/i18n/hu.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2013-03-17 23:22+0000\n"
+"PO-Revision-Date: 2013-04-13 08:42+0000\n"
"Last-Translator: krnkris \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: 2013-03-19 05:33+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-14 05:12+0000\n"
+"X-Generator: Launchpad (build 16564)\n"
#. module: crm
#: view:crm.lead.report:0
msgid "# Leads"
-msgstr "Érdeklődők száma"
+msgstr "# Érdeklődések"
#. module: crm
#: help:sale.config.settings,fetchmail_lead:0
@@ -2688,7 +2688,7 @@ msgstr "Telefonhívásaim"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead3
msgid "Qualification"
-msgstr "Végzettség"
+msgstr "Besorolás"
#. module: crm
#: field:crm.lead2opportunity.partner,name:0
@@ -2993,7 +2993,7 @@ msgstr "ekkor"
#: selection:crm.lead,state:0
#: view:crm.lead.report:0
msgid "New"
-msgstr "új"
+msgstr "Új"
#. module: crm
#: field:crm.lead,function:0
diff --git a/addons/crm/i18n/nl_BE.po b/addons/crm/i18n/nl_BE.po
index 697c7c4f083..a22d1f605a6 100644
--- a/addons/crm/i18n/nl_BE.po
+++ b/addons/crm/i18n/nl_BE.po
@@ -1,20 +1,20 @@
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * crm
-# Els Van Vossel , 2012.
+# Els Van Vossel , 2012, 2013.
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
-"PO-Revision-Date: 2012-10-02 07:29+0000\n"
+"PO-Revision-Date: 2013-04-26 23:39+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) \n"
"Language-Team: Els Van Vossel\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-03-16 05:09+0000\n"
-"X-Generator: Launchpad (build 16532)\n"
+"X-Launchpad-Export-Date: 2013-04-27 05:44+0000\n"
+"X-Generator: Launchpad (build 16580)\n"
"Language: nl\n"
#. module: crm
@@ -28,6 +28,8 @@ msgid ""
"Allows you to configure your incoming mail server, and create leads from "
"incoming emails."
msgstr ""
+"Hiermee kunt u de inkomende mailserver instellen en leads laten maken van "
+"binnenkomende e-mails."
#. module: crm
#: code:addons/crm/crm_lead.py:881
@@ -76,7 +78,7 @@ msgstr "Opportuniteiten kiezen"
#: model:res.groups,name:crm.group_fund_raising
#: field:sale.config.settings,group_fund_raising:0
msgid "Manage Fund Raising"
-msgstr ""
+msgstr "Fondsenwerving"
#. module: crm
#: view:crm.lead.report:0
@@ -96,7 +98,7 @@ msgstr "Fasenaam"
#: view:crm.lead.report:0
#: view:crm.phonecall.report:0
msgid "Salesperson"
-msgstr ""
+msgstr "Verkoper"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead_report
@@ -113,18 +115,18 @@ msgstr "Dag"
#. module: crm
#: view:crm.lead:0
msgid "Company Name"
-msgstr ""
+msgstr "Bedrijfsnaam"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor6
msgid "Training"
-msgstr ""
+msgstr "Training"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_lead_categ_action
#: model:ir.ui.menu,name:crm.menu_crm_lead_categ
msgid "Sales Tags"
-msgstr ""
+msgstr "Verkooplabels"
#. module: crm
#: view:crm.lead.report:0
@@ -137,6 +139,7 @@ msgstr "Verw. sluiting"
#: help:crm.phonecall,message_unread:0
msgid "If checked new messages require your attention."
msgstr ""
+"Als dit is ingeschakeld, zijn er nieuwe berichten die uw aandacht vragen."
#. module: crm
#: help:crm.lead.report,creation_day:0
@@ -182,6 +185,8 @@ msgid ""
"Holds the Chatter summary (number of messages, ...). This summary is "
"directly in html format in order to be inserted in kanban views."
msgstr ""
+"Bevat de Chatsamenvatting (aantal berichten, ...). Deze samenvatting is in "
+"html-formaat, zodat ze in de kanbanweergave kan worden gebruikt."
#. module: crm
#: code:addons/crm/crm_lead.py:624
@@ -189,7 +194,7 @@ msgstr ""
#: code:addons/crm/crm_phonecall.py:280
#, python-format
msgid "Warning!"
-msgstr ""
+msgstr "Waarschuwing"
#. module: crm
#: view:crm.lead:0
@@ -238,7 +243,7 @@ msgstr ""
#. module: crm
#: model:ir.actions.server,name:crm.action_email_reminder_lead
msgid "Reminder to User"
-msgstr ""
+msgstr "Herinnering voor gebruiker"
#. module: crm
#: field:crm.segmentation,segmentation_line:0
@@ -266,7 +271,7 @@ msgstr "Leadanalyse"
#: code:addons/crm/crm_lead.py:1010
#, python-format
msgid "%s a call for the %s."
-msgstr ""
+msgstr "%s een gesprek voor %s."
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_resource_type_act
@@ -328,6 +333,16 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik als u een nieuwe klantensegmentering wilt instellen.\n"
+"
\n"
+" Maak specifiieke categorieën en ken deze toe aan uw\n"
+" contactpersonen voor een betere interactie. Via\n"
+" segmentering kunt u categorieën toekennen aan "
+"contactpersonen\n"
+" volgens de door u ingestelde criteria.\n"
+"
\n"
+" "
#. module: crm
#: field:crm.opportunity2phonecall,contact_name:0
@@ -341,6 +356,7 @@ msgstr "Contactpersoon"
msgid ""
"When escalating to this team override the salesman with the team leader."
msgstr ""
+"Bij escaleren naar dit team, wordt de verkoper vervangen door de teamleider."
#. module: crm
#: model:process.transition,name:crm.process_transition_opportunitymeeting0
@@ -380,12 +396,25 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik om een opportuniteit voor deze klant te maken.\n"
+"
\n"
+" Met opportuniteiten kunt u uw verkooppijplijn en uw "
+"mogelijke verkopen opvolgen,\n"
+" voor een beter zicht op te verwachten inkomsten.\n"
+"
\n"
+" U kunt vergaderingen en telefoongesprekken plannen\n"
+" voor opportuniteiten. U kunt van een opportuniteit een "
+"offerte maken, documenten\n"
+" toevoegen, discussies volgen, en nog veel meer.\n"
+"
\n"
+" "
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead7
#: view:crm.lead:0
msgid "Dead"
-msgstr ""
+msgstr "Dood"
#. module: crm
#: field:crm.case.section,message_unread:0
@@ -393,7 +422,7 @@ msgstr ""
#: field:crm.lead,message_unread:0
#: field:crm.phonecall,message_unread:0
msgid "Unread Messages"
-msgstr ""
+msgstr "Ongelezen berichten"
#. module: crm
#: view:crm.segmentation:0
@@ -407,7 +436,7 @@ msgstr "Segmentering"
#: selection:crm.lead2opportunity.partner.mass,action:0
#: selection:crm.partner.binding,action:0
msgid "Link to an existing customer"
-msgstr ""
+msgstr "Koppelen aan een bestaande relatie"
#. module: crm
#: field:crm.lead,write_date:0
@@ -425,8 +454,8 @@ msgid ""
"This percentage depicts the default/average probability of the Case for this "
"stage to be a success"
msgstr ""
-"Dit percentage drukt de standaard/gemiddelde slaagkans uit voor de zaak in "
-"deze fase."
+"Dit percentage drukt de standaard/gemiddelde slagingskans uit voor de zaak "
+"in deze fase."
#. module: crm
#: view:crm.lead:0
@@ -454,6 +483,7 @@ msgstr ""
#: view:crm.lead:0
msgid "Leads that are assigned to one of the sale teams I manage, or to me"
msgstr ""
+"Leads toegewezen aan een van de verkoopteams onder mijn beheer, of aan mij"
#. module: crm
#: field:crm.lead,partner_address_email:0
@@ -472,6 +502,15 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik als u een nieuw verkoopteam wilt maken.\n"
+"
\n"
+" Met verkoopteams organiseert u meerdere verkopers of "
+"afdelingen in\n"
+" aparte teams. Elk team werkt op zijn eigen\n"
+" opportuniteitenlijst.\n"
+"
\n"
+" "
#. module: crm
#: model:process.transition,note:crm.process_transition_opportunitymeeting0
@@ -485,7 +524,7 @@ msgstr "Gewone of telefonische vergadering over opportuniteit"
#: view:crm.phonecall.report:0
#: field:crm.phonecall.report,state:0
msgid "Status"
-msgstr ""
+msgstr "Status"
#. module: crm
#: view:crm.lead2opportunity.partner:0
@@ -495,7 +534,7 @@ msgstr "Opportuniteit maken"
#. module: crm
#: view:sale.config.settings:0
msgid "Configure"
-msgstr ""
+msgstr "Instellen"
#. module: crm
#: view:crm.lead:0
@@ -555,18 +594,26 @@ msgid ""
" If the call needs to be done then the status is set "
"to 'Not Held'."
msgstr ""
+"De status wordt op 'Uit te voeren' gezet als er een zaak wordt gemaakt. "
+" \n"
+"Als de zaak lopende is, wordt de status op 'Open' gezet. "
+" \n"
+"Als het gesprek is gevoerd, wordt de status op 'Uitgevoerd' gezet. "
+" \n"
+"Als het gesprek nog moet worden uitgevoerd, gaat de status naar 'Niet "
+"uitgevoerd'."
#. module: crm
#: field:crm.case.section,message_summary:0
#: field:crm.lead,message_summary:0
#: field:crm.phonecall,message_summary:0
msgid "Summary"
-msgstr "Samenvatting"
+msgstr "Overzicht"
#. module: crm
#: view:crm.merge.opportunity:0
msgid "Merge"
-msgstr ""
+msgstr "Samenvoegen"
#. module: crm
#: model:email.template,subject:crm.email_template_opportunity_mail
@@ -589,6 +636,8 @@ msgid ""
"Reminder on Lead: [[object.id ]] [[object.partner_id and 'of ' "
"+object.partner_id.name or '']]"
msgstr ""
+"Herinnering voor Lead: [[object.id ]] [[object.partner_id and 'van ' "
+"+object.partner_id.name or '']]"
#. module: crm
#: view:crm.segmentation:0
@@ -608,7 +657,7 @@ msgstr "De code van het verkoopteam moet uniek zijn"
#. module: crm
#: help:crm.lead,email_from:0
msgid "Email address of the contact"
-msgstr ""
+msgstr "E-mailadres van de contactpersoon"
#. module: crm
#: selection:crm.case.stage,state:0
@@ -629,6 +678,13 @@ msgid ""
" \n"
" "
msgstr ""
+"
\n"
+" Klik als u een nieuwe categorie wilt maken.\n"
+"
\n"
+" Maak specifieke telefooncategorieën om beter de gesprekstypen\n"
+" op te volgen in het systeem.\n"
+"
\n"
+" "
#. module: crm
#: help:crm.case.section,reply_to:0
@@ -734,12 +790,12 @@ msgstr "Televisie"
#. module: crm
#: model:ir.actions.act_window,name:crm.action_crm_send_mass_convert
msgid "Convert to opportunities"
-msgstr ""
+msgstr "Omzetten naar opportuniteit"
#. module: crm
#: model:ir.model,name:crm.model_sale_config_settings
msgid "sale.config.settings"
-msgstr ""
+msgstr "sale.config.settings"
#. module: crm
#: view:crm.segmentation:0
@@ -749,7 +805,7 @@ msgstr "Verwerking stoppen"
#. module: crm
#: field:crm.case.section,alias_id:0
msgid "Alias"
-msgstr ""
+msgstr "Alias"
#. module: crm
#: view:crm.phonecall:0
@@ -761,6 +817,8 @@ msgstr "Telefoongesprekken zoeken"
msgid ""
"Leads/Opportunities that are assigned to one of the sale teams I manage"
msgstr ""
+"Leads/Opportuniteiten die zijn toegewezen aan een van de verkoopteams onder "
+"mijn beheer"
#. module: crm
#: field:calendar.attendee,categ_id:0
@@ -781,7 +839,7 @@ msgstr "Van %s : %s"
#. module: crm
#: view:crm.lead2opportunity.partner.mass:0
msgid "Convert to Opportunities"
-msgstr ""
+msgstr "Omzetten naar opportuniteit"
#. module: crm
#: view:crm.lead2opportunity.partner:0
@@ -790,7 +848,7 @@ msgstr ""
#: view:crm.opportunity2phonecall:0
#: view:crm.phonecall2phonecall:0
msgid "or"
-msgstr ""
+msgstr "of"
#. module: crm
#: field:crm.lead.report,create_date:0
@@ -809,6 +867,8 @@ msgid ""
"Link between stages and sales teams. When set, this limitate the current "
"stage to the selected sales teams."
msgstr ""
+"Koppeling tussen fasen en verkoopteams. Deze maken de huidige fase enkel "
+"toegankelijk voor de gekozen verkoopteams."
#. module: crm
#: view:crm.case.stage:0
@@ -847,7 +907,7 @@ msgstr "Relatiecategorie"
#. module: crm
#: field:crm.lead,probability:0
msgid "Success Rate (%)"
-msgstr ""
+msgstr "Slagingskans (%)"
#. module: crm
#: field:crm.segmentation,sales_purchase_active:0
@@ -889,7 +949,7 @@ msgstr "Maart"
#. module: crm
#: view:crm.lead:0
msgid "Send Email"
-msgstr ""
+msgstr "E-mail verzenden"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:89
@@ -919,6 +979,8 @@ msgid ""
"Opportunities that are assigned to either me or one of the sale teams I "
"manage"
msgstr ""
+"Opportuniteiten die zijn toegewezen aan een van de verkoopteams onder mijn "
+"beheer of aan mij"
#. module: crm
#: help:crm.case.section,resource_calendar_id:0
@@ -984,6 +1046,9 @@ msgid ""
"Allows you to track your customers/suppliers claims and grievances.\n"
" This installs the module crm_claim."
msgstr ""
+"Hiermee kunt u klachten en problemen van klanten/ aan leveranciers "
+"opvolgen.\n"
+" Hiermee installeert u de module crm_claim."
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead6
@@ -1058,7 +1123,7 @@ msgstr "Fase"
#. module: crm
#: view:crm.phonecall.report:0
msgid "Phone Calls that are assigned to me"
-msgstr ""
+msgstr "Aan mij toegewezen telefoongesprekken"
#. module: crm
#: field:crm.lead,user_login:0
@@ -1086,11 +1151,13 @@ msgid ""
"Allows you to communicate with Customer, process Customer query, and "
"provide better help and support. This installs the module crm_helpdesk."
msgstr ""
+"Hiermee kunt u met de klant communiceren, vragen beantwoorden en betere "
+"ondersteuning verlenen. Hiermee installeert u de module crm_helpdesk."
#. module: crm
#: view:crm.lead:0
msgid "Delete"
-msgstr ""
+msgstr "Verwijderen"
#. module: crm
#: model:mail.message.subtype,description:crm.mt_lead_create
@@ -1100,7 +1167,7 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "í"
-msgstr ""
+msgstr "í"
#. module: crm
#: selection:crm.lead.report,creation_month:0
@@ -1141,12 +1208,12 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "oe_kanban_text_red"
-msgstr ""
+msgstr "oe_kanban_text_red"
#. module: crm
#: model:ir.ui.menu,name:crm.menu_crm_payment_mode_act
msgid "Payment Modes"
-msgstr ""
+msgstr "Betalingswijzen"
#. module: crm
#: field:crm.lead.report,opening_date:0
@@ -1193,6 +1260,9 @@ msgid ""
"This field is used to distinguish stages related to Leads from stages "
"related to Opportunities, or to specify stages available for both types."
msgstr ""
+"Dit veld dient om een onderscheid te maken tussen de fasen voor leads en die "
+"voor opportuniteiten, of om fasen in te stellen die voor beide typen van "
+"toepassing zijn."
#. module: crm
#: model:mail.message.subtype,name:crm.mt_lead_create
@@ -1234,7 +1304,7 @@ msgstr "onbekend"
#: field:crm.lead,message_is_follower:0
#: field:crm.phonecall,message_is_follower:0
msgid "Is a Follower"
-msgstr ""
+msgstr "Is een volger"
#. module: crm
#: field:crm.opportunity2phonecall,date:0
@@ -1247,7 +1317,7 @@ msgstr "Datum"
#. module: crm
#: model:crm.case.section,name:crm.crm_case_section_4
msgid "Online Support"
-msgstr ""
+msgstr "Onlineondersteuning"
#. module: crm
#: view:crm.lead.report:0
@@ -1273,6 +1343,10 @@ msgid ""
"set to 'Done'. If the case needs to be reviewed then the Status is set to "
"'Pending'."
msgstr ""
+"De status wordt op 'Voorlopig' gezet als de zaak wordt gemaakt. Als de zaak "
+"lopende is, wordt de status op 'Open' gezet. Als de zaak is behandeld, wordt "
+"de status op 'Gereed' gezet. Als de zaak moet worden bekeken, wordt de "
+"status op 'Wachtend' gezet."
#. module: crm
#: model:crm.case.section,name:crm.crm_case_section_1
@@ -1306,7 +1380,7 @@ msgstr "Segmenteringsomschrijving"
#. module: crm
#: view:crm.lead:0
msgid "Lead Description"
-msgstr ""
+msgstr "Leadomschrijving"
#. module: crm
#: code:addons/crm/crm_lead.py:565
@@ -1317,7 +1391,7 @@ msgstr "Samengevoegde opportuniteiten"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor7
msgid "Consulting"
-msgstr ""
+msgstr "Consulting"
#. module: crm
#: field:crm.case.section,code:0
@@ -1327,7 +1401,7 @@ msgstr "Code"
#. module: crm
#: view:sale.config.settings:0
msgid "Features"
-msgstr ""
+msgstr "Opties"
#. module: crm
#: field:crm.case.section,child_ids:0
@@ -1342,7 +1416,7 @@ msgstr "Telefoongesprekken in status Uit te voeren en Open."
#. module: crm
#: field:crm.lead2opportunity.partner.mass,user_ids:0
msgid "Salesmen"
-msgstr ""
+msgstr "Verkopers"
#. module: crm
#: view:crm.lead:0
@@ -1362,12 +1436,12 @@ msgstr "Annuleren"
#. module: crm
#: view:crm.lead:0
msgid "Opportunities Assigned to Me or My Team(s)"
-msgstr ""
+msgstr "Opportuniteiten voor mij of mijn team(s)"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor4
msgid "Information"
-msgstr ""
+msgstr "Informatie"
#. module: crm
#: view:crm.lead.report:0
@@ -1389,7 +1463,7 @@ msgstr ""
#: field:crm.lead2opportunity.partner.mass,action:0
#: field:crm.partner.binding,action:0
msgid "Related Customer"
-msgstr ""
+msgstr "Gekoppelde klant"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor8
@@ -1406,12 +1480,12 @@ msgstr "Lead/opportuniteit"
#: model:ir.actions.act_window,name:crm.action_merge_opportunities
#: model:ir.actions.act_window,name:crm.merge_opportunity_act
msgid "Merge leads/opportunities"
-msgstr ""
+msgstr "Leads/opportuniteiten samenvoegen"
#. module: crm
#: help:crm.case.stage,sequence:0
msgid "Used to order stages. Lower is better."
-msgstr ""
+msgstr "WOrdt gebruikt om fasen te rangschikken. Lager is beter."
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_phonecall_categ_action
@@ -1426,7 +1500,7 @@ msgstr "Leads/opportuniteiten in status Open."
#. module: crm
#: model:ir.model,name:crm.model_res_users
msgid "Users"
-msgstr ""
+msgstr "Gebruikers"
#. module: crm
#: model:mail.message.subtype,name:crm.mt_lead_stage
@@ -1484,7 +1558,7 @@ msgstr "Naam"
#. module: crm
#: view:crm.lead.report:0
msgid "Leads/Opportunities that are assigned to me"
-msgstr ""
+msgstr "Leads/opportuniteiten die aan mij zijn toegekend"
#. module: crm
#: field:crm.lead.report,date_closed:0
@@ -1502,12 +1576,12 @@ msgstr "Mijn zaken"
#: help:crm.lead,message_ids:0
#: help:crm.phonecall,message_ids:0
msgid "Messages and communication history"
-msgstr ""
+msgstr "Berichten en communicatiehistoriek"
#. module: crm
#: view:crm.lead:0
msgid "Show Countries"
-msgstr ""
+msgstr "Landen tonen"
#. module: crm
#: view:crm.lead:0
@@ -1531,7 +1605,7 @@ msgstr "Prospect omzetten naar relatie"
#. module: crm
#: model:ir.model,name:crm.model_crm_payment_mode
msgid "CRM Payment Mode"
-msgstr ""
+msgstr "CRM betalingswijze"
#. module: crm
#: view:crm.lead.report:0
@@ -1554,7 +1628,7 @@ msgstr "Groeperen op..."
#. module: crm
#: view:crm.merge.opportunity:0
msgid "Merge Leads/Opportunities"
-msgstr ""
+msgstr "Leads/opportuniteiten samenvoegen"
#. module: crm
#: field:crm.case.section,parent_id:0
@@ -1566,7 +1640,7 @@ msgstr "Hoofdteam"
#: selection:crm.lead2opportunity.partner.mass,action:0
#: selection:crm.partner.binding,action:0
msgid "Do not link to a customer"
-msgstr ""
+msgstr "Geen relatie koppelen"
#. module: crm
#: field:crm.lead,date_action:0
@@ -1580,11 +1654,14 @@ msgid ""
"stage. For example, if a stage is related to the status 'Close', when your "
"document reaches this stage, it is automatically closed."
msgstr ""
+"De status van uw document wordt automatisch gewijzigd in de functie van de "
+"gekozen fase. Als een fase gekoppeld is aan de status 'Gesloten', dan wordt "
+"het document automatisch gesloten als het in deze status komt."
#. module: crm
#: view:crm.lead2opportunity.partner.mass:0
msgid "Assign opportunities to"
-msgstr ""
+msgstr "Opportuniteiten toewijzen aan"
#. module: crm
#: model:crm.case.categ,name:crm.categ_phone1
@@ -1600,12 +1677,12 @@ msgstr "Maand van gesprek"
#: code:addons/crm/crm_phonecall.py:290
#, python-format
msgid "Partner has been created."
-msgstr ""
+msgstr "Relatie is gemaakt."
#. module: crm
#: field:sale.config.settings,module_crm_claim:0
msgid "Manage Customer Claims"
-msgstr ""
+msgstr "Klachten van klanten opvolgen"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_report_crm_lead
@@ -1618,7 +1695,7 @@ msgstr ""
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor3
msgid "Services"
-msgstr ""
+msgstr "Diensten"
#. module: crm
#: selection:crm.lead,priority:0
@@ -1657,7 +1734,7 @@ msgstr "Antwoord aan"
#. module: crm
#: view:crm.lead:0
msgid "Display"
-msgstr ""
+msgstr "Weergeven"
#. module: crm
#: view:board.board:0
@@ -1693,12 +1770,12 @@ msgstr "Extra informatie"
#. module: crm
#: view:crm.lead:0
msgid "Fund Raising"
-msgstr ""
+msgstr "Fondsenwerving"
#. module: crm
#: view:crm.lead:0
msgid "Edit..."
-msgstr ""
+msgstr "Bewerken…"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead5
@@ -1730,13 +1807,15 @@ msgstr "Lead naar opportuniteit / relatie"
#: help:crm.lead,partner_id:0
msgid "Linked partner (optional). Usually created when converting the lead."
msgstr ""
+"Gekoppelde relatie (optioneel). Doorgaans gemaakt bij het omzetten van de "
+"lead."
#. module: crm
#: field:crm.lead,payment_mode:0
#: view:crm.payment.mode:0
#: model:ir.actions.act_window,name:crm.action_crm_payment_mode
msgid "Payment Mode"
-msgstr ""
+msgstr "Betalingswijze"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2opportunity_partner_mass
@@ -1746,19 +1825,19 @@ msgstr "Vele leads naar opportuniteit / relatie"
#. module: crm
#: view:sale.config.settings:0
msgid "On Mail Server"
-msgstr ""
+msgstr "Op mailserver"
#. module: crm
#: model:ir.actions.act_window,name:crm.open_board_statistical_dash
#: model:ir.ui.menu,name:crm.menu_board_statistics_dash
msgid "CRM"
-msgstr ""
+msgstr "CRM"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_segmentation_tree-act
#: model:ir.ui.menu,name:crm.menu_crm_segmentation-act
msgid "Contacts Segmentation"
-msgstr ""
+msgstr "Contactpersoonsegmentering"
#. module: crm
#: model:process.node,note:crm.process_node_meeting0
@@ -1773,7 +1852,7 @@ msgstr "Televerkoop"
#. module: crm
#: view:crm.lead:0
msgid "Leads Assigned to Me or My Team(s)"
-msgstr ""
+msgstr "Leads voor mij of mijn team(s)"
#. module: crm
#: model:ir.model,name:crm.model_crm_segmentation_line
@@ -1817,7 +1896,7 @@ msgstr "Lead / klant"
#. module: crm
#: model:crm.case.section,name:crm.crm_case_section_2
msgid "Support Department"
-msgstr ""
+msgstr "Supportafdeling"
#. module: crm
#: view:crm.lead.report:0
@@ -1881,13 +1960,13 @@ msgstr ""
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor5
msgid "Design"
-msgstr ""
+msgstr "Ontwerp"
#. module: crm
#: selection:crm.lead2opportunity.partner,name:0
#: selection:crm.lead2opportunity.partner.mass,name:0
msgid "Merge with existing opportunities"
-msgstr ""
+msgstr "Samenvoegen met bestaande opportuniteiten"
#. module: crm
#: view:crm.phonecall.report:0
@@ -1912,6 +1991,8 @@ msgid ""
"The name of the future partner company that will be created while converting "
"the lead into opportunity"
msgstr ""
+"De naam van de toekomstige relatie die zal worden gemaakt als van de lead "
+"een opportuniteit wordt gemaakt."
#. module: crm
#: field:crm.opportunity2phonecall,note:0
@@ -1945,7 +2026,7 @@ msgstr "Openstaande opportuniteiten"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead2
msgid "Email Campaign - Services"
-msgstr ""
+msgstr "E-mailcampagne - Diensten"
#. module: crm
#: selection:crm.case.stage,state:0
@@ -2018,7 +2099,7 @@ msgstr ""
#: selection:crm.lead2opportunity.partner.mass,action:0
#: selection:crm.partner.binding,action:0
msgid "Create a new customer"
-msgstr ""
+msgstr "Een nieuwe klant maken"
#. module: crm
#: field:crm.lead.report,deadline_day:0
@@ -2028,7 +2109,7 @@ msgstr "Verw. sluiting"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor2
msgid "Software"
-msgstr ""
+msgstr "Software"
#. module: crm
#: field:crm.case.section,change_responsible:0
@@ -2063,12 +2144,12 @@ msgstr "Plaats"
#. module: crm
#: selection:crm.case.stage,type:0
msgid "Both"
-msgstr ""
+msgstr "Beide"
#. module: crm
#: view:crm.phonecall:0
msgid "Call Done"
-msgstr ""
+msgstr "Gesprek uitgevoerd"
#. module: crm
#: view:crm.phonecall:0
@@ -2079,12 +2160,12 @@ msgstr "Verantwoordelijke"
#. module: crm
#: model:crm.case.section,name:crm.crm_case_section_3
msgid "Direct Marketing"
-msgstr ""
+msgstr "Direct Marketing"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor1
msgid "Product"
-msgstr ""
+msgstr "Product"
#. module: crm
#: field:crm.lead.report,creation_year:0
@@ -2094,7 +2175,7 @@ msgstr "Creatiejaar"
#. module: crm
#: view:crm.lead2opportunity.partner.mass:0
msgid "Conversion Options"
-msgstr ""
+msgstr "Conversieopties"
#. module: crm
#: view:crm.case.section:0
@@ -2106,7 +2187,7 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Address"
-msgstr ""
+msgstr "Adres"
#. module: crm
#: help:crm.case.section,alias_id:0
@@ -2114,6 +2195,8 @@ msgid ""
"The email address associated with this team. New emails received will "
"automatically create new leads assigned to the team."
msgstr ""
+"Het e-mailadres van het team. Nieuwe e-mails worden automatisch als lead "
+"gemaakt en toegekend aan dit team."
#. module: crm
#: view:crm.lead:0
@@ -2172,7 +2255,7 @@ msgstr "Verder verwerken"
#: selection:crm.lead2opportunity.partner.mass,name:0
#: model:ir.actions.act_window,name:crm.action_crm_lead2opportunity_partner
msgid "Convert to opportunity"
-msgstr ""
+msgstr "Omzetten naar opportuniteit"
#. module: crm
#: field:crm.opportunity2phonecall,user_id:0
@@ -2214,6 +2297,8 @@ msgid ""
"This stage is not visible, for example in status bar or kanban view, when "
"there are no records in that stage to display."
msgstr ""
+"Deze fase is niet zichtbaar, vb. in statusbalk of kanbanweergave, als er "
+"zich geen records in deze fase bevinden."
#. module: crm
#: field:crm.lead.report,nbr:0
@@ -2229,12 +2314,12 @@ msgstr "Verkoopteam aan wie de zaak toebehoort"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead6
msgid "Banner Ads"
-msgstr ""
+msgstr "Kopadvertenties"
#. module: crm
#: field:crm.merge.opportunity,opportunity_ids:0
msgid "Leads/Opportunities"
-msgstr ""
+msgstr "Leads/opportuniteiten"
#. module: crm
#: field:crm.lead,fax:0
@@ -2279,17 +2364,17 @@ msgstr "Objectnaam"
#. module: crm
#: view:crm.phonecall:0
msgid "Phone Calls Assigned to Me or My Team(s)"
-msgstr ""
+msgstr "Telefoongesprekken voor mij of mijn team(s)"
#. module: crm
#: view:crm.lead:0
msgid "Reset"
-msgstr ""
+msgstr "Herstellen"
#. module: crm
#: view:sale.config.settings:0
msgid "After-Sale Services"
-msgstr ""
+msgstr "Klantenservice"
#. module: crm
#: field:crm.case.section,message_ids:0
@@ -2344,7 +2429,7 @@ msgstr ""
#. module: crm
#: field:crm.case.stage,state:0
msgid "Related Status"
-msgstr ""
+msgstr "Gekoppelde status"
#. module: crm
#: field:crm.phonecall,name:0
@@ -2365,7 +2450,7 @@ msgstr "Een gesprek plannen/noteren"
#. module: crm
#: view:crm.merge.opportunity:0
msgid "Select Leads/Opportunities"
-msgstr ""
+msgstr "Leads/opportuniteiten kiezen"
#. module: crm
#: selection:crm.phonecall,state:0
@@ -2390,7 +2475,7 @@ msgstr "Bevestigen"
#. module: crm
#: view:crm.lead:0
msgid "Unread messages"
-msgstr ""
+msgstr "Ongelezen berichten"
#. module: crm
#: field:crm.phonecall.report,section_id:0
@@ -2407,7 +2492,7 @@ msgstr "Optionele expressie"
#: field:crm.lead,message_follower_ids:0
#: field:crm.phonecall,message_follower_ids:0
msgid "Followers"
-msgstr ""
+msgstr "Volgers"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_case_category_act_leads_all
@@ -2430,7 +2515,7 @@ msgstr ""
#. module: crm
#: field:sale.config.settings,fetchmail_lead:0
msgid "Create leads from incoming mails"
-msgstr ""
+msgstr "Leads maken van binnenkomende mails"
#. module: crm
#: view:crm.lead:0
@@ -2481,7 +2566,7 @@ msgstr "Opportuniteiten maken van leads"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead3
msgid "Email Campaign - Products"
-msgstr ""
+msgstr "E-mailcampagne - Producten"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_case_categ_phone_incoming0
@@ -2509,7 +2594,7 @@ msgstr "Allereerste contact met een nieuwe prospect"
#. module: crm
#: view:res.partner:0
msgid "Calls"
-msgstr ""
+msgstr "Gesprekken"
#. module: crm
#: field:crm.case.stage,on_change:0
@@ -2519,7 +2604,7 @@ msgstr "Kans automatisch wijzigen"
#. module: crm
#: view:crm.phonecall.report:0
msgid "My Phone Calls"
-msgstr ""
+msgstr "Mijn telefoongesprekken"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead3
@@ -2530,7 +2615,7 @@ msgstr "Kwalificatie"
#: field:crm.lead2opportunity.partner,name:0
#: field:crm.lead2opportunity.partner.mass,name:0
msgid "Conversion Action"
-msgstr ""
+msgstr "Conversieactie"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_lead_categ_action
@@ -2606,7 +2691,7 @@ msgstr "Verw. sluitingsjaar"
#. module: crm
#: model:ir.actions.client,name:crm.action_client_crm_menu
msgid "Open Sale Menu"
-msgstr ""
+msgstr "Het verkoopmenu openen"
#. module: crm
#: field:crm.lead,date_open:0
@@ -2629,12 +2714,12 @@ msgstr "Een gesprek plannen/noteren"
#. module: crm
#: field:crm.lead,planned_cost:0
msgid "Planned Costs"
-msgstr ""
+msgstr "Geplande kosten"
#. module: crm
#: help:crm.lead,date_deadline:0
msgid "Estimate of the date on which the opportunity will be won."
-msgstr ""
+msgstr "Verwachte datum waarop de opportuniteit kan worden gerealiseerd."
#. module: crm
#: help:crm.lead,email_cc:0
@@ -2698,7 +2783,7 @@ msgstr "Straat 2"
#. module: crm
#: field:sale.config.settings,module_crm_helpdesk:0
msgid "Manage Helpdesk and Support"
-msgstr ""
+msgstr "Helpdesk en ondersteuning"
#. module: crm
#: field:crm.lead.report,delay_open:0
@@ -2785,7 +2870,7 @@ msgstr "Gesprek noteren"
#. module: crm
#: help:sale.config.settings,group_fund_raising:0
msgid "Allows you to trace and manage your activities for fund raising."
-msgstr ""
+msgstr "Hiermee kunt u activiteiten voor fondsenwerving beheren"
#. module: crm
#: field:crm.meeting,phonecall_id:0
@@ -2797,6 +2882,8 @@ msgstr "Telefoongesprek"
#: view:crm.phonecall.report:0
msgid "Phone calls that are assigned to one of the sale teams I manage"
msgstr ""
+"Telefoongesprekken die zijn toegewezen aan een van de verkoopteams onder "
+"mijn beheer"
#. module: crm
#: view:crm.lead:0
@@ -2806,7 +2893,7 @@ msgstr "Creatiedatum"
#. module: crm
#: view:crm.lead:0
msgid "at"
-msgstr ""
+msgstr "bij"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead1
@@ -2875,7 +2962,7 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Internal Notes"
-msgstr ""
+msgstr "Interne notities"
#. module: crm
#: view:crm.lead:0
@@ -2895,7 +2982,7 @@ msgstr "Straat"
#. module: crm
#: field:crm.lead,referred:0
msgid "Referred By"
-msgstr ""
+msgstr "Doorverwezen via"
#. module: crm
#: view:crm.phonecall:0
@@ -2940,6 +3027,7 @@ msgstr "Verloren"
#, python-format
msgid "Closed/Cancelled leads cannot be converted into opportunities."
msgstr ""
+"Gesloten/geannuleerde leads kunnen niet in een opportuniteit worden omgezet"
#. module: crm
#: view:crm.lead:0
@@ -4199,3 +4287,6 @@ msgstr ""
#~ msgid "Recurrent"
#~ msgstr "Recurrent"
+
+#~ msgid "Conditions on Case Fields"
+#~ msgstr "Voorwaardevelden"
diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py
index 323d6e4c3d6..d12facd66a0 100644
--- a/addons/crm/report/crm_lead_report.py
+++ b/addons/crm/report/crm_lead_report.py
@@ -145,6 +145,5 @@ class crm_lead_report(osv.osv):
WHERE c.active = 'true'
)""")
-crm_lead_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/report/crm_lead_report_view.xml b/addons/crm/report/crm_lead_report_view.xml
index 0e5df8837f1..759063b3c1d 100644
--- a/addons/crm/report/crm_lead_report_view.xml
+++ b/addons/crm/report/crm_lead_report_view.xml
@@ -19,7 +19,8 @@
-
+
@@ -77,10 +78,11 @@
help="Leads/Opportunities that are assigned to one of the sale teams I manage"/>
-
+
-
+
@@ -134,7 +136,8 @@
-
+
diff --git a/addons/crm/report/crm_phonecall_report.py b/addons/crm/report/crm_phonecall_report.py
index c4b014bb86f..77195097965 100644
--- a/addons/crm/report/crm_phonecall_report.py
+++ b/addons/crm/report/crm_phonecall_report.py
@@ -98,6 +98,5 @@ class crm_phonecall_report(osv.osv):
from
crm_phonecall c
)""")
-crm_phonecall_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/report/crm_phonecall_report_view.xml b/addons/crm/report/crm_phonecall_report_view.xml
index 1f1a4f91046..070d574e0cd 100644
--- a/addons/crm/report/crm_phonecall_report_view.xml
+++ b/addons/crm/report/crm_phonecall_report_view.xml
@@ -11,7 +11,8 @@
-
+
@@ -59,10 +60,11 @@
help="Phone calls that are assigned to one of the sale teams I manage"/>
-
+
-
+
diff --git a/addons/crm/res_config.py b/addons/crm/res_config.py
index 229ad0189ff..ea37c24fe06 100644
--- a/addons/crm/res_config.py
+++ b/addons/crm/res_config.py
@@ -2,7 +2,7 @@
##############################################################################
#
# OpenERP, Open Source Business Applications
-# Copyright (C) 2004-2012 OpenERP S.A. ().
+# Copyright (C) 2004-TODAY OpenERP S.A. ().
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -21,24 +21,51 @@
from openerp.osv import fields, osv
-class crm_configuration(osv.osv_memory):
+
+class crm_configuration(osv.TransientModel):
_name = 'sale.config.settings'
_inherit = ['sale.config.settings', 'fetchmail.config.settings']
+ def set_group_multi_salesteams(self, cr, uid, ids, context=None):
+ """ This method is automatically called by res_config as it begins
+ with set. It is used to implement the 'one group or another'
+ behavior. We have to perform some group manipulation by hand
+ because in res_config.execute(), set_* methods are called
+ after group_*; therefore writing on an hidden res_config file
+ could not work.
+ If group_multi_salesteams is checked: remove group_mono_salesteams
+ from group_user, remove the users. Otherwise, just add
+ group_mono_salesteams in group_user.
+ The inverse logic about group_multi_salesteams is managed by the
+ normal behavior of 'group_multi_salesteams' field.
+ """
+ def ref(xml_id):
+ mod, xml = xml_id.split('.', 1)
+ return self.pool['ir.model.data'].get_object(cr, uid, mod, xml, context)
+
+ for obj in self.browse(cr, uid, ids, context=context):
+ config_group = ref('base.group_mono_salesteams')
+ base_group = ref('base.group_user')
+ if obj.group_multi_salesteams:
+ base_group.write({'implied_ids': [(3, config_group.id)]})
+ config_group.write({'users': [(3, u.id) for u in base_group.users]})
+ else:
+ base_group.write({'implied_ids': [(4, config_group.id)]})
+ return True
+
_columns = {
- 'fetchmail_lead': fields.boolean("Create leads from incoming mails",
- fetchmail_model='crm.lead', fetchmail_name='Incoming Leads',
- help="""Allows you to configure your incoming mail server, and create leads from incoming emails."""),
'group_fund_raising': fields.boolean("Manage Fund Raising",
implied_group='crm.group_fund_raising',
help="""Allows you to trace and manage your activities for fund raising."""),
- 'module_crm_claim':fields.boolean("Manage Customer Claims",
+ 'module_crm_claim': fields.boolean("Manage Customer Claims",
help="""Allows you to track your customers/suppliers claims and grievances.
This installs the module crm_claim."""),
- 'module_crm_helpdesk':fields.boolean("Manage Helpdesk and Support",
- help="""Allows you to communicate with Customer, process Customer query, and provide better help and support. This installs the module crm_helpdesk."""),
-
-
+ 'module_crm_helpdesk': fields.boolean("Manage Helpdesk and Support",
+ help="""Allows you to communicate with Customer, process Customer query, and provide better help and support. This installs the module crm_helpdesk."""),
+ 'group_multi_salesteams': fields.boolean("Organize Sales activities into multiple Sales Teams",
+ implied_group='base.group_multi_salesteams',
+ help="""Allows you to use Sales Teams to manage your leads and opportunities."""),
}
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/res_config_view.xml b/addons/crm/res_config_view.xml
index 9534c8620ee..547ce1c2ae6 100644
--- a/addons/crm/res_config_view.xml
+++ b/addons/crm/res_config_view.xml
@@ -22,20 +22,15 @@
-
-
+
-
+
-
-
-
-
-
+
+
-
+
diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py
index 2fdccda2e06..f25b1303c02 100644
--- a/addons/crm/res_partner.py
+++ b/addons/crm/res_partner.py
@@ -92,7 +92,6 @@ class res_partner(osv.osv):
}, context=context)
opportunity_ids[partner_id] = opportunity_id
return opportunity_ids
-res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/res_partner_view.xml b/addons/crm/res_partner_view.xml
index 00a071fa954..dd6c50dbaba 100644
--- a/addons/crm/res_partner_view.xml
+++ b/addons/crm/res_partner_view.xml
@@ -10,7 +10,7 @@
-
+
@@ -30,8 +30,11 @@
crm.leadkanban,tree,form,graph,calendar[('type','=','opportunity')]
- {'search_default_partner_id': active_id,
- 'stage_type': 'opportunity', 'default_type': 'opportunity'}
+ {
+ 'search_default_partner_id': active_id,
+ 'stage_type': 'opportunity',
+ 'default_type': 'opportunity'
+ }
diff --git a/addons/crm/security/crm_security.xml b/addons/crm/security/crm_security.xml
index 2c34252209c..34137dc0fac 100644
--- a/addons/crm/security/crm_security.xml
+++ b/addons/crm/security/crm_security.xml
@@ -22,6 +22,19 @@
+
+
+ Do Not Use Sales Teams
+
+
+
+
+
+
+
+ Manage Sales Teams
+
+ Manage Fund Raising
diff --git a/addons/crm/security/ir.model.access.csv b/addons/crm/security/ir.model.access.csv
index 74394d3c5ce..b09c201df2b 100644
--- a/addons/crm/security/ir.model.access.csv
+++ b/addons/crm/security/ir.model.access.csv
@@ -11,9 +11,7 @@ access_crm_lead_manager,crm.lead.manager,model_crm_lead,base.group_sale_manager,
access_crm_phonecall_manager,crm.phonecall.manager,model_crm_phonecall,base.group_sale_manager,1,1,1,1
access_crm_case_categ,crm.case.categ,model_crm_case_categ,base.group_user,1,0,0,0
access_crm_lead,crm.lead,model_crm_lead,base.group_sale_salesman,1,1,1,0
-access_crm_lead_all,crm.lead.all,model_crm_lead,base.group_user,1,0,0,0
access_crm_phonecall,crm.phonecall,model_crm_phonecall,base.group_sale_salesman,1,1,1,0
-access_crm_phonecall_all,crm.phonecall.all,model_crm_phonecall,base.group_user,1,0,0,0
access_crm_case_section_user,crm.case.section.user,model_crm_case_section,base.group_sale_salesman,1,1,1,0
access_crm_case_section_manager,crm.case.section.manager,model_crm_case_section,base.group_sale_manager,1,1,1,1
access_crm_case_stage,crm.case.stage,model_crm_case_stage,,1,0,0,0
@@ -37,3 +35,5 @@ access_crm_lead_partner_manager,crm.lead.partner.manager,model_crm_lead,base.gro
access_crm_phonecall_partner_manager,crm.phonecall.partner.manager,model_crm_phonecall,base.group_partner_manager,1,1,1,1
access_crm_payment_mode_user,crm.payment.mode,model_crm_payment_mode,base.group_sale_salesman,1,0,0,0
access_crm_payment_mode,crm.payment.mode,model_crm_payment_mode,base.group_sale_manager,1,1,1,1
+access_base_partner_merge_line_manager,base_partner_merge_line.manager,model_base_partner_merge_line,base.group_system,1,1,1,1
+access_base_partner_merge_manager,base_partner_merge.manager,model_base_partner_merge_automatic_wizard,base.group_system,1,1,1,1
diff --git a/addons/crm/static/src/css/crm.css b/addons/crm/static/src/css/crm.css
new file mode 100644
index 00000000000..3ad3840a4e1
--- /dev/null
+++ b/addons/crm/static/src/css/crm.css
@@ -0,0 +1,42 @@
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams {
+ width: 345px;
+}
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_avatars {
+ text-align: right;
+ margin: -5px 0 -10px 0;
+}
+
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_avatars img {
+ width: 30px;
+ height: 30px;
+ padding-left: 0px;
+ margin-top: 3px;
+ -moz-border-radius: 2px;
+ -webkit-border-radius: 2px;
+ border-radius: 2px;
+ -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
+ -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
+ -box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
+}
+
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_items_list {
+ margin: 10px 0;
+}
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_items_list a {
+ width: 110px;
+ display: inline-block;
+}
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_items_list a:hover {
+ text-decoration: underline !important;
+}
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_center {
+ text-align: center;
+ margin: 3px 0;
+}
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_center .oe_sum {
+ margin: 0;
+ font-size: 40px;
+}
+.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_center .oe_subsum {
+ font-size: 10px;
+}
diff --git a/addons/crm/static/src/js/crm.js b/addons/crm/static/src/js/crm.js
new file mode 100644
index 00000000000..e027313d6dc
--- /dev/null
+++ b/addons/crm/static/src/js/crm.js
@@ -0,0 +1,11 @@
+openerp.crm = function(openerp) {
+ openerp.web_kanban.KanbanRecord.include({
+ on_card_clicked: function() {
+ if (this.view.dataset.model === 'crm.case.section') {
+ this.$('.oe_kanban_crm_salesteams_list a').first().click();
+ } else {
+ this._super.apply(this, arguments);
+ }
+ },
+ });
+};
diff --git a/addons/crm/test/process/cancel_lead.yml b/addons/crm/test/crm_lead_cancel.yml
similarity index 100%
rename from addons/crm/test/process/cancel_lead.yml
rename to addons/crm/test/crm_lead_cancel.yml
diff --git a/addons/crm/test/ui/duplicate_lead.yml b/addons/crm/test/crm_lead_copy.yml
similarity index 100%
rename from addons/crm/test/ui/duplicate_lead.yml
rename to addons/crm/test/crm_lead_copy.yml
diff --git a/addons/crm/test/process/merge_opportunity.yml b/addons/crm/test/crm_lead_merge.yml
similarity index 91%
rename from addons/crm/test/process/merge_opportunity.yml
rename to addons/crm/test/crm_lead_merge.yml
index c50af5214e6..b14f9272df9 100644
--- a/addons/crm/test/process/merge_opportunity.yml
+++ b/addons/crm/test/crm_lead_merge.yml
@@ -37,20 +37,19 @@
I check for the resulting merged opp (based on name and partner).
-
!python {model: crm.lead}: |
- merge_id = self.search(cr, uid, [('name', '=', 'Test lead 1'), ('partner_id','=', ref("base.res_partner_1"))])
+ merge_id = self.search(cr, uid, [('name', '=', 'Test opportunity 1'), ('partner_id','=', ref("base.res_partner_5"))])
assert merge_id, 'Fail to create merge opportunity wizard'
merge_result = self.browse(cr, uid, merge_id)[0]
- assert merge_result.partner_id.id == ref("base.res_partner_1"), 'Partner mismatch: when merging leads/opps with different m2o values, the first not null value prevails (the other are dropped)'
- assert merge_result.description == 'This is the description of the test lead 1.\n\nThis is the description of the test lead 2.\n\nThis is the description of the test opp 1.', 'Description mismatch: when merging leads/opps with different text values, these values should get concatenated and separated with line returns'
+ assert merge_result.description == 'This is the description of the test opp 1.\n\nThis is the description of the test lead 1.\n\nThis is the description of the test lead 2.', 'Description mismatch: when merging leads/opps with different text values, these values should get concatenated and separated with line returns'
assert merge_result.type == 'opportunity', 'Type mismatch: when at least one opp in involved in the merge, the result should be a new opp (instead of %s)' % merge_result.type
-
The other (tailing) leads/opps shouldn't exist anymore.
-
!python {model: crm.lead}: |
- tailing_lead = self.search(cr, uid, [('id', '=', ref('test_crm_lead_02'))])
+ tailing_lead = self.search(cr, uid, [('id', '=', ref('test_crm_lead_01'))])
assert not tailing_lead, 'This tailing lead (id %s) should not exist anymore' % ref('test_crm_lead_02')
- tailing_opp = self.search(cr, uid, [('id', '=', ref('test_crm_opp_01'))])
+ tailing_opp = self.search(cr, uid, [('id', '=', ref('test_crm_lead_02'))])
assert not tailing_opp, 'This tailing opp (id %s) should not exist anymore' % ref('test_crm_opp_01')
-
I want to test leads merge. Start by creating two leads (with the same partner).
diff --git a/addons/crm/test/process/communication_with_customer.yml b/addons/crm/test/crm_lead_message.yml
similarity index 93%
rename from addons/crm/test/process/communication_with_customer.yml
rename to addons/crm/test/crm_lead_message.yml
index 221a4ab634f..0f7d4655398 100644
--- a/addons/crm/test/process/communication_with_customer.yml
+++ b/addons/crm/test/crm_lead_message.yml
@@ -4,8 +4,7 @@
Mail script will fetch his request from mail server. Then I process that mail after read EML file.
-
!python {model: mail.thread}: |
- from openerp import addons
- request_file = open(addons.get_module_resource('crm','test', 'customer_request.eml'),'rb')
+ request_file = open(openerp.modules.module.get_module_resource('crm','test', 'customer_request.eml'),'rb')
request_message = request_file.read()
self.message_process(cr, uid, 'crm.lead', request_message)
-
diff --git a/addons/crm/test/ui/crm_demo.yml b/addons/crm/test/crm_lead_onchange.yml
similarity index 100%
rename from addons/crm/test/ui/crm_demo.yml
rename to addons/crm/test/crm_lead_onchange.yml
diff --git a/addons/crm/test/ui/delete_lead.yml b/addons/crm/test/crm_lead_unlink.yml
similarity index 100%
rename from addons/crm/test/ui/delete_lead.yml
rename to addons/crm/test/crm_lead_unlink.yml
diff --git a/addons/crm/test/process/lead2opportunity2win.yml b/addons/crm/test/lead2opportunity2win.yml
similarity index 100%
rename from addons/crm/test/process/lead2opportunity2win.yml
rename to addons/crm/test/lead2opportunity2win.yml
diff --git a/addons/crm/test/process/lead2opportunity_assign_salesmen.yml b/addons/crm/test/lead2opportunity_assign_salesmen.yml
similarity index 100%
rename from addons/crm/test/process/lead2opportunity_assign_salesmen.yml
rename to addons/crm/test/lead2opportunity_assign_salesmen.yml
diff --git a/addons/crm/test/process/phonecalls.yml b/addons/crm/test/phonecalls.yml
similarity index 100%
rename from addons/crm/test/process/phonecalls.yml
rename to addons/crm/test/phonecalls.yml
diff --git a/addons/crm/test/process/segmentation.yml b/addons/crm/test/segmentation.yml
similarity index 100%
rename from addons/crm/test/process/segmentation.yml
rename to addons/crm/test/segmentation.yml
diff --git a/addons/crm/validate_email.py b/addons/crm/validate_email.py
new file mode 100644
index 00000000000..38de5743fca
--- /dev/null
+++ b/addons/crm/validate_email.py
@@ -0,0 +1,123 @@
+# RFC 2822 - style email validation for Python
+# (c) 2012 Syrus Akbary
+# Extended from (c) 2011 Noel Bush
+# for support of mx and user check
+# This code is made available to you under the GNU LGPL v3.
+#
+# This module provides a single method, valid_email_address(),
+# which returns True or False to indicate whether a given address
+# is valid according to the 'addr-spec' part of the specification
+# given in RFC 2822. Ideally, we would like to find this
+# in some other library, already thoroughly tested and well-
+# maintained. The standard Python library email.utils
+# contains a parse_addr() function, but it is not sufficient
+# to detect many malformed addresses.
+#
+# This implementation aims to be faithful to the RFC, with the
+# exception of a circular definition (see comments below), and
+# with the omission of the pattern components marked as "obsolete".
+
+import re
+import smtplib
+import socket
+
+try:
+ import DNS
+ ServerError = DNS.ServerError
+except:
+ DNS = None
+ class ServerError(Exception): pass
+# All we are really doing is comparing the input string to one
+# gigantic regular expression. But building that regexp, and
+# ensuring its correctness, is made much easier by assembling it
+# from the "tokens" defined by the RFC. Each of these tokens is
+# tested in the accompanying unit test file.
+#
+# The section of RFC 2822 from which each pattern component is
+# derived is given in an accompanying comment.
+#
+# (To make things simple, every string below is given as 'raw',
+# even when it's not strictly necessary. This way we don't forget
+# when it is necessary.)
+#
+WSP = r'[ \t]' # see 2.2.2. Structured Header Field Bodies
+CRLF = r'(?:\r\n)' # see 2.2.3. Long Header Fields
+NO_WS_CTL = r'\x01-\x08\x0b\x0c\x0f-\x1f\x7f' # see 3.2.1. Primitive Tokens
+QUOTED_PAIR = r'(?:\\.)' # see 3.2.2. Quoted characters
+FWS = r'(?:(?:' + WSP + r'*' + CRLF + r')?' + \
+ WSP + r'+)' # see 3.2.3. Folding white space and comments
+CTEXT = r'[' + NO_WS_CTL + \
+ r'\x21-\x27\x2a-\x5b\x5d-\x7e]' # see 3.2.3
+CCONTENT = r'(?:' + CTEXT + r'|' + \
+ QUOTED_PAIR + r')' # see 3.2.3 (NB: The RFC includes COMMENT here
+ # as well, but that would be circular.)
+COMMENT = r'\((?:' + FWS + r'?' + CCONTENT + \
+ r')*' + FWS + r'?\)' # see 3.2.3
+CFWS = r'(?:' + FWS + r'?' + COMMENT + ')*(?:' + \
+ FWS + '?' + COMMENT + '|' + FWS + ')' # see 3.2.3
+ATEXT = r'[\w!#$%&\'\*\+\-/=\?\^`\{\|\}~]' # see 3.2.4. Atom
+ATOM = CFWS + r'?' + ATEXT + r'+' + CFWS + r'?' # see 3.2.4
+DOT_ATOM_TEXT = ATEXT + r'+(?:\.' + ATEXT + r'+)*' # see 3.2.4
+DOT_ATOM = CFWS + r'?' + DOT_ATOM_TEXT + CFWS + r'?' # see 3.2.4
+QTEXT = r'[' + NO_WS_CTL + \
+ r'\x21\x23-\x5b\x5d-\x7e]' # see 3.2.5. Quoted strings
+QCONTENT = r'(?:' + QTEXT + r'|' + \
+ QUOTED_PAIR + r')' # see 3.2.5
+QUOTED_STRING = CFWS + r'?' + r'"(?:' + FWS + \
+ r'?' + QCONTENT + r')*' + FWS + \
+ r'?' + r'"' + CFWS + r'?'
+LOCAL_PART = r'(?:' + DOT_ATOM + r'|' + \
+ QUOTED_STRING + r')' # see 3.4.1. Addr-spec specification
+DTEXT = r'[' + NO_WS_CTL + r'\x21-\x5a\x5e-\x7e]' # see 3.4.1
+DCONTENT = r'(?:' + DTEXT + r'|' + \
+ QUOTED_PAIR + r')' # see 3.4.1
+DOMAIN_LITERAL = CFWS + r'?' + r'\[' + \
+ r'(?:' + FWS + r'?' + DCONTENT + \
+ r')*' + FWS + r'?\]' + CFWS + r'?' # see 3.4.1
+DOMAIN = r'(?:' + DOT_ATOM + r'|' + \
+ DOMAIN_LITERAL + r')' # see 3.4.1
+ADDR_SPEC = LOCAL_PART + r'@' + DOMAIN # see 3.4.1
+
+# A valid address will match exactly the 3.4.1 addr-spec.
+VALID_ADDRESS_REGEXP = '^' + ADDR_SPEC + '$'
+
+def validate_email(email, check_mx=False,verify=False):
+
+ """Indicate whether the given string is a valid email address
+ according to the 'addr-spec' portion of RFC 2822 (see section
+ 3.4.1). Parts of the spec that are marked obsolete are *not*
+ included in this test, and certain arcane constructions that
+ depend on circular definitions in the spec may not pass, but in
+ general this should correctly identify any email address likely
+ to be in use as of 2011."""
+ try:
+ assert re.match(VALID_ADDRESS_REGEXP, email) is not None
+ check_mx |= verify
+ if check_mx:
+ if not DNS: raise Exception('For check the mx records or check if the email exists you must have installed pyDNS python package')
+ DNS.DiscoverNameServers()
+ hostname = email[email.find('@')+1:]
+ mx_hosts = DNS.mxlookup(hostname)
+ for mx in mx_hosts:
+ try:
+ smtp = smtplib.SMTP()
+ smtp.connect(mx[1])
+ if not verify: return True
+ status, _ = smtp.helo()
+ if status != 250: continue
+ smtp.mail('')
+ status, _ = smtp.rcpt(email)
+ if status != 250: return False
+ break
+ except smtplib.SMTPServerDisconnected: #Server not permits verify user
+ break
+ except smtplib.SMTPConnectError:
+ continue
+ except (AssertionError, ServerError):
+ return False
+ return True
+
+# import sys
+
+# sys.modules[__name__],sys.modules['validate_email_module'] = validate_email,sys.modules[__name__]
+# from validate_email_module import *
diff --git a/addons/crm/wizard/crm_lead_to_opportunity_view.xml b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
index 00686de1c8e..4093df910d0 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
@@ -22,7 +22,7 @@
-
+
@@ -68,13 +68,13 @@
-
+
-
+
diff --git a/addons/crm/wizard/crm_merge_opportunities_view.xml b/addons/crm/wizard/crm_merge_opportunities_view.xml
index f68abeb8a52..919d83cb9a7 100644
--- a/addons/crm/wizard/crm_merge_opportunities_view.xml
+++ b/addons/crm/wizard/crm_merge_opportunities_view.xml
@@ -19,7 +19,7 @@
-
+
diff --git a/addons/crm/wizard/crm_phonecall_to_meeting.py b/addons/crm/wizard/crm_phonecall_to_meeting.py
index 4e21e01b834..105ab113a71 100644
--- a/addons/crm/wizard/crm_phonecall_to_meeting.py
+++ b/addons/crm/wizard/crm_phonecall_to_meeting.py
@@ -59,6 +59,5 @@ class crm_phonecall2meeting(osv.osv_memory):
}
return res
-crm_phonecall2meeting()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall.py b/addons/crm/wizard/crm_phonecall_to_phonecall.py
index d0bcd12dbb7..7e1da41a29f 100644
--- a/addons/crm/wizard/crm_phonecall_to_phonecall.py
+++ b/addons/crm/wizard/crm_phonecall_to_phonecall.py
@@ -96,6 +96,5 @@ class crm_phonecall2phonecall(osv.osv_memory):
res.update({'partner_id': phonecall.partner_id and phonecall.partner_id.id or False})
return res
-crm_phonecall2phonecall()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml b/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml
index e2d25218749..812468b17e6 100644
--- a/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml
+++ b/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml
@@ -15,7 +15,7 @@
-
+