Třídová akce

Popis:
Potřeba materiálu pro operace - již existující komponenty
Kód:
7
Tělo:
SELECT 'RequiredMat', JORM.QUANTITY * JOOI.Quantity, 0,  '0000000000' AS JOC_ID 
FROM PLMJOOUTPUTITEMS JOOI1
JOIN PLMJONODES JON ON JON.ID = JOOI1.OWNER_ID
LEFT JOIN GetPLMJOChildNodes(JON.ID) NT ON 1=1
JOIN PLMJONODES JON2 ON JON2.MASTER_ID = NT.ID
JOIN PLMJOINPUTITEMS JOII ON JOII.OWNER_ID = JON2.ID
JOIN PLMJOOUTPUTITEMS JOOI ON JOOI.OWNER_ID = NT.ID
JOIN PLMJOBORDERSROUTINES JOR ON JOR.PARENT_ID = JOOI.ID
JOIN PLMJOROUTINESMAT JORM ON jorm.PARENT_ID = jor.id AND JORM.STORECARD_ID = JON2.STORECARD_ID
WHERE
 JOOI1.ID = :JOOIOID
 AND (:RoutineOID = '0000000000' OR JOR.ID = :RoutineOID)  
 AND (:TreeLevel = 0 OR NT.TREELEVEL <= :TreeLevel)
 AND JON2.StoreCard_ID = :StoreCard_ID
UNION ALL
SELECT DISTINCT 'MatInComponents',0 ,  JOC.QUANTITY,  JOC.ID AS JOC_ID --distinct umyslne, na ruznych PL muze byt duplicitni jobordersSN 
FROM PLMJOBORDERSROUTINES JOR
JOIN PLMOPERATIONS OP ON OP.JOBORDERSROUTINES_ID = JOR.ID
JOIN PLMJOBORDERSSN SN ON SN.ID = OP.JOBORDERSSN_ID
JOIN PLMJOBORDERSCOMPONENTS JOC ON JOC.PARENT_ID = SN.ID
JOIN STOREBATCHES SB ON SB.ID = JOC.COMPONENT_ID
WHERE
 ((:RoutineOID <> '0000000000') AND (JOR.ID = :RoutineOID))  
 AND SB.STORECARD_ID = :StoreCard_ID
UNION ALL
 SELECT 'MatInComponents', 0, JOC.QUANTITY, JOC.ID AS JOC_ID
 FROM PLMJOOUTPUTITEMS JOOI1 
 JOIN PLMJONODES JON ON JOOI1.OWNER_ID = JON.ID
 LEFT JOIN GetPLMJOChildNodes(JON.ID) NT ON 1=1
 JOIN PLMJONODES JON2 ON JON2.MASTER_ID = NT.ID
 JOIN PLMJOINPUTITEMS JOII ON JOII.OWNER_ID = jon2.ID
 JOIN PLMJOBORDERSCOMPONENTS JOC ON JOC.INPUTITEM_ID = JOII.ID
WHERE
 :RoutineOID = '0000000000' AND JOOI1.ID = :JOOIOID
 AND (:TreeLevel = 0 OR NT.TREELEVEL <= :TreeLevel)
 AND JON2.STORECARD_ID = :StoreCard_ID

Generated by ABRA Software a.s. 27.10.2021 16:34:49