Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
5744 Vistas

I created a module that depends on sale, and now I want to use fields of this module in sales order view and may be invoices too. How can i do that please help.

Avatar
Descartar
Mejor respuesta

I suppose you inherit the sale object, do you know that you have 2 kinds of inheritance? With the first one the parent could access to the fields, methods... and with the second one, the parent couldn't.

1st kind of inheritance (From OpenERP Doc):

There are two possible ways to do this kind of inheritance. Both ways result in a new class of data, which holds parent fields and behaviour as well as additional fields and behaviour, but they differ in heavy programatical consequences.

While Example 1 creates a new subclass “custom_material” that may be “seen” or “used” by any view or tree which handles “network.material”, this will not be the case for Example 2.

This is due to the table (other.material) the new subclass is operating on, which will never be recognized by previous “network.material” views or trees.

Example 1:

class custom_material(osv.osv): _name = 'network.material' _inherit = 'network.material' _columns = { 'manuf_warranty': fields.boolean('Manufacturer warranty?'), } _defaults = { 'manuf_warranty': lambda *a: False, } custom_material()

Avatar
Descartar
Autor

please tell me about the first one

Autor

my module also inherits res.partner and i created my module as customers if i inherit sale.order too and create a new record sale.order.form.inherit in view.xml then i get this error: View error

Can't find field 'category' in the following view parts composing the view of object model 'sale.order': * sale.order.tree.inherit

Either you wrongly customized this view, or some modules bringing those views are not compatible with your current data model

You can see it above in my answer.

Mejor respuesta

its depend on your field definition, what are you try to do.

Avatar
Descartar
Autor

I tried adding my module fields in sale.py file but it gives error and the module cannot be loaded then. I inherited sale.order, do i need to inherit sale itself?

yes you have to inherit sale

Publicaciones relacionadas Respuestas Vistas Actividad
1
mar 15
4701
1
abr 24
1321
3
abr 19
3339
1
mar 15
9089
1
ene 24
1234