powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / открытие файла до загрузки его на клиент
5 сообщений из 5, страница 1 из 1
открытие файла до загрузки его на клиент
    #33731806
andrew_zak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе время суток!
Есть такая задачка - может кто стыкался. Некая програма на АСП.НЕТ генерит отчет в формате pdf и выкидывает его клиенту (IE + Adode Reader) Response.Redirect("file.pdf"). Размер файла - 126 кб. С етой програмой работают люди, которые доступаются по полхим каналам связи, возникает такая проблема - ИЕ пробует открыть файл до того как тот успеет упасть в кеш, соответственно, не видит EOF (end of file) в результате чего - получяется ошибка
Error in File C:\Inetpub\wwwroot\Report\DebZP.rpt: Failed to open a rowset.
фреймворк 1,1, студия 2003, клиенты с осёй ХР СП2
-----------------------------------------------------
Все знают, что реализация некоей идеи невозможна, но вот находится человек, который этого не знает, и у него все получается! (Эйнштейн о том, как делаются открытия)
...
Рейтинг: 0 / 0
открытие файла до загрузки его на клиент
    #33732158
Alex Kuznetsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код в студию, пожалуйста.
________________________________________________________
Всегда есть куда развиваться, нужно просто этого хотеть.
...
Рейтинг: 0 / 0
открытие файла до загрузки его на клиент
    #33735867
andrew_zak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Формирование и выдача отчёта клиенту (привожу онклик кнопеля как есть)
Код: 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.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
        Dim myExportOption As CrystalDecisions.Shared.ExportOptions
        Dim myDiskFileOption As CrystalDecisions.Shared.DiskFileDestinationOptions
        Dim myExportFile As String
        Dim myReport As New CrystalDecisions.CrystalReports.Engine.ReportDocument
        Dim rptLogInfo As New CrystalDecisions.Shared.TableLogOnInfo

        Dim p As New CrystalDecisions.Shared.ParameterValues
        Dim cP As New CrystalDecisions.Shared.ParameterDiscreteValue

        Try
            cP.Value = CInt(Request.QueryString( 1 ).Trim)
            p.Add(cP)
            rptLogInfo.ConnectionInfo.ServerName = System.Configuration.ConfigurationSettings.AppSettings.Get("DBSrv")
            rptLogInfo.ConnectionInfo.DatabaseName = System.Configuration.ConfigurationSettings.AppSettings.Get("DB")

            rptLogInfo.ConnectionInfo.UserID = user_login
            rptLogInfo.ConnectionInfo.Password = user_pass

            myReport.Load(Session("CardDBConnect").report.trim + c.ReportName)
            myReport.Database.Tables( 0 ).ApplyLogOnInfo(rptLogInfo)
            myExportFile = Session("CardDBConnect").tempDir & Session.SessionID.ToString & ".pdf"
            myDiskFileOption = New CrystalDecisions.Shared.DiskFileDestinationOptions
            myDiskFileOption.DiskFileName = myExportFile
            myExportOption = myReport.ExportOptions
            With myExportOption
                .DestinationOptions = myDiskFileOption
                .ExportDestinationType = CrystalDecisions.[Shared].ExportDestinationType.DiskFile
                .ExportFormatType = CrystalDecisions.[Shared].ExportFormatType.PortableDocFormat
            End With
            myReport.DataDefinition.ParameterFields("IDCard").ApplyCurrentValues(p)
            myReport.Export()

            Response.ClearContent()
            Response.ClearHeaders()
            Response.ContentType = "application/pdf"
            Response.WriteFile(myExportFile)
            Response.Flush()
            Response.Close()
            ''Response.Redirect(".\Temp\" + Session.SessionID.ToString + ".rtf")
            System.IO.File.Delete(myExportFile)
        Catch ex As Exception
            Response.Write("<FONT SIZE = 2 COLOR = red><B>Помилка.</br>" + ex.Message + "</B></FONT>")
        End Try
    End Sub

---------------------------------------
Все знают, что реализация некоей идеи невозможна, но вот находится человек, который этого не знает, и у него все получается! (Эйнштейн о том, как делаются открытия)
...
Рейтинг: 0 / 0
открытие файла до загрузки его на клиент
    #33737772
Alex Kuznetsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так, батенька, зачем-же Вы файл-то удаляете?
Ведь, редирект посылается на клиента, и будет он пуслан после окончания обработки события нажатия кнопки, а пока всё это до клиента дойдёт - файлик то тю-тю - удалён.
Поэтому лучше провести удаление сего файла в момент закрытия сессии, т.е. отловить событие закрытия сессии и уже там почистить всё, что нужно.
________________________________________________________
Всегда есть куда развиваться, нужно просто этого хотеть.
...
Рейтинг: 0 / 0
открытие файла до загрузки его на клиент
    #33757507
andrew_zak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
решил проблему. дело было не в удалении файла - там как раз всё гладко. решилась проблема апгрейдом рантайм-библиотек кристал-репортов с 8.5 на 9.2 -ю версию
------------------------------------------------
Все знают, что реализация некоей идеи невозможна, но вот находится человек, который этого не знает, и у него все получается! (Эйнштейн о том, как делаются открытия)
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / открытие файла до загрузки его на клиент
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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