commit: 2025-08-08 17:36:58
This commit is contained in:
parent
68921d9a7f
commit
10ca238010
@ -1,10 +1,10 @@
|
|||||||
|
|
||||||
EXEC pricing.single_price_call
|
EXEC pricing.single_price_call
|
||||||
@bill = 'GRIF0001',
|
@bill = 'FARM0001',
|
||||||
@ship = 'GRIF0001',
|
@ship = 'KEYB0001',
|
||||||
@part = 'XNS0T1G3G18B096',
|
@part = 'HZP3E100E21D050',
|
||||||
@v1ds = 'v1:B.L.PLT..',
|
@v1ds = 'v1:T..PLT..',
|
||||||
@vol = 9600;
|
@vol = 50000;
|
||||||
|
|
||||||
|
|
||||||
SELECT
|
SELECT
|
||||||
@ -50,7 +50,7 @@ WHERE
|
|||||||
|
|
||||||
SELECT
|
SELECT
|
||||||
*
|
*
|
||||||
FROM pricing.single_price_call(
|
FROM pricequote.single_price_call(
|
||||||
'GRIF0001',
|
'GRIF0001',
|
||||||
'GRIF0001',
|
'GRIF0001',
|
||||||
'XNS0T1G3G18B096',
|
'XNS0T1G3G18B096',
|
||||||
|
@ -1,9 +1,12 @@
|
|||||||
SELECT
|
SELECT
|
||||||
*
|
*
|
||||||
FROM pricequote.single_price_call(
|
FROM pricequote.single_price_call(
|
||||||
'GRIF0001',
|
'FARM0001',
|
||||||
'GRIF0001',
|
'KEYB0001',
|
||||||
'XNS0T1G3G18B096',
|
'HZP3E100E21D050',
|
||||||
'v1:B..PLT..',
|
'v1:L..BDL..',
|
||||||
9600
|
50000
|
||||||
) f
|
) f
|
||||||
|
|
||||||
|
SELECT * FROM pricequote.target_prices tp WHERE tp.stlc = 'HZP3E100' AND ds = 'v1:T..PLT..' and chan = 'DRP' and tier = '1' and vol @> 1;
|
||||||
|
|
||||||
|
@ -466,7 +466,7 @@ BEGIN
|
|||||||
RTRIM(SUBSTRING(value,1,18)) AS label,
|
RTRIM(SUBSTRING(value,1,18)) AS label,
|
||||||
TRY_CAST(SUBSTRING(value,23,7) AS NUMERIC(20,5))
|
TRY_CAST(SUBSTRING(value,23,7) AS NUMERIC(20,5))
|
||||||
+ CASE SUBSTRING(value,19,1) WHEN '+' THEN 0 ELSE -1 END AS value,
|
+ CASE SUBSTRING(value,19,1) WHEN '+' THEN 0 ELSE -1 END AS value,
|
||||||
CASE SUBSTRING(value,19,1) WHEN '+' THEN 'currency' ELSE 'Percentage' END AS type,
|
CASE SUBSTRING(value,19,1) WHEN '+' THEN 'currency' ELSE 'Percent' END AS type,
|
||||||
CASE SUBSTRING(value,19,1) WHEN '+' THEN 'Price' ELSE 'Premium' END AS note
|
CASE SUBSTRING(value,19,1) WHEN '+' THEN 'Price' ELSE 'Premium' END AS note
|
||||||
FROM OPENJSON(q.expl, '$.target_math')
|
FROM OPENJSON(q.expl, '$.target_math')
|
||||||
WITH (value NVARCHAR(MAX) '$')
|
WITH (value NVARCHAR(MAX) '$')
|
||||||
@ -497,5 +497,5 @@ BEGIN
|
|||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
-- Final: Return all calculated fields and JSON payloads.
|
-- Final: Return all calculated fields and JSON payloads.
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
SELECT * FROM @queue;
|
SELECT guidance_price, ui_json FROM @queue;
|
||||||
END;
|
END;
|
@ -93,6 +93,8 @@ RETURNS TABLE (
|
|||||||
) AS $$
|
) AS $$
|
||||||
DECLARE
|
DECLARE
|
||||||
_pltq NUMERIC;
|
_pltq NUMERIC;
|
||||||
|
_calculated_pallets INT;
|
||||||
|
_exact_pallets NUMERIC;
|
||||||
_chan TEXT;
|
_chan TEXT;
|
||||||
_tier TEXT;
|
_tier TEXT;
|
||||||
_cust TEXT;
|
_cust TEXT;
|
||||||
@ -173,8 +175,11 @@ BEGIN
|
|||||||
i.v1ds,
|
i.v1ds,
|
||||||
CASE substring(_v1ds,4,1) WHEN 'B' THEN 'B' ELSE 'C' END || CASE substring(_v1ds,6,1) WHEN 'L' THEN 'L' WHEN 'P' THEN 'P' ELSE '' END,
|
CASE substring(_v1ds,4,1) WHEN 'B' THEN 'B' ELSE 'C' END || CASE substring(_v1ds,6,1) WHEN 'L' THEN 'L' WHEN 'P' THEN 'P' ELSE '' END,
|
||||||
i.curstdus,
|
i.curstdus,
|
||||||
i.futstdus
|
i.futstdus,
|
||||||
INTO _pltq, _chan, _tier, _cust, _plevel, _partgroup, _stlc, _part_v1ds, _v0ds, _curstd_orig, _futstd_orig
|
FLOOR(_vol / NULLIF(_pltq, 0)),
|
||||||
|
ROUND(_vol / NULLIF(_pltq, 0), 5)
|
||||||
|
INTO
|
||||||
|
_pltq, _chan, _tier, _cust, _plevel, _partgroup, _stlc, _part_v1ds, _v0ds, _curstd_orig, _futstd_orig, _calculated_pallets, _exact_pallets
|
||||||
FROM rlarp.cust bc
|
FROM rlarp.cust bc
|
||||||
LEFT JOIN rlarp.cust sc ON sc.code = _ship
|
LEFT JOIN rlarp.cust sc ON sc.code = _ship
|
||||||
LEFT JOIN "CMS.CUSLG".itemm i ON i.item = _part
|
LEFT JOIN "CMS.CUSLG".itemm i ON i.item = _part
|
||||||
@ -185,6 +190,9 @@ BEGIN
|
|||||||
_customized := 'Customized';
|
_customized := 'Customized';
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
|
RAISE NOTICE 'Debug Inputs => stlc: "%", v1ds: "%", chan: "%", tier: "%", pallets: "%" , pltq: "%"',
|
||||||
|
_stlc, _v1ds, _chan, _tier, _calculated_pallets, _pltq;
|
||||||
|
|
||||||
------------------------------------------------------------------
|
------------------------------------------------------------------
|
||||||
-- Step 2: Target price logic (current and for last_dataseg)
|
-- Step 2: Target price logic (current and for last_dataseg)
|
||||||
------------------------------------------------------------------
|
------------------------------------------------------------------
|
||||||
@ -195,7 +203,10 @@ BEGIN
|
|||||||
AND tp.ds = _v1ds
|
AND tp.ds = _v1ds
|
||||||
AND tp.chan = _chan
|
AND tp.chan = _chan
|
||||||
AND tp.tier = _tier
|
AND tp.tier = _tier
|
||||||
AND FLOOR(_vol / NULLIF(_pltq, 0))::int <@ tp.vol;
|
AND tp.vol @> _calculated_pallets;
|
||||||
|
|
||||||
|
RAISE NOTICE 'Debug: tprice=%, tmath=%, volume_range=%',
|
||||||
|
_tprice, _tmath, _volume_range;
|
||||||
|
|
||||||
------------------------------------------------------------------
|
------------------------------------------------------------------
|
||||||
-- Step 3: Last sale/quote/volume/segment data
|
-- Step 3: Last sale/quote/volume/segment data
|
||||||
|
Loading…
Reference in New Issue
Block a user