diff --git a/IOB-UT-NEXT/RedisMan.cs b/IOB-UT-NEXT/RedisMan.cs
index 193c1987..d6c1e376 100644
--- a/IOB-UT-NEXT/RedisMan.cs
+++ b/IOB-UT-NEXT/RedisMan.cs
@@ -36,6 +36,7 @@ namespace IOB_UT_NEXT
{
initRedisConn();
initMemKeys();
+ setVetoPeriod();
}
///
@@ -54,6 +55,7 @@ namespace IOB_UT_NEXT
currCodIob = codIob;
currIobType = tipoIob;
initMemKeys();
+ setVetoPeriod();
// init oggetti gestiti
ServerMpStatus newSrvStatus = new ServerMpStatus()
{
@@ -1194,18 +1196,21 @@ namespace IOB_UT_NEXT
{
bool fatto = false;
// effettuo la scrittura nell'area di memoria indicata SE passato intervallo minimo di 60 sec
- bool doSave = true;
+ bool doSave = false;
if (LastKeySave.ContainsKey(memKey))
{
- if (DateTime.Now.Subtract(LastKeySave[memKey]).TotalSeconds < 60)
+ if (DateTime.Now.Subtract(LastKeySave[memKey]).TotalSeconds > vetoSavePeriod)
{
- doSave = false;
+ doSave = true;
}
}
else
{
LastKeySave.Add(memKey, DateTime.Now);
+ doSave = true;
}
+
+ // se scaduto veto periodo salvo
if (doSave)
{
cache.StringSet(memKey, message);
@@ -1430,6 +1435,11 @@ namespace IOB_UT_NEXT
///
protected string redIobChannel = "IobChannel";
+ ///
+ /// /Chiave varabili scambiate con IOB-MAN
+ ///
+ protected string redManKey = "";
+
///
/// Hash REDIS x dati server
///
@@ -1444,6 +1454,11 @@ namespace IOB_UT_NEXT
///
private Dictionary LastKeySave = new Dictionary();
+ ///
+ /// veriodo di veto salvataggio chaivi in REDIS quando inviate tramite pub/sub in realtime
+ ///
+ private int vetoSavePeriod = 10;
+
#endregion Private Fields
#region Private Properties
@@ -1493,6 +1508,7 @@ namespace IOB_UT_NEXT
{
// init dati di base...
redServKey = redHash($"MP");
+ redManKey = redHash($"MAN");
redIobKey = redHash($"IOB:{currCodIob}");
redIobTrackKey = redHash($"IOB:FluxLog:{currCodIob}");
redIobChannel = $"IobChannel_{currCodIob}";
@@ -1513,6 +1529,28 @@ namespace IOB_UT_NEXT
Logging.Instance.Info($"Apertura di un Redis Multiplexer");
}
+ ///
+ /// Impostazione periodo veto secondo il comportamento di IOB-MAN
+ ///
+ private void setVetoPeriod()
+ {
+ // cerco in redis la chiave di veto (scritta da IOB-MAN)
+ string rKey = $"{redManKey}:vetoSave";
+ string rawVal = getRSV(rKey);
+ // se la trovo la metto da qui
+ if (!string.IsNullOrEmpty(rawVal))
+ {
+ int.TryParse(rawVal, out vetoSavePeriod);
+ }
+ //se non la trovo di default รจ 15
+ else
+ {
+ vetoSavePeriod = 15;
+ // salvo in redis il valore impostato
+ setRSV(rKey, $"{vetoSavePeriod}");
+ }
+ }
+
#endregion Private Methods
}
}
\ No newline at end of file
diff --git a/IOB-UT-NEXT/Tools/TEMPLATE_ODL_USDT.csv b/IOB-UT-NEXT/Tools/TEMPLATE_ODL_USDT.csv
index 3e90e531..1f77e340 100644
--- a/IOB-UT-NEXT/Tools/TEMPLATE_ODL_USDT.csv
+++ b/IOB-UT-NEXT/Tools/TEMPLATE_ODL_USDT.csv
@@ -1,3 +1,4 @@
C;[[ODL]];
S;[[SERIE]];[[CODICE]];;;[[ALTEZZA]];0;[[QUOTA_USCITA]];
-P;[[CODICE_LUNGH]];[[QTA]];[[LUNGH]];90;90;;;[[CLIENTE]];
\ No newline at end of file
+P;[[CODICE_LUNGH]];[[QTA]];[[LUNGH]];90;90;;;[[CLIENTE]];
+B;10001;100;6000.0;1;0;O1;0
\ No newline at end of file
diff --git a/IOB-WIN-FTP/DATA/CONF/MAIN.ini b/IOB-WIN-FTP/DATA/CONF/MAIN.ini
index ebc0bef6..1494af89 100644
--- a/IOB-WIN-FTP/DATA/CONF/MAIN.ini
+++ b/IOB-WIN-FTP/DATA/CONF/MAIN.ini
@@ -19,4 +19,4 @@ CLI_INST=SteamWareSim
;STARTLIST=IMI_SONATEST
STARTLIST=FTP_SONATEST
-MAXCNC=10
+MAXCNC=10
\ No newline at end of file
diff --git a/IOB-WIN-MTC/DATA/CONF/MAIN.ini b/IOB-WIN-MTC/DATA/CONF/MAIN.ini
index c8d6337a..70338fc7 100644
--- a/IOB-WIN-MTC/DATA/CONF/MAIN.ini
+++ b/IOB-WIN-MTC/DATA/CONF/MAIN.ini
@@ -24,4 +24,4 @@ STARTLIST=3024
;NB: mettere copy always ai file di conf x fare test...
;STARTLIST=3024
-MAXCNC=10
+MAXCNC=10
\ No newline at end of file
diff --git a/IOB-WIN-OPC-UA/DATA/CONF/MAIN.ini b/IOB-WIN-OPC-UA/DATA/CONF/MAIN.ini
index 0ce8cc30..f7df2bee 100644
--- a/IOB-WIN-OPC-UA/DATA/CONF/MAIN.ini
+++ b/IOB-WIN-OPC-UA/DATA/CONF/MAIN.ini
@@ -31,4 +31,4 @@ CLI_INST=SteamWareSim
;STARTLIST=1042
STARTLIST=2015
-MAXCNC=10
+MAXCNC=10
\ No newline at end of file
diff --git a/IOB-WIN-PING/DATA/CONF/MAIN.ini b/IOB-WIN-PING/DATA/CONF/MAIN.ini
index ec3f6146..3da98a3a 100644
--- a/IOB-WIN-PING/DATA/CONF/MAIN.ini
+++ b/IOB-WIN-PING/DATA/CONF/MAIN.ini
@@ -18,4 +18,4 @@ STARTLIST=FTP-PING
;STARTLIST=SIMUL_08
;STARTLIST=3024-PING
-MAXCNC=10
+MAXCNC=10
\ No newline at end of file
diff --git a/IOB-WIN-WPS/DATA/CONF/MAIN.ini b/IOB-WIN-WPS/DATA/CONF/MAIN.ini
index 73c016b4..905ae245 100644
--- a/IOB-WIN-WPS/DATA/CONF/MAIN.ini
+++ b/IOB-WIN-WPS/DATA/CONF/MAIN.ini
@@ -22,4 +22,4 @@ CLI_INST=SteamWareSim
STARTLIST=3018
;STARTLIST=3019
-MAXCNC=10
+MAXCNC=10
\ No newline at end of file
diff --git a/IOB-WIN-WS/IobWs/EmmegiFPW.cs b/IOB-WIN-WS/IobWs/EmmegiFPW.cs
index 0731b4ba..a1071299 100644
--- a/IOB-WIN-WS/IobWs/EmmegiFPW.cs
+++ b/IOB-WIN-WS/IobWs/EmmegiFPW.cs
@@ -541,8 +541,7 @@ namespace IOB_WIN_WS.IobWs
string FileInPath = IOBConfFull.OptParGet("FileInPath");
if (!string.IsNullOrEmpty(FileInPath))
{
- string fullPath = Path.Combine("Tools", FileInPath);
- if (File.Exists(fullPath))
+ if (File.Exists(FileInPath))
{
// verifico presenza in cache REDIS
rawData = redisMan.getRSV(rKeyConf);
@@ -748,7 +747,7 @@ namespace IOB_WIN_WS.IobWs
//var lastJobId = getCurrProdData("currPODL", "");
if (!lastJobId.Equals(currStatusDTO.Workstation.JobId))
{
- startNewJob(currStatusDTO.Workstation.JobId, lastJobId);
+ startNewJob(lastJobId, currStatusDTO.Workstation.JobId);
// --> salvo come valore corrente...
upsertKey("currJobId", currStatusDTO.Workstation.JobId);
}
@@ -767,13 +766,13 @@ namespace IOB_WIN_WS.IobWs
/// - archiviazione file OPR*.csv
/// - TTL cache redis in disabilitazione
///
- /// Nuovo JobId
/// Vecchio JobId
- private void startNewJob(string jobIdNew, string jobIdOld)
+ /// Nuovo JobId
+ private void startNewJob(string jobIdOld, string jobIdNew)
{
+ lgInfo($"Richiesta startNewJob: {jobIdOld} --> {jobIdNew}");
// ipotesi JobId = OPRxx-yyyyy (se fosse PODL va modificato)
-
// eseguo chiusura ultimo ODL
// avvio PODL nuovo
diff --git a/IOB-WIN-WS/Tools/TEMPLATE_ODL_USDT.csv b/IOB-WIN-WS/Tools/TEMPLATE_ODL_USDT.csv
index 3e90e531..1f77e340 100644
--- a/IOB-WIN-WS/Tools/TEMPLATE_ODL_USDT.csv
+++ b/IOB-WIN-WS/Tools/TEMPLATE_ODL_USDT.csv
@@ -1,3 +1,4 @@
C;[[ODL]];
S;[[SERIE]];[[CODICE]];;;[[ALTEZZA]];0;[[QUOTA_USCITA]];
-P;[[CODICE_LUNGH]];[[QTA]];[[LUNGH]];90;90;;;[[CLIENTE]];
\ No newline at end of file
+P;[[CODICE_LUNGH]];[[QTA]];[[LUNGH]];90;90;;;[[CLIENTE]];
+B;10001;100;6000.0;1;0;O1;0
\ No newline at end of file