X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FCP.pm;h=b7e6241de7b84d1971a7c5ed19ebf2ad307693c4;hb=87d99e7285f69f6f51596162ad8d7b744c48d517;hp=dec4323e2721e7afc6ae319d9373905daa4c48e0;hpb=80f6efd0cd9de22d54ccc605808a74c9955e643c;p=kivitendo-erp.git diff --git a/SL/CP.pm b/SL/CP.pm index dec4323e2..b7e6241de 100644 --- a/SL/CP.pm +++ b/SL/CP.pm @@ -164,9 +164,9 @@ sub get_openinvoices { my $query = qq|SELECT a.id, a.invnumber, a.transdate, a.amount, a.paid, a.curr | . - qq|FROM $arap a | . + qq|FROM $arap a | . qq|WHERE (a.${vc}_id = ?) AND (a.curr = ? $curr_null) AND NOT (a.amount = paid)| . - qq|ORDER BY a.id|; + qq|ORDER BY a.id|; my $sth = prepare_execute_query($form, $dbh, $query, conv_i($form->{"${vc}_id"}), $form->{currency}); @@ -304,7 +304,7 @@ sub process_payment { qq|INSERT INTO acc_trans (trans_id, chart_id, transdate, amount, | . qq| cleared, fx_transaction) | . qq|VALUES (?, (SELECT id FROM chart WHERE accno = ?), ?, ?, ?, ?)|; - @values = (conv_i($form->{"id_$i"}), $paymentaccno, + @values = (conv_i($form->{"id_$i"}), $paymentaccno, conv_date($form->{datepaid}), ($amount * $ml * -1), '0', '1'); do_query($form, $dbh, $query, @values); @@ -345,7 +345,7 @@ sub process_payment { # update AR/AP transaction $query = qq|UPDATE $arap SET $paid, datepaid = ? WHERE id = ?|; - @values = (conv_date($form->{datepaid}), conv_i($form->{"id_$i"})); + @values = (conv_date($form->{datepaid}), conv_i($form->{"id_$i"})); do_query($form, $dbh, $query, @values); # saving the history $form->{id} = $form->{"id_$i"}; @@ -358,15 +358,12 @@ sub process_payment { } } - # record a AR/AP with a payment - if ($form->round_amount($paymentamount, 2) > 0) { - $form->{invnumber} = ""; - OP::overpayment("", $myconfig, $form, $dbh, $paymentamount, $ml, 1); - } - my $rc; if ($form->round_amount($paymentamount, 2) < 0) { - $dbh->rollback; + # Hier werden negativen Zahlungseingänge abgefangen + # Besser: in Oberfläche schon prüfen + # Zahlungsein- und ausgänge sind immer positiv + $dbh->rollback; $rc = 0; } if ($form->round_amount($paymentamount, 2) == 0) {