X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FIC.pm;h=ad17036509d04c4965a6075938f228688e2a61ea;hb=1e7d8e31721d592284644da88b3f03ccce98d10c;hp=d5b0f53660691f47c6fe5ea9a70fd71e98e5737a;hpb=09b1977863d7e9e323ff960ef520b48644888d63;p=kivitendo-erp.git diff --git a/SL/IC.pm b/SL/IC.pm index d5b0f5366..ad1703650 100644 --- a/SL/IC.pm +++ b/SL/IC.pm @@ -167,14 +167,17 @@ sub get_part { # get makes if ($form->{makemodel}) { - $query = qq|SELECT m.make, m.model FROM makemodel m | . - qq|WHERE m.parts_id = ?|; + #hli + $query = qq|SELECT m.make, m.model,m.lastcost,m.lastcost,m.lastupdate,m.sortorder FROM makemodel m | . + qq|WHERE m.parts_id = ? order by m.sortorder asc|; my @values = ($form->{id}); $sth = $dbh->prepare($query); $sth->execute(@values) || $form->dberror("$query (" . join(', ', @values) . ")"); my $i = 1; - while (($form->{"make_$i"}, $form->{"model_$i"}) = $sth->fetchrow_array) + + while (($form->{"make_$i"}, $form->{"model_$i"}, $form->{"old_lastcost_$i"}, + $form->{"lastcost_$i"}, $form->{"lastupdate_$i"}, $form->{"sortorder_$i"}) = $sth->fetchrow_array) { $i++; } @@ -493,12 +496,25 @@ sub save { # insert makemodel records unless ($form->{item} eq 'service') { + my $lastupdate = ''; + my $value = 0; for my $i (1 .. $form->{makemodel_rows}) { if (($form->{"make_$i"}) || ($form->{"model_$i"})) { - - $query = qq|INSERT INTO makemodel (parts_id, make, model) | . - qq|VALUES (?, ?, ?)|; - @values = (conv_i($form->{id}), conv_i($form->{"make_$i"}), $form->{"model_$i"}); + #hli + $value = $form->parse_amount($myconfig, $form->{"lastcost_$i"}); + if ($value == $form->{"old_lastcost_$i"}) + { + if ($form->{"lastupdate_$i"} eq "") { + $lastupdate = 'now()'; + } else { + $lastupdate = $dbh->quote($form->{"lastupdate_$i"}); + } + } else { + $lastupdate = 'now()'; + } + $query = qq|INSERT INTO makemodel (parts_id, make, model, lastcost, lastupdate, sortorder) | . + qq|VALUES (?, ?, ?, ?, ?, ?)|; + @values = (conv_i($form->{id}), conv_i($form->{"make_$i"}), $form->{"model_$i"}, $value, $lastupdate, conv_i($form->{"sortorder_$i"}) ); do_query($form, $dbh, $query, @values); } @@ -818,7 +834,7 @@ sub all_parts { ordnumber => 'apoe.', make => 'mm.', quonumber => 'apoe.', model => 'mm.', invnumber => 'apoe.', partsgroup => 'pg.', - lastcost => ' ', , soldtotal => ' ', + lastcost => 'p.', , soldtotal => ' ', factor => 'pfac.', 'SUM(ioi.qty)' => ' ', description => 'p.', @@ -1633,7 +1649,7 @@ sub prepare_parts_for_printing { my $placeholders = join ', ', ('?') x scalar(@part_ids); my $query = qq|SELECT mm.parts_id, mm.model, v.name AS make FROM makemodel mm - LEFT JOIN vendor v ON (mm.make = cast (v.id as text)) + LEFT JOIN vendor v ON (mm.make = v.id) WHERE mm.parts_id IN ($placeholders)|; my %makemodel = ();