From d78a8bc772bd9a7a7e152633b7a55d24bcd452c4 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 13 Oct 2023 18:51:54 +0200 Subject: [PATCH] =?UTF-8?q?Update=20modalit=C3=A0=20conferma=20prod=20x=20?= =?UTF-8?q?macchine=20SLAVE=20al=20cambio=20ODL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MapoDb/DataLayer.cs | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/MapoDb/DataLayer.cs b/MapoDb/DataLayer.cs index b5c5171d..0556d106 100644 --- a/MapoDb/DataLayer.cs +++ b/MapoDb/DataLayer.cs @@ -763,6 +763,9 @@ namespace MapoDb currData = currODLRowTab(idxMacchina); if (currData.Count > 0) { + // preparo var x master/slave + bool isMachMaster = this.isMaster(idxMacchina); + DS_ProdTempi.Macchine2SlaveDataTable slaveList = isMachMaster ? taM2S.getByMaster(idxMacchina) : new DS_ProdTempi.Macchine2SlaveDataTable(); // registro un evento di inizio attrezzaggio (idxTipoEv = 2) int idxEvento = 2; Log.Info($"Invio evento ODL-SPLIT per macchina {idxMacchina}, evento {idxEvento}, articolo {currData[0].CodArticolo}, qty confermata {qtyConf}, nuova qty {qtyNew}", tipoLog.INFO); @@ -784,10 +787,18 @@ namespace MapoDb { // confermo al netto dei pezzi lasciati... fatto = confermaProdMacchinaFull(idxMacchinaSel, memLayer.ML.CRI("modoConfProd"), qtyConf, 0, 0, adesso); + foreach (var machine in slaveList) + { + confermaProdMacchinaFull(machine.IdxMacchinaSlave, memLayer.ML.CRI("modoConfProd"), qtyConf, 0, 0, adesso); + } } else { fatto = confermaProdMacchina(idxMacchinaSel, memLayer.ML.CRI("modoConfProd"), qtyConf, 0, adesso); + foreach (var machine in slaveList) + { + confermaProdMacchina(idxMacchinaSel, memLayer.ML.CRI("modoConfProd"), qtyConf, 0, adesso); + } } if (!fatto) { @@ -842,13 +853,11 @@ namespace MapoDb answ = "OK"; Log.Info($"Effettuato reset e ricalcoli x split ODL per macchina {idxMacchina}", tipoLog.INFO); // se รจ una master richiamo fix x child... - if (isMaster(idxMacchina)) + if (isMachMaster) { string ts = ""; string outData = ""; taODL.fixMachineSlave(idxMacchina, 30, 1); - // ciclo su ogni slave la gestione reinvio pezzi -->calcolo gli slave... - var slaveList = taM2S.getByMaster(idxMacchina); foreach (var machine in slaveList) { // invio chiusura attrezzaggio @@ -1865,7 +1874,7 @@ namespace MapoDb .ToList(); #if false - actValues.Sort((a, b) => (a.name.CompareTo(b.name))); + actValues.Sort((a, b) => (a.name.CompareTo(b.name))); #endif } catch (Exception exc) @@ -4066,7 +4075,8 @@ namespace MapoDb Log.Info($"upsertCurrObjItems | idxMacchina: {idxMacchina} | {innovations.Count} innovations"); // leggo i valori attuali... List actValues = getCurrObjItems(idxMacchina); - // per ogni valore passatomi faccio insert o update rispetto elenco valori correnti in REDIS + // per ogni valore passatomi faccio insert o update rispetto elenco valori correnti + // in REDIS foreach (var item in actValues) { // cerco nelle innovazioni SE CI SIA il valore...