X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=SL%2FOE.pm;h=b8dd56072cdc48807cb10995ad5aab560baf1d90;hb=7ff7dd017542c32a8f8111167fda69857de50910;hp=35e617576d0c8cbaa75a584fa0cc0ddc15ce5152;hpb=4bd1e2f8b588972f10f92728301feacefd5ee4dd;p=kivitendo-erp.git diff --git a/SL/OE.pm b/SL/OE.pm index 35e617576..b8dd56072 100644 --- a/SL/OE.pm +++ b/SL/OE.pm @@ -109,6 +109,7 @@ sub transactions { qq| o.closed, o.delivered, o.quonumber, o.cusordnumber, o.shippingpoint, o.shipvia, | . qq| o.transaction_description, | . qq| o.marge_total, o.marge_percent, | . + qq| o.itime::DATE AS insertdate, | . qq| ex.$rate AS exchangerate, | . qq| pr.projectnumber AS globalprojectnumber, | . qq| e.name AS employee, s.name AS salesman, | . @@ -230,6 +231,16 @@ SQL push(@values, conv_date($form->{reqdateto})); } + if($form->{insertdatefrom}) { + $query .= qq| AND o.itime::DATE >= ?|; + push(@values, conv_date($form->{insertdatefrom})); + } + + if($form->{insertdateto}) { + $query .= qq| AND o.itime::DATE <= ?|; + push(@values, conv_date($form->{insertdateto})); + } + if ($form->{shippingpoint}) { $query .= qq| AND o.shippingpoint ILIKE ?|; push(@values, '%' . $form->{shippingpoint} . '%'); @@ -270,8 +281,17 @@ SQL push @values, conv_date($form->{expected_billing_date_to}); } + my ($cvar_where, @cvar_values) = CVar->build_filter_query('module' => 'CT', + 'trans_id_field' => 'ct.id', + 'filter' => $form, + ); + if ($cvar_where) { + $query .= qq| AND ($cvar_where)|; + push @values, @cvar_values; + } + my $sortdir = !defined $form->{sortdir} ? 'ASC' : $form->{sortdir} ? 'ASC' : 'DESC'; - my $sortorder = join(', ', map { "${_} ${sortdir} " } ("o.id", $form->sort_columns("transdate", $ordnumber, "name"))); + my $sortorder = join(', ', map { "${_} ${sortdir} " } ("o.id", $form->sort_columns("transdate", $ordnumber, "name"), "o.itime")); my %allowed_sort_columns = ( "transdate" => "o.transdate", "reqdate" => "o.reqdate", @@ -285,10 +305,11 @@ SQL "shipvia" => "o.shipvia", "transaction_description" => "o.transaction_description", "shippingpoint" => "o.shippingpoint", + "insertdate" => "o.itime", "taxzone" => "tz.description", ); if ($form->{sort} && grep($form->{sort}, keys(%allowed_sort_columns))) { - $sortorder = $allowed_sort_columns{$form->{sort}} . " ${sortdir}"; + $sortorder = $allowed_sort_columns{$form->{sort}} . " ${sortdir}" . ", o.itime ${sortdir}"; } $query .= qq| ORDER by | . $sortorder; @@ -511,7 +532,7 @@ sub save { CVar->get_non_editable_ic_cvars(form => $form, dbh => $dbh, - row => $i, + row => $i, sub_module => 'orderitems', may_converted_from => ['orderitems', 'invoice']); @@ -889,8 +910,8 @@ sub retrieve { o.closed, o.reqdate, o.quonumber, o.department_id, o.cusordnumber, d.description AS department, o.payment_id, o.language_id, o.taxzone_id, o.delivery_customer_id, o.delivery_vendor_id, o.proforma, o.shipto_id, - o.globalproject_id, o.delivered, o.transaction_description, o.delivery_term_id - , o.order_probability, o.expected_billing_date + o.globalproject_id, o.delivered, o.transaction_description, o.delivery_term_id, + o.itime::DATE AS insertdate, o.order_probability, o.expected_billing_date FROM oe o JOIN ${vc} cv ON (o.${vc}_id = cv.id) LEFT JOIN employee e ON (o.employee_id = e.id) @@ -1408,7 +1429,7 @@ sub order_details { CVar->get_non_editable_ic_cvars(form => $form, dbh => $dbh, - row => $i, + row => $i, sub_module => 'orderitems', may_converted_from => ['orderitems', 'invoice']);