mirror of
https://github.com/OCA/intrastat-extrastat.git
synced 2025-02-16 17:13:41 +02:00
* Move description from __openerp__.py to README.rst Add conflict key in __openerp__.py Simplify code that create attachment Thanks to Luc de Meyer (Noviat) for his help on this. * Update README.rst and translation files * Simplify @depends, as suggested by Yannick * Better use of the new API for send_mail(), as suggested by Yannick (and tested be me) * Large code re-engineering following the Akretion-Noviat code sprint on intrastat This code has been written both by Luc de Meyer and myself. * Add first draft of code to generate decl lines
52 lines
2.2 KiB
Python
52 lines
2.2 KiB
Python
# -*- encoding: utf-8 -*-
|
|
##############################################################################
|
|
#
|
|
# Intrastat base module for Odoo
|
|
# Copyright (C) 2010-2014 Akretion (http://www.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 openerp import models, fields, api, _
|
|
from openerp.exceptions import ValidationError
|
|
|
|
|
|
class ProductTemplate(models.Model):
|
|
_inherit = "product.template"
|
|
|
|
exclude_from_intrastat = fields.Boolean(
|
|
string='Exclude from Intrastat reports',
|
|
help="If set to True, the product or service will not be "
|
|
"taken into account for Intrastat Product or Service reports. "
|
|
"So you should leave this field to False unless you have a "
|
|
"very good reason.")
|
|
is_accessory_cost = fields.Boolean(
|
|
string='Is accessory cost',
|
|
help="Activate this option for shipping costs, packaging "
|
|
"costs and all services related to the sale of products. "
|
|
"This option is used for Intrastat reports.")
|
|
|
|
@api.one
|
|
@api.constrains('type', 'is_accessory_cost')
|
|
def _check_accessory_cost(self):
|
|
if self.is_accessory_cost and self.type != 'service':
|
|
raise ValidationError(
|
|
_("The option 'Is accessory cost?' should only be "
|
|
"activated on 'Service' products. You have activated "
|
|
"this option for the product '%s' which is of type "
|
|
"'%s'"
|
|
% (self.name, self.type)))
|