⟵ сюдатуда ⟶
  • Мастерклассы
  • Внешние подключения
  • Tableau и PowerBI
  • amoCRM
  • Битрикс 24
  • База знаний
  • Обращение к данным временной таблицы
  • Потеря связи с БД при большом трафике данных
  • Сохранить файл в поле по внешней ссылке url
  • Формирование списка из отмеченных галочками строк и вывод на печать
  • Добавление цикла в таблицу циклов кнопкой из временной таблицы
  • Функция TryCatch и передача данных после отката
  • Ошибка доступа при переходе в цикл если первая таблица недоступна для пользователя
  • Архитектура системы рассчитывающей остатки по кассе или складу
  • Сортировка при выборке по отображению поля Селект, а не по его основанию
  • Блокировка введения дублированного значения
  • Табличное отображение в контекстной панели
  • Сортировка строк в таблице с помощью кнопки
  • Как получить значение по условию из списка вложенных массивов?
  • Сбросить счётчик id в таблице
  • Скрытие поля в таблице по условию
  • Подтверждение действия при нажатии на кнопку в контекстном окне
  • Пересчет большой таблицы
  • Как суммировать значения в rowList по одному из ключей (по одной из колонок)
  • Наборы полей по условию при открытии через linkToTable
  • Как отложить выполнение действия и выполнить его в фоне
  • Создание и удаление строк при выборе значений в Селект или Селект-дерево
  • selectRowListForSelect с условием при котором текущее значение получается зачеркнутым
  • Не все внешние запросы на Remotes выполняются и ломается счетчик id
  • Сортировка Расчётных таблиц в Цикле
  • Как передать данные в виде чисел при обращении POST к API стороннего сервиса (must be a "integer")
  • Как сделать график если есть несколько параметров
  • Сохранение изначальных значений в поле в случае, когда поле рассчитывается кодом
  • Сортировка при выборке по отображению поля Селект, а не по его основанию

    Оригинал на GitHub

    Ссылка на GitHub ⟹

    Вопрос

    Есть временная таблица, в ней поле h_insert (для дальнейшего автозаполнения). Важно, чтобы данные в h_insert всегда имели сортировку по возрастанию по полю, например, Название заказчика. А поле из которого берутся данные в h_insert имеет тип Селект и их значение id не совпадают с Отображением. Как сделать сортировку при выборке через selectList по отображению (title) Селекта в исходной таблице, а не по его основанию (value)?

    Ответ

    Cамый простой способ — в таблице, из которой делается выборка, сделать техническое поле (тип строка), которое через #s.select_field будет брать его отображение (title) и сортировку в коде в функции selectList в поле h_insert делать по этому техническому полю.

    Иногда бывает, что вариант добавления поля не годится. Поэтому можно пойти так. Взять rowlist и дополнительно к field: 'select_field' взять sfield: 'select_field'. И потом этот rowlist отсортировать по title и после этого взять колонку с value:

    =: $sort[[value]] 
        sort: listSort(list: $rowlist; type: "string"; direction: "asc"; key: "title")
            rowlist: selectRowList(table: 'table'; field: 'select_field' as "value"; sfield: 'select_field' as "title")
    

    Первый вариант добавляет небольшой расход ресурсов при выполнении любого действия в таблице из которой делается выборка. Второй — расход при выполнении расчета h_insert, так как для каждой строки будет рассчитан код-селекта поля указанного в sfield.

    Точка в которую предпочтительно перенести нагрузку определяется индивидуально для конкретной системы.