using SteamWare; using System; using System.IO; using System.Web; using System.Web.UI; namespace MP_SITE { public class BaseExportPage : System.Web.UI.Page { protected resoconti _resoconti; /// /// idx della macchina da mostrare /// public string idxMacchina { get { string idxMacchina = "1"; try { idxMacchina = memLayer.ML.StringSessionObj("IdxMacchina"); } catch { } return idxMacchina; } set { memLayer.ML.setSessionVal("IdxMacchina", value); } } /// /// restituisce stringa formattata in HH:mm /// /// /// public string durataEvento(object durataMinuti) { string answ = ""; if (durataMinuti != null) { //string durataFormattata = ""; //int ore = (int)Math.Floor(((double)durataMinuti) / 60); //durataFormattata = string.Format("{0}h:{1:#.0}min", ore, (double)durataMinuti - 60 * ore); //return durataFormattata; answ = durataMinuti.ToString(); } return answ; } public string macchinaDaIdx(object idx) { string answ = ""; if (idx != null) { answ = _resoconti.macchinaDaIdx(idx.ToString()); } return answ; } public string operatoreDaMatr(object matricola) { int matr = 0; if (matricola != null) { try { matr = Convert.ToInt32(matricola); } catch { } } return _resoconti.oprDaMatr(matr); } public string statoDaIdx(object idx) { return _resoconti.statoDaIdx(Convert.ToInt32(idx)); } public string tipoDaIdx(object idx) { return _resoconti.tipoDaIdx(Convert.ToInt32(idx)); } public override void VerifyRenderingInServerForm(Control control) { // Confirms that an HtmlForm control is rendered for the specified ASP.NET server control at run time. } internal virtual void aggiornamento() { } internal void doExport() { StringWriter stringWrite; HtmlTextWriter htmlWrite; startResponse(out stringWrite, out htmlWrite); renderControl(htmlWrite); endResponse(stringWrite); } internal void endResponse(StringWriter stringWrite) { Response.Write(stringWrite.ToString()); Response.End(); } internal virtual void renderControl(HtmlTextWriter htmlWrite) { } internal void startResponse(out StringWriter stringWrite, out HtmlTextWriter htmlWrite) { Response.Clear(); Response.AddHeader("content-disposition", "attachment; filename=DatiConfermati.xls"); Response.Charset = ""; // If you want the option to open the Excel file without saving than // comment out the line below Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = "application/vnd.xls"; stringWrite = new StringWriter(); htmlWrite = new HtmlTextWriter(stringWrite); } protected void Page_Load(object sender, EventArgs e) { _resoconti = new resoconti(); if (!Page.IsPostBack) { aggiornamento(); doExport(); } } } }