added intrusive maintenance flow logic
updated headers for nica order request Added reactor type support to nica checklists. Refactored flow logic to just use NICA_CHECKLISTS table. added feature flag support gated Feature Flags menu item to supervisors removed debug added auto comment for intr maint flows on reactor log, intr maint flow id to react servs form, and cancel order on unsign reactor log added exceptions for lamp and tc services, added control to edit flow id on react servs form, added auto-reactor log comment, added cancel order on unsign event removed debug modified NicaOrdersServices to use env variables for group resource name added logic to filter out service flow ids for servics with is_intrusive set to false, modified security group for feature flag menu, added ability to clear intr main flow id to react serv form removed unused equates
This commit is contained in:
@ -288,78 +288,109 @@ Event APPLY.CLICK()
|
||||
end else
|
||||
|
||||
Error_Services('DisplayError')
|
||||
ActiveProveIn = Reactor_Services('GetProveInActive', ReactNo)
|
||||
ActiveHgCVChecklists = Nica_Orders_Services('GetActiveOrders', 'REACTOR', ReactNo, 'IQS_HGCV_ALARM')
|
||||
HgCVChecklistActive = (ActiveHgCVChecklists NE '')
|
||||
ReactorRec = Database_Services('ReadDataRow', 'REACTOR', ReactNo)
|
||||
If Error_Services('NoError') then
|
||||
ActiveProveInOrder = ReactorRec<REACTOR_PROVE_IN_ACTIVE$>
|
||||
ActiveHgCVOrder = ReactorRec<REACTOR_HGCV_CHECKLIST_ACTIVE$>
|
||||
ActiveIntrMaintOrder = ReactorRec<REACTOR_INTRUSIVE_MAINT_CHECKLIST_ACTIVE$>
|
||||
|
||||
Begin Case
|
||||
|
||||
Case ActiveProveIn
|
||||
Begin Case
|
||||
|
||||
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 = Reactor_Services('GetActiveProveInOrderIds', ReactNo)
|
||||
If (DCount(ProveInOrderIds, @VM) GT 1) then
|
||||
ProveInTypes = Xlate('NICA_ORDERS', ProveInOrderIds, 'ORDER_TYPE', 'X')
|
||||
OverrideData = Dialog_Box('PROVE_IN_OVERRIDE', @Window, ReactNo)
|
||||
ProveInTypesToCancel = OverrideData<1, 1>
|
||||
ResponseComment = ''
|
||||
For each ProveInType in ProveInTypes using @VM setting Idx
|
||||
Locate ProveInType in ProveInTypesToCancel using @VM setting Unused then
|
||||
ProveInOrderId = ProveInOrderIds<0, Idx>
|
||||
Nica_Orders_Services('CancelOrder', ProveInOrderId)
|
||||
If ResponseComment NE '' then ResponseComment := ', '
|
||||
ResponseComment := ProveInType
|
||||
end
|
||||
Next ProveInType
|
||||
ResponseComment := ': '
|
||||
ResponseComment := OverrideData<2, 1>
|
||||
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 else
|
||||
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
||||
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
||||
Nica_Orders_Services('CancelOrder', ProveInOrderIds<0, 1>)
|
||||
Case ActiveProveInOrder
|
||||
|
||||
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 = Reactor_Services('GetActiveProveInOrderIds', ReactNo)
|
||||
If (DCount(ProveInOrderIds, @VM) GT 1) then
|
||||
ProveInTypes = Xlate('NICA_ORDERS', ProveInOrderIds, 'ORDER_TYPE', 'X')
|
||||
OverrideData = Dialog_Box('PROVE_IN_OVERRIDE', @Window, ReactNo)
|
||||
ProveInTypesToCancel = OverrideData<1, 1>
|
||||
ResponseComment = ''
|
||||
For each ProveInType in ProveInTypes using @VM setting Idx
|
||||
Locate ProveInType in ProveInTypesToCancel using @VM setting Unused then
|
||||
ProveInOrderId = ProveInOrderIds<0, Idx>
|
||||
Nica_Orders_Services('CancelOrder', ProveInOrderId)
|
||||
If ResponseComment NE '' then ResponseComment := ', '
|
||||
ResponseComment := ProveInType
|
||||
end
|
||||
Next ProveInType
|
||||
ResponseComment := ': '
|
||||
ResponseComment := OverrideData<2, 1>
|
||||
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)
|
||||
If Error_Services('NoError') then End_Dialog(@Window, NewMode)
|
||||
end else
|
||||
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
||||
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
||||
Nica_Orders_Services('CancelOrder', ProveInOrderIds<0, 1>)
|
||||
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 else
|
||||
Message_Box(@Window, 'You must enter a comment greater than 4 letters!', 'Error', MSG_ICON_EXCLAM$)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Case ActiveHgCVOrder
|
||||
|
||||
OverrideGroups = 'LEAD':@VM:'SUPERVISOR'
|
||||
UserMsg = "HgCV OCAP Checklist must be completed 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 then
|
||||
|
||||
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
||||
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
||||
ActiveHgCVOrders = Nica_Orders_Services('GetActiveOrders', 'REACTOR', ReactNo, 'IQS_HGCV_ALARM')
|
||||
For each ActiveHgCVOrderId in ActiveHgCVOrders using @VM
|
||||
Nica_Orders_Services('CancelOrder', ActiveHgCVOrderId)
|
||||
Next ActiveHgCVOrderId
|
||||
|
||||
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'HGCV_OCAP_CHECKLIST')
|
||||
|
||||
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
|
||||
|
||||
Case HgCVChecklistActive
|
||||
|
||||
Case ActiveIntrMaintOrder
|
||||
|
||||
OverrideGroups = 'LEAD':@VM:'SUPERVISOR'
|
||||
UserMsg = "HgCV OCAP Checklist must be completed 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 then
|
||||
|
||||
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
||||
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
||||
OverrideGroups = 'LEAD':@VM:'SUPERVISOR'
|
||||
UserMsg = "Intrusive Maintenance Checklist must be completed 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 then
|
||||
|
||||
For each ActiveHgCVOrderId in ActiveHgCVChecklists using @VM
|
||||
Nica_Orders_Services('CancelOrder', ActiveHgCVOrderId)
|
||||
Next ActiveHgCVChecklistId
|
||||
ResponseComment = Dialog_Box('NDW_ADD_COMMENT', @WINDOW)<2>
|
||||
If Assigned(ResponseComment) and Len(ResponseComment) GT 4 then
|
||||
ActiveIntrMaintOrders = Nica_Orders_Services('GetActiveOrders', 'REACTOR', ReactNo, 'INTRUSIVE_MAINT')
|
||||
For each ActiveIntrMaintOrderId in ActiveIntrMaintOrders using @VM
|
||||
Nica_Orders_Services('CancelOrder', ActiveIntrMaintOrderId)
|
||||
Next ActiveIntrMaintOrderId
|
||||
|
||||
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'INTR_MAINT_CHECKLIST')
|
||||
|
||||
Override_Log_Services('Create', 'REACTOR', ReactNo, UserVerification<2>, ResponseComment, 'HGCV_OCAP_CHECKLIST')
|
||||
|
||||
Reactor_Services('CreateReactModeChange', @User4, ReactNo, NewMode, NewReactModeSvc, NewNoteText)
|
||||
If Error_Services('NoError') then
|
||||
End_Dialog(@Window, NewMode)
|
||||
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 else
|
||||
Message_Box(@Window, 'You must enter a comment greater than 4 letters!', 'Error', MSG_ICON_EXCLAM$)
|
||||
end
|
||||
end
|
||||
End Case
|
||||
|
||||
|
||||
End Case
|
||||
end else
|
||||
Error_Services('DisplayError')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@ -520,8 +551,3 @@ HideDropDownComments:
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user