Как перехватить эксепшен при формировании превью?
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Как перехватить эксепшен при формировании превью?
Обновил в своей программе генератор отчетов с 2013.2 на 2014.1. Дальше обновляться не могу, т.к. пока хочется сохранить совместимость с Framework 2.0.
После этого обновления у некоторых пользователей с высокой вероятностью стали происходить эксепшены при генерации превью отчета. Воспроизвести ошибку мне не удается, даже на тех же данных и на тех же ОС. Вероятно, проблема в конфигурации ОС пользователей. При этом у пользователей мелькает вот это окно: и в результате они видят вот такое превью: При этом распечатывается отчет корректно. Нажать в первом окне кнопку "Сведения" невозможно, т.к. оно очень быстро исчезает. В связи с этим хочется как-то перехватить этот эксепшен и получить стек вызова. Как вариант, записать данную ошибку в лог. Ну и в идеале - вообще исключить данную ошибку.
После этого обновления у некоторых пользователей с высокой вероятностью стали происходить эксепшены при генерации превью отчета. Воспроизвести ошибку мне не удается, даже на тех же данных и на тех же ОС. Вероятно, проблема в конфигурации ОС пользователей. При этом у пользователей мелькает вот это окно: и в результате они видят вот такое превью: При этом распечатывается отчет корректно. Нажать в первом окне кнопку "Сведения" невозможно, т.к. оно очень быстро исчезает. В связи с этим хочется как-то перехватить этот эксепшен и получить стек вызова. Как вариант, записать данную ошибку в лог. Ну и в идеале - вообще исключить данную ошибку.
Любой путь начинается с первого шага
Re: Как перехватить эксепшен при формировании превью?
Здравствуйте, Михаил.
К сожалению, мы не можем назвать причину происходящего и не можем помочь в её решении.
Нам необходима дополнительная информация по проблеме.
Когда возникает проблема? Каждый раз или нет? После каких действий?
Спасибо.
К сожалению, мы не можем назвать причину происходящего и не можем помочь в её решении.
Нам необходима дополнительная информация по проблеме.
Когда возникает проблема? Каждый раз или нет? После каких действий?
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Как перехватить эксепшен при формировании превью?
Проблема возникает не всегда, вероятность 90%. Возникает при отображении превью отчета. От самого отчета и данных в нем не зависит, у меня десятки шаблонов отчетов, ошибка возникает на разных и зависит скорее от компьютера пользователя. Причем на одном может стабильно работать без проблем, на другом стабильно выдавать ошибку.
Вот темы с обсуждением этой ошибки: http://printstore.ru/forum/viewtopic.php?t=1210, http://printstore.ru/forum/viewtopic.php?t=1217.
Я нашел, что есть следующие настройки генератора отчетов:
StiOptions.Engine.HideExceptions
StiOptions.Engine.HideMessages
StiOptions.Engine.LogEnabled
StiOptions.Engine.TraceEnabled
Но документацию и примеров кода по ним я не нашел и непонятно, например, применимы ли данные настройки к движку Reports.Net и куда сохраняется лог, если его включить.
Есть только вот что:
Вот темы с обсуждением этой ошибки: http://printstore.ru/forum/viewtopic.php?t=1210, http://printstore.ru/forum/viewtopic.php?t=1217.
Я нашел, что есть следующие настройки генератора отчетов:
StiOptions.Engine.HideExceptions
StiOptions.Engine.HideMessages
StiOptions.Engine.LogEnabled
StiOptions.Engine.TraceEnabled
Но документацию и примеров кода по ним я не нашел и непонятно, например, применимы ли данные настройки к движку Reports.Net и куда сохраняется лог, если его включить.
Есть только вот что:
Здесь непонятно, установка данного параметра в TRUE только скроет окошки с информацией об исключении или пробросит их на уровень выше и я смогу обработать это исключение?10.7 How to show all exceptions which are invoked in Stimulsoft
Reports.Net?
Set the static StiOptions.Engine.HideExceptions property in false.
Любой путь начинается с первого шага
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Как перехватить эксепшен при формировании превью?
С логом разобрался - создается файл report.log в папке программы. Есть ли возможность настройки лога?
Любой путь начинается с первого шага
Re: Как перехватить эксепшен при формировании превью?
Михаил, Вы бы кнопку "Сведения" на первом скриншоте нажали бы для пояснения проблемы
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Как перехватить эксепшен при формировании превью?
Пожалуйста, читайте внимательнее, я написал в первом сообщении:
Если бы можно было нажать эту кнопку, вопрос давно был бы закрыт.Нажать в первом окне кнопку "Сведения" невозможно, т.к. оно очень быстро исчезает.
Любой путь начинается с первого шага
Re: Как перехватить эксепшен при формировании превью?
Здравсвтуйте.
Вы можете использовать следующий код для включения лога.
Попробуйте также посмотреть журнал событий Windows. Там должна сохраняться информация об ошибках.
Спасибо.
Вы можете использовать следующий код для включения лога.
Код: Выделить всё
Stimulsoft.Report.StiLogService.LogEnabled = true;
StiLogService service = StiConfig.Services.GetService(typeof(StiLogService)) as StiLogService;
service.LogPath = "Report.log"; // Path and filename
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Как перехватить эксепшен при формировании превью?
Спасибо. Я уже собрал версию с Stimulsoft.Report.StiLogService.LogEnabled = true. При этом лог файл формируется в папке с программой. Отправил пользователю, жду ответа.
Любой путь начинается с первого шага
Re: Как перехватить эксепшен при формировании превью?
Ждём новостей от вас.
Спасибо.
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Как перехватить эксепшен при формировании превью?
Пользователь мне ответил. Вот содержимое файла:
2015:09:14, 16:02: Отчет: Rendering report
2015:09:14, 16:02: Отчет: Rendering report
2015:09:14, 16:03: Отчет: Rendering report
2015:09:14, 16:03: Отчет: Rendering report
Сообщение об ошибке проскакивает, вместо предпросмотра красный квадрат, в лог ничего не пишется. Есть ли еще какие-то варианты понять причины ошибки?
2015:09:14, 16:02: Отчет: Rendering report
2015:09:14, 16:02: Отчет: Rendering report
2015:09:14, 16:03: Отчет: Rendering report
2015:09:14, 16:03: Отчет: Rendering report
Сообщение об ошибке проскакивает, вместо предпросмотра красный квадрат, в лог ничего не пишется. Есть ли еще какие-то варианты понять причины ошибки?
Любой путь начинается с первого шага