diff --git a/MP-Site/MappaStato.aspx b/MP-Site/MappaStato.aspx index 89e5af8e..b357fb5b 100644 --- a/MP-Site/MappaStato.aspx +++ b/MP-Site/MappaStato.aspx @@ -1,112 +1,112 @@ <%@ Page Language="C#" MasterPageFile="~/WebMasterPages/MAPO_refresh.master" AutoEventWireup="true" Inherits="MoonPro.MappaStato" - Title="Mappa Stato" CodeBehind="MappaStato.aspx.cs" %> + Title="Mappa Stato" CodeBehind="MappaStato.aspx.cs" %> <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %> <%@ Register Src="~/WebUserControls/mod_statoMacchina.ascx" TagName="mod_statoMacchina" TagPrefix="uc1" %> <%@ Register Src="~/WebUserControls/mod_mainMap.ascx" TagPrefix="uc1" TagName="mod_mainMap" %> - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - <%-- - --%> - - - - - <%-- - --%> -
- - - - - - - - - - - - - - - - - - - -
-
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+
diff --git a/MP-Site/MappaStato.aspx.designer.cs b/MP-Site/MappaStato.aspx.designer.cs index 1aa6d7a1..45c8d845 100644 --- a/MP-Site/MappaStato.aspx.designer.cs +++ b/MP-Site/MappaStato.aspx.designer.cs @@ -1,276 +1,293 @@ //------------------------------------------------------------------------------ -// -// This code was generated by a tool. +// +// Codice generato da uno strumento. // -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// //------------------------------------------------------------------------------ -namespace MoonPro -{ - - +namespace MoonPro { + + public partial class MappaStato { /// - /// mod_mainMap control. + /// Controllo mod_mainMap. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_mainMap mod_mainMap; /// - /// Mod_statoMacchina01 control. + /// Controllo Mod_statoMacchina01. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina01; /// - /// Mod_statoMacchina26 control. + /// Controllo Mod_statoMacchina02. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina26; - - /// - /// Mod_statoMacchina02 control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina02; /// - /// Mod_statoMacchina03 control. + /// Controllo Mod_statoMacchina03. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina03; /// - /// Mod_statoMacchina04 control. + /// Controllo Mod_statoMacchina04. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina04; /// - /// Mod_statoMacchina05 control. + /// Controllo Mod_statoMacchina05. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina05; /// - /// Mod_statoMacchina06 control. + /// Controllo Mod_statoMacchina06. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina06; /// - /// Mod_statoMacchina07 control. + /// Controllo Mod_statoMacchina07. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina07; /// - /// Mod_statoMacchina08 control. + /// Controllo Mod_statoMacchina08. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina08; /// - /// Mod_statoMacchina25 control. + /// Controllo Mod_statoMacchina09. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina25; - - /// - /// Mod_statoMacchina09 control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina09; /// - /// Mod_statoMacchina27 control. + /// Controllo Mod_statoMacchina10. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina27; - - /// - /// Mod_statoMacchina10 control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina10; /// - /// Mod_statoMacchina11 control. + /// Controllo Mod_statoMacchina11. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina11; /// - /// Mod_statoMacchina12 control. + /// Controllo Mod_statoMacchina12. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina12; /// - /// Mod_statoMacchina13 control. + /// Controllo Mod_statoMacchina13. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina13; /// - /// Mod_statoMacchina15 control. + /// Controllo Mod_statoMacchina14. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina14; + + /// + /// Controllo Mod_statoMacchina15. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina15; /// - /// Mod_statoMacchina16 control. + /// Controllo Mod_statoMacchina16. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina16; /// - /// Mod_statoMacchina17 control. + /// Controllo Mod_statoMacchina17. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina17; /// - /// Mod_statoMacchina29 control. + /// Controllo Mod_statoMacchina18. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina29; - - /// - /// Mod_statoMacchina18 control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina18; /// - /// Mod_statoMacchina19 control. + /// Controllo Mod_statoMacchina19. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina19; /// - /// Mod_statoMacchina20 control. + /// Controllo Mod_statoMacchina20. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina20; /// - /// Mod_statoMacchina21 control. + /// Controllo Mod_statoMacchina21. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina21; /// - /// Mod_statoMacchina22 control. + /// Controllo Mod_statoMacchina22. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina22; /// - /// Mod_statoMacchina23 control. + /// Controllo Mod_statoMacchina23. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina23; /// - /// Mod_statoMacchina24 control. + /// Controllo Mod_statoMacchina24. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina24; /// - /// Mod_statoMacchina30 control. + /// Controllo Mod_statoMacchina25. /// /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina25; + + /// + /// Controllo Mod_statoMacchina26. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina26; + + /// + /// Controllo Mod_statoMacchina27. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina27; + + /// + /// Controllo Mod_statoMacchina28. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina28; + + /// + /// Controllo Mod_statoMacchina29. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina29; + + /// + /// Controllo Mod_statoMacchina30. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro.WebUserControls.mod_statoMacchina Mod_statoMacchina30; } diff --git a/MapoDb/resoconti.cs b/MapoDb/resoconti.cs index addb5c10..de510480 100644 --- a/MapoDb/resoconti.cs +++ b/MapoDb/resoconti.cs @@ -7,23 +7,23 @@ using System.Collections.Generic; /// public enum statoMacchina { - Run = 1, - Setup, - Guasto, - Campionatura, - Disposizione, - Varie + Run = 1, + Setup, + Guasto, + Campionatura, + Disposizione, + Varie } /// /// oggetto dati per grafico sequencer /// public struct objSequencer { - public intervalloDate intervallo; - /// - /// serie dei dati da plottare - /// - public DataLayer_generic.serieDatiDataTable serieDati; + public intervalloDate intervallo; + /// + /// serie dei dati da plottare + /// + public DataLayer_generic.serieDatiDataTable serieDati; } /// @@ -31,15 +31,15 @@ public struct objSequencer /// public struct objTempiCiclo { - public intervalloDate intervallo; - public decimal minVal; - public decimal maxVal; - public decimal targetVal; - public bool palletChange; - /// - /// serie dei dati da plottare - /// - public DataLayer_generic.serieTimeValDataTable serieDati; + public intervalloDate intervallo; + public decimal minVal; + public decimal maxVal; + public decimal targetVal; + public bool palletChange; + /// + /// serie dei dati da plottare + /// + public DataLayer_generic.serieTimeValDataTable serieDati; } //public struct intervallo //{ @@ -48,84 +48,82 @@ public struct objTempiCiclo //} public class resoconti { - #region area protected + #region area protected - protected MapoDb.DS_applicazioneTableAdapters.MacchineTableAdapter taMacchine; - protected MapoDb.DS_ProdTempiTableAdapters.TempiCicloRilevatiTableAdapter taTempiCiclo; - protected MapoDb.DS_applicazione.MacchineDataTable _Macchine; - protected MapoDb.DS_applicazione.MacchineDataTable Macchine + protected MapoDb.DS_applicazioneTableAdapters.MacchineTableAdapter taMacchine; + protected MapoDb.DS_ProdTempiTableAdapters.TempiCicloRilevatiTableAdapter taTempiCiclo; + protected MapoDb.DS_applicazione.MacchineDataTable _Macchine; + protected MapoDb.DS_applicazione.MacchineDataTable Macchine + { + get { - get - { - if (!memLayer.ML.isInCacheObject("Macchine")) - //if (HttpContext.Current.Cache["Macchine"] == null) - { - _Macchine = taMacchine.GetData(); - SteamWare.memLayer.ML.setCacheVal("Macchine", _Macchine, true); - //HttpContext.Current.Cache["Macchine"] = _Macchine; - } - else - { - _Macchine = (MapoDb.DS_applicazione.MacchineDataTable)SteamWare.memLayer.ML.objCacheObj("Macchine"); - //_Macchine = (MapoDb.DS_applicazione.MacchineDataTable)HttpContext.Current.Cache["Macchine"]; - } - return _Macchine; - } + if (!memLayer.ML.isInCacheObject("Macchine")) + //if (HttpContext.Current.Cache["Macchine"] == null) + { + _Macchine = taMacchine.GetData(); + memLayer.ML.setCacheVal("Macchine", _Macchine, true); + } + else + { + _Macchine = (MapoDb.DS_applicazione.MacchineDataTable)memLayer.ML.objCacheObj("Macchine"); + } + return _Macchine; } - protected MapoDb.DS_applicazioneTableAdapters.StatoMacchineTableAdapter taStatoMacchine; - protected MapoDb.DS_applicazione.StatoMacchineDataTable _StatoMacchine; - protected MapoDb.DS_applicazione.StatoMacchineDataTable StatoMacchine + } + protected MapoDb.DS_applicazioneTableAdapters.StatoMacchineTableAdapter taStatoMacchine; + protected MapoDb.DS_applicazione.StatoMacchineDataTable _StatoMacchine; + protected MapoDb.DS_applicazione.StatoMacchineDataTable StatoMacchine + { + get { - get - { - //if (_StatoMacchine == null) - //{ - // _StatoMacchine = taStatoMacchine.GetData(); - //} - if (!memLayer.ML.isInCacheObject("StatoMacchine")) - { - _StatoMacchine = taStatoMacchine.GetData(); - SteamWare.memLayer.ML.setCacheVal("StatoMacchine", _StatoMacchine, true); - } - else - { - _StatoMacchine = (MapoDb.DS_applicazione.StatoMacchineDataTable)SteamWare.memLayer.ML.objCacheObj("StatoMacchine"); - } - return _StatoMacchine; - } + //if (_StatoMacchine == null) + //{ + // _StatoMacchine = taStatoMacchine.GetData(); + //} + if (!memLayer.ML.isInCacheObject("StatoMacchine")) + { + _StatoMacchine = taStatoMacchine.GetData(); + SteamWare.memLayer.ML.setCacheVal("StatoMacchine", _StatoMacchine, true); + } + else + { + _StatoMacchine = (MapoDb.DS_applicazione.StatoMacchineDataTable)SteamWare.memLayer.ML.objCacheObj("StatoMacchine"); + } + return _StatoMacchine; } - protected MapoDb.DS_applicazioneTableAdapters.AnagraficaStatiTableAdapter taStati; - protected MapoDb.DS_applicazione.AnagraficaStatiDataTable _Stati; - protected MapoDb.DS_applicazione.AnagraficaStatiDataTable Stati + } + protected MapoDb.DS_applicazioneTableAdapters.AnagraficaStatiTableAdapter taStati; + protected MapoDb.DS_applicazione.AnagraficaStatiDataTable _Stati; + protected MapoDb.DS_applicazione.AnagraficaStatiDataTable Stati + { + get { - get - { - if (!memLayer.ML.isInCacheObject("Stati")) - { - _Stati = taStati.GetData(); - memLayer.ML.setCacheVal("Stati", _Stati, true); - } - else - { - _Stati = (MapoDb.DS_applicazione.AnagraficaStatiDataTable)memLayer.ML.objCacheObj("Stati"); - } - return _Stati; - } + if (!memLayer.ML.isInCacheObject("Stati")) + { + _Stati = taStati.GetData(); + memLayer.ML.setCacheVal("Stati", _Stati, true); + } + else + { + _Stati = (MapoDb.DS_applicazione.AnagraficaStatiDataTable)memLayer.ML.objCacheObj("Stati"); + } + return _Stati; } - protected MapoDb.DS_applicazioneTableAdapters.DiarioDiBordoTableAdapter taDiarioDiBordo; - protected MapoDb.DS_applicazione.DiarioDiBordoDataTable _DiarioDiBordo; - protected MapoDb.DS_applicazione.DiarioDiBordoDataTable DiarioDiBordo + } + protected MapoDb.DS_applicazioneTableAdapters.DiarioDiBordoTableAdapter taDiarioDiBordo; + protected MapoDb.DS_applicazione.DiarioDiBordoDataTable _DiarioDiBordo; + protected MapoDb.DS_applicazione.DiarioDiBordoDataTable DiarioDiBordo + { + get { - get - { - if (_DiarioDiBordo == null) - { - _DiarioDiBordo = taDiarioDiBordo.GetData(); - } - return _DiarioDiBordo; - } + if (_DiarioDiBordo == null) + { + _DiarioDiBordo = taDiarioDiBordo.GetData(); + } + return _DiarioDiBordo; } - protected MapoDb.DS_applicazioneTableAdapters.ParetoDurateTableAdapter taParetoDurate; + } + protected MapoDb.DS_applicazioneTableAdapters.ParetoDurateTableAdapter taParetoDurate; #if false protected MapoDb.DS_applicazione.ParetoDurateDataTable _ParetoDurate; protected MapoDb.DS_applicazione.ParetoDurateDataTable ParetoDurate @@ -141,475 +139,475 @@ public class resoconti } } #endif - protected MapoDb.DS_applicazioneTableAdapters.AnagraficaEventiTableAdapter taAnagraficaEventi; - protected MapoDb.DS_applicazione.AnagraficaEventiDataTable _AnagraficaEventi; - protected MapoDb.DS_applicazione.AnagraficaEventiDataTable AnagraficaEventi + protected MapoDb.DS_applicazioneTableAdapters.AnagraficaEventiTableAdapter taAnagraficaEventi; + protected MapoDb.DS_applicazione.AnagraficaEventiDataTable _AnagraficaEventi; + protected MapoDb.DS_applicazione.AnagraficaEventiDataTable AnagraficaEventi + { + get { - get + if (!memLayer.ML.isInCacheObject("AnagraficaEventi")) + //if (HttpContext.Current.Cache["AnagraficaEventi"] == null) + { + _AnagraficaEventi = taAnagraficaEventi.GetData(); + SteamWare.memLayer.ML.setCacheVal("AnagraficaEventi", _AnagraficaEventi, true); + //HttpContext.Current.Cache["AnagraficaEventi"] = _AnagraficaEventi; + } + else + { + _AnagraficaEventi = (MapoDb.DS_applicazione.AnagraficaEventiDataTable)SteamWare.memLayer.ML.objCacheObj("AnagraficaEventi"); + //_AnagraficaEventi = (MapoDb.DS_applicazione.AnagraficaEventiDataTable)HttpContext.Current.Cache["AnagraficaEventi"]; + } + return _AnagraficaEventi; + } + } + protected MapoDb.DS_applicazioneTableAdapters.AnagArticoliTableAdapter taAnagArt; + protected MapoDb.DS_applicazione.AnagArticoliDataTable _AnagArt; + protected MapoDb.DS_applicazione.AnagArticoliDataTable AnagArt + { + get + { + if (!memLayer.ML.isInCacheObject("AnagArt")) + { + _AnagArt = taAnagArt.GetData(); + SteamWare.memLayer.ML.setCacheVal("AnagArt", _AnagArt, true); + } + else + { + _AnagArt = (MapoDb.DS_applicazione.AnagArticoliDataTable)SteamWare.memLayer.ML.objCacheObj("AnagArt"); + } + return _AnagArt; + } + } + protected MapoDb.DS_applicazioneTableAdapters.AnagraficaOperatoriTableAdapter taAnagOpr; + protected MapoDb.DS_applicazione.AnagraficaOperatoriDataTable _AnagOpr; + protected MapoDb.DS_applicazione.AnagraficaOperatoriDataTable AnagOpr + { + get + { + if (!memLayer.ML.isInCacheObject("AnagOpr")) + //if (HttpContext.Current.Cache["AnagOpr"] == null) + { + _AnagOpr = taAnagOpr.GetData(); + SteamWare.memLayer.ML.setCacheVal("AnagOpr", _AnagOpr, true); + //HttpContext.Current.Cache["AnagOpr"] = _AnagOpr; + } + else + { + _AnagOpr = (MapoDb.DS_applicazione.AnagraficaOperatoriDataTable)SteamWare.memLayer.ML.objCacheObj("AnagOpr"); + //_AnagOpr = (MapoDb.DS_applicazione.AnagraficaOperatoriDataTable)HttpContext.Current.Cache["AnagOpr"]; + } + return _AnagOpr; + } + } + + #endregion + + #region area public + + public resoconti() + { + AvviaTabAdapt(); + setConnString(); + } + /// + /// singleton accesso resoconti + /// + public static resoconti mngr = new resoconti(); + + /// + /// avvio i table adapter della classe + /// + private void AvviaTabAdapt() + { + taMacchine = new MapoDb.DS_applicazioneTableAdapters.MacchineTableAdapter(); + taStatoMacchine = new MapoDb.DS_applicazioneTableAdapters.StatoMacchineTableAdapter(); + taStati = new MapoDb.DS_applicazioneTableAdapters.AnagraficaStatiTableAdapter(); + taDiarioDiBordo = new MapoDb.DS_applicazioneTableAdapters.DiarioDiBordoTableAdapter(); + taParetoDurate = new MapoDb.DS_applicazioneTableAdapters.ParetoDurateTableAdapter(); + taAnagraficaEventi = new MapoDb.DS_applicazioneTableAdapters.AnagraficaEventiTableAdapter(); + taAnagArt = new MapoDb.DS_applicazioneTableAdapters.AnagArticoliTableAdapter(); + taAnagOpr = new MapoDb.DS_applicazioneTableAdapters.AnagraficaOperatoriTableAdapter(); + taTempiCiclo = new MapoDb.DS_ProdTempiTableAdapters.TempiCicloRilevatiTableAdapter(); + } + /// + /// forza la connString x i vari table adapters + /// + private void setConnString() + { + string _connectionString = SteamWare.memLayer.ML.confReadString("MoonProConnectionString"); + taMacchine.Connection.ConnectionString = _connectionString; + taStatoMacchine.Connection.ConnectionString = _connectionString; + taStati.Connection.ConnectionString = _connectionString; + taDiarioDiBordo.Connection.ConnectionString = _connectionString; + taParetoDurate.Connection.ConnectionString = _connectionString; + taAnagraficaEventi.Connection.ConnectionString = _connectionString; + taAnagArt.Connection.ConnectionString = _connectionString; + taAnagOpr.Connection.ConnectionString = _connectionString; + taTempiCiclo.Connection.ConnectionString = _connectionString; + } + + public string locazioneDaIdx(string idx) + { + MapoDb.DS_applicazione.MacchineRow riga = Macchine.FindByIdxMacchina(idx); + return string.Format("{0}", riga.locazione); + } + public string idxDaLocazione(string locazione) + { + string answ = ""; + MapoDb.DS_applicazione.MacchineRow riga = null; + try + { + riga = (MapoDb.DS_applicazione.MacchineRow)Macchine.Select(string.Format("locazione = '{0}'", locazione))[0]; + answ = string.Format("{0}", riga.IdxMacchina); + } + catch + { + } + return answ; + } + public string nomeMacchina(string idx) + { + string answ = ""; + MapoDb.DS_applicazione.MacchineRow riga = Macchine.FindByIdxMacchina(idx); + try + { + answ = string.Format("{0} ({1} - {2})", riga.Nome, riga.CodMacchina, riga.Descrizione); + } + catch + { } + return answ; + } + public string macchinaDaIdx(string idx) + { + MapoDb.DS_applicazione.MacchineRow riga = Macchine.FindByIdxMacchina(idx); + return string.Format("{0}", riga.CodMacchina); + } + public string urlMacchina(string idx) + { + string answ = ""; + MapoDb.DS_applicazione.MacchineRow riga = null; + try + { + riga = Macchine.FindByIdxMacchina(idx); + answ = string.Format("{0}", riga.url); + } + catch + { } + return answ; + } + /// + /// fornisce idxStato della macchina indicata + /// + /// + /// + public int statoMacchina(string idx) + { + int answ = 0; + try + { + MapoDb.DS_ProdTempi.stp_repDonati_getLastStatoDurataMacchinaRow riga = (MapoDb.DS_ProdTempi.stp_repDonati_getLastStatoDurataMacchinaRow)(MapoDb.DataLayer.obj.taDatiStatoMacch.GetData(idx, 0)[0]); + answ = riga.idxStato; + } + catch + { } + return answ; + } + /// + /// fornisce descrizione stato da IdxStato + /// + /// + /// + public string statoDaIdx(int idx) + { + return Stati.FindByIdxStato(idx).Descrizione; + } + /// + /// fornisce cod operatore data matricola + /// + /// + /// + public string oprDaMatr(int matr) + { + string answ = "nd"; + try + { + MapoDb.DS_applicazione.AnagraficaOperatoriRow riga = AnagOpr.FindByMatrOpr(matr); + answ = string.Format("{0} {1}", riga.Cognome, riga.Nome); + } + catch + { } + return answ; + } + /// + /// Dizionario codici colore (chiave = idxStato), valore = codice colore + /// + protected Dictionary codColore + { + get + { + Dictionary answ = new Dictionary(); + if (memLayer.ML.isInCacheObject("codColore")) + { + answ = (Dictionary)memLayer.ML.objCacheObj("codColore"); + } + else + { + string _colore = ""; + foreach (MapoDb.DS_applicazione.AnagraficaStatiRow item in Stati) { - if (!memLayer.ML.isInCacheObject("AnagraficaEventi")) - //if (HttpContext.Current.Cache["AnagraficaEventi"] == null) - { - _AnagraficaEventi = taAnagraficaEventi.GetData(); - SteamWare.memLayer.ML.setCacheVal("AnagraficaEventi", _AnagraficaEventi, true); - //HttpContext.Current.Cache["AnagraficaEventi"] = _AnagraficaEventi; - } - else - { - _AnagraficaEventi = (MapoDb.DS_applicazione.AnagraficaEventiDataTable)SteamWare.memLayer.ML.objCacheObj("AnagraficaEventi"); - //_AnagraficaEventi = (MapoDb.DS_applicazione.AnagraficaEventiDataTable)HttpContext.Current.Cache["AnagraficaEventi"]; - } - return _AnagraficaEventi; + switch (item.Semaforo) + { + case "sGi": // giallo + _colore = "#ffec00"; + break; + case "sRo": // rosso + _colore = "#e2001a"; + break; + case "sGr": // grigio - spenta + _colore = "#bcbcbc"; + break; + case "sVe": // verde + _colore = "#009036"; + break; + case "sBl": // blu + _colore = "#3690FF"; + break; + default: + break; + } + answ.Add(item.IdxStato, _colore); } + memLayer.ML.setCacheVal("codColore", answ, true); + } + return answ; } - protected MapoDb.DS_applicazioneTableAdapters.AnagArticoliTableAdapter taAnagArt; - protected MapoDb.DS_applicazione.AnagArticoliDataTable _AnagArt; - protected MapoDb.DS_applicazione.AnagArticoliDataTable AnagArt + } + /// + /// Dizionario codici semaforo (chiave = idxStato), valore = codice semaforo + /// + protected Dictionary codSemaforo + { + get { - get + Dictionary answ = new Dictionary(); + if (memLayer.ML.isInCacheObject("codSemaforo")) + { + answ = (Dictionary)memLayer.ML.objCacheObj("codSemaforo"); + } + else + { + foreach (MapoDb.DS_applicazione.AnagraficaStatiRow item in Stati) { - if (!memLayer.ML.isInCacheObject("AnagArt")) - { - _AnagArt = taAnagArt.GetData(); - SteamWare.memLayer.ML.setCacheVal("AnagArt", _AnagArt, true); - } - else - { - _AnagArt = (MapoDb.DS_applicazione.AnagArticoliDataTable)SteamWare.memLayer.ML.objCacheObj("AnagArt"); - } - return _AnagArt; + answ.Add(item.IdxStato, item.Semaforo); } + memLayer.ML.setCacheVal("codSemaforo", answ, true); + } + return answ; } - protected MapoDb.DS_applicazioneTableAdapters.AnagraficaOperatoriTableAdapter taAnagOpr; - protected MapoDb.DS_applicazione.AnagraficaOperatoriDataTable _AnagOpr; - protected MapoDb.DS_applicazione.AnagraficaOperatoriDataTable AnagOpr + } + /// + /// Restituisce colore da IdxStato + /// + /// + /// + public string coloreDaIdx(int idx) + { + string _answ = ""; + + if (memLayer.ML.CRB("fastColorDecode")) { - get - { - if (!memLayer.ML.isInCacheObject("AnagOpr")) - //if (HttpContext.Current.Cache["AnagOpr"] == null) - { - _AnagOpr = taAnagOpr.GetData(); - SteamWare.memLayer.ML.setCacheVal("AnagOpr", _AnagOpr, true); - //HttpContext.Current.Cache["AnagOpr"] = _AnagOpr; - } - else - { - _AnagOpr = (MapoDb.DS_applicazione.AnagraficaOperatoriDataTable)SteamWare.memLayer.ML.objCacheObj("AnagOpr"); - //_AnagOpr = (MapoDb.DS_applicazione.AnagraficaOperatoriDataTable)HttpContext.Current.Cache["AnagOpr"]; - } - return _AnagOpr; - } + _answ = codColore[idx]; + } + else + { + switch (Stati.FindByIdxStato(idx).Semaforo) + { + case "sGi": // giallo + _answ = "#ffec00"; + break; + case "sRo": // rosso + _answ = "#e2001a"; + break; + case "sGr": // grigio - spenta + _answ = "#bcbcbc"; + break; + case "sVe": // verde + _answ = "#009036"; + break; + case "sBl": // blu + _answ = "#3690FF"; + break; + default: + break; + } + } + return _answ; + } + /// + /// restituisce cod semaforo dato IdxStato + /// + /// + /// + public string semaforoDaIdxStato(int idx) + { + string _answ = ""; + if (memLayer.ML.CRB("fastColorDecode")) + { + _answ = codSemaforo[idx]; + } + else + { + _answ = Stati.FindByIdxStato(idx).Semaforo; + } + return _answ; + } + /// + /// fornisce una torta stati + /// + /// + /// + /// + /// + /// + public DataLayer_generic.serieDatiDataTable tortaStati(string idx, intervalloDate _intervallo, int minDurata, bool hideSpenta) + { + // leggo i dati e costituisco una collezione... + DataLayer_generic.serieDatiDataTable punti = new DataLayer_generic.serieDatiDataTable(); + // seleziono i dati... + MapoDb.DS_applicazione.ParetoDurateDataTable tabPareto; + if (hideSpenta) + { + tabPareto = taParetoDurate.GetParetoDurateHideSpenta(idx, minDurata, _intervallo.fine, _intervallo.inizio); + } + else + { + tabPareto = taParetoDurate.GetParetoDurateFilt(idx, minDurata, _intervallo.fine, _intervallo.inizio); + } + double totale = 1; + try + { + totale = (double)tabPareto.Compute("SUM(DurataMinuti)", ""); + } + catch + { + } + foreach (MapoDb.DS_applicazione.ParetoDurateRow riga in tabPareto.Rows) + { + punti.AddserieDatiRow((float)((Math.Round(((float)riga.DurataMinuti) / totale * 1000)) / 1000), coloreDaIdx(riga.IdxStato), statoDaIdx(riga.IdxStato), riga.InizioStato); + } + return punti; + } + /// + /// tipo evento da Idx + /// + /// + /// + public string tipoDaIdx(int idx) + { + return AnagraficaEventi.FindByIdxTipo(idx).Nome; + } + /// + /// oggetto sequenza dati x sequencer + /// + /// IdxMacchina + /// + /// + public objSequencer sequenzaDati(string idxMacchina, intervalloDate _intervallo) + { + DateTime start = DateTime.Now; + // leggo i dati e costituisco una collezione... + objSequencer _sequenza = new objSequencer(); + if (idxMacchina != null && idxMacchina != "") + { + _sequenza.serieDati = new DataLayer_generic.serieDatiDataTable(); + // seleziono i dati... + MapoDb.DS_applicazione.DiarioDiBordoDataTable tabSeq = taDiarioDiBordo.GetSequenza(idxMacchina, _intervallo.inizio, _intervallo.fine); + foreach (MapoDb.DS_applicazione.DiarioDiBordoRow riga in tabSeq.Rows) + { + _sequenza.serieDati.AddserieDatiRow(riga.DurataMinuti, semaforoDaIdxStato(riga.IdxStato), riga.CodArticolo, riga.InizioStato); + } + // faccio trim x primo evento... + if (_sequenza.serieDati[0].timeData < _intervallo.inizio) + { + _sequenza.serieDati[0].valore -= _intervallo.inizio.Subtract(_sequenza.serieDati[0].timeData).TotalMinutes; + _sequenza.serieDati[0].timeData = _intervallo.inizio; + } + //...e ultimo evento... + int numValori = _sequenza.serieDati.Count - 1; + _sequenza.serieDati[numValori].valore = _intervallo.fine.Subtract(_sequenza.serieDati[numValori].timeData).TotalMinutes; + // salvo intervallo + _sequenza.intervallo = _intervallo; } - #endregion - - #region area public - - public resoconti() + return _sequenza; + } + /// + /// oggetto sequenza tempi ciclo x visualizzatore + /// + /// + /// + /// tempo target di riferimento (se zero calcola la media...) + /// + public objTempiCiclo tempiCiclo(string idxMacchina, intervalloDate _intervallo, decimal targetVal) + { + // inizializzo + objTempiCiclo _serie = new objTempiCiclo(); + if (idxMacchina != null && idxMacchina != "") { - AvviaTabAdapt(); - setConnString(); - } - /// - /// singleton accesso resoconti - /// - public static resoconti mngr = new resoconti(); - - /// - /// avvio i table adapter della classe - /// - private void AvviaTabAdapt() - { - taMacchine = new MapoDb.DS_applicazioneTableAdapters.MacchineTableAdapter(); - taStatoMacchine = new MapoDb.DS_applicazioneTableAdapters.StatoMacchineTableAdapter(); - taStati = new MapoDb.DS_applicazioneTableAdapters.AnagraficaStatiTableAdapter(); - taDiarioDiBordo = new MapoDb.DS_applicazioneTableAdapters.DiarioDiBordoTableAdapter(); - taParetoDurate = new MapoDb.DS_applicazioneTableAdapters.ParetoDurateTableAdapter(); - taAnagraficaEventi = new MapoDb.DS_applicazioneTableAdapters.AnagraficaEventiTableAdapter(); - taAnagArt = new MapoDb.DS_applicazioneTableAdapters.AnagArticoliTableAdapter(); - taAnagOpr = new MapoDb.DS_applicazioneTableAdapters.AnagraficaOperatoriTableAdapter(); - taTempiCiclo = new MapoDb.DS_ProdTempiTableAdapters.TempiCicloRilevatiTableAdapter(); - } - /// - /// forza la connString x i vari table adapters - /// - private void setConnString() - { - string _connectionString = SteamWare.memLayer.ML.confReadString("MoonProConnectionString"); - taMacchine.Connection.ConnectionString = _connectionString; - taStatoMacchine.Connection.ConnectionString = _connectionString; - taStati.Connection.ConnectionString = _connectionString; - taDiarioDiBordo.Connection.ConnectionString = _connectionString; - taParetoDurate.Connection.ConnectionString = _connectionString; - taAnagraficaEventi.Connection.ConnectionString = _connectionString; - taAnagArt.Connection.ConnectionString = _connectionString; - taAnagOpr.Connection.ConnectionString = _connectionString; - taTempiCiclo.Connection.ConnectionString = _connectionString; - } - - public string locazioneDaIdx(string idx) - { - MapoDb.DS_applicazione.MacchineRow riga = Macchine.FindByIdxMacchina(idx); - return string.Format("{0}", riga.locazione); - } - public string idxDaLocazione(string locazione) - { - string answ = ""; - MapoDb.DS_applicazione.MacchineRow riga = null; + _serie.serieDati = new DataLayer_generic.serieTimeValDataTable(); + // seleziono i dati + if (targetVal > 0) + { + _serie.targetVal = targetVal; + } + else + { try { - riga = (MapoDb.DS_applicazione.MacchineRow)Macchine.Select(string.Format("locazione = '{0}'", locazione))[0]; - answ = string.Format("{0}", riga.IdxMacchina); - } - catch - { - } - return answ; - } - public string nomeMacchina(string idx) - { - string answ = ""; - MapoDb.DS_applicazione.MacchineRow riga = Macchine.FindByIdxMacchina(idx); - try - { - answ = string.Format("{0} ({1} - {2})", riga.Nome, riga.CodMacchina, riga.Descrizione); + _serie.targetVal = taTempiCiclo.getMedByMacchinaPeriodo(idxMacchina, _intervallo.inizio, _intervallo.fine)[0].TCMedio; } catch { } - return answ; - } - public string macchinaDaIdx(string idx) - { - MapoDb.DS_applicazione.MacchineRow riga = Macchine.FindByIdxMacchina(idx); - return string.Format("{0}", riga.CodMacchina); - } - public string urlMacchina(string idx) - { - string answ = ""; - MapoDb.DS_applicazione.MacchineRow riga = null; - try + } + int TcMaxFactor = memLayer.ML.confReadInt("TcMaxFactor"); + MapoDb.DS_ProdTempi.TempiCicloRilevatiDataTable tabTempi = taTempiCiclo.getByMacchinaPeriodoFiltMax(idxMacchina, _intervallo.inizio, _intervallo.fine, _serie.targetVal * TcMaxFactor); + // converto! + DateTime inizio; + foreach (MapoDb.DS_ProdTempi.TempiCicloRilevatiRow riga in tabTempi.Rows) + { + inizio = riga.DataOraRif.AddMinutes(Convert.ToDouble(-riga.TCMedio * riga.PzProd)); // tolgo il tempo necessario a produrre i pezzi indicati come inizio + _serie.serieDati.AddserieTimeValRow(inizio, riga.DataOraRif, riga.TCMedio, string.Format("Art: {0} - T.C. {1}'", riga.CodArticolo, riga.TCMedio), riga.CodArticolo); + } + // sistemo estremi x date e valori + try + { + _serie.maxVal = taTempiCiclo.getMaxByMacchinaPeriodo(idxMacchina, _intervallo.inizio, _intervallo.fine)[0].TCMedio; + if (_serie.maxVal > _serie.targetVal * TcMaxFactor) { - riga = Macchine.FindByIdxMacchina(idx); - answ = string.Format("{0}", riga.url); - } - catch - { } - return answ; - } - /// - /// fornisce idxStato della macchina indicata - /// - /// - /// - public int statoMacchina(string idx) - { - int answ = 0; - try - { - MapoDb.DS_ProdTempi.stp_repDonati_getLastStatoDurataMacchinaRow riga = (MapoDb.DS_ProdTempi.stp_repDonati_getLastStatoDurataMacchinaRow)(MapoDb.DataLayer.obj.taDatiStatoMacch.GetData(idx, 0)[0]); - answ = riga.idxStato; - } - catch - { } - return answ; - } - /// - /// fornisce descrizione stato da IdxStato - /// - /// - /// - public string statoDaIdx(int idx) - { - return Stati.FindByIdxStato(idx).Descrizione; - } - /// - /// fornisce cod operatore data matricola - /// - /// - /// - public string oprDaMatr(int matr) - { - string answ = "nd"; - try - { - MapoDb.DS_applicazione.AnagraficaOperatoriRow riga = AnagOpr.FindByMatrOpr(matr); - answ = string.Format("{0} {1}", riga.Cognome, riga.Nome); - } - catch - { } - return answ; - } - /// - /// Dizionario codici colore (chiave = idxStato), valore = codice colore - /// - protected Dictionary codColore - { - get - { - Dictionary answ = new Dictionary(); - if (memLayer.ML.isInCacheObject("codColore")) - { - answ = (Dictionary)memLayer.ML.objCacheObj("codColore"); - } - else - { - string _colore = ""; - foreach (MapoDb.DS_applicazione.AnagraficaStatiRow item in Stati) - { - switch (item.Semaforo) - { - case "sGi": // giallo - _colore = "#ffec00"; - break; - case "sRo": // rosso - _colore = "#e2001a"; - break; - case "sGr": // grigio - spenta - _colore = "#bcbcbc"; - break; - case "sVe": // verde - _colore = "#009036"; - break; - case "sBl": // blu - _colore = "#3690FF"; - break; - default: - break; - } - answ.Add(item.IdxStato, _colore); - } - memLayer.ML.setCacheVal("codColore", answ, true); - } - return answ; - } - } - /// - /// Dizionario codici semaforo (chiave = idxStato), valore = codice semaforo - /// - protected Dictionary codSemaforo - { - get - { - Dictionary answ = new Dictionary(); - if (memLayer.ML.isInCacheObject("codSemaforo")) - { - answ = (Dictionary)memLayer.ML.objCacheObj("codSemaforo"); - } - else - { - foreach (MapoDb.DS_applicazione.AnagraficaStatiRow item in Stati) - { - answ.Add(item.IdxStato, item.Semaforo); - } - memLayer.ML.setCacheVal("codSemaforo", answ, true); - } - return answ; - } - } - /// - /// Restituisce colore da IdxStato - /// - /// - /// - public string coloreDaIdx(int idx) - { - string _answ = ""; - - if (memLayer.ML.CRB("fastColorDecode")) - { - _answ = codColore[idx]; - } - else - { - switch (Stati.FindByIdxStato(idx).Semaforo) - { - case "sGi": // giallo - _answ = "#ffec00"; - break; - case "sRo": // rosso - _answ = "#e2001a"; - break; - case "sGr": // grigio - spenta - _answ = "#bcbcbc"; - break; - case "sVe": // verde - _answ = "#009036"; - break; - case "sBl": // blu - _answ = "#3690FF"; - break; - default: - break; - } - } - return _answ; - } - /// - /// restituisce cod semaforo dato IdxStato - /// - /// - /// - public string semaforoDaIdxStato(int idx) - { - string _answ = ""; - if (memLayer.ML.CRB("fastColorDecode")) - { - _answ = codSemaforo[idx]; - } - else - { - _answ = Stati.FindByIdxStato(idx).Semaforo; - } - return _answ; - } - /// - /// fornisce una torta stati - /// - /// - /// - /// - /// - /// - public DataLayer_generic.serieDatiDataTable tortaStati(string idx, intervalloDate _intervallo, int minDurata, bool hideSpenta) - { - // leggo i dati e costituisco una collezione... - DataLayer_generic.serieDatiDataTable punti = new DataLayer_generic.serieDatiDataTable(); - // seleziono i dati... - MapoDb.DS_applicazione.ParetoDurateDataTable tabPareto; - if (hideSpenta) - { - tabPareto = taParetoDurate.GetParetoDurateHideSpenta(idx, minDurata, _intervallo.fine, _intervallo.inizio); - } - else - { - tabPareto = taParetoDurate.GetParetoDurateFilt(idx, minDurata, _intervallo.fine, _intervallo.inizio); - } - double totale = 1; - try - { - totale = (double)tabPareto.Compute("SUM(DurataMinuti)", ""); - } - catch - { - } - foreach (MapoDb.DS_applicazione.ParetoDurateRow riga in tabPareto.Rows) - { - punti.AddserieDatiRow((float)((Math.Round(((float)riga.DurataMinuti) / totale * 1000)) / 1000), coloreDaIdx(riga.IdxStato), statoDaIdx(riga.IdxStato), riga.InizioStato); - } - return punti; - } - /// - /// tipo evento da Idx - /// - /// - /// - public string tipoDaIdx(int idx) - { - return AnagraficaEventi.FindByIdxTipo(idx).Nome; - } - /// - /// oggetto sequenza dati x sequencer - /// - /// IdxMacchina - /// - /// - public objSequencer sequenzaDati(string idxMacchina, intervalloDate _intervallo) - { - DateTime start = DateTime.Now; - // leggo i dati e costituisco una collezione... - objSequencer _sequenza = new objSequencer(); - if (idxMacchina != null && idxMacchina != "") - { - _sequenza.serieDati = new DataLayer_generic.serieDatiDataTable(); - // seleziono i dati... - MapoDb.DS_applicazione.DiarioDiBordoDataTable tabSeq = taDiarioDiBordo.GetSequenza(idxMacchina, _intervallo.inizio, _intervallo.fine); - foreach (MapoDb.DS_applicazione.DiarioDiBordoRow riga in tabSeq.Rows) - { - _sequenza.serieDati.AddserieDatiRow(riga.DurataMinuti, semaforoDaIdxStato(riga.IdxStato), riga.CodArticolo, riga.InizioStato); - } - // faccio trim x primo evento... - if (_sequenza.serieDati[0].timeData < _intervallo.inizio) - { - _sequenza.serieDati[0].valore -= _intervallo.inizio.Subtract(_sequenza.serieDati[0].timeData).TotalMinutes; - _sequenza.serieDati[0].timeData = _intervallo.inizio; - } - //...e ultimo evento... - int numValori = _sequenza.serieDati.Count - 1; - _sequenza.serieDati[numValori].valore = _intervallo.fine.Subtract(_sequenza.serieDati[numValori].timeData).TotalMinutes; - // salvo intervallo - _sequenza.intervallo = _intervallo; + _serie.maxVal = _serie.targetVal * TcMaxFactor; } + } + catch + { } + try + { + _serie.minVal = taTempiCiclo.getMinByMacchinaPeriodo(idxMacchina, _intervallo.inizio, _intervallo.fine)[0].TCMedio; + } + catch + { } + _serie.intervallo = _intervallo; - return _sequenza; + // imposto se abbia cambio pallet + _serie.palletChange = false; + try + { + _serie.palletChange = MapoDb.DataLayer.obj.taDatiMacchine.getByIdx(idxMacchina)[0].palletChange; + } + catch + { } } - /// - /// oggetto sequenza tempi ciclo x visualizzatore - /// - /// - /// - /// tempo target di riferimento (se zero calcola la media...) - /// - public objTempiCiclo tempiCiclo(string idxMacchina, intervalloDate _intervallo, decimal targetVal) - { - // inizializzo - objTempiCiclo _serie = new objTempiCiclo(); - if (idxMacchina != null && idxMacchina != "") - { - _serie.serieDati = new DataLayer_generic.serieTimeValDataTable(); - // seleziono i dati - if (targetVal > 0) - { - _serie.targetVal = targetVal; - } - else - { - try - { - _serie.targetVal = taTempiCiclo.getMedByMacchinaPeriodo(idxMacchina, _intervallo.inizio, _intervallo.fine)[0].TCMedio; - } - catch - { } - } - int TcMaxFactor = memLayer.ML.confReadInt("TcMaxFactor"); - MapoDb.DS_ProdTempi.TempiCicloRilevatiDataTable tabTempi = taTempiCiclo.getByMacchinaPeriodoFiltMax(idxMacchina, _intervallo.inizio, _intervallo.fine, _serie.targetVal * TcMaxFactor); - // converto! - DateTime inizio; - foreach (MapoDb.DS_ProdTempi.TempiCicloRilevatiRow riga in tabTempi.Rows) - { - inizio = riga.DataOraRif.AddMinutes(Convert.ToDouble(-riga.TCMedio * riga.PzProd)); // tolgo il tempo necessario a produrre i pezzi indicati come inizio - _serie.serieDati.AddserieTimeValRow(inizio, riga.DataOraRif, riga.TCMedio, string.Format("Art: {0} - T.C. {1}'", riga.CodArticolo, riga.TCMedio), riga.CodArticolo); - } - // sistemo estremi x date e valori - try - { - _serie.maxVal = taTempiCiclo.getMaxByMacchinaPeriodo(idxMacchina, _intervallo.inizio, _intervallo.fine)[0].TCMedio; - if (_serie.maxVal > _serie.targetVal * TcMaxFactor) - { - _serie.maxVal = _serie.targetVal * TcMaxFactor; - } - } - catch - { } - try - { - _serie.minVal = taTempiCiclo.getMinByMacchinaPeriodo(idxMacchina, _intervallo.inizio, _intervallo.fine)[0].TCMedio; - } - catch - { } - _serie.intervallo = _intervallo; + return _serie; + } - // imposto se abbia cambio pallet - _serie.palletChange = false; - try - { - _serie.palletChange = MapoDb.DataLayer.obj.taDatiMacchine.getByIdx(idxMacchina)[0].palletChange; - } - catch - { } - } - return _serie; - } - - #endregion + #endregion }