my ($self, $item, $idx, $data, %params) = @_;
my $part = SL::DB::Part->load_cached($item->parts_id);
- return unless $item->part;
+ return unless $part;
my $part_unit = $data->{units_by_name}->{ $part->unit };
my $item_unit = $data->{units_by_name}->{ $item->unit };
my $num_dec = max 2, _num_decimal_places($item->sellprice);
+ $item->discount(0) if !$item->discount;
# don't include rounded discount into sellprice for calculation
# any time the sellprice is multiplied with qty discount has to be considered as part of the multiplication