Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / печать Crystal report / 6 сообщений из 6, страница 1 из 1
17.03.2005, 18:45
    #32966796
def-or
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
печать Crystal report
У меня на Web форме выводится отчет Crystal. Всё хорошо пока я не пытаюсь его распечатать или экспортировать. При нажатии кнопки печать он генерит PDF, который скачивается, но не открывается(пишет что файл повреждён). При экспорте в PDF то же самое, а в EXCEL экспортирует не отчёт а всю веб-страницу. Как его нормально экспортировать/печать? Заранее спасибо.
...
Рейтинг: 0 / 0
17.03.2005, 20:28
    #32966990
Oleg Lugovskiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
печать Crystal report
генери сразу в пдф файл
и открывай егого в експлорере

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
			rptchecklist rptCL = new rptchecklist();
			
			rptCL.SetDataSource(dsReport);
			rptCL.Refresh();
			Session["rptCL"] = rptCL;
					
		
			// Создаем отчет в pdf-файле
			CrystalDecisions.Shared.ExportOptions myExportOptions = new CrystalDecisions.Shared.ExportOptions();
			CrystalDecisions.Shared.DiskFileDestinationOptions myDiskOptions = new CrystalDecisions.Shared.DiskFileDestinationOptions();

			//string FileName = Server.MapPath("/") + "\\" + Session.SessionID.ToString() + ".pdf";
			string FileName = Server.MapPath("/") + "\\" + Session.SessionID.ToString() + ".pdf";
			
			myDiskOptions.DiskFileName = FileName;

			myExportOptions = rptCL.ExportOptions;

			myExportOptions.DestinationOptions = myDiskOptions;
			myExportOptions.ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.DiskFile;
			myExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;

			rptCL.Export();
			
			RegisterStartupScript("opennewwindow","<script>window.open('preview.aspx?id="+Session.SessionID.ToString()+"').focus(); </script>");


а сам preview.aspx
в лоаде имеет такие строчки


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
			if (!Page.IsPostBack)
			{
				Response.ClearContent();
				Response.ClearHeaders();
				Response.ContentType = "application/pdf";
				Response.WriteFile(Server.MapPath("/") + "\\" + Request.QueryString["id"].ToString()+".pdf");
				Response.Flush();
				Response.Close();
				System.IO.File.Delete(Request.Params["FileName"].ToString());
			}
...
Рейтинг: 0 / 0
18.03.2005, 10:09
    #32967477
def-or
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
печать Crystal report
Большое спасибо! помогло.
...
Рейтинг: 0 / 0
18.03.2005, 16:03
    #32968656
def-or
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
печать Crystal report
И ещё вопрос. А можно как-нибудь сделать чтобы файлы pdf с сервера удалялись?
...
Рейтинг: 0 / 0
18.03.2005, 16:08
    #32968677
Oleg Lugovskiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
печать Crystal report
def-orИ ещё вопрос. А можно как-нибудь сделать чтобы файлы pdf с сервера удалялись?

Можно
Код: plaintext
System.IO.File.Delete(Request.Params["FileName"].ToString());
...
Рейтинг: 0 / 0
29.11.2005, 17:54
    #33406710
Oleg Lugovskiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
печать Crystal report
А можно сделать еще проще
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
					MemoryStream oStream; // using System.IO
					oStream = (MemoryStream)rptCL.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
					Response.Clear();           
					Response.Buffer= true;
					Response.ContentType = "application/pdf";
					Response.BinaryWrite(oStream.ToArray());
					Response.End();
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / печать Crystal report / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]