跳至内容
菜单
此问题已终结
2 回复
2172 查看

Hi,


In Odoo online, how can I set the purchase order lines to default to the analytic account in purchase order header (custom field already created)? I have tried to set the context on the order lines in the form view but it is not working. Thanks!

形象
丢弃
编写者 最佳答案

Hi,

Thanks for response. Is it possible to do it in Odoo online, e.g. via automated action which triggers on UI change?

形象
丢弃

I am not sure about that. We encountered a similar requirement and developed a custom module, which we then deployed to Odoo.sh

最佳答案
Model

# -*- coding: utf-8 -*-

from odoo import api, fields, models, _

class PurchaseOrderAnalyticAccount(models.Model):
    _name = 'purchase.order'
    _inherit = ['purchase.order','analytic.mixin']


class PurchaseOrderLineAnalyticAccount(models.Model):
    _inherit = 'purchase.order.line'
   
   
    @api.depends('product_id', 'order_id.partner_id','order_id.picking_type_id.warehouse_id','order_id.analytic_distribution')
    def _compute_analytic_distribution(self):
        res = super(PurchaseOrderLineAnalyticAccount, self)._compute_analytic_distribution()
        for line in self:
            distribution = False
            if not line.display_type:
                if line.order_id.analytic_distribution:
                    distribution = line.order_id.analytic_distribution
                line.analytic_distribution = distribution or line.analytic_distribution
        return res

View


Output




形象
丢弃
相关帖文 回复 查看 活动
1
11月 22
5691
1
3月 15
4806
0
3月 15
4350
0
5月 25
878
1
4月 25
933