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/

Attachment: pgpYRf_EO7LYu.pgp
Description: PGP signature

Reply via email to