Сортировка в табличной части документа по длине наименования

1. user1947017 25.05.23 12:24 Сейчас в теме
Новичок, тапками не кидайтесь, прошу помощи в тестовом задании.
Самописная база из 2х справочников, 1 документа и 1 отчета. В документе "Документы" есть табличная часть, в которой необходимо реализовать сортировку по длине наименования Товара (СправочникСсылка.Товары). Смогла только вывести в сообщение информацию о количестве символов по клику на элемент и кнопку команды. Что нужно сделать программно для реализации данной возможности?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
8. odn 25.05.23 14:52 Сейчас в теме
(1)
ортировку по длине наименования Товара (СправочникСсылка.Товары). Смогла только вывести в


В цикле по строкам таблицы менять строки местами в зависимости от длины наименования. Таким образом строки с более коротким наименованием будут спускаться а строки с длинными подниматься.

Еще вариант: таблицу отправить в запрос, написать запрос с сортировкой по длине строки, выполнить запрос, выгрузить результат запроса обратно в таблицу
2. Vlan 36 25.05.23 12:30 Сейчас в теме
Выгрузите табличную часть в таблицу значений. Добавьте колонку с количеством символов наименования, заполните в цикле и сортируйте по ней. Выгрузите таблицу значений назад в табличную часть.
user1947017; +1 Ответить
3. soft_wind 25.05.23 12:30 Сейчас в теме
в ТЧ добавьте колонку ДлинаНаименования (тип: Число)
по кнопке заполняете эту колонку, (на форму ее можно не выводить) получать длину вы уже умеете, только в цикле надо сделать
затем выполняете сортировку (одной командой)
user1947017; +1 Ответить
4. starjevschik 25.05.23 13:02 Сейчас в теме
Спросить преподавателя.
Но вообще эта задача делится на две. Сначала нужен алгоритм, и он не зависит ни от каких языков. Его, я думаю, даже начинающий программист может и без преподавателя осилить, т.к. алгоритмическое мышление это, наверное, один из базовых скиллов программиста.
А реализацию уже препод подскажет, ему за это платят.
5. soft_wind 25.05.23 13:34 Сейчас в теме
(4) так похоже что сам препод и поставил эту задачу ученику,
в надежде, что хотя бы, такую элементарную, задачку он решит, сам!

ведь как искать длину одного Товара он объяснил!

осталось прогнать в цикле (я молчу про использование запроса) и сортирнуть.
6. user1947017 25.05.23 13:50 Сейчас в теме
Всем спасибо конечно, но как искать и что искать в этой задаче никто мне не объяснял - это мои личные изыскания по литературе и интернетам. Был вопрос - я его задала здесь, все наши знания приобретенные. Не стыдно не знать - стыдно не учиться.
7. Vlan 36 25.05.23 14:00 Сейчас в теме
(6) Вам дали минимум 2 решения со своими плюсами и минусами. Очень многое зависит от архитектуры конфигурации, ее целей.
Дополнительная колонка в табличной части упрощает код, но засоряет базу ненужными реквизитами. Если такая сортировка будет нужна в нескольких документах, то рекомендую присмотреться к моему варианту. Эту функцию можно сделать общей, в ее параметрах на входе будет исходная таблица значений, а на выходе уже сортированная, которую возвращаем в табличную часть. Минус такого способа - при каждом добавлении строки ее придется выполнять снова.
user1947017; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот