Automatic Update form OCA2FC Migrator

This commit is contained in:
Flectra Community Bot 2022-01-09 03:14:09 +00:00 committed by OCA2FC Migrator Bot
parent fb2ec2af2b
commit d5a39714b6
54 changed files with 1245 additions and 547 deletions

View File

@ -9,8 +9,8 @@ Available addons
addon | version | summary
--- | --- | ---
[mis_builder_budget](mis_builder_budget/) | 2.0.3.5.1| Create budgets for MIS reports
[mis_builder](mis_builder/) | 2.0.3.6.8| Build 'Management Information System' Reports and Dashboards
[mis_builder_budget](mis_builder_budget/) | 2.0.4.0.0| Create budgets for MIS reports
[mis_builder](mis_builder/) | 2.0.4.0.0| Build 'Management Information System' Reports and Dashboards
[mis_builder_demo](mis_builder_demo/) | 2.0.3.1.3| Demo addon for MIS Builder

View File

@ -13,6 +13,7 @@ Most of the files are
Copyright 2019 ACSONE SA/NV (<http://acsone.eu>)
Copyright 2020 ACSONE SA/NV
Copyright 2020 ACSONE SA/NV (<http://acsone.eu>)
Copyright 2020 CorporateHub (https://corporatehub.eu)
Copyright 2018 Flectra Community
Many files also contain contributions from third

View File

@ -97,7 +97,35 @@ be found on GitHub.
Changelog
=========
14.0.4.0.0 (2022-01-08)
~~~~~~~~~~~~~~~~~~~~~~~
**Features**
- Remove various field size limits. (`#332 <https://github.com/OCA/mis-builder/issues/332>`_)
**Bugfixes**
- Support for the Odoo 13+ multi-company model. In multi-company mode, several allowed
companies can be declared on MIS Report instances, and the report operates on the
intersection of report companies and companies selected in the user context. (`#327 <https://github.com/OCA/mis-builder/issues/327>`_)
- The ``get_additional_query_filter`` argument of ``evaluate()`` is now propagated
correctly. (`#375 <https://github.com/OCA/mis-builder/issues/375>`_)
- Use the ``parent_state`` field of ``account.move.line`` to filter entries in ``posted``
and ``draft`` state only. Before, when reporting in draft mode, all entries were used
(i.e. there was no filter), and that started including the cancelled entries/invoices in
Odoo 13.+.
This change also contains a **breaking change** in the internal API. For quite a while
the ``target_move argument`` of AEP and other methods was not used by MIS Builder itself
and was kept for backward compatibility. To avoid rippling effects of the necessary
change to use ``parent_state``, we now remove this argument. (`#377 <https://github.com/OCA/mis-builder/issues/377>`_)
14.0.3.6.7 (2021-06-02)
~~~~~~~~~~~~~~~~~~~~~~~
**Bugfixes**
- When on a MIS Report Instance, if you wanted to generate a new line of type comparison, you couldn't currently select any existing period to compare.
@ -570,6 +598,9 @@ Contributors
* Arnaud Pineux <arnaud.pineux@acsone.eu>
* Ernesto Tejeda <ernesto.tejeda@tecnativa.com>
* Pedro M. Baeza <pedro.baeza@tecnativa.com>
* `CorporateHub <https://corporatehub.eu/>`__
* Alexey Pelykh <alexey.pelykh@corphub.eu>
Maintainers
~~~~~~~~~~~

View File

@ -3,7 +3,7 @@
{
"name": "MIS Builder",
"version": "2.0.3.6.8",
"version": "2.0.4.0.0",
"category": "Reporting",
"summary": """
Build 'Management Information System' Reports and Dashboards

View File

@ -292,6 +292,16 @@ msgstr "Tots els assentaments assentats"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -411,10 +421,8 @@ msgstr "Cancel·lar"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Comprovi si desitja especificar companyies filles per a buscar-hi dades."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -465,21 +473,11 @@ msgstr "Columnes a sumar"
msgid "Columns {} and {} are not comparable"
msgstr "Les columnes {} i {} no són comparables"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Companyies"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Companyies per a les que es buscaran dades."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Companyia"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -685,6 +683,11 @@ msgstr ""
msgid "Duration"
msgstr "Durada"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1389,11 +1392,6 @@ msgstr "Imprimeix"
msgid "Queries"
msgstr "Consultes"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr "Companyia de la consulta"
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, fuzzy, python-format
@ -1716,6 +1714,12 @@ msgstr "Per (calculat)"
msgid "Unexpected accumulation method %s for %s."
msgstr "Mètode d'acumulació %s no esperat per a %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1837,6 +1841,20 @@ msgstr "extra-súper-gran"
msgid "xx-small"
msgstr "extra-súper-petita"
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Comprovi si desitja especificar companyies filles per a buscar-hi dades."
#~ msgid "Companies"
#~ msgstr "Companyies"
#~ msgid "Company"
#~ msgstr "Companyia"
#~ msgid "Query Company"
#~ msgstr "Companyia de la consulta"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -277,6 +277,16 @@ msgstr ""
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -394,8 +404,7 @@ msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -447,21 +456,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -659,6 +658,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1339,11 +1343,6 @@ msgstr ""
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1658,6 +1657,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format

View File

@ -273,6 +273,16 @@ msgstr ""
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -390,8 +400,7 @@ msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -443,21 +452,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -655,6 +654,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1335,11 +1339,6 @@ msgstr ""
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1654,6 +1653,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format

View File

@ -273,6 +273,16 @@ msgstr ""
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -390,8 +400,7 @@ msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -443,21 +452,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -655,6 +654,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1335,11 +1339,6 @@ msgstr ""
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1654,6 +1653,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format

View File

@ -294,6 +294,16 @@ msgstr "Todos los asientos asentados"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -413,10 +423,8 @@ msgstr "Cancelar"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Compruebe si desea especificar compañías hijas para buscar datos en ellas."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -467,21 +475,11 @@ msgstr "Columnas a sumar"
msgid "Columns {} and {} are not comparable"
msgstr "Las columnas {} and {} no son comparables"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Compañías"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Compañías para las que se buscarán datos."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Compañía"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -688,6 +686,11 @@ msgstr ""
msgid "Duration"
msgstr "Duración"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1386,11 +1389,6 @@ msgstr "Imprimir"
msgid "Queries"
msgstr "Consultas"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr "Compañía de la consulta"
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1713,6 +1711,12 @@ msgstr "Para (calculado)"
msgid "Unexpected accumulation method %s for %s."
msgstr "Método de acumulación %s no esperado para %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1834,6 +1838,20 @@ msgstr "extra-súper-grande"
msgid "xx-small"
msgstr "extra-súper-pequeña"
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Compruebe si desea especificar compañías hijas para buscar datos en ellas."
#~ msgid "Companies"
#~ msgstr "Compañías"
#~ msgid "Company"
#~ msgstr "Compañía"
#~ msgid "Query Company"
#~ msgstr "Compañía de la consulta"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -288,6 +288,16 @@ msgstr "Écritures comptabilisées seulement"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -407,11 +417,8 @@ msgstr "Annuler"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Vérifiez si vous souhaitez spécifier des sociétés enfants dont les données "
"seront recherchées."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -462,21 +469,11 @@ msgstr "Colonnes à additionner"
msgid "Columns {} and {} are not comparable"
msgstr "Les colonnes {} et {} ne sont pas comparables"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Sociétés"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Sociétés pour lesquelles les données seront recherchées."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Société"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -682,6 +679,11 @@ msgstr ""
msgid "Duration"
msgstr "Durée"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1377,11 +1379,6 @@ msgstr "Imprimer"
msgid "Queries"
msgstr "Requêtes"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr "Société de la requête"
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, fuzzy, python-format
@ -1709,6 +1706,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr "Méthode d'accumulation inattendue %s pour %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1830,6 +1833,21 @@ msgstr "xx-grand"
msgid "xx-small"
msgstr "xx-petit"
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Vérifiez si vous souhaitez spécifier des sociétés enfants dont les "
#~ "données seront recherchées."
#~ msgid "Companies"
#~ msgstr "Sociétés"
#~ msgid "Company"
#~ msgstr "Société"
#~ msgid "Query Company"
#~ msgstr "Société de la requête"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -285,6 +285,16 @@ msgstr "Sve proknjižene stavke"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -404,8 +414,7 @@ msgstr "Otkaži"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -457,21 +466,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Tvrtka"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -669,6 +668,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1349,11 +1353,6 @@ msgstr ""
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1668,6 +1667,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1789,6 +1794,9 @@ msgstr ""
msgid "xx-small"
msgstr ""
#~ msgid "Company"
#~ msgstr "Tvrtka"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -276,6 +276,16 @@ msgstr "Tutte le registrazioni confermate"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -393,10 +403,8 @@ msgstr "Annulla"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Spuntare se si desidera specificare le aziende figlie da ricercare per dati."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -447,21 +455,11 @@ msgstr "Colonne da sommare"
msgid "Columns {} and {} are not comparable"
msgstr "Le colonne {} e {} non sono confrontabili"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Aziende"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Società dalla quali i dati verranno ricercati."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Azienda"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -665,6 +663,11 @@ msgstr ""
msgid "Duration"
msgstr "Durata"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1347,11 +1350,6 @@ msgstr "Stampa"
msgid "Queries"
msgstr "Domande"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1672,6 +1670,12 @@ msgstr "A (calcolato)"
msgid "Unexpected accumulation method %s for %s."
msgstr "Metodo di accumulo imprevisto %s for %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1792,3 +1796,15 @@ msgstr ""
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_style__font_size__xx-small
msgid "xx-small"
msgstr ""
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Spuntare se si desidera specificare le aziende figlie da ricercare per "
#~ "dati."
#~ msgid "Companies"
#~ msgstr "Aziende"
#~ msgid "Company"
#~ msgstr "Azienda"

View File

@ -252,6 +252,16 @@ msgstr ""
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -371,7 +381,7 @@ msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
"Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -423,21 +433,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -631,6 +631,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1311,11 +1316,6 @@ msgstr ""
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1627,6 +1627,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format

View File

@ -288,6 +288,16 @@ msgstr "Alle Geboekte Regels"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -407,11 +417,8 @@ msgstr "Annuleer"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Controleer of u dochterbedrijven wilt selecteren waarvan de data moet worden "
"meegenomen."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -462,21 +469,11 @@ msgstr "Op te sommen kolommen"
msgid "Columns {} and {} are not comparable"
msgstr "Kolommen {} en {} zijn niet vergelijkbaar"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Bedrijven"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Bedrijven waarvoor de data wordt doorzocht."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Bedrijf"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -684,6 +681,11 @@ msgstr ""
msgid "Duration"
msgstr "Duur"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1381,11 +1383,6 @@ msgstr "Print"
msgid "Queries"
msgstr "Queries"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr "Query Bedrijf"
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, fuzzy, python-format
@ -1710,6 +1707,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr "Onverwachte accumulatiemethode %s voor %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1831,6 +1834,21 @@ msgstr "XXL"
msgid "xx-small"
msgstr "XXS"
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Controleer of u dochterbedrijven wilt selecteren waarvan de data moet "
#~ "worden meegenomen."
#~ msgid "Companies"
#~ msgstr "Bedrijven"
#~ msgid "Company"
#~ msgstr "Bedrijf"
#~ msgid "Query Company"
#~ msgstr "Query Bedrijf"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -291,6 +291,16 @@ msgstr "Alle Geboekte Regels"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -410,11 +420,8 @@ msgstr "Annuleer"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Controleer of u dochterbedrijven wilt selecteren waarvan de data moet worden "
"meegenomen."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -465,21 +472,11 @@ msgstr "Op te sommen kolommen"
msgid "Columns {} and {} are not comparable"
msgstr "Kolommen {} en {} zijn niet vergelijkbaar"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Bedrijven"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Bedrijven waarvoor de data wordt doorzocht."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Bedrijf"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -687,6 +684,11 @@ msgstr ""
msgid "Duration"
msgstr "Duur"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1384,11 +1386,6 @@ msgstr "Afdrukken"
msgid "Queries"
msgstr "Query's"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr "Query Bedrijf"
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, fuzzy, python-format
@ -1713,6 +1710,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr "Onverwachte accumulatiemethode %s voor %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1834,6 +1837,21 @@ msgstr "XXL"
msgid "xx-small"
msgstr "XXS"
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Controleer of u dochterbedrijven wilt selecteren waarvan de data moet "
#~ "worden meegenomen."
#~ msgid "Companies"
#~ msgstr "Bedrijven"
#~ msgid "Company"
#~ msgstr "Bedrijf"
#~ msgid "Query Company"
#~ msgstr "Query Bedrijf"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -277,6 +277,16 @@ msgstr "Todos os lançamentos publicados"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -394,8 +404,7 @@ msgstr "Cancelar"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -447,21 +456,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Empresa"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -659,6 +658,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1339,11 +1343,6 @@ msgstr ""
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1658,6 +1657,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1778,3 +1783,6 @@ msgstr ""
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_style__font_size__xx-small
msgid "xx-small"
msgstr ""
#~ msgid "Company"
#~ msgstr "Empresa"

View File

@ -289,6 +289,16 @@ msgstr "Todas as Entradas Postadas"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -408,11 +418,8 @@ msgstr "Cancelar"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
"Verifique se deseja especificar empresas filhas para serem pesquisadas por "
"dados."
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_style_view_form
@ -463,21 +470,11 @@ msgstr "Colunas para somar"
msgid "Columns {} and {} are not comparable"
msgstr "Colunas {} e {} não são comparáveis"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr "Empresas"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr "Empresas para as quais os dados serão pesquisados."
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Empresa"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -682,6 +679,11 @@ msgstr ""
msgid "Duration"
msgstr "Duração"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -1376,11 +1378,6 @@ msgstr "Imprimir"
msgid "Queries"
msgstr "Consultas"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr "Empresa de Consulta"
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, fuzzy, python-format
@ -1703,6 +1700,12 @@ msgstr "Para (computado)"
msgid "Unexpected accumulation method %s for %s."
msgstr "Método de acumulação %s não esperado para %s."
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1824,6 +1827,21 @@ msgstr "grandíssimo"
msgid "xx-small"
msgstr "Pequeníssimo"
#~ msgid ""
#~ "Check if you wish to specify children companies to be searched for data."
#~ msgstr ""
#~ "Verifique se deseja especificar empresas filhas para serem pesquisadas "
#~ "por dados."
#~ msgid "Companies"
#~ msgstr "Empresas"
#~ msgid "Company"
#~ msgstr "Empresa"
#~ msgid "Query Company"
#~ msgstr "Empresa de Consulta"
#~ msgid ""
#~ "<b>AccountingNone</b>: a null value that behaves as 0 in arithmetic "
#~ "operations."

View File

@ -29,9 +29,11 @@ msgid ""
"<b>\n"
" balp[('user_type_id', '=',\n"
" ref('account.\n"
" data_account_type_receivable').id)][]\n"
" data_account_type_receivable')."
"id)][]\n"
" </b>\n"
" : variation of the balance of all receivable\n"
" : variation of the balance of "
"all receivable\n"
" accounts over the period."
msgstr ""
@ -39,10 +41,13 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>\n"
" balp[][('tax_line_id.tag_ids', '=',\n"
" ref('l10n_be.tax_tag_56').id)]\n"
" balp[][('tax_line_id."
"tag_ids', '=',\n"
" ref('l10n_be.tax_tag_56')."
"id)]\n"
" </b>\n"
" : balance of move lines related to tax grid\n"
" : balance of move lines related "
"to tax grid\n"
" 56."
msgstr ""
@ -50,10 +55,12 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>\n"
" debp[55%][('journal_id.code', '=',\n"
" debp[55%][('journal_id."
"code', '=',\n"
" 'BNK1')]\n"
" </b>\n"
" : sum of all debits on accounts 55 and\n"
" : sum of all debits on accounts "
"55 and\n"
" journal BNK1 during the period."
msgstr ""
@ -61,7 +68,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>AccountingNone</b>\n"
" : a null value that behaves as 0 in\n"
" : a null value that behaves as 0 "
"in\n"
" arithmetic operations."
msgstr ""
@ -69,7 +77,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>bal, crd, deb, pbal, nbal</b>\n"
" : balance, debit, credit, positive balance,\n"
" : balance, debit, credit, "
"positive balance,\n"
" negative balance."
msgstr ""
@ -77,15 +86,18 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>bal[70]</b>\n"
" : variation of the balance of account 70\n"
" over the period (it is the same as balp[70]."
" : variation of the balance of "
"account 70\n"
" over the period (it is the same "
"as balp[70]."
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>bale[1%]</b>\n"
" : balance of accounts starting with 1 at end\n"
" : balance of accounts starting "
"with 1 at end\n"
" of period."
msgstr ""
@ -93,15 +105,18 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>bali[70,60]</b>\n"
" : initial balance of accounts 70 and 60."
" : initial balance of accounts 70 "
"and 60."
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>balu[]</b>\n"
" : (u for unallocated) is a special\n"
" expression that shows the unallocated\n"
" : (u for unallocated) is a "
"special\n"
" expression that shows the "
"unallocated\n"
" profit/loss of previous\n"
" fiscal years."
msgstr ""
@ -110,7 +125,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>crdp[40%]</b>\n"
" : sum of all credits on accounts starting\n"
" : sum of all credits on accounts "
"starting\n"
" with 40 during the period."
msgstr ""
@ -118,7 +134,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>date_from, date_to</b>\n"
" : beginning and end date of the period."
" : beginning and end date of the "
"period."
msgstr ""
#. module: mis_builder
@ -132,7 +149,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>p, i, e</b>\n"
" : respectively variation over the period,\n"
" : respectively variation over "
"the period,\n"
" initial balance, ending balance"
msgstr ""
@ -140,7 +158,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>pbale[55%]</b>\n"
" : sum of all ending balances of accounts\n"
" : sum of all ending balances of "
"accounts\n"
" starting with 55 whose\n"
" ending balance is positive."
msgstr ""
@ -149,22 +168,23 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"<b>sum, min, max, len, avg</b>\n"
" : behave as expected, very similar to the\n"
" : behave as expected, very "
"similar to the\n"
" python builtins."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance_period__source_aml_model_id
msgid ""
"A 'move line like' model, ie having at least debit, credit, date, account_id"
" and company_id fields."
"A 'move line like' model, ie having at least debit, credit, date, account_id "
"and company_id fields."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report__move_lines_source
msgid ""
"A 'move line like' model, ie having at least debit, credit, date, account_id"
" and company_id fields. This model is the data source for column Actuals."
"A 'move line like' model, ie having at least debit, credit, date, account_id "
"and company_id fields. This model is the data source for column Actuals."
msgstr ""
#. module: mis_builder
@ -187,9 +207,8 @@ msgstr ""
#: code:addons/mis_builder/models/mis_report_instance.py:0
#, python-format
msgid ""
"Actual (alternative) models used in columns must have the same account model"
" in the Account field and must be the same defined in the report template: "
"%s"
"Actual (alternative) models used in columns must have the same account model "
"in the Account field and must be the same defined in the report template: %s"
msgstr ""
#. module: mis_builder
@ -206,7 +225,8 @@ msgstr ""
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance_period__source
msgid ""
"Actuals: current data, from accounting and other queries.\n"
"Actuals (alternative): current data from an alternative source (eg a database view providing look-alike account move lines).\n"
"Actuals (alternative): current data from an alternative source (eg a "
"database view providing look-alike account move lines).\n"
"Sum columns: summation (+/-) of other columns.\n"
"Compare to column: compare to other column.\n"
msgstr ""
@ -255,6 +275,16 @@ msgstr "Alla bokförda poster"
msgid "Allowed Cmpcol"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Allowed companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Allowed company"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_kpi_data__amount
msgid "Amount"
@ -263,8 +293,8 @@ msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_kpi__style_expression
msgid ""
"An expression that returns a style depending on the KPI value. Such style is"
" applied on top of the row style."
"An expression that returns a style depending on the KPI value. Such style is "
"applied on top of the row style."
msgstr ""
#. module: mis_builder
@ -327,7 +357,6 @@ msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#: code:addons/mis_builder/models/mis_report.py:0
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_kpi__accumulation_method__avg
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_query__aggregate__avg
#, python-format
@ -373,8 +402,7 @@ msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__multi_company
msgid ""
"Check if you wish to specify children companies to be searched for data."
msgid "Check if you wish to specify several companies to be searched for data."
msgstr ""
#. module: mis_builder
@ -426,21 +454,11 @@ msgstr ""
msgid "Columns {} and {} are not comparable"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_ids
msgid "Companies"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_instance__query_company_ids
msgid "Companies for which data will be searched."
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__company_id
msgid "Company"
msgstr "Bolag"
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance_period__source_cmpcol_to_id
msgid "Compare"
@ -558,8 +576,12 @@ msgstr "Beskrivning"
#. module: mis_builder
#: model:ir.model.fields,help:mis_builder.field_mis_report_kpi__accumulation_method
msgid ""
"Determines how values of this kpi spanning over a time period are transformed to match the reporting period. Sum: values of shorter period are added, values of longest or partially overlapping periods are adjusted pro-rata temporis.\n"
"Average: values of included period are averaged with a pro-rata temporis weight."
"Determines how values of this kpi spanning over a time period are "
"transformed to match the reporting period. Sum: values of shorter period are "
"added, values of longest or partially overlapping periods are adjusted pro-"
"rata temporis.\n"
"Average: values of included period are averaged with a pro-rata temporis "
"weight."
msgstr ""
#. module: mis_builder
@ -634,6 +656,11 @@ msgstr ""
msgid "Duration"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Effective companies"
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid "Enter expression here, for example balp[70%]. See also help tab."
@ -676,7 +703,8 @@ msgstr ""
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"Expressions can involve other KPI, sub KPI and\n"
" query results by name (eg kpi1 + kpi2,\n"
" query results by name (eg kpi1 + "
"kpi2,\n"
" kpi2.subkpi1, query1.field1)."
msgstr ""
@ -895,7 +923,8 @@ msgid ""
"This can be fixed by either:\n"
"\t- Changing the KPI value to a tuple of length {}\n"
"or\n"
"\t- Changing the KPI to `multi` mode and giving an explicit value for each sub-KPI."
"\t- Changing the KPI to `multi` mode and giving an explicit value for each "
"sub-KPI."
msgstr ""
#. module: mis_builder
@ -1201,7 +1230,6 @@ msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#: code:addons/mis_builder/models/mis_report.py:0
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_kpi__accumulation_method__none
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_kpi__compare_method__none
#, python-format
@ -1248,7 +1276,6 @@ msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#: code:addons/mis_builder/models/mis_report.py:0
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_kpi__compare_method__pct
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_kpi__type__pct
#, python-format
@ -1314,11 +1341,6 @@ msgstr "Skriv ut"
msgid "Queries"
msgstr ""
#. module: mis_builder
#: model:ir.model.fields,field_description:mis_builder.field_mis_report_instance__query_company_ids
msgid "Query Company"
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
@ -1532,7 +1554,6 @@ msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#: code:addons/mis_builder/models/mis_report.py:0
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_kpi__accumulation_method__sum
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_query__aggregate__sum
#, python-format
@ -1588,7 +1609,8 @@ msgstr ""
msgid ""
"The\n"
" <b>account selector</b>\n"
" is a like expression on the account code (eg\n"
" is a like expression on the "
"account code (eg\n"
" 70%, etc)."
msgstr ""
@ -1597,16 +1619,19 @@ msgstr ""
msgid ""
"The\n"
" <b>journal items domain</b>\n"
" is an Odoo domain filter on journal items."
" is an Odoo domain filter on "
"journal items."
msgstr ""
#. module: mis_builder
#: model_terms:ir.ui.view,arch_db:mis_builder.mis_report_view_kpi_form
msgid ""
"The following special elements are recognized in\n"
" the expressions to compute accounting data:\n"
" the expressions to compute "
"accounting data:\n"
" <code>\n"
" {bal|crd|deb|pbal|nbal}{pieu}[account\n"
" {bal|crd|deb|pbal|nbal}{pieu}"
"[account\n"
" selector][journal items domain]\n"
" </code>\n"
" ."
@ -1630,6 +1655,12 @@ msgstr ""
msgid "Unexpected accumulation method %s for %s."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/mis_report.py:0
#, python-format
msgid "Unexpected value %s for target_move."
msgstr ""
#. module: mis_builder
#: code:addons/mis_builder/models/prorata_read_group_mixin.py:0
#, python-format
@ -1750,3 +1781,6 @@ msgstr ""
#: model:ir.model.fields.selection,name:mis_builder.selection__mis_report_style__font_size__xx-small
msgid "xx-small"
msgstr ""
#~ msgid "Company"
#~ msgstr "Bolag"

View File

@ -22,7 +22,7 @@ _DOMAIN_START_RE = re.compile(r"\(|(['\"])[!&|]\1")
def _is_domain(s):
""" Test if a string looks like an Flectra domain """
"""Test if a string looks like an Flectra domain"""
return _DOMAIN_START_RE.match(s)
@ -189,7 +189,7 @@ class AccountingExpressionProcessor(object):
self._map_account_ids[key].add(acc_domain)
def done_parsing(self):
""" Replace account domains by account ids in map """
"""Replace account domains by account ids in map"""
for key, acc_domains in self._map_account_ids.items():
all_account_ids = set()
for acc_domain in acc_domains:
@ -217,9 +217,7 @@ class AccountingExpressionProcessor(object):
account_ids.update(self._account_ids_by_acc_domain[acc_domain])
return account_ids
def get_aml_domain_for_expr(
self, expr, date_from, date_to, target_move, account_id=None
):
def get_aml_domain_for_expr(self, expr, date_from, date_to, account_id=None):
"""Get a domain on account.move.line for an expression.
Prerequisite: done_parsing() must have been invoked.
@ -248,14 +246,14 @@ class AccountingExpressionProcessor(object):
aml_domains.append(expression.normalize_domain(aml_domain))
if mode not in date_domain_by_mode:
date_domain_by_mode[mode] = self.get_aml_domain_for_dates(
date_from, date_to, mode, target_move
date_from, date_to, mode
)
assert aml_domains
# TODO we could do this for more precision:
# AND(OR(aml_domains[mode]), date_domain[mode]) for each mode
return expression.OR(aml_domains) + expression.OR(date_domain_by_mode.values())
def get_aml_domain_for_dates(self, date_from, date_to, mode, target_move):
def get_aml_domain_for_dates(self, date_from, date_to, mode):
if mode == self.MODE_VARIATION:
domain = [("date", ">=", date_from), ("date", "<=", date_to)]
elif mode in (self.MODE_INITIAL, self.MODE_END):
@ -288,8 +286,6 @@ class AccountingExpressionProcessor(object):
("date", "<", fields.Date.to_string(fy_date_from)),
("account_id.user_type_id.include_initial_balance", "=", False),
]
if target_move == "posted":
domain.append(("move_id.state", "=", "posted"))
return expression.normalize_domain(domain)
def _get_company_rates(self, date):
@ -308,7 +304,6 @@ class AccountingExpressionProcessor(object):
self,
date_from,
date_to,
target_move="posted",
additional_move_line_filter=None,
aml_model=None,
):
@ -335,7 +330,7 @@ class AccountingExpressionProcessor(object):
continue
if mode not in domain_by_mode:
domain_by_mode[mode] = self.get_aml_domain_for_dates(
date_from, date_to, mode, target_move
date_from, date_to, mode
)
domain = list(domain) + domain_by_mode[mode]
domain.append(("account_id", "in", self._map_account_ids[key]))
@ -472,7 +467,7 @@ class AccountingExpressionProcessor(object):
yield account_id, [self._ACC_RE.sub(f, expr) for expr in exprs]
@classmethod
def _get_balances(cls, mode, companies, date_from, date_to, target_move="posted"):
def _get_balances(cls, mode, companies, date_from, date_to):
expr = "deb{mode}[], crd{mode}[]".format(mode=mode)
aep = AccountingExpressionProcessor(companies)
# disable smart_end to have the data at once, instead
@ -480,11 +475,11 @@ class AccountingExpressionProcessor(object):
aep.smart_end = False
aep.parse_expr(expr)
aep.done_parsing()
aep.do_queries(date_from, date_to, target_move)
aep.do_queries(date_from, date_to)
return aep._data[((), mode)]
@classmethod
def get_balances_initial(cls, companies, date, target_move="posted"):
def get_balances_initial(cls, companies, date):
"""A convenience method to obtain the initial balances of all accounts
at a given date.
@ -492,14 +487,13 @@ class AccountingExpressionProcessor(object):
:param companies:
:param date:
:param target_move: if 'posted', consider only posted moves
Returns a dictionary: {account_id, (debit, credit)}
"""
return cls._get_balances(cls.MODE_INITIAL, companies, date, date, target_move)
return cls._get_balances(cls.MODE_INITIAL, companies, date, date)
@classmethod
def get_balances_end(cls, companies, date, target_move="posted"):
def get_balances_end(cls, companies, date):
"""A convenience method to obtain the ending balances of all accounts
at a given date.
@ -507,43 +501,34 @@ class AccountingExpressionProcessor(object):
:param companies:
:param date:
:param target_move: if 'posted', consider only posted moves
Returns a dictionary: {account_id, (debit, credit)}
"""
return cls._get_balances(cls.MODE_END, companies, date, date, target_move)
return cls._get_balances(cls.MODE_END, companies, date, date)
@classmethod
def get_balances_variation(
cls, companies, date_from, date_to, target_move="posted"
):
def get_balances_variation(cls, companies, date_from, date_to):
"""A convenience method to obtain the variation of the
balances of all accounts over a period.
:param companies:
:param date:
:param target_move: if 'posted', consider only posted moves
Returns a dictionary: {account_id, (debit, credit)}
"""
return cls._get_balances(
cls.MODE_VARIATION, companies, date_from, date_to, target_move
)
return cls._get_balances(cls.MODE_VARIATION, companies, date_from, date_to)
@classmethod
def get_unallocated_pl(cls, companies, date, target_move="posted"):
def get_unallocated_pl(cls, companies, date):
"""A convenience method to obtain the unallocated profit/loss
of the previous fiscal years at a given date.
:param companies:
:param date:
:param target_move: if 'posted', consider only posted moves
Returns a tuple (debit, credit)
"""
# TODO shoud we include here the accounts of type "unaffected"
# or leave that to the caller?
bals = cls._get_balances(
cls.MODE_UNALLOCATED, companies, date, date, target_move
)
bals = cls._get_balances(cls.MODE_UNALLOCATED, companies, date, date)
return tuple(map(sum, zip(*bals.values())))

View File

@ -15,14 +15,12 @@ class ExpressionEvaluator(object):
aep,
date_from,
date_to,
target_move=None,
additional_move_line_filter=None,
aml_model=None,
):
self.aep = aep
self.date_from = date_from
self.date_to = date_to
self.target_move = target_move
self.additional_move_line_filter = additional_move_line_filter
self.aml_model = aml_model
self._aep_queries_done = False
@ -32,7 +30,6 @@ class ExpressionEvaluator(object):
self.aep.do_queries(
self.date_from,
self.date_to,
self.target_move,
self.additional_move_line_filter,
self.aml_model,
)

View File

@ -1,4 +1,5 @@
# Copyright 2014 ACSONE SA/NV (<http://acsone.eu>)
# Copyright 2020 CorporateHub (https://corporatehub.eu)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
import datetime
@ -77,7 +78,7 @@ class MisReportKpi(models.Model):
_name = "mis.report.kpi"
_description = "MIS Report KPI"
name = fields.Char(size=32, required=True, string="Name")
name = fields.Char(required=True, string="Name")
description = fields.Char(required=True, string="Description", translate=True)
multi = fields.Boolean()
expression = fields.Char(
@ -215,7 +216,7 @@ class MisReportKpi(models.Model):
@api.onchange("description")
def _onchange_description(self):
""" construct name from description """
"""construct name from description"""
if self.description and not self.name:
self.name = _python_var(self.description)
@ -262,7 +263,7 @@ class MisReportSubkpi(models.Model):
report_id = fields.Many2one(
comodel_name="mis.report", required=True, ondelete="cascade"
)
name = fields.Char(size=32, required=True, string="Name")
name = fields.Char(required=True, string="Name")
description = fields.Char(required=True, string="Description", translate=True)
expression_ids = fields.One2many("mis.report.kpi.expression", "subkpi_id")
@ -278,7 +279,7 @@ class MisReportSubkpi(models.Model):
@api.onchange("description")
def _onchange_description(self):
""" construct name from description """
"""construct name from description"""
if self.description and not self.name:
self.name = _python_var(self.description)
@ -373,7 +374,7 @@ class MisReportQuery(models.Model):
field_names = [field.name for field in record.field_ids]
record.field_names = ", ".join(field_names)
name = fields.Char(size=32, required=True, string="Name")
name = fields.Char(required=True, string="Name")
model_id = fields.Many2one(
"ir.model", required=True, string="Model", ondelete="cascade"
)
@ -796,7 +797,6 @@ class MisReport(models.Model):
aep,
date_from,
date_to,
target_move,
subkpis_filter=None,
get_additional_move_line_filter=None,
get_additional_query_filter=None,
@ -812,7 +812,6 @@ class MisReport(models.Model):
aep,
date_from,
date_to,
target_move,
get_additional_move_line_filter()
if get_additional_move_line_filter
else None,
@ -906,7 +905,7 @@ class MisReport(models.Model):
)
def get_kpis_by_account_id(self, company):
""" Return { account_id: set(kpi) } """
"""Return { account_id: set(kpi) }"""
aep = self._prepare_aep(company)
res = defaultdict(set)
for kpi in self.kpi_ids:
@ -918,6 +917,31 @@ class MisReport(models.Model):
res[account_id].add(kpi)
return res
@api.model
def _supports_target_move_filter(self, aml_model_name):
return "parent_state" in self.env[aml_model_name]._fields
@api.model
def _get_target_move_domain(self, target_move, aml_model_name):
"""
Obtain a domain to apply on a move-line-like model, to get posted
entries or return all of them (always excluding cancelled entries).
:param: target_move: all|posted
:param: aml_model_name: an optional move-line-like model name
(defaults to accaount.move.line)
"""
if not self._supports_target_move_filter(aml_model_name):
return []
if target_move == "posted":
return [("parent_state", "=", "posted")]
elif target_move == "all":
# all (in Flectra 13+, there is also the cancel state that we must ignore)
return [("parent_state", "in", ("posted", "draft"))]
else:
raise UserError(_("Unexpected value %s for target_move.") % (target_move,))
def evaluate(
self,
aep,
@ -936,7 +960,7 @@ class MisReport(models.Model):
:param date_from, date_to: the starting and ending date
:param target_move: all|posted
:param aml_model: the name of a model that is compatible with
account.move.line
account.move.line (default: account.move.line)
:param subkpis_filter: a list of subkpis to include in the evaluation
(if empty, use all subkpis)
:param get_additional_move_line_filter: a bound method that takes
@ -952,17 +976,21 @@ class MisReport(models.Model):
these should be ignored as they might be removed in
the future.
"""
additional_move_line_filter = self._get_target_move_domain(
target_move, aml_model or "account.move.line"
)
if get_additional_move_line_filter:
additional_move_line_filter.extend(get_additional_move_line_filter())
expression_evaluator = ExpressionEvaluator(
aep,
date_from,
date_to,
target_move,
get_additional_move_line_filter()
if get_additional_move_line_filter
else None,
additional_move_line_filter,
aml_model,
)
return self._evaluate(expression_evaluator, subkpis_filter)
return self._evaluate(
expression_evaluator, subkpis_filter, get_additional_query_filter
)
def _evaluate(
self,

View File

@ -1,4 +1,5 @@
# Copyright 2014 ACSONE SA/NV (<http://acsone.eu>)
# Copyright 2020 CorporateHub (https://corporatehub.eu)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
import datetime
@ -174,7 +175,7 @@ class MisReportInstancePeriod(models.Model):
_name = "mis.report.instance.period"
_description = "MIS Report Instance Period"
name = fields.Char(size=32, required=True, string="Label", translate=True)
name = fields.Char(required=True, string="Label", translate=True)
mode = fields.Selection(
[
(MODE_FIX, "Fixed dates"),
@ -411,11 +412,13 @@ class MisReportInstancePeriod(models.Model):
compatible with account.move.line."""
self.ensure_one()
domain = self._get_filter_domain_from_context()
if (
self._get_aml_model_name() == "account.move.line"
and self.report_instance_id.target_move == "posted"
):
domain.extend([("move_id.state", "=", "posted")])
aml_model_name = self._get_aml_model_name()
if aml_model_name:
domain.extend(
self.report_id._get_target_move_domain(
self.report_instance_id.target_move, aml_model_name
)
)
if self.analytic_account_id:
domain.append(("analytic_account_id", "=", self.analytic_account_id.id))
if self.analytic_group_id:
@ -527,22 +530,22 @@ class MisReportInstance(models.Model):
)
company_id = fields.Many2one(
comodel_name="res.company",
string="Company",
string="Allowed company",
default=lambda self: self.env.company,
required=True,
required=False,
)
multi_company = fields.Boolean(
string="Multiple companies",
help="Check if you wish to specify "
"children companies to be searched for data.",
help="Check if you wish to specify several companies to be searched for data.",
default=False,
)
company_ids = fields.Many2many(
comodel_name="res.company",
string="Companies",
string="Allowed companies",
help="Select companies for which data will be searched.",
)
query_company_ids = fields.Many2many(
string="Effective companies",
comodel_name="res.company",
compute="_compute_query_company_ids",
help="Companies for which data will be searched.",
@ -578,22 +581,36 @@ class MisReportInstance(models.Model):
)
hide_analytic_filters = fields.Boolean(default=True)
@api.onchange("company_id", "multi_company")
@api.onchange("multi_company")
def _onchange_company(self):
if self.company_id and self.multi_company:
self.company_ids = self.env["res.company"].search(
[("id", "child_of", self.company_id.id)]
)
if self.multi_company:
self.company_ids |= self.company_id
self.company_id = False
else:
prev = self.company_ids.ids
company = False
if self.env.company.id in prev:
company = self.env.company
else:
for c_id in prev:
if c_id in self.env.companies.ids:
company = self.env["res.company"].browse(c_id)
break
self.company_id = company
self.company_ids = False
@api.depends("multi_company", "company_id", "company_ids")
@api.depends_context("allowed_company_ids")
def _compute_query_company_ids(self):
for rec in self:
if rec.multi_company:
rec.query_company_ids = rec.company_ids or rec.company_id
if not rec.company_ids:
rec.query_company_ids = self.env.companies
else:
rec.query_company_ids = rec.company_id
rec.query_company_ids = rec.company_ids & self.env.companies
else:
rec.query_company_ids = rec.company_id or self.env.company
@api.model
def get_filter_descriptions_from_context(self):
@ -776,7 +793,6 @@ class MisReportInstance(models.Model):
aep,
period.date_from,
period.date_to,
None, # target_move now part of additional_move_line_filter
period._get_additional_move_line_filter(),
period._get_aml_model_name(),
)
@ -870,7 +886,6 @@ class MisReportInstance(models.Model):
expr,
period.date_from,
period.date_to,
None, # target_move now part of additional_move_line_filter
account_id,
)
domain.extend(period._get_additional_move_line_filter())

View File

@ -1,5 +1,6 @@
# Copyright 2016 Therp BV (<http://therp.nl>)
# Copyright 2016 ACSONE SA/NV (<http://acsone.eu>)
# Copyright 2020 CorporateHub (https://corporatehub.eu)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
import sys
@ -111,9 +112,9 @@ class MisReportKpiStyle(models.Model):
indent_level = fields.Integer()
# number format
prefix_inherit = fields.Boolean(default=True)
prefix = fields.Char(size=16, string="Prefix")
prefix = fields.Char(string="Prefix")
suffix_inherit = fields.Boolean(default=True)
suffix = fields.Char(size=16, string="Suffix")
suffix = fields.Char(string="Suffix")
dp_inherit = fields.Boolean(default=True)
dp = fields.Integer(string="Rounding", default=0)
divider_inherit = fields.Boolean(default=True)

View File

@ -4,7 +4,8 @@
<field name="name">Mis Report Instance multi company</field>
<field name="model_id" ref="model_mis_report_instance" />
<field name="domain_force">
['|',('company_id','=',False),('company_id','in',company_ids)]
['|',('company_id','=',False),('company_id','in',company_ids), '|',
('company_ids', '=', False), ('company_ids', 'in', company_ids)]
</field>
</record>
</flectra>

View File

@ -376,49 +376,51 @@ can be added to Odoo dashboards.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#installation" id="id76">Installation</a></li>
<li><a class="reference internal" href="#usage" id="id77">Usage</a></li>
<li><a class="reference internal" href="#development" id="id78">Development</a></li>
<li><a class="reference internal" href="#known-issues-roadmap" id="id79">Known issues / Roadmap</a></li>
<li><a class="reference internal" href="#changelog" id="id80">Changelog</a><ul>
<li><a class="reference internal" href="#id2" id="id81">14.0.3.6.6 (2021-04-23)</a></li>
<li><a class="reference internal" href="#id4" id="id82">14.0.3.6.5 (2021-04-23)</a></li>
<li><a class="reference internal" href="#id6" id="id83">14.0.3.6.4 (2021-04-06)</a></li>
<li><a class="reference internal" href="#id9" id="id84">13.0.3.6.3 (2020-08-28)</a></li>
<li><a class="reference internal" href="#id13" id="id85">13.0.3.6.2 (2020-04-22)</a></li>
<li><a class="reference internal" href="#id15" id="id86">13.0.3.6.1 (2020-04-22)</a></li>
<li><a class="reference internal" href="#id17" id="id87">13.0.3.6.0 (2020-03-28)</a></li>
<li><a class="reference internal" href="#id20" id="id88">13.0.3.5.0 (2020-01-??)</a></li>
<li><a class="reference internal" href="#id21" id="id89">12.0.3.5.0 (2019-10-26)</a></li>
<li><a class="reference internal" href="#id29" id="id90">12.0.3.4.0 (2019-07-09)</a></li>
<li><a class="reference internal" href="#id36" id="id91">12.0.3.3.0 (2019-01-26)</a></li>
<li><a class="reference internal" href="#id46" id="id92">11.0.3.2.2 (2018-06-30)</a></li>
<li><a class="reference internal" href="#id49" id="id93">11.0.3.2.1 (2018-05-29)</a></li>
<li><a class="reference internal" href="#id51" id="id94">10.0.3.2.0 (2018-05-02)</a></li>
<li><a class="reference internal" href="#id55" id="id95">11.0.3.1.2 (2018-02-04)</a></li>
<li><a class="reference internal" href="#id57" id="id96">10.0.3.1.1 (2017-11-14)</a></li>
<li><a class="reference internal" href="#id66" id="id97">10.0.3.0.4 (2017-10-14)</a></li>
<li><a class="reference internal" href="#id68" id="id98">10.0.3.0.3 (2017-10-03)</a></li>
<li><a class="reference internal" href="#id70" id="id99">10.0.3.0.2 (2017-10-01)</a></li>
<li><a class="reference internal" href="#unreleased" id="id100">10.0.2.0.3 (unreleased)</a></li>
<li><a class="reference internal" href="#id71" id="id101">9.0.2.0.2 (2016-09-27)</a></li>
<li><a class="reference internal" href="#id72" id="id102">9.0.2.0.1 (2016-05-26)</a></li>
<li><a class="reference internal" href="#id73" id="id103">9.0.2.0.0 (2016-05-24)</a></li>
<li><a class="reference internal" href="#id74" id="id104">8.0.1.0.0 (2016-04-27)</a></li>
<li><a class="reference internal" href="#id75" id="id105">8.0.0.2.0</a></li>
<li><a class="reference internal" href="#installation" id="id82">Installation</a></li>
<li><a class="reference internal" href="#usage" id="id83">Usage</a></li>
<li><a class="reference internal" href="#development" id="id84">Development</a></li>
<li><a class="reference internal" href="#known-issues-roadmap" id="id85">Known issues / Roadmap</a></li>
<li><a class="reference internal" href="#changelog" id="id86">Changelog</a><ul>
<li><a class="reference internal" href="#id1" id="id87">14.0.4.0.0 (2022-01-08)</a></li>
<li><a class="reference internal" href="#id6" id="id88">14.0.3.6.7 (2021-06-02)</a></li>
<li><a class="reference internal" href="#id8" id="id89">14.0.3.6.6 (2021-04-23)</a></li>
<li><a class="reference internal" href="#id10" id="id90">14.0.3.6.5 (2021-04-23)</a></li>
<li><a class="reference internal" href="#id12" id="id91">14.0.3.6.4 (2021-04-06)</a></li>
<li><a class="reference internal" href="#id15" id="id92">13.0.3.6.3 (2020-08-28)</a></li>
<li><a class="reference internal" href="#id19" id="id93">13.0.3.6.2 (2020-04-22)</a></li>
<li><a class="reference internal" href="#id21" id="id94">13.0.3.6.1 (2020-04-22)</a></li>
<li><a class="reference internal" href="#id23" id="id95">13.0.3.6.0 (2020-03-28)</a></li>
<li><a class="reference internal" href="#id26" id="id96">13.0.3.5.0 (2020-01-??)</a></li>
<li><a class="reference internal" href="#id27" id="id97">12.0.3.5.0 (2019-10-26)</a></li>
<li><a class="reference internal" href="#id35" id="id98">12.0.3.4.0 (2019-07-09)</a></li>
<li><a class="reference internal" href="#id42" id="id99">12.0.3.3.0 (2019-01-26)</a></li>
<li><a class="reference internal" href="#id52" id="id100">11.0.3.2.2 (2018-06-30)</a></li>
<li><a class="reference internal" href="#id55" id="id101">11.0.3.2.1 (2018-05-29)</a></li>
<li><a class="reference internal" href="#id57" id="id102">10.0.3.2.0 (2018-05-02)</a></li>
<li><a class="reference internal" href="#id61" id="id103">11.0.3.1.2 (2018-02-04)</a></li>
<li><a class="reference internal" href="#id63" id="id104">10.0.3.1.1 (2017-11-14)</a></li>
<li><a class="reference internal" href="#id72" id="id105">10.0.3.0.4 (2017-10-14)</a></li>
<li><a class="reference internal" href="#id74" id="id106">10.0.3.0.3 (2017-10-03)</a></li>
<li><a class="reference internal" href="#id76" id="id107">10.0.3.0.2 (2017-10-01)</a></li>
<li><a class="reference internal" href="#unreleased" id="id108">10.0.2.0.3 (unreleased)</a></li>
<li><a class="reference internal" href="#id77" id="id109">9.0.2.0.2 (2016-09-27)</a></li>
<li><a class="reference internal" href="#id78" id="id110">9.0.2.0.1 (2016-05-26)</a></li>
<li><a class="reference internal" href="#id79" id="id111">9.0.2.0.0 (2016-05-24)</a></li>
<li><a class="reference internal" href="#id80" id="id112">8.0.1.0.0 (2016-04-27)</a></li>
<li><a class="reference internal" href="#id81" id="id113">8.0.0.2.0</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bug-tracker" id="id106">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id107">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id108">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id109">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id110">Maintainers</a></li>
<li><a class="reference internal" href="#bug-tracker" id="id114">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id115">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id116">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id117">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id118">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="installation">
<h1><a class="toc-backref" href="#id76">Installation</a></h1>
<h1><a class="toc-backref" href="#id82">Installation</a></h1>
<p>Your preferred way to install addons will work with MIS Builder.</p>
<p>An easy way to install it with all its dependencies is using pip:</p>
<ul class="simple">
@ -428,7 +430,7 @@ the MIS Builder application.</li>
</ul>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#id77">Usage</a></h1>
<h1><a class="toc-backref" href="#id83">Usage</a></h1>
<p>To configure this module, you need to:</p>
<ul class="simple">
<li>Go to Accounting &gt; Configuration &gt; MIS Reporting &gt; MIS Report Templates where
@ -454,7 +456,7 @@ and export it to PDF or Excel.</li>
</div>
</div>
<div class="section" id="development">
<h1><a class="toc-backref" href="#id78">Development</a></h1>
<h1><a class="toc-backref" href="#id84">Development</a></h1>
<p>A typical extension is to provide a mechanism to filter reports on analytic dimensions
or operational units. To implement this, you can override _get_additional_move_line_filter
and _get_additional_filter to further filter move lines or queries based on a user
@ -463,29 +465,57 @@ or even on mis.report.instance.period if you want different columns to show diff
analytic accounts.</p>
</div>
<div class="section" id="known-issues-roadmap">
<h1><a class="toc-backref" href="#id79">Known issues / Roadmap</a></h1>
<h1><a class="toc-backref" href="#id85">Known issues / Roadmap</a></h1>
<p>The mis_builder <a class="reference external" href="https://github.com/OCA/mis-builder/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement">roadmap</a>
and <a class="reference external" href="https://github.com/OCA/mis-builder/issues?q=is%3Aopen+is%3Aissue+label%3Abug">known issues</a> can
be found on GitHub.</p>
</div>
<div class="section" id="changelog">
<h1><a class="toc-backref" href="#id80">Changelog</a></h1>
<p>14.0.3.6.7 (2021-06-02)
<strong>Bugfixes</strong></p>
<h1><a class="toc-backref" href="#id86">Changelog</a></h1>
<div class="section" id="id1">
<h2><a class="toc-backref" href="#id87">14.0.4.0.0 (2022-01-08)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>Remove various field size limits. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/332">#332</a>)</li>
</ul>
<p><strong>Bugfixes</strong></p>
<ul>
<li><p class="first">Support for the Odoo 13+ multi-company model. In multi-company mode, several allowed
companies can be declared on MIS Report instances, and the report operates on the
intersection of report companies and companies selected in the user context. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/327">#327</a>)</p>
</li>
<li><p class="first">The <tt class="docutils literal">get_additional_query_filter</tt> argument of <tt class="docutils literal">evaluate()</tt> is now propagated
correctly. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/375">#375</a>)</p>
</li>
<li><p class="first">Use the <tt class="docutils literal">parent_state</tt> field of <tt class="docutils literal">account.move.line</tt> to filter entries in <tt class="docutils literal">posted</tt>
and <tt class="docutils literal">draft</tt> state only. Before, when reporting in draft mode, all entries were used
(i.e. there was no filter), and that started including the cancelled entries/invoices in
Odoo 13.+.</p>
<p>This change also contains a <strong>breaking change</strong> in the internal API. For quite a while
the <tt class="docutils literal">target_move argument</tt> of AEP and other methods was not used by MIS Builder itself
and was kept for backward compatibility. To avoid rippling effects of the necessary
change to use <tt class="docutils literal">parent_state</tt>, we now remove this argument. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/377">#377</a>)</p>
</li>
</ul>
</div>
<div class="section" id="id6">
<h2><a class="toc-backref" href="#id88">14.0.3.6.7 (2021-06-02)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>When on a MIS Report Instance, if you wanted to generate a new line of type comparison, you couldnt currently select any existing period to compare.
This happened because the field domain was searching in a NewId context, thus not finding a correct period.
Changing the domain and making it use a computed field with a search for the _origin record solves the problem. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/361">#361</a>)</li>
</ul>
<div class="section" id="id2">
<h2><a class="toc-backref" href="#id81">14.0.3.6.6 (2021-04-23)</a></h2>
</div>
<div class="section" id="id8">
<h2><a class="toc-backref" href="#id89">14.0.3.6.6 (2021-04-23)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>Fix drilldown action name when the account model has been customized. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/350">#350</a>)</li>
</ul>
</div>
<div class="section" id="id4">
<h2><a class="toc-backref" href="#id82">14.0.3.6.5 (2021-04-23)</a></h2>
<div class="section" id="id10">
<h2><a class="toc-backref" href="#id90">14.0.3.6.5 (2021-04-23)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>While duplicating a MIS report instance, comparison columns are ignored because
@ -493,8 +523,8 @@ they would raise an error otherwise, as they keep the old source_cmpcol_from_id
and source_cmpcol_to_id from the original record. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/343">#343</a>)</li>
</ul>
</div>
<div class="section" id="id6">
<h2><a class="toc-backref" href="#id83">14.0.3.6.4 (2021-04-06)</a></h2>
<div class="section" id="id12">
<h2><a class="toc-backref" href="#id91">14.0.3.6.4 (2021-04-06)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>The drilldown action name displayed on the breadcrumb has been revised.
@ -504,8 +534,8 @@ of the kpis technical definition. (<a class="reference external" href="https:
view. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/320">#320</a>)</li>
</ul>
</div>
<div class="section" id="id9">
<h2><a class="toc-backref" href="#id84">13.0.3.6.3 (2020-08-28)</a></h2>
<div class="section" id="id15">
<h2><a class="toc-backref" href="#id92">13.0.3.6.3 (2020-08-28)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>Having a “Compare columns” added on a KPI with an associated style using a
@ -517,23 +547,23 @@ when exporting to XLSX. (<a class="reference external" href="https://github.com/
<li><a class="reference external" href="https://github.com/OCA/mis-builder/issues/280">#280</a>, <a class="reference external" href="https://github.com/OCA/mis-builder/issues/296">#296</a></li>
</ul>
</div>
<div class="section" id="id13">
<h2><a class="toc-backref" href="#id85">13.0.3.6.2 (2020-04-22)</a></h2>
<div class="section" id="id19">
<h2><a class="toc-backref" href="#id93">13.0.3.6.2 (2020-04-22)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>The “Settings” button is now displayed for users with the “Show full accounting features” right when previewing a report. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/281">#281</a>)</li>
</ul>
</div>
<div class="section" id="id15">
<h2><a class="toc-backref" href="#id86">13.0.3.6.1 (2020-04-22)</a></h2>
<div class="section" id="id21">
<h2><a class="toc-backref" href="#id94">13.0.3.6.1 (2020-04-22)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>Fix <tt class="docutils literal">TypeError: 'module' object is not iterable</tt> when using
budgets by account. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/276">#276</a>)</li>
</ul>
</div>
<div class="section" id="id17">
<h2><a class="toc-backref" href="#id87">13.0.3.6.0 (2020-03-28)</a></h2>
<div class="section" id="id23">
<h2><a class="toc-backref" href="#id95">13.0.3.6.0 (2020-03-28)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>Add column-level filters on analytic account and analytic tags.
@ -548,12 +578,12 @@ Sheet” to create new KPIs for the ratios (e.g. balance_sheet.current_assets
balance_sheet.total_assets). (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/155">#155</a>)</li>
</ul>
</div>
<div class="section" id="id20">
<h2><a class="toc-backref" href="#id88">13.0.3.5.0 (2020-01-??)</a></h2>
<div class="section" id="id26">
<h2><a class="toc-backref" href="#id96">13.0.3.5.0 (2020-01-??)</a></h2>
<p>Migration to odoo 13.0.</p>
</div>
<div class="section" id="id21">
<h2><a class="toc-backref" href="#id89">12.0.3.5.0 (2019-10-26)</a></h2>
<div class="section" id="id27">
<h2><a class="toc-backref" href="#id97">12.0.3.5.0 (2019-10-26)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>The <tt class="docutils literal">account_id</tt> field of the model selected in Move lines source
@ -583,8 +613,8 @@ style. (<a class="reference external" href="https://github.com/oca/mis-builder/i
<li>In Excel export, keep the percentage point suffix (pp) instead of replacing it with %. (<a class="reference external" href="https://github.com/oca/mis-builder/issues/220">#220</a>)</li>
</ul>
</div>
<div class="section" id="id29">
<h2><a class="toc-backref" href="#id90">12.0.3.4.0 (2019-07-09)</a></h2>
<div class="section" id="id35">
<h2><a class="toc-backref" href="#id98">12.0.3.4.0 (2019-07-09)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>New year-to-date mode for defining periods. (<a class="reference external" href="https://github.com/oca/mis-builder/issues/165">#165</a>)</li>
@ -602,8 +632,8 @@ non-multi expressions yield tuples of incorrect lenght. (<a class="reference ext
<li>Fix rendering of percentage types in Excel export. (<a class="reference external" href="https://github.com/oca/mis-builder/issues/192">#192</a>)</li>
</ul>
</div>
<div class="section" id="id36">
<h2><a class="toc-backref" href="#id91">12.0.3.3.0 (2019-01-26)</a></h2>
<div class="section" id="id42">
<h2><a class="toc-backref" href="#id99">12.0.3.3.0 (2019-01-26)</a></h2>
<p><strong>Features</strong></p>
<p><em>Dynamic analytic filters in report preview are not yet available in 11,
this requires an update to the JS widget that proved difficult to implement
@ -643,8 +673,8 @@ is checked, as for all other syle elements. (<cite>#121 &lt;https://github.com/O
<p>If you use <tt class="docutils literal">Actuals (alternative)</tt> data source in combination with analytic
filters, the underlying model must now have an <tt class="docutils literal">analytic_account_id</tt> field.</p>
</div>
<div class="section" id="id46">
<h2><a class="toc-backref" href="#id92">11.0.3.2.2 (2018-06-30)</a></h2>
<div class="section" id="id52">
<h2><a class="toc-backref" href="#id100">11.0.3.2.2 (2018-06-30)</a></h2>
<ul class="simple">
<li>[FIX] Fix bug in company_default_get call returning
id instead of recordset
@ -655,16 +685,16 @@ need to be displayed).
(<a class="reference external" href="https://github.com/OCA/mis-builder/issues/46">#46</a>)</li>
</ul>
</div>
<div class="section" id="id49">
<h2><a class="toc-backref" href="#id93">11.0.3.2.1 (2018-05-29)</a></h2>
<div class="section" id="id55">
<h2><a class="toc-backref" href="#id101">11.0.3.2.1 (2018-05-29)</a></h2>
<ul class="simple">
<li>[FIX] Missing comparison operator for AccountingNone
leading to errors in pbal computations
(<a class="reference external" href="https://github.com/OCA/mis-builder/issue/93">#93</a>)</li>
</ul>
</div>
<div class="section" id="id51">
<h2><a class="toc-backref" href="#id94">10.0.3.2.0 (2018-05-02)</a></h2>
<div class="section" id="id57">
<h2><a class="toc-backref" href="#id102">10.0.3.2.0 (2018-05-02)</a></h2>
<ul class="simple">
<li>[FIX] make subkpi ordering deterministic
(<a class="reference external" href="https://github.com/OCA/mis-builder/issues/71">#71</a>)</li>
@ -678,13 +708,13 @@ resp positive balances)
(<a class="reference external" href="https://github.com/OCA/mis-builder/issues/86">#86</a>)</li>
</ul>
</div>
<div class="section" id="id55">
<h2><a class="toc-backref" href="#id95">11.0.3.1.2 (2018-02-04)</a></h2>
<div class="section" id="id61">
<h2><a class="toc-backref" href="#id103">11.0.3.1.2 (2018-02-04)</a></h2>
<p>Migration to Odoo 11. No new feature.
(<a class="reference external" href="https://github.com/OCA/mis-builder/pull/67">#67</a>)</p>
</div>
<div class="section" id="id57">
<h2><a class="toc-backref" href="#id96">10.0.3.1.1 (2017-11-14)</a></h2>
<div class="section" id="id63">
<h2><a class="toc-backref" href="#id104">10.0.3.1.1 (2017-11-14)</a></h2>
<p>New features:</p>
<ul class="simple">
<li>[ADD] month and year relative periods, easier to use than
@ -721,24 +751,24 @@ created (not yet saved) report instances.
<li>Alternative move line data sources must have a company_id field.</li>
</ul>
</div>
<div class="section" id="id66">
<h2><a class="toc-backref" href="#id97">10.0.3.0.4 (2017-10-14)</a></h2>
<div class="section" id="id72">
<h2><a class="toc-backref" href="#id105">10.0.3.0.4 (2017-10-14)</a></h2>
<p>Bug fix:</p>
<ul class="simple">
<li>[FIX] issue with initial balance rounding.
<a class="reference external" href="https://github.com/OCA/mis-builder/issues/30">#30</a></li>
</ul>
</div>
<div class="section" id="id68">
<h2><a class="toc-backref" href="#id98">10.0.3.0.3 (2017-10-03)</a></h2>
<div class="section" id="id74">
<h2><a class="toc-backref" href="#id106">10.0.3.0.3 (2017-10-03)</a></h2>
<p>Bug fix:</p>
<ul class="simple">
<li>[FIX] fix error saving KPI on newly created reports.
<a class="reference external" href="https://github.com/OCA/mis-builder/issues/18">#18</a></li>
</ul>
</div>
<div class="section" id="id70">
<h2><a class="toc-backref" href="#id99">10.0.3.0.2 (2017-10-01)</a></h2>
<div class="section" id="id76">
<h2><a class="toc-backref" href="#id107">10.0.3.0.2 (2017-10-01)</a></h2>
<p>New features:</p>
<ul class="simple">
<li>[ADD] Alternative move line source per report column.
@ -782,7 +812,7 @@ expressions were used in a KPI</li>
</ul>
</div>
<div class="section" id="unreleased">
<h2><a class="toc-backref" href="#id100">10.0.2.0.3 (unreleased)</a></h2>
<h2><a class="toc-backref" href="#id108">10.0.2.0.3 (unreleased)</a></h2>
<ul class="simple">
<li>[IMP] more robust behaviour in presence of missing expressions</li>
<li>[FIX] indent style</li>
@ -794,23 +824,23 @@ reports with no objects</li>
<li>[IMP] provide full access to mis builder style for group Adviser.</li>
</ul>
</div>
<div class="section" id="id71">
<h2><a class="toc-backref" href="#id101">9.0.2.0.2 (2016-09-27)</a></h2>
<div class="section" id="id77">
<h2><a class="toc-backref" href="#id109">9.0.2.0.2 (2016-09-27)</a></h2>
<ul class="simple">
<li>[IMP] Add refresh button in mis report preview.</li>
<li>[IMP] Widget code changes to allow to add fields in the widget more easily.</li>
</ul>
</div>
<div class="section" id="id72">
<h2><a class="toc-backref" href="#id102">9.0.2.0.1 (2016-05-26)</a></h2>
<div class="section" id="id78">
<h2><a class="toc-backref" href="#id110">9.0.2.0.1 (2016-05-26)</a></h2>
<ul class="simple">
<li>[IMP] remove unused argument in declare_and_compute_period()
for a cleaner API. This is a breaking API changing merged in
urgency before it is used by other modules.</li>
</ul>
</div>
<div class="section" id="id73">
<h2><a class="toc-backref" href="#id103">9.0.2.0.0 (2016-05-24)</a></h2>
<div class="section" id="id79">
<h2><a class="toc-backref" href="#id111">9.0.2.0.0 (2016-05-24)</a></h2>
<p>Part of the work for this release has been done at the Sorrento sprint
April 26-29, 2016. The rest (ie a major refactoring) has been done in
the weeks after.</p>
@ -857,8 +887,8 @@ flexible alternative to fiscal periods</li>
consolidation accounts have been removed</li>
</ul>
</div>
<div class="section" id="id74">
<h2><a class="toc-backref" href="#id104">8.0.1.0.0 (2016-04-27)</a></h2>
<div class="section" id="id80">
<h2><a class="toc-backref" href="#id112">8.0.1.0.0 (2016-04-27)</a></h2>
<ul class="simple">
<li>The copy of a MIS Report Instance now copies period.
<a class="reference external" href="https://github.com/OCA/account-financial-reporting/pull/181">https://github.com/OCA/account-financial-reporting/pull/181</a></li>
@ -882,13 +912,13 @@ the widget to open the door to analytic filtering in the previews.
<a class="reference external" href="https://github.com/OCA/account-financial-reporting/pull/131">https://github.com/OCA/account-financial-reporting/pull/131</a></li>
</ul>
</div>
<div class="section" id="id75">
<h2><a class="toc-backref" href="#id105">8.0.0.2.0</a></h2>
<div class="section" id="id81">
<h2><a class="toc-backref" href="#id113">8.0.0.2.0</a></h2>
<p>Pre-history. Or rather, you need to look at the git log.</p>
</div>
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#id106">Bug Tracker</a></h1>
<h1><a class="toc-backref" href="#id114">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/mis-builder/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
@ -896,15 +926,15 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<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="#id107">Credits</a></h1>
<h1><a class="toc-backref" href="#id115">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#id108">Authors</a></h2>
<h2><a class="toc-backref" href="#id116">Authors</a></h2>
<ul class="simple">
<li>ACSONE SA/NV</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#id109">Contributors</a></h2>
<h2><a class="toc-backref" href="#id117">Contributors</a></h2>
<ul class="simple">
<li>Stéphane Bidoul &lt;<a class="reference external" href="mailto:stephane.bidoul&#64;acsone.eu">stephane.bidoul&#64;acsone.eu</a>&gt;</li>
<li>Laetitia Gangloff &lt;<a class="reference external" href="mailto:laetitia.gangloff&#64;acsone.eu">laetitia.gangloff&#64;acsone.eu</a>&gt;</li>
@ -929,10 +959,14 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<li>Arnaud Pineux &lt;<a class="reference external" href="mailto:arnaud.pineux&#64;acsone.eu">arnaud.pineux&#64;acsone.eu</a>&gt;</li>
<li>Ernesto Tejeda &lt;<a class="reference external" href="mailto:ernesto.tejeda&#64;tecnativa.com">ernesto.tejeda&#64;tecnativa.com</a>&gt;</li>
<li>Pedro M. Baeza &lt;<a class="reference external" href="mailto:pedro.baeza&#64;tecnativa.com">pedro.baeza&#64;tecnativa.com</a>&gt;</li>
<li><a class="reference external" href="https://corporatehub.eu/">CorporateHub</a><ul>
<li>Alexey Pelykh &lt;<a class="reference external" href="mailto:alexey.pelykh&#64;corphub.eu">alexey.pelykh&#64;corphub.eu</a>&gt;</li>
</ul>
</li>
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#id110">Maintainers</a></h2>
<h2><a class="toc-backref" href="#id118">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

View File

@ -13,4 +13,5 @@ from . import test_mis_safe_eval
from . import test_period_dates
from . import test_render
from . import test_simple_array
from . import test_target_move
from . import test_utc_midnight

View File

@ -132,7 +132,6 @@ class TestAEP(common.TransactionCase):
self.aep.do_queries(
date_from=fields.Date.to_string(date_from),
date_to=fields.Date.to_string(date_to),
target_move="posted",
)
def _eval(self, expr):
@ -264,9 +263,7 @@ class TestAEP(common.TransactionCase):
self.assertEqual(end, {self.account_ar.id: 900, self.account_in.id: -800})
def test_aep_convenience_methods(self):
initial = AEP.get_balances_initial(
self.company, time.strftime("%Y") + "-03-01", "posted"
)
initial = AEP.get_balances_initial(self.company, time.strftime("%Y") + "-03-01")
self.assertEqual(
initial, {self.account_ar.id: (400, 0), self.account_in.id: (0, 300)}
)
@ -274,19 +271,16 @@ class TestAEP(common.TransactionCase):
self.company,
time.strftime("%Y") + "-03-01",
time.strftime("%Y") + "-03-31",
"posted",
)
self.assertEqual(
variation, {self.account_ar.id: (500, 0), self.account_in.id: (0, 500)}
)
end = AEP.get_balances_end(
self.company, time.strftime("%Y") + "-03-31", "posted"
)
end = AEP.get_balances_end(self.company, time.strftime("%Y") + "-03-31")
self.assertEqual(
end, {self.account_ar.id: (900, 0), self.account_in.id: (0, 800)}
)
unallocated = AEP.get_unallocated_pl(
self.company, time.strftime("%Y") + "-03-15", "posted"
self.company, time.strftime("%Y") + "-03-15"
)
self.assertEqual(unallocated, (0, 100))
@ -300,9 +294,7 @@ class TestAEP(common.TransactionCase):
debit_acc=self.account_in,
credit_acc=self.account_ar,
)
initial = AEP.get_balances_initial(
self.company, time.strftime("%Y") + "-01-01", "posted"
)
initial = AEP.get_balances_initial(self.company, time.strftime("%Y") + "-01-01")
self.assertEqual(initial, {self.account_ar.id: (100.00, 100.01)})
# make initial balance at Jan 1st equal to 0.001
self._create_move(
@ -311,9 +303,7 @@ class TestAEP(common.TransactionCase):
debit_acc=self.account_ar,
credit_acc=self.account_in,
)
initial = AEP.get_balances_initial(
self.company, time.strftime("%Y") + "-01-01", "posted"
)
initial = AEP.get_balances_initial(self.company, time.strftime("%Y") + "-01-01")
# epsilon initial balances is reported as empty
self.assertEqual(initial, {})
@ -332,24 +322,18 @@ class TestAEP(common.TransactionCase):
def test_get_aml_domain_for_expr(self):
self.aep.done_parsing()
expr = "balp[700IN]"
domain = self.aep.get_aml_domain_for_expr(
expr, "2017-01-01", "2017-03-31", target_move="posted"
)
domain = self.aep.get_aml_domain_for_expr(expr, "2017-01-01", "2017-03-31")
self.assertEqual(
domain,
[
("account_id", "in", (self.account_in.id,)),
"&",
"&",
("date", ">=", "2017-01-01"),
("date", "<=", "2017-03-31"),
("move_id.state", "=", "posted"),
],
)
expr = "debi[700IN] - crdi[400AR]"
domain = self.aep.get_aml_domain_for_expr(
expr, "2017-02-01", "2017-03-31", target_move="draft"
)
domain = self.aep.get_aml_domain_for_expr(expr, "2017-02-01", "2017-03-31")
self.assertEqual(
domain,
[

View File

@ -494,6 +494,32 @@ class TestMisReportInstance(common.HttpCase):
r = self.env["mis.report.kpi.expression"].name_search("k4")
self.assertEqual([i[1] for i in r], ["kpi 4 (k4)"])
def test_query_company_ids(self):
# sanity check single company mode
assert not self.report_instance.multi_company
assert self.report_instance.company_id
assert self.report_instance.query_company_ids == self.report_instance.company_id
# create a second company
c1 = self.report_instance.company_id
c2 = self.env["res.company"].create(
dict(
name="company 2",
)
)
self.report_instance.write(dict(multi_company=True, company_id=False))
self.report_instance.company_ids |= c1
self.report_instance.company_ids |= c2
assert len(self.report_instance.company_ids) == 2
assert self.report_instance.query_company_ids == self.env.companies
# In a user context where there is only one company, ensure
# query_company_ids only has one company too.
assert (
self.report_instance.with_context(
allowed_company_ids=(c1.id,)
).query_company_ids
== c1
)
def test_multi_company_onchange(self):
# not multi company
self.assertTrue(self.report_instance.company_id)
@ -506,25 +532,22 @@ class TestMisReportInstance(common.HttpCase):
self.env["res.company"].create(
dict(name="company 2", parent_id=self.report_instance.company_id.id)
)
companies = self.env["res.company"].search(
[("id", "child_of", self.report_instance.company_id.id)]
)
self.report_instance.multi_company = True
# multi company, company_ids not set
self.assertEqual(
self.report_instance.query_company_ids[0], self.report_instance.company_id
)
self.assertEqual(self.report_instance.query_company_ids, self.env.companies)
# set company_ids
previous_company = self.report_instance.company_id
self.report_instance._onchange_company()
self.assertFalse(self.report_instance.company_id)
self.assertTrue(self.report_instance.multi_company)
self.assertEqual(self.report_instance.company_ids, companies)
self.assertEqual(self.report_instance.query_company_ids, companies)
self.assertEqual(self.report_instance.company_ids, previous_company)
self.assertEqual(self.report_instance.query_company_ids, previous_company)
# reset single company mode
self.report_instance.multi_company = False
self.report_instance._onchange_company()
self.assertEqual(
self.report_instance.query_company_ids[0], self.report_instance.company_id
)
self.report_instance._onchange_company()
self.assertFalse(self.report_instance.company_ids)
def test_mis_report_analytic_filters(self):

View File

@ -139,7 +139,6 @@ class TestMultiCompanyAEP(common.TransactionCase):
aep.do_queries(
date_from=fields.Date.to_string(date_from),
date_to=fields.Date.to_string(date_to),
target_move="posted",
)
return aep

View File

@ -0,0 +1,36 @@
# Copyright 2016 ACSONE SA/NV (<http://acsone.eu>)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
import flectra.tests.common as common
class TestMisReportInstance(common.TransactionCase):
def test_supports_target_move_filter(self):
self.assertTrue(
self.env["mis.report"]._supports_target_move_filter("account.move.line")
)
def test_supports_target_move_filter_no_parent_state(self):
self.assertFalse(
self.env["mis.report"]._supports_target_move_filter("account.move")
)
def test_target_move_domain_posted(self):
self.assertEqual(
self.env["mis.report"]._get_target_move_domain(
"posted", "account.move.line"
),
[("parent_state", "=", "posted")],
)
def test_target_move_domain_all(self):
self.assertEqual(
self.env["mis.report"]._get_target_move_domain("all", "account.move.line"),
[("parent_state", "in", ("posted", "draft"))],
)
def test_target_move_domain_no_parent_state(self):
"""Test get_target_move_domain on a model that has no parent_state."""
self.assertEqual(
self.env["mis.report"]._get_target_move_domain("all", "account.move"), []
)

View File

@ -161,20 +161,25 @@
<group name="filters">
<field name="target_move" widget="radio" />
<field
name="company_id"
name="multi_company"
groups="base.group_multi_company"
/>
<field
name="multi_company"
name="company_id"
groups="base.group_multi_company"
attrs="{'required': [('multi_company', '=', False)], 'invisible': [('multi_company', '=', True)]}"
/>
<field
name="company_ids"
groups="base.group_multi_company"
widget="many2many_tags"
domain="[('id', 'child_of', company_id)]"
attrs="{'invisible': [('multi_company', '=', False)]}"
/>
<field
name="query_company_ids"
groups="base.group_multi_company"
widget="many2many_tags"
/>
<field
name="analytic_account_id"
groups="analytic.group_analytic_accounting"

View File

@ -1,4 +1,5 @@
# Copyright 2014 ACSONE SA/NV (<http://acsone.eu>)
# Copyright 2020 CorporateHub (https://corporatehub.eu)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from lxml import etree
@ -10,7 +11,7 @@ class AddMisReportInstanceDashboard(models.TransientModel):
_name = "add.mis.report.instance.dashboard.wizard"
_description = "MIS Report Add to Dashboard Wizard"
name = fields.Char("Name", size=32, required=True)
name = fields.Char("Name", required=True)
dashboard_id = fields.Many2one(
"ir.actions.act_window",

View File

@ -85,6 +85,20 @@ be found on GitHub.
Changelog
=========
14.0.4.0.0 (2022-01-08)
~~~~~~~~~~~~~~~~~~~~~~~
**Features**
- A label field has been added to MIS Budget by Account items. When overlap between budget
items is allowed this allows creating a budget with several contributions for a given
account. (`#382 <https://github.com/OCA/mis-builder/issues/382>`_)
- The balance field on MIS Budget by Account items is now writeable. This allows for
easier data entry and import. (`#383 <https://github.com/OCA/mis-builder/issues/383>`_)
- MIS Budget by Account can now be configured to allow budget items with overlapping
dates. Each overlapping item contributes to the budget of the corresponding period. (`#384 <https://github.com/OCA/mis-builder/issues/384>`_)
14.0.3.5.1 (2021-04-06)
~~~~~~~~~~~~~~~~~~~~~~~

View File

@ -5,7 +5,7 @@
"name": "MIS Builder Budget",
"summary": """
Create budgets for MIS reports""",
"version": "2.0.3.5.1",
"version": "2.0.4.0.0",
"license": "AGPL-3",
"author": "ACSONE SA/NV, " "Odoo Community Association (OCA)",
"website": "https://gitlab.com/flectra-community/mis-builder",

View File

@ -68,6 +68,11 @@ msgstr ""
"Suma columnes: suma (+/-) d'altres columnes.\n"
"Compara amb columna: compara amb una altra columna.\n"
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -235,6 +240,10 @@ msgstr "Descripció"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Nom mostrat"
@ -289,6 +298,10 @@ msgstr "Des del"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -302,6 +315,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr "Si es marca, els missatges nous requereixen la vostra atenció."
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -335,6 +353,11 @@ msgstr "KPI"
msgid "KPI Sequence"
msgstr "Seqüència de KPI"
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -342,6 +365,10 @@ msgstr "Seqüència de KPI"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Última modificació el"

View File

@ -64,6 +64,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -231,6 +236,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr ""
@ -285,6 +294,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr ""
@ -298,6 +311,11 @@ msgstr ""
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -331,6 +349,11 @@ msgstr ""
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -338,6 +361,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr ""

View File

@ -71,6 +71,11 @@ msgstr ""
"Columnas de suma: suma (+/-) de otras columnas.\n"
"Comparar con columna: comparar con otra columna.\n"
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -238,6 +243,10 @@ msgstr "Descripción"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Nombre mostrado"
@ -294,6 +303,10 @@ msgstr "Desde"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -307,6 +320,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr "Si está marcado, los nuevos mensajes requieren su atención."
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -340,6 +358,11 @@ msgstr "KPI"
msgid "KPI Sequence"
msgstr "KPI de Secuencia"
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -347,6 +370,10 @@ msgstr "KPI de Secuencia"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Última modificación en"

View File

@ -66,6 +66,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -237,6 +242,10 @@ msgstr "Description"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Nom affiché"
@ -291,6 +300,10 @@ msgstr "De"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -304,6 +317,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -337,6 +355,11 @@ msgstr "KPI"
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -344,6 +367,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Dernière modification le"

View File

@ -61,6 +61,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -228,6 +233,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr ""
@ -282,6 +291,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr ""
@ -295,6 +308,11 @@ msgstr ""
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -328,6 +346,11 @@ msgstr ""
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -335,6 +358,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr ""

View File

@ -66,6 +66,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -235,6 +240,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Naziv "
@ -289,6 +298,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -302,6 +315,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -335,6 +353,11 @@ msgstr ""
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -342,6 +365,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr ""

View File

@ -54,11 +54,17 @@ msgstr ""
#: model:ir.model.fields,help:mis_builder_budget.field_mis_report_instance_period__source
msgid ""
"Actuals: current data, from accounting and other queries.\n"
"Actuals (alternative): current data from an alternative source (eg a database view providing look-alike account move lines).\n"
"Actuals (alternative): current data from an alternative source (eg a "
"database view providing look-alike account move lines).\n"
"Sum columns: summation (+/-) of other columns.\n"
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -301,6 +307,11 @@ msgstr ""
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -334,6 +345,11 @@ msgstr ""
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update

View File

@ -58,6 +58,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -300,6 +305,11 @@ msgstr ""
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -333,6 +343,11 @@ msgstr ""
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update

View File

@ -64,6 +64,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -233,6 +238,10 @@ msgstr "Omschrijving"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Weergavenaam"
@ -287,6 +296,10 @@ msgstr "Van"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -300,6 +313,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -333,6 +351,11 @@ msgstr "KPI"
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -340,6 +363,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Voor het laatst aangepast op"

View File

@ -67,6 +67,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -240,6 +245,10 @@ msgstr "Omschrijving"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Weergavenaam"
@ -294,6 +303,10 @@ msgstr "Van"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -307,6 +320,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -340,6 +358,11 @@ msgstr "KPI"
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -347,6 +370,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Voor het laatst aangepast op"

View File

@ -64,6 +64,11 @@ msgid ""
"Compare to column: compare to other column.\n"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -233,6 +238,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Nome a exibir"
@ -287,6 +296,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -300,6 +313,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -333,6 +351,11 @@ msgstr ""
msgid "KPI Sequence"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -340,6 +363,10 @@ msgstr ""
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Última Modificação em"

View File

@ -69,6 +69,11 @@ msgstr ""
"Soma colunas: somatório (+/-) de outras colunas.\n"
"Comparar à coluna: comparar com outra coluna.\n"
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "Allow Items Overlap"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__amount
msgid "Amount"
@ -239,6 +244,10 @@ msgstr "Descrição"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__display_name
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__display_name
msgid "Display Name"
msgstr "Nome de Exibição"
@ -293,6 +302,10 @@ msgstr "De"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi__id
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression__id
msgid "ID"
msgstr "ID"
@ -306,6 +319,11 @@ msgstr "ID"
msgid "If checked, new messages require your attention."
msgstr "Se selecionado, novas mensagens exigirão sua atenção."
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget_by_account__allow_items_overlap
msgid "If checked, overlap between budget items is allowed"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_error
#: model:ir.model.fields,help:mis_builder_budget.field_mis_budget__message_has_sms_error
@ -339,6 +357,11 @@ msgstr "KPI"
msgid "KPI Sequence"
msgstr "Sequência KPI"
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item__name
msgid "Label"
msgstr ""
#. module: mis_builder_budget
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_abstract____last_update
@ -346,6 +369,10 @@ msgstr "Sequência KPI"
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_by_account_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_budget_item_abstract____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_instance_period____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi____last_update
#: model:ir.model.fields,field_description:mis_builder_budget.field_mis_report_kpi_expression____last_update
msgid "Last Modified on"
msgstr "Última Modificação em"

View File

@ -14,3 +14,6 @@ class MisBudgetByAccount(models.Model):
comodel_name="mis.budget.by.account.item", inverse_name="budget_id", copy=True
)
company_id = fields.Many2one(required=True)
allow_items_overlap = fields.Boolean(
help="If checked, overlap between budget items is allowed"
)

View File

@ -11,11 +11,15 @@ class MisBudgetByAccountItem(models.Model):
_description = "MIS Budget Item (by Account)"
_order = "budget_id, date_from, account_id"
name = fields.Char(string="Label")
budget_id = fields.Many2one(comodel_name="mis.budget.by.account")
debit = fields.Monetary(default=0.0, currency_field="company_currency_id")
credit = fields.Monetary(default=0.0, currency_field="company_currency_id")
balance = fields.Monetary(
compute="_compute_balance", store=True, currency_field="company_currency_id"
compute="_compute_balance",
inverse="_inverse_balance",
store=True,
currency_field="company_currency_id",
)
company_id = fields.Many2one(
"res.company",
@ -60,6 +64,12 @@ class MisBudgetByAccountItem(models.Model):
def _prepare_overlap_domain(self):
"""Prepare a domain to check for overlapping budget items."""
if self.budget_id.allow_items_overlap:
# Trick mis.budget.abstract._check_dates into never seeing
# overlapping budget items. This "hack" is necessary because, for now,
# overlapping budget items is only possible for budget by account items
# and kpi budget items.
return [("id", "=", 0)]
domain = super(MisBudgetByAccountItem, self)._prepare_overlap_domain()
domain.extend([("account_id", "=", self.account_id.id)])
return domain
@ -75,3 +85,12 @@ class MisBudgetByAccountItem(models.Model):
)
def _check_dates(self):
super(MisBudgetByAccountItem, self)._check_dates()
def _inverse_balance(self):
for rec in self:
if rec.balance < 0:
rec.credit = -rec.balance
rec.debit = 0
else:
rec.credit = 0
rec.debit = rec.balance

View File

@ -16,7 +16,6 @@ class MisBudgetAwareExpressionEvaluator(ExpressionEvaluator):
aep=None,
date_from=date_from,
date_to=date_to,
target_move=None,
additional_move_line_filter=additional_move_line_filter,
aml_model=None,
)

View File

@ -54,7 +54,7 @@ class MisReportInstancePeriod(models.Model):
[(field_name, {'value': value, 'operator': operator})]
This default filter is the same as the one set by
_get_additional_move_line_filter on mis.report.instance, so
_get_additional_move_line_filter on mis.report.instance.period, so
a budget.item is expected to have the same analytic fields as
a move line.

View File

@ -377,32 +377,33 @@ show the budgeted values for each KPI, adjusted for the period of the column.</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="id19">Usage</a></li>
<li><a class="reference internal" href="#known-issues-roadmap" id="id20">Known issues / Roadmap</a></li>
<li><a class="reference internal" href="#changelog" id="id21">Changelog</a><ul>
<li><a class="reference internal" href="#id1" id="id22">14.0.3.5.1 (2021-04-06)</a></li>
<li><a class="reference internal" href="#id3" id="id23">13.0.3.5.0 (2020-03-28)</a></li>
<li><a class="reference internal" href="#id5" id="id24">13.0.3.4.0 (2020-01-??)</a></li>
<li><a class="reference internal" href="#id6" id="id25">12.0.3.4.0 (2019-10-26)</a></li>
<li><a class="reference internal" href="#id8" id="id26">11.0.3.3.0 (2019-01-13)</a></li>
<li><a class="reference internal" href="#id10" id="id27">11.0.3.2.1 (2018-06-30)</a></li>
<li><a class="reference internal" href="#id12" id="id28">11.0.3.2.0 (2018-05-02)</a></li>
<li><a class="reference internal" href="#id14" id="id29">11.0.3.1.1 (2018-02-04)</a></li>
<li><a class="reference internal" href="#id16" id="id30">10.0.3.1.0 (2017-11-14)</a></li>
<li><a class="reference internal" href="#id18" id="id31">10.0.1.1.1 (2017-10-01)</a></li>
<li><a class="reference internal" href="#usage" id="id23">Usage</a></li>
<li><a class="reference internal" href="#known-issues-roadmap" id="id24">Known issues / Roadmap</a></li>
<li><a class="reference internal" href="#changelog" id="id25">Changelog</a><ul>
<li><a class="reference internal" href="#id1" id="id26">14.0.4.0.0 (2022-01-08)</a></li>
<li><a class="reference internal" href="#id5" id="id27">14.0.3.5.1 (2021-04-06)</a></li>
<li><a class="reference internal" href="#id7" id="id28">13.0.3.5.0 (2020-03-28)</a></li>
<li><a class="reference internal" href="#id9" id="id29">13.0.3.4.0 (2020-01-??)</a></li>
<li><a class="reference internal" href="#id10" id="id30">12.0.3.4.0 (2019-10-26)</a></li>
<li><a class="reference internal" href="#id12" id="id31">11.0.3.3.0 (2019-01-13)</a></li>
<li><a class="reference internal" href="#id14" id="id32">11.0.3.2.1 (2018-06-30)</a></li>
<li><a class="reference internal" href="#id16" id="id33">11.0.3.2.0 (2018-05-02)</a></li>
<li><a class="reference internal" href="#id18" id="id34">11.0.3.1.1 (2018-02-04)</a></li>
<li><a class="reference internal" href="#id20" id="id35">10.0.3.1.0 (2017-11-14)</a></li>
<li><a class="reference internal" href="#id22" id="id36">10.0.1.1.1 (2017-10-01)</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bug-tracker" id="id32">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id33">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id34">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id35">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id36">Maintainers</a></li>
<li><a class="reference internal" href="#bug-tracker" id="id37">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="id38">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="id39">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="id40">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="id41">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#id19">Usage</a></h1>
<h1><a class="toc-backref" href="#id23">Usage</a></h1>
<p>There are two ways to use this module: create budgets by KPI or budgets by
GL accounts. Currently, the two methods cannot be combined in the same budget.</p>
<p><strong>Budget by KPIs</strong></p>
@ -431,22 +432,35 @@ to the reporting period when displayed. Columns can be compared by adding a
column of type “comparison” or “sum”.</p>
</div>
<div class="section" id="known-issues-roadmap">
<h1><a class="toc-backref" href="#id20">Known issues / Roadmap</a></h1>
<h1><a class="toc-backref" href="#id24">Known issues / Roadmap</a></h1>
<p>The mis_builder <a class="reference external" href="https://github.com/OCA/mis-builder/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement">roadmap</a>
and <a class="reference external" href="https://github.com/OCA/mis-builder/issues?q=is%3Aopen+is%3Aissue+label%3Abug">known issues</a> can
be found on GitHub.</p>
</div>
<div class="section" id="changelog">
<h1><a class="toc-backref" href="#id21">Changelog</a></h1>
<h1><a class="toc-backref" href="#id25">Changelog</a></h1>
<div class="section" id="id1">
<h2><a class="toc-backref" href="#id22">14.0.3.5.1 (2021-04-06)</a></h2>
<h2><a class="toc-backref" href="#id26">14.0.4.0.0 (2022-01-08)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>A label field has been added to MIS Budget by Account items. When overlap between budget
items is allowed this allows creating a budget with several contributions for a given
account. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/382">#382</a>)</li>
<li>The balance field on MIS Budget by Account items is now writeable. This allows for
easier data entry and import. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/383">#383</a>)</li>
<li>MIS Budget by Account can now be configured to allow budget items with overlapping
dates. Each overlapping item contributes to the budget of the corresponding period. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/384">#384</a>)</li>
</ul>
</div>
<div class="section" id="id5">
<h2><a class="toc-backref" href="#id27">14.0.3.5.1 (2021-04-06)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>Fix incorrect budget by account multi company security rules. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/347">#347</a>)</li>
</ul>
</div>
<div class="section" id="id3">
<h2><a class="toc-backref" href="#id23">13.0.3.5.0 (2020-03-28)</a></h2>
<div class="section" id="id7">
<h2><a class="toc-backref" href="#id28">13.0.3.5.0 (2020-03-28)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>Budget by GL account: allow budgeting by GL account in addition to the
@ -455,12 +469,12 @@ date, and when reporting a pro-rata temporis adjustment is made to match
the reporting period. (<a class="reference external" href="https://github.com/OCA/mis-builder/issues/259">#259</a>)</li>
</ul>
</div>
<div class="section" id="id5">
<h2><a class="toc-backref" href="#id24">13.0.3.4.0 (2020-01-??)</a></h2>
<div class="section" id="id9">
<h2><a class="toc-backref" href="#id29">13.0.3.4.0 (2020-01-??)</a></h2>
<p>Migration to odoo 13.0.</p>
</div>
<div class="section" id="id6">
<h2><a class="toc-backref" href="#id25">12.0.3.4.0 (2019-10-26)</a></h2>
<div class="section" id="id10">
<h2><a class="toc-backref" href="#id30">12.0.3.4.0 (2019-10-26)</a></h2>
<p><strong>Bugfixes</strong></p>
<ul class="simple">
<li>Consider analytic tags too when detecting overlapping budget items.
@ -468,48 +482,48 @@ Previously only analytic account was considered, and this overlap detection
mechanism was overlooked when analytic tags were added to budget items. (<a class="reference external" href="https://github.com/oca/mis-builder/issues/241">#241</a>)</li>
</ul>
</div>
<div class="section" id="id8">
<h2><a class="toc-backref" href="#id26">11.0.3.3.0 (2019-01-13)</a></h2>
<div class="section" id="id12">
<h2><a class="toc-backref" href="#id31">11.0.3.3.0 (2019-01-13)</a></h2>
<p><strong>Features</strong></p>
<ul class="simple">
<li>Support analytic filters. (<a class="reference external" href="https://github.com/oca/mis-builder/issues/15">#15</a>)</li>
</ul>
</div>
<div class="section" id="id10">
<h2><a class="toc-backref" href="#id27">11.0.3.2.1 (2018-06-30)</a></h2>
<div class="section" id="id14">
<h2><a class="toc-backref" href="#id32">11.0.3.2.1 (2018-06-30)</a></h2>
<ul class="simple">
<li>[IMP] Support analytic tags in budget items
(<a class="reference external" href="https://github.com/OCA/mis-builder/pull/100">#100</a>)</li>
</ul>
</div>
<div class="section" id="id12">
<h2><a class="toc-backref" href="#id28">11.0.3.2.0 (2018-05-02)</a></h2>
<div class="section" id="id16">
<h2><a class="toc-backref" href="#id33">11.0.3.2.0 (2018-05-02)</a></h2>
<ul class="simple">
<li>[FIX] #NAME error in out-of-order computation of non
budgetable items in budget columns
(<a class="reference external" href="https://github.com/OCA/mis-builder/pull/69">#68</a>)</li>
</ul>
</div>
<div class="section" id="id14">
<h2><a class="toc-backref" href="#id29">11.0.3.1.1 (2018-02-04)</a></h2>
<div class="section" id="id18">
<h2><a class="toc-backref" href="#id34">11.0.3.1.1 (2018-02-04)</a></h2>
<p>Migration to Odoo 11. No new feature.
(<a class="reference external" href="https://github.com/OCA/mis-builder/pull/67">#67</a>)</p>
</div>
<div class="section" id="id16">
<h2><a class="toc-backref" href="#id30">10.0.3.1.0 (2017-11-14)</a></h2>
<div class="section" id="id20">
<h2><a class="toc-backref" href="#id35">10.0.3.1.0 (2017-11-14)</a></h2>
<p>New features:</p>
<ul class="simple">
<li>[ADD] multi-company record rule for MIS Budgets
(<a class="reference external" href="https://github.com/OCA/mis-builder/issues/27">#27</a>)</li>
</ul>
</div>
<div class="section" id="id18">
<h2><a class="toc-backref" href="#id31">10.0.1.1.1 (2017-10-01)</a></h2>
<div class="section" id="id22">
<h2><a class="toc-backref" href="#id36">10.0.1.1.1 (2017-10-01)</a></h2>
<p>First version.</p>
</div>
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#id32">Bug Tracker</a></h1>
<h1><a class="toc-backref" href="#id37">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/mis-builder/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
@ -517,15 +531,15 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<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="#id33">Credits</a></h1>
<h1><a class="toc-backref" href="#id38">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#id34">Authors</a></h2>
<h2><a class="toc-backref" href="#id39">Authors</a></h2>
<ul class="simple">
<li>ACSONE SA/NV</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#id35">Contributors</a></h2>
<h2><a class="toc-backref" href="#id40">Contributors</a></h2>
<ul class="simple">
<li>Stéphane Bidoul &lt;<a class="reference external" href="mailto:stephane.bidoul&#64;acsone.eu">stephane.bidoul&#64;acsone.eu</a>&gt;</li>
<li>Adrien Peiffer &lt;<a class="reference external" href="mailto:adrien.peiffer&#64;acsone.eu">adrien.peiffer&#64;acsone.eu</a>&gt;</li>
@ -534,7 +548,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#id36">Maintainers</a></h2>
<h2><a class="toc-backref" href="#id41">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

View File

@ -126,3 +126,11 @@ class TestMisBudgetByAccount(SavepointCase):
self.assertEqual(self.budget.state, "cancelled")
self.budget.action_draft()
self.assertEqual(self.budget.state, "draft")
def test_budget_item_balance(self):
item = self.budget.item_ids[0]
item.balance = 100
self.assertEqual(item.debit, 100)
item.balance = -100
self.assertEqual(item.debit, 0)
self.assertEqual(item.credit, 100)

View File

@ -48,6 +48,7 @@
<field name="date_range_id" />
<field name="date_from" />
<field name="date_to" />
<field name="allow_items_overlap" />
</group>
</sheet>
<div class="oe_chatter">

View File

@ -24,12 +24,14 @@
<field name="budget_id" invisible="1" />
<field name="budget_date_from" invisible="1" />
<field name="budget_date_to" invisible="1" />
<field name="name" />
<field name="account_id" />
<field name="date_range_id" />
<field name="date_from" />
<field name="date_to" />
<field name="debit" />
<field name="credit" />
<field name="balance" />
<field
name="analytic_account_id"
groups="analytic.group_analytic_accounting"