El 16/06/14 13:55, Jesús Martín Jiménez ha escrit:
El 13 de junio de 2014, 18:11, Sergi Almacellas Abellana
<[email protected] <mailto:[email protected]>> escribió:
El 13/06/14 17:38, Jesús Martín Jiménez ha escrit:
Hola,
El 13 de junio de 2014, 11:19, Raimon Esteve
<[email protected] <mailto:[email protected]>> escribió:
> 2. Módulo project_helpdesk: al abrir el módulo
"Proyectos->Soporte->Todos
> los soportes->Pestaña Todos los soporte", tenemos 1079
registros (1000 en la
> 1a página y 79 en la segunda), y tarda unos 27 segundos en
cargarla.
>
> No tengo este módulo instalado, però me parece una
barbaridad 27 segundos
> para cargar 1000 registros.
He refactorizado el código de los métodos get_num_attachments y
get_last_talk convirtiéndolos en métodos de clase (para que haga
menos llamadas en la vista de lista) y convirtiendo el segundo en
una consulta sql para mejorar el rendimiento. He subido los
cambios a la rama 3.2. Por favor, probadlo a ver que tal va ahora.
La segunda también se puede hacer con una consulta SQL:
select SUBSTRING(resource FROM STRPOS(resource, ',') +1), count(1)
from ir_attachment where resource in (resources) group by 1;
Me has liado ;) Pero la función STRPOS no está implementada en
python-sql y con la función SUBSTRING no he conseguido hacer una query
funcional, así que esa parte la he implementado en Python.
En python-sql puedes utilizar position :) Aquí tienes un ejemplo:
http://hg.tryton.org/trytond/file/5052bcaba02b/trytond/model/fields/reference.py#l129
y luego puedes hacer (esto también lo puedes hacer en la primera
consulta):
res.update(cursor.dictfetchall())
Para actualizar el diccionario directamente con los valores que te
devuelve la consulta.
Hecho también.
P.D: I para terminar de poner la guindilla en el pastel, ambas
consultas se pueden hacer con python-sql :)
Un día me explicas eso de la guindilla en el pastel :P
Esque en mi tierra a todo le ponemos picante :)
--
Sergi Almacellas Abellana
www.koolpi.com
Twitter: @pokoli_srk