【发布时间】:2019-11-06 07:50:59
【问题描述】:
我想每周一上午 10 点发送自动电子邮件报告,但以下代码不起作用。它每 1 小时后每周触发一次。请帮助
下面是我写的代码。
def send_daily():
'''Check reports to be sent daily'''
current_day = calendar.day_name[now_datetime().weekday()]
now = frappe.utils.now_datetime()
current_time = now.strftime("%H")
enabled_reports = frappe.get_all('Auto Email Report',
filters={'enabled': 1, 'frequency': ('in', ('Daily', 'Weekdays', 'Weekly'))})
for report in enabled_reports:
auto_email_report = frappe.get_doc('Auto Email Report', report.name)
# if not correct weekday, skip
if auto_email_report.frequency == "Weekdays":
if current_day in ("Saturday", "Sunday"):
continue
elif auto_email_report.frequency == 'Weekly':
if auto_email_report.day_of_week != current_day:
if auto_email_report.schedule_time != current_time:
continue
elif auto_email_report.frequency == "Daily":
if auto_email_report.schedule_time != current_time:
continue
auto_email_report.send()
我希望每周一每周一上午 10 点触发电子邮件。
【问题讨论】:
-
格式代码。当前版本无用。投反对票。
标签: python python-3.x