c2c-oerpscenario team mailing list archive
-
c2c-oerpscenario team
-
Mailing list archive
-
Message #13484
[Bug 704922] Re: Trigger on store function field doesn't work in inherits object
Hi,
First of all thank you to have a look on that one ! I just updated to
today version and it seems I always have this trouble... According to my
test case:
1) Install basic OpenERP with analytic_multicurrency, hr_timesheet &
hr_timesheet_sheet
2) Create a line from menu : Accounting -> Journal Entries -> Analytic
Journal Items => You can see the second "Amount Currency" in form view
computed right (in my case 10 hours at 30 EUR = 300 EUR).
3) The same but from menu : Human Ressources -> Time Tracking -> Working
Hours => You can also see the second "Amount Currency computed right.
4) When you try from Human Ressources -> Time Tracking -> My Timesheet
and encode a line here, everything is fine unless you check that line
from the menu of point 2).
So if you take the menu described in 2) to verify the line entered from
"My Timesheet", you'll see the "Amount Currency" function field empty :(
This is may be because of 2 inherit : first one hr.analytic.line
inherits account.analytic.line. And in hr_timesheet_sheet, you inherit
hr.analytic.line once more... But well, even looking at the code
closely, I cannot understand that...
Hope this help.
Regards,
Joël
** Changed in: openobject-server
Status: Incomplete => New
--
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:
New
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