$column_data{weight} = $form->format_amount(\%myconfig, $form->{"qty_$i"} * $form->{"weight_$i"}, 3) . ' ' . $defaults->{weightunit} if $defaults->{show_weight};
- if ($form->{"id_${i}"}) {
+ if ($form->{"id_${i}"} && !$is_delivery_order) {
my $price_source = SL::PriceSource->new(record_item => $record_item, record => $record);
my $price = $price_source->price_from_source($::form->{"active_price_source_$i"});
- $column_data{price_source} .= $cgi->button(-value => $price->full_description, -onClick => "kivi.io.price_chooser($i)");
+ $column_data{price_source} .= $cgi->button(-value => $price->source_description, -onClick => "kivi.io.price_chooser($i)");
if ($price->source) {
$column_data{price_source} .= ' ' . $cgi->img({src => 'image/flag-red.png', alt => $price->invalid, title => $price->invalid }) if $price->invalid;
$column_data{price_source} .= ' ' . $cgi->img({src => 'image/flag-red.png', alt => $price->missing, title => $price->missing }) if $price->missing;
next unless $obj->meta->column($method);
if ($obj->meta->column($method)->isa('Rose::DB::Object::Metadata::Column::Date')) {
$obj->${\"$method\_as_date"}($::form->{"$method\_$row"});
+ } elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::(?:Numeric|Float|DoublePrecsion)$/) {
+ $obj->${\"$method\_as_number"}($::form->{"$method\_$row"});
} else {
$obj->$method($::form->{"$method\_$row"});
}
sales_delivery_order => 'DeliveryOrder',
}->{$::form->{type}};
- if ($::form->{type} eq 'invoice') {
+ if ($::form->{type} =~ /invoice|credit_note/) {
$class = $::form->{vc} eq 'customer' ? 'Invoice'
: $::form->{vc} eq 'vendor' ? 'PurchaseInvoice'
: do { die 'unknown invoice type' };