X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Foe.pl;h=e6ec1f9435c3c64d8fe24911128b7a04afb9ce94;hb=20e6c6695eb9b9742686b947b4037636c31b13dd;hp=f05bcfb85151c2021cce8eb97565c29f8399eadd;hpb=130ba50ded16e214dd1f6482ac8c54b3affc25f9;p=kivitendo-erp.git diff --git a/bin/mozilla/oe.pl b/bin/mozilla/oe.pl index f05bcfb85..e6ec1f943 100644 --- a/bin/mozilla/oe.pl +++ b/bin/mozilla/oe.pl @@ -452,10 +452,10 @@ sub form_footer { $form->{"${item}_total"} = $form->format_amount(\%myconfig, $form->{"${item}_total"}, 2); $TMPL_VAR{tax} .= qq| - - $form->{"${item}_description"} | . $form->{"${item}_rate"} * 100 .qq|% - $form->{"${item}_total"} - |; + + $form->{"${item}_description"} | . $form->{"${item}_rate"} * 100 .qq|% + $form->{"${item}_total"} + |; } } @@ -470,14 +470,14 @@ sub form_footer { $form->{"${item}_netto"} = $form->format_amount(\%myconfig, $form->{"${item}_netto"}, 2); $TMPL_VAR{tax} .= qq| - - Enthaltene $form->{"${item}_description"} | . $form->{"${item}_rate"} * 100 .qq|% - $form->{"${item}_total"} - - - Nettobetrag - $form->{"${item}_netto"} - |; + + Enthaltene $form->{"${item}_description"} | . $form->{"${item}_rate"} * 100 .qq|% + $form->{"${item}_total"} + + + Nettobetrag + $form->{"${item}_netto"} + |; } } } @@ -552,7 +552,7 @@ sub update { my $rows = scalar @{ $form->{item_list} }; # hier ist das problem fuer bug 817 $form->{discount} wird nicht durchgeschliffen - # ferner fallunterscheidung fuer verkauf oder einkauf s.a. bug 736 jb 04.05.2009 + # ferner fallunterscheidung fuer verkauf oder einkauf s.a. bug 736 jb 04.05.2009 # select discount as vendor_discount from vendor || # select discount as customer_discount from customer $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"$form->{vc}_discount"} * 100); @@ -1059,8 +1059,8 @@ sub save_and_close { # saving the history if(!exists $form->{addition}) { $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber}; - $form->{addition} = "SAVED"; - $form->save_history($form->dbconnect(\%myconfig)); + $form->{addition} = "SAVED"; + $form->save_history($form->dbconnect(\%myconfig)); } # /saving the history @@ -1166,8 +1166,8 @@ sub save { # saving the history if(!exists $form->{addition}) { $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber}; - $form->{addition} = "SAVED"; - $form->save_history($form->dbconnect(\%myconfig)); + $form->{addition} = "SAVED"; + $form->save_history($form->dbconnect(\%myconfig)); } # /saving the history @@ -1254,8 +1254,8 @@ sub delete_order_quotation { # saving the history if(!exists $form->{addition}) { $form->{snumbers} = qq|ordnumber_| . $form->{ordnumber}; - $form->{addition} = "DELETED"; - $form->save_history($form->dbconnect(\%myconfig)); + $form->{addition} = "DELETED"; + $form->save_history($form->dbconnect(\%myconfig)); } # /saving the history $form->info($msg); @@ -1460,16 +1460,16 @@ sub backorder_exchangerate { - - - - - - - + + + + + + + - - + +
| . $locale->text('Currency') . qq|$form->{currency}
| . $locale->text('Date') . qq|$orddate
| . $locale->text('Currency') . qq|$form->{currency}
| . $locale->text('Date') . qq|$orddate
| . $locale->text('Exchangerate') . qq|| . $locale->text('Exchangerate') . qq|
@@ -1688,7 +1688,9 @@ sub purchase_order { check_oe_access(); $main::auth->assert('purchase_order_edit'); + $form->{sales_order_to_purchase_order} = 0; if ($form->{type} eq 'sales_order') { + $form->{sales_order_to_purchase_order} = 1; check_for_direct_delivery(); } @@ -1706,6 +1708,8 @@ sub purchase_order { &poso; + delete $form->{sales_order_to_purchase_order}; + $main::lxdebug->leave_sub(); } @@ -1754,8 +1758,14 @@ sub poso { $form->{old_salesman_id} = $form->{salesman_id}; # reset - map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued customer vendor creditlimit creditremaining discount tradediscount oldinvtotal delivered - ordnumber); + map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued customer vendor creditlimit creditremaining discount tradediscount oldinvtotal delivered ordnumber); + + # if purchase_order was generated from sales_order, use lastcost_$i as sellprice_$i + if ( $form->{sales_order_to_purchase_order} ) { + for my $i (1 .. $form->{rowcount}) { + $form->{"sellprice_${i}"} = $form->format_amount(\%myconfig,$form->{"lastcost_${i}"}); + }; + }; for my $i (1 .. $form->{rowcount}) { map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor discount); @@ -1767,14 +1777,17 @@ sub poso { map { $form->{$_} = $saved_vars{$_} } keys %saved_vars; - &prepare_order; - # prepare_order assumes that the discount is in db-notation (0.05) and not user-notation (5) - # and therefore multiplies the values by 100 in the case of reading from db or making an order from several quotation, so we convert this back into percent-notation for the user interface by multiplying with 0.01 + # and therefore multiplies the values by 100 in the case of reading from db or making an order + # from several quotation, so we convert this back into percent-notation for the user interface by multiplying with 0.01 + # ergänzung 03.10.2010 muss vor prepare_order passieren (s.a. Svens Kommentar zu Bug 1017) + # das parse_amount wird oben schon ausgeführt, deswegen an dieser stelle raus (wichtig: kommawerte bei discount testen) for my $i (1 .. $form->{rowcount}) { - $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"discount_$i"} * 0.01); + $form->{"discount_$i"} /=100; }; + &prepare_order; + # format amounts for my $i (1 .. $form->{rowcount} - 1) { map { $form->{"${_}_$i"} =~ s/\"/"/g } qw(partnumber description unit);