Skip to content

Commit

Permalink
[FIX] mis_builder: branche and matrix value computation
Browse files Browse the repository at this point in the history
  • Loading branch information
jguenat authored and sbidoul committed Nov 11, 2024
1 parent be2d7e5 commit 12f8a03
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 1 deletion.
13 changes: 12 additions & 1 deletion mis_builder/models/aep.py
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,18 @@ def do_queries(
):
# in initial mode, ignore accounts with 0 balance
continue
self._data[key][acc["account_id"][0]] = (debit * rate, credit * rate)
# due to branches, it's possible to have multiple acc
# with the same account_id
if acc["account_id"][0] in self._data[key]:
existing_debit, existing_credit = self._data[key][
acc["account_id"][0]
]
else:
existing_debit, existing_credit = (0.0, 0.0)
self._data[key][acc["account_id"][0]] = (
existing_debit + debit * rate,
existing_credit + credit * rate,
)
# compute ending balances by summing initial and variation
for key in ends:
domain, mode = key
Expand Down
25 changes: 25 additions & 0 deletions mis_builder/tests/test_aep.py
Original file line number Diff line number Diff line change
Expand Up @@ -410,3 +410,28 @@ def test_invalid_field(self):
datetime.date(self.prev_year, 12, 1),
)
assert "Error while querying move line source" in str(cm.exception)

def test_aep_branch(self):
# create branch
self.branch = self.res_company.create(
{
"name": "AEP Branch",
"parent_id": self.company.id,
}
)
# create branch move in March this year
branch_move = self._create_move(
date=datetime.date(self.curr_year, 3, 1),
amount=50,
debit_acc=self.account_ar,
credit_acc=self.account_in,
)
branch_move.company_id = self.branch
self.aep = AEP(self.company | self.branch)
self.aep.parse_expr("balp[]")
self.aep.done_parsing()
self._do_queries(
datetime.date(self.curr_year, 3, 1), datetime.date(self.curr_year, 3, 31)
)
variation = self._eval_by_account_id("balp[]")
self.assertEqual(variation, {self.account_ar.id: 550, self.account_in.id: -550})

0 comments on commit 12f8a03

Please sign in to comment.