Merge branch 'release/FixCounterDP_Tav_04'
This commit is contained in:
@@ -2614,66 +2614,73 @@ namespace IOB_WIN_FORM.Iob
|
||||
{
|
||||
if (checkServerAlive)
|
||||
{
|
||||
// leggo PRIMA ODL ....
|
||||
calcUrl = string.IsNullOrEmpty(forceMach) ? urlGetCurrODL : urlGetCurrODL.Replace(IOBConfFull.General.CodIOB, forceMach);
|
||||
lastIdxODL = utils.callUrl(calcUrl);
|
||||
lgTrace($"Lettura ODL dall'url {calcUrl} --> {lastIdxODL}");
|
||||
// se ho valori in coda da trasmettere uso dati REDIS
|
||||
if (forceCountRec)
|
||||
if (isMulti)
|
||||
{
|
||||
// uso dati da TCiclo registrati...
|
||||
calcUrl = string.IsNullOrEmpty(forceMach) ? urlGetPzCountRec : urlGetPzCountRec.Replace(IOBConfFull.General.CodIOB, forceMach);
|
||||
currServerCount = utils.callUrl(calcUrl);
|
||||
lgInfo($"Lettura contapezzi da TCiclo registrati dall'url {calcUrl} --> num pz: {currServerCount}");
|
||||
// disabilitato per macchina MULTI, da riportare logica da OpcUa ...
|
||||
}
|
||||
else
|
||||
{
|
||||
// uso il contapezzi dichiarato dall'IOB stesso
|
||||
calcUrl = string.IsNullOrEmpty(forceMach) ? urlGetPzCount : urlGetPzCount.Replace(IOBConfFull.General.CodIOB, forceMach);
|
||||
currServerCount = utils.callUrl(calcUrl);
|
||||
lgInfo($"Lettura contapezzi dall'url {calcUrl} --> {currServerCount}");
|
||||
}
|
||||
// controllo: SE NON HO ODL...
|
||||
if (string.IsNullOrEmpty(lastIdxODL) || lastIdxODL == "0")
|
||||
{
|
||||
// NON AGGIORNO
|
||||
contapezziIOB = contapezziPLC;
|
||||
lgError($"Errore lettura ODL (vuoto) resta tutto invariato contapezzi: {contapezziIOB} | contapezziPLC {contapezziPLC}");
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!string.IsNullOrEmpty(currServerCount))
|
||||
// leggo PRIMA ODL ....
|
||||
calcUrl = string.IsNullOrEmpty(forceMach) ? urlGetCurrODL : urlGetCurrODL.Replace(IOBConfFull.General.CodIOB, forceMach);
|
||||
lastIdxODL = utils.callUrl(calcUrl);
|
||||
lgTrace($"Lettura ODL dall'url {calcUrl} --> {lastIdxODL}");
|
||||
// se ho valori in coda da trasmettere uso dati REDIS
|
||||
if (forceCountRec)
|
||||
{
|
||||
// se "-1" resto a ultimo...
|
||||
if (currServerCount != "-1")
|
||||
{
|
||||
int newVal = -1;
|
||||
Int32.TryParse(currServerCount, out newVal);
|
||||
contapezziIOB = newVal > -1 ? newVal : contapezziIOB;
|
||||
lgInfo("Ricevuta conferma da server di {0} pezzi registrati per ODL", currServerCount);
|
||||
}
|
||||
else
|
||||
{
|
||||
// NON AGGIORNO
|
||||
contapezziIOB = contapezziPLC;
|
||||
lgError($"Errore lettura contapezzi (-1) - uso contapezziPLC --> {contapezziPLC}");
|
||||
}
|
||||
// uso dati da TCiclo registrati...
|
||||
calcUrl = string.IsNullOrEmpty(forceMach) ? urlGetPzCountRec : urlGetPzCountRec.Replace(IOBConfFull.General.CodIOB, forceMach);
|
||||
currServerCount = utils.callUrl(calcUrl);
|
||||
lgInfo($"Lettura contapezzi da TCiclo registrati dall'url {calcUrl} --> num pz: {currServerCount}");
|
||||
}
|
||||
else
|
||||
{
|
||||
// registro che ho UN NUOVO ODL
|
||||
lgInfo($"Lettura ODL in pzCntReload, currIdxODL {currIdxODL} --> lastIdxODL {lastIdxODL}");
|
||||
// se ODL differente e NUOVO è zero --> resetto!
|
||||
if (currIdxODL.ToString() != lastIdxODL && lastIdxODL == "0")
|
||||
{
|
||||
// cambiato ODL quindi reset...
|
||||
contapezziIOB = 0;
|
||||
lgInfo("Nuovo ODL==0, RESET contapezzi (-->ZERO)");
|
||||
}
|
||||
// uso il contapezzi dichiarato dall'IOB stesso
|
||||
calcUrl = string.IsNullOrEmpty(forceMach) ? urlGetPzCount : urlGetPzCount.Replace(IOBConfFull.General.CodIOB, forceMach);
|
||||
currServerCount = utils.callUrl(calcUrl);
|
||||
lgInfo($"Lettura contapezzi dall'url {calcUrl} --> {currServerCount}");
|
||||
}
|
||||
// controllo: SE NON HO ODL...
|
||||
if (string.IsNullOrEmpty(lastIdxODL) || lastIdxODL == "0")
|
||||
{
|
||||
// NON AGGIORNO
|
||||
contapezziIOB = contapezziPLC;
|
||||
lgError($"Errore lettura ODL (vuoto) resta tutto invariato contapezzi: {contapezziIOB} | contapezziPLC {contapezziPLC}");
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!string.IsNullOrEmpty(currServerCount))
|
||||
{
|
||||
// se "-1" resto a ultimo...
|
||||
if (currServerCount != "-1")
|
||||
{
|
||||
int newVal = -1;
|
||||
Int32.TryParse(currServerCount, out newVal);
|
||||
contapezziIOB = newVal > -1 ? newVal : contapezziIOB;
|
||||
lgInfo("Ricevuta conferma da server di {0} pezzi registrati per ODL", currServerCount);
|
||||
}
|
||||
else
|
||||
{
|
||||
// NON AGGIORNO
|
||||
contapezziIOB = contapezziPLC;
|
||||
lgError($"Errore lettura contapezzi (-1) - uso contapezziPLC --> {contapezziPLC}");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// registro che ho UN NUOVO ODL
|
||||
lgInfo($"Lettura ODL in pzCntReload, currIdxODL {currIdxODL} --> lastIdxODL {lastIdxODL}");
|
||||
// se ODL differente e NUOVO è zero --> resetto!
|
||||
if (currIdxODL.ToString() != lastIdxODL && lastIdxODL == "0")
|
||||
{
|
||||
// cambiato ODL quindi reset...
|
||||
contapezziIOB = 0;
|
||||
lgInfo("Nuovo ODL==0, RESET contapezzi (-->ZERO)");
|
||||
}
|
||||
}
|
||||
// provo a salvare nuovo ODL
|
||||
int.TryParse(lastIdxODL, out currIdxODL);
|
||||
lgInfo($"ODL | currIdxODL: {currIdxODL}");
|
||||
}
|
||||
// provo a salvare nuovo ODL
|
||||
int.TryParse(lastIdxODL, out currIdxODL);
|
||||
lgInfo($"ODL | currIdxODL: {currIdxODL}");
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user