diff --git a/MP-ADM/WebUserControls/mod_barcode.ascx.cs b/MP-ADM/WebUserControls/mod_barcode.ascx.cs index cc50b48c..1c445b2f 100644 --- a/MP-ADM/WebUserControls/mod_barcode.ascx.cs +++ b/MP-ADM/WebUserControls/mod_barcode.ascx.cs @@ -375,29 +375,58 @@ namespace MP_ADM.WebUserControls if (codOrd != "" && codArt != "" && codGruppo != "" && idxMacc != "" && qta > 0) { // setup parametri + bool trovato = false; decimal TCiclo = 0; int pzPallet = 1; DS_ProdTempi.ODLDataTable tabODL = new DS_ProdTempi.ODLDataTable(); - // controllos e richiesto ricerca preliminare x articolo + macchina - if (memLayer.ML.cdvb("mpAdm_TcByMachine")) + DS_ProdTempi.PromesseODLDataTable tabPODL = new DS_ProdTempi.PromesseODLDataTable(); + if (memLayer.ML.cdvb("mpAdm_TcFromPODL")) { - // recupero TC promessa da ultimo per articolo/macchina - tabODL = DataLayerObj.taODL.getByMacchinaArticolo(codArt, idxMacc); + // controllos e richiesto ricerca preliminare x articolo + macchina + if (memLayer.ML.cdvb("mpAdm_TcByMachine")) + { + // recupero TC promessa da ultimo per articolo/macchina + tabPODL = DataLayerObj.taPODL.getByMaccArt(idxMacc, codArt, "", false); + } + // se non lo trovo (o non ho cercato...) prendo da SOLO ARTICOLO + if (tabPODL.Rows.Count == 0) + { + tabPODL = DataLayerObj.taPODL.getByMaccArt("", codArt, "", false); + } + + // recupero TCiclo + if (tabPODL.Rows.Count > 0) + { + TCiclo = tabPODL[0].TCAssegnato; + pzPallet = tabPODL[0].PzPallet; + trovato = true; + } } - // se non lo trovo (o non ho cercato...) prendo da SOLO ARTICOLO - if (tabODL.Rows.Count == 0) + else { - tabODL = DataLayerObj.taODL.getByMacchinaArticolo(codArt, ""); + // controllos e richiesto ricerca preliminare x articolo + macchina + if (memLayer.ML.cdvb("mpAdm_TcByMachine")) + { + // recupero TC promessa da ultimo per articolo/macchina + tabODL = DataLayerObj.taODL.getByMacchinaArticolo(codArt, idxMacc); + } + // se non lo trovo (o non ho cercato...) prendo da SOLO ARTICOLO + if (tabODL.Rows.Count == 0) + { + tabODL = DataLayerObj.taODL.getByMacchinaArticolo(codArt, ""); + } + + // recupero TCiclo + if (tabODL.Rows.Count > 0) + { + TCiclo = tabODL[0].TCAssegnato; + pzPallet = tabODL[0].PzPallet; + trovato = true; + } } - // recupero TCiclo - if (tabODL.Rows.Count > 0) - { - TCiclo = tabODL[0].TCAssegnato; - pzPallet = tabODL[0].PzPallet; - } // se non lo trovo รจ valore default da config DB (oppure 59...) - else + if (!trovato) { TCiclo = memLayer.ML.CRI("TCicloStd"); }