Files
DashBoard/src/mes_dashboard/sql/query_tool/lot_holds.sql
egg 5a47bc87d8 fix(sql): remove colon prefix from SQL comments to prevent bind param errors, archive trace-progressive-ui
SQLAlchemy text() parses :param patterns in SQL comments as bind
parameters. When EventFetcher replaces the WHERE clause via string
substitution, orphaned :container_id in comments causes
"A value is required for bind parameter 'container_id'" errors.

Changes:
- Remove colon prefix from parameter names in SQL comments for
  lot_history, lot_rejects, lot_holds, lot_materials
- Archive trace-progressive-ui change (22/22 tasks complete)
- Sync delta specs to main: add trace-staged-api, progressive-trace-ux,
  merge api-safety-hygiene (+2 requirements)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 16:53:54 +08:00

35 lines
885 B
SQL

-- LOT HOLD Records Query
-- Retrieves HOLD/RELEASE history for a LOT
--
-- Parameters:
-- container_id - CONTAINERID to query (16-char hex)
--
-- Note: Uses HOLDTXNDATE/RELEASETXNDATE (NOT TXNDATETIME)
-- NULL RELEASETXNDATE means currently HOLD
SELECT
CONTAINERID,
WORKCENTERNAME,
HOLDTXNDATE,
HOLDEMP,
HOLDEMPDEPTNAME,
HOLDREASONNAME,
HOLDCOMMENTS,
RELEASETXNDATE,
RELEASEEMP,
RELEASECOMMENTS,
NCRID,
CASE
WHEN RELEASETXNDATE IS NULL THEN 'HOLD'
ELSE 'RELEASED'
END AS HOLD_STATUS,
CASE
WHEN RELEASETXNDATE IS NULL THEN
ROUND((SYSDATE - HOLDTXNDATE) * 24, 2)
ELSE
ROUND((RELEASETXNDATE - HOLDTXNDATE) * 24, 2)
END AS HOLD_HOURS
FROM DWH.DW_MES_HOLDRELEASEHISTORY
WHERE CONTAINERID = :container_id
ORDER BY HOLDTXNDATE DESC