From f147b6eb9250111ed6882e4d8b11ad477ac6fefe Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20B=C3=BCren?= Date: Fri, 8 Oct 2010 13:04:22 +0200 Subject: [PATCH] =?utf8?q?Zahlungsein-=20und=20ausg=C3=A4nge.=20Die=20Pr?= =?utf8?q?=C3=BCfung,=20ob=20negative=20oder=20leere=20Werte=20eingetragen?= =?utf8?q?=20wurden=20vom=20CP.pm=20auf=20cp.pl=20verlagert.=20Genauere=20?= =?utf8?q?Fehlermeldung,=20falls=20kein=20Eintrag=20gew=C3=A4hlt=20wurde.?= =?utf8?q?=20Die=20=C3=9Cberpr=C3=BCfung=20auf=20->{amount}=20rausgenommen?= =?utf8?q?,=20sodass=20man=20ohne=20Erneuern=20direkt=20nach=20Auswahl=20d?= =?utf8?q?er=20=C3=9Cberweisung=20buchen=20kann.=20Teilfix=20f=C3=BCr=20Bu?= =?utf8?q?g:=201484?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- SL/CP.pm | 15 +++------------ bin/mozilla/cp.pl | 15 ++++++++++++--- locale/de/all | 3 +++ 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/SL/CP.pm b/SL/CP.pm index fbfd6fa43..19b629f1c 100644 --- a/SL/CP.pm +++ b/SL/CP.pm @@ -240,7 +240,6 @@ sub process_payment { qq| (c.link LIKE '%:AP:%')) |; } - my $paymentamount = $form->{amount}; my $null; ($null, $form->{department_id}) = split(/--/, $form->{department}); @@ -260,7 +259,6 @@ sub process_payment { $form->{"due_$i"} = $form->parse_amount($myconfig, $form->{"due_$i"}); if ($form->{"checked_$i"} && $form->{"paid_$i"}) { - $paymentamount = (($paymentamount * 1000) - ($form->{"paid_$i"} * 1000)) / 1000; # get exchangerate for original $query = @@ -365,18 +363,11 @@ sub process_payment { # /saving the history } } - my $rc; - if ($form->round_amount($paymentamount, 2) < 0) { - # 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) { + # Hier wurden negativen Zahlungseingänge abgefangen + # da Zahlungsein- und ausgänge immer positiv sind + # Besser: in Oberfläche schon prüfen erledigt jb 10.2010 $rc = $dbh->commit; - } $dbh->disconnect; diff --git a/bin/mozilla/cp.pl b/bin/mozilla/cp.pl index a62a9ebff..1c37e41ee 100644 --- a/bin/mozilla/cp.pl +++ b/bin/mozilla/cp.pl @@ -34,7 +34,6 @@ use SL::CP; use SL::IS; use SL::IR; - use strict ("vars", "subs"); #use warnings; @@ -773,9 +772,19 @@ sub check_form { &update; ::end_of_request(); } - - $form->error($locale->text('Zero amount posting!')) if !$form->parse_amount(\%myconfig, $form->{amount}); $form->error($locale->text('Date missing!')) unless $form->{datepaid}; + my $selected_check = 1; + for my $i (1 .. $form->{rowcount}) { + if ($form->{"checked_$i"}) { + if ($form->parse_amount(\%myconfig, $form->{"paid_$i"}, 2) <= 0) { # negativen Betrag eingegeben + $form->error($locale->text('No zero or negative values, please! Correct row number:' . $i)); + } + undef($selected_check); + # last; # ich muss doch über alle buchungen laufen, da ich noch + # die freitext-eingabe der werte prüfen will + } + } + $form->error($locale->text('No transaction selected!')) if $selected_check; $closedto = $form->datetonum($form->{closedto}, \%myconfig); $datepaid = $form->datetonum($form->{datepaid}, \%myconfig); diff --git a/locale/de/all b/locale/de/all index 9d78ab9a6..dc38e49e7 100644 --- a/locale/de/all +++ b/locale/de/all @@ -526,6 +526,7 @@ $self->{texts} = { 'Delivery Order deleted!' => 'Lieferschein gelöscht!', 'Delivery Orders' => 'Lieferscheine', 'Department' => 'Abteilung', + 'Department Id' => 'Abteilungs Nummer', 'Department deleted!' => 'Abteilung gelöscht.', 'Department saved!' => 'Abteilung gespeichert.', 'Departments' => 'Abteilungen', @@ -1067,12 +1068,14 @@ $self->{texts} = { 'No part was found matching the search parameters.' => 'Es wurde kein Artikel gefunden, auf den die Suchparameter zutreffen.', 'No prices will be updated because no prices have been entered.' => 'Es werden keine Preise aktualisiert, weil keine gültigen Preisänderungen eingegeben wurden.', 'No problems were recognized.' => 'Es wurden keine Probleme gefunden.', + 'No transaction selected!' => 'Keine Transaktion ausgewählt', 'No transfers were executed in this export.' => 'In diesem SEPA-Export wurden keine Überweisungen ausgeführt.', 'No unknown units where found.' => 'Es wurden keine unbekannten Einheiten gefunden.', 'No user has been selected.' => 'Es wurde kein Benutzer ausgewählt.', 'No valid number entered for pricegroup "#1".' => 'Für Preisgruppe "#1" wurde keine gültige Nummer eingegeben.', 'No vendor has been selected yet.' => 'Es wurde noch kein Lieferant ausgewählt.', 'No warehouse has been created yet or the quantity of the bins is not configured yet.' => 'Es wurde noch kein Lager angelegt, bzw. die dazugehörigen Lagerplätze sind noch nicht konfiguriert.', + 'No zero or negative values, please! Correct row number:' => 'Leere Eingabe oder Werte kleiner, gleich null eingegeben. Fehler in Reihe Nummer: ', 'No.' => 'Position', 'Non-taxable Purchases' => 'Nicht zu versteuernde Einkäufe', 'Non-taxable Sales' => 'Nicht zu versteuernde Verkäufe', -- 2.20.1