Browse Source

[IMP] mis_builder_cash_flow: Consider states according selection

"Target Moves" option in MIS report instance was previously ignored.

Now it's taken into account, but still excluding cancelled entries.
pull/802/head
Pedro M. Baeza 3 years ago
parent
commit
bd0c0d0660
  1. 7
      mis_builder_cash_flow/README.rst
  2. 1
      mis_builder_cash_flow/__manifest__.py
  3. 4
      mis_builder_cash_flow/models/__init__.py
  4. 17
      mis_builder_cash_flow/models/mis_report_instance.py
  5. 3
      mis_builder_cash_flow/readme/CONTRIBUTORS.rst
  6. 4
      mis_builder_cash_flow/readme/USAGE.rst
  7. 8
      mis_builder_cash_flow/report/mis_cash_flow.py
  8. 8
      mis_builder_cash_flow/static/description/index.html

7
mis_builder_cash_flow/README.rst

@ -43,6 +43,10 @@ To use this module, you need to:
#. Go to Accounting > Reports > MIS Reporting > MIS Reports and choose "Cash Flow" report
#. You can add forecast lines on Accounting > Reports > MIS Reporting > Cash Flow Forecast Line
#. If you select on "Target Moves" the value "All Posted Entries", you will get only
lines for already posted invoices/entries + the forecast lines.
#. Selecting "All Entries", draft invoices/entries are also included.
#. In any case, cancelled invoices/entries are not included.
Known issues / Roadmap
======================
@ -75,6 +79,9 @@ Contributors
* Juan José Scarafía <jjs@adhoc.com.ar>
* Gonzalo Ruzafa <gr@adhoc.com.ar>
* Alberto Martín <alberto.martin@guadaltech.es>
* `Tecnativa <https://www.tecnativa.com>`_:
* Pedro M. Baeza
Maintainers
~~~~~~~~~~~

1
mis_builder_cash_flow/__manifest__.py

@ -1,4 +1,5 @@
# Copyright 2019 ADHOC SA
# Copyright 2021 Tecnativa - Pedro M. Baeza
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{

4
mis_builder_cash_flow/models/__init__.py

@ -1,4 +1,4 @@
# Copyright 2019 ADHOC SA
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from . import mis_cash_flow_forecast_line
from . import account_account
from . import mis_cash_flow_forecast_line
from . import mis_report_instance

17
mis_builder_cash_flow/models/mis_report_instance.py

@ -0,0 +1,17 @@
# Copyright 2021 Tecnativa - Pedro M. Baeza
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import models
class MisReportInstancePeriod(models.Model):
_inherit = "mis.report.instance.period"
def _get_additional_move_line_filter(self):
"""Add the posted condition ."""
domain = super()._get_additional_move_line_filter()
if (
self._get_aml_model_name() == "mis.cash_flow"
and self.report_instance_id.target_move == "posted"
):
domain += [("state", "=", "posted")]
return domain

3
mis_builder_cash_flow/readme/CONTRIBUTORS.rst

@ -1,3 +1,6 @@
* Juan José Scarafía <jjs@adhoc.com.ar>
* Gonzalo Ruzafa <gr@adhoc.com.ar>
* Alberto Martín <alberto.martin@guadaltech.es>
* `Tecnativa <https://www.tecnativa.com>`_:
* Pedro M. Baeza

4
mis_builder_cash_flow/readme/USAGE.rst

@ -2,3 +2,7 @@ To use this module, you need to:
#. Go to Accounting > Reports > MIS Reporting > MIS Reports and choose "Cash Flow" report
#. You can add forecast lines on Accounting > Reports > MIS Reporting > Cash Flow Forecast Line
#. If you select on "Target Moves" the value "All Posted Entries", you will get only
lines for already posted invoices/entries + the forecast lines.
#. Selecting "All Entries", draft invoices/entries are also included.
#. In any case, cancelled invoices/entries are not included.

8
mis_builder_cash_flow/report/mis_cash_flow.py

@ -50,6 +50,12 @@ class MisCashFlow(models.Model):
account_internal_type = fields.Selection(
related="account_id.user_type_id.type", readonly=True
)
state = fields.Selection(selection="_selection_parent_state",)
def _selection_parent_state(self):
return self.env["account.move"].fields_get(allfields=["state"])["state"][
"selection"
]
def init(self):
query = """
@ -75,6 +81,7 @@ class MisCashFlow(models.Model):
aml.partner_id as partner_id,
aml.company_id as company_id,
aml.name as name,
aml.parent_state as state,
COALESCE(aml.date_maturity, aml.date) as date
FROM account_move_line as aml
WHERE aml.parent_state != 'cancel'
@ -99,6 +106,7 @@ class MisCashFlow(models.Model):
fl.partner_id as partner_id,
fl.company_id as company_id,
fl.name as name,
'posted' as state,
fl.date as date
FROM mis_cash_flow_forecast_line as fl
"""

8
mis_builder_cash_flow/static/description/index.html

@ -394,6 +394,10 @@ The forecast is based on two types of date:</p>
<ol class="arabic simple">
<li>Go to Accounting &gt; Reports &gt; MIS Reporting &gt; MIS Reports and choose “Cash Flow” report</li>
<li>You can add forecast lines on Accounting &gt; Reports &gt; MIS Reporting &gt; Cash Flow Forecast Line</li>
<li>If you select on “Target Moves” the value “All Posted Entries”, you will get only
lines for already posted invoices/entries + the forecast lines.</li>
<li>Selecting “All Entries”, draft invoices/entries are also included.</li>
<li>In any case, cancelled invoices/entries are not included.</li>
</ol>
</div>
<div class="section" id="known-issues-roadmap">
@ -424,6 +428,10 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<li>Juan José Scarafía &lt;<a class="reference external" href="mailto:jjs&#64;adhoc.com.ar">jjs&#64;adhoc.com.ar</a>&gt;</li>
<li>Gonzalo Ruzafa &lt;<a class="reference external" href="mailto:gr&#64;adhoc.com.ar">gr&#64;adhoc.com.ar</a>&gt;</li>
<li>Alberto Martín &lt;<a class="reference external" href="mailto:alberto.martin&#64;guadaltech.es">alberto.martin&#64;guadaltech.es</a>&gt;</li>
<li><a class="reference external" href="https://www.tecnativa.com">Tecnativa</a>:<ul>
<li>Pedro M. Baeza</li>
</ul>
</li>
</ul>
</div>
<div class="section" id="maintainers">

Loading…
Cancel
Save