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

Сортировка

Добавлено: 03 дек 2009, 13:24
Сергей Воликов
Цитата из новостей Вышла новая версия Stimulsoft Reports.Web 2009.3
В этом релизе добавлена поддержка сортировки в интерактивном режиме Viewer.Fx. Причем сортировка работает как по одной колонке, так и сразу по нескольким колонкам. Сортировка задается при помощи свойства Interaction.SortingColumn компонента. Сортировка задается при помощи свойства Interaction.SortingColumn компонента
К сожалению, не нашел такого свойства.
Приведите, пожалуйста, пример использования.

Сортировка

Добавлено: 04 дек 2009, 03:33
Vladimir
Здравствуйте, Сергей.

Для того, что бы задать сортировку нужной колонки, необходимо установить значение свойства Interaction.SortingColumn у нужного текстового элемента. Простой пример на основе демо-отчёта SimpleList.mrt:

Откройте в дизайнере отчётов шаблон SimpleList.mrt
На HeaserBand1 выберите первый текстовый компонент (Text10 - "Company")
В инспекторе свойств раскройте его свойство Interaction, и задайте значение свойства SortingColumn = DataBand1.CompanyName (в выпадающем списке).
Сохраните отчёт. Теперь во вьювере можно сортировать первую колонку, кликнув мышкой по заголовку колонки.

Спасибо.

Сортировка

Добавлено: 04 дек 2009, 05:38
Сергей Воликов
Это я тоже проверял.
Реакции при нажатии на текстовое поле никакой. Даже изменении курсора не происходит при его наведение на поле.
На вашем примере реакция аналогичная.
:angry:



Сортировка

Добавлено: 07 дек 2009, 10:51
Vladimir
Сообщите пожалуйста, помог ли Вам присланный нами в соседнем топике пример и заработала ли у Вас сортировка. Спрашивайте, если есть дополнительные вопросы.

Большое спасибо за найденные ошибки.

Сортировка

Добавлено: 08 дек 2009, 03:38
Сергей Воликов
Vladimir писал(а):Сообщите пожалуйста, помог ли Вам присланный нами в соседнем топике пример и заработала ли у Вас сортировка. Спрашивайте, если есть дополнительные вопросы.
Помог, но уж очень долго пытался понять почему у меня не работает.
Когда источник данных, в вашем примере, определил в отчете - ситуация прояснилась.
Ваш пример тоже перестал работать.
Теперь вопрос. Что делать дальше? Вы планируете эту ситуацию исправлять?

Сортировка

Добавлено: 08 дек 2009, 08:24
Vladimir
Вы планируете эту ситуацию исправлять?
Уже исправили. Обновление будет доступно в следующем пререлиз билде 14 декабря 2009 г.
Отправьте пожалуйста запрос на support[at]stimulsoft.com, если вам необходимо получить обновлённую версию раньше.

Спасибо.

Сортировка

Добавлено: 15 дек 2009, 10:06
Сергей Воликов
Vladimir писал(а):Уже исправили. Обновление будет доступно в следующем пререлиз билде 14 декабря 2009 г.
Установил. Проверил.
Работает, но только для текстовых полей и целочисленых значений. :dumb:
Тип децимал - почему то не поддерживается.

К сожалению на этом проблемы не закончились. Через некоторе время сортировка перестает работать.
Помогает только удаление dll соответсвующего отчета.

Сортировка

Добавлено: 15 дек 2009, 11:35
Vladimir
Здравствуйте, Сергей.
Sergey писал(а):Установил. Проверил.
Работает, но только для текстовых полей и целочисленых значений.
Тип децимал - почему то не поддерживается.
Мы проверили сортировку нецелочисленных значений, работает должным образом.
См. пример TwoSimpleLists.mrt (сортировка поля Price).
Расскажите по подробнее, как повторить данную ошибку или приведите пример.
Sergey писал(а):К сожалению на этом проблемы не закончились. Через некоторе время сортировка перестает работать.
Помогает только удаление dll соответсвующего отчета.
Не удалось повторить ошибку. Не могли бы Вы рассказать по подробнее?
Через какое время, или через какое определённое количество операций сортировки происходит ошибка?
Что именно происходит: перестаёт появляться курссор "рука" на заголовках или от сервера не приходит отсортированный отчёт?
Помогает ли просто перезапуск страницы с Вьювером?
Сортировка пропадает только на одном отчёте или на всех сразу (если их несколько) ?
Ошибка повторяется только на сервере или на локальной машине тоже (при дебаге проекта) ?

Спасибо.
 

Сортировка

Добавлено: 16 дек 2009, 03:48
Сергей Воликов
Vladimir писал(а):Мы проверили сортировку нецелочисленных значений, работает должным образом.
См. пример TwoSimpleLists.mrt (сортировка поля Price).
Расскажите по подробнее, как повторить данную ошибку или приведите пример.
Похоже я поторопился с выводами. Нужно было продолжить проверку.
Сортировка неработает на вычисляемых полях в источнике данных, например, Div(Поле1,Поле2).
Сама сортировка проходит, но логику сортировки чисел определить мне не удалось.
Не удалось повторить ошибку. Не могли бы Вы рассказать по подробнее?
Конечно, извините, что сразу не представил подробную информацию.
Через какое время, или через какое определённое количество операций сортировки происходит ошибка?
Сортировка пропадает после перегрузки отчета с приминением различных параметров, но не после самой сортировки.
Параметры задаются: Report("ИмяПараметра")=...
Что именно происходит: перестаёт появляться курссор "рука" на заголовках или от сервера не приходит отсортированный отчёт?
Перестаёт появляться курссор "рука"
Помогает ли просто перезапуск страницы с Вьювером?
Нет
Сортировка пропадает только на одном отчёте или на всех сразу (если их несколько) ?
У меня один отчет с сортировкой.
Ошибка повторяется только на сервере или на локальной машине тоже (при дебаге проекта) ?
И на сервере и локально.

Может поможет при анализе ситуации.
При формировании отчета проверяется дата файла отчета и соответсвующей dll отчета. Если дата файла отчета более поздняя, то dll создается наново и в дальнейшем, для построения отчета, используется только dll.

Сортировка

Добавлено: 16 дек 2009, 05:09
Vladimir
Sergey писал(а):Похоже я поторопился с выводами. Нужно было продолжить проверку.
Сортировка неработает на вычисляемых полях в источнике данных, например, Div(Поле1,Поле2).
Сама сортировка проходит, но логику сортировки чисел определить мне не удалось.
К сожалению, сортировка по вычисляемым полям не будет работать. На данный момент это не поддерживается самим генератором отчётов.
Sergey писал(а):Сортировка пропадает после перегрузки отчета с приминением различных параметров, но не после самой сортировки.
Параметры задаются: Report("ИмяПараметра")=...
Для загрузки отчёта во ViewerFx отчёт предварительно сериализуется и в упакованном виде сохраняется в кэше сервера. Скорее всего, сортировка пропадает из-за того, что пользовательские параметры не могут сериализоваться и соответственно потом применяться. Попробуйте определять параметры для отчёта в событии GetDataSet:
protected void WebViewerFx1_GetDataSet(object sender, StiWebViewerFx.StiGetDataSetEventArgs e)
{
    e.Report("ИмяПараметра")=...
}

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

Спасибо.