← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 704922] Re: Trigger on store function field doesn't work in inherits object

 

Hi Albert,


Your fix seems to make things right on the modification of an inherited object. Like:

Modifying hr.analytic.timesheet values, trigger right the function field
defined on account.analytic.line.

But unfortunately, this work only on modification. Creating an
hr.analytic.timesheet still don't trigger the function field of
account.analytic.line :(

Anyway, thanks to solve half of it !

Regards,

Joël

-- 
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to the OpenERP Project Group.
https://bugs.launchpad.net/bugs/704922

Title:
  Trigger on store function field doesn't work in inherits object

Status in OpenERP Server:
  Confirmed

Bug description:
  Hi,

  
  This is a quite complex one affecting last v6.0 :( Also to explain, I'll try...

  Situation :

  - Add a store field on account.analytic.line with the following:

  'aa_currency_id': fields.function(_get_account_currency, method=True, type='many2one', relation='res.currency', string='Account currency',
                    store={
                        'account.analytic.account': (_get_account_line, ['company_id'], 50),
                        'account.analytic.line': (lambda self,cr,uid,ids,c={}: ids, ['amount','unit_amount'],10),
                    },
                    help="The related analytic account currency."),

  - This will trigger any modifications done on the related analytic
  account or in the amount or unit_amount field of analytic lines. When
  the trigger is trigged, the value of aa_curency_id is re-computed by
  _get_account_currency.

  This works perfectly as expected, the trigger works. But then you
  install hr_timesheet module which inherits account.analytic.line and
  try to change something in the hr.analytic.timesheet, the trigger on
  the account.analytic.line isn't trigged !!!

  You can find a working example in the c2c_multicost_base module of
  extra-addons for v 5.0, in v5.0 this works perfectly. Changing the
  hr.analytic.timesheet will trig the account.analytic.line.

  I expect this to work also n v 6.0. A trigger put on an object A
  should be trigged also when an inherits object B change some values in
  the inherited object A.

  Thanks to have a look, this sould be very important I think.

  Regards,

  Joël



References