updated WO_MAT_ACTIONS to block write operations if certain fields are cleared
This commit is contained in:
committed by
Stieber Daniel (CSC FI SPS MESLEO)
parent
d570e3cfef
commit
3becd9cf4d
@ -269,26 +269,73 @@ WRITE_RECORD_PRE:
|
||||
WOMatKeyID = Name
|
||||
OrigRDSNo = OrigRecord<WO_MAT_RDS_NO$>
|
||||
NewRDSNo = Record<WO_MAT_RDS_NO$>
|
||||
OrigLotNo = OrigRecord<WO_MAT_LOT_NO$>
|
||||
NewLotNo = Record<WO_MAT_LOT_NO$>
|
||||
OrigWfrQty = OrigRecord<WO_MAT_WAFER_QTY$>
|
||||
NewWfrQty = Record<WO_MAT_WAFER_QTY$>
|
||||
OrigCustPartNo = OrigRecord<WO_MAT_CUST_PART_NO$>
|
||||
NewCustPartNo = Record<WO_MAT_CUST_PART_NO$>
|
||||
OrigSubPartNo = OrigRecord<WO_MAT_SUB_PART_NO$>
|
||||
NewSubPartNo = Record<WO_MAT_SUB_PART_NO$>
|
||||
OrigInvActions = OrigRecord<WO_MAT_INV_ACTION$>
|
||||
OrigNumActions = DCount(OrigInvActions, @VM)
|
||||
NewInvActions = Record<WO_MAT_INV_ACTION$>
|
||||
NewNumActions = DCount(NewInvActions, @VM)
|
||||
OrigSlotNos = OrigRecord<WO_MAT_SLOT_NO$>
|
||||
OrigNumSlotNos = DCount(OrigSlotNos, @VM)
|
||||
NewSlotNos = Record<WO_MAT_SLOT_NO$>
|
||||
NewNumSlotNos = DCount(NewSlotNos, @VM)
|
||||
OrigRxDtm = OrigRecord<WO_MAT_RX_DTM$>
|
||||
NewRxDtm = Record<WO_MAT_RX_DTM$>
|
||||
OrigRxBy = OrigRecord<WO_MAT_RX_BY$>
|
||||
NewRxBy = Record<WO_MAT_RX_BY$>
|
||||
OrigRelDtm = OrigRecord<WO_MAT_REL_DTM$>
|
||||
NewRelDtm = Record<WO_MAT_REL_DTM$>
|
||||
OrigRelBy = OrigRecord<WO_MAT_REL_BY$>
|
||||
NewRelBy = Record<WO_MAT_REL_BY$>
|
||||
OrigSubVendCd = OrigRecord<WO_MAT_SUB_VEND_CD$>
|
||||
NewSubVendCd = Record<WO_MAT_SUB_VEND_CD$>
|
||||
OrigCassShipQty = OrigRecord<WO_MAT_CASS_SHIP_QTY$>
|
||||
NewCassShipQty = Record<WO_MAT_CASS_SHIP_QTY$>
|
||||
OrigShipShort = OrigRecord<WO_MAT_SHIP_SHORT$>
|
||||
NewShipShort = Record<WO_MAT_SHIP_SHORT$>
|
||||
OrigMuWaferFlag = OrigRecord<WO_MAT_MU_WAFER_FLAG$>
|
||||
NewMuWaferFlag = Record<WO_MAT_MU_WAFER_FLAG$>
|
||||
|
||||
If OrigRDSNo NE '' and NewRDSNo EQ '' and Not(MemberOf(@User4, 'OI_ADMIN')) then
|
||||
If ( ( (OrigRDSNo NE '') and (NewRDSNo EQ '') ) or ( (OrigLotNo NE '') and (NewLotNo EQ '') ) |
|
||||
or ( (OrigWfrQty NE '') and (NewWfrQty EQ '') ) or ( (OrigCustPartNo NE '') and (NewCustPartNo EQ '') ) |
|
||||
or ( (OrigSubPartNo NE '') and (NewSubPartNo EQ '') ) or (OrigNumActions GT NewNumActions) |
|
||||
or (OrigNumSlotNos GT NewNumSlotNos) or ( (OrigRxDtm NE '') and (NewRxDtm EQ '') ) |
|
||||
or ( (OrigRxBy NE '') and (NewRxBy EQ '') ) or ( (OrigRelDtm NE '') and (NewRelDtm EQ '') ) |
|
||||
or ( (OrigRelBy NE '') and (NewRelBy EQ '') ) or ( (OrigSubVendCd NE '') and (NewSubVendCd EQ '') ) |
|
||||
or ( (OrigCassShipQty NE '') and (NewCassShipQty EQ '') ) or ( (OrigShipShort NE '') and (NewShipShort EQ '') ) |
|
||||
or ( (OrigMuWaferFlag NE '') and (NewMuWaferFlag EQ '') ) ) then
|
||||
|
||||
Stack = Error_Services('GetStackTrace')
|
||||
Recipients = ''
|
||||
SentFrom = 'SYSTEM'
|
||||
Subject = 'WO_MAT_ACTIONS WRITE_PRE Blocked'
|
||||
Message = OConv(Datetime(), 'DT2/^H')
|
||||
Message<2> = 'Computer: ':@Station
|
||||
Message<3> = 'User: ':@User4
|
||||
Message<4> = 'WO_MAT key: ':Name
|
||||
Message<5> = 'Message: Write operation failed due to readonly field being cleared.'
|
||||
Message<6> = Stack
|
||||
Swap @FM with \0D0A\ in Message
|
||||
Swap @VM with ',' in Message
|
||||
AttachWindow = 'WO_MAT'
|
||||
AttachKey = Name
|
||||
SendToGroup = 'OI_SYSADMIN'
|
||||
|
||||
Parms = Recipients:@RM:SentFrom:@RM:Subject:@RM:Message:@RM:AttachWindow:@RM:AttachKey:@RM:SendToGroup
|
||||
obj_Notes('Create',Parms)
|
||||
|
||||
OrigFileError = 104:': Write operation failed due to readonly field being cleared.'
|
||||
Status = 0
|
||||
Record = ''
|
||||
ActionFlow = ACTION_STOP$
|
||||
|
||||
Record<WO_MAT_RDS_NO$> = OrigRDSNo
|
||||
SaveRecord = Record
|
||||
LogData = ''
|
||||
LogData<1> = LoggingDTM
|
||||
LogData<2> = @USER4
|
||||
LogData<3> = OrigRDSNo
|
||||
LogData<4> = WOMatKeyID
|
||||
If OrigRDSNo NE '' then
|
||||
LogData<5> = Xlate('RDS', OrigRDSNo, 'WO_MAT_KEY', 'X')
|
||||
end else
|
||||
LogData<5> = ''
|
||||
end
|
||||
LogData<6> = 'RDS number cannot be removed. Setting RDS number back.'
|
||||
Machine = Environment_Services('GetServer')
|
||||
Logging_Services('AppendLog', ObjLog3, LogData, @RM, @FM, False$)
|
||||
|
||||
end
|
||||
|
||||
WaferQty = Record<WO_MAT_WAFER_QTY$>
|
||||
If ( (WaferQty LT 0) or (WaferQty GT 25) ) then
|
||||
@ -582,6 +629,9 @@ WRITE_RECORD_PRE:
|
||||
End Case
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
return
|
||||
|
||||
|
||||
@ -902,3 +952,4 @@ Restore_System_Variables:
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user