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

Изменение сортировки

Добавлено: 19 сен 2014, 13:57
BrotherAbbat
Добрый день!
На форме имеются радиокнопки, в отчете два groupBand'a и один Data. Нужно организовать изменение сортировки Data в зависимости от выбранной радиокнопки.

Re: Изменение сортировки

Добавлено: 19 сен 2014, 17:55
Aleksey
Здравствуйте,

Пожалуйста, посмотрите приложенный пример отчета.

Спасибо.

Re: Изменение сортировки

Добавлено: 22 сен 2014, 14:44
Леонид
Добрый день!

Если у вас уже загружен бизнес-объект или DataTable, можно использовать ещё и такой способ, указав следующий код в событии BeginRender самого отчёта:

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

string[] orderByASC = new System.String[] { "ASC", "PRODUCER_NAME", "ASC", "ARTICLE"}; // ORDER BY producer_name, article
string[] orderByDESC = new System.String[] { "DESC", "PRODUCER_NAME", "DESC", "ARTICLE"}; // ORDER BY producer_name, article

if (rbAscending.Checked)
  this.DataBand1.Sort = orderByASC ; // по возрастанию

if (rbDescending.Checked)
  this.DataBand1.Sort = orderByDESC; // по убыванию
Разумеется, здесь можно оптимизировать код, и писать его по-другому, изменяя только необходимые поля, как в примере в файле отчёта, предложенного Алексеем. Просто привёл суть дела для простоты.

Важно! Не забывайте также, что если у вас на странице есть GoupHeader, а у вас, как я понял два GroupBand'а, то необходимо указывать колонку сортировки (как правило это тоже самое поле, по которому группируют), иначе, возможно результаты сортировки группировок будут противоречить с сортировкой DataBand.

Re: Изменение сортировки

Добавлено: 23 сен 2014, 11:52
Aleksey
Здравствуйте, Леонид.

Спасибо за Ваш вариант решения.

Re: Изменение сортировки

Добавлено: 02 окт 2014, 16:43
BrotherAbbat
Огромное спасибо!

Re: Изменение сортировки

Добавлено: 02 окт 2014, 17:20
Aleksey
Здравствуйте,

Всегда рады помочь!