[MIG][9.0] scheduler_error_mailer
OCA Transbot updated translations from Transifexpull/2602/head
parent
48da528422
commit
9d1e7a4f19
|
@ -0,0 +1,67 @@
|
||||||
|
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
|
||||||
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
||||||
|
:alt: License: AGPL-3
|
||||||
|
|
||||||
|
======================
|
||||||
|
Scheduler Error Mailer
|
||||||
|
======================
|
||||||
|
|
||||||
|
This module adds the possibility to send an e-mail when a scheduler raises
|
||||||
|
an error.
|
||||||
|
|
||||||
|
Configuration
|
||||||
|
=============
|
||||||
|
|
||||||
|
To configure this module, you need to:
|
||||||
|
|
||||||
|
#. Go to Settings -> Technical -> Automation -> Scheduled Actions
|
||||||
|
#. Choose the scheduled Actions you want to send the error email and select the E-mail Template in the Error E-mail Template field.
|
||||||
|
|
||||||
|
Usage
|
||||||
|
=====
|
||||||
|
|
||||||
|
To use this module, you need to:
|
||||||
|
|
||||||
|
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
|
||||||
|
:alt: Try me on Runbot
|
||||||
|
:target: https://runbot.odoo-community.org/runbot/149/9.0
|
||||||
|
|
||||||
|
Bug Tracker
|
||||||
|
===========
|
||||||
|
|
||||||
|
Bugs are tracked on `GitHub Issues
|
||||||
|
<https://github.com/OCA/server-tools/issues>`_. In case of trouble, please
|
||||||
|
check there if your issue has already been reported. If you spotted it first,
|
||||||
|
help us smashing it by providing a detailed and welcomed feedback.
|
||||||
|
|
||||||
|
Credits
|
||||||
|
=======
|
||||||
|
|
||||||
|
Images
|
||||||
|
------
|
||||||
|
|
||||||
|
* Odoo Community Association: `Icon <https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg>`_.
|
||||||
|
|
||||||
|
Contributors
|
||||||
|
------------
|
||||||
|
|
||||||
|
* Sébastien BEAU <sebastien.beau@akretion.com>
|
||||||
|
* David Beal <bealdavid@gmail.com>
|
||||||
|
* Alexis de Lattre <alexis.delattre@akretion.com>
|
||||||
|
* Sodexis <dev@sodexis.com>
|
||||||
|
|
||||||
|
|
||||||
|
Maintainer
|
||||||
|
----------
|
||||||
|
|
||||||
|
.. image:: https://odoo-community.org/logo.png
|
||||||
|
:alt: Odoo Community Association
|
||||||
|
:target: https://odoo-community.org
|
||||||
|
|
||||||
|
This module is maintained by the OCA.
|
||||||
|
|
||||||
|
OCA, or the Odoo Community Association, is a nonprofit organization whose
|
||||||
|
mission is to support the collaborative development of Odoo features and
|
||||||
|
promote its widespread use.
|
||||||
|
|
||||||
|
To contribute to this module, please visit https://odoo-community.org.
|
|
@ -1,24 +1,6 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
##############################################################################
|
# © 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
#
|
# © 2016 Sodexis
|
||||||
# Scheduler Error Mailer module for OpenERP
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
# Copyright (C) 2012-2013 Akretion (http://www.akretion.com/)
|
|
||||||
# @author: Sébastien Beau <sebastien.beau@akretion.com>
|
|
||||||
# @author Alexis de Lattre <alexis.delattre@akretion.com>
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU Affero General Public License as
|
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
|
||||||
# License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU Affero General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
##############################################################################
|
|
||||||
|
|
||||||
from . import ir_cron
|
from . import models
|
||||||
|
|
|
@ -1,48 +1,21 @@
|
||||||
# -*- encoding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
##############################################################################
|
# © 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
#
|
# © 2016 Sodexis
|
||||||
# Scheduler Error Mailer module for OpenERP
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
# Copyright (C) 2012-2013 Akretion (http://www.akretion.com/)
|
|
||||||
# @author: Sébastien Beau <sebastien.beau@akretion.com>
|
|
||||||
# @author David Beal <bealdavid@gmail.com>
|
|
||||||
# @author Alexis de Lattre <alexis.delattre@akretion.com>
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU Affero General Public License as
|
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
|
||||||
# License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU Affero General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
##############################################################################
|
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
'name': 'Scheduler Error Mailer',
|
'name': 'Scheduler Error Mailer',
|
||||||
'summary': 'Send an e-mail when a scheduler fails',
|
'version': '9.0.1.0.0',
|
||||||
'version': '8.0.1.0.0',
|
|
||||||
'category': 'Extra Tools',
|
'category': 'Extra Tools',
|
||||||
'license': 'AGPL-3',
|
'license': 'AGPL-3',
|
||||||
'description': """
|
'author': "Akretion,Sodexis,Odoo Community Association (OCA)",
|
||||||
Scheduler Error Mailer
|
|
||||||
======================
|
|
||||||
|
|
||||||
This module adds the possibility to send an e-mail when a scheduler raises
|
|
||||||
an error.""",
|
|
||||||
'author': "Akretion,Odoo Community Association (OCA)",
|
|
||||||
'website': 'http://www.akretion.com/',
|
'website': 'http://www.akretion.com/',
|
||||||
'depends': ['email_template'],
|
'depends': ['mail'],
|
||||||
'data': [
|
'data': [
|
||||||
'ir_cron.xml',
|
'data/ir_cron_email_tpl.xml',
|
||||||
'ir_cron_email_tpl.xml',
|
'views/ir_cron.xml',
|
||||||
],
|
],
|
||||||
'demo': ['ir_cron_demo.xml'],
|
'demo': ['demo/ir_cron_demo.xml'],
|
||||||
'images': ['images/scheduler_error_mailer.jpg'],
|
'images': ['images/scheduler_error_mailer.jpg'],
|
||||||
'installable': True,
|
'installable': True,
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,21 +1,24 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (C) 2012-2013 Akretion (http://www.akretion.com/)
|
scheduler_error_mailer for Odoo
|
||||||
|
Copyright (C) 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
|
Copyright (C) 2016 Sodexis
|
||||||
The licence is in the file __openerp__.py
|
The licence is in the file __openerp__.py
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<openerp>
|
<odoo>
|
||||||
<data noupdate="1">
|
<data noupdate="1">
|
||||||
|
|
||||||
<!-- Error Email template -->
|
<!-- Error Email template -->
|
||||||
<record id="scheduler_error_mailer" model="email.template">
|
<record id="scheduler_error_mailer" model="mail.template">
|
||||||
<field name="name">Scheduler Error</field>
|
<field name="name">Scheduler Error</field>
|
||||||
<field name="email_from">${object.user_id.user_email or ''}</field>
|
<field name="email_from">${object.user_id.email or ''}</field>
|
||||||
<field name="email_to">${object.user_id.user_email or ''}</field>
|
<field name="email_to">${object.user_id.email or ''}</field>
|
||||||
<field name="subject">[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED</field>
|
<field name="subject">[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED</field>
|
||||||
<field name="model_id" ref="base.model_ir_cron"/>
|
<field name="model_id" ref="base.model_ir_cron"/>
|
||||||
<field name="auto_delete" eval="True"/>
|
<field name="auto_delete" eval="True"/>
|
||||||
<field name="body_html"><![CDATA[
|
<field name="body_html">
|
||||||
|
<![CDATA[
|
||||||
<div style="font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; ">
|
<div style="font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; ">
|
||||||
|
|
||||||
<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>
|
<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>
|
||||||
|
@ -43,8 +46,9 @@ Automatic e-mail sent by OpenERP. Do not reply.<br/>
|
||||||
Database : ${ctx.get('dbname')}
|
Database : ${ctx.get('dbname')}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
]]></field>
|
]]>
|
||||||
</record>
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
</data>
|
</data>
|
||||||
</openerp>
|
</odoo>
|
|
@ -0,0 +1,27 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
scheduler_error_mailer for Odoo
|
||||||
|
Copyright (C) 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
|
Copyright (C) 2016 Sodexis
|
||||||
|
The licence is in the file __openerp__.py
|
||||||
|
-->
|
||||||
|
|
||||||
|
<odoo>
|
||||||
|
<data noupdate="1">
|
||||||
|
|
||||||
|
<record id="test_scheduler_error_mailer" model="ir.cron">
|
||||||
|
<field name="name">Test Scheduler Error Mailer</field>
|
||||||
|
<field name="active" eval="False"/>
|
||||||
|
<field name="user_id" ref="base.user_root"/>
|
||||||
|
<field name="interval_number">1</field>
|
||||||
|
<field name="interval_type">hours</field>
|
||||||
|
<field name="numbercall">-1</field>
|
||||||
|
<!-- don't limit the number of calls -->
|
||||||
|
<field name="doall" eval="True"/>
|
||||||
|
<field name="model">ir.cron</field>
|
||||||
|
<field name="function">_test_scheduler_failure</field>
|
||||||
|
<field name="email_template_id" ref="scheduler_error_mailer.scheduler_error_mailer"/>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
|
@ -1,79 +0,0 @@
|
||||||
# Translation of Odoo Server.
|
|
||||||
# This file contains the translation of the following modules:
|
|
||||||
# * scheduler_error_mailer
|
|
||||||
#
|
|
||||||
# Translators:
|
|
||||||
msgid ""
|
|
||||||
msgstr ""
|
|
||||||
"Project-Id-Version: server-tools (8.0)\n"
|
|
||||||
"Report-Msgid-Bugs-To: \n"
|
|
||||||
"POT-Creation-Date: 2015-09-29 11:14+0000\n"
|
|
||||||
"PO-Revision-Date: 2015-09-18 13:56+0000\n"
|
|
||||||
"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
|
|
||||||
"Language-Team: English (http://www.transifex.com/oca/OCA-server-tools-8-0/language/en/)\n"
|
|
||||||
"MIME-Version: 1.0\n"
|
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
|
||||||
"Content-Transfer-Encoding: \n"
|
|
||||||
"Language: en\n"
|
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: model:email.template,body_html:scheduler_error_mailer.scheduler_error_mailer
|
|
||||||
msgid ""
|
|
||||||
"\n"
|
|
||||||
"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n"
|
|
||||||
"\n"
|
|
||||||
"<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n"
|
|
||||||
"\n"
|
|
||||||
"<strong>\n"
|
|
||||||
"${ctx.get('job_exception') and ctx.get('job_exception').value or 'Failed to get the error message from the context.'}\n"
|
|
||||||
"</strong>\n"
|
|
||||||
"\n"
|
|
||||||
"<p>You may check the logs of the OpenERP server to get more information about this failure.</p>\n"
|
|
||||||
"\n"
|
|
||||||
"<p>Properties of the scheduler <em>${object.name or ''}</em> :</p>\n"
|
|
||||||
"<ul>\n"
|
|
||||||
"<li>Model : ${object.model or ''}</li>\n"
|
|
||||||
"<li>Method : ${object.function or ''}</li>\n"
|
|
||||||
"<li>Arguments : ${object.args or ''}</li>\n"
|
|
||||||
"<li>Interval : ${object.interval_number or '0'} ${object.interval_type or ''}</li>\n"
|
|
||||||
"<li>Number of calls : ${object.numbercall or '0'}</li>\n"
|
|
||||||
"<li>Repeat missed : ${object.doall}</li>\n"
|
|
||||||
"<li>User : ${object.user_id.name or ''}</li>\n"
|
|
||||||
"</ul>\n"
|
|
||||||
"\n"
|
|
||||||
"<p>\n"
|
|
||||||
"-- <br/>\n"
|
|
||||||
"Automatic e-mail sent by OpenERP. Do not reply.<br/>\n"
|
|
||||||
"Database : ${ctx.get('dbname')}\n"
|
|
||||||
"</p>\n"
|
|
||||||
"</div>\n"
|
|
||||||
" "
|
|
||||||
msgstr "\n<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n\n<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n\n<strong>\n${ctx.get('job_exception') and ctx.get('job_exception').value or 'Failed to get the error message from the context.'}\n</strong>\n\n<p>You may check the logs of the OpenERP server to get more information about this failure.</p>\n\n<p>Properties of the scheduler <em>${object.name or ''}</em> :</p>\n<ul>\n<li>Model : ${object.model or ''}</li>\n<li>Method : ${object.function or ''}</li>\n<li>Arguments : ${object.args or ''}</li>\n<li>Interval : ${object.interval_number or '0'} ${object.interval_type or ''}</li>\n<li>Number of calls : ${object.numbercall or '0'}</li>\n<li>Repeat missed : ${object.doall}</li>\n<li>User : ${object.user_id.name or ''}</li>\n</ul>\n\n<p>\n-- <br/>\nAutomatic e-mail sent by OpenERP. Do not reply.<br/>\nDatabase : ${ctx.get('dbname')}\n</p>\n</div>\n "
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: code:addons/scheduler_error_mailer/ir_cron.py:75
|
|
||||||
#, python-format
|
|
||||||
msgid "Error :"
|
|
||||||
msgstr "Error :"
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: field:ir.cron,email_template_id:0
|
|
||||||
msgid "Error E-mail Template"
|
|
||||||
msgstr "Error E-mail Template"
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: help:ir.cron,email_template_id:0
|
|
||||||
msgid "Select the email template that will be sent when this scheduler fails."
|
|
||||||
msgstr "Select the email template that will be sent when this scheduler fails."
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: code:addons/scheduler_error_mailer/ir_cron.py:76
|
|
||||||
#, python-format
|
|
||||||
msgid "Task failure with UID = %d."
|
|
||||||
msgstr "Task failure with UID = %d."
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: model:email.template,subject:scheduler_error_mailer.scheduler_error_mailer
|
|
||||||
msgid "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
|
||||||
msgstr "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
|
|
@ -3,15 +3,15 @@
|
||||||
# * scheduler_error_mailer
|
# * scheduler_error_mailer
|
||||||
#
|
#
|
||||||
# Translators:
|
# Translators:
|
||||||
# Armando Vulcano Junior <vulcano@uol.com.br>, 2015
|
# OCA Transbot <transbot@odoo-community.org>, 2016
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: server-tools (8.0)\n"
|
"Project-Id-Version: Odoo Server 9.0c\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2015-09-29 11:14+0000\n"
|
"POT-Creation-Date: 2016-08-06 02:49+0000\n"
|
||||||
"PO-Revision-Date: 2015-09-18 23:44+0000\n"
|
"PO-Revision-Date: 2016-08-06 02:49+0000\n"
|
||||||
"Last-Translator: Armando Vulcano Junior <vulcano@uol.com.br>\n"
|
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
|
||||||
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-server-tools-8-0/language/pt_BR/)\n"
|
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: \n"
|
"Content-Transfer-Encoding: \n"
|
||||||
|
@ -19,9 +19,10 @@ msgstr ""
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: model:email.template,body_html:scheduler_error_mailer.scheduler_error_mailer
|
#: model:mail.template,body_html:scheduler_error_mailer.scheduler_error_mailer
|
||||||
msgid ""
|
msgid ""
|
||||||
"\n"
|
"\n"
|
||||||
|
" \n"
|
||||||
"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n"
|
"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n"
|
||||||
"\n"
|
"\n"
|
||||||
"<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n"
|
"<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n"
|
||||||
|
@ -49,32 +50,33 @@ msgid ""
|
||||||
"Database : ${ctx.get('dbname')}\n"
|
"Database : ${ctx.get('dbname')}\n"
|
||||||
"</p>\n"
|
"</p>\n"
|
||||||
"</div>\n"
|
"</div>\n"
|
||||||
|
" \n"
|
||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: code:addons/scheduler_error_mailer/ir_cron.py:75
|
#: model:ir.model.fields,field_description:scheduler_error_mailer.field_ir_cron_email_template_id
|
||||||
#, python-format
|
|
||||||
msgid "Error :"
|
|
||||||
msgstr "Erro"
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: field:ir.cron,email_template_id:0
|
|
||||||
msgid "Error E-mail Template"
|
msgid "Error E-mail Template"
|
||||||
msgstr "Modelo de Erro de E-mail"
|
msgstr "Modelo de Erro de E-mail"
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: help:ir.cron,email_template_id:0
|
#: model:ir.model.fields,help:scheduler_error_mailer.field_ir_cron_email_template_id
|
||||||
msgid "Select the email template that will be sent when this scheduler fails."
|
msgid "Select the email template that will be sent when this scheduler fails."
|
||||||
msgstr "Selecione o modelo de email que será enviado quando o agendador falhar."
|
msgstr ""
|
||||||
|
"Selecione o modelo de email que será enviado quando o agendador falhar."
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: code:addons/scheduler_error_mailer/ir_cron.py:76
|
#: code:addons/scheduler_error_mailer/models/ir_cron.py:55
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Task failure with UID = %d."
|
msgid "Task failure with UID = %d."
|
||||||
msgstr "Tarefa falhou com UID = %d."
|
msgstr "Tarefa falhou com UID = %d."
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: model:email.template,subject:scheduler_error_mailer.scheduler_error_mailer
|
#: model:mail.template,subject:scheduler_error_mailer.scheduler_error_mailer
|
||||||
msgid "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
msgid "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
||||||
msgstr "[DB ${ctx.get('dbname')}] Agendador '${object.name or ''}' FALHOU"
|
msgstr "[DB ${ctx.get('dbname')}] Agendador '${object.name or ''}' FALHOU"
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:ir.model,name:scheduler_error_mailer.model_ir_cron
|
||||||
|
msgid "ir.cron"
|
||||||
|
msgstr ""
|
||||||
|
|
|
@ -3,15 +3,15 @@
|
||||||
# * scheduler_error_mailer
|
# * scheduler_error_mailer
|
||||||
#
|
#
|
||||||
# Translators:
|
# Translators:
|
||||||
# Matjaž Mozetič <m.mozetic@matmoz.si>, 2015
|
# OCA Transbot <transbot@odoo-community.org>, 2016
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: server-tools (8.0)\n"
|
"Project-Id-Version: Odoo Server 9.0c\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2015-09-29 11:14+0000\n"
|
"POT-Creation-Date: 2016-08-06 02:49+0000\n"
|
||||||
"PO-Revision-Date: 2015-09-26 07:36+0000\n"
|
"PO-Revision-Date: 2016-08-06 02:49+0000\n"
|
||||||
"Last-Translator: Matjaž Mozetič <m.mozetic@matmoz.si>\n"
|
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
|
||||||
"Language-Team: Slovenian (http://www.transifex.com/oca/OCA-server-tools-8-0/language/sl/)\n"
|
"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: \n"
|
"Content-Transfer-Encoding: \n"
|
||||||
|
@ -19,9 +19,10 @@ msgstr ""
|
||||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
|
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: model:email.template,body_html:scheduler_error_mailer.scheduler_error_mailer
|
#: model:mail.template,body_html:scheduler_error_mailer.scheduler_error_mailer
|
||||||
msgid ""
|
msgid ""
|
||||||
"\n"
|
"\n"
|
||||||
|
" \n"
|
||||||
"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n"
|
"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n"
|
||||||
"\n"
|
"\n"
|
||||||
"<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n"
|
"<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n"
|
||||||
|
@ -49,32 +50,33 @@ msgid ""
|
||||||
"Database : ${ctx.get('dbname')}\n"
|
"Database : ${ctx.get('dbname')}\n"
|
||||||
"</p>\n"
|
"</p>\n"
|
||||||
"</div>\n"
|
"</div>\n"
|
||||||
|
" \n"
|
||||||
" "
|
" "
|
||||||
msgstr "\n<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n\n<p>OpenERP je poskušal zagnati razporejevalec <em>${object.name or ''}</em> v podatkovni bazi <em>${ctx.get('dbname')}</em> , a ni uspel. Obvestilo o napaki:</p>\n\n<strong>\n${ctx.get('job_exception') and ctx.get('job_exception').value or 'Failed to get the error message from the context.'}\n</strong>\n\n<p>Preverite dnevnike OpenERP strežnika za pridobitev več informacij o težavi.</p>\n\n<p>Lastnosti razporejevalca <em>${object.name or ''}</em> :</p>\n<ul>\n<li>Model : ${object.model or ''}</li>\n<li>Metoda : ${object.function or ''}</li>\n<li>Argumenti : ${object.args or ''}</li>\n<li>Interval : ${object.interval_number or '0'} ${object.interval_type or ''}</li>\n<li>Število klicev : ${object.numbercall or '0'}</li>\n<li>Zgrešene ponovitve : ${object.doall}</li>\n<li>Uporabnik : ${object.user_id.name or ''}</li>\n</ul>\n\n<p>\n-- <br/>\nSamodejno sporočilo poslano iz OpenERP. Ne odgovarjajte.<br/>\nPodatkovna baza : ${ctx.get('dbname')}\n</p>\n</div>\n "
|
msgstr ""
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: code:addons/scheduler_error_mailer/ir_cron.py:75
|
#: model:ir.model.fields,field_description:scheduler_error_mailer.field_ir_cron_email_template_id
|
||||||
#, python-format
|
|
||||||
msgid "Error :"
|
|
||||||
msgstr "Napaka:"
|
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
|
||||||
#: field:ir.cron,email_template_id:0
|
|
||||||
msgid "Error E-mail Template"
|
msgid "Error E-mail Template"
|
||||||
msgstr "Predloga obvestila o napaki"
|
msgstr "Predloga obvestila o napaki"
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: help:ir.cron,email_template_id:0
|
#: model:ir.model.fields,help:scheduler_error_mailer.field_ir_cron_email_template_id
|
||||||
msgid "Select the email template that will be sent when this scheduler fails."
|
msgid "Select the email template that will be sent when this scheduler fails."
|
||||||
msgstr "Izberite predlogo za razpošiljanje ob napakah razporejevalca."
|
msgstr "Izberite predlogo za razpošiljanje ob napakah razporejevalca."
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: code:addons/scheduler_error_mailer/ir_cron.py:76
|
#: code:addons/scheduler_error_mailer/models/ir_cron.py:55
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Task failure with UID = %d."
|
msgid "Task failure with UID = %d."
|
||||||
msgstr "Napaka pri opravilu UID = %d."
|
msgstr "Napaka pri opravilu UID = %d."
|
||||||
|
|
||||||
#. module: scheduler_error_mailer
|
#. module: scheduler_error_mailer
|
||||||
#: model:email.template,subject:scheduler_error_mailer.scheduler_error_mailer
|
#: model:mail.template,subject:scheduler_error_mailer.scheduler_error_mailer
|
||||||
msgid "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
msgid "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
||||||
msgstr "[DB ${ctx.get('dbname')}] Razporejevalec '${object.name or ''}' NEUSPEŠEN"
|
msgstr ""
|
||||||
|
"[DB ${ctx.get('dbname')}] Razporejevalec '${object.name or ''}' NEUSPEŠEN"
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:ir.model,name:scheduler_error_mailer.model_ir_cron
|
||||||
|
msgid "ir.cron"
|
||||||
|
msgstr ""
|
||||||
|
|
|
@ -0,0 +1,81 @@
|
||||||
|
# Translation of Odoo Server.
|
||||||
|
# This file contains the translation of the following modules:
|
||||||
|
# * scheduler_error_mailer
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Jeffery Chenn <jeffery9@gmail.com>, 2016
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: Odoo Server 9.0c\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2016-08-31 11:58+0000\n"
|
||||||
|
"PO-Revision-Date: 2016-08-31 11:58+0000\n"
|
||||||
|
"Last-Translator: Jeffery Chenn <jeffery9@gmail.com>, 2016\n"
|
||||||
|
"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/zh_CN/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: \n"
|
||||||
|
"Language: zh_CN\n"
|
||||||
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:mail.template,body_html:scheduler_error_mailer.scheduler_error_mailer
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" \n"
|
||||||
|
"<div style=\"font-family: 'Lucica Grande', Ubuntu, Arial, Verdana, sans-serif; font-size: 12px; color: rgb(34, 34, 34); background-color: #FFF; \">\n"
|
||||||
|
"\n"
|
||||||
|
"<p>OpenERP tried to run the scheduler <em>${object.name or ''}</em> in the database <em>${ctx.get('dbname')}</em> but it failed. Here is the error message :</p>\n"
|
||||||
|
"\n"
|
||||||
|
"<strong>\n"
|
||||||
|
"${ctx.get('job_exception') and ctx.get('job_exception').value or 'Failed to get the error message from the context.'}\n"
|
||||||
|
"</strong>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>You may check the logs of the OpenERP server to get more information about this failure.</p>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Properties of the scheduler <em>${object.name or ''}</em> :</p>\n"
|
||||||
|
"<ul>\n"
|
||||||
|
"<li>Model : ${object.model or ''}</li>\n"
|
||||||
|
"<li>Method : ${object.function or ''}</li>\n"
|
||||||
|
"<li>Arguments : ${object.args or ''}</li>\n"
|
||||||
|
"<li>Interval : ${object.interval_number or '0'} ${object.interval_type or ''}</li>\n"
|
||||||
|
"<li>Number of calls : ${object.numbercall or '0'}</li>\n"
|
||||||
|
"<li>Repeat missed : ${object.doall}</li>\n"
|
||||||
|
"<li>User : ${object.user_id.name or ''}</li>\n"
|
||||||
|
"</ul>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>\n"
|
||||||
|
"-- <br/>\n"
|
||||||
|
"Automatic e-mail sent by OpenERP. Do not reply.<br/>\n"
|
||||||
|
"Database : ${ctx.get('dbname')}\n"
|
||||||
|
"</p>\n"
|
||||||
|
"</div>\n"
|
||||||
|
" \n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:ir.model.fields,field_description:scheduler_error_mailer.field_ir_cron_email_template_id
|
||||||
|
msgid "Error E-mail Template"
|
||||||
|
msgstr "错误E-mail 模板"
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:ir.model.fields,help:scheduler_error_mailer.field_ir_cron_email_template_id
|
||||||
|
msgid "Select the email template that will be sent when this scheduler fails."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: code:addons/scheduler_error_mailer/models/ir_cron.py:55
|
||||||
|
#, python-format
|
||||||
|
msgid "Task failure with UID = %d."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:mail.template,subject:scheduler_error_mailer.scheduler_error_mailer
|
||||||
|
msgid "[DB ${ctx.get('dbname')}] Scheduler '${object.name or ''}' FAILED"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: scheduler_error_mailer
|
||||||
|
#: model:ir.model,name:scheduler_error_mailer.model_ir_cron
|
||||||
|
msgid "ir.cron"
|
||||||
|
msgstr ""
|
|
@ -1,76 +0,0 @@
|
||||||
# -*- encoding: utf-8 -*-
|
|
||||||
##############################################################################
|
|
||||||
#
|
|
||||||
# Scheduler Error Mailer module for OpenERP
|
|
||||||
# Copyright (C) 2012-2013 Akretion (http://www.akretion.com/)
|
|
||||||
# @author: Sébastien Beau <sebastien.beau@akretion.com>
|
|
||||||
# @author David Beal <bealdavid@gmail.com>
|
|
||||||
# @author Alexis de Lattre <alexis.delattre@akretion.com>
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU Affero General Public License as
|
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
|
||||||
# License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU Affero General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
##############################################################################
|
|
||||||
|
|
||||||
from openerp import SUPERUSER_ID
|
|
||||||
from openerp.osv import orm, fields
|
|
||||||
from openerp.tools.translate import _
|
|
||||||
import logging
|
|
||||||
|
|
||||||
|
|
||||||
_logger = logging.getLogger(__name__)
|
|
||||||
|
|
||||||
|
|
||||||
class ir_cron(orm.Model):
|
|
||||||
_inherit = "ir.cron"
|
|
||||||
|
|
||||||
_columns = {
|
|
||||||
'email_template_id': fields.many2one(
|
|
||||||
'email.template',
|
|
||||||
'Error E-mail Template',
|
|
||||||
oldname="email_template",
|
|
||||||
help="Select the email template that will be "
|
|
||||||
"sent when this scheduler fails."),
|
|
||||||
}
|
|
||||||
|
|
||||||
def _handle_callback_exception(self, cr, uid, model_name, method_name,
|
|
||||||
args, job_id, job_exception):
|
|
||||||
|
|
||||||
res = super(ir_cron, self)._handle_callback_exception(
|
|
||||||
cr, uid, model_name, method_name, args, job_id, job_exception)
|
|
||||||
|
|
||||||
my_cron = self.browse(cr, uid, job_id)
|
|
||||||
|
|
||||||
if my_cron.email_template_id:
|
|
||||||
# we put the job_exception in context to be able to print it inside
|
|
||||||
# the email template
|
|
||||||
context = {
|
|
||||||
'job_exception': job_exception,
|
|
||||||
'dbname': cr.dbname,
|
|
||||||
}
|
|
||||||
|
|
||||||
_logger.debug("Sending scheduler error email with context=%s",
|
|
||||||
context)
|
|
||||||
|
|
||||||
self.pool['email.template'].send_mail(
|
|
||||||
cr, SUPERUSER_ID, my_cron.email_template_id.id, my_cron.id,
|
|
||||||
force_send=True, context=context)
|
|
||||||
|
|
||||||
return res
|
|
||||||
|
|
||||||
def _test_scheduler_failure(self, cr, uid, context=None):
|
|
||||||
"""This function is used to test and debug this module"""
|
|
||||||
|
|
||||||
raise orm.except_orm(
|
|
||||||
_('Error :'),
|
|
||||||
_("Task failure with UID = %d.") % uid)
|
|
|
@ -1,24 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2012-2013 Akretion (http://www.akretion.com/)
|
|
||||||
The licence is in the file __openerp__.py
|
|
||||||
-->
|
|
||||||
|
|
||||||
<openerp>
|
|
||||||
<data>
|
|
||||||
|
|
||||||
|
|
||||||
<record id="ir_cron_error_mailer_view" model="ir.ui.view">
|
|
||||||
<field name="name">ir.cron.error.mailer.form</field>
|
|
||||||
<field name="model">ir.cron</field>
|
|
||||||
<field name="inherit_id" ref="base.ir_cron_view"/>
|
|
||||||
<field name="arch" type="xml">
|
|
||||||
<field name="doall" position="after">
|
|
||||||
<field name="email_template_id" />
|
|
||||||
</field>
|
|
||||||
</field>
|
|
||||||
</record>
|
|
||||||
|
|
||||||
|
|
||||||
</data>
|
|
||||||
</openerp>
|
|
|
@ -1,26 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2013 Akretion (http://www.akretion.com/)
|
|
||||||
@author Alexis de Lattre <alexis.delattre@akretion.com>
|
|
||||||
The licence is in the file __openerp__.py
|
|
||||||
-->
|
|
||||||
|
|
||||||
<openerp>
|
|
||||||
<data noupdate="1">
|
|
||||||
|
|
||||||
<record id="test_scheduler_error_mailer" model="ir.cron">
|
|
||||||
<field name="name">Test Scheduler Error Mailer</field>
|
|
||||||
<field name="active" eval="False"/>
|
|
||||||
<field name="user_id" ref="base.user_root"/>
|
|
||||||
<field name="interval_number">1</field>
|
|
||||||
<field name="interval_type">hours</field>
|
|
||||||
<field name="numbercall">-1</field> <!-- don't limit the number of calls -->
|
|
||||||
<field name="doall" eval="True"/>
|
|
||||||
<field name="model">ir.cron</field>
|
|
||||||
<field name="function">_test_scheduler_failure</field>
|
|
||||||
<field name="email_template_id" ref="scheduler_error_mailer"/>
|
|
||||||
</record>
|
|
||||||
|
|
||||||
</data>
|
|
||||||
</openerp>
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# © 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
|
# © 2016 Sodexis
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from . import ir_cron
|
|
@ -0,0 +1,55 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# © 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
|
# © 2016 Sodexis
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from openerp import models, fields, api, _
|
||||||
|
from openerp.exceptions import UserError
|
||||||
|
import logging
|
||||||
|
|
||||||
|
|
||||||
|
_logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
class IrCron(models.Model):
|
||||||
|
_inherit = "ir.cron"
|
||||||
|
|
||||||
|
email_template_id = fields.Many2one(
|
||||||
|
comodel_name="mail.template",
|
||||||
|
string="Error E-mail Template",
|
||||||
|
help="Select the email template that will be sent when "
|
||||||
|
"this scheduler fails."
|
||||||
|
)
|
||||||
|
|
||||||
|
@api.model
|
||||||
|
def _handle_callback_exception(
|
||||||
|
self, model_name, method_name, args, job_id, job_exception):
|
||||||
|
res = super(IrCron, self)._handle_callback_exception(
|
||||||
|
model_name, method_name, args, job_id, job_exception)
|
||||||
|
|
||||||
|
my_cron = self.browse(job_id)
|
||||||
|
|
||||||
|
if my_cron.email_template_id:
|
||||||
|
# we put the job_exception in context to be able to print it inside
|
||||||
|
# the email template
|
||||||
|
context = {
|
||||||
|
'job_exception': job_exception,
|
||||||
|
'dbname': self._cr.dbname,
|
||||||
|
}
|
||||||
|
|
||||||
|
_logger.debug(
|
||||||
|
"Sending scheduler error email with context=%s", context)
|
||||||
|
|
||||||
|
self.env['mail.template'].browse(
|
||||||
|
my_cron.email_template_id.id
|
||||||
|
).with_context(context).sudo().send_mail(
|
||||||
|
my_cron.id, force_send=True)
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
|
@api.model
|
||||||
|
def _test_scheduler_failure(self):
|
||||||
|
"""This function is used to test and debug this module"""
|
||||||
|
|
||||||
|
raise UserError(
|
||||||
|
_("Task failure with UID = %d.") % self._uid)
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
scheduler_error_mailer for Odoo
|
||||||
|
Copyright (C) 2012-2013 Akretion Sébastien BEAU,David Beal,Alexis de Lattre
|
||||||
|
Copyright (C) 2016 Sodexis
|
||||||
|
The licence is in the file __openerp__.py
|
||||||
|
-->
|
||||||
|
|
||||||
|
<odoo>
|
||||||
|
|
||||||
|
<record id="ir_cron_view" model="ir.ui.view">
|
||||||
|
<field name="name">ir.cron.error.mailer.form</field>
|
||||||
|
<field name="model">ir.cron</field>
|
||||||
|
<field name="inherit_id" ref="base.ir_cron_view"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="doall" position="after">
|
||||||
|
<field name="email_template_id"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
</odoo>
|
Loading…
Reference in New Issue