Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision da804bf2

Von G. Richardson vor mehr als 14 Jahren hinzugefügt

EK-Preis editierbar gemacht und marge_total repariert

Der EK-Preis ist jetzt in Angebot/Auftrag/Rechnung editierbar.

Dies ist praktisch für Händler/Wiederverkäufer, bei denen sich der EK-Preis
häufig ändert, und es sich nicht lohnt, diesen in den Stammdaten zu pflegen.

Der EK-Preis wird (als lastcost) zusammen mit marge_total und marge_percent für
jeden Artikel in orderitems/invoice in der DB gespeichert. (Bei marge_total gab
es hier einen Bug, der falsche Variablenname wurde benutzt und marge_total war
immer leer.)

Der Stammdaten-EK-Preis wird nicht verändert, wenn man einen abweichenden
EK-Preis eingibt.

Unterschiede anzeigen:

bin/mozilla/oe.pl
283 283
    $form->{"reqdate_$i"} ||= $form->{"deliverydate_$i"};
284 284
    $form->{"discount_$i"}  = $form->format_amount(\%myconfig, $form->{"discount_$i"} * ($format_discounts ? 100 : 1));
285 285
    $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"});
286
    $form->{"lastcost_$i"}  = $form->format_amount(\%myconfig, $form->{"lastcost_$i"});
286 287
    $form->{"qty_$i"}       = $form->format_amount(\%myconfig, $form->{"qty_$i"});
287 288
  }
288 289

  
......
554 555
    # select discount as customer_discount from customer
555 556
    $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"$form->{vc}_discount"} * 100);
556 557

  
558
    $form->{"lastcost_$i"} = $form->parse_amount(\%myconfig, $form->{"lastcost_$i"});
559

  
557 560
    if ($rows) {
558 561
      $form->{"qty_$i"} = 1 unless ($form->parse_amount(\%myconfig, $form->{"qty_$i"}));
559 562

  
......
599 602
        $form->{creditremaining} -= $amount;
600 603

  
601 604
        $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
605
        $form->{"lastcost_$i"}  = $form->format_amount(\%myconfig, $form->{"lastcost_$i"}, $decimalplaces);
602 606
        $form->{"qty_$i"}       = $form->format_amount(\%myconfig, $form->{"qty_$i"}, $dec_qty);
603 607

  
604 608
        # get pricegroups for parts
......
1761 1765
  # reset
1762 1766
  map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued customer vendor creditlimit creditremaining discount tradediscount oldinvtotal delivered ordnumber);
1763 1767

  
1764
  # if purchase_order was generated from sales_order, use lastcost_$i as sellprice_$i
1768
  # if purchase_order was generated from sales_order, use  lastcost_$i as sellprice_$i
1765 1769
  if ( $form->{sales_order_to_purchase_order} ) {
1766 1770
    for my $i (1 .. $form->{rowcount}) {
1767 1771
      $form->{"sellprice_${i}"} = $form->format_amount(\%myconfig,$form->{"lastcost_${i}"});
......
1829 1833
  delete @{$form}{qw(id subject message cc bcc printed emailed queued creditlimit creditremaining discount tradediscount oldinvtotal closed delivered)};
1830 1834

  
1831 1835
  for my $i (1 .. $form->{rowcount}) {
1832
    map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor discount);
1836
    map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice lastcost basefactor discount);
1833 1837
  }
1834 1838

  
1835 1839
  my %old_values = map { $_ => $form->{$_} } qw(customer_id oldcustomer customer vendor_id oldvendor vendor);

Auch abrufbar als: Unified diff