Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут!

Использование модальных окон в данном режиме запрещено (1С 8.3)

«Использование модальных окон в данном режиме запрещено» — такая ошибка сейчас начинает беспокоить пользователей и программистов 1С с приходом нового интерфейса платформы 1С 8.3 — «такси«.

использование модальных окон запрещено

Разработчики технологической платформы 1С идут в ногу со временем, стандартизируя своё решения под мировые стандарты разработки программного обеспечения. Все стандарты так или иначе сводятся к единому интерфейсу, близкому к веб-страницам.

Модальные и всплывающие (pop-up) окна считаются плохим тоном и уже давно перестали быть нормальным при разработке софта. Пользователи привыкли к работе «в одном окне».

Особенно часто мы видим ошибку модальности у следующих методов 1С:

  • Вопрос
  • Предупреждение
  • ОткрытьЗначение

Разработчики платформы 1С 8 с выходом нового интерфейса «такси» приняли верное решение — попытаться переучить разработчиков прикладных решений на новой лад. Они включили в новую платформу новую возможность — «режим использование модальности».

Быстрое исправление проблемы

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

Для этого зайдите в систему в режиме конфигуратор, откройте конфигурацию:

открытие конфигуратора

В открытой конфигурации вызовите контекстное меню нажав на корень конфигурации правой кнопкой, выбрав «Свойства»:

свойства конфигурации

Получите 267 видеоуроков по 1С бесплатно:

Откроются свойства конфигурации, где в подвале есть интересующее нас свойство — «Режим использования модальности», где выберите режим «Использовать»:

установка режима модальности

После этого сохраните и примените изменения, нажав клавишу «F7».

Правильное решение задачи

Правильный способ решения этой проблемы — доработать конфигурацию или внешнюю обработку под новые требования.

Предупреждение, вопрос, диалоговые окна и другие модальные окна- всё это необходимо переписывать на новый лад.

Встроенные операторы, которые вызывали модальные окна необходимо заменить на дублирующие функции.

Например:

При этом появился специализированный объект — ОписаниеОпевещения.

Пример замены:

Строка = "";
ВвестиСтроку(Строка, "Введите строковое значение")
Сообщить("Вы ввели " + Строка);

Необходимо заменить на:

Строка = "";
ОписаниеОповещения = Новый ОписаниеОповещения("ТестовыйВводСтроки", ЭтаФорма);
ПоказатьВводСтроки(ОписаниеОповещения, Строка, "Введите строковое значение");

При это добавить подобную процедуру на клиенте, которая отработает, когда значение будет введено пользователем:

&НаКлиенте
Процедура ТестовыйВводСтроки(ПолученноеЗначение, ПереданныеПараметры) Экспорт
Сообщить("Вы ввели " + Строка);
КонецПроцедуры

Формы, которые разрабатываются внутри конфигурации открываются точно также. Достаточно заменить метод «ОткрытьФормуМодально» на «ОткрытьФорму». Прописав описание оповещения и нужную для него новую процедуру.

Что бы открывающейся формой закрыть доступ к вызываемой форме — достаточно в свойстве формы указать в свойстве «РежимОткрытияОкна» — значение «Блокировать окно владельца»:

блокировать окно владельца

Другие статьи по 1С:

P.S. Наша компания предоставляет услуги по настройке, доработке и комплексному внедрению 1С. Закажите бесплатный расчет стоимости вашей задачи на странице Услуги 1С или по телефону +7 (499) 350 29 00.

Остались вопросы?

Задайте ВОПРОС на нашем форуме 1С! ››

СПРОСИТЕ в комментариях!

Один комментарий на “Использование модальных окон в данном режиме запрещено (1С 8.3)
  1. Процедура «ТестовыйВводСтроки» должна быть экспортируемой

    Ответить

Добавить комментарий:

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*