Odoo Help

0

1
1 Answer
2
Avatar

Mitul Shingala

--Mitul Shingala--

2849
| 6 4 9
Rajkot, 印度
--Mitul Shingala--

Odoo Developer

Mitul Shingala
2019/2/14 上午1:36

Hello

You have do code like..

XML: add button for send the mail 

         <button name="btn_send_mail" string="Send Mail" type="object"/>

Python: 

    @api.multi
    def btn_send_mail(self):
        template_id = self.env.ref('module_name.email_template_xml_id').id
        compose_form_id = self.env.ref('mail.email_compose_message_wizard_form').id
        ctx = {
            'default_model': 'your_object',
            'default_res_id': self.id,
            'default_use_template': bool(template_id),
            'default_template_id': template_id,
            'default_composition_mode': 'comment',
            'custom_layout': "mail.mail_notification_paynow",
            'force_email': True
        }
        return {
            'type': 'ir.actions.act_window',
            'view_type': 'form',
            'view_mode': 'form',
            'res_model': 'mail.compose.message',
            'views': [(compose_form_id, 'form')],
            'view_id': compose_form_id,
            'target': 'new',
            'context': ctx,
        }
5 Comments
Bhuwan Khadka
2019/2/14 上午2:14

Thank You very much, It is working fine with me.

Bhuwan Khadka
2019/2/14 上午4:03

The pop work fine but it cann't be sent.

Achu
2019/2/14 上午6:49

Yes,But the email is not send...

Mitul Shingala
2019/2/14 上午7:25

what the issue are you facing ? can you please paste here.

Bhuwan Khadka
2019/2/15 上午12:05

I have corrected my code, now I can send email too.

Here is the code.

'depends' :['base', 'sale']

@api.multi

def send_mail_template(self):

self.ensure_one()

ir_model_data = self.env['ir.model.data']

try:

template_id = ir_model_data.get_object_reference('your_module_name', 'Your Template Name')[1]

except ValueError:

template_id = False

try:

compose_form_id = ir_model_data.get_object_reference('mail', 'email_compose_message_wizard_form')[1]

except ValueError:

compose_form_id = False

ctx = {

'default_model': 'bhuwan.khadka',

'default_res_id': self.ids[0],

'default_use_template': bool(template_id),

'default_template_id': template_id,

'default_composition_mode': 'comment',

'mark_so_as_sent': True,

'force_email': True

}

return{

'type': 'ir.actions.act_window',

'view_type': 'form',

'view_mode': 'form',

'res_model': 'mail.compose.message',

'views': [(compose_form_id, 'form')],

'views_id': compose_form_id,

'target': 'new',

'context': ctx,

}

Thank you for your help. I learned a lot from your code.

Ask a Question
Writer
Keep Informed
1 follower(s)
About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

Register