Compile function React_Servs_Services(@Service, @Params) /*********************************************************************************************************************** This program is proprietary and is not to be used by or disclosed to others, nor is it to be copied without written permission from SRP Computer Solutions, Inc. Name : React_Servs_Services Description : Handler program for all module related services. Notes : The generic parameters should contain all the necessary information to process the services. Often this will be information like the data Record and Key ID. Parameters : Service [in] -- Name of the service being requested Param1-10 [in/out] -- Additional request parameter holders Response [out] -- Response to be sent back to the Controller (MCP) or requesting procedure History : (Date, Initials, Notes) 08/02/22 djs Original programmer. ***********************************************************************************************************************/ #pragma precomp SRP_PreCompiler $Insert LOGICAL $Insert RLIST_EQUATES $Insert REACT_SERVS_EQUATES Declare function Database_Services, Error_Services, SRP_JSON, React_Servs_Services Declare subroutine SRP_JSON, Error_Services, React_Servs_Services GoToService Return Response or "" //----------------------------------------------------------------------------- // SERVICES //----------------------------------------------------------------------------- Service GetReactMetrics() Response = '' ReactMetrics = Xlate('APP_INFO', 'REACTOR_METRICS', 1, 'X', '') Swap @VM with @FM in ReactMetrics Response = ReactMetrics end service Service GetAssociatedMetrics(ServID) AssocMetrics = Xlate('REACT_SERVS', ServID, REACT_SERVS_ASSOC_METRICS$, 'X', '') Response = AssocMetrics end service Service GetReactServs() Response = '' Query = 'SELECT REACT_SERVS BY SERV_ID' GoSub ClearCursors RList(Query, TARGET_ACTIVELIST$, '', '', '') If Not(Get_Status(ErrCode)) then EOF = False$ Loop ReadNext KeyID else EOF = True$ Until EOF Response<-1> = KeyID Repeat end End Service Service ConvertRecordToJSON(KeyID, Record, itemURL) jsonRecord = '' If KeyID NE '' then If Record EQ '' then Record = Database_Services('ReadDataRow', 'REACT_SERVS', KeyID) If Error_Services('NoError') then @DICT = Database_Services('GetTableHandle', 'DICT.REACT_SERVS') @ID = KeyID @RECORD = Record If SRP_JSON(objJSON, 'New', 'Object') then If SRP_JSON(objReactServ, 'New', 'Object') then SRP_JSON(objReactServ, 'SetValue', 'keyId', @ID) SRP_JSON(objReactServ, 'SetValue', 'reactType', {REACT_TYPE}) SRP_JSON(objReactServ, 'SetValue', 'action', {ACTION}) SRP_JSON(objReactServ, 'SetValue', 'description', {DESCRIPTION}) //SRP_JSON(objReactServ, 'SetValue', 'graphiteOrTube', OConv({GRAPHITE_OR_TUBE}, '[GRAPHITE_OR_TUBE_CONV]')) SRP_JSON(objReactServ, 'SetValue', 'graphiteOrTube', {GRAPHITE_OR_TUBE}) SRP_JSON(objReactServ, 'SetValue', 'inactiveDate', OConv({INACTIVE_DATE}, 'D4/')) SRP_JSON(objReactServ, 'SetValue', 'injectorChange', {INJECTOR_CHANGE}, 'Boolean') SRP_JSON(objReactServ, 'SetValue', 'noteRequired', {NOTE_REQ}, 'Boolean') SRP_JSON(objReactServ, 'SetValue', 'pmDays', {PM_DAYS}) SRP_JSON(objReactServ, 'SetValue', 'reactGas', {REACT_GAS}) SRP_JSON(objReactServ, 'SetValue', 'reactItem', {REACT_ITEM}) SRP_JSON(objReactServ, 'SetValue', 'reactItemDesc', {REACT_ITEM_DESC}) SRP_JSON(objReactServ, 'SetValue', 'reactItemType', {REACT_ITEM_TYPE}) SRP_JSON(objReactServ, 'SetValue', 'reactServCatId', {REACT_SERV_CAT_ID}) SRP_JSON(objReactServ, 'SetValue', 'reactServCatDesc', {REACT_SERV_CAT_DESC}) SRP_JSON(objReactServ, 'SetValue', 'reactSystem', {REACT_SYSTEM}) SRP_JSON(objReactServ, 'SetValue', 'requireArmWandData', {REQ_ARM_WAND_DATA}) SRP_JSON(objReactServ, 'SetValue', 'status', {STATUS}) SRP_JSON(objReactServ, 'SetValue', 'svcDesc', {SVC_DESC}) SRP_JSON(objReactServ, 'SetValue', 'sysDesc', {SYS_DESC}) SRP_JSON(objReactServ, 'SetValue', 'tcChangeService', {TC_CHANGE_SERVICE}) SRP_JSON(objJSON, 'Set', 'reactServ', objReactServ) SRP_JSON(objReactServ, 'Release') end If itemURL NE '' then // The itemURL was passed in so add HAL+JSON properties. // Create the _links property and then all link objects needed for this resource. If SRP_JSON(objLinks, 'New', 'Object') then // Create a self link. If SRP_JSON(objLink, 'New', 'Object') then SRP_JSON(objLink, 'SetValue', 'href', ItemURL, 'String') SRP_JSON(objLink, 'SetValue', 'title', 'Self', 'String') SRP_JSON(objLinks, 'Set', 'self', objLink) SRP_JSON(objLink, 'Release') end SRP_JSON(objJSON, 'Set', '_links', objLinks) SRP_JSON(objLinks, 'Release') end // Create the _class property for this resource. SRP_JSON(objJSON, 'SetValue', '_class', 'resource') end jsonRecord = SRP_JSON(objJSON, 'Stringify', 'Styled') SRP_JSON(objJSON, 'Release') end else Error_Services('Add', 'Unable to create JSON representation in the ' : Service : ' service.') end end end else Error_Services('Add', 'KeyID argument was missing in the ' : Service : ' service.') end Response = jsonRecord end service //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Internal GoSubs //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ClearCursors: For counter = 0 to 8 ClearSelect counter Next counter return