}
}
- $self->update_attributes(delivered => 1);
+ $self->update_attributes(delivered => 1) unless $::instance_conf->get_shipped_qty_require_stock_out;
1;
})) {
return undef;
{ from => 'purchase_order', to => 'purchase_order', abbr => 'popo' },
{ from => 'sales_order', to => 'purchase_order', abbr => 'sopo' },
{ from => 'purchase_order', to => 'sales_order', abbr => 'poso' },
+ { from => 'sales_order', to => 'sales_quotation', abbr => 'sosq' },
+ { from => 'purchase_order', to => 'request_quotation', abbr => 'porq' },
);
my $from_to = (grep { $_->{from} eq $source->type && $_->{to} eq $destination_type} @from_tos)[0];
croak("Cannot convert from '" . $source->type . "' to '" . $destination_type . "'") if !$from_to;
if ( $is_abbr_any->(qw(soso)) ) {
$args{periodic_invoices_config} = $source->periodic_invoices_config->clone_and_reset if $source->periodic_invoices_config;
}
+ if ( $is_abbr_any->(qw(sosq porq)) ) {
+ $args{ordnumber} = undef;
+ $args{quonumber} = undef;
+ $args{reqdate} = DateTime->today_local->next_workday();
+ }
# Custom shipto addresses (the ones specific to the sales/purchase
# record and not to the customer/vendor) are only linked from
marge_percent marge_price_factor marge_total
ordnumber parts_id price_factor price_factor_id pricegroup_id
project_id qty reqdate sellprice serialnumber ship subtotal transdate unit
+ optional
)),
custom_variables => \@custom_variables,
);