Разработка и Конфигурация · 9 мин
Как сделать горячие клавиши в 1С
Как настроить горячие клавиши в 1С: назначение сочетаний командам формы, стандартные комбинации, обработчики в конфигураторе и решение типичных проблем.
Горячие клавиши в 1С ускоряют рутинные операции: проведение документа, поиск, копирование строки, вызов отчёта. Часть сочетаний уже встроена в платформу и работает в любой конфигурации, а часть можно назначить самостоятельно — на уровне пользовательских настроек, команд формы или кода в конфигураторе.
Подход зависит от задачи. Если нужно просто быстрее работать в готовой программе, достаточно знать стандартные комбинации и включить переназначение в настройках. Если требуется привязать клавиши к собственной кнопке или команде в форме — это делается в конфигураторе через свойство «СочетаниеКлавиш» команды. Ниже разобраны оба сценария с конкретными шагами.
Стандартные горячие клавиши, которые уже работают
Платформа 1С:Предприятие содержит встроенный набор сочетаний, единый для большинства конфигураций. Их не нужно настраивать — достаточно знать и применять. Основные: F2 — переход в режим редактирования поля, Ctrl+S — сохранение объекта, Ctrl+P — печать, Ctrl+F — поиск, F9 — проведение документа (в соответствующих формах), Ctrl+C / Ctrl+V — копирование и вставка, Delete — удаление выделенной строки.
Отдельно полезны клавиши работы со списками: Insert добавляет новую строку в табличную часть, F5 обновляет список, а Enter открывает выбранный элемент. В управляемых формах сочетание Ctrl+F4 закрывает текущую вкладку окна, а Esc отменяет редактирование без сохранения изменений.
Полный перечень доступен во встроенной справке платформы: откройте раздел помощи и найдите тему «Сочетания клавиш». Учтите, что часть сочетаний конфигурация может переопределить — например, в некоторых прикладных решениях F9 выполняет не проведение, а иную команду, заданную разработчиком.
Ничего настраивать не нужно, используйте как есть
Проверьте свойства команды в конфигураторе
Проверьте пересечения с ОС и другими командами
Как назначить горячую клавишу команде формы в конфигураторе
Основной способ создать собственное сочетание — привязать его к команде формы. Откройте конфигуратор, найдите нужный объект (документ, справочник, обработку) и откройте его форму. В редакторе формы перейдите на вкладку «Команды» и создайте новую команду либо выберите существующую.
В палитре свойств команды найдите поле «СочетаниеКлавиш». Нажмите кнопку выбора — откроется диалог, где задаётся клавиша и модификаторы (Ctrl, Alt, Shift). Например, можно назначить Ctrl+Shift+S для команды «Сохранить и закрыть». После выбора сочетания создайте обработчик команды: платформа предложит сгенерировать процедуру &НаКлиенте, в которой вы пишете нужный код.
Чтобы команда реагировала на клавиши, она должна быть видима в командной панели формы или привязана к элементу. Если команда существует только в списке команд без отображения, сочетание в ряде случаев не сработает — добавьте кнопку в командную панель, при необходимости скрыв её свойством видимости, но не отключая доступность.
- 1Откройте конфигуратор и нужную форму объекта
- 2На вкладке «Команды» создайте или выберите команду
- 3В свойстве «СочетаниеКлавиш» задайте клавишу и модификаторы
- 4Создайте обработчик команды и напишите код действия
- 5Добавьте команду в командную панель формы
- 6Обновите конфигурацию и проверьте работу в режиме предприятия
Глобальные сочетания через общие команды
Если клавиша должна работать не в одной форме, а по всей конфигурации — например, быстрый вызов обработки из любого окна — используйте общие команды. В дереве конфигурации откройте ветку «Общие» → «Общие команды» и создайте новую команду. В её свойствах задайте «СочетаниеКлавиш» и укажите, в каких подсистемах команда отображается.
Обработчик общей команды пишется в модуле команды и обычно открывает форму обработки или выполняет серверный вызов. Важное ограничение: глобальные сочетания срабатывают, только когда активно главное окно приложения, и могут конфликтовать с локальными сочетаниями открытой формы. При пересечении приоритет обычно получает команда текущей формы.
Назначение клавиш в расширении конфигурации
Для типовых решений (1С:Бухгалтерия, 1С:Управление торговлей и подобных) правильный путь — расширение. Создайте расширение, добавьте в него заимствованную форму нужного объекта, затем добавьте собственную команду с сочетанием клавиш и обработчиком. Расширение подключается без снятия конфигурации с поддержки и сохраняется при обновлениях.
Ограничение подхода: в расширении нельзя изменять уже существующие команды формы произвольным образом — только добавлять свои или изменять доступные для переопределения свойства. Если нужно переопределить поведение типовой кнопки, добавьте свою команду с тем же сочетанием и скройте типовую, либо используйте аннотации &Вместо и &После для обработчиков.
Программная обработка нажатий и её ограничения
Платформа не предоставляет полноценного перехвата произвольных клавиш в клиентском коде — напрямую «отловить» любое нажатие на форме нельзя. Работают только сочетания, назначенные командам, и стандартные события элементов формы. Это принципиальное ограничение архитектуры управляемых форм, рассчитанной на тонкий и веб-клиент.
Обходные варианты существуют, но у каждого есть цена. Внешние компоненты и средства операционной системы (например, утилиты переназначения клавиш) работают вне контекста 1С и не знают, какая форма активна. Для большинства задач достаточно связки «команда формы + сочетание клавиш», и усложнять решение не стоит.
Проверка результата и типичные проблемы
После настройки обновите конфигурацию базы данных (F7 в конфигураторе) и запустите режим предприятия. Откройте форму, нажмите назначенное сочетание и убедитесь, что выполняется именно ваша команда. Проверьте работу в разных состояниях формы: при активной табличной части, в режиме редактирования поля, при открытом модальном окне.
Если сочетание не срабатывает, проверьте по порядку: есть ли команда в командной панели, не заблокирована ли она условиями доступности, не перехватывает ли клавишу активный элемент формы, нет ли конфликта с другой командой с тем же сочетанием. Две команды с одинаковым сочетанием на одной форме — частая причина «мёртвых» клавиш.
Как проверить результат
Выполняется назначенная команда
Ничего не происходит или срабатывает другая команда
Кнопка видна и доступна
Команда только в списке команд формы
Сочетание работает или корректно игнорируется
Ошибка выполнения обработчика
Расширение сохранило сочетание
Доработка пропала — изменения делались в типовом коде
FAQ
Можно ли назначить горячие клавиши без конфигуратора, только в режиме предприятия?
Полноценное назначение произвольных сочетаний доступно только через конфигуратор или расширение. В режиме предприятия пользователь ограничен стандартными клавишами платформы и теми, что предусмотрел разработчик конфигурации.
Работают ли горячие клавиши в веб-клиенте 1С?
Да, но с ограничениями: часть сочетаний перехватывает браузер (например, Ctrl+T, Ctrl+W, F5). Такие комбинации либо не дойдут до приложения, либо выполнят действие браузера. Выбирайте сочетания с Shift и редкими клавишами.
Как назначить одну клавишу на несколько действий в зависимости от контекста?
Создайте одну команду с сочетанием, а в её обработчике проверяйте текущий элемент формы или состояние объекта и вызывайте нужную ветку кода. Платформа сама контекстом не управляет — логику задаёт разработчик.
Почему сочетание перестало работать после обновления конфигурации?
Чаще всего доработка была внесена напрямую в типовую форму и затёрлась обновлением. Перенесите изменения в расширение конфигурации — оно сохраняется при обновлениях типового решения.
Можно ли отключить стандартную горячую клавишу платформы?
Напрямую отключить встроенное сочетание нельзя, но можно назначить на то же сочетание свою команду формы — она получит приоритет в пределах этой формы. Глобально поведение платформы это не изменит.
Какие сочетания безопасно выбирать для своих команд?
Оптимальны комбинации с двумя модификаторами, например Ctrl+Shift+буква или Ctrl+Alt+буква: они редко заняты платформой, ОС и браузером. Перед назначением проверьте сочетание на конфликты во всех режимах работы, которые используются в вашей организации.
Что важно запомнить
Стандартные сочетания 1С работают без настройки. Собственная горячая клавиша создаётся через свойство «СочетаниеКлавиш» команды формы или общей команды, а для типовых конфигураций — через расширение. Проверяйте конфликты с ОС, браузером и другими командами и тестируйте сочетание в разных состояниях формы.