Как настроить порядок (расположение) для общих команд (УФ)

12.05.23

Разработка - Работа с интерфейсом

Настройка порядка отображения (расположения) для общих команд без использования редактора командного интерфейса (УФ).

Получил очередное задание на разработку расширения, которое добавляет несколько общих команд. Параметры команд определяются при установке и настройке расширения через конфигуратор, команды должны располагаться в отдельной группе в определённом заказчиком порядке, должно работать на любых конфигурациях (в т.ч. без БСП), с замка ничего не снимать.

Вроде бы ничего необычного, но у расширения есть группа команд, в которой команды должны следовать в определенном порядке. Логично, что нужно как-то задать порядок команд по умолчанию, но у 1С своя логика:

  1. Несмотря на порядок в конфигураторе команды отображаются сортированными по синониму в алфавитном порядке, внутри группы изменение порядка не предусмотрено
  2. Если создать форму и открыть настройку программного интерфейса мы можем изменять порядок команд сняв галку "Автоположение" (Статья Как управлять расположением команд в командной панели формы?)
  3. Можно формировать команды программно или использовать соответствующие механизмы БСП
  4. Так же порядок можно менять через "Изменить форму" в режиме предприятия

Сортировка по алфавиту это конечно удобно, но чаще команды нужно расположить в порядке частоты использования или согласно какой-либо логике бизнес-процесса. 1 отпадает.

Так как мы не знаем, к каким объектам будут подключены команды расширения - мы не можем "прописать" интерфейс заранее. К тому же это трудоёмко и требует изменения форм. 2 и 3 отпадают.

Метод 4 для этой задачи неудобен и ненадёжен, хотя право на жизнь имеет.

И вот, казалось, опять настал момент обругать 1С и сказать заказчику что "В 1С это невозможно", хотя... она же сортирует команды по алфавиту! Рано мы 1 списали.

Из 3-х команд на букву "О" одна отображалась в середине, а нужно было в начале. Запросто: меняем русскую "О" на латинскую "O" и команда встала в самый верх группы. Но после добавления ещё нескольких команд стало очевидно, что латинских букв может не хватать, да и названия нужно придумывать "правильные" для сортировки.

Вот тут и пришла идея использовать для сортировки в начале синонима непечатные символы! Но оказалось, что поле ввода синонима в конфигураторе их фильтрует и не даёт ввести. Та же история со специальными символами Unicode - работают только те, что выдают какой-либо пробельный символ, а перспективные U+200B Zero-Width Space, U+200C Zero Width Non-Joiner и U+200D Zero Width Joiner тоже фильтруются. Спустя пару часов путем перебора всё-таки удалось найти нужный символ - U+180E Mongolian Vowel Separator.

Итак, сама технология:

  1. В 1С располагаем команды в нужном порядке в дереве конфигуратора (так легче добавлять символ и не запутаться)
  2. Запускаем Word, в пустом документе на латинском вводим 180e
  3. Нажимаем Alt+X (шрифт переключится на Mongolian Baiti), затем Shift+← (выделяем символ), ну и Ctrl+C (Ctrl+Insert)
  4. Теперь в конфигураторе начиная со второй по счету команды добавляем в начало синонима скопированный символ Ctrl+V (Shift+Insert), в каждую следующую команду добавляем на один символ больше.
  5. F7 - вуаля, всё получилось!

В комментарии указываю вставленное количество символов, если предполагается расширение списка команд - вставляю сразу по несколько символов, например по 5.

Предлагаю поделиться мнениями, что же это получилось: простое решение, костыль, г??нокод (есть правильное типовое решение) или свой вариант.

Вступайте в нашу телеграмм-группу Инфостарт

задать изменить настроить порядок расположение общие общих команд команда команды управляемые управляемый управляемое формы командная панель группа группы интерфейс приложение

См. также

Работа с интерфейсом 1С v8.3 Платные (руб)

Подсистема условного оформления элементов форм (далее подсистема) предназначена для настройки оформления элементов форм (видимость, доступность, цвет фона, цвет текста и прочее) в пользовательском режиме 1С. Также подсистему возможно использовать для ограничения доступа к реквизитам формы для определенных пользователей (или групп пользователей).

6000 руб.

18.01.2022    11218    2    2    

7

Работа с интерфейсом Программист 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    21115    30    6    

46

Работа с интерфейсом Программист Стажер 1С v8.3 Бесплатно (free)

Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна

20.08.2024    33304    mrXoxot    44    

135

Работа с интерфейсом Программист 1С v8.3 Бесплатно (free)

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    19041    smielka    37    

106

Работа с интерфейсом 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    20295    1264    elcoan    53    

128

Инструментарий разработчика Работа с интерфейсом Программист 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.

3 стартмани

10.04.2023    14308    174    acces969    31    

131

Работа с интерфейсом Программист 1С v8.3 1C:Бухгалтерия Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    11365    kalyaka    7    

35

Работа с интерфейсом Программист Пользователь 1С v8.3 8.3.14 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Абонемент ($m)

Ещё с времен платформы 8.3.13 можно изменять цвет стилей интерфейса главного окна. Данное расширение позволит вам выбрать из подготовленных десятка стилей на свой вкус.

1 стартмани

01.07.2022    30114    439    rpgshnik    75    

103
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ixijixi 2033 24.04.23 12:31 Сейчас в теме
Костыль, конечно) Но раз работает - то почему бы и нет?
2. gruk 43 24.04.23 14:35 Сейчас в теме
(1) тоже сначала думал что костыль, но потом смотрю - клин. ;) типа очередное дурацкое решение дурацких ограничений платформы, клин-клином.
3. DrAku1a 1766 29.04.23 10:09 Сейчас в теме
Да уж))
Прикрепленные файлы:
4. Nuki4 02.05.23 10:13 Сейчас в теме
А свойство "Порядок" чем-то не устраивает?
5. gruk 43 12.05.23 13:03 Сейчас в теме
(4) Тем, что его нет. А если Вы про порядок элементов формы - то по условию задачи мы не знаем заранее какие формы расширять.
6. Nuki4 12.05.23 17:33 Сейчас в теме
(5) Хм, я оставлял комментарий, тк был уверен, что речь шла про подключаемые команды. У них как раз есть порядок.
Видимо промазал темой)
7. Swamt 39 08.09.23 00:43 Сейчас в теме
Спасибо огромное! Мучался долго... было уже потерял надежду
Оставьте свое сообщение