Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami
Ricordati di dichiarare la versione di Odoo a cui riferisce la domanda
  • Pagina:
  • 1
  • 2

ARGOMENTO: template di email non trovato

template di email non trovato 1 Anno 8 Mesi fa #28583

  • ndrini
  • Avatar di ndrini
  • Offline
  • Gold Boarder
  • Messaggi: 291
  • Ringraziamenti ricevuti 22
  • Karma: 0
Nella v8,
al fine di inviare, dalla scheda del contratto, al cliente una email con il contratto stesso,
ho preparato un modello di email, un button ed un metodo.


Il modello di email
        <record id="contract_email_template" model="email.template">
            <field name="name">Contract sent by e-mail template</field>
            <field name="email_from">${object.company_id and object.company_id.email or ''}</field>
            <field name="subject">Your contract ${object.name}</field>
            <field name="email_to">${object.email|safe}</field>
            <field name="lang">${object.lang}</field>
            
            <field name="model_id" ref="analytic.model_account_analytic_account"/>

            <field name="auto_delete" eval="True"/>
            <field name="body_html">
                <![CDATA[
                    Hi ${(object.partner_id.name)}, <br/><br/>
                        here's your contract. 

                        Enjoy. 
                        <br/>
                     ${(object.company_id.name)}

                ]]>
            </field>
        </record>

un button
<?xml version="1.0" encoding="UTF-8"?>
<openerp>
    <data>

    	<record id="view_account_analytic_send_email_with_contract" model="ir.ui.view">
            <field name="name">analytic.analytic.account.form.send_contract</field>
            <field name="model">account.analytic.account</field>
            <field name="inherit_id" ref="analytic.view_account_analytic_account_form"/>
            <field name="arch" type="xml">
                <xpath expr="//form/sheet/div" position="inside"> 
                    <button name="send_email_with_contract" type="object" string="Sent the contract" class="oe_highlight"/>
                </xpath>
            </field>
        </record>
    </data>
</openerp>

un metodo
# -*- coding: utf-8 -*-
from openerp import models, fields, api

class res_partner(models.Model):
    _inherit = 'account.analytic.account'

    @api.multi
    def send_email_with_contract(self):
        '''
        This function opens a window to compose an email, with the template message loaded by default
        '''
        self.ensure_one()
        ir_model_data = self.env['ir.model.data']
        try:
            compose_form_id = ir_model_data.get_object_reference('mail', 'email_compose_message_wizard_form')[1]
        except ValueError:
            compose_form_id = False

        # In Odoo 9 'mail.template'
        template_id = self.env['email.template'].search([('name', '=', 'Contract send by e-mail template')], limit=1)
        # template_id = self.env['email.template'].search([('name', '=', 'Invoice - Send by Email')], limit=1)
        ctx = dict()
        ctx.update({
            'default_model': 'res.partner',
            'default_res_id': False,
            'default_use_template': True,
            'default_template_id': template_id.id or False,
            'default_composition_mode': 'comment',
            'skip_notification': 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,
            }


Ora, di tutto questo codice il problema pare stare in
template_id = self.env.search([('name', '=', 'Contract send by e-mail template')], limit=1)

perché non trova il template dell'email, ed apre una schermata per l'invio, ma vuota.

Il mio template Contract send by e-mail template lo trovo fra i modelli possibili, in odoo, quindi, non capisco perché non lo trovi...

:(

Andrea
Ultima modifica: 1 Anno 8 Mesi fa da ndrini.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

template di email non trovato 1 Anno 8 Mesi fa #28585

  • ndrini
  • Avatar di ndrini
  • Offline
  • Gold Boarder
  • Messaggi: 291
  • Ringraziamenti ricevuti 22
  • Karma: 0
Il modulo, per chi lo volesse vedere, è in
github.com/ndrini/send_email_automatical..._email_automatically

Andrea
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

template di email non trovato 1 Anno 8 Mesi fa #28587

  • G.Conte
  • Avatar di G.Conte
  • Offline
  • Platinum Boarder
  • Messaggi: 344
  • Ringraziamenti ricevuti 40
  • Karma: 0
Ciao io uso questo metodo far l'invio dell'email:
@api.multi
    def send_solution(self):
        self.ensure_one()
        ir_model_data = self.env['ir.model.data']
        try:
            template_id = ir_model_data.get_object_reference('nome_del_tuo_modulo',
                                                             'nome_del_tuo_template')[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 = dict(self.env.context or {})
        ctx.update({
            'default_model': 'model.di.dove.si.trova.il.button.per.l'invio.mail',
            'default_res_id': self.ids[0],
            'default_use_template': bool(template_id),
            'default_template_id': template_id,
            'default_composition_mode': 'comment',
        })
        return {
            'name': ('Compose Email'),
            '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,
        }

Prova e fammi sapere se ti funziona
Dinamiche Aziendali
www.dinamicheaziendali.it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
Ringraziano per il messaggio: ndrini

template di email non trovato 1 Anno 8 Mesi fa #28591

  • ndrini
  • Avatar di ndrini
  • Offline
  • Gold Boarder
  • Messaggi: 291
  • Ringraziamenti ricevuti 22
  • Karma: 0
G.Conte ha scritto:
Ciao io uso questo metodo far l'invio dell'email:
Prova e fammi sapere se ti funziona
Sicuramente!!
Grazie.
Andrea
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

template di email non trovato 1 Anno 8 Mesi fa #28592

  • ndrini
  • Avatar di ndrini
  • Offline
  • Gold Boarder
  • Messaggi: 291
  • Ringraziamenti ricevuti 22
  • Karma: 0
Riesce la selezione del template, ma il corpo del messaggio è vuoto.
Penso sia un problema che non l'ho ancora tradotto in spagnolo...

Ma mi hai messo sulla buona strada!!!

Oltre a questo devo dire "invia a chi è il sottoscrittore del contratto" ed altre cosette (come allegare il contratto stesso :-P) .

Grazie ancora.
Andrea
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

template di email non trovato 1 Anno 8 Mesi fa #28611

  • G.Conte
  • Avatar di G.Conte
  • Offline
  • Platinum Boarder
  • Messaggi: 344
  • Ringraziamenti ricevuti 40
  • Karma: 0
Non so perchè ti esce vuoto,

Comunque la riga per dire 'invia a' è
'<field name="email_to">${object.campo_partner.email|safe}</field>'

Mentre per allegare il report:
<field name="report_template" ref="custom_report_purchase_order"/>
Dove il ref sta per l'id del report da allegare.
Dinamiche Aziendali
www.dinamicheaziendali.it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
  • Pagina:
  • 1
  • 2
Tempo creazione pagina: 0.140 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam