При проведении документов поступления товаров, установки цен или реализации в базовой редакции конфигурации «1С:Управление торговлей 11» пользователи нередко сталкиваются с системным сообщением: «Следующие настройки программы имеют недопустимые в базовой версии значения: - Использовать начисление зарплаты УТ - Технология сервиса в локальном режиме». В результате блокируется запись и проведение любых учетных документов информационной базы.
Разберем причины возникновения данной ошибки, проанализируем внутренние механизмы платформы и рассмотрим пошаговые способы восстановления корректной работы конфигурации.
Чаще всего подобное поведение программы проявляется в следующих ситуациях:
Рассмотрим самый доступный вариант исправления, не требующий написания программного кода. Если у учетной записи пользователя включены полные права, мы можем напрямую отредактировать значения констант в режиме предприятия.
Использовать начисление зарплаты УТ, откроем ее форму и снимем флаг (установим значение в состояние «Отключено»).Не использовать разделение по областям данных. Установим для нее значение Истина (флаг включен), тем самым подтверждая локальный однопользовательский режим работы.В базовых версиях конфигураций отсутствует возможность модификации конфигурации через конфигуратор, однако сохраняется возможность запуска внешних обработок через меню «Файл» $\rightarrow$ «Открыть». Напишем компактный алгоритм, который программно установит правильные значения для блокирующих констант.
Посмотрим на пример кода модуля внешней обработки:
&НаСервере
Процедура ИсправитьНастройкиБазовойВерсииНаСервере()
// Отключаем не поддерживаемый в базовой версии функционал начисления зарплаты
Константы.ИспользоватьНачислениеЗарплатыУТ.Установить(Ложь);
// Включаем признак отсутствия разделения данных для локальной базы
Константы.НеИспользоватьРазделениеПоОбластямДанных.Установить(Истина);
// Принудительно обновляем параметры работы программы
ОбновитьПовторноИспользуемыеЗначения();
КонецПроцедуры
Разберем, как работает данный алгоритм. Метод Установить() у менеджера константы записывает корректное булево значение непосредственно в базу данных. Вызов метода ОбновитьПовторноИспользуемыеЗначения() сбрасывает кэшированные сервером значения функциональных опций без обязательного немедленного перезапуска базы.
Если доступ к ветке констант ограничен или форма константы недоступна для интерактивного редактирования, воспользуемся универсальным типовым инструментом:
Использовать начисление зарплаты УТ и снимем галочку, а для настройки Не использовать разделение по областям данных — установим значение Да.Проанализируем ситуацию, когда ошибка вызвана незавершенными обработчиками перехода на новый релиз программы. В этом случае константы могут повторно возвращаться в исходное состояние при попытке проведения документов.
1cv8.exe ENTERPRISE /F "ПутьКБазе" /C ЗапуститьОбновлениеИнформационнойБазы
Поступление товаров и услуг или Установка цен номенклатуры.Выполнив корректировку указанных констант и перезапустив сеанс «1С:Предприятие», мы полностью устраняем конфликт настроек базовой версии, возвращая возможность беспрепятственного проведения документов.