Экспорт TXT
Экспорт TXT
Stimulsoft.Reports.Web.NetCore 2020.5.1
При осуществлении экспорта отчета в TXT происходит ошибка:
Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index
Please try again later
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource) at Stimulsoft.Report.Export.StiTxtExportService.ExportTxt(StiReport report, Stream stream, StiTxtExportSettings settings) at Stimulsoft.Report.Web.StiExportsHelper.ExportReport(StiRequestParams requestParams, StiReport report, StiExportSettings settings) at Stimulsoft.Report.Web.StiExportsHelper.ExportReportResult(StiRequestParams requestParams, StiReport report, StiExportSettings settings) at Stimulsoft.Report.Mvc.StiNetCoreViewer.ExportReportResult(StiRequestParams requestParams, StiReport report, StiExportSettings settings) at Stimulsoft.Report.Mvc.StiNetCoreViewer.ProcessRequestResult(StiRequestParams requestParams, StiReport report)
Проблема возникает, если в отчете более 2-х страниц. Причем в некоторых отчетах, можно выборочно экспортировать любые 2-е (и не более страниц из диапазона всех страниц отчета), для других, можно только 1-ую (и только ее) страницу.
Как оказалась, проблема решается, если снять галочку в настройке экспорта "Рисовать границу".
При осуществлении экспорта отчета в TXT происходит ошибка:
Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index
Please try again later
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource) at Stimulsoft.Report.Export.StiTxtExportService.ExportTxt(StiReport report, Stream stream, StiTxtExportSettings settings) at Stimulsoft.Report.Web.StiExportsHelper.ExportReport(StiRequestParams requestParams, StiReport report, StiExportSettings settings) at Stimulsoft.Report.Web.StiExportsHelper.ExportReportResult(StiRequestParams requestParams, StiReport report, StiExportSettings settings) at Stimulsoft.Report.Mvc.StiNetCoreViewer.ExportReportResult(StiRequestParams requestParams, StiReport report, StiExportSettings settings) at Stimulsoft.Report.Mvc.StiNetCoreViewer.ProcessRequestResult(StiRequestParams requestParams, StiReport report)
Проблема возникает, если в отчете более 2-х страниц. Причем в некоторых отчетах, можно выборочно экспортировать любые 2-е (и не более страниц из диапазона всех страниц отчета), для других, можно только 1-ую (и только ее) страницу.
Как оказалась, проблема решается, если снять галочку в настройке экспорта "Рисовать границу".
- Вложения
-
- Screenshot 2020-11-27 170004.png (19.09 КБ) 4133 просмотра
Re: Экспорт TXT
Здравствуйте,
Не получилось воспроизвести проблему. Пожалуйста, проверьте билд 2020.5.2
Спасибо.
Не получилось воспроизвести проблему. Пожалуйста, проверьте билд 2020.5.2
Спасибо.
Re: Экспорт TXT
Удалось воспроизвести ошибку на стенде. Привожу стэк:
[ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index]
System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource) +67
Stimulsoft.Report.Export.StiTxtExportService.ExportTxt(StiReport report, Stream stream, StiTxtExportSettings settings) +11179
Stimulsoft.Report.Export.StiTxtExportService.ExportTo(StiReport report, Stream stream, StiExportSettings settings) +37
Stimulsoft.Report.Web.StiExportsHelper.ExportReport(StiRequestParams requestParams, StiReport report, StiExportSettings settings) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.Web\Helpers\StiExportsHelper.cs:969
Stimulsoft.Report.Web.StiExportsHelper.ExportReportResult(StiRequestParams requestParams, StiReport report, StiExportSettings settings) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.Web\Helpers\StiExportsHelper.cs:1168
Stimulsoft.Report.Web.StiWebViewer.ProcessRequest(StiRequestParams requestParams) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.Web\Viewer\StiWebViewer.cs:125
Stimulsoft.Report.Web.StiWebDesigner.ProcessRequest(StiRequestParams requestParams) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.WebDesign\Designer\StiWebDesigner.Commands.cs:86
Stimulsoft.Report.Web.StiWebDesigner.OnInit(EventArgs e) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.WebDesign\Designer\StiWebDesigner.Commands.cs:257
System.Web.UI.Control.InitRecursive(Control namingContainer) +390
System.Web.UI.Control.InitRecursive(Control namingContainer) +183
System.Web.UI.Control.InitRecursive(Control namingContainer) +183
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1634
Для воспроизведения ошибки необходимо поле в таблице (колонку) сжать до состояния, которое приведет к переносу длинного содержимого более чем на 2 строки.
[ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index]
System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource) +67
Stimulsoft.Report.Export.StiTxtExportService.ExportTxt(StiReport report, Stream stream, StiTxtExportSettings settings) +11179
Stimulsoft.Report.Export.StiTxtExportService.ExportTo(StiReport report, Stream stream, StiExportSettings settings) +37
Stimulsoft.Report.Web.StiExportsHelper.ExportReport(StiRequestParams requestParams, StiReport report, StiExportSettings settings) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.Web\Helpers\StiExportsHelper.cs:969
Stimulsoft.Report.Web.StiExportsHelper.ExportReportResult(StiRequestParams requestParams, StiReport report, StiExportSettings settings) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.Web\Helpers\StiExportsHelper.cs:1168
Stimulsoft.Report.Web.StiWebViewer.ProcessRequest(StiRequestParams requestParams) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.Web\Viewer\StiWebViewer.cs:125
Stimulsoft.Report.Web.StiWebDesigner.ProcessRequest(StiRequestParams requestParams) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.WebDesign\Designer\StiWebDesigner.Commands.cs:86
Stimulsoft.Report.Web.StiWebDesigner.OnInit(EventArgs e) in D:\Stimulsoft\Stimulsoft.Reports\Stimulsoft.Report.WebDesign\Designer\StiWebDesigner.Commands.cs:257
System.Web.UI.Control.InitRecursive(Control namingContainer) +390
System.Web.UI.Control.InitRecursive(Control namingContainer) +183
System.Web.UI.Control.InitRecursive(Control namingContainer) +183
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1634
Для воспроизведения ошибки необходимо поле в таблице (колонку) сжать до состояния, которое приведет к переносу длинного содержимого более чем на 2 строки.
Re: Экспорт TXT
Здравствуйте,
К сожалению, мы не можем воспроизвести проблему.
Не могли бы вы прислать пример?
Спасибо.
К сожалению, мы не можем воспроизвести проблему.
Не могли бы вы прислать пример?
Спасибо.
Re: Экспорт TXT
Здравствуйте.
Извините, но мы всё ещё не можем воспроизвести проблему.
Из облака шаблон для тестов достать тоже не можем.
Спасибо.
Извините, но мы всё ещё не можем воспроизвести проблему.
Из облака шаблон для тестов достать тоже не можем.
Спасибо.
Re: Экспорт TXT
Хотелось бы показать по шагам как сформировать ошибку, но редактор форума не позволил добавлять картинки в той последовательности, которая необходима, поэтому постараюсь обяснить:
Выбираем шаблон, предоставляемый в мастере шаблонов дизайнера в облаке. Имя шаблона SalesOverview.
Открывается страница отчета. Мы добавляем новую страницу к отчету.
Перетаскиваем на форму из DataSource/fastfood(excel) таблицу (назовем ее так) Products. Отмечаем все поля. Генерируется грид с колонками.
Находим на гриде колоку Products.Products и значительно уменьшаем ее по ширине (замечу, это сделано для того чтобы воспроизвести ошибку, по факту же ошибка выскакивает именно из-за того что текст попадающий в эту колонку переносится на несколько строк).
Переходим в preview отчета. Видим сгенерированный отчет на котором значения в колнке Products.Products действительно выводятся на 3 строки.
Выбираем сохранить отчет в TXT. Видим страницу с ошибкой.
PS: Все это можно реализовать на любом шаблоне отчетов, достаточно чтобы значения одной из колонок выводились на несколько строк отчета - это ломает экспорт в TXT
Выбираем шаблон, предоставляемый в мастере шаблонов дизайнера в облаке. Имя шаблона SalesOverview.
Открывается страница отчета. Мы добавляем новую страницу к отчету.
Перетаскиваем на форму из DataSource/fastfood(excel) таблицу (назовем ее так) Products. Отмечаем все поля. Генерируется грид с колонками.
Находим на гриде колоку Products.Products и значительно уменьшаем ее по ширине (замечу, это сделано для того чтобы воспроизвести ошибку, по факту же ошибка выскакивает именно из-за того что текст попадающий в эту колонку переносится на несколько строк).
Переходим в preview отчета. Видим сгенерированный отчет на котором значения в колнке Products.Products действительно выводятся на 3 строки.
Выбираем сохранить отчет в TXT. Видим страницу с ошибкой.
PS: Все это можно реализовать на любом шаблоне отчетов, достаточно чтобы значения одной из колонок выводились на несколько строк отчета - это ломает экспорт в TXT
Re: Экспорт TXT
Здравствуйте,
Спасибо за детальное описание проблемы. Постараемся исправить к следующему билду.
#3179
Спасибо за детальное описание проблемы. Постараемся исправить к следующему билду.
#3179
Re: Экспорт TXT
Здравствуйте,
Исправлено, фикс будет в следующем билде, в начале января.
Исправлено, фикс будет в следующем билде, в начале января.