Почему перестают работать стандартные сочетания клавиш и контекстное меню после печати в 1С

Системный администратор 1С v8.3 (Управляемые формы) 1С:Управление торговлей
← На главную

При переходе на новые релизы платформы 1С:Предприятие 8.3 многие пользователи и администраторы столкнулись с крайне неприятным поведением системы: в какой-то момент программа перестает реагировать на стандартные горячие клавиши. Перестает работать клавиша Escape для закрытия окон, не вызывается дерево подчиненных документов по Ctrl+Shift+S, а также полностью «отваливается» контекстное меню, вызываемое правой кнопкой мыши в списках и журналах. Давайте подробно разберем, почему это происходит и как с этим бороться.

Анализируем симптомы и выявляем закономерность

Проанализируем ситуацию: проблема редко проявляется сразу после запуска программы. Как правило, менеджеры или бухгалтеры начинают рабочий день в штатном режиме, но через некоторое время сообщают, что «1С перестала слушаться». Основные признаки неисправности выглядят следующим образом:

  1. Клавиша Escape перестает закрывать активные окна и формы.
  2. Сочетания клавиш для поиска (Ctrl+F) или открытия связанных документов перестают функционировать.
  3. Правый клик мыши в динамических списках (журналы документов, справочники) не вызывает контекстное меню.
  4. При этом кнопки на панели инструментов продолжают работать, а ввод данных с клавиатуры в текстовые поля сохраняется.

Выясним причину такого поведения. Как показывает практика и отчеты пользователей, триггером проблемы выступает процесс печати. Сразу после того, как пользователь отправляет документ на принтер или открывает окно предварительного просмотра, платформа теряет корректный фокус ввода. Система «думает», что фокус все еще находится в диалоговом окне печати, хотя оно уже закрыто.

Разбираемся в технических причинах ошибки

Проблема носит чисто технологический характер и связана с тем, как ядро платформы 1С взаимодействует с оконной подсистемой Windows. В версиях платформы ветки 8.3.12 (например, 8.3.12.1616) была допущена ошибка в обработке системных событий. Когда открывается модальное или блокирующее окно (в данном случае — окно драйвера принтера), операционная система передает ему управление. После закрытия этого окна фокус должен вернуться в основное окно 1С, но из-за бага он «подвисает» в невидимом системном слое.

Рассмотрим подробнее влияние внешних факторов. Опытным путем установлено, что частота проявления бага может зависеть от используемых драйверов принтеров. Наиболее часто проблема фиксировалась при работе с техникой HP и Kyocera, особенно при использовании универсальных драйверов печати в терминальных сессиях (RDP).

Временные способы решения («Костыли»)

Если оперативно обновить платформу не представляется возможным, разберем методы, которые позволяют вернуть работоспособность клавиш без перезапуска 1С. Эти способы помогают принудительно «вернуть» фокус в приложение:

  1. Переключение между окнами (Alt+Tab): Попросим пользователя нажать комбинацию Alt+Tab, чтобы переключиться на любое другое открытое приложение (браузер, блокнот, проводник), и тут же вернуться обратно в 1С. Это заставляет Windows заново инициализировать фокус для окна 1С.
  2. Клик вне области программы: Можно свернуть 1С или просто кликнуть правой кнопкой мыши по рабочему столу Windows, а затем снова кликнуть внутри окна 1С.
  3. Использование системных клавиш: Двукратное нажатие клавиши Win (открытие и закрытие меню «Пуск») также в ряде случаев помогает сбросить «зависшее» состояние фокуса.
  4. Вызов окна «О программе»: Открытие формы через меню «Справка» — «О программе» принудительно создает новое диалоговое окно внутри платформы, закрытие которого может восстановить нормальную работу горячих клавиш.

Окончательное решение проблемы: обновление платформы

Проанализируем ситуацию с версиями. Ошибка была официально признана разработчиками 1С и зарегистрирована под номером 10202023 (или 000047329). Поскольку баг находится внутри самого исполняемого кода платформы, никакие доработки конфигурации или написание внешних обработок не помогут.

Для полного устранения проблемы необходимо выполнить обновление платформы до релизов, в которых был исправлен механизм передачи фокуса после печати. Посмотрим на список версий:

Важное примечание для системных администраторов: Если вы используете версию 8.3.12.1685, знайте — в ней эта ошибка еще присутствует. Не стоит тратить время на переустановку этой же ветки, необходимо переходить на более современные релизы.

Дополнительные рекомендации при работе в RDP

Если после обновления платформы проблема сохраняется (что бывает крайне редко), проанализируем настройки терминального доступа. Иногда «залипание» или игнорирование горячих клавиш в 1С вызвано настройками RDP-клиента. Проверим следующие параметры в свойствах подключения к удаленному рабочему столу:

  1. Перейдем на вкладку «Локальные ресурсы».
  2. В разделе «Клавиатура» убедимся, что выбрано значение «На этом компьютере» или «Только в полноэкранном режиме».

Это исключит конфликты между локальными сочетаниями клавиш Windows и теми, которые должна перехватывать 1С внутри сессии.

Резюме

Подведем итоги нашего анализа. Если в вашей компании пользователи жалуются на то, что «перестала работать правая кнопка мыши» или «не закрываются окна по Escape», выполните следующие действия:

  1. Проверьте текущую версию платформы 1С. Если она ниже 8.3.13.1809 — вы столкнулись с известным багом.
  2. Обучите пользователей временно использовать Alt+Tab для возврата управления.
  3. Запланируйте обновление платформы до актуального стабильного релиза.

Помните, что стабильная работа интерфейса напрямую влияет на производительность сотрудников, поэтому обновление платформы в данном случае является критически важной задачей.

← На главную