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