260 lines
5.5 KiB
Plaintext
260 lines
5.5 KiB
Plaintext
COMPILE FUNCTION Wand(EntID,Event,Parm1,Parm2,Parm3,Parm4,Parm5)
|
|
|
|
/*
|
|
Commuter module for Quartz Wand (WAND) window
|
|
|
|
1/8/2014 - John C. Henry, J.C. Henry & Co., Inc.
|
|
*/
|
|
|
|
DECLARE SUBROUTINE Set_Property, End_Dialog, Send_Event, Set_Status, Center_Window, Post_Event
|
|
DECLARE SUBROUTINE ErrMsg, Send_Message, Set_Property, Send_Event, Btree.Extract, obj_AppWindow,
|
|
DECLARE SUBROUTINE obj_Notes, Security_Err_Msg, End_Window, Forward_Event, Start_Window, Create_Note
|
|
|
|
DECLARE FUNCTION Get_Property, Get_Status, Dialog_Box, Utility, Popup, Collect.Ixvals
|
|
DECLARE FUNCTION Send_Message, Msg, Security_Check, obj_Calendar
|
|
|
|
|
|
|
|
$INSERT MSG_EQUATES
|
|
$INSERT APPCOLORS
|
|
$INSERT LSL_USERS_EQU
|
|
$INSERT SECURITY_RIGHTS_EQU
|
|
$INSERT WAND_EQUATES
|
|
$INSERT POPUP_EQUATES
|
|
|
|
EQU CRLF$ TO \0D0A\
|
|
EQU TAB$ TO \09\
|
|
|
|
|
|
EQU COL$REACT_NO TO 1
|
|
EQU COL$SVC_HRS TO 2
|
|
EQU COL$SVC_WFRS TO 3
|
|
EQU COL$INST_DTM TO 4
|
|
EQU COL$INST_REACT_HRS TO 5
|
|
EQU COL$INST_REACT_WFRS TO 6
|
|
EQU COL$INST_RL_ID TO 7
|
|
EQU COL$REM_DTM TO 8
|
|
EQU COL$REM_REACT_HRS TO 9
|
|
EQU COL$REM_REACT_WFRS TO 10
|
|
EQU COL$REM_RL_ID TO 11
|
|
EQU COL$REM_REASON TO 12
|
|
|
|
EQU SPECIAL_BLUE$ TO 227 + (253*256) + (248*65536)
|
|
|
|
|
|
|
|
|
|
|
|
ErrTitle = 'Error in Wand commuter'
|
|
ErrorMsg = ''
|
|
|
|
Result = ''
|
|
|
|
|
|
BEGIN CASE
|
|
CASE EntID = @WINDOW
|
|
BEGIN CASE
|
|
CASE Event = 'CLEAR' ; GOSUB Clear
|
|
CASE Event = 'CREATE' ; GOSUB Create
|
|
CASE Event = 'CLOSE' ; GOSUB Close
|
|
CASE Event = 'READ' ; GOSUB Read
|
|
CASE Event[1,3] = 'QBF' ; GOSUB Refresh
|
|
END CASE
|
|
|
|
CASE EntID = 'TUBE.LU_WAND_ID' AND Event = 'CLICK' ; GOSUB LUWandID
|
|
CASE EntID = 'TUBE.RETIRE_BUTTON' AND Event = 'CLICK' ; GOSUB RetireItem
|
|
|
|
|
|
|
|
CASE 1
|
|
ErrorMsg = 'Unknown Parameters ':EntID:' - ':Event:' passed to commuter'
|
|
ErrMsg(ErrorMsg)
|
|
|
|
END CASE
|
|
|
|
IF ErrorMsg NE '' THEN
|
|
ErrMsg(ErrTitle:@SVM:ErrorMsg)
|
|
END
|
|
|
|
RETURN Result
|
|
|
|
|
|
|
|
* * * * * * *
|
|
Create:
|
|
* * * * * * *
|
|
|
|
/*
|
|
IF NOT(Security_Check('Reactor Event Log',READ$)) THEN
|
|
Security_Err_Msg('Reactor Event Log',READ$)
|
|
End_Window(@WINDOW)
|
|
RETURN
|
|
END
|
|
*/
|
|
|
|
obj_Appwindow('Create',@WINDOW)
|
|
|
|
GOSUB Refresh
|
|
|
|
RETURN
|
|
|
|
|
|
* * * * * * *
|
|
Clear:
|
|
* * * * * * *
|
|
|
|
IF Get_Property(@WINDOW,'@READONLY') THEN
|
|
obj_AppWindow('ReadOnly',@RM:1) ;* Reenables data bound controls
|
|
Set_Property(@WINDOW,'@READONLY',0) ;* Clear flag on window
|
|
END
|
|
|
|
|
|
* * * * * * *
|
|
Refresh:
|
|
* * * * * * *
|
|
|
|
|
|
* QBF buttons
|
|
|
|
Ctrls = @WINDOW:'.QBF_FIRST_FIX':@RM ; Props = 'ENABLED':@RM
|
|
Ctrls := @WINDOW:'.QBF_PREV_FIX':@RM ; Props := 'ENABLED':@RM
|
|
Ctrls := @WINDOW:'.QBF_ABS_FIX':@RM ; Props := 'ENABLED':@RM
|
|
Ctrls := @WINDOW:'.QBF_NEXT_FIX':@RM ; Props := 'ENABLED':@RM
|
|
Ctrls := @WINDOW:'.QBF_LAST_FIX':@RM ; Props := 'ENABLED':@RM
|
|
Ctrls := @WINDOW:'.QBF_STOP_FIX' ; Props := 'ENABLED'
|
|
|
|
IF Get_Property(@WINDOW,'QBFLIST') = '' THEN
|
|
Vals = 0:@RM:0:@RM:0:@RM:0:@RM:0:@RM:0
|
|
END ELSE
|
|
Vals = 1:@RM:1:@RM:1:@RM:1:@RM:1:@RM:1
|
|
END
|
|
|
|
Set_Property(Ctrls,Props,Vals)
|
|
|
|
* Turn edit table symbolic column backgrounds to green
|
|
|
|
ETCtrl = @WINDOW:'.REACT_NO'
|
|
ETList = Get_Property(ETCtrl,'LIST')
|
|
ListCnt = COUNT(ETList,@FM) + (ETList NE '')
|
|
|
|
|
|
FOR Line = 1 TO ListCnt
|
|
|
|
IF MOD(Line,2) THEN
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REACT_NO,Line,SPECIAL_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$SVC_HRS,Line,VL_YELLOW$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$SVC_WFRS,Line,VL_YELLOW$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$INST_DTM,Line,SPECIAL_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$INST_REACT_HRS,Line,SPECIAL_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$INST_RL_ID,Line,SPECIAL_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REM_DTM,Line,SPECIAL_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REM_REACT_HRS,Line,RCV_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REM_REACT_WFRS,Line,RCV_BLUE$)
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REM_RL_ID,Line,RCV_BLUE$)
|
|
|
|
END ELSE
|
|
FOR N = 1 TO 11
|
|
stat = Send_Message(ETCtrl,'COLOR_BY_POS',N,Line,WHITE$)
|
|
NEXT N
|
|
END
|
|
NEXT Line
|
|
|
|
|
|
RETURN
|
|
|
|
|
|
|
|
|
|
|
|
* * * * * * *
|
|
Read:
|
|
* * * * * * *
|
|
|
|
EnterBy = Get_Property(@WINDOW:'.ENTER_BY','DEFPROP')
|
|
|
|
IF EnterBy = '' THEN
|
|
Set_Property(@WINDOW:'.ENTER_BY','INVALUE',@USER4)
|
|
Set_Property(@WINDOW:'.ENTER_DTM','DEFPROP',obj_Calendar('CurrDTM'))
|
|
END
|
|
|
|
|
|
|
|
|
|
GOSUB Refresh
|
|
|
|
RETURN
|
|
|
|
|
|
|
|
* * * * * * *
|
|
LUWandID:
|
|
* * * * * * *
|
|
|
|
IF NOT(ASSIGNED(Parm1)) THEN FocusControl = '' ELSE FocusControl = Parm1
|
|
IF NOT(ASSIGNED(Parm2)) THEN FocusPos = '' ELSE FocusPos = Parm2
|
|
|
|
Set_Status(0)
|
|
|
|
DEBUG
|
|
|
|
WandIDs = Popup(@WINDOW,'','WAND')
|
|
|
|
CONVERT @VM TO @FM IN WandIDs
|
|
|
|
IF INDEX(WandIDs,@FM,1) THEN
|
|
Send_Event(@WINDOW,'QBFINIT')
|
|
Set_Property(@WINDOW,'QBFLIST',WandIDs)
|
|
GOSUB Refresh
|
|
Send_Event(@WINDOW,'QBFIRST')
|
|
END ELSE
|
|
obj_Appwindow('LoadFormKeys',@WINDOW:@RM:WandIDs)
|
|
END
|
|
|
|
RETURN
|
|
|
|
|
|
* * * * * * *
|
|
RetireItem:
|
|
* * * * * * *
|
|
|
|
Ctrls = @WINDOW:'.RETIRE_DT':@RM ; Props = 'DEFPROP':@RM
|
|
Ctrls := @WINDOW:'.RETIRE_BY' ; Props := 'INVALUE'
|
|
|
|
Vals = Get_Property(Ctrls,Props)
|
|
|
|
RetDt = Vals[1,@RM]
|
|
RetBy = Vals[COL2()+1,@RM]
|
|
|
|
IF RetBy NE '' THEN RETURN ;* Nothing to do
|
|
|
|
Vals = OCONV(Date(),'D4/'):@RM
|
|
Vals := @USER4
|
|
|
|
Set_Property(Ctrls,Props,Vals)
|
|
|
|
WandID = Get_Property(@WINDOW:'.WAND_ID','DEFPROP')
|
|
|
|
Send_Event(@WINDOW,'WRITE')
|
|
|
|
obj_AppWindow('LoadFormKeys',@WINDOW:@RM:TubeID)
|
|
|
|
RETURN
|
|
|
|
|
|
|
|
|
|
* * * * * * *
|
|
Close:
|
|
* * * * * * *
|
|
|
|
obj_Notes('Inbox',@USER4) ;* Checks for any new messages
|
|
|
|
obj_Appwindow('DetailReturn',@WINDOW)
|
|
|
|
RETURN
|
|
|
|
|
|
|
|
|
|
|