Remind operator to load PROD recipe after SPV test on HTR reactor
This commit is contained in:
parent
526b9943a0
commit
2b6e5fd2ac
@ -57,7 +57,7 @@ Declare function Reactor_Services, Error_Services, Logging_Services, Environme
|
|||||||
Declare function SRP_List
|
Declare function SRP_List
|
||||||
Declare subroutine RList, Set_Property, Set_List_Box_Data, end_dialog, record_lock, obj_React_Mode, ErrMsg
|
Declare subroutine RList, Set_Property, Set_List_Box_Data, end_dialog, record_lock, obj_React_Mode, ErrMsg
|
||||||
Declare subroutine Mona_Services, Reactor_Services, Error_Services, obj_React_Status, Logging_Services
|
Declare subroutine Mona_Services, Reactor_Services, Error_Services, obj_React_Status, Logging_Services
|
||||||
Declare subroutine Database_Services, Override_Log_Services, SRP_List, Message_Box
|
Declare subroutine Database_Services, Override_Log_Services, SRP_List, Message_Box, Reactor_Log_Services
|
||||||
|
|
||||||
GoToEvent Event for CtrlEntId else
|
GoToEvent Event for CtrlEntId else
|
||||||
// Event not implemented
|
// Event not implemented
|
||||||
@ -253,69 +253,94 @@ Event APPLY.CLICK()
|
|||||||
end
|
end
|
||||||
end else
|
end else
|
||||||
NewNoteText = Get_Property(@Window:'.EDB_COMMENT', 'TEXT')
|
NewNoteText = Get_Property(@Window:'.EDB_COMMENT', 'TEXT')
|
||||||
end
|
end
|
||||||
|
|
||||||
Reactor_Services('CreateReactModeChange', @User4, ReactNo, NewMode, NewReactModeSvc, NewNoteText)
|
CurrentModeRecord = Reactor_Services('GetReactCurrModeRec', ReactNo)
|
||||||
If Error_Services('NoError') then
|
CurrentMode = CurrentModeRecord<REACT_MODE_NG_MODE$>
|
||||||
End_Dialog(@Window, NewMode)
|
CurrentServiceDesc = CurrentModeRecord<REACT_MODE_NG_SERVICE_DESC$>
|
||||||
end else
|
If (CurrentMode _EQC 'test_scheduled' or CurrentMode _EQC 'test_unscheduled') and CurrentServiceDesc _EQC 'spv test' then
|
||||||
Error_Services('DisplayError')
|
ReactType = Xlate('REACTOR', ReactNo, REACTOR_REACT_TYPE$, 'X')
|
||||||
ActiveProveIn = Xlate('REACTOR', ReactNo, REACTOR_PROVE_IN_ACTIVE$, 'X')
|
If Len(ReactType) GE 3 and ReactType[1, 3] _EQC 'HTR' then
|
||||||
If ActiveProveIn then
|
Message = 'Remember to load the production recipe. Please find another employee to confirm this has been done.'
|
||||||
OverrideGroups = 'LEAD':@VM:'SUPERVISOR'
|
Verification = Dialog_Box('NDW_VERIFY_USER', @WINDOW, '':@FM:'':@FM:'':@FM:Message)
|
||||||
UserMsg = "Reactor prove in must be processed in NICA. Override required from a lead or supervisor to bypass NICA."
|
ValidVerification = Verification<1> and Verification<2> NE @User4
|
||||||
UserVerification = Dialog_Box('NDW_VERIFY_USER', @WINDOW, @USER4:@FM:OverrideGroups:@FM:'':@FM:UserMsg)
|
If ValidVerification EQ True$ then
|
||||||
Override = UserVerification<1>
|
ConfirmNote = 'Confirmed production recipe loaded'
|
||||||
If Override EQ True$ then
|
Reactor_Log_Services('AddComment', ReactNo, ConfirmNote, Verification<2>)
|
||||||
ProveInOrderIds = Xlate('REACTOR', ReactNo, REACTOR_PROVE_IN_ORDER_ID$, 'X')
|
end else
|
||||||
ProveInOrderList = SRP_List('Create', ProveInOrderIds, @VM)
|
If Verification<1> NE True$ then
|
||||||
ProveInTypes = Xlate('REACTOR', ReactNo, REACTOR_PROVE_IN_TYPE$, 'X')
|
Message_Box(@Window, 'Invalid signature!', "Error", MSG_ICON_EXCLAM$)
|
||||||
ProveInTypeList = SRP_List('Create', ProveInTypes, @VM)
|
|
||||||
If SRP_List('Count', ProveInOrderList) GT 1 then
|
|
||||||
OverrideData = Dialog_Box('PROVE_IN_OVERRIDE', @Window, ReactNo)
|
|
||||||
|
|
||||||
ProveInTypesToCancel = OverrideData<1, 1>
|
|
||||||
ProveInTypesToCancelList = SRP_List('Create', ProveInTypesToCancel, @VM)
|
|
||||||
|
|
||||||
ResponseComment = ''
|
|
||||||
for each ProveInType in ProveInTypes using @VM setting Idx
|
|
||||||
If SRP_List('Locate', ProveInTypesToCancelList, ProveInType) GT 0 then
|
|
||||||
ProveInOrderId = SRP_List('GetAt', ProveInOrderList, Idx)
|
|
||||||
Reactor_Services('CancelReactorProveIn', ReactNo, ProveInOrderId)
|
|
||||||
If ResponseComment NE '' then
|
|
||||||
ResponseComment := ', '
|
|
||||||
end
|
|
||||||
ResponseComment := ProveInType
|
|
||||||
end
|
|
||||||
Next ProveInType
|
|
||||||
|
|
||||||
ResponseComment := ': '
|
|
||||||
ResponseComment := OverrideData<2, 1>
|
|
||||||
|
|
||||||
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'REACTOR_PROVE_IN')
|
|
||||||
|
|
||||||
SRP_List('Release', ProveInTypesToCancelList)
|
|
||||||
end else
|
end else
|
||||||
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
Message_Box(@Window, 'You must get another user to confirm the production recipe is loaded!', "Error", MSG_ICON_EXCLAM$)
|
||||||
|
end
|
||||||
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
Error_Services('Add', 'Post HTR SPV test recipe verification not complete')
|
||||||
ProveInOrderId = SRP_List('GetAt', ProveInOrderList, 1)
|
end
|
||||||
Reactor_Services('CancelReactorProveIn', ReactNo, ProveInOrderId)
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
If Error_Services('NoError') then
|
||||||
|
Reactor_Services('CreateReactModeChange', @User4, ReactNo, NewMode, NewReactModeSvc, NewNoteText)
|
||||||
|
If Error_Services('NoError') then
|
||||||
|
End_Dialog(@Window, NewMode)
|
||||||
|
end else
|
||||||
|
Error_Services('DisplayError')
|
||||||
|
ActiveProveIn = Xlate('REACTOR', ReactNo, REACTOR_PROVE_IN_ACTIVE$, 'X')
|
||||||
|
If ActiveProveIn then
|
||||||
|
OverrideGroups = 'LEAD':@VM:'SUPERVISOR'
|
||||||
|
UserMsg = "Reactor prove in must be processed in NICA. Override required from a lead or supervisor to bypass NICA."
|
||||||
|
UserVerification = Dialog_Box('NDW_VERIFY_USER', @WINDOW, @USER4:@FM:OverrideGroups:@FM:'':@FM:UserMsg)
|
||||||
|
Override = UserVerification<1>
|
||||||
|
If Override EQ True$ then
|
||||||
|
ProveInOrderIds = Xlate('REACTOR', ReactNo, REACTOR_PROVE_IN_ORDER_ID$, 'X')
|
||||||
|
ProveInOrderList = SRP_List('Create', ProveInOrderIds, @VM)
|
||||||
|
ProveInTypes = Xlate('REACTOR', ReactNo, REACTOR_PROVE_IN_TYPE$, 'X')
|
||||||
|
ProveInTypeList = SRP_List('Create', ProveInTypes, @VM)
|
||||||
|
If SRP_List('Count', ProveInOrderList) GT 1 then
|
||||||
|
OverrideData = Dialog_Box('PROVE_IN_OVERRIDE', @Window, ReactNo)
|
||||||
|
|
||||||
|
ProveInTypesToCancel = OverrideData<1, 1>
|
||||||
|
ProveInTypesToCancelList = SRP_List('Create', ProveInTypesToCancel, @VM)
|
||||||
|
|
||||||
|
ResponseComment = ''
|
||||||
|
for each ProveInType in ProveInTypes using @VM setting Idx
|
||||||
|
If SRP_List('Locate', ProveInTypesToCancelList, ProveInType) GT 0 then
|
||||||
|
ProveInOrderId = SRP_List('GetAt', ProveInOrderList, Idx)
|
||||||
|
Reactor_Services('CancelReactorProveIn', ReactNo, ProveInOrderId)
|
||||||
|
If ResponseComment NE '' then
|
||||||
|
ResponseComment := ', '
|
||||||
|
end
|
||||||
|
ResponseComment := ProveInType
|
||||||
|
end
|
||||||
|
Next ProveInType
|
||||||
|
|
||||||
|
ResponseComment := ': '
|
||||||
|
ResponseComment := OverrideData<2, 1>
|
||||||
|
|
||||||
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'REACTOR_PROVE_IN')
|
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'REACTOR_PROVE_IN')
|
||||||
|
|
||||||
Reactor_Services('CreateReactModeChange', @User4, ReactNo, NewMode, NewReactModeSvc, NewNoteText)
|
SRP_List('Release', ProveInTypesToCancelList)
|
||||||
If Error_Services('NoError') then
|
|
||||||
End_Dialog(@Window, NewMode)
|
|
||||||
end
|
|
||||||
end else
|
end else
|
||||||
Message_Box(@Window, 'You must enter a comment greater than 4 letters!', 'Error', MSG_ICON_EXCLAM$)
|
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
||||||
|
|
||||||
|
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
||||||
|
ProveInOrderId = SRP_List('GetAt', ProveInOrderList, 1)
|
||||||
|
Reactor_Services('CancelReactorProveIn', ReactNo, ProveInOrderId)
|
||||||
|
|
||||||
|
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'REACTOR_PROVE_IN')
|
||||||
|
|
||||||
|
Reactor_Services('CreateReactModeChange', @User4, ReactNo, NewMode, NewReactModeSvc, NewNoteText)
|
||||||
|
If Error_Services('NoError') then
|
||||||
|
End_Dialog(@Window, NewMode)
|
||||||
|
end
|
||||||
|
end else
|
||||||
|
Message_Box(@Window, 'You must enter a comment greater than 4 letters!', 'Error', MSG_ICON_EXCLAM$)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
SRP_List('Release', ProveInOrderList)
|
||||||
|
SRP_List('Release', ProveInTypeList)
|
||||||
end
|
end
|
||||||
SRP_List('Release', ProveInOrderList)
|
|
||||||
SRP_List('Release', ProveInTypeList)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
EventFlow = 0
|
EventFlow = 0
|
||||||
@ -477,3 +502,5 @@ return
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user