Отсортировать табличную часть по колонке, которая не является реквизитом ,невозможно, используя метод «Сортировать».
1 | Товары.Сортировать("Артикул"); |
Использование данного метода вернет вам ошибку: «Неверное имя колонки 1с».
Для того чтобы отсортировать табличную часть по вычисляемой колонке, можно использовать следующий код, который, в данном примере, прописан в процедуре нажатия кнопки:
1 2 3 4 5 6 7 8 9 10 11 12 13 | Процедура КоманднаяПанельТоварыСортироватьПоАртикулу(Кнопка) ТабЧасть=Товары.Выгрузить(); // создаем временную таблицу ТабЧасть.Колонки.Добавить("Артикул"); // добавляем в нее нужную колонку Для каждого Стр из ТабЧасть цикл Стр.Артикул=Стр.Номенклатура.Артикул; // переписываем информацию из расчетной колонки во временную таблицу КонецЦикла; ТабЧасть.Сортировать("Артикул"); // Сортируем временную таблицу по нужной колонке Товары.Загрузить(ТабЧасть); // Загружаем временную таблицу в табличную часть КонецПроцедуры |
Надеюсь, эта статья была вам полезна. Если у вас остались вопросы вы можете задать их в комментариях.)
Хотите научиться самостоятельно автоматизировать свою работу в 1С? Приглашаю Вас на мой курс Аналитик 1С
А если вы хотите без обращения к программистам справляться с большинством задач — подписывайтесь на мой Телеграм — канал. 👆 Там делюсь секретами работы в 1С, о которых вы никогда не узнаете от программистов. 🤫 |
Проще говоря, выгружаем данные в таблицу значений, а после — сортируем.
Ещё есть вариант использовать СКД, описав вычисляемое поле там. Тогда по нему можно будет отсортироваться.