[FIX]Possibility to choose journal none and period none

bzr revid: dle@openerp.com-20121122150645-kxfuwdfy6qxvjvxu
This commit is contained in:
Denis Ledoux dle@openerp.com 2012-11-22 16:06:45 +01:00
parent 0a5e921dff
commit 44c948caf4
3 changed files with 13 additions and 6 deletions

View File

@ -505,11 +505,11 @@ class account_move_line(osv.osv):
'amount_residual_currency': fields.function(_amount_residual, 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, 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."),
'journal_id': fields.related('move_id', 'journal_id', string='Journal', type='many2one', relation='account.journal', required=True, select=True, readonly=True,
'journal_id': fields.related('move_id', 'journal_id', string='Journal', type='many2one', relation='account.journal', required=True, select=True,
store = {
'account.move': (_get_move_lines, ['journal_id'], 20)
}),
'period_id': fields.related('move_id', 'period_id', string='Period', type='many2one', relation='account.period', required=True, select=True, readonly=True,
'period_id': fields.related('move_id', 'period_id', string='Period', type='many2one', relation='account.period', required=True, select=True,
store = {
'account.move': (_get_move_lines, ['period_id'], 20)
}),
@ -565,6 +565,9 @@ class account_move_line(osv.osv):
"""
Return default account period value
"""
context = context or {}
if context.get('period_id', False):
return context['period_id']
account_period_obj = self.pool.get('account.period')
ids = account_period_obj.find(cr, uid, context=context)
period_id = False
@ -576,7 +579,9 @@ class account_move_line(osv.osv):
"""
Return journal based on the journal type
"""
context = context or {}
if context.get('journal_id', False):
return context['journal_id']
journal_id = False
journal_pool = self.pool.get('account.journal')

View File

@ -991,8 +991,8 @@
<field eval="4" name="priority"/>
<field name="arch" type="xml">
<tree colors="red:state == 'draft';black:state == 'valid'" string="Journal Items" create="true" on_write="on_create_write" version="7.0" editable="top">
<field name="journal_id" invisible="context.get('journal_id',False)"/>
<field name="period_id" invisible="context.get('period_id',False)"/>
<field name="journal_id" options='{"no_open":True}' invisible="context.get('journal_id',False)"/>
<field name="period_id" options='{"no_open":True}' invisible="context.get('period_id',False)"/>
<field name="date"/>
<field name="name"/>
<field name="ref"/>
@ -1010,6 +1010,7 @@
<field name="amount_currency" readonly="True" invisible="not context.get('currency',False)"/>
<field name="currency_id" readonly="True" invisible="not context.get('currency',False)" />
<field name="state" />
<field name="company_id" invisible="1"/>
</tree>
</field>
</record>

View File

@ -91,7 +91,8 @@ openerp.account.quickadd = function (instance) {
if (self.current_journal !== null) domain.push(["journal_id", "=", self.current_journal]);
if (self.current_period !== null) domain.push(["period_id", "=", self.current_period]);
self.last_context["journal_id"] = self.current_journal === null ? false : self.current_journal;
self.last_context["period_id"] = self.current_period === null ? false : self.current_period;
if (self.current_period === null) delete self.last_context["period_id"];
else self.last_context["period_id"] = self.current_period;
self.last_context["journal_type"] = self.current_journal_type;
self.last_context["currency"] = self.current_journal_currency;
self.last_context["analytic_journal_id"] = self.current_journal_analytic;