Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
c8e6232
Add edi_sale_oca
simahawk Aug 2, 2022
3b83d35
edi_sale: take over edi_sale_order_import
simahawk Aug 14, 2022
048a3d8
edi_sale: filter/group by origin
simahawk Sep 2, 2022
27e177c
edi_sale: handle ext ref for sol
simahawk Sep 14, 2022
83f1a72
edi_sale: show edi_id
simahawk May 15, 2023
ac2049c
edi_sale: store metadata
simahawk May 18, 2023
e59340b
edi_sale: clean file and drop *type_auto dependency
simahawk May 19, 2023
6ec588a
edi_sale: add process hook for order create
simahawk May 19, 2023
ab8b349
edi_sale: process propagate edi origin
simahawk May 19, 2023
b1054f9
edi_sale: add edi_exchange_ready
simahawk May 23, 2023
073271a
edi_sale: fix edi disable flag
simahawk May 26, 2023
e8d472a
edi_sale: fix _edi_exchange_ready for qty=0
simahawk Jul 6, 2023
ec256a2
edi_sale: move OrderMixin from edi_sale_ubl
simahawk Aug 7, 2023
f27b5cd
edi_sale: fix test_process
simahawk Aug 7, 2023
1b25ef4
edi_sale: propagate origin on lines
simahawk Aug 7, 2023
b6e5140
[MIG] edi_sale_oca: Migration to 16.0
Oct 18, 2023
c00ec38
[IMP] edi_sale_oca: Support edi_id for edi_sale_edifact_oca
Oct 18, 2023
5694aa3
[IMP] edi_sale_oca: Refactor code for passing all configurations via …
Oct 26, 2023
c9a5ad7
[UPD] Update edi_sale_oca.pot
Nov 21, 2023
3ae07c0
[BOT] post-merge updates
OCA-git-bot Nov 21, 2023
1d776ff
[IMP] edi_oca: add partner form page
Jan 10, 2024
9a45054
[UPD] Update edi_sale_oca.pot
Jan 15, 2024
f26848a
[BOT] post-merge updates
OCA-git-bot Jan 15, 2024
c47baed
[FIX] edi_sale_oca: fix test
Jan 22, 2024
6c452dc
[UPD] Update edi_sale_oca.pot
Jan 31, 2024
73dca2f
[BOT] post-merge updates
OCA-git-bot Jan 31, 2024
91755bd
[UPD] Update edi_sale_oca.pot
Feb 4, 2024
14f7420
Added translation using Weblate (Italian)
mymage May 13, 2024
3467a97
[BPRT] edi_sale_oca: Backport from v16.0
thienvh332 Jun 27, 2024
aa9e5e0
[IMP] edi_sale_oca: add partner form page
thienvh332 Jul 4, 2024
5348a9c
[UPD] Update edi_sale_oca.pot
Nov 14, 2024
ae79932
[BOT] post-merge updates
OCA-git-bot Nov 14, 2024
502f568
Update translation files
weblate Nov 14, 2024
ee64af1
edi_sale_oca: use specific demo data for tests
simahawk Nov 14, 2024
a5356de
edi_sale_oca: improve test mixin
simahawk Nov 18, 2024
4dcf817
edi_sale_oca: handle existing order drop dead code
simahawk Nov 15, 2024
c2c986c
edi_sale_oca: drop dead job function
simahawk Nov 28, 2024
47a80f3
edi_sale_oca: split input to edi_sale_input_oca
simahawk Nov 28, 2024
b3232bf
edi_sale_oca: 14.0.2.0.0
simahawk Nov 29, 2024
c3fede2
[UPD] Update edi_sale_oca.pot
Nov 29, 2024
df37d22
[BOT] post-merge updates
OCA-git-bot Nov 29, 2024
fe5933b
Update translation files
weblate Nov 29, 2024
069ef5c
edi_sale_oca: use edi.configuration
simahawk Nov 29, 2024
791bd64
[UPD] Update edi_sale_oca.pot
Dec 4, 2024
b5c8a95
[BOT] post-merge updates
OCA-git-bot Dec 4, 2024
4739894
Update translation files
weblate Dec 4, 2024
f401e7c
edi_sale_oca: fix partner view inheritance
simahawk Jan 10, 2025
fc64181
[BOT] post-merge updates
OCA-git-bot Jan 30, 2025
9c899c4
edi_sale_oca: improve view space
simahawk Feb 4, 2025
da81123
[BOT] post-merge updates
OCA-git-bot Feb 6, 2025
3f6f7f5
[IMP] edi_sale_oca: pre-commit auto fixes
simahawk Jun 5, 2025
753d1e9
edi_sale_oca: migrate to v18
simahawk Jun 5, 2025
b27757d
[UPD] Update edi_sale_oca.pot
Jun 16, 2025
a64ea3a
[BOT] post-merge updates
OCA-git-bot Jun 16, 2025
f02e254
Translated using Weblate (Italian)
mymage Jun 19, 2025
73dc11c
[UPD] Update edi_sale_oca.pot
Sep 11, 2025
2eaa194
Update translation files
weblate Sep 11, 2025
e0048bb
Translated using Weblate (Italian)
mymage Sep 15, 2025
5405714
[IMP] edi_sale_oca: Adapt to new edi_core_oca logic
etobella Aug 29, 2025
3a4ec5c
[IMP] edi_sale_oca: Adapt to new component handler
etobella Sep 24, 2025
07f546b
[BOT] post-merge updates
OCA-git-bot Sep 29, 2025
708aef5
[MIG] edi_sale_oca: Migration to 19.0
imlopes Jun 25, 2026
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
108 changes: 108 additions & 0 deletions edi_sale_oca/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

=========
EDI Sales
=========

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

.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png
:target: https://odoo-community.org/page/development-status
:alt: Alpha
.. |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%2Fedi--framework-lightgray.png?logo=github
:target: https://github.com/OCA/edi-framework/tree/19.0/edi_sale_oca
:alt: OCA/edi-framework
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/edi-framework-19-0/edi-framework-19-0-edi_sale_oca
: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/edi-framework&target_branch=19.0
:alt: Try me on Runboat

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

Handle sale orders via EDI.

This is a base module to plug sales processes with the EDI framework.

To handle inbound/outbound sale orders, you need to use
edi_sale_input_oca or edi_sale_output_oca modules, or create your own
modules.

.. IMPORTANT::
This is an alpha version, the data model and design can change at any time without warning.
Only for development or testing purpose, do not use in production.
`More details on development status <https://odoo-community.org/page/development-status>`_

**Table of contents**

.. contents::
:local:

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/edi-framework/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/edi-framework/issues/new?body=module:%20edi_sale_oca%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
-------

* Camptocamp

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

- Simone Orsi <simone.orsi@camptocamp.com>
- Duong (Tran Quoc) <duongtq@trobz.com>
- Thien (Vo Hong) <thienvh@trobz.com>
- Italo Lopes <italo.lopes@camptocamp.com>

Other credits
-------------

The migration of this module from 14.0 to 16.0 was financially supported
by Camptocamp.

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.

.. |maintainer-simahawk| image:: https://github.com/simahawk.png?size=40px
:target: https://github.com/simahawk
:alt: simahawk

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-simahawk|

This module is part of the `OCA/edi-framework <https://github.com/OCA/edi-framework/tree/19.0/edi_sale_oca>`_ 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 edi_sale_oca/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
31 changes: 31 additions & 0 deletions edi_sale_oca/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Copyright 2022 Camptocamp SA
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "EDI Sales",
"summary": """
Configuration and special behaviors for EDI on sales.
""",
"version": "19.0.1.0.0",
"development_status": "Alpha",
"license": "AGPL-3",
"author": "Camptocamp,Odoo Community Association (OCA)",
"maintainers": ["simahawk"],
"website": "https://github.com/OCA/edi-framework",
"depends": [
"edi_core_oca",
"edi_record_metadata_oca",
"sale",
],
"data": [
"data/edi_configuration.xml",
"views/res_partner.xml",
"views/sale_order.xml",
"views/edi_exchange_record.xml",
],
"demo": [
"demo/edi_backend.xml",
"demo/edi_exchange_type.xml",
"demo/edi_configuration.xml",
],
}
13 changes: 13 additions & 0 deletions edi_sale_oca/data/edi_configuration.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<!-- Generic state change -->
<record
id="edi_conf_trigger_sale_order_state_change"
model="edi.configuration.trigger"
>
<field name="name">On SO state change</field>
<field name="code">on_edi_sale_order_state_change</field>
<field name="description">Trigger when a sale order state changes</field>
<field name="model_id" ref="sale.model_sale_order" />
</record>
</odoo>
11 changes: 11 additions & 0 deletions edi_sale_oca/demo/edi_backend.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="demo_edi_backend_type_sale" model="edi.backend.type">
<field name="name">SALE DEMO</field>
<field name="code">sale_demo</field>
</record>
<record id="demo_edi_backend" model="edi.backend">
<field name="name">SALE DEMO</field>
<field name="backend_type_id" ref="demo_edi_backend_type_sale" />
</record>
</odoo>
36 changes: 36 additions & 0 deletions edi_sale_oca/demo/edi_configuration.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="demo_edi_configuration_confirmed" model="edi.configuration">
<field name="name">Demo Sale OrderResponse - order confirmed</field>
<field
name="description"
>Show case how you can send out an order response automatically</field>
<field name="type_id" ref="demo_edi_exc_type_order_out" />
<field name="backend_id" ref="demo_edi_backend" />
<field name="model_id" ref="sale.model_sale_order" />
<field name="trigger_id" ref="edi_conf_trigger_sale_order_state_change" />
<field name="snippet_do">
# STATES
# ('draft', "Quotation"),
# ('sent', "Quotation Sent"),
# ('sale', "Sales Order"),
# ('cancel', "Cancelled"),
if record.state == 'sale':
record._edi_send_via_edi(conf.type_id)
</field>
</record>
<record id="demo_edi_configuration_done" model="edi.configuration">
<field name="name">Demo Sale OrderResponse - order done</field>
<field
name="description"
>Show case how you can send out an order response automatically</field>
<field name="type_id" ref="demo_edi_exc_type_order_out" />
<field name="backend_id" ref="demo_edi_backend" />
<field name="model_id" ref="sale.model_sale_order" />
<field name="trigger_id" ref="edi_conf_trigger_sale_order_state_change" />
<field name="snippet_do">
if record.state in ('done', 'cancel'):
record._edi_send_via_edi(conf.type_id)
</field>
</record>
</odoo>
22 changes: 22 additions & 0 deletions edi_sale_oca/demo/edi_exchange_type.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="demo_edi_exc_type_order_out" model="edi.exchange.type">
<field name="backend_type_id" ref="demo_edi_backend_type_sale" />
<field name="backend_id" ref="demo_edi_backend" />
<field name="name">Demo Sale Order Response</field>
<field name="code">demo_SaleOrder_out</field>
<field name="direction">output</field>
<field name="exchange_filename_pattern">{record_name}-{type.code}-{dt}</field>
<field name="exchange_file_ext">xml</field>
</record>

<record id="demo_edi_exc_type_order_in" model="edi.exchange.type">
<field name="backend_type_id" ref="demo_edi_backend_type_sale" />
<field name="backend_id" ref="demo_edi_backend" />
<!-- <field name="ack_type_id" ref="demo_edi_exc_type_order_out" /> -->
<field name="name">Demo Sale Order</field>
<field name="code">demo_SaleOrder_in</field>
<field name="direction">input</field>
<field name="exchange_file_ext">xml</field>
</record>
</odoo>
168 changes: 168 additions & 0 deletions edi_sale_oca/i18n/edi_sale_oca.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * edi_sale_oca
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: edi_sale_oca
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_order_form
msgid "<span class=\"o_stat_text\">EDI</span>"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model,name:edi_sale_oca.model_res_partner
msgid "Contact"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__edi_disable_auto
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__edi_disable_auto
msgid "Disable auto"
msgstr ""

#. module: edi_sale_oca
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_order_form
msgid "Disable automated actions"
msgstr ""

#. module: edi_sale_oca
#: model:ir.ui.menu,name:edi_sale_oca.menu_sale_edi_root
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_order_form
msgid "EDI"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__edi_id
msgid "EDI ID"
msgstr ""

#. module: edi_sale_oca
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_sales_order_filter
msgid "EDI exchange"
msgstr ""

#. module: edi_sale_oca
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_sales_order_filter
msgid "EDI exchange type"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__origin_edi_endpoint_id
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__origin_edi_endpoint_id
msgid "EDI origin endpoint"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__origin_exchange_type_id
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__origin_exchange_type_id
msgid "EDI origin exchange type"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__origin_exchange_record_id
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__origin_exchange_record_id
msgid "EDI origin record"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order__origin_exchange_record_id
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order_line__origin_exchange_record_id
msgid "EDI record that originated this document."
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_res_partner__edi_sale_conf_ids
#: model:ir.model.fields,field_description:edi_sale_oca.field_res_users__edi_sale_conf_ids
msgid "EDI sale configuration"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__edi_config
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__edi_config
msgid "Edi Config"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__edi_exchange_ready
msgid "Edi Exchange Ready"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__edi_has_form_config
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__edi_has_form_config
msgid "Edi Has Form Config"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__exchange_record_ids
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__exchange_record_ids
msgid "Exchange Record"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__exchange_record_count
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__exchange_record_count
msgid "Exchange Record Count"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order__exchange_related_record_ids
#: model:ir.model.fields,field_description:edi_sale_oca.field_sale_order_line__exchange_related_record_ids
msgid "Exchange Related Record"
msgstr ""

#. module: edi_sale_oca
#: model:ir.ui.menu,name:edi_sale_oca.menu_sale_edi_records
msgid "Exchanges"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order_line__edi_id
msgid "Internal or external identifier for records."
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order__origin_edi_endpoint_id
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order_line__origin_edi_endpoint_id
msgid "Record generated via this endpoint"
msgstr ""

#. module: edi_sale_oca
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_partner_form
msgid "Sale"
msgstr ""

#. module: edi_sale_oca
#: model:ir.actions.act_window,name:edi_sale_oca.act_open_edi_exchange_record_sale_order_view
msgid "Sale Order Exchange Records"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model,name:edi_sale_oca.model_sale_order
msgid "Sales Order"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model,name:edi_sale_oca.model_sale_order_line
msgid "Sales Order Line"
msgstr ""

#. module: edi_sale_oca
#: model_terms:ir.ui.view,arch_db:edi_sale_oca.view_sales_order_filter
msgid "Source: EDI"
msgstr ""

#. module: edi_sale_oca
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order__edi_disable_auto
#: model:ir.model.fields,help:edi_sale_oca.field_sale_order_line__edi_disable_auto
msgid "When marked, EDI automatic processing will be avoided"
msgstr ""
Loading
Loading