콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
1 회신
1712 화면

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?

아바타
취소
베스트 답변

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

아바타
취소
관련 게시물 답글 화면 활동
2
8월 25
1892
Stock update 해결 완료
1
12월 24
4649
0
1월 22
3598
1
3월 15
7450
0
3월 15
4428