281 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			281 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| COMPILE FUNCTION Comm_React_Servs(EntID,Event,Parm1,Parm2,Parm3,Parm4,Parm5)
 | |
| 
 | |
| /*
 | |
| 	TCommuter module for REACT_SERVS (Reactor Services) window
 | |
| 	
 | |
| 	10/23/2013 - 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 SUBROUTINE React_Servs_Services, React_Servs_Events
 | |
| 
 | |
| DECLARE FUNCTION Get_Property, Get_Status, Dialog_Box, Utility, Center_Window, Popup, Collect.Ixvals
 | |
| DECLARE FUNCTION Send_Message, Msg, Security_Check, RowExists,  NextKey, End_Window, React_Servs_Services
 | |
| DECLARE FUNCTION Nica_Orders_Services
 | |
| 
 | |
| $INSERT MSG_EQUATES
 | |
| $INSERT APPCOLORS
 | |
| $INSERT LSL_USERS_EQU
 | |
| $INSERT SECURITY_RIGHTS_EQU
 | |
| $INSERT REACT_SERVS_EQUATES
 | |
| $INSERT POPUP_EQUATES
 | |
| $INSERT LOGICAL
 | |
| 
 | |
| EQU CRLF$	TO \0D0A\
 | |
| EQU TAB$	TO \09\
 | |
| 
 | |
| ErrTitle = 'Error in Comm React Servs'
 | |
| 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 = 'WRITE'			; GOSUB Write
 | |
| 			CASE Event = 'READ'				; GOSUB Read
 | |
| 			CASE Event = 'DELETE'			; GOSUB Delete
 | |
| 			CASE Event[1,3] = 'QBF'			; GOSUB Refresh
 | |
| 		END CASE
 | |
| 		
 | |
| 	CASE EntID = @WINDOW:'.CHB_IS_INTRUSIVE' AND Event = 'CLICK'	; GOSUB EnableFlowCode
 | |
| 	CASE EntID = @WINDOW:'.LU_SYSTEM'   	 AND Event = 'CLICK'	; GOSUB LUSystem
 | |
| 	CASE EntID = @WINDOW:'.LU_REACT_ITEM'    AND Event = 'CLICK'	; GOSUB LUReactItem
 | |
| 	CASE EntID = @WINDOW:'.LU_ITEM_TYPE'	 AND Event = 'CLICK'	; GOSUB LUReactItemType
 | |
| 
 | |
| 	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('React Servs',Read$)) THEN
 | |
| 		Security_Err_Msg('React Servs',Read$)
 | |
| 		void = End_Window( @WINDOW, '' )
 | |
| 		RETURN
 | |
| 	END
 | |
| 	
 | |
| 	IF NOT(Security_Check('React Servs',Edit$)) THEN
 | |
| 		Security_Err_Msg('React Servs',Edit$)
 | |
| 	END
 | |
| 	
 | |
| 	ReactMetrics = React_Servs_Services('GetReactMetrics')
 | |
| 	Set_Property(@Window:'.ASSOC_METRICS', 'LIST', ReactMetrics)
 | |
| 	
 | |
| 	obj_Appwindow('Create',@WINDOW)
 | |
| 	
 | |
| 	AvailFlowIds = Nica_Orders_Services('GetAvailableFlowIds', 'INTRUSIVE_MAINT')
 | |
| 	Convert @VM to @FM in AvailFlowIds
 | |
| 	AvailFlowIds = '':@FM:AvailFlowIds
 | |
| 	Set_Property(@Window:'.CBO_INTR_MAINT_FLOW', 'LIST', AvailFlowIds)
 | |
| 	
 | |
| 	GOSUB Refresh
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| Clear:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	Send_Event(@WINDOW,'PAGE',1)	
 | |
| 	
 | |
| 	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
 | |
| 	
 | |
| 	ETSymbolics = Get_Property(@WINDOW,'@ET_SYMBOLICS')		;* Loaded during 'Create' in obj_Appwindow
 | |
| 	
 | |
| 	ETCtrls	= ETSymbolics<1>
 | |
| 	ETCols	= ETSymbolics<2>
 | |
| 	
 | |
| 	FOR I = 1 TO COUNT(ETCtrls,@VM) + (ETCtrls NE '')
 | |
| 		ETCtrl	= ETCtrls<1,I>
 | |
| 		ETList = Get_Property(ETCtrl,'LIST')
 | |
| 		FOR Line = 1 TO COUNT(ETList,@FM) + (ETList NE '')
 | |
| 			IF ETList<Line,1> NE '' THEN
 | |
| 				FOR N = 1 TO COUNT(ETCols<1,I>,@SVM) + (ETCols<1,I> NE '')
 | |
| 					stat = Send_Message(ETCtrl,'COLOR_BY_POS',ETCols<1,I,N>,Line,GREEN$)
 | |
| 				NEXT N
 | |
| 			END
 | |
| 		NEXT I
 | |
| 	NEXT I
 | |
| 	
 | |
| 	GOSUB EnableFlowCode
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| Page:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	obj_Appwindow('Page')
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| LUSystem:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	ReturnCtrl = Parm1
 | |
| 	
 | |
| 	IF ReturnCtrl NE '' THEN
 | |
| 		ReturnCtrl = @WINDOW:'.':ReturnCtrl
 | |
| 	END ELSE
 | |
| 		ReturnCtrl = ''
 | |
| 	END
 | |
| 	
 | |
| 	Set_Status(0)
 | |
| 	
 | |
| 	ReactSystem = Popup(@WINDOW,'','REACT_SYSTEM')
 | |
| 	
 | |
| 	IF ReactSystem = '' THEN RETURN
 | |
| 	
 | |
| 	obj_Appwindow('LUValReturn',ReactSystem:@RM:ReturnCtrl)
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| LUREactItem:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	ReturnCtrl = Parm1
 | |
| 	
 | |
| 	IF ReturnCtrl NE '' THEN
 | |
| 		ReturnCtrl = @WINDOW:'.':ReturnCtrl
 | |
| 	END ELSE
 | |
| 		ReturnCtrl = ''
 | |
| 	END
 | |
| 	
 | |
| 	
 | |
| 	Set_Status(0)
 | |
| 	
 | |
| 	ReactItem = Popup(@WINDOW,'','REACT_ITEMS')
 | |
| 	
 | |
| 	IF ReactItem = '' THEN RETURN
 | |
| 	
 | |
| 	obj_Appwindow('LUValReturn',ReactItem:@RM:ReturnCtrl)
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| LUReactItemType:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	ReturnCtrl = Parm1
 | |
| 	
 | |
| 	IF ReturnCtrl NE '' THEN
 | |
| 		ReturnCtrl = @WINDOW:'.':ReturnCtrl
 | |
| 	END ELSE
 | |
| 		ErrorMsg = 'ReturnCtrl not specified'
 | |
| 		RETURN
 | |
| 	END
 | |
| 	
 | |
| 	
 | |
| 	RetVal = Popup(@WINDOW,'','REACT_ITEM_TYPE')
 | |
| 	
 | |
| 	IF RetVal = '' THEN RETURN
 | |
| 	
 | |
| 	obj_Appwindow('LUValReturn',RetVal:@RM:ReturnCtrl)
 | |
| 
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| Read:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	GOSUB Refresh
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| Write:
 | |
| * * * * * * *
 | |
| 
 | |
| 	Result = 1
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| Delete:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	IF Security_Check('React Servs',Delete$ ) THEN
 | |
| 		Result = 1		;* Proceed with delete
 | |
| 	END ELSE
 | |
| 		Security_Err_Msg('React Servs',Delete$)
 | |
| 		Result = 0		;* Stop event chain (and delete)
 | |
| 	END
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| * * * * * * *
 | |
| Close:
 | |
| * * * * * * *
 | |
| 	
 | |
| 	obj_Notes('Inbox',@USER4)	;* Checks for any new messages
 | |
| 	
 | |
| 	obj_Appwindow('CardReturn',@WINDOW)
 | |
| 	
 | |
| RETURN
 | |
| 
 | |
| 
 | |
| EnableFlowCode:
 | |
| 	
 | |
| 	ChkVal = Get_Property(@WINDOW:'.CHB_IS_INTRUSIVE', 'CHECK')
 | |
| 	If ChkVal EQ '' then ChkVal = False$
 | |
| 	Set_Property(@WINDOW:'.CBO_INTR_MAINT_FLOW', 'ENABLED', ChkVal)
 | |
| 	
 | |
| return
 | |
| 
 |