Revision 144e96c1
Von Jan Büren vor mehr als 6 Jahren hinzugefügt
SL/BackgroundJob/SelfTest/Transactions.pm | ||
---|---|---|
15 | 15 |
|
16 | 16 |
$self->_setup; |
17 | 17 |
|
18 |
$self->tester->plan(tests => 24);
|
|
18 |
$self->tester->plan(tests => 25);
|
|
19 | 19 |
|
20 | 20 |
$self->check_konten_mit_saldo_nicht_in_guv; |
21 | 21 |
$self->check_bilanzkonten_mit_pos_eur; |
... | ... | |
41 | 41 |
$self->check_ar_paid_acc_trans; |
42 | 42 |
$self->check_ap_paid_acc_trans; |
43 | 43 |
$self->check_zero_amount_paid_but_datepaid_exists; |
44 |
$self->check_orphaned_reconciliated_links; |
|
44 | 45 |
} |
45 | 46 |
|
46 | 47 |
sub _setup { |
... | ... | |
621 | 622 |
} |
622 | 623 |
} |
623 | 624 |
|
625 |
sub check_orphaned_reconciliated_links { |
|
626 |
my ($self) = @_; |
|
627 |
|
|
628 |
my $query = qq| |
|
629 |
SELECT purpose from bank_transactions |
|
630 |
WHERE cleared is true |
|
631 |
AND id not in (SELECT bank_transaction_id from reconciliation_links) |
|
632 |
AND transdate >= ? AND transdate <= ?|; |
|
633 |
|
|
634 |
my $bt_cleared_no_link = selectall_hashref_query($::form, $self->dbh, $query, $self->fromdate, $self->todate); |
|
635 |
|
|
636 |
if ( scalar @{ $bt_cleared_no_link } > 0 ) { |
|
637 |
$self->tester->ok(0, "Verwaiste abgeglichene Bankbewegungen gefunden. Bei folgenden Bankbewegungen ist die abgleichende Verknüpfung gelöscht worden:"); |
|
638 |
|
|
639 |
for my $bt_orphaned (@{ $bt_cleared_no_link }) { |
|
640 |
$self->tester->diag("Verwendungszweck: $bt_orphaned->{purpose}"); |
|
641 |
} |
|
642 |
} else { |
|
643 |
$self->tester->ok(1, "Keine verwaisten Einträge in abgeglichenen Bankbewegungen."); |
|
644 |
} |
|
645 |
} |
|
646 |
|
|
647 |
|
|
624 | 648 |
1; |
625 | 649 |
|
626 | 650 |
__END__ |
Auch abrufbar als: Unified diff
SelfTests/Transactions.pm erweitert
Da beim Löschen von Zahlungen mittlerweile auch kaskadieren die
reconciliation_links gelöscht werden, können verwaiste abgeglichen
Bankbewegungen entstehen.
Entsprechend Testfall ergänzt.