using SteamWare; using System; using System.Data; using System.Web.UI.WebControls; namespace MoonPro_site.WebUserControls { public partial class mod_gestioneDatiMacchine : System.Web.UI.UserControl { #region area da NON modificare #region area protected protected string _idxGridView; /// /// reset della selezione /// /// /// protected void btnReset_Click(object sender, EventArgs e) { resetSelezione(); } /// /// gestione cambio selezione valore /// /// /// protected void grView_SelectedIndexChanged(object sender, EventArgs e) { // salvo in session il valore selezionato... SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue, false); // sollevo evento nuovo valore... if (eh_selValore != null) { eh_selValore(this, new EventArgs()); } } /// /// traduce gli header delle colonne /// /// /// protected void grView_DataBound(object sender, EventArgs e) { if (grView.Rows.Count > 0) { LinkButton lb; // aggiorno gli headers foreach (TableCell cella in grView.HeaderRow.Cells) { try { lb = (LinkButton)cella.Controls[0]; lb.Text = traduci(lb.Text); } catch { } } int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1); lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord); } else { lblNumRec.Text = ""; } } /// /// recupera i dati di un nuovo record contenuti nel footer di un gridView; /// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...) /// /// /// protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e) { //recupero la riga footer... DataColumnCollection colonne = colonneObj(); string nomeCol; string tipoColonna = ""; foreach (DataColumn colonna in colonne) { nomeCol = colonna.ColumnName; // cerco un textbox o quello che sia... if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null) { tipoColonna = "textBox"; } else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null) { tipoColonna = "dropDownList"; } else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null) { tipoColonna = "checkBox"; } else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null) { tipoColonna = "selAjax"; } // in base al tipo salvo negli inputparameters dell'ODS switch (tipoColonna) { case "textBox": e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text; break; case "dropDownList": e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue; break; case "checkBox": e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked; break; //case "selAjax": // e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore; // break; default: break; } tipoColonna = ""; } } /// /// svuoto da cache post update /// /// /// protected void ods_Updated(object sender, ObjectDataSourceStatusEventArgs e) { // evento come nuovo... if (eh_nuovoValore != null) { eh_nuovoValore(this, new EventArgs()); } } #endregion #region are public /// /// effettua traduzione del lemma /// /// /// public string traduci(string lemma) { return user_std.UtSn.Traduci(lemma); } /// /// effettua traduzione in inglese del lemma /// /// /// public string traduciEn(string lemma) { return user_std.UtSn.TraduciEn(lemma); } /// /// resetta la selezione dei valori in caso di modifiche su altri controlli /// public void resetSelezione() { SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView)); grView.SelectedIndex = -1; grView.DataBind(); lblWarning.Visible = false; if (eh_resetSelezione != null) { eh_resetSelezione(this, new EventArgs()); } } #endregion #endregion #region gestione eventi public event EventHandler eh_resetSelezione; public event EventHandler eh_nuovoValore; public event EventHandler eh_selValore; #endregion #region area da modificare protected override void OnLoad(EventArgs e) { base.OnLoad(e); } /// inizializzazione valori di default /// /// protected override void OnInit(EventArgs e) { base.OnInit(e); _idxGridView = "IdxMacchina"; } /// /// nuovo valore creato... /// /// /// void mod_newOdl1_eh_nuovoValore(object sender, EventArgs e) { // aggiorno! resetSelezione(); } /// /// elenco colonne del datagrid /// /// protected DataColumnCollection colonneObj() { MapoDb.DS_ProdTempi.DatiMacchineDataTable tabella = new MapoDb.DS_ProdTempi.DatiMacchineDataTable(); DataColumnCollection colonne = tabella.Columns; return colonne; } public bool delEnabled(object _idx) { bool answ = false; return answ; } /// /// definisce scrivibilità/editabilità del controllo /// /// public bool isWritable() { return true; } #endregion } }