using MapoDb; using SteamWare; using System; using System.Web.UI; namespace MoonProTablet { public partial class fixODL : BasePage { #region Protected Properties protected string idxMacchinaCurr { get { return hfIdxMacchina.Value; } set { hfIdxMacchina.Value = value; cmp_selPODL.idxMacchinaFix = value; } } #endregion Protected Properties #region Public Properties /// /// idx macchina selezionata /// public string idxMacchinaSel { get { string answ = idxMacchina; // verifico: 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); } } /// /// idx macchina selezionata /// public int idxOdlSel { get { return cmp_selPODL.idxODLSel; } } #endregion Public Properties #region Private Methods private void checkAll() { fixSelMacc(); idxMacchinaCurr = idxMacchinaSel; } private void Cmp_selPODL_eh_doUpdate(object sender, EventArgs e) { fixBtnImpostaODL(); } private void Cmp_selPODL_eh_selVal(object sender, EventArgs e) { fixBtnImpostaODL(); } private void fixBtnImpostaODL() { // verifico se selezionato un ODL sorgente... lbtSetODL.Visible = idxOdlSel > 0; // salvo in sessione... idxODL = idxOdlSel; } /// /// Se la machcina è MULTI --> mostro selettore /// private void fixSelMacc() { divSelMacc.Visible = isMulti; if (isMulti) { // salvo selezione submacc ddlSubMacc.DataBind(); subMaccSel = ddlSubMacc.SelectedValue; } } #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; checkAll(); } /// /// Registra attivazione ODL per macchina corrente... /// /// /// protected void lbtSetODL_Click(object sender, EventArgs e) { if (idxMacchinaSel != "" && idxOdlSel > 0) { if (enableRPO) { // registro ODL retroattivamente... DataLayerObj.taODL.inizioSetupPromessaPostuma(idxOdlSel, DataLayerObj.MatrOpr, idxMacchinaSel); } else { // registro ODL retroattivamente... DataLayerObj.taODL.insPostumo(idxOdlSel, idxMacchinaSel); } } // controllo: se il nuovo ODL è stato registrato --> rimando a pagina ODL/Attrezzaggio... bool odlOk = false; try { // ricalcolo MSE DataLayerObj.taMSE.getByRefreshData(0); // verifico! int idxODL = DataLayerObj.taMSE.getByIdxMacchina(idxMacchinaSel)[0].idxODL; odlOk = (idxODL > 0); } catch (Exception exc) { logger.lg.scriviLog(string.Format("Errore recupero ODL corrente da confermare per la macchina {0}{1}{2}", idxMacchinaSel, Environment.NewLine, exc), tipoLog.ERROR); } // forzo COMUNQUE redirect... Response.Redirect("ODL"); } /// /// Caricamento pagina /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { fixSelMacc(); idxMacchinaCurr = idxMacchinaSel; fixBtnImpostaODL(); DateTime adesso = DateTime.Now; hfDataTo.Value = adesso.ToString(); hfDataFrom.Value = adesso.AddMonths(-1).ToString(); } cmp_selPODL.eh_selVal += Cmp_selPODL_eh_selVal; cmp_selPODL.eh_doUpdate += Cmp_selPODL_eh_doUpdate; } #endregion Protected Methods } }