Fix percent change calculation for price adjustment.

I shouldn't be coding on zero hours sleep!
This commit is contained in:
PhilRunninger 2023-05-17 10:04:46 -04:00
parent 47d1baffc5
commit 0d83f19e33
3 changed files with 3 additions and 3 deletions

View File

@ -409,7 +409,7 @@ WHERE
WHEN (SELECT coalesce(sum(value_loc),0) FROM volume) = 0 -- Get a per-unit pincr value WHEN (SELECT coalesce(sum(value_loc),0) FROM volume) = 0 -- Get a per-unit pincr value
THEN (SELECT pincr::numeric FROM target) / (SELECT sum(units) FROM volume) THEN (SELECT pincr::numeric FROM target) / (SELECT sum(units) FROM volume)
ELSE -- Find percent change for existing value_loc ELSE -- Find percent change for existing value_loc
(SELECT pincr::numeric FROM target) / (SELECT nullif(sum(value_loc * r_rate),0) FROM volume) - 1 (SELECT pincr::numeric FROM target) / (SELECT nullif(sum(value_loc * r_rate),0) FROM volume)
END factor END factor
) )
-- select * from pscale -- select * from pscale

View File

@ -113,7 +113,7 @@ target AS (select target_increment incr)
WHEN (SELECT coalesce(sum(value_loc),0) FROM basemix) = 0 -- Get a per-unit incr value WHEN (SELECT coalesce(sum(value_loc),0) FROM basemix) = 0 -- Get a per-unit incr value
THEN (SELECT incr::numeric FROM target) / (SELECT sum(units) FROM basemix) THEN (SELECT incr::numeric FROM target) / (SELECT sum(units) FROM basemix)
ELSE -- Find percent change for existing value_loc ELSE -- Find percent change for existing value_loc
(SELECT incr::numeric FROM target) / (SELECT nullif(sum(value_loc * r_rate),0) FROM basemix) - 1 (SELECT incr::numeric FROM target) / (SELECT nullif(sum(value_loc * r_rate),0) FROM basemix)
END factor END factor
) )
-- select * from scale -- select * from scale

View File

@ -246,7 +246,7 @@ FROM
WHEN (SELECT coalesce(sum(value_loc),0) FROM volume) = 0 -- Get a per-unit pincr value WHEN (SELECT coalesce(sum(value_loc),0) FROM volume) = 0 -- Get a per-unit pincr value
THEN (SELECT pincr::numeric FROM target) / (SELECT sum(units) FROM volume) THEN (SELECT pincr::numeric FROM target) / (SELECT sum(units) FROM volume)
ELSE -- Find percent change for existing value_loc ELSE -- Find percent change for existing value_loc
(SELECT pincr::numeric FROM target) / (SELECT nullif(sum(value_loc * r_rate),0) FROM volume) - 1 (SELECT pincr::numeric FROM target) / (SELECT nullif(sum(value_loc * r_rate),0) FROM volume)
END factor END factor
) )
-- select * from pscale -- select * from pscale