X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fcp.pl;h=a70c32eebdcd2b2a74882e0053f4d0bec1567c57;hb=978c6f75abc1bbfded560f856b000e87cbe106bd;hp=885c88e622e481dcf2bf9fc53d054b41aa896a59;hpb=0f790bed1d8bbb846c1a5d835abef897edb80d8d;p=kivitendo-erp.git diff --git a/bin/mozilla/cp.pl b/bin/mozilla/cp.pl index 885c88e62..a70c32eeb 100644 --- a/bin/mozilla/cp.pl +++ b/bin/mozilla/cp.pl @@ -84,7 +84,7 @@ sub payment { # Standard Konto für Umlaufvermögen my $accno_arap = IS->get_standard_accno_current_assets(\%myconfig, \%$form); - # Entsprechend präventiv die Auswahlliste für Kontonummer + # Entsprechend präventiv die Auswahlliste für Kontonummer # auch mit value= zusammenbauen (s.a. oben bugfix 1771) # Wichtig: Auch das Template anpassen, damit hidden input korrekt die " # escaped. @@ -114,7 +114,7 @@ sub payment { $form->{defaultcurrency} = $form->{currency} = $form->{oldcurrency} = $curr[0]; - # Entsprechend präventiv die Auswahlliste für Währungen + # Entsprechend präventiv die Auswahlliste für Währungen # auch mit value= zusammenbauen (s.a. oben bugfix 1771) $form->{selectcurrency} = ""; map { $form->{selectcurrency} .= "\n" } @curr; @@ -132,7 +132,6 @@ sub form_header { $auth->assert('cash'); my ($vc, $arap, $exchangerate); - my ($onload); if ($form->{ $form->{vc} } eq "") { map { $form->{"addr$_"} = "" } (1 .. 4); @@ -167,14 +166,10 @@ sub form_header { $form->header; $arap = lc $form->{ARAP}; - $onload = qq|focus()|; - $onload .= qq|;setupDateFormat('|. $myconfig{dateformat} .qq|', '|. $locale->text("Falsches Datumsformat!") .qq|')|; - $onload .= qq|;setupPoints('|. $myconfig{numberformat} .qq|', '|. $locale->text("wrongformat") .qq|')|; print $::form->parse_html_template('cp/form_header', { is_customer => $form->{vc} eq 'customer', is_receipt => $form->{type} eq 'receipt', - onload => $onload, arap => $arap, vccontent => $vc, }); @@ -278,8 +273,8 @@ sub update { $form->{customer_id} = $form->{AR}[0]{customer_id}; } - # search by invoicenumber, - if ($form->{invnumber}) { + # search by invoicenumber, + if ($form->{invnumber}) { $form->{open} ='Y'; # only open invoices if ($form->{ARAP} eq 'AR'){ # ar_transactions automatically searches by $form->{customer_id} or else @@ -346,6 +341,9 @@ sub update { } } + if (!$form->{forex}) { # read exchangerate from input field (not hidden) + $form->{exchangerate} = $form->parse_amount(\%myconfig, $form->{exchangerate}); + } $form->{forex} = $form->check_exchangerate( \%myconfig, $form->{currency}, $form->{datepaid}, $buysell); $form->{exchangerate} = $form->{forex} if $form->{forex}; @@ -466,14 +464,11 @@ sub check_form { $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('Amount has to be greater then zero! Wrong 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 + next unless $form->{"checked_$i"}; + if (abs($form->parse_amount(\%myconfig, $form->{"paid_$i"}, 2)) < 0.01) { + $form->error($locale->text('Row #1: amount has to be different from zero.', $i)); } + undef $selected_check; } $form->error($locale->text('No transaction selected!')) if $selected_check;