Skip to content

Commit

Permalink
Merge pull request ledgersmb#494 from einhverfr/1.3
Browse files Browse the repository at this point in the history
Fixing bug 1260
  • Loading branch information
einhverfr committed Oct 25, 2014
2 parents 623f969 + 1238424 commit b738f7d
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 7 deletions.
1 change: 1 addition & 0 deletions Changelog
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Changelog for 1.3.46
* Fixed related bug to 1259 on invoices (Chris T)
* Some log quieting fixes. (Chris T)
* Fixed bug 1262, cannot post overpayment with formatted numbers (Chris T)
* Fixed bug 1260, Multiple vendor skus breaks display of invoice (Chris T)

Chris T is Chris Travers
Pongracz I is Pongracz Istvan
Expand Down
13 changes: 6 additions & 7 deletions LedgerSMB/IR.pm
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,8 @@ sub post_invoice {
project_id = ?,
serialnumber = ?,
precision = ?,
notes = ?
notes = ?,
vendor_sku = ?
WHERE id = ?|;
$sth = $dbh->prepare($query);
$sth->execute(
Expand All @@ -336,7 +337,8 @@ sub post_invoice {
$form->{"discount_$i"}, $allocated,
$form->{"unit_$i"}, $form->{"deliverydate_$i"},
$project_id, $form->{"serialnumber_$i"},
$form->{"precision_$i"}, $form->{"notes_$i"},
$form->{"precision_$i"}, $form->{"notes_$i"},
$form->{"partnumber_$i"},
$invoice_id
) || $form->dberror($query);

Expand Down Expand Up @@ -1257,9 +1259,8 @@ sub retrieve_invoice {
# retrieve individual items
$query = qq|
SELECT i.id as invoice_id,
coalesce(
CASE WHEN pv.partnumber <> '' THEN pv.partnumber
ELSE NULL END, p.partnumber) as partnumber,
coalesce(i.vendor_sku, p.partnumber)
as partnumber,
i.description, i.qty,
i.fxsellprice, i.sellprice, i.precision,
i.parts_id AS id, i.unit, p.bin,
Expand All @@ -1274,8 +1275,6 @@ sub retrieve_invoice {
FROM invoice i
JOIN parts p ON (i.parts_id = p.id)
LEFT JOIN project pr ON (i.project_id = pr.id)
LEFT JOIN partsvendor pv ON (p.id = pv.parts_id
AND pv.credit_id = ?)
LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
LEFT JOIN translation t
ON (t.trans_id = p.partsgroup_id
Expand Down
1 change: 1 addition & 0 deletions sql/Pg-database.sql
Original file line number Diff line number Diff line change
Expand Up @@ -1214,6 +1214,7 @@ CREATE TABLE invoice (
project_id int,
deliverydate date,
serialnumber text,
vendor_sku text,
notes text
);

Expand Down
13 changes: 13 additions & 0 deletions sql/modules/Fixes.sql
Original file line number Diff line number Diff line change
Expand Up @@ -699,3 +699,16 @@ ALTER TABLE BATCH ADD FOREIGN KEY (locked_by) references session (session_id)
ON DELETE SET NULL;

COMMIT;

BEGIN;
ALTER TABLE invoice ADD vendor_sku text;
UPDATE invoice SET vendor_sku = (select min(partnumber) from partsvendor
where parts_id = invoice.parts_id
AND credit_id = (
select entity_credit_account
from ap
where ap.id = invoice.trans_id
)
)
WHERE trans_id in (select id from ap);
COMMIT;

0 comments on commit b738f7d

Please sign in to comment.