UBL Integration
parent
23c30f7f96
commit
48242b5dbb
|
|
@ -0,0 +1,52 @@
|
||||||
|
.. image:: https://img.shields.io/badge/license-AGPL--3-blue.png
|
||||||
|
:target: https://www.gnu.org/licenses/agpl
|
||||||
|
:alt: License: AGPL-3
|
||||||
|
|
||||||
|
==========
|
||||||
|
Base UNECE
|
||||||
|
==========
|
||||||
|
|
||||||
|
This module adds the technical basis for the use of the code lists standardized by the `United Nations Economic Commission for Europe <http://www.unece.org>`_ (which has 56 members states in Europe, America and Central Asia, cf `Wikipedia <https://en.wikipedia.org/wiki/United_Nations_Economic_Commission_for_Europe>`_. These code lists are sometimes called UNCL (United Nations Code List). UNECE has standardized code lists for many different things: units of measure, payment means, modes of transport, packacing, taxes, etc....
|
||||||
|
|
||||||
|
Configuration
|
||||||
|
=============
|
||||||
|
|
||||||
|
The configuration takes place in the menu *Settings > Technical > Parameters > UNECE Code Lists*.
|
||||||
|
|
||||||
|
Usage
|
||||||
|
=====
|
||||||
|
|
||||||
|
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
|
||||||
|
:alt: Try me on Runbot
|
||||||
|
:target: https://runbot.odoo-community.org/runbot/101/11.0
|
||||||
|
|
||||||
|
Bug Tracker
|
||||||
|
===========
|
||||||
|
|
||||||
|
Bugs are tracked on `GitHub Issues
|
||||||
|
<https://github.com/OCA/community-data-files/issues>`_. In case of trouble, please
|
||||||
|
check there if your issue has already been reported. If you spotted it first,
|
||||||
|
help us smash it by providing detailed and welcomed feedback.
|
||||||
|
|
||||||
|
Credits
|
||||||
|
=======
|
||||||
|
|
||||||
|
Contributors
|
||||||
|
------------
|
||||||
|
|
||||||
|
* Alexis de Lattre <alexis.delattre@akretion.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.
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from . import models
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
# Copyright 2016 Akretion (http://www.akretion.com)
|
||||||
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
# @author Alexis de Lattre <alexis.delattre@akretion.com>
|
||||||
|
|
||||||
|
{
|
||||||
|
'name': 'Base UNECE',
|
||||||
|
'version': '11.0.1.0.1',
|
||||||
|
'category': 'Tools',
|
||||||
|
'license': 'AGPL-3',
|
||||||
|
'summary': 'Base module for UNECE code lists',
|
||||||
|
'author': 'Akretion,Odoo Community Association (OCA)',
|
||||||
|
"website": "https://github.com/OCA/community-data-files",
|
||||||
|
'depends': ['base'],
|
||||||
|
'data': [
|
||||||
|
'views/unece_code_list.xml',
|
||||||
|
'security/ir.model.access.csv',
|
||||||
|
],
|
||||||
|
'installable': True,
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,117 @@
|
||||||
|
# Translation of Odoo Server.
|
||||||
|
# This file contains the translation of the following modules:
|
||||||
|
# * base_unece
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: Odoo Server 11.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: base_unece
|
||||||
|
#: sql_constraint:unece.code.list:0
|
||||||
|
msgid "An UNECE code of the same type already exists"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_code
|
||||||
|
msgid "Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_create_uid
|
||||||
|
msgid "Created by"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_create_date
|
||||||
|
msgid "Created on"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: selection:unece.code.list,type:0
|
||||||
|
msgid "Date, Time or Period Qualifier (UNTDID 2005)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_description
|
||||||
|
msgid "Description"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_display_name
|
||||||
|
msgid "Display Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.ui.view,arch_db:base_unece.unece_code_list_search
|
||||||
|
msgid "Group By"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_id
|
||||||
|
msgid "ID"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list___last_update
|
||||||
|
msgid "Last Modified on"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_write_uid
|
||||||
|
msgid "Last Updated by"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_write_date
|
||||||
|
msgid "Last Updated on"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_name
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.ui.view,arch_db:base_unece.unece_code_list_search
|
||||||
|
msgid "Name or Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: selection:unece.code.list,type:0
|
||||||
|
msgid "Payment Means (UNCL 4461)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: selection:unece.code.list,type:0
|
||||||
|
msgid "Tax Categories (UNCL 5305)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: selection:unece.code.list,type:0
|
||||||
|
msgid "Tax Types (UNCL 5153)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model.fields,field_description:base_unece.field_unece_code_list_type
|
||||||
|
#: model:ir.ui.view,arch_db:base_unece.unece_code_list_search
|
||||||
|
msgid "Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.actions.act_window,name:base_unece.unece_code_list_action
|
||||||
|
#: model:ir.ui.menu,name:base_unece.unece_code_list_menu
|
||||||
|
msgid "UNECE Code Lists"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: base_unece
|
||||||
|
#: model:ir.model,name:base_unece.model_unece_code_list
|
||||||
|
msgid "UNECE nomenclatures"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from . import unece_code_list
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
# Copyright 2016 Akretion (http://www.akretion.com)
|
||||||
|
# @author: Alexis de Lattre <alexis.delattre@akretion.com>
|
||||||
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from odoo import api, fields, models
|
||||||
|
|
||||||
|
|
||||||
|
# There are so many UNCL that can be usefull in Odoo
|
||||||
|
# that it would be stupid to have one object for each UNCL
|
||||||
|
# because it would duplicate the python code, views, menu entries, ACL, etc...
|
||||||
|
# So I decided to have a single object with a type field
|
||||||
|
class UneceCodeList(models.Model):
|
||||||
|
_name = 'unece.code.list'
|
||||||
|
_description = 'UNECE nomenclatures'
|
||||||
|
_order = 'type, code'
|
||||||
|
|
||||||
|
@api.depends('code', 'name')
|
||||||
|
def _compute_display_name(self):
|
||||||
|
for entry in self:
|
||||||
|
entry.display_name = '[%s] %s' % (entry.code, entry.name)
|
||||||
|
|
||||||
|
code = fields.Char(required=True, copy=False)
|
||||||
|
name = fields.Char(required=True, copy=False)
|
||||||
|
display_name = fields.Char(
|
||||||
|
compute='_compute_display_name', store=True)
|
||||||
|
type = fields.Selection([], required=True)
|
||||||
|
description = fields.Text()
|
||||||
|
|
||||||
|
_sql_constraints = [(
|
||||||
|
'type_code_uniq',
|
||||||
|
'unique(type, code)',
|
||||||
|
'An UNECE code of the same type already exists'
|
||||||
|
)]
|
||||||
|
|
||||||
|
@api.multi
|
||||||
|
def name_get(self):
|
||||||
|
res = []
|
||||||
|
for entry in self:
|
||||||
|
res.append((entry.id, '[%s] %s' % (entry.code, entry.name)))
|
||||||
|
return res
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||||
|
access_unece_code_list_read,Read access on unece.code.list to everybody,model_unece_code_list,,1,0,0,0
|
||||||
|
access_unece_code_list_full,Full access on unece.code.list to Settings group,model_unece_code_list,base.group_system,1,1,1,1
|
||||||
|
Binary file not shown.
|
After Width: | Height: | Size: 9.2 KiB |
|
|
@ -0,0 +1,68 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
Copyright 2016 Akretion (http://www.akretion.com/)
|
||||||
|
@author Alexis de Lattre <alexis.delattre@akretion.com>
|
||||||
|
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
-->
|
||||||
|
|
||||||
|
<odoo>
|
||||||
|
|
||||||
|
|
||||||
|
<record id="unece_code_list_form" model="ir.ui.view">
|
||||||
|
<field name="model">unece.code.list</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<form>
|
||||||
|
<sheet>
|
||||||
|
<group name="main">
|
||||||
|
<group name="general">
|
||||||
|
<field name="code"/>
|
||||||
|
<field name="name"/>
|
||||||
|
</group>
|
||||||
|
<group name="extra">
|
||||||
|
<field name="type"/>
|
||||||
|
</group>
|
||||||
|
<field name="description"/>
|
||||||
|
</group>
|
||||||
|
</sheet>
|
||||||
|
</form>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="unece_code_list_tree" model="ir.ui.view">
|
||||||
|
<field name="model">unece.code.list</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<tree>
|
||||||
|
<field name="type" invisible="not context.get('unece_code_list_main_view')"/>
|
||||||
|
<field name="code"/>
|
||||||
|
<field name="name"/>
|
||||||
|
<field name="description"/>
|
||||||
|
</tree>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="unece_code_list_search" model="ir.ui.view">
|
||||||
|
<field name="model">unece.code.list</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<search>
|
||||||
|
<field name="name" string="Name or Code" filter_domain="['|', ('name', 'ilike', self), ('code', 'ilike', self)]"/>
|
||||||
|
<field name="code"/>
|
||||||
|
<field name="type"/>
|
||||||
|
<group string="Group By" name="groupby">
|
||||||
|
<filter name="type_groupby" string="Type" context="{'group_by': 'type'}"/>
|
||||||
|
</group>
|
||||||
|
</search>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="unece_code_list_action" model="ir.actions.act_window">
|
||||||
|
<field name="name">UNECE Code Lists</field>
|
||||||
|
<field name="res_model">unece.code.list</field>
|
||||||
|
<field name="view_mode">tree,form</field>
|
||||||
|
<field name="context">{'unece_code_list_main_view': True}</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<menuitem id="unece_code_list_menu" action="unece_code_list_action"
|
||||||
|
parent="base.menu_ir_property" sequence="150"/>
|
||||||
|
|
||||||
|
|
||||||
|
</odoo>
|
||||||
Loading…
Reference in New Issue