Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
931d9af
[9.0][ADD] sale_fixed_discount
LoisRForgeFlow Sep 1, 2017
a5dbb73
[10.0][MIG] sale_fixed_discount
LoisRForgeFlow Jan 12, 2018
ca29baa
[11.0][mig] sale_fixed_discount
JordiBForgeFlow Oct 8, 2018
0f056d6
[MIG] sale_fixed_discount: Migration to 12.0
MiquelRForgeFlow Sep 2, 2019
356660c
[IMP] Simplify code
MiquelRForgeFlow Sep 3, 2019
44dcb0e
[IMP] sale_fixed_discount: black, isort, prettier
HviorForgeFlow May 8, 2020
4be6f93
[MIG] sale_fixed_discount: Migration to 13.0
HviorForgeFlow May 8, 2020
63f2ea0
Not update lines when SO is locked
HviorForgeFlow Jun 25, 2020
cef8214
[UPD] Eficent -> ForgeFlow
MiquelRForgeFlow Sep 30, 2020
3a33592
[FIX] sale_fixed_discount: using `product.group_discount_per_so_line`
dennybiasiolli Oct 13, 2020
cf73e57
[FIX] sale_fixed_discount: remove obsolete colspan calculation
skeller1 Nov 21, 2020
5433c7f
[13.0][sale_fixed_discount] fix sale portal view
JordiBForgeFlow Feb 9, 2021
c0e26b7
[IMP] sale_fixed_discount: black, isort, prettier
damdam-s May 11, 2023
a7fe301
[MIG] sale_fixed_discount: Migration to 14.0
damdam-s May 11, 2023
ac6150f
[MIG] sale_fixed_discount: Migration to 15.0
Jun 19, 2023
128368f
[MIG] sale_fixed_discount: Migration to 16.0
PieterPaulussen Jul 24, 2023
97465c3
Added translation using Weblate (Portuguese (Brazil))
adrianojprado Oct 9, 2023
750cdec
Translated using Weblate (Spanish)
Ivorra78 Oct 15, 2023
80c37eb
Added translation using Weblate (Italian)
mymage Dec 1, 2023
5d58bfa
[17.0][MIG]sale_fixed_discount: Migrated module to v17.0
fd-oerp Feb 14, 2024
d9ebb23
Translated using Weblate (Italian)
mymage Mar 12, 2024
401db71
Translated using Weblate (Spanish)
Ivorra78 Apr 23, 2024
8834d94
[FIX] sale_fixed_discount: Division by zero
ioans73 Mar 15, 2024
0f1ab32
[IMP] sale_fixed_discount: remove replace from views
CRogos Jun 3, 2024
c827ada
Translated using Weblate (Italian)
mymage Jun 12, 2024
92fcbaa
[IMP] sale_fixed_discount: improve xml regex replacement
CRogos Jun 19, 2024
1e4385f
[FIX] sale_fixed_discount: convert _onchange_discount_fixed() to comp…
astirpe May 25, 2024
36b830a
[FIX] sale_fixed_discount: Properly call the super method
carlos-lopez-tecnativa Jan 9, 2025
982b762
[IMP] sale_fixed_discount: pre-commit auto fixes
MohamedOsman7 Apr 9, 2025
7747a00
[MIG] sale_fixed_discount: Migration to 18.0
MohamedOsman7 Apr 9, 2025
0b4533c
[MIG] sale_fixed_discount: Migration to 19.0
yankinmax Nov 25, 2025
6f5e95a
DON'T MERGE test requirements
yankinmax Nov 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions sale_fixed_discount/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

===================
Sale Fixed Discount
===================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:9fbc48c4968018c610d6befda6c7804ced8212bb8b51c5a1f3bb97d9cde0baad
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--workflow-lightgray.png?logo=github
:target: https://github.com/OCA/sale-workflow/tree/19.0/sale_fixed_discount
:alt: OCA/sale-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/sale-workflow-19-0/sale-workflow-19-0-sale_fixed_discount
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/sale-workflow&target_branch=19.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module extends the functionality of Sales to allow you to apply
fixed amount discount at sales order line level.

The module also extends the sales order report to show fixed discount.

**Table of contents**

.. contents::
:local:

Installation
============

This module depends on module 'account_invoice_fixed_discount',
available in
https://github.com/OCA/account-invoicing/tree/18.0/account_invoice_fixed_discount

Configuration
=============

To configure this module, you need to:

1. Go to *Sales > Configuration > Settings*.
2. In the *Pricing* section select *Discounts* option to grant discounts
on sales order lines.

Usage
=====

To use this module, you need to:

1. Go to *Sales*.
2. Create a Sales Order and specify the type of discount and
fixed/percent discount in a line.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/sale-workflow/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/sale-workflow/issues/new?body=module:%20sale_fixed_discount%0Aversion:%2019.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* ForgeFlow

Contributors
------------

- Lois Rilo <[email protected]>
(`www.forgeflow.com <http://www.forgeflow.com>`__)
- Jordi Ballester <[email protected]>
(`www.forgeflow.com <http://www.forgeflow.com>`__)
- Pieter Paulussen <[email protected]>
(`www.code-source.be <http://www.code-source.be>`__)

- OERP Canada <https://www.oerp.ca/>:

- Foram Darji <[email protected]>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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.

This module is part of the `OCA/sale-workflow <https://github.com/OCA/sale-workflow/tree/19.0/sale_fixed_discount>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions sale_fixed_discount/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
21 changes: 21 additions & 0 deletions sale_fixed_discount/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Copyright 2017-20 ForgeFlow S.L.
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{
"name": "Sale Fixed Discount",
"summary": "Allows to apply fixed amount discounts in sales orders.",
"version": "19.0.1.0.0",
"category": "Sales",
"website": "https://github.com/OCA/sale-workflow",
"author": "ForgeFlow, Odoo Community Association (OCA)",
"license": "AGPL-3",
"application": False,
"installable": True,
"depends": ["sale", "account_invoice_fixed_discount"],
"data": [
"security/res_groups.xml",
"reports/report_sale_order.xml",
"views/account_invoice_views.xml",
"views/sale_order_views.xml",
"views/sale_portal_templates.xml",
],
}
78 changes: 78 additions & 0 deletions sale_fixed_discount/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_fixed_discount
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 17.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-14 17:32+0000\n"
"PO-Revision-Date: 2024-04-23 08:39+0000\n"
"Last-Translator: Ivorra78 <[email protected]>\n"
"Language-Team: \n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span class=\"text-nowrap\"> %)</span>"
msgstr ""

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span class=\"text-nowrap\"> (or</span>"
msgstr ""

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.sale_order_portal_content
msgid "<span>Disc. Fixed Amount</span>"
msgstr "<span>Desc. Monto fijo</span>"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span>Discount Amount (%)</span>"
msgstr "<span>Importe del descuento (%)</span>"

#. module: sale_fixed_discount
#: model:ir.model.fields,field_description:sale_fixed_discount.field_sale_order_line__discount_fixed
msgid "Discount (Fixed)"
msgstr "Descuento (Fijo)"

#. module: sale_fixed_discount
#: model:ir.model.fields,help:sale_fixed_discount.field_sale_order_line__discount_fixed
msgid "Fixed amount discount."
msgstr "Importe fijo de descuento."

#. module: sale_fixed_discount
#: model:ir.model,name:sale_fixed_discount.model_sale_order_line
msgid "Sales Order Line"
msgstr "Línea Pedido de Venta"

#. module: sale_fixed_discount
#. odoo-python
#: code:addons/sale_fixed_discount/models/sale_order_line.py:0
#, python-format
msgid ""
"The fixed discount %(fixed)s does not match the calculateddiscount "
"%(discount)s %%.Please correct one of the discounts."
msgstr ""
"El descuento fijo %(fixed)s no coincide con el descuento calculado "
"%(discount)s %%.Por favor, corrija uno de los descuentos."

#~ msgid "(or"
#~ msgstr "(o"

#~ msgid "<span>Disc. %</span>"
#~ msgstr "<span>Desc. %</span>"

#, python-format
#~ msgid ""
#~ "The fixed discount %(fixed)s does not match the calculated discount "
#~ "%(discount)s %%. Please correct one of the discounts."
#~ msgstr ""
#~ "El descuento fijo %(fixed)s no coincide con el descuento calculado "
#~ "%(discount)s %%. Por favor, corrija uno de los descuentos."
61 changes: 61 additions & 0 deletions sale_fixed_discount/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_fixed_discount
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 17.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-14 17:31+0000\n"
"PO-Revision-Date: 2024-02-14 17:31+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span class=\"text-nowrap\"> %)</span>"
msgstr ""

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span class=\"text-nowrap\"> (or</span>"
msgstr ""

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.sale_order_portal_content
msgid "<span>Disc. Fixed Amount</span>"
msgstr "<span>Remise en montant fixe</span>"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span>Discount Amount (%)</span>"
msgstr ""

#. module: sale_fixed_discount
#: model:ir.model.fields,field_description:sale_fixed_discount.field_sale_order_line__discount_fixed
msgid "Discount (Fixed)"
msgstr "Remise (fixe)"

#. module: sale_fixed_discount
#: model:ir.model.fields,help:sale_fixed_discount.field_sale_order_line__discount_fixed
msgid "Fixed amount discount."
msgstr "Remise en montant fixe."

#. module: sale_fixed_discount
#: model:ir.model,name:sale_fixed_discount.model_sale_order_line
msgid "Sales Order Line"
msgstr "Ligne de bons de commande"

#. module: sale_fixed_discount
#. odoo-python
#: code:addons/sale_fixed_discount/models/sale_order_line.py:0
#, python-format
msgid ""
"The fixed discount %(fixed)s does not match the calculateddiscount "
"%(discount)s %%.Please correct one of the discounts."
msgstr ""
78 changes: 78 additions & 0 deletions sale_fixed_discount/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_fixed_discount
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 17.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-14 17:30+0000\n"
"PO-Revision-Date: 2024-06-12 16:38+0000\n"
"Last-Translator: mymage <[email protected]>\n"
"Language-Team: \n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span class=\"text-nowrap\"> %)</span>"
msgstr "<span class=\"text-nowrap\"> %)</span>"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span class=\"text-nowrap\"> (or</span>"
msgstr "<span class=\"text-nowrap\"> (o</span>"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.sale_order_portal_content
msgid "<span>Disc. Fixed Amount</span>"
msgstr "<span>Importo sconto fisso</span>"

#. module: sale_fixed_discount
#: model_terms:ir.ui.view,arch_db:sale_fixed_discount.report_saleorder_document
msgid "<span>Discount Amount (%)</span>"
msgstr "<span>Valore sconto (%)</span>"

#. module: sale_fixed_discount
#: model:ir.model.fields,field_description:sale_fixed_discount.field_sale_order_line__discount_fixed
msgid "Discount (Fixed)"
msgstr "Sconto (fisso)"

#. module: sale_fixed_discount
#: model:ir.model.fields,help:sale_fixed_discount.field_sale_order_line__discount_fixed
msgid "Fixed amount discount."
msgstr "Importo sconto fisso."

#. module: sale_fixed_discount
#: model:ir.model,name:sale_fixed_discount.model_sale_order_line
msgid "Sales Order Line"
msgstr "Riga ordine di vendita"

#. module: sale_fixed_discount
#. odoo-python
#: code:addons/sale_fixed_discount/models/sale_order_line.py:0
#, python-format
msgid ""
"The fixed discount %(fixed)s does not match the calculateddiscount "
"%(discount)s %%.Please correct one of the discounts."
msgstr ""
"Lo sconto fisso %(fixed)s non corrisponde allo sconto calcolato %(discount)s "
"%%. Correggere uno degli sconti."

#~ msgid "(or"
#~ msgstr "(o"

#~ msgid "<span>Disc. %</span>"
#~ msgstr "<span>Sconto %</span>"

#, python-format
#~ msgid ""
#~ "The fixed discount %(fixed)s does not match the calculated discount "
#~ "%(discount)s %%. Please correct one of the discounts."
#~ msgstr ""
#~ "Lo sconto fisso %(fixed)s non corrisponde allo sconto calcolato "
#~ "%(discount)s %%. Correggere uno degli sconti."
Loading
Loading