Hola Luis

El 17 de enero de 2014, 18:36, Luis Martinez <
[email protected]> escribió:

> Gracias por responder Sebastián.
>
> Ya habia localizado el ejemplo, pero no soy programador asi que batallo.
>
> Lo que quiero lograr es que en un reporte del módulo de ventas pueda
> incluir el número de paciente.  Lo que hice por un lado fué en el archivo
> sale.py incluí lo que está en negrita:
>
> from trytond.pool import *Pool*, PoolMeta
> *from trytond.report import Report*
>
> __all__ = ['Sale', 'SaleInvoice', 'SaleIgnoredInvoice',
> 'SaleRecreatedInvoice',
>     'SaleLine', 'SaleLineTax', 'SaleLineIgnoredMove',
>     'SaleLineRecreatedMove', 'SaleReport', 'Template', 'Product',
>     'ShipmentOut', 'ShipmentOutReturn', 'Move', 'OpenCustomer',
>     'HandleShipmentExceptionAsk', 'HandleShipmentException',
>     'HandleInvoiceExceptionAsk', 'HandleInvoiceException',
>     'ReturnSale', *'PatientSale']*
> __metaclass__ = PoolMeta
>
>
>
>
>
>
>
>
>
>
>
>
> *class PatientSale(Report):    __name__ = 'gnuhealth.patient'    def
> parse(self, report, objects, datas, localcontext):        patient_obj =
> Pool().get('gnuhealth.patient')        patient = False        if
> Transaction().context.get('patient'):            patient =
> patient_obj.browse(Transaction().context['patient'])
> localcontext['patient'] = patient        return super(PatientSale,
> self).parse(report, objects, datas,
> localcontext)PatientSale()*
>
> y en el archivo de sale.odt agregué un placeholder con este valor
> *patient.identification_code* (esperando que me traiga el número del
> paciente) pero me marcar error, ni siquiera me abre el reporte.
>
> Abusando podrías decirme que tengo que cambiar del código y mejor aún si
> me dices que es lo que hace cada línea del código?
>

La clase que hereda de Report no puede llamarse  'gnuhealth.patient'
*__name__ = 'gnuhealth.patient'*

ese es el modelo ya usado para los pacientes. Tienes que llamarla
'patient.sale.report' o como quieras y en el xml donde declaras el
ir.action.report, pones ese nombre en el tag report_name:
            <field name="report_name">patient.sale.report</field>

Saludos

Sebastián Marró
Thymbra

Responder a