首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >过滤库存移动和退货订单

问过滤库存移动和退货订单
EN

Stack Overflow用户
提问于 2018-11-16 00:20:29
回答 1查看 35关注 0票数 1

我想在树形视图中进行过滤,以便在这些拾取中有stock.pickings和一些stock.moves处于“已分配”状态。

我创建了计算的选择字段和fnct_search方法,但它甚至没有被触发。我的代码出了什么问题?和逻辑。

代码语言:javascript
复制
picking_id_states = fields.Selection([
        ('draft', 'Draft'), ('cancel', 'Cancelled'),
        ('waiting', 'Waiting Another Operation'),
        ('confirmed', 'Waiting Availability'),
        ('partially_available', 'Partially Available'),
        ('assigned', 'Available'), ('done', 'Done')], compute='compute_picking_state', string='Picking State',
        fnct_search='_move_search', store=False, copy=False, index=True, readonly=True)

def _move_search(self, operator, value):
    print "test"
    for so in self:
        moves = so.picking_ids.mapped('move_lines')
        filtered_moves = moves.filtered(lambda l: l.state == 'assigned')
        if filtered_moves:
            so_ids = filtered_moves.mapped('picking_id.sale_id')
            return [('id', 'in', so_ids)]

@api.depends('order_line.move_ids', 'order_line.move_ids.state')
    def compute_picking_state(self):
        for order in self:
            for picking in order.picking_ids:
                order.picking_id_state = picking.state

XML代码是

代码语言:javascript
复制
<record id="view_sale_order_search_picking_state" model="ir.ui.view">
        <field name="name">Config Hetlta picking state</field>
        <field name="model">sale.order</field>
        <field name="inherit_id" ref="sale.view_sales_order_filter" />
        <field name="arch" type="xml">
            <field name="user_id" position="after">
                <field name="picking_id_state"/>
                <field name="note"/>
            </field>
            <filter name="sales" position="after">
                <filter string="Picking state" name="picking_id_states" />
            </filter>
        </field>
    </record>
EN

回答 1

Stack Overflow用户

发布于 2018-11-16 16:13:55

计算字段搜索方法中的self始终为空,没有记录集。您必须获取运算符和值(搜索项),并创建自己的订单ids的“间接”搜索。

但一种可能更简单的方法是只存储计算字段。Odoo只能按数据库持久字段进行搜索,这些字段在存储时会给出。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53323727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档