Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
2 Trả lời
2138 Lượt xem

I have create a template to send payslip email to employee , it woeks when sending one by one but I want to send it to all employee in one shot here is my function:

class sendemail(models.Model):
_inherit = 'hr.payslip'
_description = 'to send email to employee'

def sendemail(self):
template_id=self.env.ref('salary_reports.payslip_email').id
self.env['mail.template'].browse(template_id).send_mail(self.id, force_send=True)

noupdate="1">
id="payslip_email" model="mail.template">
name="name">employee: Send by email
name="model_id" ref="hr_payroll_community.model_hr_payslip"/>
name="email_from">mgstar091@gmail.com
name="email_to">${object.employee_id.work_email}
name="subject">قسيمة مرتب
name="body_html" type="html">
style="margin: 0px; padding: 0px;">

style="margin: 0px; padding: 0px; font-size: 13px;">
${object.employee_id.name}/ السيد



نحسل إليكم مرتب شهر
${object.date_to}




تقبل تحياتي




name="report_template" ref="your_report_id"/>
name="report_name">nothing



it gives me this error 

ValueError: : "Expected singleton: hr.payslip(11, 13)" while evaluating
'records.sendemail()


Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi Mokhtar,

You need to just take a loop as you are use the records . try with this code. 


    def sendemail(self):
template_id=self.env.ref('salary_reports.payslip_email').id
for rec in self:
self.env['mail.template'].browse(template_id).send_mail(rec.id, force_send=True)



Hope It will help you.
Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

thank you sir, it works 

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 8 24
5125
0
thg 1 22
465
3
thg 11 21
3742
4
thg 12 24
18015
1
thg 10 21
9404