diff --git a/LSL2/STPROC/MONA_SERVICES.txt b/LSL2/STPROC/MONA_SERVICES.txt index 8f0c2c1..41980bb 100644 --- a/LSL2/STPROC/MONA_SERVICES.txt +++ b/LSL2/STPROC/MONA_SERVICES.txt @@ -181,10 +181,13 @@ SwapResourceNames: MonaResource = 'GRP_OPENINSIGHT_MES_OP_FE_DEV_SAP_OUTBOUND' StatusName = 'SFTP-Interface-Outbound-Dev' + Case ( (MonaResource EQ 'GRP_OPENINSIGHT_MES_OP_FE_SAP_OUTBOUND') and (StatusName EQ 'SetSAPBatchQueue') ) + MonaResource = 'GRP_OPENINSIGHT_MES_OP_FE_DEV_SAP_OUTBOUND' + StatusName = 'SetSAPBatchQueue-Dev' + Case ( (MonaResource EQ 'GRP_OPENINSIGHT_MES_OP_FE_SAP_INBOUND') and (StatusName EQ 'SFTP-Interface-Inbound') ) MonaResource = 'GRP_OPENINSIGHT_MES_OP_FE_DEV_SAP_INBOUND' StatusName = 'SFTP-Interface-Inbound-Dev' End Case return - diff --git a/LSL2/STPROC/OBJ_POST_LOG.txt b/LSL2/STPROC/OBJ_POST_LOG.txt index ad60760..fe2fc3e 100644 --- a/LSL2/STPROC/OBJ_POST_LOG.txt +++ b/LSL2/STPROC/OBJ_POST_LOG.txt @@ -7,6 +7,7 @@ COMPILE FUNCTION obj_Post_Log(Method,Parms) 05/12/2008 JCH - Initial Coding 04/22/2019 DJS - Added unlock service statements within POST subroutine wherever an error condition returns prematurely to prevent POST_LOG service from locking up. + 02/10/2025 DJM - Added additional logging and unlocking logic for WO_MAT records. Properties: @@ -19,15 +20,16 @@ COMPILE FUNCTION obj_Post_Log(Method,Parms) DECLARE FUNCTION Get_Status, Msg, Utility, obj_Tables, Get_Property, obj_RDS, Database_Services, Environment_Services -DECLARE FUNCTION Logging_Services +DECLARE FUNCTION Logging_Services, Datetime, SRP_DateTime DECLARE SUBROUTINE Set_Status, Msg, obj_Tables, Send_Dyn, Send_Dyn, RList, obj_WO_Log, Send_Event, obj_RDS -DECLARE SUBROUTINE obj_WO_Mat, Send_Info, obj_Notes, ErrMsg, Logging_Services +DECLARE SUBROUTINE obj_WO_Mat, Send_Info, obj_Notes, ErrMsg, Logging_Services, Mona_Services $INSERT POST_LOG_EQUATES $INSERT WO_MAT_EQUATES $INSERT RDS_EQU $INSERT REACT_RUN_EQUATES +$INSERT LOGICAL EQU CRLF$ TO \0D0A\ Equ Comma$ to ',' @@ -36,7 +38,7 @@ LogPath = Environment_Services('GetApplicationRootPath') : '\LogFiles\POST_L LogDate = Oconv(Date(), 'D4/') LogTime = Oconv(Time(), 'MTS') LogFileName = LogDate[7, 4] : '-' : LogDate[1, 2] : '-' : LogDate[4, 2] : ' SAPBatchNo Log.csv' -Headers = 'Logging DTM' : @FM : 'WOMatKey' : @FM : ' SAPBatchNo' +Headers = 'Logging DTM' : @FM : 'WOMatKey' : @FM : ' SAPBatchNo' : @FM : 'Failed?' objLog = Logging_Services('NewLog', LogPath, LogFileName, CRLF$, Comma$, Headers, '', False$, False$) LoggingDTM = LogDate : ' ' : LogTime ; // Logging DTM @@ -103,6 +105,7 @@ If ( (TableName EQ 'WO_MAT') and (FieldNos EQ WO_MAT_SAP_BATCH_NO$) ) then LogData<1> = LoggingDTM LogData<2> = TableKey LogData<3> = FieldDataVals + LogDate<4> = '' Logging_Services('AppendLog', objLog, LogData, @RM, @FM) end @@ -131,7 +134,8 @@ Post: Unlock hSysLists, ServiceKeyID else Null RETURN END - + + If @RecCount EQ 0 then Mona_Services('SendBufferedStatus', 'GRP_OPENINSIGHT_MES_OP_FE_SAP_OUTBOUND', 'SetSAPBatchQueue', 'ok') Done = 0 LOOP READNEXT PostLogKey USING CursorVar ELSE Done = 1 @@ -146,14 +150,30 @@ Post: RecKey = FIELD(PostLogKey,'*',3,99) IF RowExists(LogFile,RecKey) THEN - errCode = '' UFParms = LogFile:@RM:RecKey:@RM:@RM UpdateRec = obj_Tables('ReadRec',UFParms) IF Get_Status(errCode) THEN + + If (Field(PostLogKey, '*', 1) EQ 'WO_MAT') AND (PostLogRec EQ WO_MAT_SAP_BATCH_NO$) then + AllowedTime = SRP_DateTime("AddMinutes", DateTime(), -5) + If (Field(PostLogKey, '*', 2)) LT AllowedTime then + Resp = Database_Services('UnlockKeyID', 'WO_MAT', PostLogRec) + If Resp NE False$ then + Mona_Services('SendBufferedStatus', 'GRP_OPENINSIGHT_MES_OP_FE_SAP_OUTBOUND', 'SetSAPBatchQueue', 'ok') + end else + Mona_Services('SendBufferedStatus', 'GRP_OPENINSIGHT_MES_OP_FE_SAP_OUTBOUND', 'SetSAPBatchQueue', 'critical') + LogData = '' + LogData<1> = LoggingDTM + LogData<2> = TableKey + LogData<3> = FieldDataVals + LogData<4> = 'Record failed to unlock.' + Logging_Services('AppendLog', objLog, LogData, @RM, @FM) + end + end + end Set_Status(0) ;* Cant't get the lock or other problem reading the log rec so just bail obj_Tables('UnlockRec',PlParms) - END ELSE FieldCnt = COUNT(PostLogRec,@VM) + (PostLogRec NE '')