X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDO.pm;h=28eb85436718d973686be97d99944b3b018e31ec;hb=38c19bfdc392dc369d77d612620fccc595a5f2af;hp=eea23724f6f08a3f18778bda63528a4bd5b54f58;hpb=00738f6f4e43355ae9e70cd5350d7c75c1533f5f;p=kivitendo-erp.git diff --git a/SL/DO.pm b/SL/DO.pm index eea23724f..28eb85436 100644 --- a/SL/DO.pm +++ b/SL/DO.pm @@ -142,12 +142,13 @@ sub transactions { "transaction_description" => "dord.transaction_description" ); - my $sortoder = "dord.id"; + my $sortdir = !defined $form->{sortdir} ? 'ASC' : $form->{sortdir} ? 'ASC' : 'DESC'; + my $sortorder = "dord.id"; if ($form->{sort} && grep($form->{sort}, keys(%allowed_sort_columns))) { $sortorder = $allowed_sort_columns{$form->{sort}}; } - $query .= qq| ORDER by | . $sortorder; + $query .= qq| ORDER by | . $sortorder . " $sortdir"; $form->{DO} = selectall_hashref_query($form, $dbh, $query, @values); @@ -345,7 +346,7 @@ sub save { # Link this delivery order to the quotations it was created from. RecordLinks->create_links('dbh' => $dbh, - 'mode' => 'string', + 'mode' => 'ids', 'from_table' => 'oe', 'from_ids' => $form->{convert_from_oe_ids}, 'to_table' => 'delivery_orders', @@ -388,13 +389,11 @@ sub mark_orders_if_delivered { my ($oe_id) = $links[0]->{from_id} if (scalar @links); - $main::lxdebug->message(0, "oe_id $oe_id"); - return $main::lxdebug->leave_sub() if (!$oe_id); my $all_units = AM->retrieve_all_units(); - $query = qq|SELECT oi.parts_id, oi.qty, oi.unit, p.unit AS partunit + my $query = qq|SELECT oi.parts_id, oi.qty, oi.unit, p.unit AS partunit FROM orderitems oi LEFT JOIN parts p ON (oi.parts_id = p.id) WHERE (oi.trans_id = ?)|; @@ -404,8 +403,6 @@ sub mark_orders_if_delivered { 'oe_id' => $oe_id,); my %ordered = (); - do_statement($form, $sth, $query, $oe_id); - while (my $ref = $sth->fetchrow_hashref()) { $ref->{baseqty} = $ref->{qty} * $all_units->{$ref->{unit}}->{factor} / $all_units->{$ref->{partunit}}->{factor};