Как указать порядок столбцов в матрице?
Я работаю над отчетом SQL Reporting Services (в VS.Net 2005), который отображает количество разных данных в матрице. Столбцы подсчитывают количество клиентов в определенном наборе. Поэтому у меня есть несколько таких столбцов: "1 работодатель", "2-9 работодателей", "10-19 работодателей" и т.д.
Проблема заключается в том, что SQL Reporting Services сортирует столбцы в матрице по алфавиту. Поэтому я столкнулся с столбцом "10-19" после столбца "1 работодатель", но до "2-9".
Есть ли способ исправить это?
Или, может быть, трюк, чтобы изменить метки столбцов на то, что они сортируются правильно?
Спасибо.
Ответы
Ответ 1
Мы делаем много отчетов SSRS, и это всегда было проблемой для mdx. Вот один из способов:
Установите сортировку в свойствах группировки и сортировки для сортировки по этому выражению:
=iif(Fields!DataSetField.Value = "ColumnName", "zzz", Fields!DataSetField.Value)
Где "zzz" может быть числом или тем, что вам нужно, чтобы помочь сортировке, а затем выберите "Направление" как восходящую или нисходящую базу для этого выражения.
Ответ 2
Это также можно сделать, добавив новый столбец в запрос для порядка сортировки. Затем щелкните правой кнопкой мыши группу столбцов из матрицы и выберите свойства группы. С левой стороны выберите сортировку. Отсюда вы можете указать другой столбец для сортировки вместо заголовка столбца. Никакой индивидуальной формулы не требуется.
Ответ 3
Это может быть немного запутанным, но у нас была аналогичная проблема, и мы не хотели менять SQL.
То, что мы сделали, это создать расчетное поле в наборе данных, которое возвращает число для каждого столбца и сортирует группу на этом номере.
Ответ 4
У меня была аналогичная проблема, но я не нашел решения с использованием матрицы во времени - поэтому я использовал таблицу - и поместил нужную логику матрицы в мои SQL-заявления.
Это не лучшая вещь, но она работает - она достаточно быстрая, и писать так долго не требуется.
Ответ 5
Я пошел в MATRIX → PROPERTIES → GROUPS.
Затем я "переместил" группу, и я хотел, чтобы она сортировалась по UP в списке.
Я пошел в PREVIEW, и он работал отлично.
Он даже сохранил мою колонку так же.
Ответ 6
Перейдите в "Редактировать группу" - "Сортировка" - измените направление на нисходящее для выражения.
Ответ 7
Для отдельного числового порядка Tablix используйте следующую строку кода в выражении.
= RunningValue (CountDistinct ( "YourTableName" ), граф, "YourTableName" )