İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
2439 Görünümler

I have created the following column in the sale.order.line:


class SaleOrderLine(models.Model):

    _inherit = 'sale.order.line'


    x_studio_roles = fields.Float(

        string="Roles",

        store=True,

        readonly=False, 

        required=False

    )

I have created the same column in the stock.move:

class StockMove(models.Model):

    _inherit = "stock.move"


    x_studio_roles = fields.Float(

        string="Roles",      

        store=True,

        readonly=False, 

        required=False

    )

How can I now transfer the value from sale.order.line to stock.move?

Avatar
Vazgeç
En İyi Yanıt

If you just want to have the same value from Sale Order Line in Stock Move, you should slightly modify your field definition in your stock.move inherit.

The module sale_stock introduces a new field, sale_line_id.

So, given dependencies add up, you can simply go for

class StockMove(models.Model):
    _inherit = 'stock.move'

    x_studio_roles = fields.Float(related='sale_line_id.x_studio_roles', readonly=False)


This defines a direct relationship between those two fields, see also https://www.odoo.com/documentation/16.0/developer/reference/backend/orm.html#reference-fields-related

Note that editing x_studio_roles on Stock Move now also changes the value in Sale Order Line.

If you don't want that, you can go for a "computed field" - which would allow you to set it only initially when the Stock Move is created and you then could check whether this field is set already and prevent further updates to it. What and how to apply this highly depends on what you would like to achieve at the end. For details about computed fields see https://www.odoo.com/documentation/16.0/developer/reference/backend/orm.html#computed-fields

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Ağu 25
2398
Stock update Çözüldü
1
Ara 24
8264
0
Oca 22
3950
1
Mar 15
7844
0
Mar 15
4770