2014-02-04 Moises Escusa <[email protected]>:
> Hola Guillem:
>
> De la manera correcta sería así:
>
> work.py # Te pongo la función original.
>
> def _group_lines_to_invoice_key(self, line):
> "The key to group lines"
> return (('product', line['product']),
> ('unit_price', line['unit_price']),
> ('description', line['description']))
>
> .py # Función de la clase que hereda (Aqui he provado varias cosas, como
> poner super(etc...) y no me modifica la original
> def _group_lines_to_invoice_key(self, line):
> "The key to group lines"
> return (('product', line['product']),
> ('unit_price', line['unit_price']),
> ('description', 'descripción modificada manualmente'))
>
> __init__.py # de la clase derivada
> from trytond.pool import Pool
> from .project_change_invoice import *
>
>
> def register():
> Pool.register(
> ProjectChangeInvoice,
>
Hola Moises, perdona que mi intrusión. Creo que no estás heredando de la
clase que corresponde, o por lo menos, que no lo estás haciendo
correctamente. En tus mensajes no he conseguido encontrar la clase que
contiene el método que quieres sobrecargar. Deberías heredar primero la
clase, y dentro de la misma, sobrecargar el método. Algo así:
class Work:
__name__ = 'project.work'
def _group_lines_to_invoice_key(self, line):
res = super(Work, self)._group_lines_to_invoice_key(line)
<tu código>
return res
Y en el fichero __init__.py registrar Work en lugar de ProjectChangeInvoice.
module='project_change_invoice', type_='model')
>
> tryton.cfg # de la clase derivada
> [tryton]
> version=3.0.0
> depends:
> ir
> project
> xml:
> project_change_invoice.xml
>
>
> Gracias.
>
>
> <http://www.calidae.net>
> Sistemes i Xarxes Inf. Calidae, S.L.
> www.calidae.com <http://www.calidae.net/>
> tel +34 938654433 fax +34 938651973
> C/ Font i Boet, 10
> 08140 - Caldes de Montbui
>
> Aquest correu és confidencial, llegiu-ne l' advertiment
> legal<http://www.calidae.net/disclaimer/>
> Este correo es confidencial, lea la advertencia
> legal<http://www.calidae.net/disclaimer/>
> This is a confidential email, please read the legal
> disclaimer<http://www.calidae.net/disclaimer/>
>
--
Jesús Martín
Zikzakmedia SL
Dr. Fleming, 28, baixos
08720 Vilafranca del Penedès
☏ 93 890 21 08