my $callback = $form->escape($href);
my $edit_url = build_std_url('action=edit', 'type', 'vc');
- my $edit_order_url = build_std_url('script=oe.pl', 'type=' . ($form->{type} eq 'sales_delivery_order' ? 'sales_order' : 'purchase_order'), 'action=edit');
+ my $edit_order_url = ($::instance_conf->get_feature_experimental)
+ ? build_std_url('script=controller.pl', 'action=Order/edit', 'type=' . ($form->{type} eq 'sales_delivery_order' ? 'sales_order' : 'purchase_order'))
+ : build_std_url('script=oe.pl', 'action=edit', 'type=' . ($form->{type} eq 'sales_delivery_order' ? 'sales_order' : 'purchase_order'));
my $idx = 1;
my $form = $main::form;
my %myconfig = %main::myconfig;
my $locale = $main::locale;
-
- if (DO->delete()) {
+ my $ret;
+ if ($ret = DO->delete()) {
# saving the history
if(!exists $form->{addition}) {
$form->{snumbers} = qq|donumber_| . $form->{donumber};
$::dispatcher->end_request;
}
- $form->error($locale->text('Cannot delete delivery order!'));
+ $form->error($locale->text('Cannot delete delivery order!') . $ret);
$main::lxdebug->leave_sub();
}
if ($form->{ordnumber}) {
require SL::DB::Order;
- if (my $order = SL::DB::Manager::Order->find_by(ordnumber => $form->{ordnumber})) {
+ my $vc_id = $form->{type} =~ /^sales/ ? 'customer_id' : 'vendor_id';
+ if (my $order = SL::DB::Manager::Order->find_by(ordnumber => $form->{ordnumber}, $vc_id => $form->{"$vc_id"})) {
$order->load;
$form->{orddate} = $order->transdate_as_date;
$form->{$_} = $order->$_ for qw(payment_id salesman_id taxzone_id quonumber);