02.02.2011, 06:46 | #1 |
HAI; CAN HAS STDIO?
|
экспорт в Excel из EP (AX 2009)
есть для этого простой код, который выглядит так:
X++: protected void Button3_Click(object sender, EventArgs e) { string attachment = "attachment; filename=Contacts.xls"; Response.ClearContent(); Response.AddHeader("content-disposition", attachment); Response.ContentType = "application/ms-excel"; StringWriter sw = new StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); AxGridView1.RenderControl(htw); Response.Write(sw.ToString()); Response.End(); } X++: "Control 'GridView1' of type 'GridView' must be placed inside a form tag with runat=server." X++: public override void VerifyRenderingInServerForm(Control control) { } или, может, есть какие-то другие решения? спасибо
__________________
our sharp bitter vitriol is not that of the vulgar. |
|
02.02.2011, 09:07 | #2 |
Участник
|
Мы делали редирект на форму в Page_load которой написана передача файла
X++: protected void Page_Load(object sender, EventArgs e) { string sFileName = this.FormParameter("SendFileName"); try { FileInfo fileInfo = new FileInfo(sFileName); Response.Clear(); //Response.ClearContent(); //Response.ClearHeaders(); Response.AddHeader("Pragma", "public"); Response.AddHeader("Cache-Control", "public"); Response.AddHeader("Content-Cache", "max-age=0"); Response.AddHeader("Content-Disposition", " attachment; filename = " + fileInfo.Name); Response.ContentType = "application/octet-stream"; Response.AppendHeader("Content-Length", fileInfo.Length.ToString()); Response.TransmitFile(sFileName); Response.Flush(); } catch { this.ShowInfoMSG("Ошибка отправки файла"); } finally { if (File.Exists(sFileName)) File.Delete(sFileName); Response.End(); } } http://blogs.msdn.com/b/solutions/ar...ad-a-file.aspx Последний раз редактировалось player; 02.02.2011 в 09:23. |
|
03.02.2011, 03:52 | #3 |
HAI; CAN HAS STDIO?
|
так вы, похоже, файл сначала писали на диск. а можно как-то без этого обойтись? а я пока посмотрю на упомянутый в статье EPDocuGet
__________________
our sharp bitter vitriol is not that of the vulgar. |
|
03.02.2011, 06:50 | #4 |
Участник
|
Обойтись без этого задача поставлена, но сроки ее реализации неясны ввиду некритичности.
|
|
03.02.2011, 07:37 | #5 |
HAI; CAN HAS STDIO?
|
и на том спасибо
__________________
our sharp bitter vitriol is not that of the vulgar. |
|
03.02.2011, 14:44 | #6 |
Участник
|
попробуйте посмотреть как работает стандартный веблет - EPDocuGetWeblet, на портале
|
|
04.02.2011, 04:34 | #7 |
HAI; CAN HAS STDIO?
|
смотрел занятно работает. только файл у меня генерируется на ASP стороне, что же мне его, записывать на диск, делать редирект на новую страницу, которая будет его подбирать и выдавать пользователю? как вариант.
я сейчас на другой проект переключился, как вернусь, попробую.
__________________
our sharp bitter vitriol is not that of the vulgar. |
|
|
|