ACCOUNT: add on_change on date_invoice to update due_date

bzr revid: ced-5df64812e4262d53332726ef375bb392224da354
This commit is contained in:
ced 2007-05-02 06:58:52 +00:00
parent 3c77bc2caa
commit 836368efcd
2 changed files with 8 additions and 13 deletions

View File

@ -183,14 +183,14 @@
<field name="company_id"/>
<newline/>
<field name="partner_bank_id" domain="[('partner_id','=',partner_id)]"/>
<field name="payment_term" on_change="onchange_payment_term(payment_term)" />
<field name="payment_term" on_change="onchange_payment_term_date_invoice(payment_term, date_invoice)" />
<field name="reference" select="1"/>
<field name="origin"/>
<field name="address_contact_id" domain="[('partner_id','=',partner_id)]" colspan="4"/>
<field name="partner_ref"/>
<field name="partner_contact"/>
<field name="move_id"/>
<field name="date_invoice" select="1"/>
<field name="date_invoice" on_change="onchange_payment_term_date_invoice(payment_term, date_invoice)" select="1"/>
<field name="period_id"/><label string="(keep empty to use the current period)" align="0.0" colspan="2"/>
<newline/>
<field name="comment" colspan="4"/>
@ -222,7 +222,7 @@
<field name="account_id" domain="[('type','&lt;&gt;','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" />
<field name="payment_term" on_change="onchange_payment_term(payment_term)" />
<field name="payment_term" on_change="onchange_payment_term_date_invoice(payment_term, date_invoice)" />
<field name="date_due" select="1"/>
<field name="journal_id" select="1"/>
@ -255,7 +255,7 @@
<field name="partner_ref"/>
<field name="partner_contact"/>
<field name="move_id"/>
<field name="date_invoice" select="1"/>
<field name="date_invoice" on_change="onchange_payment_term_date_invoice(payment_term, date_invoice)" select="1"/>
<field name="period_id"/><label string="(keep empty to use the current period)" align="0.0" colspan="2"/>
<newline/>
<field name="comment" colspan="4"/>

View File

@ -194,18 +194,15 @@ class account_invoice(osv.osv):
def onchange_currency_id(self, cr, uid, ids, curr_id):
return {}
def onchange_payment_term(self, cr, uid, ids, payment_term_id):
def onchange_payment_term_date_invoice(self, cr, uid, ids, payment_term_id, date_invoice):
if not payment_term_id:
return {}
res={}
pt_obj= self.pool.get('account.payment.term')
if ids :
invoice= self.pool.get('account.invoice').browse(cr, uid, ids)[0]
date_invoice= invoice.date_invoice
else:
if not date_invoice :
date_invoice= time.strftime('%Y-%m-%d')
pterm_list= pt_obj.compute(cr, uid, payment_term_id, value=1, date_ref=date_invoice)
if pterm_list:
@ -213,10 +210,8 @@ class account_invoice(osv.osv):
pterm_list.sort()
res= {'value':{'date_due': pterm_list[-1]}}
return res
# go from canceled state to draft state
def action_cancel_draft(self, cr, uid, ids, *args):
self.write(cr, uid, ids, {'state':'draft'})