При работе в конфигурации 1С:Розница 2.0 пользователи и разработчики часто сталкиваются со следующей ситуацией: при попытке открыть файл внешней обработки через меню «Файл -> Открыть» на экране отображается абсолютно пустое окно. Проанализируем причину данного поведения платформы и разберем практические варианты решения этой проблемы.
Конфигурация 1С:Розница 2.0 построена на базе интерфейса управляемого приложения. Тонкий клиент и веб-клиент платформы 1С:Предприятие 8 технически не поддерживают отрисовку и выполнение элементов обычных (неуправляемых) форм.
Если внешний файл .epf был создан для платформ предыдущих поколений или для конфигураций на обычных формах (например, 1С:Управление торговлей 10.3 или 1С:Бухгалтерия 2.0), то при попытке интерактивного открытия такого файла в управляемом режиме платформа не может отобразить привычный интерфейс и выводит пустое окно.
Кроме того, пустое окно может появляться в следующих ситуациях:
Интерактивное открытие внешних отчетов и обработок.Наиболее корректным и правильным решением является адаптировать файл внешней обработки для работы в управляемом интерфейсе. Рассмотрим по шагам, как это сделать:
&НаКлиенте) и серверный контекст (директива &НаСервере).Для интеграции внешней обработки в 1С:Розница 2.0 через механизм Библиотеки Стандартных Подсистем (БСП) перейдем в модуль объекта обработки и добавим экспортную функцию СведенияОВнешнейОбработке(). Проанализируем пример кода:
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2");
ПараметрыРегистрации.Наименование = "Моя внешняя обработка";
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
ПараметрыРегистрации.Версия = "1.0";
ПараметрыРегистрации.БезопасныйРежим = Истина;
Команда = ПараметрыРегистрации.Команды.Добавить();
Команда.Представление = "Запустить обработку";
Команда.Идентификатор = "ЗапуститьОбработку";
Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
Команда.ПоказыватьОповещение = Ложь;
Возврат ПараметрыРегистрации;
КонецФункции
После добавления данной функции обработку можно зарегистрировать в режиме 1С:Предприятие через раздел Администрирование -> Печатные формы, отчеты и обработки -> Дополнительные отчеты и обработки.
Если переписать форму под управляемый интерфейс оперативно невозможно, рассмотрим вариант запуска системы в режиме, позволяющем исполнять обычные формы.
Также стоит учесть, что в 1С:Розница 2.0 работа с обычными формами может быть доступна при запуске специального режима Рабочего места кассира (РМК), если у пользователя настроены соответствующие права доступа.
Если обработку с обычной формой требуется выполнить разово и без смены режима клиента у всех пользователей, посмотрим на альтернативный вариант. Можно открыть конфигурацию в режиме Конфигуратор, снять ее с поддержки (или включить возможность изменения) и объединить файл внешней обработки с основной конфигурацией, добавив объект в ветку Обработки.
Внутренние обработки конфигурации, содержащие обычные формы, могут запускаться платформой в режиме толстого клиента, в отличие от внешних файлов .epf.