[MERGE]with lp:~openerp-dev/openobject-addons/trunk-dev-addons1

bzr revid: jam@tinyerp.com-20110118085749-hk6e4iz7c1ab16n3
This commit is contained in:
jam-openerp
2011-01-18 14:27:49 +05:30
4426 changed files with 339654 additions and 216419 deletions
+33 -9
View File
@@ -419,8 +419,18 @@ class account_account(osv.osv):
ids = child_ids
return True
def _check_type(self, cr, uid, ids, context=None):
if context is None:
context = {}
accounts = self.browse(cr, uid, ids, context=context)
for account in accounts:
if account.child_id and account.type != 'view':
return False
return True
_constraints = [
(_check_recursion, 'Error ! You can not create recursive accounts.', ['parent_id'])
(_check_recursion, 'Error ! You can not create recursive accounts.', ['parent_id']),
(_check_type, 'Configuration Error! \nYou cannot define children to an account with internal type different of "View"! ', ['type']),
]
_sql_constraints = [
('code_company_uniq', 'unique (code,company_id)', 'The code of the account must be unique per company !')
@@ -526,10 +536,14 @@ class account_account(osv.osv):
if context is None:
context = {}
# Dont allow changing the company_id when account_move_line already exist
if 'company_id' in vals:
move_lines = self.pool.get('account.move.line').search(cr, uid, [('account_id', 'in', ids)])
if move_lines:
raise osv.except_osv(_('Warning !'), _('You cannot modify Company of account as its related record exist in Entry Lines'))
# Allow the write if the value is the same
for i in [i['company_id'][0] for i in self.read(cr,uid,ids,['company_id'])]:
if vals['company_id']!=i:
raise osv.except_osv(_('Warning !'), _('You cannot modify Company of account as its related record exist in Entry Lines'))
if 'active' in vals and not vals['active']:
self._check_moves(cr, uid, ids, "write", context=context)
if 'type' in vals.keys():
@@ -965,7 +979,7 @@ class account_journal_period(osv.osv):
'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'State', required=True, readonly=True,
help='When journal period is created. The state is \'Draft\'. If a report is printed it comes to \'Printed\' state. When all transactions are done, it comes in \'Done\' state.'),
'fiscalyear_id': fields.related('period_id', 'fiscalyear_id', string='Fiscal Year', type='many2one', relation='account.fiscalyear'),
'company_id': fields.related('journal_id', 'company_id', type='many2one', relation='res.company', string='Company')
'company_id': fields.related('journal_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True)
}
def _check(self, cr, uid, ids, context=None):
@@ -1118,14 +1132,14 @@ class account_move(osv.osv):
'amount': fields.function(_amount_compute, method=True, string='Amount', digits_compute=dp.get_precision('Account'), type='float', fnct_search=_search_amount),
'date': fields.date('Date', required=True, states={'posted':[('readonly',True)]}),
'narration':fields.text('Narration'),
'company_id': fields.related('journal_id','company_id',type='many2one',relation='res.company',string='Company',store=True),
'company_id': fields.related('journal_id','company_id',type='many2one',relation='res.company',string='Company', store=True, readonly=True),
}
_defaults = {
'name': '/',
'state': 'draft',
'period_id': _get_period,
'date': lambda *a: time.strftime('%Y-%m-%d'),
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
def _check_centralisation(self, cursor, user, ids, context=None):
@@ -1612,7 +1626,6 @@ class account_tax_code(osv.osv):
ids = self.search(cr, user, ['|',('name',operator,name),('code',operator,name)] + args, limit=limit, context=context)
return self.name_get(cr, user, ids, context)
def name_get(self, cr, uid, ids, context=None):
if isinstance(ids, (int, long)):
ids = [ids]
@@ -1647,6 +1660,7 @@ class account_tax_code(osv.osv):
(_check_recursion, 'Error ! You can not create recursive accounts.', ['parent_id'])
]
_order = 'code'
account_tax_code()
class account_tax(osv.osv):
@@ -2295,11 +2309,21 @@ class account_account_template(osv.osv):
'nocreate': False,
}
def _check_type(self, cr, uid, ids, context=None):
if context is None:
context = {}
accounts = self.browse(cr, uid, ids, context=context)
for account in accounts:
if account.parent_id and account.parent_id.type != 'view':
return False
return True
_check_recursion = check_cycle
_constraints = [
(_check_recursion, 'Error ! You can not create recursive account templates.', ['parent_id'])
]
(_check_recursion, 'Error ! You can not create recursive account templates.', ['parent_id']),
(_check_type, 'Configuration Error! \nYou cannot define children to an account with internal type different of "View"! ', ['type']),
]
def name_get(self, cr, uid, ids, context=None):
if not ids:
@@ -2512,7 +2536,7 @@ class account_fiscal_position_template(osv.osv):
_description = 'Template for Fiscal Position'
_columns = {
'name': fields.char('Fiscal Position Template', size=64, translate=True, required=True),
'name': fields.char('Fiscal Position Template', size=64, required=True),
'chart_template_id': fields.many2one('account.chart.template', 'Chart Template', required=True),
'account_ids': fields.one2many('account.fiscal.position.account.template', 'position_id', 'Account Mapping'),
'tax_ids': fields.one2many('account.fiscal.position.tax.template', 'position_id', 'Tax Mapping')
-2
View File
@@ -51,7 +51,6 @@ class account_analytic_line(osv.osv):
context = {}
if context.get('from_date',False):
args.append(['date', '>=', context['from_date']])
if context.get('to_date',False):
args.append(['date','<=', context['to_date']])
return super(account_analytic_line, self).search(cr, uid, args, offset, limit,
@@ -125,7 +124,6 @@ class account_analytic_line(osv.osv):
result = round(amount, prec)
if not flag:
result *= -1
return {'value': {
'amount': result,
'general_account_id': a,
+21
View File
@@ -405,6 +405,27 @@ account_bank_statement()
class account_bank_statement_line(osv.osv):
def onchange_partner_id(self, cr, uid, ids, partner_id, context=None):
obj_partner = self.pool.get('res.partner')
if context is None:
context = {}
if not partner_id:
return {}
part = obj_partner.browse(cr, uid, partner_id, context=context)
if not part.supplier and not part.customer:
type = 'general'
elif part.supplier and part.customer:
type = 'general'
else:
if part.supplier == True:
type = 'supplier'
if part.customer == True:
type = 'customer'
res_type = self.onchange_type(cr, uid, ids, partner_id=partner_id, type=type, context=context)
if res_type['value'] and res_type['value'].get('account_id', False):
return {'value': {'type': type, 'account_id': res_type['value']['account_id']}}
return {'value': {'type': type}}
def onchange_type(self, cr, uid, line_id, partner_id, type, context=None):
res = {'value': {}}
obj_partner = self.pool.get('res.partner')
+1 -1
View File
@@ -28,7 +28,7 @@
<field name="charts"/>
<group colspan="4" groups="base.group_extended">
<separator col="4" colspan="4" string="Configure Fiscal Year"/>
<field name="company_id" colspan="4" widget="selection" groups="base.group_multi_company"/>
<field name="company_id" colspan="4" widget="selection"/><!-- we assume that this wizard will be run only by administrators and as this field may cause problem if hidden (because of the default company of the user removed from the selection because already configured), we simply choosed to remove the group "multi company" of it -->
<field name="date_start" on_change="on_change_start_date(date_start)"/>
<field name="date_stop"/>
<field name="period" colspan="4"/>
+1 -2
View File
@@ -310,7 +310,7 @@
<button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
<button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-gtk-media-pause" groups="account.group_account_user"/>
<button name="invoice_open" states="draft,proforma2" string="Validate" icon="gtk-go-forward"/>
<button name="%(account_invoices)d" string="Print Invoice" type="action" icon="gtk-print"/>
<button name="%(account_invoices)d" string="Print Invoice" type="action" icon="gtk-print" states="open,paid,proforma,sale,proforma2"/>
</group>
</group>
</page>
@@ -434,7 +434,6 @@
<field name="context">{'type':'out_invoice', 'journal_type': 'sale'}</field>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="help">With Customer Invoices you can create and manage sales invoices issued to your customers. OpenERP can also generate draft invoices automatically from sales orders or deliveries. You should only confirm them before sending them to your customers.</field>
<field name="groups_id" eval="[(6,0,[ref('account.group_account_manager'),ref('account.group_account_user')])]"/>
</record>
+93 -12
View File
@@ -45,7 +45,11 @@ class account_move_line(osv.osv):
if context.get('company_id', False):
company_clause = " AND " +obj+".company_id = %s" % context.get('company_id', False)
if not context.get('fiscalyear', False):
fiscalyear_ids = fiscalyear_obj.search(cr, uid, [('state', '=', 'draft')])
if context.get('all_fiscalyear', False):
#this option is needed by the aged balance report because otherwise, if we search only the draft ones, an open invoice of a closed fiscalyear won't be displayed
fiscalyear_ids = fiscalyear_obj.search(cr, uid, [])
else:
fiscalyear_ids = fiscalyear_obj.search(cr, uid, [('state', '=', 'draft')])
else:
#for initial balance as well as for normal query, we check only the selected FY because the best practice is to generate the FY opening entries
fiscalyear_ids = [context['fiscalyear']]
@@ -57,7 +61,7 @@ class account_move_line(osv.osv):
if context.get('date_from', False) and context.get('date_to', False):
if initial_bal:
where_move_lines_by_date = " OR " +obj+".move_id IN (SELECT id FROM account_move WHERE date < '" +context['date_from']+"')"
where_move_lines_by_date = " AND " +obj+".move_id IN (SELECT id FROM account_move WHERE date < '" +context['date_from']+"')"
else:
where_move_lines_by_date = " AND " +obj+".move_id IN (SELECT id FROM account_move WHERE date >= '" +context['date_from']+"' AND date <= '"+context['date_to']+"')"
@@ -74,7 +78,7 @@ class account_move_line(osv.osv):
context['periods'] = fiscalperiod_obj.build_ctx_periods(cr, uid, context['period_from'], context['period_to'])
if context.get('periods', False):
if initial_bal:
query = obj+".state <> 'draft' AND "+obj+".period_id IN (SELECT id FROM account_period WHERE fiscalyear_id IN (%s) %s %s)" % (fiscalyear_clause, where_move_state, where_move_lines_by_date)
query = obj+".state <> 'draft' AND "+obj+".period_id IN (SELECT id FROM account_period WHERE fiscalyear_id IN (%s)) %s %s" % (fiscalyear_clause, where_move_state, where_move_lines_by_date)
period_ids = fiscalperiod_obj.search(cr, uid, [('id', 'in', context['periods'])], order='date_start', limit=1)
if period_ids and period_ids[0]:
first_period = fiscalperiod_obj.browse(cr, uid, period_ids[0], context=context)
@@ -87,7 +91,7 @@ class account_move_line(osv.osv):
ids = ','.join([str(x) for x in context['periods']])
query = obj+".state <> 'draft' AND "+obj+".period_id IN (SELECT id FROM account_period WHERE fiscalyear_id IN (%s) AND id IN (%s)) %s %s" % (fiscalyear_clause, ids, where_move_state, where_move_lines_by_date)
else:
query = obj+".state <> 'draft' AND "+obj+".period_id IN (SELECT id FROM account_period WHERE fiscalyear_id IN (%s) %s %s)" % (fiscalyear_clause, where_move_state, where_move_lines_by_date)
query = obj+".state <> 'draft' AND "+obj+".period_id IN (SELECT id FROM account_period WHERE fiscalyear_id IN (%s)) %s %s" % (fiscalyear_clause, where_move_state, where_move_lines_by_date)
if context.get('journal_ids', False):
query += ' AND '+obj+'.journal_id IN (%s)' % ','.join(map(str, context['journal_ids']))
@@ -97,9 +101,59 @@ class account_move_line(osv.osv):
query += ' AND '+obj+'.account_id IN (%s)' % ','.join(map(str, child_ids))
query += company_clause
return query
def _amount_residual(self, cr, uid, ids, field_names, args, context=None):
"""
This function returns the residual amount on a receivable or payable account.move.line.
By default, it returns an amount in the currency of this journal entry (maybe different
of the company currency), but if you pass 'residual_in_company_currency' = True in the
context then the returned amount will be in company currency.
"""
res = {}
if context is None:
context = {}
cur_obj = self.pool.get('res.currency')
for move_line in self.browse(cr, uid, ids, context=context):
res[move_line.id] = {
'amount_residual': 0.0,
'amount_residual_currency': 0.0,
}
if move_line.reconcile_id:
continue
if not move_line.account_id.type in ('payable', 'receivable'):
#this function does not suport to be used on move lines not related to payable or receivable accounts
continue
if move_line.currency_id:
move_line_total = move_line.amount_currency
sign = move_line.amount_currency < 0 and -1 or 1
else:
move_line_total = move_line.debit - move_line.credit
sign = (move_line.debit - move_line.credit) < 0 and -1 or 1
line_total_in_company_currency = move_line.debit - move_line.credit
context_unreconciled = context.copy()
if move_line.reconcile_partial_id:
for payment_line in move_line.reconcile_partial_id.line_partial_ids:
if payment_line.id == move_line.id:
continue
if payment_line.currency_id and move_line.currency_id and payment_line.currency_id.id == move_line.currency_id.id:
move_line_total += payment_line.amount_currency
else:
if move_line.currency_id:
context_unreconciled.update({'date': payment_line.date})
amount_in_foreign_currency = cur_obj.compute(cr, uid, move_line.company_id.currency_id.id, move_line.currency_id.id, (payment_line.debit - payment_line.credit), round=False, context=context_unreconciled)
move_line_total += amount_in_foreign_currency
else:
move_line_total += (payment_line.debit - payment_line.credit)
line_total_in_company_currency += (payment_line.debit - payment_line.credit)
result = move_line_total
res[move_line.id]['amount_residual_currency'] = sign * (move_line.currency_id and self.pool.get('res.currency').round(cr, uid, move_line.currency_id, result) or result)
res[move_line.id]['amount_residual'] = sign * line_total_in_company_currency
return res
def default_get(self, cr, uid, fields, context=None):
data = self._default_get(cr, uid, fields, context=context)
for f in data.keys():
@@ -433,6 +487,8 @@ class account_move_line(osv.osv):
'reconcile_id': fields.many2one('account.move.reconcile', 'Reconcile', readonly=True, ondelete='set null', select=2),
'reconcile_partial_id': fields.many2one('account.move.reconcile', 'Partial Reconcile', readonly=True, ondelete='set null', select=2),
'amount_currency': fields.float('Amount Currency', help="The amount expressed in an optional other currency if it is a multi-currency entry.", digits_compute=dp.get_precision('Account')),
'amount_residual_currency': fields.function(_amount_residual, method=True, string='Residual Amount', multi="residual", help="The residual amount on a receivable or payable of a journal entry expressed in its currency (maybe different of the company currency)."),
'amount_residual': fields.function(_amount_residual, method=True, string='Residual Amount', multi="residual", help="The residual amount on a receivable or payable of a journal entry expressed in the company currency."),
'currency_id': fields.many2one('res.currency', 'Currency', help="The optional other currency if it is a multi-currency entry."),
'period_id': fields.many2one('account.period', 'Period', required=True, select=2),
'journal_id': fields.many2one('account.journal', 'Journal', required=True, select=1),
@@ -676,6 +732,7 @@ class account_move_line(osv.osv):
company_list.append(line.company_id.id)
for line in self.browse(cr, uid, ids, context=context):
company_currency_id = line.company_id.currency_id
if line.reconcile_id:
raise osv.except_osv(_('Warning'), _('Already Reconciled!'))
if line.reconcile_partial_id:
@@ -688,8 +745,7 @@ class account_move_line(osv.osv):
else:
unmerge.append(line.id)
total += (line.debit or 0.0) - (line.credit or 0.0)
if not total:
if self.pool.get('res.currency').is_zero(cr, uid, company_currency_id, total):
res = self.reconcile(cr, uid, merges+unmerge, context=context)
return res
r_id = move_rec_obj.create(cr, uid, {
@@ -771,6 +827,19 @@ class account_move_line(osv.osv):
libelle = context['comment']
else:
libelle = _('Write-Off')
cur_obj = self.pool.get('res.currency')
cur_id = False
amount_currency_writeoff = 0.0
if context.get('company_currency_id',False) != context.get('currency_id',False):
cur_id = context.get('currency_id',False)
for line in unrec_lines:
if line.currency_id and line.currency_id.id == context.get('currency_id',False):
amount_currency_writeoff += line.amount_currency
else:
tmp_amount = cur_obj.compute(cr, uid, line.account_id.company_id.currency_id.id, context.get('currency_id',False), abs(line.debit-line.credit), context={'date': line.date})
amount_currency_writeoff += (line.debit > 0) and tmp_amount or -tmp_amount
writeoff_lines = [
(0, 0, {
'name': libelle,
@@ -779,8 +848,8 @@ class account_move_line(osv.osv):
'account_id': account_id,
'date': date,
'partner_id': partner_id,
'currency_id': account.currency_id.id or False,
'amount_currency': account.currency_id.id and -currency or 0.0
'currency_id': cur_id or (account.currency_id.id or False),
'amount_currency': amount_currency_writeoff and -1 * amount_currency_writeoff or (account.currency_id.id and -1 * currency or 0.0)
}),
(0, 0, {
'name': libelle,
@@ -789,7 +858,9 @@ class account_move_line(osv.osv):
'account_id': writeoff_acc_id,
'analytic_account_id': context.get('analytic_id', False),
'date': date,
'partner_id': partner_id
'partner_id': partner_id,
'currency_id': cur_id or (account.currency_id.id or False),
'amount_currency': amount_currency_writeoff and amount_currency_writeoff or (account.currency_id.id and currency or 0.0)
})
]
@@ -802,6 +873,8 @@ class account_move_line(osv.osv):
})
writeoff_line_ids = self.search(cr, uid, [('move_id', '=', writeoff_move_id), ('account_id', '=', account_id)])
if account_id == writeoff_acc_id:
writeoff_line_ids = [writeoff_line_ids[1]]
ids += writeoff_line_ids
r_id = move_rec_obj.create(cr, uid, {
@@ -837,7 +910,7 @@ class account_move_line(osv.osv):
cr.execute('SELECT code FROM account_period WHERE id = %s', (context['period_id'], ))
p = cr.fetchone()[0] or ''
if j or p:
return j+(p and (':'+p) or '')
return j + (p and (':' + p) or '')
return False
def onchange_date(self, cr, user, ids, date, context=None):
@@ -880,6 +953,14 @@ class account_move_line(osv.osv):
#Restrict the list of journal view in search view
if view_type == 'search' and result['fields'].get('journal_id', False):
result['fields']['journal_id']['selection'] = journal_pool.name_search(cr, uid, '', [], context=context)
ctx = context.copy()
#we add the refunds journal in the selection field of journal
if context.get('journal_type', False) == 'sale':
ctx.update({'journal_type': 'sale_refund'})
result['fields']['journal_id']['selection'] += journal_pool.name_search(cr, uid, '', [], context=ctx)
elif context.get('journal_type', False) == 'purchase':
ctx.update({'journal_type': 'purchase_refund'})
result['fields']['journal_id']['selection'] += journal_pool.name_search(cr, uid, '', [], context=ctx)
return result
if context.get('view_mode', False):
return result
@@ -1283,4 +1364,4 @@ class account_move_line(osv.osv):
account_move_line()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+1
View File
@@ -2,6 +2,7 @@
<openerp>
<data>
<report auto="False" id="account_general_ledger" menu="False" model="account.account" name="account.general.ledger" rml="account/report/account_general_ledger.rml" string="General Ledger"/>
<report auto="False" id="account_general_ledger_landscape" menu="False" model="account.account" name="account.general.ledger_landscape" rml="account/report/account_general_ledger_landscape.rml" string="General Ledger"/>
<report auto="False" id="account_3rdparty_ledger" menu="False" model="res.partner" name="account.third_party_ledger" rml="account/report/account_partner_ledger.rml" string="Partner Ledger"/>
<report auto="False" id="account_3rdparty_ledger_other" menu="False" model="res.partner" name="account.third_party_ledger_other" rml="account/report/account_partner_ledger_other.rml" string="Partner Ledger"/>
<report auto="False" id="account_account_balance" menu="False" model="account.account" name="account.account.balance" rml="account/report/account_balance.rml" string="Trial Balance"/>
+13 -83
View File
@@ -170,6 +170,8 @@
</group>
<notebook colspan="4">
<page string="General Information">
<field name="active" groups="base.group_extended" />
<newline/>
<group col="2" colspan="2">
<separator string="Currency" colspan="2"/>
<field name="currency_id"/>
@@ -565,7 +567,7 @@
<field name="date" groups="base.group_extended"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_type(partner_id, type)"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id','=',parent.journal_id)]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]"/>
@@ -574,12 +576,12 @@
<form string="Statement lines">
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="partner_id" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]"/>
<field name="amount"/>
<field name="ref"/>
<field name="sequence" readonly="0"/>
<separator colspan="4" string="Notes"/>
<field colspan="4" name="note" nolabel="1"/>
@@ -602,7 +604,7 @@
</record>
<record id="view_bank_statement_periodic_form" model="ir.ui.view">
<field name="name">account.bank.statement.form</field>
<field name="name">account.bank.statement.reconcile.form</field>
<field name="model">account.bank.statement</field>
<field name="type">form</field>
<field name="arch" type="xml">
@@ -744,7 +746,6 @@
<group col="2" colspan="2">
<separator string="Reporting Configuration" colspan="4"/>
<field name="report_type" select="2"/>
<field name="sign"/>
</group>
<group col="2" colspan="2">
<separator string="Closing Method" colspan="4"/>
@@ -1519,70 +1520,6 @@
<field name="act_window_id" ref="action_move_line_search"/>
</record>
<record id="view_bank_statement_reconcile_form" model="ir.ui.view">
<field name="name">account.bank.statement.form</field>
<field name="model">account.bank.statement</field>
<field eval="30" name="priority"/>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Statement">
<group col="6" colspan="4">
<field name="name" select="1"/>
<field name="date" select="1"/>
<field name="journal_id" on_change="onchange_journal_id(journal_id)" select="1"/>
<field name="currency"/>
<field name="balance_start"/>
<field name="balance_end_real"/>
</group>
<notebook colspan="4">
<page string="Select entries">
<field colspan="4" domain="[('statement_id', '=', False), ('journal_id', '=', journal_id)]" name="move_line_ids" nolabel="1" widget="many2many"/>
</page>
<page string="Entry encoding">
<separator colspan="4" string="Entry Lines"/>
<field name="period_id"/>
<field colspan="4" name="line_ids" nolabel="1">
<tree editable="bottom" string="Statement lines">
<field name="date"/>
<field name="name"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="partner_id" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id)]" name="account_id"/>
<field name="amount"/>
<field context="{'partner_id': partner_id, 'amount': amount, 'account_id': account_id, 'date':date}" name="reconcile_id"/>
</tree>
<form string="Statement lines">
<field name="date"/>
<field name="name"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="partner_id" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id)]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" />
<field name="amount"/>
<field context="{'partner_id': partner_id, 'amount': amount, 'account_id': account_id, 'date':date}" name="reconcile_id"/>
</form>
</field>
</page>
</notebook>
<group col="7" colspan="4">
<field name="state"/>
<field name="balance_end"/>
<button name="button_cancel" states="confirm" string="Cancel" type="object" icon="gtk-cancel"/>
<button name="button_dummy" states="draft" string="Compute" icon="terp-stock_format-scientific"/>
<button name="button_confirm" states="draft" string="Confirm" type="object" icon="terp-camera_test"/>
</group>
</form>
</field>
</record>
<record id="action_bank_statement_reconciliation_form" model="ir.actions.act_window">
<field name="name">Statements reconciliation</field>
<field name="res_model">account.bank.statement</field>
<field name="view_type">form</field>
<field name="view_mode">form,tree</field>
<field name="search_view_id" ref="view_bank_statement_search"/>
<field name="view_id" ref="view_bank_statement_reconcile_form"/>
</record>
<act_window
context="{'search_default_next_partner':1,'view_mode':True}"
id="action_account_manual_reconcile" name="Journal Items"
@@ -2449,12 +2386,13 @@
<attribute name='string'></attribute>
</xpath>
<group string="res_config_contents" position="replace">
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<field name="company_id" widget="selection"/> <!-- we assume that this wizard will be run only by administrators and as this field may cause problem if hidden (because of the default company of the user removed from the selection because already configured), we simply choosed to remove the group "multi company" of it -->
<field name ="code_digits" groups="base.group_extended"/>
<field name="chart_template_id" widget="selection" on_change="onchange_chart_template_id(chart_template_id)"/>
<field name ="seq_journal" groups="base.group_extended"/>
<field name="sale_tax" domain="[('chart_template_id', '=', chart_template_id),('parent_id','=',False),('type_tax_use','in',('sale','all'))]"/>
<field name="purchase_tax" domain="[('chart_template_id', '=', chart_template_id),('parent_id','=',False),('type_tax_use','in',('purchase', 'all'))]"/>
<field name="sale_tax" domain="[('chart_template_id', '=', chart_template_id),('parent_id','=',False),('type_tax_use','in',('sale','all'))]"/>
<field name="purchase_tax" domain="[('chart_template_id', '=', chart_template_id),('parent_id','=',False),('type_tax_use','in',('purchase', 'all'))]"/>
<newline/>
<field colspan="4" mode="tree" name="bank_accounts_id" nolabel="1" widget="one2many_list">
<form string="Bank Information">
<field name="acc_name"/>
@@ -2631,7 +2569,7 @@ action = self.pool.get('res.config').next(cr, uid, [], context)
<field name="date" groups="base.group_extended"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_type(partner_id, type)"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id','=',parent.journal_id)]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" />
@@ -2640,12 +2578,12 @@ action = self.pool.get('res.config').next(cr, uid, [], context)
<form string="Statement lines">
<field name="date"/>
<field name="name"/>
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field name="partner_id" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" />
<field name="amount"/>
<field name="ref"/>
<field name="sequence"/>
<separator colspan="4" string="Notes"/>
<field colspan="4" name="note" nolabel="1"/>
@@ -2757,14 +2695,6 @@ action = self.pool.get('res.config').next(cr, uid, [], context)
<menuitem action="action_view_bank_statement_tree" id="journal_cash_move_lines"
parent="menu_finance_bank_and_cash"/>
<record id="action_partner_all" model="ir.actions.act_window">
<field name="name">Partners</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.partner</field>
<field name="view_type">form</field>
<field name="filter" eval="True"/>
</record>
<menuitem id="menu_account_customer" name="Customers"
parent="menu_finance_receivables"
action="base.action_partner_customer_form" sequence="100"/>
+1
View File
@@ -27,6 +27,7 @@
<field name="view_mode">tree,graph</field>
<field name="context">{'group_by':['user_type'], 'group_by_no_leaf':1}</field>
<field name="view_id" ref="account.view_account_entries_report_tree"/>
<field name="domain">[('year','=',time.strftime('%Y'))]</field>
</record>
<record id="action_treasory_graph" model="ir.actions.act_window">
<field name="name">Treasury</field>
+34 -34
View File
@@ -72,13 +72,13 @@
<field name="view_id" ref="account_journal_bank_view"/>
<field name="name">Debit</field>
<field name="field">debit</field>
<field eval="10" name="sequence"/>
<field eval="11" name="sequence"/>
</record>
<record id="bank_col10" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view"/>
<field name="name">Credit</field>
<field name="field">credit</field>
<field eval="11" name="sequence"/>
<field eval="12" name="sequence"/>
</record>
<record id="bank_col3" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view"/>
@@ -90,7 +90,7 @@
<field name="view_id" ref="account_journal_bank_view"/>
<field name="name">State</field>
<field name="field">state</field>
<field eval="14" name="sequence"/>
<field eval="19" name="sequence"/>
</record>
<record id="bank_col20" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view"/>
@@ -147,25 +147,25 @@
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">Currency Amt.</field>
<field name="field">amount_currency</field>
<field eval="8" name="sequence"/>
<field eval="9" name="sequence"/>
</record>
<record id="bank_col18_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">Currency</field>
<field name="field">currency_id</field>
<field eval="9" name="sequence"/>
<field eval="10" name="sequence"/>
</record>
<record id="bank_col9_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">Debit</field>
<field name="field">debit</field>
<field eval="10" name="sequence"/>
<field eval="11" name="sequence"/>
</record>
<record id="bank_col10_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">Credit</field>
<field name="field">credit</field>
<field eval="11" name="sequence"/>
<field eval="12" name="sequence"/>
</record>
<record id="bank_col3_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
@@ -177,7 +177,7 @@
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">State</field>
<field name="field">state</field>
<field eval="16" name="sequence"/>
<field eval="19" name="sequence"/>
</record>
<record id="bank_col20_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
@@ -234,25 +234,25 @@
<field name="view_id" ref="account_journal_view"/>
<field name="name">Debit</field>
<field name="field">debit</field>
<field eval="8" name="sequence"/>
<field eval="11" name="sequence"/>
</record>
<record id="journal_col9" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">Credit</field>
<field name="field">credit</field>
<field eval="9" name="sequence"/>
<field eval="12" name="sequence"/>
</record>
<record id="journal_col11" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">Analytic Account</field>
<field name="field">analytic_account_id</field>
<field eval="11" name="sequence"/>
<field eval="14" name="sequence"/>
</record>
<record id="journal_col24" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">State</field>
<field name="field">state</field>
<field eval="14" name="sequence"/>
<field eval="19" name="sequence"/>
</record>
@@ -284,68 +284,68 @@
<field name="name">Account</field>
<field name="field">account_id</field>
<field eval="True" name="required"/>
<field eval="5" name="sequence"/>
<field eval="6" name="sequence"/>
</record>
<record id="sp_journal_col5" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Partner</field>
<field name="field">partner_id</field>
<field eval="4" name="sequence"/>
<field eval="5" name="sequence"/>
</record>
<record id="sp_journal_col6" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Name</field>
<field name="field">name</field>
<field eval="6" name="sequence"/>
<field eval="7" name="sequence"/>
<field eval="True" name="required"/>
</record>
<record id="sp_journal_col7" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Due Date</field>
<field name="field">date_maturity</field>
<field eval="7" name="sequence"/>
<field eval="8" name="sequence"/>
</record>
<record id="sp_journal_col8" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Debit</field>
<field name="field">debit</field>
<field eval="8" name="sequence"/>
<field eval="11" name="sequence"/>
</record>
<record id="sp_journal_col9" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Credit</field>
<field name="field">credit</field>
<field eval="9" name="sequence"/>
<field eval="12" name="sequence"/>
</record>
<record id="sp_journal_col10" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Tax</field>
<field name="field">account_tax_id</field>
<field eval="10" name="sequence"/>
<field eval="13" name="sequence"/>
</record>
<record id="sp_journal_col11" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Analytic Account</field>
<field name="field">analytic_account_id</field>
<field eval="11" name="sequence"/>
<field eval="14" name="sequence"/>
</record>
<record id="sp_journal_col25" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Tax Acc.</field>
<field name="field">tax_code_id</field>
<field eval="12" name="sequence"/>
<field eval="15" name="sequence"/>
</record>
<record id="sp_journal_col26" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Tax</field>
<field name="field">tax_amount</field>
<field eval="13" name="sequence"/>
<field eval="16" name="sequence"/>
</record>
<record id="sp_journal_col24" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">State</field>
<field name="field">state</field>
<field eval="14" name="sequence"/>
<field eval="19" name="sequence"/>
</record>
<record id="sp_journal_col20" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
@@ -382,68 +382,68 @@
<field name="name">Account</field>
<field name="field">account_id</field>
<field eval="True" name="required"/>
<field eval="5" name="sequence"/>
<field eval="6" name="sequence"/>
</record>
<record id="sp_refund_journal_col5" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Partner</field>
<field name="field">partner_id</field>
<field eval="4" name="sequence"/>
<field eval="5" name="sequence"/>
</record>
<record id="sp_refund_journal_col6" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Name</field>
<field name="field">name</field>
<field eval="6" name="sequence"/>
<field eval="7" name="sequence"/>
<field eval="True" name="required"/>
</record>
<record id="sp_refund_journal_col7" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Due Date</field>
<field name="field">date_maturity</field>
<field eval="7" name="sequence"/>
<field eval="8" name="sequence"/>
</record>
<record id="sp_refund_journal_col8" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Debit</field>
<field name="field">debit</field>
<field eval="8" name="sequence"/>
<field eval="11" name="sequence"/>
</record>
<record id="sp_refund_journal_col9" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Credit</field>
<field name="field">credit</field>
<field eval="9" name="sequence"/>
<field eval="12" name="sequence"/>
</record>
<record id="sp_refund_journal_col10" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Tax</field>
<field name="field">account_tax_id</field>
<field eval="10" name="sequence"/>
<field eval="13" name="sequence"/>
</record>
<record id="sp_refund_journal_col11" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Analytic Account</field>
<field name="field">analytic_account_id</field>
<field eval="11" name="sequence"/>
<field eval="14" name="sequence"/>
</record>
<record id="sp_refund_journal_col25" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Tax Acc.</field>
<field name="field">tax_code_id</field>
<field eval="12" name="sequence"/>
<field eval="15" name="sequence"/>
</record>
<record id="sp_refund_journal_col26" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Tax</field>
<field name="field">tax_amount</field>
<field eval="13" name="sequence"/>
<field eval="16" name="sequence"/>
</record>
<record id="sp_refund_journal_col24" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">State</field>
<field name="field">state</field>
<field eval="14" name="sequence"/>
<field eval="19" name="sequence"/>
</record>
<record id="sp_refund_journal_col20" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
+188 -152
View File
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 6.0.0-rc2\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-03 16:56:45+0000\n"
"PO-Revision-Date: 2011-01-03 16:56:45+0000\n"
"POT-Creation-Date: 2011-01-11 11:14:28+0000\n"
"PO-Revision-Date: 2011-01-11 11:14:28+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
@@ -28,7 +28,7 @@ msgstr ""
#. module: account
#: code:addons/account/wizard/account_open_closed_fiscalyear.py:40
#, python-format
msgid "No journal for ending writing has been defined for the fiscal year"
msgid "No End of year journal defined for the fiscal year"
msgstr ""
#. module: account
@@ -62,7 +62,7 @@ msgid "Residual"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:803
#: code:addons/account/invoice.py:785
#, python-format
msgid "Please define sequence on invoice journal"
msgstr ""
@@ -165,7 +165,7 @@ msgid "If the active field is set to False, it will allow you to hide the paymen
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1439
#: code:addons/account/invoice.py:1421
#, python-format
msgid "Warning!"
msgstr ""
@@ -237,7 +237,7 @@ msgid "Check this box if you don't want any VAT related to this Tax Code to appe
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1228
#: code:addons/account/invoice.py:1210
#, python-format
msgid "Invoice '%s' is paid partially: %s%s of %s%s (%s%s remaining)"
msgstr ""
@@ -253,7 +253,7 @@ msgid "Belgian Reports"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1102
#: code:addons/account/account_move_line.py:1176
#, python-format
msgid "You can not add/modify entries in a closed journal."
msgstr ""
@@ -291,7 +291,7 @@ msgid "St."
msgstr ""
#. module: account
#: code:addons/account/invoice.py:547
#: code:addons/account/invoice.py:529
#, python-format
msgid "Invoice line account company does not match with invoice company."
msgstr ""
@@ -453,7 +453,7 @@ msgstr ""
#: field:account.move.line,journal_id:0
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
#: code:addons/account/account_move_line.py:909
#: code:addons/account/account_move_line.py:983
#: view:analytic.entries.report:0
#: field:analytic.entries.report,journal_id:0
#: model:ir.actions.report.xml,name:account.account_journal
@@ -631,8 +631,8 @@ msgid "Journal Period"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:675
#: code:addons/account/account_move_line.py:719
#: code:addons/account/account_move_line.py:732
#: code:addons/account/account_move_line.py:776
#, python-format
msgid "To reconcile the entries company should be the same for all entries"
msgstr ""
@@ -798,7 +798,7 @@ msgid "Next Partner to reconcile"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1117
#: code:addons/account/account_move_line.py:1191
#, python-format
msgid "You can not do this modification on a confirmed entry ! Please note that you can just change some non important fields !"
msgstr ""
@@ -917,9 +917,9 @@ msgstr ""
#. module: account
#: code:addons/account/account.py:2083
#: code:addons/account/account_bank_statement.py:350
#: code:addons/account/account_move_line.py:115
#: code:addons/account/account_move_line.py:170
#: code:addons/account/invoice.py:73
#: code:addons/account/invoice.py:688
#: code:addons/account/invoice.py:670
#: code:addons/account/wizard/account_use_model.py:81
#, python-format
msgid "No Analytic Journal !"
@@ -1253,7 +1253,7 @@ msgid "Central Journal"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1197
#: code:addons/account/account_move_line.py:1271
#, python-format
msgid "You can not use this general account in this journal !"
msgstr ""
@@ -1308,11 +1308,6 @@ msgstr ""
msgid "Skip 'Draft' State for Manual Entries"
msgstr ""
#. module: account
#: view:account.bank.statement:0
msgid "Entry encoding"
msgstr ""
#. module: account
#: view:account.invoice.report:0
#: field:account.invoice.report,price_total:0
@@ -1346,7 +1341,7 @@ msgid "Example: at 14 net days 2 percents, remaining amount at 30 days end of mo
msgstr ""
#. module: account
#: code:addons/account/invoice.py:833
#: code:addons/account/invoice.py:815
#, python-format
msgid "Cannot create the invoice !\n"
"The payment term defined gives a computed amount greater than the total invoiced amount."
@@ -1496,6 +1491,7 @@ msgid "Separated Journal Sequences"
msgstr ""
#. module: account
#: field:account.bank.statement,user_id:0
#: view:account.invoice:0
msgid "Responsible"
msgstr ""
@@ -1557,7 +1553,7 @@ msgid "Error! You cannot define overlapping fiscal years"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:751
#: code:addons/account/account_move_line.py:808
#, python-format
msgid "The account is not defined to be reconciled !"
msgstr ""
@@ -1588,7 +1584,7 @@ msgid "Receivables & Payables"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:758
#: code:addons/account/account_move_line.py:815
#, python-format
msgid "You have to provide an account for the write off entry !"
msgstr ""
@@ -1978,7 +1974,7 @@ msgid "Income Account"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:370
#: code:addons/account/invoice.py:352
#, python-format
msgid "There is no Accounting Journal of type Sale/Purchase defined!"
msgstr ""
@@ -2095,7 +2091,9 @@ msgstr ""
#: selection:account.invoice.report,state:0
#: view:account.open.closed.fiscalyear:0
#: selection:account.period,state:0
#: code:addons/account/wizard/account_move_journal.py:106
#: selection:report.invoice.created,state:0
#, python-format
msgid "Open"
msgstr ""
@@ -2122,7 +2120,7 @@ msgid "Account Tax Code"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:563
#: code:addons/account/invoice.py:545
#, python-format
msgid "Can't find any account journal of %s type for this company.\n"
"\n"
@@ -2262,7 +2260,7 @@ msgid "Accounts"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:369
#: code:addons/account/invoice.py:351
#, python-format
msgid "Configuration Error!"
msgstr ""
@@ -2424,8 +2422,8 @@ msgstr ""
#. module: account
#: code:addons/account/account.py:2083
#: code:addons/account/account_bank_statement.py:350
#: code:addons/account/account_move_line.py:115
#: code:addons/account/invoice.py:688
#: code:addons/account/account_move_line.py:170
#: code:addons/account/invoice.py:670
#: code:addons/account/wizard/account_use_model.py:81
#, python-format
msgid "You have to define an analytic journal on the '%s' journal!"
@@ -2571,7 +2569,6 @@ msgstr ""
#. module: account
#: view:account.analytic.line:0
#: model:ir.actions.act_window,name:account.action_account_analytic_line_form
#: model:ir.actions.act_window,name:account.action_account_tree1
msgid "Analytic Entries"
msgstr ""
@@ -2848,7 +2845,7 @@ msgid "Starting Balance"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1302
#: code:addons/account/invoice.py:1284
#, python-format
msgid "No Partner Defined !"
msgstr ""
@@ -2938,7 +2935,7 @@ msgid "All selected journal entries will be validated and posted. It means you w
msgstr ""
#. module: account
#: code:addons/account/invoice.py:388
#: code:addons/account/invoice.py:370
#, python-format
msgid "Cannot delete invoice(s) that are already opened or paid !"
msgstr ""
@@ -3125,7 +3122,9 @@ msgstr ""
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
#: selection:account.vat.declaration,filter:0
#: code:addons/account/report/common_report_header.py:97
#: field:analytic.entries.report,date:0
#, python-format
msgid "Date"
msgstr ""
@@ -3154,7 +3153,7 @@ msgid "Maturity date of entry line generated by model line '%s' of model '%s' is
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:753
#: code:addons/account/account_move_line.py:810
#, python-format
msgid "Some entries are already reconciled !"
msgstr ""
@@ -3269,7 +3268,12 @@ msgid "Unit Price"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1054
#: model:ir.actions.act_window,name:account.action_account_tree1
msgid "Analytic Items"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1128
#, python-format
msgid "Unable to change tax !"
msgstr ""
@@ -3280,13 +3284,13 @@ msgid "#Entries"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1440
#: code:addons/account/invoice.py:1422
#, python-format
msgid "You selected an Unit of Measure which is not compatible with the product."
msgstr ""
#. module: account
#: code:addons/account/invoice.py:491
#: code:addons/account/invoice.py:473
#, python-format
msgid "The Payment Term of Supplier does not have Payment Term Lines(Computation) defined !"
msgstr ""
@@ -3563,7 +3567,7 @@ msgid "Acc.Type"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:732
#: code:addons/account/invoice.py:714
#, python-format
msgid "Global taxes defined, but are not in invoice lines !"
msgstr ""
@@ -3651,6 +3655,8 @@ msgstr ""
#: selection:account.report.general.ledger,target_move:0
#: selection:account.tax.chart,target_move:0
#: selection:account.vat.declaration,target_move:0
#: code:addons/account/report/common_report_header.py:68
#, python-format
msgid "All Posted Entries"
msgstr ""
@@ -3861,14 +3867,14 @@ msgstr ""
#: code:addons/account/account.py:1290
#: code:addons/account/account.py:1318
#: code:addons/account/account.py:1325
#: code:addons/account/account_move_line.py:981
#: code:addons/account/invoice.py:914
#: code:addons/account/account_move_line.py:1055
#: code:addons/account/invoice.py:896
#: code:addons/account/wizard/account_automatic_reconcile.py:152
#: code:addons/account/wizard/account_fiscalyear_close.py:78
#: code:addons/account/wizard/account_fiscalyear_close.py:81
#: code:addons/account/wizard/account_move_journal.py:162
#: code:addons/account/wizard/account_move_journal.py:165
#: code:addons/account/wizard/account_report_aged_partner_balance.py:55
#: code:addons/account/wizard/account_report_aged_partner_balance.py:57
#: code:addons/account/wizard/account_report_aged_partner_balance.py:59
#, python-format
msgid "UserError"
msgstr ""
@@ -3914,6 +3920,12 @@ msgstr ""
msgid "Error ! You can not create recursive accounts."
msgstr ""
#. module: account
#: constraint:account.account:0
msgid "You cannot create an account! \n"
"Make sure if the account has children then it should be type \"View\"!"
msgstr ""
#. module: account
#: view:account.subscription.generate:0
#: model:ir.actions.act_window,name:account.action_account_subscription_generate
@@ -3937,7 +3949,7 @@ msgstr ""
#: selection:account.bank.statement.line,type:0
#: view:account.invoice:0
#: view:account.invoice.report:0
#: code:addons/account/invoice.py:338
#: code:addons/account/invoice.py:320
#, python-format
msgid "Customer"
msgstr ""
@@ -3986,7 +3998,7 @@ msgid "Account Balance -"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1007
#: code:addons/account/invoice.py:989
#, python-format
msgid "Invoice "
msgstr ""
@@ -4024,7 +4036,7 @@ msgid "Invoices"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:822
#: code:addons/account/invoice.py:804
#, python-format
msgid "Please verify the price of the invoice !\n"
"The real total does not match the computed total."
@@ -4102,7 +4114,7 @@ msgstr ""
#. module: account
#: view:account.move:0
#: view:account.move.line:0
#: code:addons/account/wizard/account_move_journal.py:150
#: code:addons/account/wizard/account_move_journal.py:153
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_move_line
#: model:ir.actions.act_window,name:account.act_account_move_to_account_move_line_open
#: model:ir.actions.act_window,name:account.act_account_partner_account_move
@@ -4135,8 +4147,29 @@ msgid "Third Party (Country)"
msgstr ""
#. module: account
#: model:ir.actions.act_window,help:account.action_invoice_tree4
msgid "With Supplier Refunds you can manage the credit notes you receive from your suppliers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form."
#: code:addons/account/account.py:938
#: code:addons/account/account.py:940
#: code:addons/account/account.py:1181
#: code:addons/account/account.py:1393
#: code:addons/account/account.py:1397
#: code:addons/account/account_cash_statement.py:249
#: code:addons/account/account_move_line.py:780
#: code:addons/account/account_move_line.py:803
#: code:addons/account/account_move_line.py:805
#: code:addons/account/account_move_line.py:808
#: code:addons/account/account_move_line.py:810
#: code:addons/account/account_move_line.py:1117
#: code:addons/account/report/common_report_header.py:92
#: code:addons/account/wizard/account_change_currency.py:39
#: code:addons/account/wizard/account_change_currency.py:60
#: code:addons/account/wizard/account_change_currency.py:65
#: code:addons/account/wizard/account_change_currency.py:71
#: code:addons/account/wizard/account_move_bank_reconcile.py:49
#: code:addons/account/wizard/account_open_closed_fiscalyear.py:40
#: code:addons/account/wizard/account_report_common.py:120
#: code:addons/account/wizard/account_report_common.py:126
#, python-format
msgid "Error"
msgstr ""
#. module: account
@@ -4154,7 +4187,7 @@ msgid "Bank Details"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:738
#: code:addons/account/invoice.py:720
#, python-format
msgid "Taxes missing !"
msgstr ""
@@ -4576,7 +4609,7 @@ msgid "Start of period"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1119
#: code:addons/account/account_move_line.py:1193
#, python-format
msgid "You can not do this modification on a reconciled entry ! Please note that you can just change some non important fields !"
msgstr ""
@@ -4630,12 +4663,12 @@ msgstr ""
#. module: account
#: code:addons/account/account_bank_statement.py:331
#: code:addons/account/invoice.py:423
#: code:addons/account/invoice.py:523
#: code:addons/account/invoice.py:538
#: code:addons/account/invoice.py:546
#: code:addons/account/invoice.py:563
#: code:addons/account/invoice.py:1365
#: code:addons/account/invoice.py:405
#: code:addons/account/invoice.py:505
#: code:addons/account/invoice.py:520
#: code:addons/account/invoice.py:528
#: code:addons/account/invoice.py:545
#: code:addons/account/invoice.py:1347
#: code:addons/account/wizard/account_move_journal.py:63
#, python-format
msgid "Configuration Error !"
@@ -4843,7 +4876,7 @@ msgid "Generate Opening Entries"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:680
#: code:addons/account/account_move_line.py:738
#, python-format
msgid "Already Reconciled!"
msgstr ""
@@ -4877,7 +4910,7 @@ msgstr ""
#. module: account
#: view:account.move.line.reconcile:0
#: code:addons/account/account_move_line.py:773
#: code:addons/account/account_move_line.py:830
#, python-format
msgid "Write-Off"
msgstr ""
@@ -4896,7 +4929,7 @@ msgstr ""
#: selection:account.bank.statement.line,type:0
#: view:account.invoice:0
#: view:account.invoice.report:0
#: code:addons/account/invoice.py:340
#: code:addons/account/invoice.py:322
#, python-format
msgid "Supplier"
msgstr ""
@@ -5027,14 +5060,14 @@ msgid "Filter by"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1057
#: code:addons/account/account_move_line.py:1140
#: code:addons/account/account_move_line.py:1131
#: code:addons/account/account_move_line.py:1214
#, python-format
msgid "You can not use an inactive account!"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:746
#: code:addons/account/account_move_line.py:803
#, python-format
msgid "Entries are not of the same account or already reconciled ! "
msgstr ""
@@ -5051,6 +5084,12 @@ msgstr ""
msgid "Account General Journal"
msgstr ""
#. module: account
#: code:addons/account/report/common_report_header.py:100
#, python-format
msgid "No Filter"
msgstr ""
#. module: account
#: field:account.payment.term.line,days:0
msgid "Number of Days"
@@ -5063,7 +5102,7 @@ msgstr ""
#. module: account
#: code:addons/account/account_bank_statement.py:391
#: code:addons/account/invoice.py:388
#: code:addons/account/invoice.py:370
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -5157,11 +5196,6 @@ msgstr ""
msgid "Past"
msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.action_bank_statement_reconciliation_form
msgid "Statements reconciliation"
msgstr ""
#. module: account
#: view:account.analytic.line:0
msgid "Analytic Entry"
@@ -5204,7 +5238,7 @@ msgid "As soon as the reconciliation is done, the invoice's state turns to “do
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1007
#: code:addons/account/invoice.py:989
#, python-format
msgid "is validated."
msgstr ""
@@ -5354,9 +5388,11 @@ msgstr ""
#: view:account.unreconcile.reconcile:0
#: view:account.use.model:0
#: view:account.vat.declaration:0
#: code:addons/account/wizard/account_move_journal.py:105
#: view:project.account.analytic.line:0
#: view:validate.account.move:0
#: view:validate.account.move.lines:0
#, python-format
msgid "Cancel"
msgstr ""
@@ -5519,15 +5555,15 @@ msgid "Optional create"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:424
#: code:addons/account/invoice.py:524
#: code:addons/account/invoice.py:1366
#: code:addons/account/invoice.py:406
#: code:addons/account/invoice.py:506
#: code:addons/account/invoice.py:1348
#, python-format
msgid "Can not find account chart for this company, Please Create account."
msgstr ""
#. module: account
#: code:addons/account/wizard/account_report_aged_partner_balance.py:59
#: code:addons/account/wizard/account_report_aged_partner_balance.py:57
#, python-format
msgid "Enter a Start date !"
msgstr ""
@@ -5669,7 +5705,7 @@ msgstr ""
#. module: account
#: code:addons/account/account_analytic_line.py:143
#: code:addons/account/account_move_line.py:831
#: code:addons/account/account_move_line.py:905
#, python-format
msgid "Entries: "
msgstr ""
@@ -5702,13 +5738,13 @@ msgstr ""
#. module: account
#: view:account.move.line:0
#: code:addons/account/account_move_line.py:929
#: code:addons/account/account_move_line.py:1003
#, python-format
msgid "Total debit"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:724
#: code:addons/account/account_move_line.py:781
#, python-format
msgid "Entry \"%s\" is not valid !"
msgstr ""
@@ -5741,7 +5777,7 @@ msgid "Python Code"
msgstr ""
#. module: account
#: code:addons/account/wizard/account_report_balance_sheet.py:72
#: code:addons/account/wizard/account_report_balance_sheet.py:70
#, python-format
msgid "Please define the Reserve and Profit/Loss account for current user company !"
msgstr ""
@@ -5783,12 +5819,12 @@ msgstr ""
#: code:addons/account/account_bank_statement.py:345
#: code:addons/account/account_cash_statement.py:328
#: code:addons/account/account_cash_statement.py:348
#: code:addons/account/account_move_line.py:1102
#: code:addons/account/account_move_line.py:1117
#: code:addons/account/account_move_line.py:1119
#: code:addons/account/invoice.py:803
#: code:addons/account/invoice.py:833
#: code:addons/account/invoice.py:1026
#: code:addons/account/account_move_line.py:1176
#: code:addons/account/account_move_line.py:1191
#: code:addons/account/account_move_line.py:1193
#: code:addons/account/invoice.py:785
#: code:addons/account/invoice.py:815
#: code:addons/account/invoice.py:1008
#: code:addons/account/wizard/account_invoice_refund.py:100
#: code:addons/account/wizard/account_invoice_refund.py:102
#: code:addons/account/wizard/account_use_model.py:44
@@ -5874,7 +5910,9 @@ msgstr ""
#: selection:account.report.general.ledger,target_move:0
#: selection:account.tax.chart,target_move:0
#: selection:account.vat.declaration,target_move:0
#: code:addons/account/report/common_report_header.py:67
#: model:ir.actions.report.xml,name:account.account_move_line_list
#, python-format
msgid "All Entries"
msgstr ""
@@ -5945,8 +5983,13 @@ msgid "Account tax chart"
msgstr ""
#. module: account
#: view:account.bank.statement:0
msgid "Select entries"
#: report:account.analytic.account.cost_ledger:0
#: report:account.analytic.account.quantity_cost_ledger:0
#: report:account.central.journal:0
#: report:account.general.journal:0
#: report:account.invoice:0
#: report:account.partner.balance:0
msgid "Total:"
msgstr ""
#. module: account
@@ -5978,7 +6021,7 @@ msgid "Child Codes"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:491
#: code:addons/account/invoice.py:473
#: code:addons/account/wizard/account_invoice_refund.py:137
#, python-format
msgid "Data Insufficient !"
@@ -6110,7 +6153,7 @@ msgid "Lines"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:539
#: code:addons/account/invoice.py:521
#, python-format
msgid "Can not find account chart for this company in invoice line account, Please Create account."
msgstr ""
@@ -6131,7 +6174,7 @@ msgid "Are you sure you want to open this invoice ?"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:889
#: code:addons/account/account_move_line.py:963
#, python-format
msgid "Accounting Entries"
msgstr ""
@@ -6409,7 +6452,6 @@ msgstr ""
#. module: account
#: view:account.analytic.line:0
#: field:account.bank.statement,user_id:0
#: view:account.journal:0
#: field:account.journal,user_id:0
#: view:analytic.entries.report:0
@@ -6433,7 +6475,7 @@ msgid "This field is used for payable and receivable journal entries. You can pu
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1197
#: code:addons/account/account_move_line.py:1271
#, python-format
msgid "Bad account !"
msgstr ""
@@ -6445,13 +6487,19 @@ msgstr ""
msgid "Sales Journal"
msgstr ""
#. module: account
#: code:addons/account/wizard/account_move_journal.py:104
#, python-format
msgid "Open Journal Items !"
msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_invoice_tax
msgid "Invoice Tax"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1172
#: code:addons/account/account_move_line.py:1246
#, python-format
msgid "No piece number !"
msgstr ""
@@ -6678,11 +6726,11 @@ msgstr ""
#: code:addons/account/account.py:532
#: code:addons/account/account.py:640
#: code:addons/account/account.py:927
#: code:addons/account/account_move_line.py:675
#: code:addons/account/account_move_line.py:719
#: code:addons/account/invoice.py:732
#: code:addons/account/invoice.py:735
#: code:addons/account/invoice.py:738
#: code:addons/account/account_move_line.py:732
#: code:addons/account/account_move_line.py:776
#: code:addons/account/invoice.py:714
#: code:addons/account/invoice.py:717
#: code:addons/account/invoice.py:720
#, python-format
msgid "Warning !"
msgstr ""
@@ -6744,7 +6792,7 @@ msgid "Can not %s draft/proforma/cancel invoice."
msgstr ""
#. module: account
#: code:addons/account/invoice.py:805
#: code:addons/account/invoice.py:787
#, python-format
msgid "No Invoice Lines !"
msgstr ""
@@ -6791,7 +6839,7 @@ msgid "Deferral Method"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:377
#: code:addons/account/invoice.py:359
#, python-format
msgid "Invoice '%s' is paid."
msgstr ""
@@ -6848,7 +6896,7 @@ msgid "Associated Partner"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1302
#: code:addons/account/invoice.py:1284
#, python-format
msgid "You must first select a partner !"
msgstr ""
@@ -6953,7 +7001,7 @@ msgstr ""
#: view:account.period:0
#: field:account.subscription,period_nbr:0
#: field:account.tax.chart,period_id:0
#: code:addons/account/account_move_line.py:908
#: code:addons/account/account_move_line.py:982
#: field:validate.account.move,period_id:0
#, python-format
msgid "Period"
@@ -7088,7 +7136,7 @@ msgid "Account Types"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:915
#: code:addons/account/invoice.py:897
#, python-format
msgid "Cannot create invoice move on centralised journal"
msgstr ""
@@ -7228,6 +7276,11 @@ msgstr ""
msgid "Supplier Accounting Properties"
msgstr ""
#. module: account
#: help:account.move.line,amount_residual:0
msgid "The residual amount on a receivable or payable of a journal entry expressed in the company currency."
msgstr ""
#. module: account
#: view:account.payment.term.line:0
msgid " valuation: balance"
@@ -7327,8 +7380,8 @@ msgid "The amount of the voucher must be the same amount as the one on the state
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1057
#: code:addons/account/account_move_line.py:1140
#: code:addons/account/account_move_line.py:1131
#: code:addons/account/account_move_line.py:1214
#, python-format
msgid "Bad account!"
msgstr ""
@@ -7339,7 +7392,7 @@ msgid "Keep empty for all open fiscal years"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:982
#: code:addons/account/account_move_line.py:1056
#, python-format
msgid "The account move (%s) for centralisation has been confirmed!"
msgstr ""
@@ -7480,11 +7533,12 @@ msgstr ""
#. module: account
#: view:account.invoice:0
#: field:account.move.line,amount_residual:0
#: field:account.move.line,amount_residual_currency:0
msgid "Residual Amount"
msgstr ""
#. module: account
#: view:account.bank.statement:0
#: field:account.invoice,move_lines:0
#: field:account.move.reconcile,line_id:0
msgid "Entry Lines"
@@ -7563,7 +7617,7 @@ msgid "Purchase Tax(%)"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:805
#: code:addons/account/invoice.py:787
#, python-format
msgid "Please create some invoice lines."
msgstr ""
@@ -7646,7 +7700,7 @@ msgstr ""
#. module: account
#: view:account.move.line:0
#: code:addons/account/account_move_line.py:932
#: code:addons/account/account_move_line.py:1006
#, python-format
msgid "Total credit"
msgstr ""
@@ -7657,7 +7711,7 @@ msgid "Accountant validates the accounting entries coming from the invoice. "
msgstr ""
#. module: account
#: code:addons/account/invoice.py:1026
#: code:addons/account/invoice.py:1008
#, python-format
msgid "You cannot cancel the Invoice which is Partially Paid! You need to unreconcile concerned payment entries!"
msgstr ""
@@ -7689,29 +7743,8 @@ msgid "Current currency is not confirured properly !"
msgstr ""
#. module: account
#: code:addons/account/account.py:938
#: code:addons/account/account.py:940
#: code:addons/account/account.py:1181
#: code:addons/account/account.py:1393
#: code:addons/account/account.py:1397
#: code:addons/account/account_cash_statement.py:249
#: code:addons/account/account_move_line.py:723
#: code:addons/account/account_move_line.py:746
#: code:addons/account/account_move_line.py:748
#: code:addons/account/account_move_line.py:751
#: code:addons/account/account_move_line.py:753
#: code:addons/account/account_move_line.py:1043
#: code:addons/account/report/common_report_header.py:92
#: code:addons/account/wizard/account_change_currency.py:39
#: code:addons/account/wizard/account_change_currency.py:60
#: code:addons/account/wizard/account_change_currency.py:65
#: code:addons/account/wizard/account_change_currency.py:71
#: code:addons/account/wizard/account_move_bank_reconcile.py:49
#: code:addons/account/wizard/account_open_closed_fiscalyear.py:40
#: code:addons/account/wizard/account_report_common.py:120
#: code:addons/account/wizard/account_report_common.py:126
#, python-format
msgid "Error"
#: model:ir.actions.act_window,help:account.action_invoice_tree4
msgid "With Supplier Refunds you can manage the credit notes you receive from your suppliers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form."
msgstr ""
#. module: account
@@ -7875,7 +7908,7 @@ msgid "Move"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1054
#: code:addons/account/account_move_line.py:1128
#, python-format
msgid "You can not change the tax, you should remove and recreate lines !"
msgstr ""
@@ -8008,7 +8041,7 @@ msgid "Account Subscription"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:735
#: code:addons/account/invoice.py:717
#, python-format
msgid "Tax base different !\n"
"Click on compute to update tax base"
@@ -8062,7 +8095,7 @@ msgid "Unreconciled"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:822
#: code:addons/account/invoice.py:804
#, python-format
msgid "Bad total !"
msgstr ""
@@ -8113,7 +8146,7 @@ msgid "Active"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:372
#: code:addons/account/invoice.py:354
#, python-format
msgid "Unknown Error"
msgstr ""
@@ -8238,9 +8271,11 @@ msgstr ""
#: report:account.vat.declaration:0
#: view:account.vat.declaration:0
#: selection:account.vat.declaration,filter:0
#: code:addons/account/report/common_report_header.py:99
#: model:ir.actions.act_window,name:account.action_account_period_form
#: model:ir.ui.menu,name:account.menu_action_account_period_form
#: model:ir.ui.menu,name:account.next_id_23
#, python-format
msgid "Periods"
msgstr ""
@@ -8601,11 +8636,11 @@ msgid "End period"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:680
#: code:addons/account/account_move_line.py:758
#: code:addons/account/account_move_line.py:738
#: code:addons/account/account_move_line.py:815
#: code:addons/account/wizard/account_invoice_state.py:44
#: code:addons/account/wizard/account_invoice_state.py:68
#: code:addons/account/wizard/account_report_balance_sheet.py:72
#: code:addons/account/wizard/account_report_balance_sheet.py:70
#: code:addons/account/wizard/account_state_open.py:37
#: code:addons/account/wizard/account_validate_account_move.py:39
#: code:addons/account/wizard/account_validate_account_move.py:61
@@ -8689,13 +8724,19 @@ msgstr ""
msgid "Error ! You can not create recursive account templates."
msgstr ""
#. module: account
#: constraint:account.account.template:0
msgid "You cannot create an account template! \n"
"Make sure if the account template has parent then it should be type \"View\"! "
msgstr ""
#. module: account
#: view:account.subscription:0
msgid "Recurring"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:748
#: code:addons/account/account_move_line.py:805
#, python-format
msgid "Entry is already reconciled"
msgstr ""
@@ -8716,7 +8757,7 @@ msgid "Range"
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1172
#: code:addons/account/account_move_line.py:1246
#, python-format
msgid "Can not create an automatic sequence for this piece !\n"
"\n"
@@ -8779,7 +8820,7 @@ msgid "Applicability"
msgstr ""
#. module: account
#: code:addons/account/wizard/account_move_journal.py:162
#: code:addons/account/wizard/account_move_journal.py:165
#, python-format
msgid "This period is already closed !"
msgstr ""
@@ -8837,7 +8878,7 @@ msgid "Accounts Mapping"
msgstr ""
#. module: account
#: code:addons/account/invoice.py:364
#: code:addons/account/invoice.py:346
#, python-format
msgid "Invoice '%s' is waiting for validation."
msgstr ""
@@ -8862,7 +8903,7 @@ msgid "The income or expense account related to the selected product."
msgstr ""
#. module: account
#: code:addons/account/account_move_line.py:1043
#: code:addons/account/account_move_line.py:1117
#, python-format
msgid "The date of your Journal Entry is not in the defined period!"
msgstr ""
@@ -8948,16 +8989,6 @@ msgstr ""
msgid "Manual Invoice Taxes"
msgstr ""
#. module: account
#: report:account.analytic.account.cost_ledger:0
#: report:account.analytic.account.quantity_cost_ledger:0
#: report:account.central.journal:0
#: report:account.general.journal:0
#: report:account.invoice:0
#: report:account.partner.balance:0
msgid "Total:"
msgstr ""
#. module: account
#: field:account.account,parent_right:0
msgid "Parent Right"
@@ -9069,7 +9100,7 @@ msgid "Amount currency"
msgstr ""
#. module: account
#: code:addons/account/wizard/account_report_aged_partner_balance.py:57
#: code:addons/account/wizard/account_report_aged_partner_balance.py:55
#, python-format
msgid "You must enter a period length that cannot be 0 or below !"
msgstr ""
@@ -9085,3 +9116,8 @@ msgstr ""
msgid "Create and manage the accounts you need to record journal entries. An account is part of a ledger allowing your company to register all kinds of debit and credit transactions. Companies present their annual accounts in two main parts: the balance sheet and the income statement (profit and loss account). The annual accounts of a company are required by law to disclose a certain amount of information. They have to be certified by an external auditor annually."
msgstr ""
#. module: account
#: help:account.move.line,amount_residual_currency:0
msgid "The residual amount on a receivable or payable of a journal entry expressed in its currency (maybe different of the company currency)."
msgstr ""
+612 -506
View File
File diff suppressed because it is too large Load Diff
+648 -514
View File
File diff suppressed because it is too large Load Diff
+608 -505
View File
File diff suppressed because it is too large Load Diff
+648 -518
View File
File diff suppressed because it is too large Load Diff
+653 -519
View File
File diff suppressed because it is too large Load Diff
+615 -506
View File
File diff suppressed because it is too large Load Diff
+615 -506
View File
File diff suppressed because it is too large Load Diff
+1063 -632
View File
File diff suppressed because it is too large Load Diff
+655 -521
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+960 -624
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+634 -510
View File
File diff suppressed because it is too large Load Diff
+612 -506
View File
File diff suppressed because it is too large Load Diff
+612 -506
View File
File diff suppressed because it is too large Load Diff
+658 -524
View File
File diff suppressed because it is too large Load Diff
+1039 -606
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+621 -518
View File
File diff suppressed because it is too large Load Diff
+613 -507
View File
File diff suppressed because it is too large Load Diff
+608 -505
View File
File diff suppressed because it is too large Load Diff
+613 -506
View File
File diff suppressed because it is too large Load Diff
+650 -523
View File
File diff suppressed because it is too large Load Diff
+1995 -1539
View File
File diff suppressed because it is too large Load Diff
+646 -523
View File
File diff suppressed because it is too large Load Diff
+854 -626
View File
File diff suppressed because it is too large Load Diff
+608 -505
View File
File diff suppressed because it is too large Load Diff
+620 -510
View File
File diff suppressed because it is too large Load Diff
+644 -517
View File
File diff suppressed because it is too large Load Diff
+631 -512
View File
File diff suppressed because it is too large Load Diff
+709 -539
View File
File diff suppressed because it is too large Load Diff
+612 -506
View File
File diff suppressed because it is too large Load Diff
+869 -616
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+618 -506
View File
File diff suppressed because it is too large Load Diff
+824 -579
View File
File diff suppressed because it is too large Load Diff
+693 -534
View File
File diff suppressed because it is too large Load Diff
+1042 -748
View File
File diff suppressed because it is too large Load Diff
+654 -520
View File
File diff suppressed because it is too large Load Diff
+699 -560
View File
File diff suppressed because it is too large Load Diff
+608 -505
View File
File diff suppressed because it is too large Load Diff
+613 -507
View File
File diff suppressed because it is too large Load Diff
+654 -523
View File
File diff suppressed because it is too large Load Diff
+612 -506
View File
File diff suppressed because it is too large Load Diff
+649 -519
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+683 -530
View File
File diff suppressed because it is too large Load Diff
+612 -506
View File
File diff suppressed because it is too large Load Diff
+619 -507
View File
File diff suppressed because it is too large Load Diff
+726 -620
View File
File diff suppressed because it is too large Load Diff
+608 -505
View File
File diff suppressed because it is too large Load Diff
+764 -583
View File
File diff suppressed because it is too large Load Diff
+612 -506
View File
File diff suppressed because it is too large Load Diff
+643 -513
View File
File diff suppressed because it is too large Load Diff
+959 -670
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+27 -37
View File
@@ -88,32 +88,14 @@ class account_invoice(osv.osv):
return [('none', _('Free Reference'))]
def _amount_residual(self, cr, uid, ids, name, args, context=None):
res = {}
if context is None:
context = {}
cur_obj = self.pool.get('res.currency')
data_inv = self.browse(cr, uid, ids, context=context)
for inv in data_inv:
if inv.reconciled:
res[inv.id] = 0.0
continue
inv_total = inv.amount_total
context_unreconciled = context.copy()
for lines in inv.move_lines:
if lines.currency_id and lines.currency_id.id == inv.currency_id.id:
if inv.type in ('out_invoice','in_refund'):
inv_total += lines.amount_currency
else:
inv_total -= lines.amount_currency
else:
context_unreconciled.update({'date': lines.date})
amount_in_invoice_currency = cur_obj.compute(cr, uid, inv.company_id.currency_id.id, inv.currency_id.id,abs(lines.debit-lines.credit),round=False,context=context_unreconciled)
inv_total -= amount_in_invoice_currency
result = inv_total
res[inv.id] = self.pool.get('res.currency').round(cr, uid, inv.currency_id, result)
return res
result = {}
for invoice in self.browse(cr, uid, ids, context=context):
result[invoice.id] = 0.0
if invoice.move_id:
for m in invoice.move_id.line_id:
if m.account_id.type in ('receivable','payable'):
result[invoice.id] = m.amount_residual_currency
return result
# Give Journal Items related to the payment reconciled to this invoice
# Return ids of partial and total payments related to the selected invoices
@@ -346,8 +328,7 @@ class account_invoice(osv.osv):
def get_log_context(self, cr, uid, context=None):
if context is None:
context = {}
mob_obj = self.pool.get('ir.model.data')
res = mob_obj.get_object_reference(cr, uid, 'account', 'invoice_form')
res = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'account', 'invoice_form')
view_id = res and res[1] or False
context.update({'view_id': view_id})
return context
@@ -559,7 +540,11 @@ class account_invoice(osv.osv):
journal_ids = obj_journal.search(cr, uid, [('company_id','=',company_id), ('type', '=', journal_type)])
if journal_ids:
val['journal_id'] = journal_ids[0]
else:
res_journal_default = self.pool.get('ir.values').get(cr, uid, 'default', 'type=%s' % (type), ['account.invoice'])
for r in res_journal_default:
if r[1] == 'journal_id' and r[2] in journal_ids:
val['journal_id'] = r[2]
if not val.get('journal_id', False):
raise osv.except_osv(_('Configuration Error !'), (_('Can\'t find any account journal of %s type for this company.\n\nYou can create one in the menu: \nConfiguration\Financial Accounting\Accounts\Journals.') % (journal_type)))
dom = {'journal_id': [('id', 'in', journal_ids)]}
else:
@@ -577,7 +562,6 @@ class account_invoice(osv.osv):
val['currency_id'] = False
else:
val['currency_id'] = company.currency_id.id
return {'value': val, 'domain': dom}
# go from canceled state to draft state
@@ -1009,15 +993,13 @@ class account_invoice(osv.osv):
return True
def action_cancel(self, cr, uid, ids, *args):
context = {} # TODO: Use context from arguments
account_move_obj = self.pool.get('account.move')
invoices = self.read(cr, uid, ids, ['move_id', 'payment_ids'])
move_ids = [] # ones that we will need to remove
for i in invoices:
if i['move_id']:
account_move_obj.button_cancel(cr, uid, [i['move_id'][0]])
# delete the move this invoice was pointing to
# Note that the corresponding move_lines and move_reconciles
# will be automatically deleted too
account_move_obj.unlink(cr, uid, [i['move_id'][0]])
move_ids.append(i['move_id'][0])
if i['payment_ids']:
account_move_line_obj = self.pool.get('account.move.line')
pay_ids = account_move_line_obj.browse(cr, uid, i['payment_ids'])
@@ -1025,7 +1007,15 @@ class account_invoice(osv.osv):
if move_line.reconcile_partial_id and move_line.reconcile_partial_id.line_partial_ids:
raise osv.except_osv(_('Error !'), _('You cannot cancel the Invoice which is Partially Paid! You need to unreconcile concerned payment entries!'))
# First, set the invoices as cancelled and detach the move ids
self.write(cr, uid, ids, {'state':'cancel', 'move_id':False})
if move_ids:
# second, invalidate the move(s)
account_move_obj.button_cancel(cr, uid, move_ids, context=context)
# delete the move this invoice was pointing to
# Note that the corresponding move_lines and move_reconciles
# will be automatically deleted too
account_move_obj.unlink(cr, uid, move_ids, context=context)
self._log_event(cr, uid, ids, -1.0, 'Cancel Invoice')
return True
@@ -1285,7 +1275,7 @@ class account_invoice_line(osv.osv):
'invoice_line_tax_id': fields.many2many('account.tax', 'account_invoice_line_tax', 'invoice_line_id', 'tax_id', 'Taxes', domain=[('parent_id','=',False)]),
'note': fields.text('Notes'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'company_id': fields.related('invoice_id','company_id',type='many2one',relation='res.company',string='Company',store=True),
'company_id': fields.related('invoice_id','company_id',type='many2one',relation='res.company',string='Company', store=True, readonly=True),
'partner_id': fields.related('invoice_id','partner_id',type='many2one',relation='res.partner',string='Partner',store=True)
}
_defaults = {
@@ -1542,7 +1532,7 @@ class account_invoice_tax(osv.osv):
'base_amount': fields.float('Base Code Amount', digits_compute=dp.get_precision('Account')),
'tax_code_id': fields.many2one('account.tax.code', 'Tax Code', help="The tax basis of the tax declaration."),
'tax_amount': fields.float('Tax Code Amount', digits_compute=dp.get_precision('Account')),
'company_id': fields.related('account_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True),
'company_id': fields.related('account_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True),
'factor_base': fields.function(_count_factor, method=True, string='Multipication factor for Base code', type='float', multi="all"),
'factor_tax': fields.function(_count_factor, method=True, string='Multipication factor Tax code', type='float', multi="all")
}
+2 -2
View File
@@ -27,7 +27,7 @@ class account_fiscal_position(osv.osv):
_name = 'account.fiscal.position'
_description = 'Fiscal Position'
_columns = {
'name': fields.char('Fiscal Position', size=64, translate=True, required=True),
'name': fields.char('Fiscal Position', size=64, required=True),
'company_id': fields.many2one('res.company', 'Company'),
'account_ids': fields.one2many('account.fiscal.position.account', 'position_id', 'Account Mapping'),
'tax_ids': fields.one2many('account.fiscal.position.tax', 'position_id', 'Tax Mapping'),
@@ -189,4 +189,4 @@ class res_partner(osv.osv):
res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+2 -2
View File
@@ -53,7 +53,7 @@
<field name="name">account.analytic.account.tree</field>
<field name="model">account.analytic.account</field>
<field name="type">tree</field>
<field name="field_parent">child_ids</field>
<field name="field_parent">child_complete_ids</field>
<field name="arch" type="xml">
<tree colors="red:(date&lt;current_date);black:(date&gt;=current_date);black:(date==False)" string="Analytic account" toolbar="1">
<field name="name"/>
@@ -243,7 +243,7 @@
<!-- Entries by Line -->
<record id="action_account_tree1" model="ir.actions.act_window">
<field name="name">Analytic Entries</field>
<field name="name">Analytic Items</field>
<field name="res_model">account.analytic.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
-2
View File
@@ -39,8 +39,6 @@ import account_invoice_report
import account_report
import account_entries_report
import account_analytic_entries_report
#import voucher_print
import account_voucher_print
import account_balance_sheet
import account_profit_loss
@@ -45,7 +45,9 @@ class aged_trial_report(report_sxw.rml_parse, common_report_header):
def set_context(self, objects, data, ids, report_type=None):
obj_move = self.pool.get('account.move.line')
self.query = obj_move._query_get(self.cr, self.uid, obj='l', context=data['form'].get('used_context', {}))
ctx = data['form'].get('used_context', {})
ctx.update({'fiscalyear': False, 'all_fiscalyear': True})
self.query = obj_move._query_get(self.cr, self.uid, obj='l', context=ctx)
self.direction_selection = data['form'].get('direction_selection', 'past')
self.target_move = data['form'].get('target_move', 'all')
self.date_from = data['form'].get('date_from', time.strftime('%Y-%m-%d'))
+3 -1
View File
@@ -20,6 +20,7 @@
##############################################################################
import time
from report import report_sxw
from common_report_header import common_report_header
@@ -111,7 +112,8 @@ class account_balance(report_sxw.rml_parse, common_report_header):
ctx['fiscalyear'] = form['fiscalyear_id']
if form['filter'] == 'filter_period':
ctx['periods'] = form['periods']
ctx['period_from'] = form['period_from']
ctx['period_to'] = form['period_to']
elif form['filter'] == 'filter_date':
ctx['date_from'] = form['date_from']
ctx['date_to'] = form['date_to']
+13 -17
View File
@@ -94,25 +94,21 @@ class account_entries_report(osv.osv):
return super(account_entries_report, self).search(cr, uid, args=args, offset=offset, limit=limit, order=order,
context=context, count=count)
def read_group(self, cr, uid, domain, *args, **kwargs):
todel=[]
def read_group(self, cr, uid, domain, fields, groupby, offset=0, limit=None, context=None, orderby=False):
if context is None:
context = {}
fiscalyear_obj = self.pool.get('account.fiscalyear')
period_obj = self.pool.get('account.period')
for arg in domain:
if arg[0] == 'period_id' and arg[2] == 'current_period':
current_period = period_obj.find(cr, uid)[0]
domain.append(['period_id','in',[current_period]])
todel.append(arg)
break
elif arg[0] == 'period_id' and arg[2] == 'current_year':
current_year = fiscalyear_obj.find(cr, uid)
ids = fiscalyear_obj.read(cr, uid, [current_year], ['period_ids'])[0]['period_ids']
domain.append(['period_id','in',ids])
todel.append(arg)
for a in [['period_id','in','current_year'], ['period_id','in','current_period']]:
if a in domain:
domain.remove(a)
return super(account_entries_report, self).read_group(cr, uid, domain, *args, **kwargs)
if context.get('period', False) == 'current_period':
current_period = period_obj.find(cr, uid)[0]
domain.append(['period_id','in',[current_period]])
elif context.get('year', False) == 'current_year':
current_year = fiscalyear_obj.find(cr, uid)
ids = fiscalyear_obj.read(cr, uid, [current_year], ['period_ids'])[0]['period_ids']
domain.append(['period_id','in',ids])
else:
domain = domain
return super(account_entries_report, self).read_group(cr, uid, domain, fields, groupby, offset, limit, context, orderby)
def init(self, cr):
tools.drop_view_if_exists(cr, 'account_entries_report')
@@ -70,17 +70,17 @@
<group colspan="10" col="12">
<filter icon="terp-go-year" string="This F.Year"
name="thisyear"
domain="[('period_id','in','current_year')]"
context="{'year':'current_year'}"
help="Journal Entries with period in current year"/>
<filter icon="terp-go-month" string="This Period"
name="period"
domain="[('period_id','in','current_period')]"
context="{'period':'current_period'}"
help="Journal Entries with period in current period"/>
<separator orientation="vertical"/>
<filter string="Unposted" icon="terp-document-new" domain="[('move_state','=','draft')]" help = "entries"/>
<filter string="Posted" icon="terp-camera_test" domain="[('move_state','=','posted')]" help = "Posted entries"/>
<separator orientation="vertical"/>
<filter string="Unreconciled" icon="terp-dolar_ok!" domain="[('reconcile_id','=',False)]" help = "Unreconciled entries"/>
<filter string="Unreconciled" icon="terp-dolar_ok!" domain="[('reconcile_id','=',False), ('account_id.reconcile','=',True)]" help = "Unreconciled entries"/>
<filter string="Reconciled" icon="terp-dolar" domain="[('reconcile_id','!=',False)]" help = "Reconciled entries"/>
<separator orientation="vertical"/>
<field name="account_id"/>
@@ -103,7 +103,9 @@ class general_ledger(report_sxw.rml_parse, common_report_header):
def get_children_accounts(self, account):
res = []
currency_obj = self.pool.get('res.currency')
ids_acc = self.pool.get('account.account')._get_children_and_consol(self.cr, self.uid, account.id)
currency = account.currency_id and account.currency_id or account.company_id.currency_id
for child_account in self.pool.get('account.account').browse(self.cr, self.uid, ids_acc, context=self.context):
sql = """
SELECT count(id)
@@ -119,7 +121,7 @@ class general_ledger(report_sxw.rml_parse, common_report_header):
res.append(child_account)
elif self.display_account == 'bal_solde':
if child_account.type != 'view' and num_entry <> 0:
if ( sold_account <> 0.0):
if not currency_obj.is_zero(self.cr, self.uid, currency, sold_account):
res.append(child_account)
else:
res.append(child_account)
@@ -150,6 +150,7 @@
<act_window
id="act_account_invoice_partner_relation"
name="Monthly Turnover"
groups="group_account_manager"
context="{'search_default_partner_id':[active_id], 'search_default_month':1,'search_default_user':1,'group_by_no_leaf':1,'group_by':[]}"
res_model="account.invoice.report"
src_model="res.partner"/>
@@ -1,69 +0,0 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2008 Tiny SPRL (<http://tiny.be>). All Rights Reserved
# $Id$
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import time
from report import report_sxw
from tools import amount_to_text_en
class report_voucher_move(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context=None):
super(report_voucher_move, self).__init__(cr, uid, name, context=context)
self.localcontext.update({
'time': time,
'convert':self.convert,
'get_title': self.get_title,
'debit':self.debit,
'credit':self.credit,
})
self.user = uid
def convert(self, amount):
user_id = self.pool.get('res.users').browse(self.cr, self.user, [self.user])[0]
return amount_to_text_en.amount_to_text(amount, 'en', user_id.company_id.currency_id.name)
def get_title(self, voucher):
title = ''
if voucher.journal_id:
type = voucher.journal_id.type
title = type[0].swapcase() + type[1:] + " Voucher"
return title
def debit(self, move_ids):
debit = 0.0
for move in move_ids:
debit +=move.debit
return debit
def credit(self, move_ids):
credit = 0.0
for move in move_ids:
credit +=move.credit
return credit
report_sxw.report_sxw(
'report.account.move.voucher',
'account.move',
'addons/account/report/account_voucher_print.rml',
parser=report_voucher_move,header="external"
)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,470 +0,0 @@
<?xml version="1.0"?>
<document filename="Voucher.pdf">
<template pageSize="(595.0,842.0)" title="Voucher" author="OpenERP S.A.(sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="42.0" width="525" height="772"/>
</pageTemplate>
</template>
<stylesheet>
<blockTableStyle id="Standard_Outline">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table4">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEAFTER" colorName="#b3b3b3" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table5">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="4,0" stop="4,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="4,0" stop="4,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="5,0" stop="5,-1"/>
<lineStyle kind="LINEAFTER" colorName="#b3b3b3" start="5,0" stop="5,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="5,0" stop="5,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Heading1">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="2,-1" stop="2,-1"/>
</blockTableStyle>
<blockTableStyle id="Table2">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="2,-1" stop="2,-1"/>
</blockTableStyle>
<blockTableStyle id="last_info">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table1">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#b3b3b3" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#b3b3b3" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#b3b3b3" start="2,-1" stop="2,-1"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
<paraStyle name="P1" fontName="Helvetica"/>
<paraStyle name="P2" fontName="Helvetica" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P3" fontName="Helvetica" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P4" fontName="Helvetica-Bold" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P5" fontName="Helvetica-Bold" fontSize="10.0" leading="13" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P6" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P7" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Standard" fontName="Helvetica"/>
<paraStyle name="Heading" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Caption" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Index" fontName="Helvetica"/>
<paraStyle name="Table Contents" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Footer" fontName="Helvetica"/>
<paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
<paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_1" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_8_Italic" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Drawing" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Header" fontName="Helvetica"/>
<paraStyle name="Endnote" rightIndent="0.0" leftIndent="14.0" fontName="Helvetica" fontSize="10.0" leading="13"/>
<paraStyle name="Addressee" fontName="Helvetica" spaceBefore="0.0" spaceAfter="3.0"/>
<paraStyle name="Signature" fontName="Helvetica"/>
<paraStyle name="Heading 8" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 7" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 6" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 5" fontName="Helvetica-Bold" fontSize="85%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 4" fontName="Helvetica-BoldOblique" fontSize="85%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 1" fontName="Helvetica-Bold" fontSize="115%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 10" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 2" fontName="Helvetica-BoldOblique" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="First line indent" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Hanging indent" rightIndent="0.0" leftIndent="28.0" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Salutation" fontName="Helvetica"/>
<paraStyle name="Text body indent" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Heading 3" fontName="Helvetica-Bold" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="List Indent" rightIndent="0.0" leftIndent="142.0" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Marginalia" rightIndent="0.0" leftIndent="113.0" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_9_30" rightIndent="0.0" leftIndent="9.0" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9_italic" fontName="Helvetica-Oblique" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9_30_italic" rightIndent="0.0" leftIndent="9.0" fontName="Helvetica-Oblique" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<images/>
</stylesheet>
<story>
<pto>
<pto_header>
<blockTable colWidths="313.0,107.0,105.0" style="Heading1">
<tr>
<td>
<para style="terp_tblheader_Details">Particulars</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Debit</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Credit</para>
</td>
</tr>
</blockTable>
</pto_header>
<para style="P8">[[ repeatIn(objects,'voucher') ]]</para>
<blockTable colWidths="524.0" style="Table6">
<tr>
<td>
<para style="terp_header_Centre">[[ get_title(voucher) ]]</para>
</td>
</tr>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
<blockTable colWidths="63.0,200.0,52.0,210.0" style="Table4">
<tr>
<td>
<para style="terp_tblheader_General">Journal:</para>
</td>
<td>
<para style="terp_default_9">[[ voucher.journal_id.name ]]</para>
</td>
<td>
<para style="terp_tblheader_General">Number:</para>
</td>
<td>
<para style="terp_default_9">[[ voucher.name ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="63.0,72.0,44.0,84.0,52.0,210.0" style="Table5">
<tr>
<td>
<para style="terp_tblheader_General">State:</para>
</td>
<td>
<para style="terp_default_9">PRO-FORMA [[ ((voucher.state == 'proforma') or removeParentNode('para')) and '' ]]</para>
<para style="terp_default_9">Draft[[ ((voucher.state == 'draft') or removeParentNode('para')) and '' ]]</para>
<para style="terp_default_9">Canceled [[ ((voucher.state == 'cancel') or removeParentNode('para')) and '' ]]</para>
<para style="terp_default_9">Posted [[ ((voucher.state == 'posted') or removeParentNode('para')) and '' ]]</para>
</td>
<td>
<para style="terp_tblheader_General">Ref. :</para>
</td>
<td>
<para style="terp_default_9">[[ voucher.ref]]</para>
</td>
<td>
<para style="terp_tblheader_General">Date:</para>
</td>
<td>
<para style="terp_default_9">[[ formatLang(voucher.date , date=True) or '' ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_9">
<font color="white"> </font>
</para>
<para style="terp_default_9">
<font color="white"> </font>
</para>
<blockTable colWidths="313.0,107.0,105.0" style="Heading1">
<tr>
<td>
<para style="terp_tblheader_Details">Particulars</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Debit</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Credit</para>
</td>
</tr>
</blockTable>
<para style="terp_default_1">
<font color="white"> </font>
</para>
<section>
<para style="terp_default_8">[[ repeatIn(voucher.line_id,'line_id') ]]</para>
<blockTable colWidths="313.0,106.0,105.0" style="Table2">
<tr>
<td>
<para style="terp_default_Bold_9">[[ (line_id.partner_id and line_id.partner_id.name) or 'Account']]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ formatLang(line_id.debit) ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ formatLang(line_id.credit) ]]</para>
</td>
</tr>
<tr>
<td>
<para style="terp_default_9_30">[[ line_id.account_id.name ]] </para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="terp_default_9_30_italic">[[ line_id.name ]]-[[voucher.ref]]</para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
</tr>
</blockTable>
<para style="terp_default_1">
<font color="white"> </font>
</para>
</section>
<para style="terp_default_1">
<font color="white"> </font>
</para>
<blockTable colWidths="313.0,106.0,105.0" style="last_info">
<tr>
<td>
<para style="P4">Through : </para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="terp_default_9_italic">[[ voucher.narration or '']]</para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="P4">On Account of : </para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="P7">[[ voucher.line_id and voucher.line_id[0].name or removeParentNode('para') ]]</para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P2">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="P4">Amount (in words) : </para>
</td>
<td>
<para style="P4">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P4">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="P7">[[ convert(voucher.amount) ]]</para>
</td>
<td>
<para style="P3">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P3">
<font color="white"> </font>
</para>
</td>
</tr>
</blockTable>
<para style="terp_default_1">
<font color="white"> </font>
</para>
<blockTable colWidths="313.0,106.0,105.0" style="Table1">
<tr>
<td>
<para style="P5">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">[[ formatLang(debit(voucher.line_id))]]</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">[[ formatLang(credit(voucher.line_id)) ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_1">
<font color="white"> </font>
</para>
<blockTable colWidths="154.0,160.0,63.0,148.0" style="Table3">
<tr>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
<td>
<para style="P6">Receiver's Signature</para>
</td>
<td>
<para style="P6">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P6">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_Right_9">Authorised Signatory</para>
</td>
</tr>
</blockTable>
<para style="P1">
<font color="white"> </font>
</para>
</pto>
</story>
</document>
@@ -64,8 +64,8 @@ class common_report_header(object):
def _get_target_move(self, data):
if data.get('form', False) and data['form'].get('target_move', False):
if data['form']['target_move'] == 'all':
return 'All Entries'
return 'All Posted Entries'
return _('All Entries')
return _('All Posted Entries')
return ''
def _get_end_date(self, data):
@@ -94,10 +94,10 @@ class common_report_header(object):
def _get_filter(self, data):
if data.get('form', False) and data['form'].get('filter', False):
if data['form']['filter'] == 'filter_date':
return 'Date'
return _('Date')
elif data['form']['filter'] == 'filter_period':
return 'Periods'
return 'No Filter'
return _('Periods')
return _('No Filter')
def _sum_debit_period(self, period_id, journal_id=None):
journals = journal_id or self.journal_ids
+4 -1
View File
@@ -21,6 +21,7 @@
from osv import osv
"""Inherit res.currency to handle accounting date values when converting currencies"""
class res_currency_account(osv.osv):
_inherit = "res.currency"
@@ -41,4 +42,6 @@ class res_currency_account(osv.osv):
rate = float(tot2)/float(tot1)
return rate
res_currency_account()
res_currency_account()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -98,6 +98,7 @@
"access_account_bank_statement_manager","account.bank.statement manager","model_account_bank_statement","account.group_account_manager",1,1,1,1
"access_account_entries_report_manager","account.entries.report","model_account_entries_report","account.group_account_manager",1,1,1,1
"access_account_entries_report_user","account.entries.report","model_account_entries_report","account.group_account_user",1,0,0,0
"access_account_entries_report_invoice","account.entries.report","model_account_entries_report","account.group_account_invoice",1,0,0,0
"access_account_entries_report_employee","account.entries.report employee","model_account_entries_report","base.group_user",1,0,0,0
"access_analytic_entries_report_manager","analytic.entries.report","model_analytic_entries_report","account.group_account_manager",1,0,0,0
"access_account_cashbox_line","account.cashbox.line","model_account_cashbox_line","account.group_account_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
98 access_account_bank_statement_manager account.bank.statement manager model_account_bank_statement account.group_account_manager 1 1 1 1
99 access_account_entries_report_manager account.entries.report model_account_entries_report account.group_account_manager 1 1 1 1
100 access_account_entries_report_user account.entries.report model_account_entries_report account.group_account_user 1 0 0 0
101 access_account_entries_report_invoice account.entries.report model_account_entries_report account.group_account_invoice 1 0 0 0
102 access_account_entries_report_employee account.entries.report employee model_account_entries_report base.group_user 1 0 0 0
103 access_analytic_entries_report_manager analytic.entries.report model_analytic_entries_report account.group_account_manager 1 0 0 0
104 access_account_cashbox_line account.cashbox.line model_account_cashbox_line account.group_account_manager 1 1 1 1
@@ -6,14 +6,14 @@
!record {model: account.bank.statement, id: account_bank_statement_0}:
balance_end_real: 0.0
balance_start: 0.0
date: '2010-10-14'
date: !eval time.strftime('%Y-%m-%d')
journal_id: account.bank_journal
name: /
period_id: account.period_10
line_ids:
- account_id: account.a_recv
amount: 1000.0
date: '2010-10-14'
date: !eval time.strftime('%Y-%m-%d')
name: a
partner_id: base.res_partner_4
sequence: 0.0
@@ -2,7 +2,7 @@
In order to test Cash statement I create a Cash statement and confirm it and check it's move created
-
!record {model: account.bank.statement, id: account_bank_statement_1}:
date: '2010-10-16'
date: !eval time.strftime('%Y-%m-%d')
journal_id: account.cash_journal
name: /
period_id: account.period_10
@@ -41,7 +41,7 @@
line_ids:
- account_id: account.a_recv
amount: 1000.0
date: '2010-10-16'
date: !eval time.strftime('%Y-%m-%d')
name: test
partner_id: base.res_partner_4
sequence: 0.0
@@ -7,7 +7,7 @@
address_invoice_id: base.res_partner_address_zen
company_id: base.main_company
currency_id: base.EUR
date_invoice: '2010-05-26'
date_invoice: !eval time.strftime('%Y-%m-%d')
invoice_line:
- account_id: account.a_sale
name: '[PC3] Medium PC'
+4 -4
View File
@@ -4,10 +4,10 @@
-
!record {model: account.period, id: account_period_jan0}:
company_id: base.main_company
date_start: '2010-01-01'
date_stop: '2010-01-31'
date_start: !eval "'%s-01-01' %(datetime.now().year)"
date_stop: !eval "'%s-01-31' %(datetime.now().year)"
fiscalyear_id: account.data_fiscalyear
name: Jan-2010
name: !eval "'Jan-%s' %(datetime.now().year)"
special: 1
-
@@ -16,7 +16,7 @@
!assert {model: account.period, id: account_period_jan0, string: Period is in Draft state}:
- state == 'draft'
-
I use "Close a Period" wizard to close period Jan-2010
I use "Close a Period" wizard to close period
-
!record {model: account.period.close, id: account_period_close_0}:
sure: 1
+6 -14
View File
@@ -28,14 +28,6 @@
(data, format) = netsvc.LocalService('report.account.overdue').create(cr, uid, [ref('base.res_partner_asus'),ref('base.res_partner_agrolait'),ref('base.res_partner_c2c')], {}, {})
if tools.config['test_report_directory']:
file(os.path.join(tools.config['test_report_directory'], 'account-report_overdue.'+format), 'wb+').write(data)
-
In order to test the PDF reports defined on Account Move, we will print the Voucher Report
-
!python {model: account.move}: |
import netsvc, tools, os
(data, format) = netsvc.LocalService('report.account.move.voucher').create(cr, uid, [ref('account.account_move_0')], {}, {})
if tools.config['test_report_directory']:
file(os.path.join(tools.config['test_report_directory'], 'account-voucher-report.'+format), 'wb+').write(data)
-
Print the Aged Partner Balance Report
-
@@ -44,7 +36,7 @@
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')],'active_id':ref('account.chart0')})
data_dict = {'chart_account_id':ref('account.chart0')}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_aged_balance_view',wiz_data=data_dict, context=ctx, our_module='account')
test_reports.try_report_action(cr, uid, 'action_account_aged_balance_view',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Account Balance Sheet in Horizontal mode
-
@@ -53,7 +45,7 @@
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
data_dict = {'chart_account_id':ref('account.chart0'),'display_type': True}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_bs_report',wiz_data=data_dict, context=ctx, our_module='account')
test_reports.try_report_action(cr, uid, 'action_account_bs_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Account Balance Sheet in Normal mode
-
@@ -62,7 +54,7 @@
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
data_dict = {'chart_account_id':ref('account.chart0'),'display_type': False}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_bs_report',wiz_data=data_dict, context=ctx, our_module='account')
test_reports.try_report_action(cr, uid, 'action_account_bs_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Account Balance Report in Normal mode through the wizard - From Account Chart
-
@@ -157,7 +149,7 @@
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
data_dict = {'chart_account_id':ref('account.chart0'),'display_type': False}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_pl_report',wiz_data=data_dict, context=ctx, our_module='account')
test_reports.try_report_action(cr, uid, 'action_account_pl_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Profit-Loss Report in Horizontal Mode
-
@@ -166,7 +158,7 @@
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
data_dict = {'chart_account_id':ref('account.chart0'),'display_type': True}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_pl_report',wiz_data=data_dict, context=ctx, our_module='account')
test_reports.try_report_action(cr, uid, 'action_account_pl_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Analytic Balance Report through the wizard
-
@@ -215,4 +207,4 @@
ctx.update({'model': 'account.analytic.account','active_ids': [ref('account.analytic_root')]})
data_dict = {}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_analytic_invert_balance',wiz_data=data_dict, context=ctx, our_module='account')
test_reports.try_report_action(cr, uid, 'action_account_analytic_invert_balance',wiz_data=data_dict, context=ctx, our_module='account')
@@ -8,36 +8,36 @@
In order to test the 'Post Journal Entries' wizard in OpenERP, I created an account move
-
!record {model: account.move, id: account_move_0}:
date: '2010-06-07'
date: !eval time.strftime('%Y-%m-%d')
journal_id: account.bank_journal
line_id:
- account_id: account.cash
amount_currency: 0.0
credit: 2000.0
date: '2010-06-07'
date: !eval time.strftime('%Y-%m-%d')
debit: 0.0
journal_id: account.bank_journal
name: Basic Computer
partner_id: base.res_partner_desertic_hispafuentes
period_id: account.period_6
ref: '2010010'
ref: '2011010'
tax_amount: 0.0
- journal_id: account.bank_journal
period_id: account.period_6
ref: '2010010'
ref: '2011010'
tax_code_id: account_tax_code_0
tax_amount: 0.0
account_id: account.a_recv
amount_currency: 0.0
credit: 0.0
date: '2010-06-07'
date: !eval time.strftime('%Y-%m-%d')
debit: 2000.0
name: Basic Computer
partner_id: base.res_partner_desertic_hispafuentes
quantity: 0.0
name: /
period_id: account.period_6
ref: '2010010'
ref: '2011010'
state: draft
-
+2 -2
View File
@@ -43,8 +43,8 @@
-
!record {model: account.analytic.chart, id: account_analytic_chart_0}:
from_date: '2010-01-01'
to_date: '2010-06-30'
from_date: !eval "'%s-01-01' %(datetime.now().year)"
to_date: !eval "'%s-06-30' %(datetime.now().year)"
-
I clicked on Open chart Button to open the charts
@@ -101,9 +101,12 @@ class account_move_journal(osv.osv_memory):
period = period_pool.browse(cr, uid, [period_id], ['name'])[0]['name']
period_string = _("Period: %s") % tools.ustr(period)
separator_string = _("Open Journal Items !")
cancel_string = _("Cancel")
open_string = _("Open")
view = """<?xml version="1.0" encoding="utf-8"?>
<form string="Standard entries">
<separator string="Open Journal Items !" colspan="4"/>
<separator string="%s" colspan="4"/>
<field name="target_move" />
<newline/>
<group colspan="4" >
@@ -113,10 +116,10 @@ class account_move_journal(osv.osv_memory):
</group>
<group colspan="4" col="4">
<label string ="" colspan="2"/>
<button icon="gtk-cancel" special="cancel" string="Cancel"/>
<button icon="terp-gtk-go-back-rtl" string="Open" name="action_open_window" default_focus="1" type="object"/>
<button icon="gtk-cancel" special="cancel" string="%s"/>
<button icon="terp-gtk-go-back-rtl" string="%s" name="action_open_window" default_focus="1" type="object"/>
</group>
</form>""" % (journal_string, period_string)
</form>""" % (separator_string, journal_string, period_string, cancel_string, open_string)
view = etree.fromstring(view.encode('utf8'))
xarch, xfields = self._view_look_dom_arch(cr, uid, view, view_id, context=context)
@@ -37,7 +37,7 @@ class account_open_closed_fiscalyear(osv.osv_memory):
data = self.read(cr, uid, ids, [], context=context)[0]
data_fyear = fy_obj.browse(cr, uid, data['fyear_id'], context=context)
if not data_fyear.end_journal_period_id:
raise osv.except_osv(_('Error'), _('No journal for ending writing has been defined for the fiscal year'))
raise osv.except_osv(_('Error !'), _('No End of year journal defined for the fiscal year'))
period_journal = data_fyear.end_journal_period_id
ids_move = move_obj.search(cr, uid, [('journal_id','=',period_journal.journal_id.id),('period_id','=',period_journal.period_id.id)])
if ids_move:
@@ -13,7 +13,6 @@
<label colspan="4" nolabel="1" string="Aged Partner Balance is a more detailed report of your receivables by intervals. When opening that report, OpenERP asks for the name of the company, the fiscal period and the size of the interval to be analyzed (in days). OpenERP then calculates a table of credit balance by period. So if you request an interval of 30 days OpenERP generates an analysis of creditors for the past month, past two months, and so on. "/>
<newline/>
<field name="chart_account_id" widget='selection'/>
<field name="fiscalyear_id"/>
<newline/>
<field name="date_from"/>
<field name="period_length"/>
@@ -28,7 +28,7 @@
<field name="res_model">account.tax.chart</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('parent_id','=',False)]</field>
<field name="domain">[]</field>
<field name="view_id" ref="view_account_tax_chart"/>
<field name="help">Chart of Taxes is a tree view reflecting the structure of the Tax Cases (or tax codes) and shows the current tax situation. The tax chart represents the amount of each area of the tax declaration for your country. It’s presented in a hierarchical structure, which can be modified to fit your needs.</field>
<field name="target">new</field>
+1 -1
View File
@@ -37,6 +37,6 @@ items and the chart of accounts.
'test': [],
'installable': True,
'active': False,
'certificate': '',
'certificate': '00395091383933390541',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 6.0.0-rc2\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-03 16:56:46+0000\n"
"PO-Revision-Date: 2011-01-03 16:56:46+0000\n"
"POT-Creation-Date: 2011-01-11 11:14:28+0000\n"
"PO-Revision-Date: 2011-01-11 11:14:28+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
+3 -3
View File
@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-21 19:43+0000\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-11-17 08:53+0000\n"
"Last-Translator: Martin Pihl <martinpihl@gmail.com>\n"
"Language-Team: Danish <da@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-24 05:57+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-01-15 05:56+0000\n"
"X-Generator: Launchpad (build 12177)\n"
#. module: account_accountant
#: model:ir.module.module,description:account_accountant.module_meta_information
+3 -3
View File
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2010-12-21 19:43+0000\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-25 19:02+0000\n"
"Last-Translator: Thorsten Vocks (OpenBig.org) <thorsten.vocks@big-"
"consulting.net>\n"
@@ -15,8 +15,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-12-26 04:52+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-01-15 05:56+0000\n"
"X-Generator: Launchpad (build 12177)\n"
#. module: account_accountant
#: model:ir.module.module,description:account_accountant.module_meta_information

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