diff --git a/Jenkinsfile b/Jenkinsfile
index b5797dab..96191757 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -17,7 +17,7 @@ pipeline {
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
script {
- withEnv(['NEXT_BUILD_NUMBER=777']) {
+ withEnv(['NEXT_BUILD_NUMBER=779']) {
// env.versionNumber = VersionNumber(versionNumberString : '5.3.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true)
env.versionNumber = VersionNumber(versionNumberString : '5.3.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
env.APP_NAME = 'MAPO'
diff --git a/MP-IO/Controllers/IOBController.cs b/MP-IO/Controllers/IOBController.cs
index 048d3def..69a0c25a 100644
--- a/MP-IO/Controllers/IOBController.cs
+++ b/MP-IO/Controllers/IOBController.cs
@@ -163,6 +163,29 @@ namespace MP_IO.Controllers
return answ;
}
///
+ /// Recupera COUNTER x macchina dal CONTEGGIO dei TCRecorded:
+ ///
+ /// GET: IOB/getCounterTCRec/5
+ ///
+ ///
+ ///
+ ///
+ public string getCounterTCRec(string id)
+ {
+ string answ = "";
+ // !!!FARE!!! ottimizzare e leggere da DB solo ogni tot minuti e x il resto usare redis?!?
+ try
+ {
+ answ = DataLayer.pzCounterTC(id).ToString();
+ }
+ catch (Exception exc)
+ {
+ logger.lg.scriviLog(string.Format("Errore in counter TC (get){0}{1}", Environment.NewLine, exc));
+ answ = "NO";
+ }
+ return answ;
+ }
+ ///
/// SALVA Counter x macchina:
///
/// GET: IOB/setCounter/5?counter=10
diff --git a/MapoDb/DataLayer.cs b/MapoDb/DataLayer.cs
index 5bdd6ed4..b673bb47 100644
--- a/MapoDb/DataLayer.cs
+++ b/MapoDb/DataLayer.cs
@@ -1056,14 +1056,13 @@ namespace MapoDb
// verifico il timeout che cambia a seconda che sia vero o falso insEnabled...
int tOutShort = memLayer.ML.cdvi("TmOut.MS.S");
int tOutLong = memLayer.ML.cdvi("TmOut.MS.L");
- int redDtMacTOut = (answ["insEnabled"].ToLower() == "true") ? tOutShort : tOutLong;
+ int redDtMacTOut = (answ["insEnabled"].ToLower() == "true") ? tOutShort : tOutLong;
// salvo in redis!
memLayer.ML.redSaveHashDict(currHash, answ, redDtMacTOut);
return answ;
}
#endregion
-
#region gestione dati macchina
///
@@ -1164,7 +1163,7 @@ namespace MapoDb
answ.Add("simplePallet", rigaMSFD.simplePallet.ToString());
answ.Add("palletChange", rigaMSFD.palletChange.ToString());
}
- catch(Exception exc)
+ catch (Exception exc)
{
logger.lg.scriviLog(string.Format("Errore in compilazione dati MSFD:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
}
@@ -1258,6 +1257,37 @@ namespace MapoDb
return answ;
}
+ ///
+ /// Restituisce il contapezzi come CONTEGGIO da TCRilevati per la macchina
+ ///
+ ///
+ ///
+ public static int pzCounterTC(string idxMacchina)
+ {
+ int answ = -1;
+ if (memLayer.ML.CRB("IOB_RedEnab"))
+ {
+
+ // conto la richiesta nel contatore REDIS
+ long nCall = memLayer.ML.setRCntI(mHash("COUNT:pCall:getCounterTC"));
+ //... se == nCall2Log scrivo su log e resetto
+ long nCall2Log = memLayer.ML.cdvi("nCall2Log");
+ if (nCall >= nCall2Log)
+ {
+ // loggo
+ logger.lg.scriviLog(string.Format("pzCounterTC: effettuate {0} call", nCall), tipoLog.INFO);
+ // resetto!
+ memLayer.ML.resetRCnt(mHash("COUNT:pCall:getCounterTC"));
+ }
+ }
+ try
+ {
+ answ = DataLayer.obj.taMSE.getByIdxMacchina(idxMacchina)[0].PezziProd;
+ }
+ catch
+ { }
+ return answ;
+ }
///
/// Restituisce il contapezzi salvato per la macchina
///
@@ -1266,6 +1296,7 @@ namespace MapoDb
public static int pzCounter(string idxMacchina)
{
int answ = -1;
+ string rCall = "";
if (memLayer.ML.CRB("IOB_RedEnab"))
{
@@ -1282,7 +1313,17 @@ namespace MapoDb
}
try
{
- int.TryParse(memLayer.ML.getRSV(pzCountHash(idxMacchina)), out answ);
+ rCall = memLayer.ML.getRSV(pzCountHash(idxMacchina));
+ if (rCall != "" && rCall != null)
+ {
+ int.TryParse(rCall, out answ);
+ }
+ else
+ {
+ answ = pzCounterTC(idxMacchina);
+ // salvo in redis...
+ saveCounter(idxMacchina, answ.ToString());
+ }
}
catch
{ }