package OE;
use SL::AM;
+use SL::DBUtils;
sub transactions {
$main::lxdebug->enter_sub();
my $query = qq|SELECT o.id, o.ordnumber, o.transdate, o.reqdate,
o.amount, ct.name, o.netamount, o.$form->{vc}_id,
ex.$rate AS exchangerate,
- o.closed, o.quonumber, o.shippingpoint, o.shipvia,
+ o.closed, o.delivered, o.quonumber, o.shippingpoint, o.shipvia,
e.name AS employee
FROM oe o
JOIN $form->{vc} ct ON (o.$form->{vc}_id = ct.id)
$query .= ($form->{open}) ? " AND o.closed = '0'" : " AND o.closed = '1'";
}
+ if (($form->{"notdelivered"} || $form->{"delivered"}) &&
+ ($form->{"notdelivered"} ne $form->{"delivered"})) {
+ $query .= $form->{"delivered"} ?
+ " AND o.delivered " : " AND NOT o.delivered";
+ }
+
my $sortorder = join ', ',
("o.id", $form->sort_columns(transdate, $ordnumber, name));
$sortorder = $form->{sort} if $form->{sort};
$form->parse_amount($myconfig, $form->{"${_}_$i"})
} qw(qty ship);
- if ($form->{"qty_$i"}) {
+ if ($form->{"id_$i"}) {
# get item baseunit
$query = qq|SELECT p.unit
intnotes = '$form->{intnotes}',
curr = '$form->{currency}',
closed = '$form->{closed}',
+ delivered = '| . ($form->{delivered} ? "t" : "f") . qq|',
proforma = '$form->{proforma}',
quotation = '$quotation',
department_id = $form->{department_id},
my ($self, $myconfig, $form) = @_;
- for my $i (1 .. $form->{rowcount}) {
-
- map {
- $form->{"${_}_$i"} =
- $form->parse_amount($myconfig, $form->{"${_}_$i"})
- } qw(qty ship);
- if ($delete_oe_id) {
- $form->{"orderitems_id_$i"} = "";
- }
-
- if ($form->{"qty_$i"}) {
-
- # set values to 0 if nothing entered
- $form->{"discount_$i"} =
- $form->parse_amount($myconfig, $form->{"discount_$i"});
-
- $form->{"sellprice_$i"} =
- $form->parse_amount($myconfig, $form->{"sellprice_$i"});
- }
- }
-
# get ids from $form
map { push @ids, $form->{"ordnumber_$_"} if $form->{"ordnumber_$_"} }
(1 .. $form->{rowcount});
$main::lxdebug->leave_sub();
}
+sub close_order {
+ $main::lxdebug->enter_sub();
+
+ my ($self, $myconfig, $form) = @_;
+
+ $main::lxdebug->leave_sub() unless ($form->{"id"});
+
+ my $dbh = $form->dbconnect($myconfig);
+ do_query($form, $dbh, qq|UPDATE oe SET closed = TRUE where id = ?|,
+ $form->{"id"});
+ $dbh->disconnect;
+
+ $main::lxdebug->leave_sub();
+}
+
sub delete {
$main::lxdebug->enter_sub();
o.curr AS currency, e.name AS employee, o.employee_id,
o.$form->{vc}_id, cv.name AS $form->{vc}, o.amount AS invtotal,
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
+ 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.delivered
FROM oe o
JOIN $form->{vc} cv ON (o.$form->{vc}_id = cv.id)
LEFT JOIN employee e ON (o.employee_id = e.id)
$sameitem = $item->[1];
map { push(@{ $form->{$_} }, "") }
- qw(runningnumber number qty ship unit bin partnotes serialnumber reqdate sellprice listprice netprice discount linetotal);
+ qw(runningnumber number qty ship unit bin partnotes
+ serialnumber reqdate sellprice listprice netprice
+ discount p_discount linetotal);
}
$form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
- if ($form->{"qty_$i"} != 0) {
+ if ($form->{"id_$i"} != 0) {
# add number, description and qty to $form->{number}, ....
while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
if ($form->{groupitems} && $ref->{partsgroup} ne $sameitem) {
map { push(@{ $form->{$_} }, "") }
- qw(runningnumber ship bin serialnumber number unit bin qty reqdate sellprice listprice netprice discount linetotal nodiscount_linetotal);
+ qw(runningnumber ship bin serialnumber number unit bin qty
+ reqdate sellprice listprice netprice discount p_discount
+ linetotal nodiscount_linetotal);
$sameitem = ($ref->{partsgroup}) ? $ref->{partsgroup} : "--";
push(@{ $form->{description} }, $sameitem);
}
. qq|, $ref->{partnumber}, $ref->{description}|);
map { push(@{ $form->{$_} }, "") }
- qw(number unit qty runningnumber ship bin serialnumber reqdate sellprice listprice netprice discount linetotal nodiscount_linetotal);
+ qw(number unit qty runningnumber ship bin serialnumber reqdate
+ sellprice listprice netprice discount p_discount linetotal
+ nodiscount_linetotal);
}
$sth->finish;