pipekit/config/modules/stkt.sql
2026-09-04 09:25:44 -04:00

49 lines
1.6 KiB
SQL

SELECT
RTRIM(BYPART) AS bypart,
RTRIM(BYLOT) AS bylot,
RTRIM(BYSTOK) AS bystok,
RTRIM(BYACTN) AS byactn,
BYQTY AS byqty,
CASE WHEN BYTDAT IN (DATE('0001-01-01'), DATE('9999-12-31')) THEN NULL ELSE BYTDAT END AS bytdat,
RTRIM(BYJREF) AS byjref,
RTRIM(BYIREF) AS byiref,
RTRIM(BYLREF) AS bylref,
RTRIM(BYPREF) AS bypref,
RTRIM(BYTRST) AS bytrst,
BYTRAN AS bytran,
RTRIM(BYSRC) AS bysrc,
RTRIM(BYREAS) AS byreas,
RTRIM(BYDREF) AS bydref,
"BYSEQ#" AS "byseq#",
RTRIM(BYBUNT) AS bybunt,
BYTQTY AS bytqty,
RTRIM(BYTUNT) AS bytunt,
RTRIM(BYA1) AS bya1,
BYPGQT AS bypgqt,
BYPSQT AS bypsqt,
CASE WHEN BYSDAT IN (DATE('0001-01-01'), DATE('9999-12-31')) THEN NULL ELSE BYSDAT END AS bysdat,
BYSTIM AS bystim,
RTRIM(BYUSER) AS byuser,
BYFSYY AS byfsyy,
BYFSPR AS byfspr,
RTRIM(BYPLNT) AS byplnt,
RTRIM(BYTAG) AS bytag,
RTRIM(BYBDEP) AS bybdep,
RTRIM(BYRPNT) AS byrpnt,
RTRIM(BYTMZN) AS bytmzn,
RTRIM(BYREFF) AS byreff,
RTRIM(BYFUT1A) AS byfut1a,
RTRIM(BYFUT2A) AS byfut2a,
RTRIM(BYFUT3A) AS byfut3a,
RTRIM(BYFUT4A) AS byfut4a,
RTRIM(BYFUT5A) AS byfut5a,
RTRIM(BYFUT6A) AS byfut6a,
BYFUT1N AS byfut1n,
BYFUT2N AS byfut2n,
BYFUT3N AS byfut3n
FROM LGDAT.STKT
WHERE BYFSYY BETWEEN 2000 AND 2030 -- drop corrupt out-of-range fiscal years
AND (BYFSYY > {stkt_period} / 100 -- split YYYYPP so the predicate stays
OR (BYFSYY = {stkt_period} / 100 -- sargable against STKTX10, whose
AND BYFSPR >= MOD({stkt_period}, 100))) -- leading key is FiscalYearPd