From 93a8bc23150f9218b9648f2ab3ef8a1df85a04ce Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 14 Oct 2022 15:40:08 +0200 Subject: [PATCH] Aggiunto filtro in procRunMode --- IOB-WIN-NEXT/IobOpcUa.cs | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/IOB-WIN-NEXT/IobOpcUa.cs b/IOB-WIN-NEXT/IobOpcUa.cs index 6ac49259..35922c3d 100644 --- a/IOB-WIN-NEXT/IobOpcUa.cs +++ b/IOB-WIN-NEXT/IobOpcUa.cs @@ -526,6 +526,8 @@ namespace IOB_WIN_NEXT // variabili RUN... se richiesto invio runMode if (opcUaParams.runModeSend) { + bool hasVetoLK = false; + bool hasVetoLKV = false; if (!string.IsNullOrEmpty(opcUaParams.keyRunMode)) { currRun = getDataItemValue(opcUaParams.keyRunMode); @@ -536,14 +538,29 @@ namespace IOB_WIN_NEXT string descr = $"RunModeVal"; DateTime locTStamp = DateTime.Now; sVal = $"Change: {locTStamp.ToString()} | descr: {descr} | Id: {opcUaParams.keyRunMode} | Val: {currRun}"; - accodaFLog(sVal, qEncodeFLog(descr, currRun)); - - // se richiesto provo a tradurre - if (opcUaParams.runModeTrad) + //cerco se sia un dato/valore + hasVetoLK = opcUaParams.fluxLogKeyValVeto.ContainsKey(descr); + if (hasVetoLK) { - string RunModeDescr = itemTranslation("RunMode", currRun); - descr = $"RunMode"; - accodaFLog(sVal, qEncodeFLog(descr, RunModeDescr)); + // se c'รจ controllo il valore... + var valList = opcUaParams.fluxLogKeyValVeto[descr]; + hasVetoLKV = valList.Contains(currRun); + } + if (hasVetoLKV) + { + lgTrace($"NON ACCODATO sample: veto trovato per {descr}/{currRun} in fluxLogKeyValVeto ", false); + } + else + { + accodaFLog(sVal, qEncodeFLog(descr, currRun)); + + // se richiesto provo a tradurre + if (opcUaParams.runModeTrad) + { + string RunModeDescr = itemTranslation("RunMode", currRun); + descr = $"RunMode"; + accodaFLog(sVal, qEncodeFLog(descr, RunModeDescr)); + } } } }