При работе с платформой 1С:Предприятие 8.3 (особенно в интерфейсе «Такси») пользователи могут столкнуться с ошибкой: «Использование модальных окон в данном режиме запрещено». Эта проблема возникает, когда попытка вызвать модальное окно (например, с помощью команд Вопрос(), Предупреждение(), ВвестиЧисло()) не удаётся из-за настроек конфигурации.

Причины возникновения ошибки
С версии платформы 8.3.3.721 в 1С был введён параметр «Режим использования модальности» в свойствах конфигурации. Если этот параметр установлен в значение «Не использовать», то любые попытки вызвать модальные окна приведут к ошибке. Это связано с тем, что модальные окна блокируют интерфейс, что нежелательно в современных веб-ориентированных приложениях.
Как исправить ошибку
Для быстрого исправления ошибки достаточно сменить режим модальности в свойствах конфигурации.
Для этого зайдите в систему в режиме конфигуратор с правами администратора базы данных, откройте конфигурацию:
В открытой конфигурации вызовите контекстное меню, нажав на корень конфигурации правой кнопкой, выбрав «Свойства»:
Откроются свойства и немного пролистав вниз, в подпункте «Cовместимость» вы и можете изменить режим модальности. После чего ошибки будут пропускаться.
После этого сохраните и примените изменения, нажав клавишу «F7».
Рекомендации по программированию без модальных окон
Для обеспечения совместимости с веб-клиентом и мобильными устройствами рекомендуется избегать использования модальных окон. Вместо них используйте следующие подходы:
-
Диалоговые окна: Используйте объекты типа
ОписаниеОповещениядля создания немодальных диалогов.Пример:
Оповещение = Новый ОписаниеОповещения("ОтветНаВопрос", ЭтотОбъект);
ПоказатьВопрос(Оповещение, "Вы уверены?", РежимДиалогаВопрос.ДаНет);
-
Обработчики событий: Используйте обработчики событий для асинхронной обработки пользовательского ввода.
Пример:
Процедура ОтветНаВопросЗавершение(Результат)
Если Результат = КодВозвратаДиалога.Да Тогда
Сообщить("Вы выбрали 'Да'");
КонецЕсли;
КонецПроцедуры
Эти методы позволяют создавать интерактивные элементы без блокировки интерфейса, что улучшает пользовательский опыт.
Частые вопросы
1. Почему возникает ошибка «Использование модальных окон в данном режиме запрещено»?
Ошибка возникает, когда в конфигурации 1С установлен параметр «Режим использования модальности» в значение «Не использовать». Это запрещает использование модальных окон, которые блокируют интерфейс.
2. Как изменить настройки модальности в конфигурации?
Для изменения настроек модальности откройте конфигурацию в режиме «Конфигуратор», перейдите в «Свойства» конфигурации и на вкладке «Совместимость» установите параметр «Режим использования модальности» в значение «Использовать».
3. Можно ли использовать модальные окна в веб-клиенте?
Нет, использование модальных окон в веб-клиенте запрещено, так как они блокируют интерфейс. Рекомендуется использовать немодальные диалоговые окна с помощью объектов типа ОписаниеОповещения.


