Files
appsmith-statistics-app/pages/Operations - Unused Items/queries/unused_items/unused_items.txt
Adam Pitel ac475d683f Fix type mismatch in UnusedDays binding
NULLIF(int, '') fails when prepared statements type the parameter
as integer. Use direct cast since NUMBER input always has a value.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 16:18:58 -05:00

36 lines
1.4 KiB
Plaintext

SELECT
i.item_number AS "Item Number",
i.item_descrip1 AS "Description",
CASE i.item_type
WHEN 'P' THEN 'Purchased'
WHEN 'M' THEN 'Manufactured'
WHEN 'R' THEN 'Reference'
WHEN 'T' THEN 'Tooling'
WHEN 'O' THEN 'Outside Process'
WHEN 'B' THEN 'Breeder'
WHEN 'C' THEN 'Co-Product'
WHEN 'F' THEN 'Phantom'
ELSE i.item_type
END AS "Item Type",
CASE WHEN i.item_active THEN 'Active' ELSE 'Inactive' END AS "Status",
cc.comment_user AS "Created By",
COALESCE(i.item_created, cc.comment_date)::date AS "Date Created",
last_txn.last_transaction_date::date AS "Last Transaction",
(CURRENT_DATE - COALESCE(last_txn.last_transaction_date, i.item_created, cc.comment_date)::date) AS "Days Unused"
FROM item i
LEFT JOIN comment cc
ON cc.comment_source_id = i.item_id
AND cc.comment_source = 'I'
AND cc.comment_text = 'Created'
LEFT JOIN (
SELECT
isite.itemsite_item_id,
MAX(ih.invhist_transdate) AS last_transaction_date
FROM itemsite isite
JOIN invhist ih ON ih.invhist_itemsite_id = isite.itemsite_id
GROUP BY isite.itemsite_item_id
) last_txn ON last_txn.itemsite_item_id = i.item_id
WHERE (CURRENT_DATE - COALESCE(last_txn.last_transaction_date, i.item_created, cc.comment_date)::date)
>= '{{UnusedDays.text}}'::int
ORDER BY "Days Unused" DESC