Страница 1 из 1

Как в StiWebViewerSL получить ошибку построения отчета

Добавлено: 19 сен 2014, 17:28
centnot
Добрый день,

Вопрос такой: как коректно получать сообщение об ошибке из StiWebViewerSL?

Есть aspx страница, на которой расположен контрол StiWebViewerSL. В код-биханде в него из БД погружается отчет. При больших данных (более 500 страниц), отчет не отображается, при этом пользователь видит пустую страницу. (см. во вложении).

Никакой ошибки не выводиться, и не пробрасывается. Пытались получить какой-нить лог ошибки через StiOptions.Engine.HideExceptions, StiOptions.Engine.HideMessages, StiOptions.Engine.LogEnabled, StiOptions.Engine.TraceEnabled ничего не выводится.

Код: Выделить всё

   
        protected void Page_Load(object sender, EventArgs e)
        {

            var report = new StiReport();
            StiOptions.Engine.HideExceptions = false;
            StiOptions.Engine.HideMessages = false;
            StiOptions.Engine.LogEnabled = true;
            StiOptions.Engine.TraceEnabled = true; 

                var body = GetJournalBody();          
                if (!String.IsNullOrEmpty(body))
                {
                    report.LoadFromString(body);
                }

            report.Compile();

            if (!String.IsNullOrEmpty(ParamGUID))
                {
                  
                    report.Dictionary.Variables.Clear();
                    report.Dictionary.Variables.Add(new StiVariable("Category", "ParamGUID", typeof(string), ParamGUID, false));
                }
                StiWebViewerSL1.ServerTimeout = new TimeSpan(1, 0, 0);
                StiWebViewerSL1.Report = report;
}

Re: Как в StiWebViewerSL получить ошибку построения отчета

Добавлено: 22 сен 2014, 14:06
Anton Lozovskiy
Здравствуйте,

Да. сейчас на сервере если происходит ошибка то она никуда не записывается, логи не ведутся.
Мы можем попробовать реализовать для вас эту возможность, но т.к. с сервером может быть множество ограничений - скажите какой вариант для вашего сервера более преемлем.

Спасибо.

Re: Как в StiWebViewerSL получить ошибку построения отчета

Добавлено: 22 сен 2014, 15:23
centnot
Антон, добрый день!

Как я понял изменение свойств самого отчета StiReport, не влияет на проброс ошибок.
StiOptions.Engine.HideExceptions = false;
StiOptions.Engine.HideMessages = false;
StiOptions.Engine.LogEnabled = true;
StiOptions.Engine.TraceEnabled = true;

Вопрос такой если при отображении шаблона возникает ошибка, то её перехватывает контрол StiWebViewerSL?
Можно ли ему добавить св-во, что при возникновении ошибки он не скрывал его, а пробрасывал его дальше? (Очень поможет при отладке громоздких отчетов (500-2000 страниц).)

Re: Как в StiWebViewerSL получить ошибку построения отчета

Добавлено: 24 сен 2014, 11:39
Anton Lozovskiy
Здравствуйте,

Проблема в следующем. Мы запускаем отчет с обращением к базе данных, который содержит много страниц. Для построения отчета не хватает времени, соответственно отчет не может быть построен - на сервере ошибок нету, но и на клиент когда приходит ответ, в нем просто Result == null, и также нету сообщения об ошибке.

Показать и дать обработать вам нечего.

Спасибо.