added LSL2 stored procedures
This commit is contained in:
211
LSL2/STPROC/WO_MAT_SERVICES.txt
Normal file
211
LSL2/STPROC/WO_MAT_SERVICES.txt
Normal file
@ -0,0 +1,211 @@
|
||||
Compile function WO_MAT_Services(@Service, @Params)
|
||||
#pragma precomp SRP_PreCompiler
|
||||
|
||||
Declare function Database_Services, Error_Services, SRP_Json
|
||||
Declare subroutine Error_Services, SRP_Json
|
||||
|
||||
$insert LOGICAL
|
||||
|
||||
GoToService
|
||||
|
||||
Return Response or ""
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// SERVICES
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
Service ConvertRecordToJSON(WOMatKey, Record, ItemURL)
|
||||
jsonRecord = ''
|
||||
IF WOMatKey NE '' then
|
||||
If Record EQ '' then Record = Database_Services('ReadDataRow', 'WO_MAT', WOMatKey)
|
||||
If Error_Services('NoError') then
|
||||
@DICT = Database_Services('GetTableHandle', 'DICT.WO_MAT')
|
||||
@ID = WOMatKey
|
||||
@RECORD = Record
|
||||
If SRP_JSON(objJSON, 'New', 'Object') then
|
||||
If SRP_JSON(objWOMat, 'New', 'Object') then
|
||||
SRP_JSON(objWOMat, 'SetValue', 'KeyId', @ID)
|
||||
SRP_JSON(objWOMat, 'SetValue', 'WoNo', {WO_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'CassNo', {CASS_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'Ver', {REC_VER})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'ProdOrdNo', {PROD_ORD_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SapBatchNo', {SAP_BATCH_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SapTxDtm', OConv({SAP_TX_DTM}, 'DT'))
|
||||
SRP_JSON(objWOMat, 'SetValue', 'ReactorType', {REACTOR_TYPE})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'CustInfo', {CUST_INFO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'LotNo', {LOT_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'WaferQty', {WAFER_QTY})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'CustPartNo', {CUST_PART_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SubPartNo', {SUB_PART_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'ProdVerNo', {PROD_VER_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'ShipNo', {SHIP_NO})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'Hold', {HOLD})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'Makeup', {MAKEUP_BOX})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'HotLot', {HOT_LOT})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'Cancelled', {CANCELLED})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'Void', {VOID})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'RetReject', {RET_REJECTS})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'CassShipQty', {CASS_SHIP_QTY})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'GrQty', {SAP_GR_QTY})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SapYield', {SAP_YIELD})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SapMuQty', {SAP_MU_QTY})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SapRawScrapQty', {SAP_RAW_SCRAP_QTY})
|
||||
SRP_JSON(objWOMat, 'SetValue', 'SapScrapQty', {SAP_CONFIRM_SCRAP})
|
||||
If SRP_JSON(objInvActions, 'New', 'Array') then
|
||||
InventoryActions = {INV_DTM}
|
||||
If InventoryActions NE '' then
|
||||
for each InvAction in InventoryActions using @VM setting vPos
|
||||
//Add in each indv. inventory action
|
||||
InvTimestamp = {INV_DTM}<1, vPos>
|
||||
InvWhCd = {INV_WH}<1, vPos>
|
||||
InvWarehouse = {INV_WH_DESC}<1, vPos>
|
||||
InvLocCd = {INV_LOCATION}<1, vPos>
|
||||
InvLocation = {INV_LOC_DESC}<1, vPos>
|
||||
InvAction = {INV_ACTION}<1, vPos>
|
||||
InvUserId = {INV_USER}<1, vPos>
|
||||
InvTag = {INV_TAG}<1, vPos>
|
||||
InvToolId = {INV_TOOL_ID}<1, vPos>
|
||||
If SRP_JSON(objInvAction, 'New', 'Object') then
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvTimestamp', Oconv(InvTimeStamp, 'DT'))
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvWhCd', InvWhCd)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvWarehouse', InvWarehouse)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvLocCd', InvLocCd)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvLocation', InvLocation)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvAction', InvAction)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvUserId', InvUserId)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvTag', InvTag)
|
||||
SRP_JSON(objInvAction, 'SetValue', 'InvToolId', InvToolId)
|
||||
SRP_JSON(objInvActions, 'Add', objInvAction)
|
||||
SRP_JSON(objInvAction, 'Release')
|
||||
end
|
||||
Next InvAction
|
||||
end else
|
||||
SRP_JSON(objWOMat, 'SetValue', 'InventoryActions', '')
|
||||
end
|
||||
SRP_JSON(objWOMat, 'Set', 'InventoryActions', objInvActions)
|
||||
SRP_JSON(objInvActions, 'Release')
|
||||
end
|
||||
If SRP_JSON(objSlots, 'New', 'Array') then
|
||||
SlotCount = 25
|
||||
for Slot = 1 to SlotCount
|
||||
SlotNo = Slot
|
||||
WaferId = {SLOT_WAFER_ID}<1, Slot>
|
||||
NcrId = {SLOT_NCR}<1, Slot>
|
||||
MetNo = {SLOT_MET_NO}<1, Slot>
|
||||
MovedToSlot = {SLOT_MOVED_TO}<1, Slot>
|
||||
MuWaferId = {SLOT_REP_WAFER_ID}<1, Slot>
|
||||
MovedFromSlot = {SLOT_MOVED_FROM}<1, Slot>
|
||||
If SRP_JSON(objSlot, 'New', 'Object') then
|
||||
SRP_JSON(objSlot, 'SetValue', 'SlotNo', SlotNo)
|
||||
SRP_JSON(objSlot, 'SetValue', 'WaferId', WaferId)
|
||||
SRP_JSON(objSlot, 'SetValue', 'NcrId', NcrId)
|
||||
SRP_JSON(objSlot, 'SetValue', 'MetNo', MetNo)
|
||||
SRP_JSON(objSlot, 'SetValue', 'MovedToSlot', MovedToSlot)
|
||||
SRP_JSON(objSlot, 'SetValue', 'MuWaferId', MuWaferId)
|
||||
SRP_JSON(objSlot, 'SetValue', 'MovedFromSlot', MovedFromSlot)
|
||||
SRP_JSON(objSlots, 'Add', objSlot)
|
||||
SRP_JSON(objSlot, 'Release')
|
||||
end
|
||||
Next Slot
|
||||
SRP_JSON(objWOMat, 'Set', 'Slots', objSlots)
|
||||
SRP_JSON(objSlots, 'Release')
|
||||
end
|
||||
If SRP_JSON(objNCRs, 'New', 'Array') then
|
||||
NCRs = {NCR_KEYS}
|
||||
if DCount(NCRs, @VM) GT 0 then
|
||||
for each NCRKey in NCRs setting nPos
|
||||
NcrId = NCRKey
|
||||
NcrStatus = {NCR_STATUS}<1, nPos>
|
||||
NcrQty = {NCR_REJ_CNT}<1, nPos>
|
||||
NcrResp = {NCR_LOSS_BY}<1, nPos>
|
||||
NcrStage = {NCR_LOSS_STAGE}<1, nPos>
|
||||
NcrLossDesc = {NCR_LOSS_DESC}<1, nPos>
|
||||
NcrLossComment = {NCR_LOSS_COMMENT}<1, nPos>
|
||||
If SRP_JSON(objNCR, 'New', 'Object') then
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrId', NcrId)
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrStatus', NcrStatus)
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrQty', NcrQty)
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrResp', NcrResp)
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrStage', NcrStage)
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrLossDesc', NcrLossDesc)
|
||||
SRP_JSON(objNCR, 'SetValue', 'NcrLossComment', NcrLossComment)
|
||||
SRP_JSON(objNCRs, 'Add', objNCR)
|
||||
SRP_JSON(objNCR, 'Release')
|
||||
end
|
||||
Next NCRKey
|
||||
|
||||
|
||||
SRP_JSON(objWOMat, 'Set', 'NCRs', objNCRs)
|
||||
SRP_JSON(objNCRs, 'Release')
|
||||
end else
|
||||
SRP_JSON(objWOMat, 'SetValue', 'NCRs', '')
|
||||
end
|
||||
If SRP_JSON(objHolds, 'New', 'Array') then
|
||||
HoldDtms = {HOLD_START_DTM}
|
||||
if DCount(HoldDtms, @VM) GT 0 then
|
||||
for each HoldDtm in HoldDtms setting hPos
|
||||
OnHoldDtm = OConv(HoldDtm, 'DT')
|
||||
HoldUser = {HOLD_START_USER}<1, hPos>
|
||||
OnHoldReason = {HOLD_START_REASON}<1, hPos>
|
||||
OffHoldDtm = {HOLD_STOP_DTM}<1, hPos>
|
||||
OffHoldUser = {HOLD_STOP_USER}<1, hPos>
|
||||
OffHoldReason = {HOLD_STOP_REASON}<1, hPos>
|
||||
HoldEntity = {HOLD_ENTITY}<1, hPos>
|
||||
HoldEntityId = {HOLD_ENTITY_ID}<1, hPos>
|
||||
If SRP_JSON(objHold, 'New', 'Object') then
|
||||
SRP_JSON(objHold, 'SetValue', 'OnHoldDtm', OnHoldDtm)
|
||||
SRP_JSON(objHold, 'SetValue', 'HoldUser', HoldUser)
|
||||
SRP_JSON(objHold, 'SetValue', 'OnHoldReason', OnHoldReason)
|
||||
SRP_JSON(objHold, 'SetValue', 'OffHoldDtm', OffHoldDtm)
|
||||
SRP_JSON(objHold, 'SetValue', 'OffHoldUser', OffHoldUser)
|
||||
SRP_JSON(objHold, 'SetValue', 'OffHoldReason', OffHoldReason)
|
||||
SRP_JSON(objHold, 'SetValue', 'HoldEntity', HoldEntity)
|
||||
SRP_JSON(objHold, 'SetValue', 'HoldEntityId', HoldEntityId)
|
||||
SRP_JSON(objHolds, 'Add', objHold)
|
||||
SRP_JSON(objHold, 'Release')
|
||||
end
|
||||
Next HoldDtm
|
||||
|
||||
|
||||
SRP_JSON(objWOMat, 'Set', 'Holds', objHolds)
|
||||
SRP_JSON(objHolds, 'Release')
|
||||
end else
|
||||
SRP_JSON(objWOMat, 'SetValue', 'Holds', '')
|
||||
end
|
||||
end
|
||||
SRP_JSON(objJSON, 'Set', 'WO_Mat', objWOMat)
|
||||
SRP_JSON(objWOMat, 'Release')
|
||||
end
|
||||
end
|
||||
If itemURL NE '' then
|
||||
// The itemURL was passed in so add HAL+JSON properties.
|
||||
|
||||
// Create the _links property and then all link objects needed for this resource.
|
||||
If SRP_JSON(objLinks, 'New', 'Object') then
|
||||
// Create a self link.
|
||||
If SRP_JSON(objLink, 'New', 'Object') then
|
||||
SRP_JSON(objLink, 'SetValue', 'href', ItemURL, 'String')
|
||||
SRP_JSON(objLink, 'SetValue', 'title', 'Self', 'String')
|
||||
SRP_JSON(objLinks, 'Set', 'self', objLink)
|
||||
SRP_JSON(objLink, 'Release')
|
||||
end
|
||||
SRP_JSON(objJSON, 'Set', '_links', objLinks)
|
||||
SRP_JSON(objLinks, 'Release')
|
||||
end
|
||||
|
||||
// Create the _class property for this resource.
|
||||
SRP_JSON(objJSON, 'SetValue', '_class', 'resource')
|
||||
end
|
||||
jsonRecord = SRP_JSON(objJSON, 'Stringify', 'Styled')
|
||||
SRP_JSON(objJSON, 'Release')
|
||||
end else
|
||||
Error_Services('Add', 'Unable to create JSON representation in the ' : Service : ' service.')
|
||||
end
|
||||
end
|
||||
end else
|
||||
Error_Services('Add', 'KeyID argument was missing in the ' : Service : ' service.')
|
||||
end
|
||||
Response = jsonRecord
|
||||
|
||||
End Service
|
||||
|
Reference in New Issue
Block a user