如何处理Odoo 15上的'stock.immediate.transfer'记录?



我最近从Odoo 13换到了Odoo 15。使用Odoo 13,我可以使用处理"库存拣选">

models.execute_kw(db, uid, password, 'stock.immediate.transfer',
'create',
({'pick_ids': [pickid]})
)

models.execute_kw(db, uid, password, 'stock.immediate.transfer', 'process',
[createdid], {})

然而,现在使用Odoo 15,运行相同的流程处理并返回True,但选股记录没有关闭。我看了一下文件,但没有看到任何关于如何处理立即转账的信息。

流程函数已经更改,现在它准备选股,然后再次调用button_validate函数来处理转账,为此,它将首先检查上下文中是否传递了button_validate_picking_ids。

请注意,即使函数再次调用button_validate函数,它也会返回True,如果在调用process函数后手动调用button_validate,则传输将被处理并传递到done状态。

models.execute_kw(db, uid, password, 'stock.picking', 'button_validate', [picking_ids])

您可以复制相同的逻辑来处理传输(将上下文传递给向导process函数(:

action = models.execute_kw(db, uid, password, 'stock.picking', 'button_validate', [picking_ids])
values = {'pick_ids': [(6, 0, picking_ids)], 
'immediate_transfer_line_ids': [(0, 0, {'to_immediate': True, 'picking_id': pick_id}) for pick_id in picking_ids]}
transfer_id = models.execute_kw(db, uid, password, 'stock.immediate.transfer', 'create', [values])
models.execute_kw(db, uid, password, 'stock.immediate.transfer', 'process', [transfer_id], {'context': action['context']})

相关内容

  • 没有找到相关文章

最新更新