Revision 5074cc50
Von Moritz Bunkus vor etwa 13 Jahren hinzugefügt
SL/IS.pm | ||
---|---|---|
1261 | 1261 |
|
1262 | 1262 |
# all invoice entries of an example part: |
1263 | 1263 |
|
1264 |
# id | trans_id | base_qty | allocated | sellprice | inventory_accno | income_accno | expense_accno
|
|
1264 |
# id | trans_id | base_qty | allocated | sellprice | inventory_accno | income_accno | expense_accno |
|
1265 | 1265 |
# ---+----------+----------+-----------+-----------+-----------------+--------------+--------------- |
1266 | 1266 |
# 4 | 4 | -5 | 5 | 20.00000 | 1140 | 4400 | 5400 bought 5 for 20 |
1267 | 1267 |
# 5 | 5 | 4 | -4 | 50.00000 | 1140 | 4400 | 5400 sold 4 for 50 |
... | ... | |
1771 | 1771 |
push @values, $form->{"partnumber_$i"}; |
1772 | 1772 |
} |
1773 | 1773 |
|
1774 |
# Search for part ID overrides all other criteria. |
|
1774 | 1775 |
if ($form->{"id_${i}"}) { |
1775 |
$where .= qq| AND p.id = ?|;
|
|
1776 |
push @values, $form->{"id_${i}"};
|
|
1776 |
$where = qq|p.id = ?|;
|
|
1777 |
@values = ($form->{"id_${i}"});
|
|
1777 | 1778 |
} |
1778 | 1779 |
|
1779 | 1780 |
if ($form->{"description_$i"}) { |
Auch abrufbar als: Unified diff
Artikelauswahl gefixt: das Ausgewählte nehmen, nicht den ersten Treffer
Hintergrund: Suche in SL/IS.pm hat (sehr außergewöhnlich) ein
Suchkriterium nach EAN mit "OR" verknüpft. Dadurch, dass die Suche
nach ID schlicht ans Ende mit "AND" gestellt wurde, ergab sich grob
"(NOT OBSOLETE) OR (ean = ? AND id = ?)", wodurch wieder mehr als ein
Treffer gefunden wurde.
Bug wurde in Revision cb253140 eingebaut.