-sub retrieve_item {
- $main::lxdebug->enter_sub();
-
- my ($self, $myconfig, $form) = @_;
- my $i = $form->{rowcount};
- my $where = "NOT p.obsolete = '1'";
-
- if ($form->{"partnumber_$i"}) {
- my $partnumber = $form->like(lc $form->{"partnumber_$i"});
- $where .= " AND lower(p.partnumber) LIKE '$partnumber'";
- }
- if ($form->{"description_$i"}) {
- my $description = $form->like(lc $form->{"description_$i"});
- $where .= " AND lower(p.description) LIKE '$description'";
- }
-
- if ($form->{"partsgroup_$i"}) {
- my $partsgroup = $form->like(lc $form->{"partsgroup_$i"});
- $where .= " AND lower(pg.partsgroup) LIKE '$partsgroup'";
- }
-
- if ($form->{"description_$i"}) {
- $where .= " ORDER BY description";
- } else {
- $where .= " ORDER BY partnumber";
- }
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
- p.listprice,
- c1.accno AS inventory_accno,
- c2.accno AS income_accno,
- c3.accno AS expense_accno,
- p.unit, p.assembly, p.bin, p.onhand, p.notes AS partnotes,
- pg.partsgroup
- FROM parts p
- LEFT JOIN chart c1 ON (p.inventory_accno_id = c1.id)
- LEFT JOIN chart c2 ON (p.income_accno_id = c2.id)
- LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id)
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- WHERE $where|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- #while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- # get tax rates and description
- #$accno_id = ($form->{vc} eq "customer") ? $ref->{income_accno} : $ref->{inventory_accno};
- #$query = qq|SELECT c.accno, c.description, t.rate, t.taxnumber
- # FROM chart c, tax t
- # WHERE c.id=t.chart_id AND t.taxkey in (SELECT taxkey_id from chart where accno = '$accno_id')
- # ORDER BY accno|;
- # $stw = $dbh->prepare($query);
- #$stw->execute || $form->dberror($query);
-
- #$ref->{taxaccounts} = "";
- #while ($ptr = $stw->fetchrow_hashref(NAME_lc)) {
-
- # $form->{"$ptr->{accno}_rate"} = $ptr->{rate};
- # $form->{"$ptr->{accno}_description"} = $ptr->{description};
- # $form->{"$ptr->{accno}_taxnumber"} = $ptr->{taxnumber};
- # $form->{taxaccounts} .= "$ptr->{accno} ";
- # $ref->{taxaccounts} .= "$ptr->{accno} ";
-
- #}
-
- #$stw->finish;
- #chop $ref->{taxaccounts};
-
- push @{ $form->{item_list} }, $ref;
-
- #}
- $sth->finish;
- $dbh->disconnect;
-
- $main::lxdebug->leave_sub();
-}
-