From 991e962a75ad627050ea85e7b04eefc762ed6c72 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Thu, 26 Nov 2020 10:33:37 +0100 Subject: [PATCH] fix override vari su tablet --- MP-TAB/WebUserControls/BaseUserControl.cs | 2 +- MP-TAB/WebUserControls/mod_ODL.ascx.cs | 3 + .../WebUserControls/mod_controlliProd.ascx.cs | 2 +- .../WebUserControls/mod_pianoProdMacc.ascx.cs | 46 +- MP-TAB/WebUserControls/mod_regScarti.ascx.cs | 285 ++++---- MP-TAB/WebUserControls/mod_selPeriodo.ascx.cs | 641 ++++++++++-------- 6 files changed, 534 insertions(+), 445 deletions(-) diff --git a/MP-TAB/WebUserControls/BaseUserControl.cs b/MP-TAB/WebUserControls/BaseUserControl.cs index 373f2d19..dde21e16 100644 --- a/MP-TAB/WebUserControls/BaseUserControl.cs +++ b/MP-TAB/WebUserControls/BaseUserControl.cs @@ -265,7 +265,7 @@ namespace MoonProTablet.WebUserControls /// /// Riporta evento update /// - public void reportUpdate() + public virtual void reportUpdate() { // alzo l'evento d update/inserimento e ricarico cache... if (eh_doUpdate != null) diff --git a/MP-TAB/WebUserControls/mod_ODL.ascx.cs b/MP-TAB/WebUserControls/mod_ODL.ascx.cs index 36760884..c2a30236 100644 --- a/MP-TAB/WebUserControls/mod_ODL.ascx.cs +++ b/MP-TAB/WebUserControls/mod_ODL.ascx.cs @@ -315,6 +315,8 @@ namespace MoonProTablet.WebUserControls } } +#if false + /// /// idx macchina selezionata /// @@ -338,6 +340,7 @@ namespace MoonProTablet.WebUserControls cmp_newODL.idxMacchinaFix = value; } } +#endif /// /// IdxODL su ALTRA macchina (se multi) diff --git a/MP-TAB/WebUserControls/mod_controlliProd.ascx.cs b/MP-TAB/WebUserControls/mod_controlliProd.ascx.cs index bf4a9fc6..36da39e9 100644 --- a/MP-TAB/WebUserControls/mod_controlliProd.ascx.cs +++ b/MP-TAB/WebUserControls/mod_controlliProd.ascx.cs @@ -37,7 +37,7 @@ namespace MoonProTablet.WebUserControls /// /// idx macchina selezionata /// - public string idxMacchinaFix + public new string idxMacchinaFix { get { diff --git a/MP-TAB/WebUserControls/mod_pianoProdMacc.ascx.cs b/MP-TAB/WebUserControls/mod_pianoProdMacc.ascx.cs index f9f3a84f..e10b728d 100644 --- a/MP-TAB/WebUserControls/mod_pianoProdMacc.ascx.cs +++ b/MP-TAB/WebUserControls/mod_pianoProdMacc.ascx.cs @@ -6,18 +6,12 @@ namespace MoonProTablet.WebUserControls { public partial class mod_pianoProdMacc : BaseUserControl { - protected void Page_Load(object sender, EventArgs e) - { - if (!Page.IsPostBack) - { - fixSelMaccPianoProd(); - } - } + #region Public Properties /// /// idx macchina selezionata /// - public string idxMacchinaFix + public new string idxMacchinaFix { get { @@ -41,11 +35,18 @@ namespace MoonProTablet.WebUserControls memLayer.ML.setSessionVal("IdxMacchina", value); } } - protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) + + #endregion Public Properties + + #region Private Methods + + /// + /// Se la machcina è MULTI --> mostro selettore + /// + private void fixSelMacc() { - subMaccSel = ddlSubMacc.SelectedValue; + divSelMacc.Visible = isMulti; fixSelMaccPianoProd(); - fixSelMacc(); } private void fixSelMaccPianoProd() @@ -60,6 +61,10 @@ namespace MoonProTablet.WebUserControls } } + #endregion Private Methods + + #region Protected Methods + protected void ddlSubMacc_DataBound(object sender, EventArgs e) { // se ho in memoria un valore LO REIMPOSTO... @@ -74,13 +79,22 @@ namespace MoonProTablet.WebUserControls { } } } - /// - /// Se la machcina è MULTI --> mostro selettore - /// - private void fixSelMacc() + + protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) { - divSelMacc.Visible = isMulti; + subMaccSel = ddlSubMacc.SelectedValue; fixSelMaccPianoProd(); + fixSelMacc(); } + + protected void Page_Load(object sender, EventArgs e) + { + if (!Page.IsPostBack) + { + fixSelMaccPianoProd(); + } + } + + #endregion Protected Methods } } \ No newline at end of file diff --git a/MP-TAB/WebUserControls/mod_regScarti.ascx.cs b/MP-TAB/WebUserControls/mod_regScarti.ascx.cs index ae89180b..b668fb9f 100644 --- a/MP-TAB/WebUserControls/mod_regScarti.ascx.cs +++ b/MP-TAB/WebUserControls/mod_regScarti.ascx.cs @@ -8,46 +8,22 @@ namespace MoonProTablet.WebUserControls { public partial class mod_regScarti : BaseUserControl { + #region Public Events /// /// registrato nuovo valore /// public event EventHandler eh_newVal; + /// /// registrato nuovo valore /// public event EventHandler eh_reset; - /// - /// caricamento pagina - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) - { - if (!Page.IsPostBack) - { - checkAll(); - } - } - private void checkAll() - { - fixSelMacc(); - fixData(); - checkOdl(); - lblOut.Text = ""; - switchBtnConferma(true); - lbtShowScarti.Visible = odlOk; - lblConfScarti.Visible = !odlOk; - } + #endregion Public Events + + #region Protected Properties - private void fixData() - { - DateTime adesso = DateTime.Now; - txtData.Text = adesso.ToString("yyyy-MM-dd"); - txtOra.Text = adesso.ToString("HH:mm"); - numPzScarto = 1; - } /// /// Num pezzi scarto /// @@ -64,24 +40,11 @@ namespace MoonProTablet.WebUserControls return answ; } } - /// - /// Verifica se abbia un ODL ATTIVO - /// - private void checkOdl() - { - lbtShowScarti.Visible = odlOk; - lblConfScarti.Visible = !odlOk; - lblMancaODL.Visible = !odlOk; - } - /// - /// Se la machcina è MULTI --> mostro selettore - /// - private void fixSelMacc() - { - divSelMacc.Visible = isMulti; - fixSelMaccScarti(); - } + #endregion Protected Properties + + #region Public Properties + /// /// Verifica se la macchina MAIN sia MULTI (da DatiMacchina / redis...) /// @@ -95,6 +58,35 @@ namespace MoonProTablet.WebUserControls return odlOk ? "" : "disabled"; } } + + /// + /// idx macchina selezionata + /// + public new string idxMacchinaFix + { + get + { + string answ = idxMacchina; + // verifoc: se multi uso selettore tendina... + if (isMulti) + { + if (ddlSubMacc.SelectedValue == "") + { + ddlSubMacc.DataBind(); + } + if (ddlSubMacc.SelectedValue != "") + { + answ = ddlSubMacc.SelectedValue; + } + } + return answ; + } + set + { + memLayer.ML.setSessionVal("IdxMacchina", value); + } + } + /// /// Verifica ODL OK (ovvero caricato x macchina...) /// @@ -119,75 +111,46 @@ namespace MoonProTablet.WebUserControls } } - /// - /// idx macchina selezionata - /// - public string idxMacchinaFix + #endregion Public Properties + + #region Private Methods + + private void checkAll() { - get - { - string answ = idxMacchina; - // verifoc: se multi uso selettore tendina... - if (isMulti) - { - if (ddlSubMacc.SelectedValue == "") - { - ddlSubMacc.DataBind(); - } - if (ddlSubMacc.SelectedValue != "") - { - answ = ddlSubMacc.SelectedValue; - } - } - return answ; - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } - /// - /// cambio stato visibilità pannello e testo button - /// - /// - /// - protected void lbtShowContr_Click(object sender, EventArgs e) - { - switchBtnConferma(!divDetail.Visible); - } - /// - /// determina comportamento btn conferma - /// - private void switchBtnConferma(bool showConf) - { - divDetail.Visible = showConf; - if (showConf) - { - lblShowScarti.Text = "Nascondi Registrazione SCARTI"; - } - else - { - lblShowScarti.Text = "Mostra Registrazione SCARTI"; - // sollevo evento! - if (eh_reset != null) - { - eh_reset(this, new EventArgs()); - } - } + fixSelMacc(); + fixData(); + checkOdl(); + lblOut.Text = ""; + switchBtnConferma(true); + lbtShowScarti.Visible = odlOk; + lblConfScarti.Visible = !odlOk; } - private void resetControlli() + /// + /// Verifica se abbia un ODL ATTIVO + /// + private void checkOdl() { - txtNote.Text = ""; - // nascondo! - switchBtnConferma(false); + lbtShowScarti.Visible = odlOk; + lblConfScarti.Visible = !odlOk; + lblMancaODL.Visible = !odlOk; } - protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) + private void fixData() { - subMaccSel = ddlSubMacc.SelectedValue; + DateTime adesso = DateTime.Now; + txtData.Text = adesso.ToString("yyyy-MM-dd"); + txtOra.Text = adesso.ToString("HH:mm"); + numPzScarto = 1; + } + + /// + /// Se la machcina è MULTI --> mostro selettore + /// + private void fixSelMacc() + { + divSelMacc.Visible = isMulti; fixSelMaccScarti(); - checkAll(); } private void fixSelMaccScarti() @@ -202,29 +165,13 @@ namespace MoonProTablet.WebUserControls } } - protected void ddlSubMacc_DataBound(object sender, EventArgs e) + private void resetControlli() { - // se ho in memoria un valore LO REIMPOSTO... - if (subMaccSel != "") - { - // provo a preselezionare... - try - { - ddlSubMacc.SelectedValue = subMaccSel; - } - catch - { } - } - } - /// - /// salvo produzione - /// - /// - /// - protected void lbtSalva_Click(object sender, EventArgs e) - { - salvaRegScarti("ND"); + txtNote.Text = ""; + // nascondo! + switchBtnConferma(false); } + /// /// Effettua salvataggio in registro scarti /// @@ -252,6 +199,53 @@ namespace MoonProTablet.WebUserControls resetControlli(); } + /// + /// determina comportamento btn conferma + /// + private void switchBtnConferma(bool showConf) + { + divDetail.Visible = showConf; + if (showConf) + { + lblShowScarti.Text = "Nascondi Registrazione SCARTI"; + } + else + { + lblShowScarti.Text = "Mostra Registrazione SCARTI"; + // sollevo evento! + if (eh_reset != null) + { + eh_reset(this, new EventArgs()); + } + } + } + + #endregion Private Methods + + #region Protected Methods + + protected void ddlSubMacc_DataBound(object sender, EventArgs e) + { + // se ho in memoria un valore LO REIMPOSTO... + if (subMaccSel != "") + { + // provo a preselezionare... + try + { + ddlSubMacc.SelectedValue = subMaccSel; + } + catch + { } + } + } + + protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) + { + subMaccSel = ddlSubMacc.SelectedValue; + fixSelMaccScarti(); + checkAll(); + } + /// /// rimanda alla pagina di dettaglio della macchina scelta /// @@ -281,5 +275,40 @@ namespace MoonProTablet.WebUserControls { txtNumPz.Text = ""; } + + /// + /// salvo produzione + /// + /// + /// + protected void lbtSalva_Click(object sender, EventArgs e) + { + salvaRegScarti("ND"); + } + + /// + /// cambio stato visibilità pannello e testo button + /// + /// + /// + protected void lbtShowContr_Click(object sender, EventArgs e) + { + switchBtnConferma(!divDetail.Visible); + } + + /// + /// caricamento pagina + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) + { + if (!Page.IsPostBack) + { + checkAll(); + } + } + + #endregion Protected Methods } } \ No newline at end of file diff --git a/MP-TAB/WebUserControls/mod_selPeriodo.ascx.cs b/MP-TAB/WebUserControls/mod_selPeriodo.ascx.cs index e8935872..f343f6d0 100644 --- a/MP-TAB/WebUserControls/mod_selPeriodo.ascx.cs +++ b/MP-TAB/WebUserControls/mod_selPeriodo.ascx.cs @@ -6,314 +6,357 @@ using System.Web.UI; using System.Web.UI.WebControls; using SteamWare; - namespace MoonProTablet.WebUserControls { - public partial class mod_selPeriodo : BaseUserControl - { - protected intervalloDate _intervallo; - /// - /// caricamento pagina - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) + public partial class mod_selPeriodo : BaseUserControl { - if (!Page.IsPostBack) - { - txtInizio.ToolTip = "inizio periodo di riferimento per i dati mostrati"; - txtFine.ToolTip = "fine periodo di riferimento per i dati mostrati"; - } - } - /// - /// avvio componente - /// - /// - protected override void OnInit(EventArgs e) - { - base.OnInit(e); - txtInizio.ToolTip = "inizio periodo di riferimento per i dati mostrati"; - txtFine.ToolTip = "fine periodo di riferimento per i dati mostrati"; - setIntervallo(); - } - /// - /// definisce se sia da mostrare il selettore delle ore nel controllo - /// - protected bool mostraSelOra - { - get - { - bool answ = false; - if (memLayer.ML.isInSessionObject("mostraSelOra")) - { - answ = memLayer.ML.BoolSessionObj("mostraSelOra"); - } - else - { - // leggo da sessione e salvo... - try - { - answ = memLayer.ML.CRB("mostraSelOra"); - } - catch - { } - memLayer.ML.setSessionVal("mostraSelOra", answ); - } - return answ; - } - } + #region Protected Fields - /// - /// gestione del selettore rapido dell'intervallo temporale... - /// - /// - /// - protected void ddlSelPeriodo_SelectedIndexChanged(object sender, EventArgs e) - { - // verifico cosa sia cambiato ed imposto date... - datario _datario = new datario(); - switch (ddlSelPeriodo.SelectedValue) - { - case "1": // selezione libera - break; - case "2": // oggi - _intervallo = _datario.giornata(DateTime.Now); - break; - case "3": // ieri - _intervallo = _datario.giornata(DateTime.Now.AddDays(-1)); - break; - case "4": - _intervallo = _datario.questaSett(DateTime.Now); - break; - case "5": - _intervallo = _datario.ultimiGiorni(DateTime.Now, 7); - break; - case "6": - _intervallo = _datario.questoMese(DateTime.Now); - break; - case "7": - _intervallo = _datario.ultimiGiorni(DateTime.Now, 30); - break; - case "8": - _intervallo = _datario.ultimiGiorni(DateTime.Now, 366); - break; - case "9": - _intervallo = _datario.estremiAnno(DateTime.Now); - break; - case "10": - _intervallo = _datario.estremiAnno(DateTime.Now.AddYears(-1)); - break; - case "11": - _intervallo = _datario.ultimiGiorni(DateTime.Now, 36600); - break; - default: - break; - } - if ((intervalloAnalisi.inizio != _intervallo.inizio) || (intervalloAnalisi.fine != _intervallo.fine)) - { - verificaCoerenzaDate(); - aggiornaDateMostrate(false); - // mostro btn update - btnUpdate.Visible = true; - if (autoUpdate) + protected intervalloDate _intervallo; + + #endregion Protected Fields + + #region Protected Properties + + /// + /// definisce se sia da mostrare il selettore delle ore nel controllo + /// + protected bool mostraSelOra { - forceUpdate(); + get + { + bool answ = false; + if (memLayer.ML.isInSessionObject("mostraSelOra")) + { + answ = memLayer.ML.BoolSessionObj("mostraSelOra"); + } + else + { + // leggo da sessione e salvo... + try + { + answ = memLayer.ML.CRB("mostraSelOra"); + } + catch + { } + memLayer.ML.setSessionVal("mostraSelOra", answ); + } + return answ; + } } - } - } - /// - /// effettua update delle date mostrate da intervallo analisi (ed eventualmente riporta update...) - /// - /// - private void aggiornaDateMostrate(bool doReportUpdate) - { - scriviDate(); - if (doReportUpdate) - { - reportUpdate(); - } - } - /// - /// scrive nuove date in controllo - /// - private void scriviDate() - { - // se intervallo non è valorizzato leggo da sessione... - if (!_intervallo.isValid) - { - _intervallo = intervalloAnalisi; - } - txtInizio.Text = _intervallo.inizio.ToString("yyyy-MM-dd"); - txtFine.Text = _intervallo.fine.ToString("yyyy-MM-dd"); - } - /// - /// imposta intervallo da sessione o di default - /// - private void setIntervallo() - { - intervalloDate _intervallo; - try - { - _intervallo = (intervalloDate)Session["_intervallo"]; - } - catch - { - _intervallo = new intervalloDate(); - _intervallo.inizio = DateTime.Now.AddDays(memLayer.ML.CRI("defDayFrom")); - _intervallo.fine = DateTime.Now.AddDays(1); - Session["_intervallo"] = _intervallo; - Session["_inizio"] = _intervallo.inizio; - Session["_fine"] = _intervallo.fine; - } - scriviDate(); - } - /// - /// update periodo - /// - private void aggiornaPeriodo() - { - _intervallo = new intervalloDate(); - // calcolo tempi arrotondati - _intervallo.inizio = Convert.ToDateTime(txtInizio.Text); - _intervallo.fine = Convert.ToDateTime(txtFine.Text); - verificaCoerenzaDate(); - reportUpdate(); - } - /// - /// verifica che le date dell'intervallo siano coerenti (inizio < fine) - /// - private void verificaCoerenzaDate() - { - // controllo date siano coerenti (fine > inizio)... - if (_intervallo.inizio >= _intervallo.fine) - { - // controllo non siano date successive ad oggi... - if (_intervallo.fine > DateTime.Now) + + #endregion Protected Properties + + #region Public Properties + + /// + /// indica se il controllo debba fare update in automatico o attendere pressione button update da utente + /// + public bool autoUpdate { get; set; } + + public DateTime fine { - _intervallo.fine = DateTime.Now; + get + { + return intervalloAnalisi.fine; + } } - _intervallo.inizio = _intervallo.fine.AddDays(-1); - } - //intervalloAnalisi = _intervallo; - aggiornaDateMostrate(false); - } - /// - /// evento cambio testo data inizio - /// - /// - /// - protected void txtInizio_TextChanged(object sender, EventArgs e) - { - procDateMod(); - } - /// - /// verifica la modifica delle date.. - /// - private void procDateMod() - { - // imposto il selettore a discesa... - setPeriodoFree(); - // mostro btn update - btnUpdate.Visible = true; - if (autoUpdate) - { - forceUpdate(); - } - } - /// - /// evento cambio testo data fine - /// - /// - /// - protected void txtFine_TextChanged(object sender, EventArgs e) - { - procDateMod(); - } - /// - /// in questo caso faccio udpate periodo mostrato - /// - /// - /// - protected void btnUpdate_Click(object sender, EventArgs e) - { - forceUpdate(); - } - /// - /// forza update - /// - private void forceUpdate() - { - aggiornaPeriodo(); - // nascondo btn update - btnUpdate.Visible = false; - } - /// - /// riporta aggiornamento a controller - /// - protected void reportUpdate() - { - intervalloAnalisi = _intervallo; - // alzo l'evento d update/inserimento e ricarico cache... - if (eh_doUpdate != null) - { - eh_doUpdate(this, new EventArgs()); - } - } - public intervalloDate intervalloAnalisi - { - get - { - return (intervalloDate)Session["_intervallo"]; - } - set - { - intervalloDate interv = value; - Session["_intervallo"] = interv; - Session["_inizio"] = interv.inizio; - Session["_fine"] = interv.fine; - _intervallo = interv; - aggiornaDateMostrate(false); - } - } - public DateTime inizio - { - get - { - return intervalloAnalisi.inizio; - } - } - public DateTime fine - { - get - { - return intervalloAnalisi.fine; - } - } - /// - /// effettua update - /// - /// - public void doUpdate(bool doReportUpdate) - { - aggiornaDateMostrate(doReportUpdate); - } - /// - /// imposta periodo libero di selezione - /// - public void setPeriodoFree() - { - ddlSelPeriodo.SelectedIndex = 0; - } - /// - /// indica se il controllo debba fare update in automatico o attendere pressione button update da utente - /// - public bool autoUpdate { get; set; } - #region gestione eventi + public DateTime inizio + { + get + { + return intervalloAnalisi.inizio; + } + } - public event EventHandler eh_doUpdate; + public intervalloDate intervalloAnalisi + { + get + { + return (intervalloDate)Session["_intervallo"]; + } + set + { + intervalloDate interv = value; + Session["_intervallo"] = interv; + Session["_inizio"] = interv.inizio; + Session["_fine"] = interv.fine; + _intervallo = interv; + aggiornaDateMostrate(false); + } + } - #endregion - - } + #endregion Public Properties + + #region Private Methods + + /// + /// effettua update delle date mostrate da intervallo analisi (ed eventualmente riporta update...) + /// + /// + private void aggiornaDateMostrate(bool doReportUpdate) + { + scriviDate(); + if (doReportUpdate) + { + reportUpdate(); + } + } + + /// + /// update periodo + /// + private void aggiornaPeriodo() + { + _intervallo = new intervalloDate(); + // calcolo tempi arrotondati + _intervallo.inizio = Convert.ToDateTime(txtInizio.Text); + _intervallo.fine = Convert.ToDateTime(txtFine.Text); + verificaCoerenzaDate(); + reportUpdate(); + } + + /// + /// forza update + /// + private void forceUpdate() + { + aggiornaPeriodo(); + // nascondo btn update + btnUpdate.Visible = false; + } + + /// + /// verifica la modifica delle date.. + /// + private void procDateMod() + { + // imposto il selettore a discesa... + setPeriodoFree(); + // mostro btn update + btnUpdate.Visible = true; + if (autoUpdate) + { + forceUpdate(); + } + } + + /// + /// scrive nuove date in controllo + /// + private void scriviDate() + { + // se intervallo non è valorizzato leggo da sessione... + if (!_intervallo.isValid) + { + _intervallo = intervalloAnalisi; + } + txtInizio.Text = _intervallo.inizio.ToString("yyyy-MM-dd"); + txtFine.Text = _intervallo.fine.ToString("yyyy-MM-dd"); + } + + /// + /// imposta intervallo da sessione o di default + /// + private void setIntervallo() + { + intervalloDate _intervallo; + try + { + _intervallo = (intervalloDate)Session["_intervallo"]; + } + catch + { + _intervallo = new intervalloDate(); + _intervallo.inizio = DateTime.Now.AddDays(memLayer.ML.CRI("defDayFrom")); + _intervallo.fine = DateTime.Now.AddDays(1); + Session["_intervallo"] = _intervallo; + Session["_inizio"] = _intervallo.inizio; + Session["_fine"] = _intervallo.fine; + } + scriviDate(); + } + + /// + /// verifica che le date dell'intervallo siano coerenti (inizio < fine) + /// + private void verificaCoerenzaDate() + { + // controllo date siano coerenti (fine > inizio)... + if (_intervallo.inizio >= _intervallo.fine) + { + // controllo non siano date successive ad oggi... + if (_intervallo.fine > DateTime.Now) + { + _intervallo.fine = DateTime.Now; + } + _intervallo.inizio = _intervallo.fine.AddDays(-1); + } + //intervalloAnalisi = _intervallo; + aggiornaDateMostrate(false); + } + + #endregion Private Methods + + #region Protected Methods + + /// + /// in questo caso faccio udpate periodo mostrato + /// + /// + /// + protected void btnUpdate_Click(object sender, EventArgs e) + { + forceUpdate(); + } + + /// + /// gestione del selettore rapido dell'intervallo temporale... + /// + /// + /// + protected void ddlSelPeriodo_SelectedIndexChanged(object sender, EventArgs e) + { + // verifico cosa sia cambiato ed imposto date... + datario _datario = new datario(); + switch (ddlSelPeriodo.SelectedValue) + { + case "1": // selezione libera + break; + + case "2": // oggi + _intervallo = _datario.giornata(DateTime.Now); + break; + + case "3": // ieri + _intervallo = _datario.giornata(DateTime.Now.AddDays(-1)); + break; + + case "4": + _intervallo = _datario.questaSett(DateTime.Now); + break; + + case "5": + _intervallo = _datario.ultimiGiorni(DateTime.Now, 7); + break; + + case "6": + _intervallo = _datario.questoMese(DateTime.Now); + break; + + case "7": + _intervallo = _datario.ultimiGiorni(DateTime.Now, 30); + break; + + case "8": + _intervallo = _datario.ultimiGiorni(DateTime.Now, 366); + break; + + case "9": + _intervallo = _datario.estremiAnno(DateTime.Now); + break; + + case "10": + _intervallo = _datario.estremiAnno(DateTime.Now.AddYears(-1)); + break; + + case "11": + _intervallo = _datario.ultimiGiorni(DateTime.Now, 36600); + break; + + default: + break; + } + if ((intervalloAnalisi.inizio != _intervallo.inizio) || (intervalloAnalisi.fine != _intervallo.fine)) + { + verificaCoerenzaDate(); + aggiornaDateMostrate(false); + // mostro btn update + btnUpdate.Visible = true; + if (autoUpdate) + { + forceUpdate(); + } + } + } + + /// + /// avvio componente + /// + /// + protected override void OnInit(EventArgs e) + { + base.OnInit(e); + txtInizio.ToolTip = "inizio periodo di riferimento per i dati mostrati"; + txtFine.ToolTip = "fine periodo di riferimento per i dati mostrati"; + setIntervallo(); + } + + /// + /// caricamento pagina + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) + { + if (!Page.IsPostBack) + { + txtInizio.ToolTip = "inizio periodo di riferimento per i dati mostrati"; + txtFine.ToolTip = "fine periodo di riferimento per i dati mostrati"; + } + } + + /// + /// evento cambio testo data fine + /// + /// + /// + protected void txtFine_TextChanged(object sender, EventArgs e) + { + procDateMod(); + } + + /// + /// evento cambio testo data inizio + /// + /// + /// + protected void txtInizio_TextChanged(object sender, EventArgs e) + { + procDateMod(); + } + + #endregion Protected Methods + + #region Public Methods + + /// + /// effettua update + /// + /// + public void doUpdate(bool doReportUpdate) + { + aggiornaDateMostrate(doReportUpdate); + } + + /// + /// riporta aggiornamento a controller + /// + public override void reportUpdate() + { + intervalloAnalisi = _intervallo; + base.reportUpdate(); + } + + /// + /// imposta periodo libero di selezione + /// + public void setPeriodoFree() + { + ddlSelPeriodo.SelectedIndex = 0; + } + + #endregion Public Methods + } } \ No newline at end of file