다음 코드가 있습니다. 스케줄러가 실행될 때 오류 메시지가 나타납니다. 어떤 사람은, 코드 액세스하려는 문서의Odoo 예약 된 메일을 보내기 위해 cron 작업을 실행하는 동안 누락 된 오류
MissingError 하나 삭제 된에 오류를 해결 상쾌한 후 다시 시도하십시오하는 데 도움이.
def send_followup_mail(self, cr, uid, context=None):
quot_ids=self.search(cr, uid, [('state','=','amend_quote')])
for quot_id in quot_ids:
if quot_id:
quot_obj=self.browse(cr, uid, quot_id ,context=context)
quotation_since=quot_obj.quotation_since
for email_template_line in quot_obj.temp_tag_id.crm_campaign_id.email_template_ids:
if quotation_since==email_template_line.delay_days:
mail_pool = self.pool.get('mail.mail')
mail_id = self.pool.get('email.template').send_mail(cr, uid, email_template_line.id, 1, force_send=True, context=context)
if email_template_line.send_mail_to=='to_client':
mail_pool.write(cr, uid, mail_id, {'email_to':quot_obj.email_from}, context=context)
elif email_template_line.send_mail_to=='to_sale_rep':
mail_pool.write(cr, uid, mail_id, {'email_to':quot_obj.sale_rep_id.email}, context=context)
if mail_id:
mail_pool.send(cr, uid, mail_id, context=context)
self.write(cr, uid, quot_id,{'quotation_since':quotation_since+1}, context=None)
return True
Odoo에서 오류 메시지로받은 것이 전부입니까? 코드의 일부에서 사용하려는 일부 레코드가 더 이상 데이터베이스에없는 것으로 보입니다. – CZoellner
send_mail (cr, uid, email_template_line.id, 1, force_send = True, context = context) – sfx
해당 매개 변수의' 1'은 Odoo에게 템플릿에서 정의 된 모델의 ID 1을 사용하여 값 식에 사용하도록 지시합니다. 해당 모델의 ID 1이있는 레코드가 데이터베이스에없는 것으로 보입니다. 어쨌든 그 매개 변수가 1로 설정된 이유는 무엇입니까? 'quot_id'하지 않아야합니까? – CZoellner