Skip to content

BalancePrint regner sum af betalinger og "andet" forkert #227

@Mortal

Description

@Mortal

Pt. indeholder BalancePrint følgende stump kode:

transaction_qs = Transaction.objects.all()
period_start_date, = (
    Sheet.objects.filter(period=period).aggregate(Min('start_date')).values())
period_start_time = timezone.get_current_timezone().localize(
    datetime.datetime.combine(period_start_date, datetime.time()))
transaction_qs = transaction_qs.filter(time__gte=period_start_time)

Koden gør at alle betalinger medtages der har en time som er efter den tidligste start_date på en krydsliste i det pågældende GF-år. Det giver følgende problem: Hvis man opretter en krydsliste i det nuværende GF-år, men med en start-dato tilbage i fortiden (f.eks. 2001-01-01 for at teste noget), så vil regningens "betalt"-søjle indeholde betalinger fra før det nuværende GF-år.

En umiddelbar løsning er at erstatte ovenstående kode med:

transaction_qs = Transaction.objects.filter(period=period)

...eller:

transaction_qs = Transaction.objects.filter(session__period=period)

... men det skal testes. BalancePrint blev implementeret i 7669340 ("Add PDF output", 2016-12-02) før Transaction.period blev tilføjet i 06674e2 ("Add Transaction.period", 2017-02-26), så det er formentlig bare mig der har overset at opdatere BalancePrint efter Transaction.period blev tilføjet.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions