On 07 May 02:24, hendrik.brande...@googlemail.com wrote: > Hello, > > I have been successfully implemented a tryton 3.2 installation and have a > problem regarding the Record.expr_eval method of the client: If I use the > client out of the box without modifications, displaying our chart of > accounts takes a long time if we drill-down to level 4 or deeper. Used > chart of accounts is the german SKR03. > > After reading the source and perform some debugging sessions, I found out, > that the following part of the Record.expr_eval ( > http://hg.tryton.org/tryton/file/88501503f5b9/tryton/gui/window/view_form/model/record.py#l502 > > ) is responsible for the performance issue: > > ctx['context'].update(self.context_get()) > ctx.update(self.get_eval()) > > If I comment this lines out, the client reacts as desired. But: only for > the chart of accounts and for most of the list-views. All forms remains > read-only and are not usable. > > Is it possible, to give me a hint, how to resolve this issue? I try to get > the current view-state or make a flag, but both of them do not work as I > expected this.
I think we can not really improve those 2 lines because they are needed to get a correct context. But one thing, I already stated, is that the setter method of the columns [1] is called very often and this setter need to get the states of the field to make a proper rendering which leads to calling Record.expr_eval. Maybe [2] is a possible solution or we should cache the states on the cell but then the problem is invalidation of this cache (as usual). [1] http://www.pygtk.org/pygtk2reference/class-gtktreeviewcolumn.html#method-gtktreeviewcolumn--set-cell-data-func [2] https://bugs.tryton.org/issue1318 -- Cédric Krier - B2CK SPRL Email/Jabber: cedric.kr...@b2ck.com Tel: +32 472 54 46 59 Website: http://www.b2ck.com/
pgpYRf_EO7LYu.pgp
Description: PGP signature