Browse Source

Migrate partner_multi_relation to version 12.0

pull/654/head
David Dufresne 6 years ago
committed by Pedro M. Baeza
parent
commit
cf044c3726
  1. 189
      partner_multi_relation/README.rst
  2. 1
      partner_multi_relation/__init__.py
  3. 2
      partner_multi_relation/__manifest__.py
  4. 317
      partner_multi_relation/i18n/fr.po
  5. 290
      partner_multi_relation/i18n/fr_CA.po
  6. 174
      partner_multi_relation/i18n/partner_multi_relation.pot
  7. 1
      partner_multi_relation/models/__init__.py
  8. 7
      partner_multi_relation/readme/CONTRIBUTORS.rst
  9. 5
      partner_multi_relation/readme/DESCRIPTION.rst
  10. 102
      partner_multi_relation/readme/USAGE.rst
  11. 517
      partner_multi_relation/static/description/index.html
  12. BIN
      partner_multi_relation/static/description/partner_form_view_smart_button.png
  13. BIN
      partner_multi_relation/static/description/partner_form_view_smart_button_2.png
  14. BIN
      partner_multi_relation/static/description/relation_type_form_category_filled.png
  15. BIN
      partner_multi_relation/static/description/relation_type_form_empty.png
  16. BIN
      partner_multi_relation/static/description/relation_type_form_name_filled.png
  17. BIN
      partner_multi_relation/static/description/relation_type_form_partner_type_filled.png
  18. BIN
      partner_multi_relation/static/description/relation_type_invalid_handling.png
  19. BIN
      partner_multi_relation/static/description/relation_type_list.png
  20. BIN
      partner_multi_relation/static/description/relation_type_reflexive.png
  21. BIN
      partner_multi_relation/static/description/relation_type_symmetric.png
  22. BIN
      partner_multi_relation/static/description/search_relation.png
  23. BIN
      partner_multi_relation/static/description/search_relation_2.png
  24. BIN
      partner_multi_relation/static/description/search_relation_3.png
  25. 1
      partner_multi_relation/tests/__init__.py
  26. 5
      partner_multi_relation/tests/test_partner_relation.py
  27. 4
      partner_multi_relation/tests/test_partner_relation_all.py
  28. 14
      partner_multi_relation/views/res_partner.xml
  29. 6
      partner_multi_relation/views/res_partner_relation_all.xml
  30. 1
      setup/_metapackage/setup.py

189
partner_multi_relation/README.rst

@ -1,85 +1,168 @@
.. image:: https://img.shields.io/badge/license-AGPL--3-blue.png
:target: https://www.gnu.org/licenses/agpl
:alt: License: AGPL-3
=================
Partner Relations
=================
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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/licence-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%2Fpartner--contact-lightgray.png?logo=github
:target: https://github.com/OCA/partner-contact/tree/12.0/partner_multi_relation
:alt: OCA/partner-contact
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/partner-contact-12-0/partner-contact-12-0-partner_multi_relation
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/134/12.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
This module aims to provide generic means to model relations between partners.
Examples would be 'is sibling of' or 'is friend of', but also 'has contract X
with' or 'is assistant of'. This way, you can encode your knowledge about your
partners directly in your partner list.
Installation
============
**Table of contents**
Configuration
=============
.. contents::
:local:
Usage
=====
Before being able to use relations, you'll have define some first. Do that in
Contacts / Relations / Partner relations. Here, you need to
name both sides of the relation: To have an assistant-relation, you would name
one side 'is assistant of' and the other side 'has assistant'. This relation
only makes sense between people, so you would choose 'Person' for both partner
types. For the relation 'is a competitor of', both sides would be companies,
while the relation 'has worked for' should have persons on the left side and
companies on the right side. If you leave this field empty, the relation is
applicable to all types of partners.
Relation Types
~~~~~~~~~~~~~~
Before being able to use relations, you'll have define some first.
Do that in Contacts / Relations / Partner relations.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_list.png
A relation type has a name for both sides.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_empty.png
To have an assistant-relation, you would name one side 'is assistant of' and the other side 'has assistant'.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_name_filled.png
Partner Types
~~~~~~~~~~~~~
The `Partner Type` fields allow to constrain what type of partners can be used
on the left and right sides of the relation.
* In the example above, the assistant-relation only makes sense between people, so you would choose 'Person' for both partner types.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_partner_type_filled.png
* For a relation 'is a competitor of', both sides would be companies.
* A relation 'has worked for' should have persons on the left side and companies on the right side.
If you leave these fields empty, the relation is applicable to all types of partners.
Partner Categories
~~~~~~~~~~~~~~~~~~
You may use categories (tags) to further specify the type of partners.
You could for example enforce the 'is member of' relation to accept only companies with the label 'Organization' on the right side.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_category_filled.png
Reflexive
~~~~~~~~~
A reflexive relation type allows a partner to be in relation with himself.
For example, the CEO of a company could be his own manager.
If you use categories (tags) to further specify the type of partners, you could for
example enforce that the 'is member of' relation can only have companies with
label 'Organization' on the left side.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_reflexive.png
Now open a partner, click on the 'Relations' smart button and add relations as appropriate.
Symmetric
~~~~~~~~~
Searching partners with relations
---------------------------------
A symetric relation has the same value for the left and right sides.
Searching for relations is integrated transparently into the partner search
form. To find all assistants in your database, fill in 'is assistant of' and
autocomplete will propose to search for partners having this relation. Now if
you want to find Anna's assistant, you fill in 'Anna' and one of the proposals
is to search for partners having a relation with Anna. This results in Anna's
assistant(s), as you searched for assistants before.
For example, in a competitor relation, both companies are competitors of each other.
By default, only active, not expired relations are shown. If you need to find
partners that had some relation at a certain date, fill in that date in the
search box and one of the proposals is to search for relations valid at that
date.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_symmetric.png
More info
---------
Invalid Relation Handling
~~~~~~~~~~~~~~~~~~~~~~~~~
For further information, please visit:
When the configuration of a relation type changes, some relations between 2 partners may become invalid.
* https://www.odoo.com/forum/help-1
For example, if the left partner type is set to `Person` and a relation already exists with a company on the right side,
that relation becomes invalid.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_invalid_handling.png
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
:target: https://runbot.odoo-community.org/runbot/134/11.0
What happens with invalid relations is customizable on the relation type.
Known issues / Roadmap
======================
4 possible behaviors are available:
* Do not allow change that will result in invalid relations
* Allow existing relations that do not fit changed conditions
* End relations per today, if they do not fit changed conditions
* Delete relations that do not fit changed conditions
Searching Partners With Relations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To search for existing relations, go to `Contacts / Relations / Relations`.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation.png
To find all assistants in your database, fill in 'assistant' and
autocomplete will propose to search for this type of relation.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_2.png
Now if you want to find Colleen's assistant, you fill in 'Colleen' and one of the proposals
is to search for partners having a relation with Colleen.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_3.png
Searching Relations From Partner View
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A smart button is available on the partner form view to display the list of relations.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button.png
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button_2.png
Bug Tracker
===========
Bugs are tracked on `GitHub Issues
<https://github.com/OCA/partner-contact/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.
Bugs are tracked on `GitHub Issues <https://github.com/OCA/partner-contact/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/partner-contact/issues/new?body=module:%20partner_multi_relation%0Aversion:%2012.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
~~~~~~~
* Therp BV
* Camptocamp
Contributors
------------
~~~~~~~~~~~~
* Holger Brunn <hbrunn@therp.nl>
* Stefan Rijnhart <stefan@therp.nl>
@ -89,17 +172,19 @@ Contributors
* Adriana Ierfino <adriana.ierfino@savoirfairelinux.com>
* Numigi (tm) and all its contributors (https://bit.ly/numigiens)
Maintainer
----------
Maintainers
~~~~~~~~~~~
This module is maintained by the OCA.
.. 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.
This module is part of the `OCA/partner-contact <https://github.com/OCA/partner-contact/tree/12.0/partner_multi_relation>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

1
partner_multi_relation/__init__.py

@ -1,4 +1,3 @@
# Copyright 2013-2017 Therp BV <http://therp.nl>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import models
from . import tests

2
partner_multi_relation/__manifest__.py

@ -2,7 +2,7 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Partner Relations",
"version": "11.0.1.0.0",
"version": "12.0.1.0.0",
"author": "Therp BV,Camptocamp,Odoo Community Association (OCA)",
"website": "https://github.com/OCA/partner-contact",
"complexity": "normal",

317
partner_multi_relation/i18n/fr.po

@ -1,7 +1,7 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * partner_multi_relation
#
#
# Translators:
# Agathe Mollé <molleagathe@gmail.com>, 2017
# OCA Transbot <transbot@odoo-community.org>, 2017
@ -11,24 +11,25 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-01-23 01:51+0000\n"
"PO-Revision-Date: 2018-01-23 01:51+0000\n"
"POT-Creation-Date: 2018-11-14 19:12+0000\n"
"PO-Revision-Date: 2018-11-14 14:15-0500\n"
"Last-Translator: leemannd <denis.leemann@camptocamp.com>, 2017\n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 2.0.6\n"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:168
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:240
#, python-format
msgid "%s partner incompatible with relation type."
msgstr "Le partenaire %s est incompatible avec le type de relation."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_active
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__active
msgid "Active"
msgstr "Actif"
@ -43,14 +44,12 @@ msgid "All relation types"
msgstr "Tous types de relations"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__relation_all_ids
msgid "All relations with current partner"
msgstr "Toutes les relations avec le partenaire courant"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:14
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:13
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "Allow existing relations that do not fit changed conditions"
@ -59,50 +58,54 @@ msgstr ""
"modifiées."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_create_uid
#: model:ir.model,name:partner_multi_relation.model_res_partner
msgid "Contact"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__create_uid
msgid "Created by"
msgstr "Créé par"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__create_date
msgid "Created on"
msgstr "Créé le"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_partner_category_this
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__partner_category_this
msgid "Current record's category"
msgstr "Catégorie de l'enregistrement courant"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_contact_type_this
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__contact_type_this
msgid "Current record's partner type"
msgstr "Type de partenaire de l'enregistrement courant"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:18
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:17
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "Delete relations that do not fit changed conditions"
msgstr ""
"Supprimer les relations qui ne satisfont pas les conditions modifiées."
msgstr "Supprimer les relations qui ne satisfont pas les conditions modifiées."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_right_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__right_partner_id
msgid "Destination Partner"
msgstr "Partenaire destinataire"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__display_name
msgid "Display Name"
msgstr "Nom affiché"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:12
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:11
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "Do not allow change that will result in invalid relations"
@ -110,7 +113,7 @@ msgstr ""
"Ne pas autoriser de modification qui résulterait en d'invalides relations."
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:16
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:15
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "End relations per today, if they do not fit changed conditions"
@ -119,20 +122,20 @@ msgstr ""
"conditions modifiées."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__date_end
msgid "Ending date"
msgstr "Date de fin"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:165
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:241
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:237
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:315
#, python-format
msgid "Error!"
msgstr "Erreur !"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Group By"
msgstr "Regrouper par"
@ -147,23 +150,17 @@ msgid "Has former employee"
msgstr "A pour précédent employé"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_type_id
msgid "Has relation of type"
msgstr "A une relation de type"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_partner_id
msgid "Has relation with"
msgstr "A une relation avec"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_partner_category_id
msgid "Has relation with a partner in category"
msgstr "A une relation avec un partenaire dans la catégorie"
@ -173,30 +170,31 @@ msgid "Has worked for"
msgstr "A travaillé pour"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_id_4121
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__id
msgid "ID"
msgstr "ID"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Include past records"
msgstr "Inclure les enregistrement précédents"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_handle_invalid_onchange
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__handle_invalid_onchange
msgid "Invalid relation handling"
msgstr "Gestion des relations invalides"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_name_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__name_inverse
msgid "Inverse name"
msgstr "Nom inverse"
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_selection_is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_selection__is_inverse
msgid "Inverse relations are from right to left partner."
msgstr ""
"Les relations inverses sont du partenaire destinataire (droite) vers le "
@ -214,98 +212,99 @@ msgid "Is competitor of"
msgstr "Est compétiteur de"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__is_inverse
msgid "Is reverse type?"
msgstr "Est de type inverse ?"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection____last_update
msgid "Last Modified on"
msgstr "Dernière modification le"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__write_uid
msgid "Last Updated by"
msgstr "Dernière mise à jour par"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__write_date
msgid "Last Updated on"
msgstr "Dernière mise à jour le"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_partner_category_left
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__partner_category_left
msgid "Left partner category"
msgstr "Catégorie du partenaire de gauche"
#. module: partner_multi_relation
#: selection:res.partner.relation.all,record_type:0
msgid "Left partner to right partner"
msgstr "Partenaire de gauche vers partenaire de droite"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_contact_type_left
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__contact_type_left
msgid "Left partner type"
msgstr "Type du partenaire de gauche"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Left side of relation"
msgstr "Côté gauche de la relation"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Left to right"
msgstr "De gauche à droite"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__name
msgid "Name"
msgstr "Nom"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:173
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:244
#, python-format
msgid "No %s partner available for relation type."
msgstr "Pas de partenaire %s renseigné, nécessaire à ce type de relation."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_this_partner_id
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:448
#, python-format
msgid "No relation type specified in vals: %s."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__this_partner_id
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "One Partner"
msgstr "Un partenaire"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:83
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:82
#, python-format
msgid "Organisation"
msgstr "Organisation"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_other_partner_id
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__other_partner_id
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Other Partner"
msgstr "L'autre partenaire"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_partner_category_other
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__partner_category_other
msgid "Other record's category"
msgstr "Catégorie de l'autre partenaire"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_contact_type_other
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__contact_type_other
msgid "Other record's partner type"
msgstr "Type de l'autre partenaire"
#. module: partner_multi_relation
#: model:ir.model,name:partner_multi_relation.model_res_partner
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_any_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__any_partner_id
msgid "Partner"
msgstr "Partenaire"
@ -315,13 +314,12 @@ msgid "Partner Relation Type"
msgstr "Type de relation de partenaire"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.tree_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.tree_res_partner_relation_all
msgid "Partner Relations"
msgstr "Relations de partenaires"
#. module: partner_multi_relation
#: model:ir.actions.act_window,name:partner_multi_relation.action_res_partner_relation_type
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_type
msgid "Partner Relations Types"
msgstr "Types de relations de partenaires"
@ -331,126 +329,131 @@ msgid "Partner relation"
msgstr "Relation de partenaires"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:116
#: code:addons/partner_multi_relation/models/res_partner_relation.py:115
#, python-format
msgid "Partners cannot have a relation with themselves."
msgstr "Un partenaire ne peut pas avoir de relation avec lui-même."
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:84
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:83
#, python-format
msgid "Person"
msgstr "Individu"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Properties"
msgstr "Propriétés"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_record_type
msgid "Record Type"
msgstr "Type d'enregistrement"
#. module: partner_multi_relation
#: model:ir.actions.act_window,help:partner_multi_relation.action_res_partner_relation_all
#: model_terms:ir.actions.act_window,help:partner_multi_relation.action_res_partner_relation_all
msgid ""
"Record and track your partners' relations. Relations may\n"
" be linked to other partners with a type either directly\n"
" or inversely."
msgstr ""
"Enregistrez et suivez vos relations de partenaires. Les relations peuvent\n"
" être liées à d'autres partenaires avec un type, soit directement\n"
" être liées à d'autres partenaires avec un type, soit "
"directement\n"
" ou inversement."
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all_active
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__active
msgid "Records with date_end in the past are inactive"
msgstr "Les enregistrements avec la date de fin dans le passé sont inactifs"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__allow_self
msgid "Reflexive"
msgstr "Réflexive"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:179
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:196
#, python-format
msgid "Reflexivity could not be disabled for the relation type {relation_type}. There are existing reflexive relations defined for the following partners: {partners}"
msgstr "La reflexivité n'a pas pu être désactivée pour le type de relation {relation_type}. Il existe des relations réflexives pour les partenaires suivants: {partners}"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_relation_id
msgid "Relation"
msgstr "Relation"
msgid ""
"Reflexivity could not be disabled for the relation type {relation_type}. "
"There are existing reflexive relations defined for the following partners: "
"{partners}"
msgstr ""
"La reflexivité n'a pas pu être désactivée pour le type de relation "
"{relation_type}. Il existe des relations réflexives pour les partenaires "
"suivants: {partners}"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__relation_count
msgid "Relation Count"
msgstr "Nombre de relations"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_type_selection_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__type_selection_id
msgid "Relation Type"
msgstr "Type de relation"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:242
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_type
#, fuzzy
#| msgid "Relation Type"
msgid "Relation Types"
msgstr "Type de relation"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:316
#, python-format
msgid "Relation type incompatible with selected partner(s)."
msgstr ""
"Le type de relation est incompatible avec le(s) partenaire(s) "
"sélectionné(s)."
"Le type de relation est incompatible avec le(s) partenaire(s) sélectionné(s)."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_date
msgid "Relation valid"
msgstr "Relation valide"
#. module: partner_multi_relation
#: model:ir.actions.act_window,name:partner_multi_relation.action_res_partner_relation_all
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_sales
#: model:ir.ui.view,arch_db:partner_multi_relation.view_partner_form
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.view_partner_form
msgid "Relations"
msgstr "Relations"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Relationship Type"
msgstr "Type de relation"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_partner_category_right
msgid "Right partner category"
msgstr "Catégorie du partenaire de droite"
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__res_id
msgid "Resource ID"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__res_model
msgid "Resource Model"
msgstr ""
#. module: partner_multi_relation
#: selection:res.partner.relation.all,record_type:0
msgid "Right partner to left partner"
msgstr "Partenaire de droite vers partenaire de gauche"
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__partner_category_right
msgid "Right partner category"
msgstr "Catégorie du partenaire de droite"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_contact_type_right
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__contact_type_right
msgid "Right partner type"
msgstr "Type du partenaire de droite"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Right side of relation"
msgstr "Côté droit de la relation"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Right to left"
msgstr "De droite à gauche"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Search Relations"
msgstr "Rechercher les relations"
@ -460,34 +463,44 @@ msgid "Show partner's relations"
msgstr "Montrer les relations du partenaire"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_left_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__left_partner_id
msgid "Source Partner"
msgstr "Partenaire source"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__date_start
msgid "Starting date"
msgstr "Date de début"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__is_symmetric
msgid "Symmetric"
msgstr "Symétrique"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:102
#: code:addons/partner_multi_relation/models/res_partner_relation.py:101
#, python-format
msgid "The %s partner does not have category %s."
msgstr "Le partenaire %s n'est pas de catégorie %s."
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:96
#: code:addons/partner_multi_relation/models/res_partner_relation.py:95
#, python-format
msgid "The %s partner is not applicable for this relation type."
msgstr "Le partenaire %s n'est pas applicable pour ce type de relation."
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__res_model
msgid "The database object this relation is based on."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__res_id
msgid "The id of the object in the model this relation is based on."
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:62
#, python-format
@ -495,39 +508,46 @@ msgid "The starting date cannot be after the ending date."
msgstr "La date de début ne peut pas être postérieure à la date de fin."
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:155
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:165
#, python-format
msgid ""
"There are already relations not satisfying the conditions for partner type "
"or category."
msgstr ""
"Il existe déjà des relations ne satisfaisant pas les conditions pour le type"
" de partenaire ou la catégorie."
"Il existe déjà des relations ne satisfaisant pas les conditions pour le type "
"de partenaire ou la catégorie."
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:155
#: code:addons/partner_multi_relation/models/res_partner_relation.py:154
#, python-format
msgid "There is already a similar relation with overlapping dates"
msgstr "Il existe déjà une relation similaire avec des dates se chevauchant."
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_allow_self
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__allow_self
msgid "This relation can be set up with the same partner left and right"
msgstr "Cette relation peut avoir le même partenaire à gauche et à droite."
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_is_symmetric
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__is_symmetric
msgid "This relation is the same from right to left as from left to right"
msgstr "Cette relation est la même de droite à gauche que de gauche à droite."
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__type_id
msgid "Type"
msgstr "Type"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner.py:80
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__type_id
#, fuzzy
#| msgid "Partner Relation Type"
msgid "Underlying Relation Type"
msgstr "Type de relation de partenaire"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner.py:79
#, python-format
msgid "Unsupported search operator \"%s\""
msgstr "Opérateur de recherche non supporté \"%s\""
@ -553,24 +573,27 @@ msgid "Washing Silver"
msgstr "Nettoyage Argent"
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_handle_invalid_onchange
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__handle_invalid_onchange
msgid ""
"When adding relations criteria like partner type and category are checked.\n"
"However when you change the criteria, there might be relations that do not fit the new criteria.\n"
"However when you change the criteria, there might be relations that do not "
"fit the new criteria.\n"
"Specify how this situation should be handled."
msgstr ""
"En ajoutant une nouvelle relation, les critères tels que le type des partenaires et les catégories sont vérifiés. \n"
"Cependant, si vous changez les critères à posteriori, il est possible que des relations déjà existantes ne satisfassent pas les nouveaux critères.\n"
"En ajoutant une nouvelle relation, les critères tels que le type des "
"partenaires et les catégories sont vérifiés. \n"
"Cependant, si vous changez les critères à posteriori, il est possible que "
"des relations déjà existantes ne satisfassent pas les nouveaux critères.\n"
"Spécifiez comment cette situation doit être gérée."
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:212
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:289
#, python-format
msgid "other"
msgstr "de droite"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:208
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:286
#, python-format
msgid "this"
msgstr "de gauche"

290
partner_multi_relation/i18n/fr_CA.po

@ -1,31 +1,33 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * partner_multi_relation
#
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-12-26 15:33+0000\n"
"PO-Revision-Date: 2017-12-26 15:33+0000\n"
"POT-Creation-Date: 2018-11-14 19:12+0000\n"
"PO-Revision-Date: 2018-11-14 14:14-0500\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: French (Canada) (https://www.transifex.com/oca/teams/23907/fr_CA/)\n"
"Language-Team: French (Canada) (https://www.transifex.com/oca/teams/23907/"
"fr_CA/)\n"
"Language: fr_CA\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr_CA\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 2.0.6\n"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:168
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:240
#, python-format
msgid "%s partner incompatible with relation type."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_active
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__active
msgid "Active"
msgstr ""
@ -40,90 +42,93 @@ msgid "All relation types"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__relation_all_ids
msgid "All relations with current partner"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:14
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:13
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "Allow existing relations that do not fit changed conditions"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_create_uid
#: model:ir.model,name:partner_multi_relation.model_res_partner
msgid "Contact"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__create_uid
msgid "Created by"
msgstr "Créé par"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__create_date
msgid "Created on"
msgstr "Créé le"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_partner_category_this
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__partner_category_this
msgid "Current record's category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_contact_type_this
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__contact_type_this
msgid "Current record's partner type"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:18
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:17
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "Delete relations that do not fit changed conditions"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_right_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__right_partner_id
msgid "Destination Partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__display_name
msgid "Display Name"
msgstr "Afficher le nom"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:12
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:11
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "Do not allow change that will result in invalid relations"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:16
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:15
#: selection:res.partner.relation.type,handle_invalid_onchange:0
#, python-format
msgid "End relations per today, if they do not fit changed conditions"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__date_end
msgid "Ending date"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:165
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:241
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:237
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:315
#, python-format
msgid "Error!"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Group By"
msgstr ""
@ -138,23 +143,17 @@ msgid "Has former employee"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_type_id
msgid "Has relation of type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_partner_id
msgid "Has relation with"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_partner_category_id
msgid "Has relation with a partner in category"
msgstr ""
@ -164,30 +163,31 @@ msgid "Has worked for"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_id_4121
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__id
msgid "ID"
msgstr "Identifiant"
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Include past records"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_handle_invalid_onchange
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__handle_invalid_onchange
msgid "Invalid relation handling"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_name_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__name_inverse
msgid "Inverse name"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_selection_is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_selection__is_inverse
msgid "Inverse relations are from right to left partner."
msgstr ""
@ -203,98 +203,99 @@ msgid "Is competitor of"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__is_inverse
msgid "Is reverse type?"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection____last_update
msgid "Last Modified on"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__write_uid
msgid "Last Updated by"
msgstr "Dernière mise à jour par"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__write_date
msgid "Last Updated on"
msgstr "Dernière mise à jour le"
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_partner_category_left
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__partner_category_left
msgid "Left partner category"
msgstr ""
#. module: partner_multi_relation
#: selection:res.partner.relation.all,record_type:0
msgid "Left partner to right partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_contact_type_left
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__contact_type_left
msgid "Left partner type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Left side of relation"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Left to right"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__name
msgid "Name"
msgstr "Nom"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:173
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:244
#, python-format
msgid "No %s partner available for relation type."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_this_partner_id
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:448
#, python-format
msgid "No relation type specified in vals: %s."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__this_partner_id
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "One Partner"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:83
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:82
#, python-format
msgid "Organisation"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_other_partner_id
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__other_partner_id
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Other Partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_partner_category_other
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__partner_category_other
msgid "Other record's category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_contact_type_other
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__contact_type_other
msgid "Other record's partner type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model,name:partner_multi_relation.model_res_partner
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_any_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__any_partner_id
msgid "Partner"
msgstr "Partenaire"
@ -304,13 +305,12 @@ msgid "Partner Relation Type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.tree_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.tree_res_partner_relation_all
msgid "Partner Relations"
msgstr ""
#. module: partner_multi_relation
#: model:ir.actions.act_window,name:partner_multi_relation.action_res_partner_relation_type
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_type
msgid "Partner Relations Types"
msgstr ""
@ -320,115 +320,122 @@ msgid "Partner relation"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:116
#: code:addons/partner_multi_relation/models/res_partner_relation.py:115
#, python-format
msgid "Partners cannot have a relation with themselves."
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:84
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:83
#, python-format
msgid "Person"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Properties"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_record_type
msgid "Record Type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.actions.act_window,help:partner_multi_relation.action_res_partner_relation_all
#: model_terms:ir.actions.act_window,help:partner_multi_relation.action_res_partner_relation_all
msgid ""
"Record and track your partners' relations. Relations may\n"
" be linked to other partners with a type either directly\n"
" be linked to other partners with a type either "
"directly\n"
" or inversely."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all_active
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__active
msgid "Records with date_end in the past are inactive"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__allow_self
msgid "Reflexive"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_relation_id
msgid "Relation"
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:196
#, python-format
msgid ""
"Reflexivity could not be disabled for the relation type {relation_type}. "
"There are existing reflexive relations defined for the following partners: "
"{partners}"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__relation_count
msgid "Relation Count"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_type_selection_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__type_selection_id
msgid "Relation Type"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:242
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_type
msgid "Relation Types"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:316
#, python-format
msgid "Relation type incompatible with selected partner(s)."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_alias_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_date
msgid "Relation valid"
msgstr ""
#. module: partner_multi_relation
#: model:ir.actions.act_window,name:partner_multi_relation.action_res_partner_relation_all
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_sales
#: model:ir.ui.view,arch_db:partner_multi_relation.view_partner_form
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.view_partner_form
msgid "Relations"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Relationship Type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_partner_category_right
msgid "Right partner category"
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__res_id
msgid "Resource ID"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__res_model
msgid "Resource Model"
msgstr ""
#. module: partner_multi_relation
#: selection:res.partner.relation.all,record_type:0
msgid "Right partner to left partner"
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__partner_category_right
msgid "Right partner category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_contact_type_right
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__contact_type_right
msgid "Right partner type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Right side of relation"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Right to left"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Search Relations"
msgstr ""
@ -438,34 +445,44 @@ msgid "Show partner's relations"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_left_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__left_partner_id
msgid "Source Partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__date_start
msgid "Starting date"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__is_symmetric
msgid "Symmetric"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:102
#: code:addons/partner_multi_relation/models/res_partner_relation.py:101
#, python-format
msgid "The %s partner does not have category %s."
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:96
#: code:addons/partner_multi_relation/models/res_partner_relation.py:95
#, python-format
msgid "The %s partner is not applicable for this relation type."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__res_model
msgid "The database object this relation is based on."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__res_id
msgid "The id of the object in the model this relation is based on."
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:62
#, python-format
@ -473,7 +490,7 @@ msgid "The starting date cannot be after the ending date."
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:155
#: code:addons/partner_multi_relation/models/res_partner_relation_type.py:165
#, python-format
msgid ""
"There are already relations not satisfying the conditions for partner type "
@ -481,29 +498,34 @@ msgid ""
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation.py:155
#: code:addons/partner_multi_relation/models/res_partner_relation.py:154
#, python-format
msgid "There is already a similar relation with overlapping dates"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_allow_self
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__allow_self
msgid "This relation can be set up with the same partner left and right"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_is_symmetric
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__is_symmetric
msgid "This relation is the same from right to left as from left to right"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__type_id
msgid "Type"
msgstr "Type"
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner.py:80
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__type_id
msgid "Underlying Relation Type"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner.py:79
#, python-format
msgid "Unsupported search operator \"%s\""
msgstr ""
@ -529,21 +551,23 @@ msgid "Washing Silver"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_handle_invalid_onchange
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__handle_invalid_onchange
msgid ""
"When adding relations criteria like partner type and category are checked.\n"
"However when you change the criteria, there might be relations that do not fit the new criteria.\n"
"When adding relations criteria like partner type and category are "
"checked.\n"
"However when you change the criteria, there might be relations that do not "
"fit the new criteria.\n"
"Specify how this situation should be handled."
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:212
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:289
#, python-format
msgid "other"
msgstr ""
#. module: partner_multi_relation
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:208
#: code:addons/partner_multi_relation/models/res_partner_relation_all.py:286
#, python-format
msgid "this"
msgstr ""

174
partner_multi_relation/i18n/partner_multi_relation.pot

@ -4,8 +4,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 11.0\n"
"Project-Id-Version: Odoo Server 12.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-11-14 19:12+0000\n"
"PO-Revision-Date: 2018-11-14 19:12+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
@ -20,7 +22,7 @@ msgid "%s partner incompatible with relation type."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_active
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__active
msgid "Active"
msgstr ""
@ -35,8 +37,7 @@ msgid "All relation types"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_relation_all_ids
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__relation_all_ids
msgid "All relations with current partner"
msgstr ""
@ -53,24 +54,24 @@ msgid "Contact"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__create_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__create_uid
msgid "Created by"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__create_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__create_date
msgid "Created on"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_partner_category_this
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__partner_category_this
msgid "Current record's category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_contact_type_this
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__contact_type_this
msgid "Current record's partner type"
msgstr ""
@ -82,15 +83,15 @@ msgid "Delete relations that do not fit changed conditions"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_right_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__right_partner_id
msgid "Destination Partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__display_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__display_name
msgid "Display Name"
msgstr ""
@ -109,8 +110,8 @@ msgid "End relations per today, if they do not fit changed conditions"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__date_end
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__date_end
msgid "Ending date"
msgstr ""
@ -122,7 +123,7 @@ msgid "Error!"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Group By"
msgstr ""
@ -137,20 +138,17 @@ msgid "Has former employee"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_type_id
msgid "Has relation of type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_partner_id
msgid "Has relation with"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_partner_category_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_partner_category_id
msgid "Has relation with a partner in category"
msgstr ""
@ -160,31 +158,31 @@ msgid "Has worked for"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__id
msgid "ID"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Include past records"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_handle_invalid_onchange
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__handle_invalid_onchange
msgid "Invalid relation handling"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_name_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__name_inverse
msgid "Inverse name"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all_is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_selection_is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__is_inverse
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_selection__is_inverse
msgid "Inverse relations are from right to left partner."
msgstr ""
@ -200,54 +198,54 @@ msgid "Is competitor of"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__is_inverse
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__is_inverse
msgid "Is reverse type?"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection___last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type____last_update
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection____last_update
msgid "Last Modified on"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__write_uid
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__write_uid
msgid "Last Updated by"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__write_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__write_date
msgid "Last Updated on"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_partner_category_left
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__partner_category_left
msgid "Left partner category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_contact_type_left
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__contact_type_left
msgid "Left partner type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Left side of relation"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Left to right"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__name
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__name
msgid "Name"
msgstr ""
@ -264,8 +262,8 @@ msgid "No relation type specified in vals: %s."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_this_partner_id
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__this_partner_id
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "One Partner"
msgstr ""
@ -276,23 +274,23 @@ msgid "Organisation"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_other_partner_id
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__other_partner_id
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Other Partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_partner_category_other
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__partner_category_other
msgid "Other record's category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_contact_type_other
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__contact_type_other
msgid "Other record's partner type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_any_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__any_partner_id
msgid "Partner"
msgstr ""
@ -302,7 +300,7 @@ msgid "Partner Relation Type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.tree_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.tree_res_partner_relation_all
msgid "Partner Relations"
msgstr ""
@ -329,25 +327,25 @@ msgid "Person"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Properties"
msgstr ""
#. module: partner_multi_relation
#: model:ir.actions.act_window,help:partner_multi_relation.action_res_partner_relation_all
#: model_terms:ir.actions.act_window,help:partner_multi_relation.action_res_partner_relation_all
msgid "Record and track your partners' relations. Relations may\n"
" be linked to other partners with a type either directly\n"
" or inversely."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all_active
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__active
msgid "Records with date_end in the past are inactive"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__allow_self
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__allow_self
msgid "Reflexive"
msgstr ""
@ -358,13 +356,12 @@ msgid "Reflexivity could not be disabled for the relation type {relation_type}.
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_relation_count
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__relation_count
msgid "Relation Count"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_type_selection_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__type_selection_id
msgid "Relation Type"
msgstr ""
@ -380,8 +377,7 @@ msgid "Relation type incompatible with selected partner(s)."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_users_search_relation_date
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner__search_relation_date
msgid "Relation valid"
msgstr ""
@ -389,47 +385,47 @@ msgstr ""
#: model:ir.actions.act_window,name:partner_multi_relation.action_res_partner_relation_all
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation
#: model:ir.ui.menu,name:partner_multi_relation.menu_res_partner_relation_all
#: model:ir.ui.view,arch_db:partner_multi_relation.view_partner_form
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.view_partner_form
msgid "Relations"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Relationship Type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_res_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__res_id
msgid "Resource ID"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_res_model
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__res_model
msgid "Resource Model"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_partner_category_right
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__partner_category_right
msgid "Right partner category"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_contact_type_right
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__contact_type_right
msgid "Right partner type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.form_res_partner_relation_type
msgid "Right side of relation"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Right to left"
msgstr ""
#. module: partner_multi_relation
#: model:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
#: model_terms:ir.ui.view,arch_db:partner_multi_relation.search_res_partner_relation_all
msgid "Search Relations"
msgstr ""
@ -439,19 +435,19 @@ msgid "Show partner's relations"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_left_partner_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__left_partner_id
msgid "Source Partner"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__date_start
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__date_start
msgid "Starting date"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type__is_symmetric
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__is_symmetric
msgid "Symmetric"
msgstr ""
@ -468,12 +464,12 @@ msgid "The %s partner is not applicable for this relation type."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all_res_model
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__res_model
msgid "The database object this relation is based on."
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all_res_id
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_all__res_id
msgid "The id of the object in the model this relation is based on."
msgstr ""
@ -496,23 +492,23 @@ msgid "There is already a similar relation with overlapping dates"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_allow_self
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__allow_self
msgid "This relation can be set up with the same partner left and right"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_is_symmetric
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__is_symmetric
msgid "This relation is the same from right to left as from left to right"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_id_4087
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation__type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_type_selection__type_id
msgid "Type"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all_type_id
#: model:ir.model.fields,field_description:partner_multi_relation.field_res_partner_relation_all__type_id
msgid "Underlying Relation Type"
msgstr ""
@ -543,7 +539,7 @@ msgid "Washing Silver"
msgstr ""
#. module: partner_multi_relation
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type_handle_invalid_onchange
#: model:ir.model.fields,help:partner_multi_relation.field_res_partner_relation_type__handle_invalid_onchange
msgid "When adding relations criteria like partner type and category are checked.\n"
"However when you change the criteria, there might be relations that do not fit the new criteria.\n"
"Specify how this situation should be handled."

1
partner_multi_relation/models/__init__.py

@ -1,4 +1,3 @@
# Copyright 2013-2017 Therp BV <http://therp.nl>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import res_partner_relation_type
from . import res_partner_relation_type_selection

7
partner_multi_relation/readme/CONTRIBUTORS.rst

@ -0,0 +1,7 @@
* Holger Brunn <hbrunn@therp.nl>
* Stefan Rijnhart <stefan@therp.nl>
* Ronald Portier <ronald@therp.nl>
* Sandy Carter <sandy.carter@savoirfairelinux.com>
* Bruno Joliveau <bruno.joliveau@savoirfairelinux.com>
* Adriana Ierfino <adriana.ierfino@savoirfairelinux.com>
* Numigi (tm) and all its contributors (https://bit.ly/numigiens)

5
partner_multi_relation/readme/DESCRIPTION.rst

@ -0,0 +1,5 @@
This module aims to provide generic means to model relations between partners.
Examples would be 'is sibling of' or 'is friend of', but also 'has contract X
with' or 'is assistant of'. This way, you can encode your knowledge about your
partners directly in your partner list.

102
partner_multi_relation/readme/USAGE.rst

@ -0,0 +1,102 @@
Relation Types
~~~~~~~~~~~~~~
Before being able to use relations, you'll have define some first.
Do that in Contacts / Relations / Partner relations.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_list.png
A relation type has a name for both sides.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_empty.png
To have an assistant-relation, you would name one side 'is assistant of' and the other side 'has assistant'.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_name_filled.png
Partner Types
~~~~~~~~~~~~~
The `Partner Type` fields allow to constrain what type of partners can be used
on the left and right sides of the relation.
* In the example above, the assistant-relation only makes sense between people, so you would choose 'Person' for both partner types.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_partner_type_filled.png
* For a relation 'is a competitor of', both sides would be companies.
* A relation 'has worked for' should have persons on the left side and companies on the right side.
If you leave these fields empty, the relation is applicable to all types of partners.
Partner Categories
~~~~~~~~~~~~~~~~~~
You may use categories (tags) to further specify the type of partners.
You could for example enforce the 'is member of' relation to accept only companies with the label 'Organization' on the right side.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_category_filled.png
Reflexive
~~~~~~~~~
A reflexive relation type allows a partner to be in relation with himself.
For example, the CEO of a company could be his own manager.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_reflexive.png
Symmetric
~~~~~~~~~
A symetric relation has the same value for the left and right sides.
For example, in a competitor relation, both companies are competitors of each other.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_symmetric.png
Invalid Relation Handling
~~~~~~~~~~~~~~~~~~~~~~~~~
When the configuration of a relation type changes, some relations between 2 partners may become invalid.
For example, if the left partner type is set to `Person` and a relation already exists with a company on the right side,
that relation becomes invalid.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_invalid_handling.png
What happens with invalid relations is customizable on the relation type.
4 possible behaviors are available:
* Do not allow change that will result in invalid relations
* Allow existing relations that do not fit changed conditions
* End relations per today, if they do not fit changed conditions
* Delete relations that do not fit changed conditions
Searching Partners With Relations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To search for existing relations, go to `Contacts / Relations / Relations`.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation.png
To find all assistants in your database, fill in 'assistant' and
autocomplete will propose to search for this type of relation.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_2.png
Now if you want to find Colleen's assistant, you fill in 'Colleen' and one of the proposals
is to search for partners having a relation with Colleen.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_3.png
Searching Relations From Partner View
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A smart button is available on the partner form view to display the list of relations.
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button.png
.. image:: https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button_2.png

517
partner_multi_relation/static/description/index.html

@ -0,0 +1,517 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils 0.14: http://docutils.sourceforge.net/" />
<title>Partner Relations</title>
<style type="text/css">
/*
:Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
customize this style sheet.
*/
/* used to remove borders from tables and images */
.borderless, table.borderless td, table.borderless th {
border: 0 }
table.borderless td, table.borderless th {
/* Override padding for "table.docutils td" with "! important".
The right padding separates the table cells. */
padding: 0 0.5em 0 0 ! important }
.first {
/* Override more specific margin styles with "! important". */
margin-top: 0 ! important }
.last, .with-subtitle {
margin-bottom: 0 ! important }
.hidden {
display: none }
.subscript {
vertical-align: sub;
font-size: smaller }
.superscript {
vertical-align: super;
font-size: smaller }
a.toc-backref {
text-decoration: none ;
color: black }
blockquote.epigraph {
margin: 2em 5em ; }
dl.docutils dd {
margin-bottom: 0.5em }
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
overflow: hidden;
}
/* Uncomment (and remove this text!) to get bold-faced definition list terms
dl.docutils dt {
font-weight: bold }
*/
div.abstract {
margin: 2em 5em }
div.abstract p.topic-title {
font-weight: bold ;
text-align: center }
div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
margin: 2em ;
border: medium outset ;
padding: 1em }
div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
font-weight: bold ;
font-family: sans-serif }
div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title, .code .error {
color: red ;
font-weight: bold ;
font-family: sans-serif }
/* Uncomment (and remove this text!) to get reduced vertical space in
compound paragraphs.
div.compound .compound-first, div.compound .compound-middle {
margin-bottom: 0.5em }
div.compound .compound-last, div.compound .compound-middle {
margin-top: 0.5em }
*/
div.dedication {
margin: 2em 5em ;
text-align: center ;
font-style: italic }
div.dedication p.topic-title {
font-weight: bold ;
font-style: normal }
div.figure {
margin-left: 2em ;
margin-right: 2em }
div.footer, div.header {
clear: both;
font-size: smaller }
div.line-block {
display: block ;
margin-top: 1em ;
margin-bottom: 1em }
div.line-block div.line-block {
margin-top: 0 ;
margin-bottom: 0 ;
margin-left: 1.5em }
div.sidebar {
margin: 0 0 0.5em 1em ;
border: medium outset ;
padding: 1em ;
background-color: #ffffee ;
width: 40% ;
float: right ;
clear: right }
div.sidebar p.rubric {
font-family: sans-serif ;
font-size: medium }
div.system-messages {
margin: 5em }
div.system-messages h1 {
color: red }
div.system-message {
border: medium outset ;
padding: 1em }
div.system-message p.system-message-title {
color: red ;
font-weight: bold }
div.topic {
margin: 2em }
h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
margin-top: 0.4em }
h1.title {
text-align: center }
h2.subtitle {
text-align: center }
hr.docutils {
width: 75% }
img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
img.align-center, .figure.align-center, object.align-center {
display: block;
margin-left: auto;
margin-right: auto;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
.align-left {
text-align: left }
.align-center {
clear: both ;
text-align: center }
.align-right {
text-align: right }
/* reset inner alignment in figures */
div.align-right {
text-align: inherit }
/* div.align-center * { */
/* text-align: left } */
.align-top {
vertical-align: top }
.align-middle {
vertical-align: middle }
.align-bottom {
vertical-align: bottom }
ol.simple, ul.simple {
margin-bottom: 1em }
ol.arabic {
list-style: decimal }
ol.loweralpha {
list-style: lower-alpha }
ol.upperalpha {
list-style: upper-alpha }
ol.lowerroman {
list-style: lower-roman }
ol.upperroman {
list-style: upper-roman }
p.attribution {
text-align: right ;
margin-left: 50% }
p.caption {
font-style: italic }
p.credits {
font-style: italic ;
font-size: smaller }
p.label {
white-space: nowrap }
p.rubric {
font-weight: bold ;
font-size: larger ;
color: maroon ;
text-align: center }
p.sidebar-title {
font-family: sans-serif ;
font-weight: bold ;
font-size: larger }
p.sidebar-subtitle {
font-family: sans-serif ;
font-weight: bold }
p.topic-title {
font-weight: bold }
pre.address {
margin-bottom: 0 ;
margin-top: 0 ;
font: inherit }
pre.literal-block, pre.doctest-block, pre.math, pre.code {
margin-left: 2em ;
margin-right: 2em }
pre.code .ln { color: grey; } /* line numbers */
pre.code, code { background-color: #eeeeee }
pre.code .comment, code .comment { color: #5C6576 }
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
pre.code .literal.string, code .literal.string { color: #0C5404 }
pre.code .name.builtin, code .name.builtin { color: #352B84 }
pre.code .deleted, code .deleted { background-color: #DEB0A1}
pre.code .inserted, code .inserted { background-color: #A3D289}
span.classifier {
font-family: sans-serif ;
font-style: oblique }
span.classifier-delimiter {
font-family: sans-serif ;
font-weight: bold }
span.interpreted {
font-family: sans-serif }
span.option {
white-space: nowrap }
span.pre {
white-space: pre }
span.problematic {
color: red }
span.section-subtitle {
/* font-size relative to parent (h1..h6 element) */
font-size: 80% }
table.citation {
border-left: solid 1px gray;
margin-left: 1px }
table.docinfo {
margin: 2em 4em }
table.docutils {
margin-top: 0.5em ;
margin-bottom: 0.5em }
table.footnote {
border-left: solid 1px black;
margin-left: 1px }
table.docutils td, table.docutils th,
table.docinfo td, table.docinfo th {
padding-left: 0.5em ;
padding-right: 0.5em ;
vertical-align: top }
table.docutils th.field-name, table.docinfo th.docinfo-name {
font-weight: bold ;
text-align: left ;
white-space: nowrap ;
padding-left: 0 }
/* "booktabs" style (no vertical lines) */
table.docutils.booktabs {
border: 0px;
border-top: 2px solid;
border-bottom: 2px solid;
border-collapse: collapse;
}
table.docutils.booktabs * {
border: 0px;
}
table.docutils.booktabs th {
border-bottom: thin solid;
text-align: left;
}
h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
font-size: 100% }
ul.auto-toc {
list-style-type: none }
</style>
</head>
<body>
<div class="document" id="partner-relations">
<h1 class="title">Partner Relations</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/partner-contact/tree/12.0/partner_multi_relation"><img alt="OCA/partner-contact" src="https://img.shields.io/badge/github-OCA%2Fpartner--contact-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/partner-contact-12-0/partner-contact-12-0-partner_multi_relation"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/134/12.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
<p>This module aims to provide generic means to model relations between partners.</p>
<p>Examples would be ‘is sibling of’ or ‘is friend of’, but also ‘has contract X
with’ or ‘is assistant of’. This way, you can encode your knowledge about your
partners directly in your partner list.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#usage" id="id1">Usage</a><ul>
<li><a class="reference internal" href="#relation-types" id="id2">Relation Types</a></li>
<li><a class="reference internal" href="#partner-types" id="id3">Partner Types</a></li>
<li><a class="reference internal" href="#partner-categories" id="id4">Partner Categories</a></li>
<li><a class="reference internal" href="#reflexive" id="id5">Reflexive</a></li>
<li><a class="reference internal" href="#symmetric" id="id6">Symmetric</a></li>
<li><a class="reference internal" href="#invalid-relation-handling" id="id7">Invalid Relation Handling</a></li>
<li><a class="reference internal" href="#searching-partners-with-relations" id="id8">Searching Partners With Relations</a></li>
<li><a class="reference internal" href="#searching-relations-from-partner-view" id="id9">Searching Relations From Partner View</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bug-tracker" id="id10">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id11">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id12">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id13">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id14">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#id1">Usage</a></h1>
<div class="section" id="relation-types">
<h2><a class="toc-backref" href="#id2">Relation Types</a></h2>
<p>Before being able to use relations, you’ll have define some first.
Do that in Contacts / Relations / Partner relations.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_list.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_list.png" />
<p>A relation type has a name for both sides.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_empty.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_empty.png" />
<p>To have an assistant-relation, you would name one side ‘is assistant of’ and the other side ‘has assistant’.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_name_filled.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_name_filled.png" />
</div>
<div class="section" id="partner-types">
<h2><a class="toc-backref" href="#id3">Partner Types</a></h2>
<p>The <cite>Partner Type</cite> fields allow to constrain what type of partners can be used
on the left and right sides of the relation.</p>
<ul class="simple">
<li>In the example above, the assistant-relation only makes sense between people, so you would choose ‘Person’ for both partner types.</li>
</ul>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_partner_type_filled.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_partner_type_filled.png" />
<ul class="simple">
<li>For a relation ‘is a competitor of’, both sides would be companies.</li>
<li>A relation ‘has worked for’ should have persons on the left side and companies on the right side.</li>
</ul>
<p>If you leave these fields empty, the relation is applicable to all types of partners.</p>
</div>
<div class="section" id="partner-categories">
<h2><a class="toc-backref" href="#id4">Partner Categories</a></h2>
<p>You may use categories (tags) to further specify the type of partners.</p>
<p>You could for example enforce the ‘is member of’ relation to accept only companies with the label ‘Organization’ on the right side.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_category_filled.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_form_category_filled.png" />
</div>
<div class="section" id="reflexive">
<h2><a class="toc-backref" href="#id5">Reflexive</a></h2>
<p>A reflexive relation type allows a partner to be in relation with himself.</p>
<p>For example, the CEO of a company could be his own manager.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_reflexive.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_reflexive.png" />
</div>
<div class="section" id="symmetric">
<h2><a class="toc-backref" href="#id6">Symmetric</a></h2>
<p>A symetric relation has the same value for the left and right sides.</p>
<p>For example, in a competitor relation, both companies are competitors of each other.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_symmetric.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_symmetric.png" />
</div>
<div class="section" id="invalid-relation-handling">
<h2><a class="toc-backref" href="#id7">Invalid Relation Handling</a></h2>
<p>When the configuration of a relation type changes, some relations between 2 partners may become invalid.</p>
<p>For example, if the left partner type is set to <cite>Person</cite> and a relation already exists with a company on the right side,
that relation becomes invalid.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_invalid_handling.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/relation_type_invalid_handling.png" />
<p>What happens with invalid relations is customizable on the relation type.</p>
<p>4 possible behaviors are available:</p>
<ul class="simple">
<li>Do not allow change that will result in invalid relations</li>
<li>Allow existing relations that do not fit changed conditions</li>
<li>End relations per today, if they do not fit changed conditions</li>
<li>Delete relations that do not fit changed conditions</li>
</ul>
</div>
<div class="section" id="searching-partners-with-relations">
<h2><a class="toc-backref" href="#id8">Searching Partners With Relations</a></h2>
<p>To search for existing relations, go to <cite>Contacts / Relations / Relations</cite>.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation.png" />
<p>To find all assistants in your database, fill in ‘assistant’ and
autocomplete will propose to search for this type of relation.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_2.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_2.png" />
<p>Now if you want to find Colleen’s assistant, you fill in ‘Colleen’ and one of the proposals
is to search for partners having a relation with Colleen.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_3.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/search_relation_3.png" />
</div>
<div class="section" id="searching-relations-from-partner-view">
<h2><a class="toc-backref" href="#id9">Searching Relations From Partner View</a></h2>
<p>A smart button is available on the partner form view to display the list of relations.</p>
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button.png" />
<img alt="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button_2.png" src="https://raw.githubusercontent.com/OCA/partner-contact/12.0/partner_multi_relation/static/description/partner_form_view_smart_button_2.png" />
</div>
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#id10">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/partner-contact/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/partner-contact/issues/new?body=module:%20partner_multi_relation%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h1><a class="toc-backref" href="#id11">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#id12">Authors</a></h2>
<ul class="simple">
<li>Therp BV</li>
<li>Camptocamp</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#id13">Contributors</a></h2>
<ul class="simple">
<li>Holger Brunn &lt;<a class="reference external" href="mailto:hbrunn&#64;therp.nl">hbrunn&#64;therp.nl</a>&gt;</li>
<li>Stefan Rijnhart &lt;<a class="reference external" href="mailto:stefan&#64;therp.nl">stefan&#64;therp.nl</a>&gt;</li>
<li>Ronald Portier &lt;<a class="reference external" href="mailto:ronald&#64;therp.nl">ronald&#64;therp.nl</a>&gt;</li>
<li>Sandy Carter &lt;<a class="reference external" href="mailto:sandy.carter&#64;savoirfairelinux.com">sandy.carter&#64;savoirfairelinux.com</a>&gt;</li>
<li>Bruno Joliveau &lt;<a class="reference external" href="mailto:bruno.joliveau&#64;savoirfairelinux.com">bruno.joliveau&#64;savoirfairelinux.com</a>&gt;</li>
<li>Adriana Ierfino &lt;<a class="reference external" href="mailto:adriana.ierfino&#64;savoirfairelinux.com">adriana.ierfino&#64;savoirfairelinux.com</a>&gt;</li>
<li>Numigi (tm) and all its contributors (<a class="reference external" href="https://bit.ly/numigiens">https://bit.ly/numigiens</a>)</li>
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#id14">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
<p>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.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/partner-contact/tree/12.0/partner_multi_relation">OCA/partner-contact</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
</div>
</body>
</html>

BIN
partner_multi_relation/static/description/partner_form_view_smart_button.png

After

Width: 1113  |  Height: 516  |  Size: 74 KiB

BIN
partner_multi_relation/static/description/partner_form_view_smart_button_2.png

After

Width: 1116  |  Height: 320  |  Size: 47 KiB

BIN
partner_multi_relation/static/description/relation_type_form_category_filled.png

After

Width: 1116  |  Height: 383  |  Size: 43 KiB

BIN
partner_multi_relation/static/description/relation_type_form_empty.png

After

Width: 1114  |  Height: 528  |  Size: 46 KiB

BIN
partner_multi_relation/static/description/relation_type_form_name_filled.png

After

Width: 1112  |  Height: 358  |  Size: 36 KiB

BIN
partner_multi_relation/static/description/relation_type_form_partner_type_filled.png

After

Width: 1113  |  Height: 357  |  Size: 40 KiB

BIN
partner_multi_relation/static/description/relation_type_invalid_handling.png

After

Width: 1113  |  Height: 532  |  Size: 48 KiB

BIN
partner_multi_relation/static/description/relation_type_list.png

After

Width: 1115  |  Height: 322  |  Size: 44 KiB

BIN
partner_multi_relation/static/description/relation_type_reflexive.png

After

Width: 1115  |  Height: 541  |  Size: 51 KiB

BIN
partner_multi_relation/static/description/relation_type_symmetric.png

After

Width: 1111  |  Height: 535  |  Size: 48 KiB

BIN
partner_multi_relation/static/description/search_relation.png

After

Width: 1115  |  Height: 330  |  Size: 57 KiB

BIN
partner_multi_relation/static/description/search_relation_2.png

After

Width: 1114  |  Height: 320  |  Size: 63 KiB

BIN
partner_multi_relation/static/description/search_relation_3.png

After

Width: 1111  |  Height: 322  |  Size: 38 KiB

1
partner_multi_relation/tests/__init__.py

@ -1,4 +1,3 @@
# Copyright 2016 Therp BV
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import test_partner_relation_common
from . import test_partner_relation

5
partner_multi_relation/tests/test_partner_relation.py

@ -147,7 +147,7 @@ class TestPartnerRelation(TestPartnerRelationCommon):
type_allow.allow_self = False
self.assertEqual(reflexive_relation.date_end, fields.Date.today())
self.assertEqual(past_reflexive_relation.date_end, '2000-01-01')
self.assertEqual(past_reflexive_relation.date_end, date(2000, 1, 1))
self.assertFalse(normal_relation.date_end)
def test_self_disallowed_with_future_reflexive_relation(self):
@ -334,8 +334,7 @@ class TestPartnerRelation(TestPartnerRelationCommon):
'this_partner_id': partner_lisa.id,
'type_selection_id': school2student.id,
'other_partner_id': partner_homer.id,
'date_start': fields.Date.to_string(
date.today() + relativedelta(months=+6))})
'date_start': date.today() + relativedelta(months=+6)})
self.assertTrue(relation_lisa2homer)
type_school2student.write({
'handle_invalid_onchange': 'end',

4
partner_multi_relation/tests/test_partner_relation_all.py

@ -1,5 +1,7 @@
# Copyright 2016-2017 Therp BV
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from datetime import date
from odoo.exceptions import ValidationError
from .test_partner_relation_common import TestPartnerRelationCommon
@ -69,7 +71,7 @@ class TestPartnerRelation(TestPartnerRelationCommon):
relation = self._create_company2person_relation()
relation.write({'date_start': '2014-09-01'})
relation.invalidate_cache(ids=relation.ids)
self.assertEqual(relation.date_start, '2014-09-01')
self.assertEqual(relation.date_start, date(2014, 9, 1))
def test_write_incompatible_dates(self):
"""Test write with date_end before date_start."""

14
partner_multi_relation/views/res_partner.xml

@ -6,14 +6,12 @@
<field name="inherit_id" ref="base.view_res_partner_filter" />
<field name="model">res.partner</field>
<field type="xml" name="arch">
<data>
<field name="parent_id" position="after">
<field name="search_relation_partner_id" />
<field name="search_relation_type_id" />
<field name="search_relation_date" />
<field name="search_relation_partner_category_id" />
</field>
</data>
<field name="parent_id" position="after">
<field name="search_relation_partner_id" />
<field name="search_relation_type_id" />
<field name="search_relation_date" />
<field name="search_relation_partner_category_id" />
</field>
</field>
</record>

6
partner_multi_relation/views/res_partner_relation_all.xml

@ -40,27 +40,33 @@
<field name="other_partner_id"/>
<field name="type_selection_id"/>
<filter
name="left_to_right"
string="Left to right"
domain="[('is_inverse', '=', False)]"
/>
<filter
name="right_to_left"
string="Right to left"
domain="[('is_inverse', '=', True)]"
/>
<filter
name="include_part_records"
string="Include past records"
context="{'active_test': False}"
/>
<group expand="0" string="Group By">
<filter
name="group_by_this_partner_id"
string="One Partner"
context="{'group_by': 'this_partner_id'}"
/>
<filter
name="group_by_type_selection_id"
string="Relationship Type"
context="{'group_by': 'type_selection_id'}"
/>
<filter
name="group_by_other_partner_id"
string="Other Partner"
context="{'group_by': 'other_partner_id'}"
/>

1
setup/_metapackage/setup.py

@ -11,6 +11,7 @@ setuptools.setup(
'odoo12-addon-base_location',
'odoo12-addon-partner_external_map',
'odoo12-addon-partner_fax',
'odoo12-addon-partner_multi_relation',
],
classifiers=[
'Programming Language :: Python',

Loading…
Cancel
Save