Переход на новые релизы конфигурации 1С:Управление торговлей 10.3 (в частности, на версии 10.3.50.1 и 10.3.50.2) принес пользователям немало сложностей. Эти обновления были выпущены в экстренном порядке для поддержки требований ФФД 1.05 и изменения ставки НДС до 20%. Из-за спешки разработчиков в код конфигурации закралось несколько досадных ошибок, которые полностью блокируют как работу с торговым оборудованием (онлайн-кассами), так и запуск самой программы пользователями.
В этой статье мы подробно разберем, почему возникают эти ошибки, проанализируем их причины и пошагово исправим каждую из них.
---
При попытке открыть кассовую смену или выполнить любую операцию с подключенным оборудованием в релизе 10.3.50.1 система аварийно завершает работу со следующим сообщением:
{ОбщийМодуль.МенеджерОборудованияКлиентПереопределяемый.Модуль(241,11)}: Переменная не определена (глПодключаемоеОборудованиеСобытиеОбработано) Возврат (<<?>>глПодключаемоеОборудованиеСобытиеОбработано = Ложь);
Выясним причину: разработчики конфигурации добавили вызов этой переменной в общий модуль МенеджерОборудованияКлиентПереопределяемый, но забыли объявить саму глобальную переменную в модуле обычного приложения. В результате компилятор 1С не понимает, к какому объекту идет обращение.
Как исправить вручную:
Перем...), добавьте следующую строку:
Перем глПодключаемоеОборудованиеСобытиеОбработано Экспорт;
После этого сохраните конфигурацию и выполните обновление базы данных (клавиша F7). Ошибка при открытии смены исчезнет.
---
При обновлении базы данных до версии 10.3.50.2 процесс может зависнуть или прерваться ошибкой, указывающей на то, что у объекта не обнаружен реквизит АдресЭлектроннойПочты.
Выясним причину: в данном релизе запускаются фоновые обработчики обновления ИБ. Один из них некорректно перенесен из конфигураций на управляемых формах (например, УТ 11). Код пытается напрямую прочитать реквизит АдресЭлектроннойПочты у справочника Пользователи. Однако в старой архитектуре 1С:УТ 10.3 контактная информация пользователей (включая e-mail) хранится в отдельном регистре сведений КонтактнаяИнформация, а самого реквизита в справочнике физически нет.
Как исправить ситуацию:
Поскольку обработчик падает с ошибкой, статус обновления информационной базы остается незавершенным. Чтобы принудительно завершить обновление, мы можем воспользоваться встроенными механизмами или внести небольшую правку в код обработчика.
Рассмотрим вариант обхода через Конфигуратор:
.АдресЭлектроннойПочты).
Попытка
ПочтаПользователя = Выборка.АдресЭлектроннойПочты;
Исключение
ПочтаПользователя = ""; // Или получение почты из регистра КонтактнаяИнформация
КонецПопытки;
После внесения изменений запустите базу в режиме «Предприятие» под пользователем с полными правами для успешного завершения процедур обновления.
---
После неудавшегося обновления обычные пользователи (кассиры, менеджеры) не могут войти в базу. Система выдает предупреждение о невозможности входа, при этом администратор зайти в систему может.
Выясним причину: это штатное поведение подсистемы обновления. БСП (Библиотека стандартных подсистем) блокирует авторизацию пользователей без полных прав, если фоновые или монопольные процедуры обновления конфигурации завершились аварийно или не были выполнены до конца. Это делается для защиты данных от повреждения.
Решение проблемы по шагам:
РезультатыОбновленияИнформационнойБазы (ее можно открыть через меню «Все функции» или «Функции для технического специалиста» в зависимости от версии платформы) и вручную отметьте проблемные обработчики как выполненные.---
В релизе 10.3.50.2 разработчики полностью обновили интеграционную компоненту для работы с ККТ АТОЛ. Старые версии драйверов (8.х и 9.х) больше не поддерживаются механизмами ФФД 1.05 в этой конфигурации.
Решение проблемы:
"АТОЛ:ККТ с передачей данных в ОФД (54-ФЗ) 10.х".---
Релизы УТ 10.3.50.1 и 10.3.50.2 получились крайне нестабильными из-за масштабных изменений законодательства. Если вы не хотите заниматься ручной правкой программного кода в конфигураторе, самым безопасным и правильным решением будет переход на более поздние сервисные релизы (например, 10.3.50.3 или ветку 10.3.51), в которых фирма 1С исправила все вышеописанные архитектурные недоработки.