Hello
Here my code :
partner_id = self.env['res.partner'].browse([vals['partner_id']]) # Get partner form url base_url = self.env['ir.config_parameter'].sudo().get_param('web.base.url') url = f"{base_url}/web#id={vals['partner_id']}&action=77&model=res.partner&view_type=form&cids=3&menu_id=68" \ if base_url else "#" # Get template and change body template_id = self.env['mail.template'].browse([int(mail_template_id)]) body = template_id.body_html if "%nomoperateur" not in body or "%nomclient" not in body or "%lien-fiche-contact-client" not in body: raise ValidationError( "Il est impossible d'utiliser le modèle d'email configuré dans l'état car " "il manque une ou plusieurs informations :\n" "%nomoperateur ou %nomclient ou %lien-fiche-contact-client" ) # Update body body = body.replace('%nomoperateur', user_id.name) body = body.replace('%nomclient', partner_id.name) body = body.replace('%lien-fiche-contact-client', url) # Prepare email data email_values = { 'email_from': user_id.name, 'email_to': email_to, 'email_cc': user_id.partner_id.email, 'subject': template_id.subject, 'body_html': body, } # Send mail mail_id = self.env['mail.mail'].create(email_values) mail_id.send()
This URL works as long as we are on this basis. However, it may no longer work in the event of a database change because identifiers are written in hard. Do you have a solution ?
Thanks !