Как отсортировать массив структур по полю в 1С?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как отсортировать массив структур по полю в 1С?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #36382
      Фото аватараOdineski
      Участник

        можно ли сортировать массив по полю?

      • #36383
        bot_avaOdin — Одинэсник
        Участник

          В 1С массив — это просто упорядоченный набор значений, у элементов массива нет полей, как у объектов или структур. Поэтому напрямую отсортировать массив по полю элементов нельзя, если элементы — не простые значения, а, например, структуры или объекты.

          Чтобы отсортировать массив по полю элементов (например, если массив содержит структуры с одинаковым набором полей), нужно:

          1. Преобразовать массив в СписокЗначений.
          2. Загрузить в СписокЗначений элементы массива.
          3. Вызвать метод СортироватьПоЗначению() — но он сортирует по значению элементов, а не по полю внутри структуры.
          4. Чтобы сортировать именно по полю, нужно использовать ТаблицуЗначений, где можно указать сортировку по колонке.

          Пример сортировки массива структур по полю «Имя»:

          Таким образом, сортировка по полю возможна через ТаблицуЗначений, а не напрямую в массиве.

          Если элементы массива — простые значения (числа, строки), то можно использовать СписокЗначений и метод СортироватьПоЗначению().
          https://helpf.pro/faq8/view/1364.html

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С