Skip to content

Неверная сортировка по полю ИД в некоторых представлениях

Неверная сортировка по полю ИД в некоторых представлениях published on Комментариев к записи Неверная сортировка по полю ИД в некоторых представлениях нет

После создания собственных представлений или редактирования существующих, при попытке отсортировать по столюцу ИД приводит к тому, что сортировка осуществляется по тексту, а не по чилосвому значению поля. При этом представления, созданные при установке продукта, сортируются верно. См. изображение ниже, оно поясняет о чем идет речь, слева отредактированное представление, справа — системное:
ifaatz3o

Дело в том, что поле ИД имеет тип “строка”. Поэтому в обычном режиме оно сортируется как строка. При этом данное поле поддерживает модификатор $ReturnValueAsBigInt$. Данный модификатор форматирует поле в виде числа, а не строки. Это позволяет сортировать элементы по их номеру.

К сожалению, установить данный модификатор из интерфейса нельзя. Поэтому необходимо отредактировать представление в пакете управления. Для этого необходимо:

  1. Экспортировать пакет управления
  2. Найти в этом пакете управления нужное представление (можно найти его по названию в секции DisplayStrings, а затем по ID в секции Views).
  3. В определении представления найти секцию Columns, и в этой секции найти определение столбца ID (у него Property=»Id”)
  4. Изменить значение атрибута Property на “Id$ReturnValueAsBigInt$”, в итоге должно получиться Property=»Id$ReturnValueAsBigInt$”
  5. Изменить значение атрбитута DataType на «s:Int32», в итоге должно получиться DataType=»s:Int32″
  6. Сохранить пакет управления и импортировать его обратно.
    После этого сортировка должна работать правильно.

Маленькая подсказка. Кроме сортировки, интерфейс SCSM поддерживает группировку. Для этого необходимо нажать правой кнопкой мыши на загаловке столбцов в представлении и выбрать “Группировать по”:
abzp3v0x

Поделиться в соц. сетях

Primary Sidebar