python-3.x 如何在Odoo 17上使用Cron计划自动取消和重新创建销售订单?

snvhrwxg  于 12个月前  发布在  Python
关注(0)|答案(2)|浏览(394)

当我创建一个订单时,系统会创建一个对应的cron计划。如果10分钟后,订单没有变化,那么该cron计划将自动激活,并在完成计划后自动删除。请提出一些技术解决方案。
我在创建行后成功创建了一个cron计划,但是,我仍然不知道如何在完成计划后自动删除它。

ndasle7k

ndasle7k1#

您可以创建一个Cron作业,并将其安排为每10分钟运行一次。
Cron函数逻辑:
在Cron函数的Python代码中,搜索所有草拟销售订单记录,检查并比较它们的创建时间。如果时间差大于10分钟,则对该销售订单执行删除查询。
范例:

def delete_sale_orders(self):
    ten_minutes_ago = fields.Datetime.to_string(fields.Datetime.now() - timedelta(minutes=10))
    draft_orders = self.env['sale.order'].search([('state', '=', 'draft'), ('create_date', '<', ten_minutes_ago)])
    draft_orders.unlink()

字符串
希望这会有所帮助:)

3qpi33ja

3qpi33ja2#

答案将是一个有点广泛,但总结你需要做什么。
1.在你的文件中有了你的cron job(Python),你需要首先搜索或过滤你的报价。你可以用Python的datetime来做这件事,也就是过滤今天创建的报价。
1.如果不允许删除,请记住取消链接。
尝试:...除了:...

  1. Odoo确实有一个更改的日期字段,这将派上用场。
    希望这有帮助

相关问题