Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
Mortal opened this issue Sep 5, 2018 · 1 comment
Open

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

Mortal opened this issue Sep 5, 2018 · 1 comment
Assignees

Comments

@Mortal
Copy link
Contributor

Mortal commented Sep 5, 2018

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.

@Mortal Mortal self-assigned this Sep 5, 2018
@Mortal Mortal changed the title Brug Transaction.period eller Transaction.session.period i BalancePrint BalancePrint regner sum af betalinger og "andet" forkert Sep 26, 2018
@Mortal
Copy link
Contributor Author

Mortal commented Sep 26, 2018

Som @OEHC har påpeget over for mig, er summen af betalinger rent faktisk forkert på den udskrevne regning, da man sagtens kan have første krydsliste i år N+1 til at have startdato den samme dag som man laver den sidste opgørelse for år N. I dette tilfælde vil time for Transaction i år N være større end period_start_time for år N+1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant