diff --git a/Jenkinsfile b/Jenkinsfile index bb95140d..30e30f98 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -13,7 +13,7 @@ pipeline { steps { /* calcolo numero versione... diverso x branch MASTER/DEVELOP */ script { - withEnv(['NEXT_BUILD_NUMBER=1363']) { + withEnv(['NEXT_BUILD_NUMBER=1366']) { // env.versionNumber = VersionNumber(versionNumberString : '6.12.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true) env.versionNumber = VersionNumber(versionNumberString : '6.12.${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-MAG/BaseUserControl.cs b/MP-MAG/BaseUserControl.cs index 9b0b8a8c..02d7f8c6 100644 --- a/MP-MAG/BaseUserControl.cs +++ b/MP-MAG/BaseUserControl.cs @@ -346,6 +346,17 @@ namespace MP_MAG } } + /// + /// titolo pagina + /// + public string titolo + { + get + { + return devicesAuthProxy.getPage(Request.Url).Replace(".aspx", ""); + } + } + #endregion Public Properties #region Public Methods @@ -409,7 +420,24 @@ namespace MP_MAG bool answ = false; try { +#if false currProdData = getProdDataDb; +#endif + // rileggo + prodPrintData newProdPrintData = MagDataLayerObj.currProdPrintData; + // calcolo + var tabOdl = DataLayerObj.taODL.getByIdx(newProdPrintData.IdxOdl, false); + if (tabOdl.Rows.Count > 0) + { + newProdPrintData.QtaOdl = tabOdl[0].NumPezzi; + } + var tabDatiProdAct = DataLayerObj.taStatoProd.GetData(newProdPrintData.IdxMacchina, DateTime.Now); + if (tabDatiProdAct.Rows.Count > 0) + { + newProdPrintData.QtaConf = tabDatiProdAct[0].PzConfBuoni; + } + // salvo in oggetto dedicato... + MagDataLayerObj.currProdPrintData = newProdPrintData; answ = true; } catch diff --git a/MP-MAG/Content/Site.css b/MP-MAG/Content/Site.css index e847d045..f648b114 100644 --- a/MP-MAG/Content/Site.css +++ b/MP-MAG/Content/Site.css @@ -135,10 +135,10 @@ body { text-align: center; } .shortcuts .shortcut { - min-width: 9rem; - min-height: 5rem; + min-width: 12rem; + min-height: 6rem; display: inline-block; - padding: 0.66666667rem 0; + padding: 1rem 0; margin: 0 2px 1em; vertical-align: top; text-decoration: none; @@ -151,13 +151,13 @@ body { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffeeeeee', GradientType=0); border: 1px solid #ddd; box-sizing: border-box; - border-radius: 0.5rem; + border-radius: 0.75rem; } .shortcuts .shortcut-sm { - min-width: 4.5rem; - min-height: 3rem; + min-width: 6.75rem; + min-height: 4.5rem; display: inline-block; - padding: 0.25rem 0; + padding: 0.375rem 0; margin: 0 2px 1em; vertical-align: top; text-decoration: none; @@ -170,20 +170,20 @@ body { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffeeeeee', GradientType=0); border: 1px solid #ddd; box-sizing: border-box; - border-radius: 0.5rem; + border-radius: 0.75rem; } .shortcuts .shortcut .shortcut-icon { width: 100%; margin-top: 0; margin-bottom: 0; - font-size: 2rem; + font-size: 3rem; color: #333; } .shortcuts .shortcut-sm .shortcut-icon { width: 100%; margin-top: 0; margin-bottom: 0; - font-size: 2rem; + font-size: 3rem; color: #333; } .shortcuts .shortcut:hover { diff --git a/MP-MAG/Content/Site.less b/MP-MAG/Content/Site.less index 3c8d8dcb..9ce6bc73 100644 --- a/MP-MAG/Content/Site.less +++ b/MP-MAG/Content/Site.less @@ -163,15 +163,15 @@ body { [ Shortcuts / .shortcuts ] */ -@blSCut: 1rem; +@blSCut: 1.5rem; .shortcuts { text-align: center; } .shortcuts .shortcut { - min-width: @blSCut * 9; - min-height: @blSCut * 5; + min-width: @blSCut * 8; + min-height: @blSCut * 4; display: inline-block; padding: @blSCut*2/3 0; margin: 0 2px 1em; diff --git a/MP-MAG/Content/Site.min.css b/MP-MAG/Content/Site.min.css index ed4e6452..c855504d 100644 --- a/MP-MAG/Content/Site.min.css +++ b/MP-MAG/Content/Site.min.css @@ -1 +1 @@ -body{font-family:'Roboto Condensed',sans-serif;padding-top:50px;padding-bottom:20px;}.textCondens{font-family:'Open Sans Condensed',sans-serif;}.textNormal{font-family:'Roboto',sans-serif;}@media screen and (min-width:768px){.jumbotron{margin-top:20px;}.body-content{padding:0;}body{font-family:'Roboto',sans-serif;}}@media(max-width:992px){.container{width:100%;}}.border-thick{border-width:3px !important;}.flashColor{border:3px solid #00f;-webkit-animation-name:blueFlash;-webkit-animation-duration:.5s;-webkit-animation-timing-function:linear;-webkit-animation-delay:0s;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:alternate;animation-name:blueFlash;animation-duration:.5s;animation-timing-function:linear;animation-delay:0s;animation-iteration-count:infinite;animation-direction:alternate;}@-webkit-keyframes blueFlash{0%{border-color:#c4dbff;}25%{border-color:#9dc4ff;}50%{border-color:#5ca5ff;}75%{border-color:#1b82ff;}100%{border-color:#005ccc;}}.bigText{font-size:1.3em;}.smallText{font-size:.8em;}.dl-horizontal dt{white-space:normal;}.deleted{text-decoration:line-through;}.padZL{padding-left:.2em;}.padZR{padding-right:.2em;}.padZRL{padding-left:.2em;padding-right:.2em;}.colAlt{color:#c93;}.fontBig{font-size:2em;}.tNote{color:#8a8a8a;font-style:italic;}.tNoWrap{white-space:nowrap;}.navbar{min-height:0;color:#696969;}.pagination{margin:5px 0;}.pageSelDD{width:6em;}.zeroWidth{width:0;}.shortcuts{text-align:center;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:.66666667rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:.25rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;} \ No newline at end of file +body{font-family:'Roboto Condensed',sans-serif;padding-top:50px;padding-bottom:20px;}.textCondens{font-family:'Open Sans Condensed',sans-serif;}.textNormal{font-family:'Roboto',sans-serif;}@media screen and (min-width:768px){.jumbotron{margin-top:20px;}.body-content{padding:0;}body{font-family:'Roboto',sans-serif;}}@media(max-width:992px){.container{width:100%;}}.border-thick{border-width:3px !important;}.flashColor{border:3px solid #00f;-webkit-animation-name:blueFlash;-webkit-animation-duration:.5s;-webkit-animation-timing-function:linear;-webkit-animation-delay:0s;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:alternate;animation-name:blueFlash;animation-duration:.5s;animation-timing-function:linear;animation-delay:0s;animation-iteration-count:infinite;animation-direction:alternate;}@-webkit-keyframes blueFlash{0%{border-color:#c4dbff;}25%{border-color:#9dc4ff;}50%{border-color:#5ca5ff;}75%{border-color:#1b82ff;}100%{border-color:#005ccc;}}.bigText{font-size:1.3em;}.smallText{font-size:.8em;}.dl-horizontal dt{white-space:normal;}.deleted{text-decoration:line-through;}.padZL{padding-left:.2em;}.padZR{padding-right:.2em;}.padZRL{padding-left:.2em;padding-right:.2em;}.colAlt{color:#c93;}.fontBig{font-size:2em;}.tNote{color:#8a8a8a;font-style:italic;}.tNoWrap{white-space:nowrap;}.navbar{min-height:0;color:#696969;}.pagination{margin:5px 0;}.pageSelDD{width:6em;}.zeroWidth{width:0;}.shortcuts{text-align:center;}.shortcuts .shortcut{min-width:12rem;min-height:6rem;display:inline-block;padding:1rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.75rem;}.shortcuts .shortcut-sm{min-width:6.75rem;min-height:4.5rem;display:inline-block;padding:.375rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.75rem;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:3rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:3rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;} \ No newline at end of file diff --git a/MP-MAG/Controllers/PrintQueueController.cs b/MP-MAG/Controllers/PrintQueueController.cs index 8ca42e7e..5c1d41b4 100644 --- a/MP-MAG/Controllers/PrintQueueController.cs +++ b/MP-MAG/Controllers/PrintQueueController.cs @@ -14,14 +14,14 @@ namespace MP_MAG.Controllers { public class PrintQueueController : ApiController { - #region Public Fields + #region Protected Fields /// - /// chaive redis x cache conteggio coda PJQ + /// oggetto static/singleton per fare chiamate sul datalayer /// - public static string redQueueCount = "MP-CTRACK:MAG:PJQ"; + protected MagDataLayer MagDataLayerObj = new MagDataLayer(); - #endregion Public Fields + #endregion Protected Fields #region Protected Properties @@ -34,7 +34,7 @@ namespace MP_MAG.Controllers { int answ = 0; // resetto conteggio in redis... - DS_Report.PrintJobQueueDataTable nextJob = MagDataLayer.man.taPJQ.getWaiting(); + DS_Report.PrintJobQueueDataTable nextJob = MagDataLayerObj.taPJQ.getWaiting(); if (nextJob != null) { answ = nextJob.Count; @@ -60,17 +60,17 @@ namespace MP_MAG.Controllers switch (tipoReport) { case MagData.reportRichiesto.CartellinoFinitiOdette: - tab = MagDataLayer.man.taCFOdette.GetData(keyParam); + tab = MagDataLayerObj.taCFOdette.GetData(keyParam); answ.Add("stp_prt_CartellinoFinitiOdette", tab); break; case MagData.reportRichiesto.CartellinoPedane: - tab = MagDataLayer.man.taCPed.GetData(keyParam); + tab = MagDataLayerObj.taCPed.GetData(keyParam); answ.Add("stp_prt_CartellinoPedane", tab); break; case MagData.reportRichiesto.CartellinoSemilavorati: - tab = MagDataLayer.man.taCSemil.GetData(keyParam); + tab = MagDataLayerObj.taCSemil.GetData(keyParam); answ.Add("stp_prt_CartellinoSemilavorati", tab); break; @@ -92,7 +92,7 @@ namespace MP_MAG.Controllers protected MagData.reportRichiesto reportByTemplate(string queueName) { MagData.reportRichiesto report = MagData.reportRichiesto.ND; - var qConf = MagDataLayer.man.queueConfRedis.Find(x => x.name == queueName); + var qConf = MagDataLayerObj.queueConfRedis.Find(x => x.name == queueName); if (qConf != null) { // decodifico @@ -119,7 +119,7 @@ namespace MP_MAG.Controllers { // restituisco... int answ = 0; - string redVal = memLayer.ML.getRSV(redQueueCount); + string redVal = memLayer.ML.getRSV(MagDataLayer.redQueueCount); // cerco in redis se ci sia chiave.. if (!string.IsNullOrEmpty(redVal)) { @@ -131,7 +131,7 @@ namespace MP_MAG.Controllers int ttlPrintCount = memLayer.ML.CRI("ttlPrintCount"); // recupero da dbe e salvo answ = countWaitingDb; - memLayer.ML.setRSV(redQueueCount, $"{answ}", ttlPrintCount); + memLayer.ML.setRSV(MagDataLayer.redQueueCount, $"{answ}", ttlPrintCount); } return answ; } @@ -146,7 +146,7 @@ namespace MP_MAG.Controllers { List answ = new List(); // recupero da DB... - DS_Report.PrintJobQueueDataTable tabPJQ = MagDataLayer.man.taPJQ.getByQueue(id); + DS_Report.PrintJobQueueDataTable tabPJQ = MagDataLayerObj.taPJQ.getByQueue(id); if (tabPJQ.Count > 0) { reportData currReport = new reportData(); @@ -154,11 +154,11 @@ namespace MP_MAG.Controllers // ciclo! foreach (var pjReq in tabPJQ) { - currRdsData = caricaDati(reportByTemplate(pjReq.printerQueue), pjReq.keyParam); + currRdsData = caricaDati(reportByTemplate(pjReq.prtName), pjReq.KeyParam); // in base alla coda --> recupero i dati currReport = new reportData() { - ticketNum = pjReq.IdxPrintJob.ToString(), + ticketNum = $"{pjReq.IdxPrintJob}", rdsData = currRdsData }; answ.Add(currReport); @@ -196,9 +196,9 @@ namespace MP_MAG.Controllers { int idxPJQ = 0; int.TryParse(printAnsw.ticketNum, out idxPJQ); - MagDataLayer.man.taPJQ.updateStato(idxPJQ, printAnsw.newStatus); + MagDataLayerObj.taPJQ.updateStato(idxPJQ, printAnsw.newStatus); // resetto conteggio in redis... - memLayer.ML.setRSV(redQueueCount, countWaitingDb.ToString(), 30); + memLayer.ML.setRSV(MagDataLayer.redQueueCount, $"{countWaitingDb}", 30); answ = "OK"; } } diff --git a/MP-MAG/Controllers/PrintQueueLenController.cs b/MP-MAG/Controllers/PrintQueueLenController.cs new file mode 100644 index 00000000..2a81ce51 --- /dev/null +++ b/MP-MAG/Controllers/PrintQueueLenController.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Net.Http; +using System.Web.Http; + +using MagData; +using Newtonsoft.Json; +using SteamWare; + +namespace MP_MAG.Controllers +{ + public class PrintQueueLenController : ApiController + { + #region Protected Fields + + /// + /// oggetto static/singleton per fare chiamate sul datalayer + /// + protected MagDataLayer MagDataLayerObj = new MagDataLayer(); + + #endregion Protected Fields + + #region Protected Properties + + /// + /// Conteggio elementi in attesa stampa da DB + /// + protected int countWaitingDb + { + get + { + int answ = 0; + // resetto conteggio in redis... + DS_Report.PrintJobQueueDataTable tabPJQ = MagDataLayerObj.taPJQ.getWaiting(); + if (tabPJQ != null) + { + answ = tabPJQ.Count; + } + return answ; + } + } + + #endregion Protected Properties + + #region Protected Methods + + /// + /// Conteggio elementi in attesa stampa da DB che fanno parte di un SET di queue + /// + protected int countWaitingDbQueueMult(string queueSet) + { + int answ = 0; + // resetto conteggio in redis... + DS_Report.PrintJobQueueDataTable tabPJQ = MagDataLayerObj.taPJQ.getWaiting(); + if (tabPJQ != null) + { + var selQueue = tabPJQ.Where(x => queueSet.Contains($"|{x.prtName}|")).ToList(); + if (selQueue != null) + { + answ = selQueue.Count; + } + } + return answ; + } + + #endregion Protected Methods + + #region Public Methods + + /// + /// Restituisce numero jobs aperti (stato = 0...), se 0 = NESSUNO + /// GET: api/PrintQueue + /// + /// + public int Get() + { + // restituisco... + int answ = 0; + string redVal = memLayer.ML.getRSV(MagDataLayer.redQueueCount); + // cerco in redis se ci sia chiave.. + if (!string.IsNullOrEmpty(redVal)) + { + // recupero + int.TryParse(redVal, out answ); + } + else + { + // recupero da db e salvo + answ = countWaitingDb; + memLayer.ML.setRSV(MagDataLayer.redQueueCount, $"{answ}", memLayer.ML.CRI("cacheQueueSec")); + // chiudo gli zombie (stampe non chiuse)... + MagDataLayerObj.taPJQ.chiudiZoombie(DateTime.Now.AddMilliseconds(-memLayer.ML.CRI("zombieMsTime"))); + } + return answ; + } + + /// + /// Restituisce numero jobs aperti (stato = 0...), se 0 = NESSUNO + /// GET: api/PrintQueue?queueList=|queueOffline| + /// + /// Elenco code delimitate da |..| + /// + public int Get(string queueList) + { + // restituisco... + int answ = 0; + string redVal = memLayer.ML.getRSV($"{MagDataLayer.redQueueCountSet}:{queueList}"); + // cerco in redis se ci sia chiave.. + if (!string.IsNullOrEmpty(redVal)) + { + // recupero + int.TryParse(redVal, out answ); + } + else + { + // recupero da db e salvo + answ = countWaitingDbQueueMult(queueList); + memLayer.ML.setRSV($"{MagDataLayer.redQueueCountSet}:{queueList}", $"{answ}", memLayer.ML.CRI("cacheQueueSec")); + // chiudo gli zombie (stampe non chiuse)... + MagDataLayerObj.taPJQ.chiudiZoombie(DateTime.Now.AddMilliseconds(-memLayer.ML.CRI("zombieMsTime"))); + } + return answ; + } + + #endregion Public Methods + } +} \ No newline at end of file diff --git a/MP-MAG/MP-MAG.csproj b/MP-MAG/MP-MAG.csproj index 2c37d805..b21c0956 100644 --- a/MP-MAG/MP-MAG.csproj +++ b/MP-MAG/MP-MAG.csproj @@ -283,6 +283,7 @@ + Global.asax @@ -851,9 +852,15 @@ - - - + + Always + + + Always + + + Always + diff --git a/MP-MAG/Reports/CartellinoFinitiOdette.rdlc b/MP-MAG/Reports/CartellinoFinitiOdette.rdlc index 062c8426..8858eb8e 100644 --- a/MP-MAG/Reports/CartellinoFinitiOdette.rdlc +++ b/MP-MAG/Reports/CartellinoFinitiOdette.rdlc @@ -1,1416 +1,6 @@  - - - - - - - - 19cm - - - - - 12.8cm - - - - - - - - - - - true - - - - - =Fields!Campo1_2.Value - - - - - - - true - - - - - =Fields!Campo1_1.Value - - - - - - - true - - - - - =Fields!Campo1_3.Value - - - - - - - true - - - - - =Fields!Campo1_4.Value - - - - - - - ContentsOnly - 0.1cm - 1.9cm - 9.2cm - - - - - - - true - - - - - =Fields!Campo2_4.Value - - - - - - - true - - - - - =Fields!Campo2_2.Value - - - - - - - true - - - - - =Fields!Campo2_3.Value - - - - - - - ContentsOnly - 9.4cm - 1.9cm - 9.5cm - 1 - - 0.5pt - - - - - 6.4cm - 0cm - 19cm - 3 - - 0.5pt - - - - - 1.9cm - 0cm - 19cm - 4 - - 0.5pt - - - - - 3.9cm - 9.4cm - -3.89577cm - 0cm - 5 - - 0.5pt - - - - - 12.8cm - 9.4cm - -6.4cm - 0cm - 6 - - 0.5pt - - - - - 8.8cm - 0cm - 9.37989cm - 7 - - 0.5pt - - - - - 10.8cm - 0cm - 9.37989cm - 8 - - 0.5pt - - - - - 7.6cm - 9.4cm - 0cm - 9.6cm - 9 - - 0.5pt - - - - - 10.8cm - 9.4cm - 0cm - 9.6cm - 10 - - 0.5pt - - - - - 9.5cm - 9.4cm - 0cm - 9.6cm - 11 - - 0.5pt - - - - - true - - - - - =Fields!Campo3_1.Value - - - - - - - 2.9cm - 9.4cm - 0cm - 9.6cm - 13 - - 0.5pt - - - - - true - - - - - =Fields!Campo4_1.Value - - - - - - - true - - - - - =Fields!Campo5_1.Value - - - - - - - true - - - - - =Fields!Campo3_2.Value - - - - - - - true - - - - - =Fields!Campo4_2.Value - - - - - - - textbox7 - 2.2cm - 9.5cm - 0.55889cm - 9.4cm - 17 - - - - true - - - - - =Fields!Campo8_1.Value - - - - - - - true - - - - - =Fields!Campo8_2.Value - - - - - - - 3.97cm - 2.8cm - 1cm - 13.2cm - 19 - - - Top - 0.5pt - 0.5pt - - - - true - - - - - =Fields!Campo9_1.Value - - - - - - - true - - - - - =Fields!Campo9_2.Value - - - - - - - 6.4cm - 2.39688cm - 0.84125cm - 6.70312cm - 21 - - - - true - - - - - =Fields!Campo10_1.Value - - - - - - - true - - - - - =Fields!Campo10_2.Value - - - - - - - true - - - - - =Fields!Campo13_1.Value - - - - - - - true - - - - - =Fields!Campo13_2.Value - - - - - - - 9.9cm - 9.4cm - 0.8cm - 3.5cm - 25 - - - - 9.5cm - 13cm - 1.3cm - 0cm - 26 - - 0.5pt - - - - - 3.9cm - 12.6cm - -1cm - 0cm - 27 - - 0.5pt - - - - - 3.9cm - 16.2cm - -1cm - 0cm - 28 - - 0.5pt - - - - - true - - - - - =Fields!Campo6_1.Value - - - - - - - true - - - - - =Fields!Campo7_1.Value - - - - - - - true - - - - - =Fields!Campo11_2_1.Value - - - - - - - true - - - - - =Fields!Campo14_1.Value - - - - - - - true - - - - - =Fields!Campo16_1.Value - - - - - - - true - - - - - =Fields!Campo15_1.Value - - - - - - - true - - - - - =Fields!Campo12_1.Value - - - - - - - true - - - - - =Fields!Campo12_2.Value - - - - - - - Campo12_2 - 8.8cm - 2.8cm - 0.6cm - 6.3cm - 36 - - - - true - - - - - =Fields!Campo15_2.Value - - - - - - - Campo15_2 - 10.8cm - 3.6923cm - 0.6cm - 5.40771cm - 37 - - - - true - - - - - =Fields!Campo16_2.Value - - - - - - - Campo16_2 - 10.8cm - 13.80827cm - 0.6cm - 5.09173cm - 38 - - - - true - - - - - =Fields!Campo14_2.Value - - - - - - - true - - - - - =Fields!Campo11_2_2.Value - - - - - - - Campo11_2_2 - 8.07639cm - 10.95375cm - 1.22361cm - 6.2cm - 40 - - - - true - - - - - =Fields!Campo5_2.Value - - - - - - - Campo5_2 - 3.2cm - 9.5cm - 0.7cm - 3cm - 41 - - - - true - - - - - =Fields!Campo6_2.Value - - - - - - - Campo6_2 - 3.2cm - 12.7cm - 0.7cm - 3.4cm - 42 - - - - true - - - - - =Fields!Campo7_2.Value - - - - - - - Campo7_2 - 3.2cm - 16.3cm - 0.7cm - 2.6cm - 43 - - - - External - =Replace(Parameters!BarcodeBaseURL.Value.ToString(),"BARCODE",Fields!Campo8_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value - -'=Parameters!QRCodeBaseURL.Value.ToString() & ":['" & Fields!StackID.Value.ToString() & "']}" - FitProportional - 5.1cm - 2.8cm - 1.2cm - 13.2cm - 44 - - =iif(Fields!Campo8_3.Value="",True,False) - - - - - - - External - =Replace(Parameters!BarcodeBaseURL.Value.ToString(),"BARCODE",Fields!Campo15_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value - FitProportional - 11.5cm - 0.6cm - 1.2cm - 8.4cm - 45 - - =iif(Fields!Campo15_3.Value="",True,False) - - - - - - - External - =Replace(Parameters!BarcodeBaseURL.Value.ToString(),"BARCODE",Fields!Campo12_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value - FitProportional - 9.5cm - 0.6cm - 1.2cm - 8.4cm - 46 - - =iif(Fields!Campo12_3.Value="",True,False) - - - - - - - External - =Replace(Parameters!BarcodeBaseURL.Value.ToString(),"BARCODE",Fields!Campo16_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value - FitProportional - 11.5cm - 9.94979cm - 1.2cm - 8.4cm - 47 - - =iif(Fields!Campo16_3.Value="",True,False) - - - - - - - External - =Replace(Parameters!BarcodeBaseURL.Value.ToString(), "BARCODE", Fields!Campo9_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value -' "?showVal=false&h=" + Parameters!BarcodeHeight.Value non mostra valore sotto barcode e definisce altezza Barcode da services - FitProportional - 7.41764cm - 0.6cm - 1.2cm - 8.4cm - 48 - - =iif(Fields!Campo9_3.Value = "", True, False) - - - - - - - External - =Replace(Parameters!BarcodeBaseURL.Value.ToString(), "BARCODE", Fields!Campo3_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value - FitProportional - 2.6cm - 0.6cm - 1.2cm - 8.4cm - 49 - - =iif(Fields!Campo3_3.Value = "", True, False) - - - - - - - ContentsOnly - 12.8cm - 19cm - - - - - - true - - - - 12.8cm - + + + + + + true + + + + + =Fields!Campo1_1.Value + + + + + + + true + + + + + =Fields!Campo1_3.Value + + + + + + + true + + + + + =Fields!Campo1_4.Value + + + + + + + ContentsOnly + 0.1cm + 1.9cm + 9.2cm + + + + + + + true + + + + + =Fields!Campo2_4.Value + + + + + + + true + + + + + =Fields!Campo2_2.Value + + + + + + + true + + + + + =Fields!Campo2_3.Value + + + + + + + ContentsOnly + 9.4cm + 1.9cm + 9.5cm + 1 + + 0.5pt + + + + + 6.4cm + 0cm + 19cm + 3 + + 0.5pt + + + + + 1.9cm + 0cm + 19cm + 4 + + 0.5pt + + + + + 3.9cm + 9.4cm + -3.89577cm + 0cm + 5 + + 0.5pt + + + + + 12.8cm + 9.4cm + -6.4cm + 0cm + 6 + + 0.5pt + + + + + 8.8cm + 0cm + 9.37989cm + 7 + + 0.5pt + + + + + 10.8cm + 0cm + 9.37989cm + 8 + + 0.5pt + + + + + 7.6cm + 9.4cm + 0cm + 9.6cm + 9 + + 0.5pt + + + + + 10.8cm + 9.4cm + 0cm + 9.6cm + 10 + + 0.5pt + + + + + 9.5cm + 9.4cm + 0cm + 9.6cm + 11 + + 0.5pt + + + + + true + + + + + =Fields!Campo3_1.Value + + + + + + + 2.9cm + 9.4cm + 0cm + 9.6cm + 13 + + 0.5pt + + + + + true + + + + + =Fields!Campo4_1.Value + + + + + + + true + + + + + =Fields!Campo5_1.Value + + + + + + + true + + + + + =Fields!Campo3_2.Value + + + + + + + true + + + + + =Fields!Campo4_2.Value + + + + + + + textbox7 + 2.2cm + 9.5cm + 0.55889cm + 9.4cm + 17 + + + + true + + + + + =Fields!Campo8_1.Value + + + + + + + true + + + + + =Fields!Campo8_2.Value + + + + + + + 3.97cm + 2.8cm + 1cm + 13.2cm + 19 + + + Top + 0.5pt + 0.5pt + + + + true + + + + + =Fields!Campo9_1.Value + + + + + + + true + + + + + =Fields!Campo9_2.Value + + + + + + + 6.4cm + 2.39688cm + 0.84125cm + 6.70312cm + 21 + + + + true + + + + + =Fields!Campo10_1.Value + + + + + + + true + + + + + =Fields!Campo10_2.Value + + + + + + + true + + + + + =Fields!Campo13_1.Value + + + + + + + true + + + + + =Fields!Campo13_2.Value + + + + + + + 9.9cm + 9.4cm + 0.8cm + 3.5cm + 25 + + + + 9.5cm + 13cm + 1.3cm + 0cm + 26 + + 0.5pt + + + + + 3.9cm + 12.6cm + -1cm + 0cm + 27 + + 0.5pt + + + + + 3.9cm + 16.2cm + -1cm + 0cm + 28 + + 0.5pt + + + + + true + + + + + =Fields!Campo6_1.Value + + + + + + + true + + + + + =Fields!Campo7_1.Value + + + + + + + true + + + + + =Fields!Campo11_2_1.Value + + + + + + + true + + + + + =Fields!Campo14_1.Value + + + + + + + true + + + + + =Fields!Campo16_1.Value + + + + + + + true + + + + + =Fields!Campo15_1.Value + + + + + + + true + + + + + =Fields!Campo12_1.Value + + + + + + + true + + + + + =Fields!Campo12_2.Value + + + + + + + Campo12_2 + 8.8cm + 2.8cm + 0.6cm + 6.3cm + 36 + + + + true + + + + + =Fields!Campo15_2.Value + + + + + + + Campo15_2 + 10.8cm + 3.6923cm + 0.6cm + 5.40771cm + 37 + + + + true + + + + + =Fields!Campo16_2.Value + + + + + + + Campo16_2 + 10.8cm + 13.80827cm + 0.6cm + 5.09173cm + 38 + + + + true + + + + + =Fields!Campo14_2.Value + + + + + + + true + + + + + =Fields!Campo11_2_2.Value + + + + + + + Campo11_2_2 + 8.07639cm + 10.95375cm + 1.22361cm + 6.2cm + 40 + + + + true + + + + + =Fields!Campo5_2.Value + + + + + + + Campo5_2 + 3.2cm + 9.5cm + 0.7cm + 3cm + 41 + + + + true + + + + + =Fields!Campo6_2.Value + + + + + + + Campo6_2 + 3.2cm + 12.7cm + 0.7cm + 3.4cm + 42 + + + + true + + + + + =Fields!Campo7_2.Value + + + + + + + Campo7_2 + 3.2cm + 16.3cm + 0.7cm + 2.6cm + 43 + + + + External + =Replace(Fields!BarcodeBaseUrl.Value.ToString(),"BARCODE",Fields!Campo8_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value + +'=Parameters!QRCodeBaseURL.Value.ToString() & ":['" & Fields!StackID.Value.ToString() & "']}" + FitProportional + 5.1cm + 2.8cm + 1.2cm + 13.2cm + 44 + + =iif(Fields!Campo8_3.Value="",True,False) + + + + + + + External + =Replace(Fields!BarcodeBaseUrl.Value.ToString(),"BARCODE",Fields!Campo15_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value + FitProportional + 11.5cm + 0.6cm + 1.2cm + 8.4cm + 45 + + =iif(Fields!Campo15_3.Value="",True,False) + + + + + + + External + =Replace(Fields!BarcodeBaseUrl.Value.ToString(),"BARCODE",Fields!Campo12_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value + FitProportional + 9.5cm + 0.6cm + 1.2cm + 8.4cm + 46 + + =iif(Fields!Campo12_3.Value="",True,False) + + + + + + + External + =Replace(Fields!BarcodeBaseUrl.Value.ToString(),"BARCODE",Fields!Campo16_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value + FitProportional + 11.5cm + 9.94979cm + 1.2cm + 8.4cm + 47 + + =iif(Fields!Campo16_3.Value="",True,False) + + + + + + + External + =Replace(Fields!BarcodeBaseUrl.Value.ToString(), "BARCODE", Fields!Campo9_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value +' "?showVal=false&h=" + Parameters!BarcodeHeight.Value non mostra valore sotto barcode e definisce altezza Barcode da services + FitProportional + 7.41764cm + 0.6cm + 1.2cm + 8.4cm + 48 + + =iif(Fields!Campo9_3.Value = "", True, False) + + + + + + + External + =Replace(Fields!BarcodeBaseUrl.Value.ToString(), "BARCODE", Fields!Campo3_3.Value.ToString()) + "?showVal=false&h=" + Parameters!BarcodeHeight.Value + FitProportional + 2.6cm + 0.6cm + 1.2cm + 8.4cm + 49 + + =iif(Fields!Campo3_3.Value = "", True, False) + + + + + + + ContentsOnly + 12.8cm + 19cm + + + + + + true + + + + 12.8cm + @@ -573,7 +577,7 @@ - 1.5cm + 2cm @@ -600,7 +604,7 @@ Middle - 2pt + 5pt 2pt 2pt 2pt @@ -621,7 +625,7 @@ - 1.5cm + 2cm @@ -648,7 +652,7 @@ Middle - 2pt + 5pt 2pt 2pt 2pt @@ -669,7 +673,7 @@ - 1.5cm + 2cm @@ -696,7 +700,7 @@ Middle - 2pt + 5pt 2pt 2pt 2pt @@ -717,7 +721,7 @@ - 1.12958cm + 1.5cm @@ -756,7 +760,7 @@ 0.5pt Middle - 2pt + 5pt 2pt 2pt 2pt @@ -783,7 +787,7 @@ @@ -802,7 +806,7 @@ Middle 2pt - 2pt + 5pt 2pt 2pt @@ -841,7 +845,7 @@ 0.5pt Middle - 2pt + 5pt 2pt 2pt 2pt @@ -862,14 +866,14 @@ =Fields!DataPedana.Value @@ -884,7 +888,7 @@ Middle 2pt - 2pt + 5pt 2pt 2pt @@ -936,31 +940,34 @@ stp_prt_CartellinoPedane - 11.64699cm - 19cm - + + true - 0.48678cm - 11.64699cm - 19cm + 13.81512cm + 20.9cm + - true true - powered by Steam + cart.213x150 v211-powered by Steam @@ -968,6 +975,7 @@ Ware @@ -995,10 +1003,10 @@ - 12.27488cm + 13.88568cm 11.126cm - 0.2in - 3.1in + 0.21in + 3.65208in 1 - DataDDT + DataLotto @@ -291,14 +291,14 @@ - + true true - Numero DDT + - Textbox48 + Textbox2 @@ -332,14 +332,14 @@ - + true true - =Fields!NumDDT.Value + - NumDDT + Textbox3 @@ -376,18 +376,18 @@ - 0.8cm + 0.9cm - + true true - Fornitore + =Fields!NoteLotto.Value - Textbox69 + NoteLotto @@ -415,50 +415,11 @@ 2pt - 2 + 10 - - - - true - true - - - - - =Fields!DescFornit.Value - - - - - - - DescFornit - - - - - 0.5pt - - Middle - 2pt - 2pt - 2pt - 2pt - - - 8 - - + @@ -469,7 +430,7 @@ - 1.2cm + 1.3cm @@ -567,7 +528,7 @@ - 2cm + 2.4cm @@ -592,7 +553,7 @@ Textbox105 0.10922cm 0.6cm - 4.59021cm + 4.8cm @@ -622,7 +583,7 @@ 0.77639cm 0.10922cm 1cm - 4.59021cm + 4.8cm 1 @@ -745,7 +705,7 @@ 0.77639cm 0.10922cm 1cm - 4.59021cm + 4.8cm 1 @@ -873,7 +833,7 @@ - powered by Steam + cart.150x100 v211 - powered by Steam - 8cm - 4.39819cm + 9.15cm + 5.51672cm 0.5cm - 7.81184cm + 8.67762cm 1 + + @@ -956,28 +920,28 @@ stp_prt_CartellinoSemilavorati - 8.5cm - 12.8cm + 9.65cm + 14.5cm