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

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 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработка предназначена для редактирования картинок в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Также обработка может быть использована из встроенного языка как объект для редактирования картинок. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Данная обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    61798    43    59    

80

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54404    16    21    

42

Управление дашбордами

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

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

2400 руб.

29.06.2020    16700    21    4    

35

Новогоднее оформление для 1С

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

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

27.12.2023    10742    750    elcoan    45    

106

Конструктор HTML, CSS и javascript

Инструментарий разработчика Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

10.04.2023    9620    151    acces969    31    

118

Модель состояния для MVC

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

05.07.2022    3668    kalyaka    2    

27

Табло очереди заказов на экран телевизора

WEB-интеграция Работа с интерфейсом Платформа 1С v8.3 1С:Розница 2 Платные (руб)

Связка из веб-приложения и расширения для 1С: Розница 2.3.

3600 руб.

29.04.2022    12083    1    5    

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