diff --git a/account_budget_forecast/models/budget_forecast.py b/account_budget_forecast/models/budget_forecast.py index e415913..ffe10c8 100644 --- a/account_budget_forecast/models/budget_forecast.py +++ b/account_budget_forecast/models/budget_forecast.py @@ -418,3 +418,24 @@ class BudgetForecast(models.Model): return action else: raise UserError(_("There is no analytic lines linked to this budget line")) + + def action_view_draft_invoice_lines(self): + self.ensure_one() + invoice_lines = ( + self.env["account.move.line"] + .search([("parent_state", "in", ["draft"])]) + .filtered(lambda x: self.analytic_tag in x.analytic_tag_ids) + ) + if len(invoice_lines) > 0: + action = self.env["ir.actions.actions"]._for_xml_id( + "account.action_account_moves_all_tree" + ) + action["domain"] = [ + ("analytic_tag_ids", "ilike", self.analytic_tag.id), + ("parent_state", "in", ["draft"]), + ] + return action + else: + raise UserError( + _("There is no draft invoice lines linked to this budget line") + ) diff --git a/account_budget_forecast/views/budget_forecast.xml b/account_budget_forecast/views/budget_forecast.xml index 1e1c179..40d93cd 100644 --- a/account_budget_forecast/views/budget_forecast.xml +++ b/account_budget_forecast/views/budget_forecast.xml @@ -36,10 +36,17 @@ - - + + + + + + +