我正在查看股票记录模型here的代码,并且在注释中说的num_allocated字段上方,
#: The amount of stock allocated to orders but not fed back to the master
#: stock system. A typical stock update process will set the num_in_stock
#: variable to a new value and reset num_allocated to zero
因此,当产品缺货时,如何按照注释中的说明进行库存更新过程?我需要将num_in_stock变量设置为新值,并将num_allocated设置为零。
到目前为止,如果要运送订单,我将在EventHandler类中调用consumer_stock_allocations()方法,并减少订单中产品的库存数量。
如果有人实现了此功能,请分享一些代码或示例,因为我是奥斯卡新手。
答案 0 :(得分:2)
对于num_allocated
,最常见的解决方法是在下达或取消订单时消耗(consume_stock_allocations()
)或取消(cancel_stock_allocations()
)分配。在您正在执行的运送事件处理程序中执行此操作非常好。
这将清除分配,并将num_in_stock
减少与分配相同的数量(用于消费,而不是取消)-即,您无需进行任何其他操作来调整num_in_stock
。 / p>
您需要做的就是在有新库存到达时等num_in_stock
进行更新。如何执行此操作实际上取决于您在网站上管理库存的方式-例如,如果您要从第三者中获取库存信息,一方的ERP系统,那么您每次与ERP同步时都将重置num_in_stock
。如果您是手动管理库存,则只需从信息中心进行更新。