X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FPriceSource.pm;h=b7ee8bded9e3614fca2b8ca134cd9557854f3b84;hb=c23b1062b2578fb6792a403d2d8ff599138b3885;hp=ab74da015a3397d99fe4455844dae16f26b57cb9;hpb=3bcd9c94d455e35473e2def86e67568b5c262d0d;p=kivitendo-erp.git diff --git a/SL/Controller/PriceSource.pm b/SL/Controller/PriceSource.pm index ab74da015..b7ee8bded 100644 --- a/SL/Controller/PriceSource.pm +++ b/SL/Controller/PriceSource.pm @@ -77,6 +77,7 @@ sub _make_record_item { request_quotation => 'OrderItem', invoice => 'InvoiceItem', purchase_invoice => 'InvoiceItem', + credit_note => 'InvoiceItem', purchase_delivery_order => 'DeliveryOrderItem', sales_delivery_order => 'DeliveryOrderItem', }->{$::form->{type}}; @@ -97,6 +98,8 @@ sub _make_record_item { $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"}); + } elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::Boolean$/) { + $obj->$method(!!$::form->{$method}); } else { $obj->$method($::form->{"$method\_$row"}); } @@ -114,10 +117,9 @@ sub _make_record { my $class = { sales_order => 'Order', - purchase_oder => 'Order', + purchase_order => 'Order', sales_quotation => 'Order', request_quotation => 'Order', - invoice => 'Invoice', purchase_invoice => 'PurchaseInvoice', purchase_delivery_order => 'DeliveryOrder', sales_delivery_order => 'DeliveryOrder', @@ -147,6 +149,8 @@ sub _make_record { $obj->${\"$method\_as_date"}($::form->{$method}); } elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::(?:Numeric|Float|DoublePrecsion)$/) { $obj->${\"$method\_as\_number"}($::form->{$method}); + } elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::Boolean$/) { + $obj->$method(!!$::form->{$method}); } else { $obj->$method($::form->{$method}); } @@ -161,6 +165,7 @@ sub _make_record { $obj->items(@items) if @items; } + $obj->is_sales(!!$obj->customer_id) if $class eq 'SL::DB::DeliveryOrder'; return $obj; }