This question has been flagged
1 Reply
2735 Views

I want to send daily manufacturing orders details to the manager via email. I had tried to acheive this by using email templates, it only generating report for only one manufacturing. Any good approach for this? 

Avatar
Discard
Author Best Answer

I have acheived it by attaching custom report consisting of all MOs with the email template 

 

 if matching_reports:
            report = ir_actions_report.browse(cr, uid, matching_reports[0])
            report_service = 'report.' + report.report_name
            service = netsvc.LocalService(report_service)
            (result, format) = service.create(cr, uid, mrp_ids, {'model': self._name}, context=context)
#             eval_context = {'time': time, 'object': self.pool.get('mrp.production')}

        if not report.attachment: # or not eval(report.attachment, eval_context)
              
            file_name = "dailyreport" #re.sub(r'[^a-zA-Z0-9_-]', '_', 'dailyreport')
            file_name += ".pdf"
            attachment_id = attachment_obj.create(cr, uid,
                                                  {
                                                   'name': file_name,
                                                   'datas': result,
                                                   'datas_fname': file_name,
#                                                    'res_model': 'email.template',
#                                                    'res_id': email.id,
                                                   'type': 'binary'
                                                   }, context=context)
          
        email_obj.write(cr, uid, template_id, {'email_from': email.email_from, 
                                               'email_to': email.email_to, 
                                               'subject': email.subject,
                                               'body_html':email.body_html,
                                               'email_recipients': email.email_recipients,
                                               'attachment_ids' : [(6,0, [attachment_id])],
                                               })

Avatar
Discard