Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision d85a3a7c

Von Bernd Blessmann vor fast 14 Jahren hinzugefügt

Rabatt geht nicht verloren, wenn Rechnung aus Lieferscheinliste generiert wird.

Fix für Bug 1523

Unterschiede anzeigen:

bin/mozilla/do.pl
846 846

  
847 847
  map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued);
848 848

  
849
  # get vendor or customer discount
850
  my $vc_discount;
851
  my $saved_form = save_form();
852
  if ($form->{vc} eq 'vendor') {
853
    IR->get_vendor(\%myconfig, \%$form);
854
    $vc_discount = $form->{vendor_discount};
855
  } else {
856
    IS->get_customer(\%myconfig, \%$form);
857
    $vc_discount = $form->parse_amount(\%myconfig, $form->{customer_discount});
858
  }
859
  restore_form($saved_form);
860

  
849 861
  $form->{rowcount} = 0;
850 862
  foreach my $ref (@{ $form->{form_details} }) {
851 863
    $form->{rowcount}++;
852 864
    $ref->{reqdate} ||= $ref->{dord_transdate}; # copy transdates into each invoice row
853 865
    map { $form->{"${_}_$form->{rowcount}"} = $ref->{$_} } keys %{ $ref };
854
    map { $form->{"${_}_$form->{rowcount}"} = $form->format_amount(\%myconfig, $ref->{$_}) } qw(qty sellprice discount lastcost);
866
    map { $form->{"${_}_$form->{rowcount}"} = $form->format_amount(\%myconfig, $ref->{$_}) } qw(qty sellprice lastcost);
867

  
868
    if ($vc_discount){ # falls wir einen Lieferanten/Kundenrabatt haben 
869
      # und keinen anderen discount wert an $i ...
870
      $form->{"discount_$form->{rowcount}"} ||= $vc_discount; # ... nehmen wir diesen Rabatt
871
    }
872

  
855 873
    $form->{"discount_$form->{rowcount}"}   = $form->{"discount_$form->{rowcount}"}  * 100; #s.a. Bug 1151
856 874
    # Anm.: Eine Änderung des discounts in der SL/DO.pm->retrieve (select (doi.discount * 100) as discount) ergibt in psql einen
857 875
    # Wert von 10.0000001490116. Ferner ist der Rabatt in der Rechnung dann bei 1.0 (?). Deswegen lasse ich das hier. jb 10.10.09
876

  
877
    $form->{"discount_$form->{rowcount}"} = $form->format_amount(\%myconfig, $form->{"discount_$form->{rowcount}"});
858 878
  }
859 879
  delete $form->{form_details};
860 880

  

Auch abrufbar als: Unified diff