При администрировании конфигурации «1С:Управление торговлей 10.3» специалисты часто сталкиваются с ситуацией: при создании нового пользователя путем копирования существующего администратора (с назначением абсолютно аналогичных ролей и дополнительных прав) новый аккаунт сталкивается с неожиданными ограничениями. Например, система не позволяет изменять цены в документах или редактировать данные за предыдущие дни, в то время как у «старого» администратора никаких ограничений нет.
Поскольку конфигурация часто бывает доработанной (нетиповой), стандартные инструменты диагностики не всегда дают быстрый ответ. В этой статье мы подробно разберем, где скрываются неочевидные настройки и как по шагам устранить эту проблему.
---
Первое, на что необходимо обратить внимание — это механизм даты запрета редактирования. Даже если у пользователя установлена роль Полные права, система может блокировать изменения, если включена соответствующая опция контроля.
Выясним, как настроена эта подсистема в вашей базе:
Также проверим глобальную настройку применения даты запрета для администраторов. Для этого перейдем в меню Сервис — Настройка учета — Настройка параметров учета. На вкладке Общие проверим, установлена ли галочка «Применять дату запрета редактирования для полных прав». Если она включена, то даже полные права будут ограничиваться установленными датами запрета.
---
При обычном копировании элемента в справочнике Пользователи или создании учетной записи в Конфигураторе персональные настройки пользователя, хранящиеся в регистре сведений Настройки пользователей, автоматически не переносятся. Их необходимо скопировать вручную.
Выполним следующие действия под учетной записью старого администратора:
---
Распространенная ошибка при ручном заведении административных аккаунтов — рассинхронизация учетной записи в Конфигураторе и элемента справочника Пользователи в режиме Предприятия.
В системе 1С при запуске сеанса инициализируется важнейший параметр ПараметрыСеанса.ТекущийПользователь. Если связь между пользователем информационной базы (созданным в Конфигураторе) и элементом справочника нарушена:
ТекущийПользователь вернет значение Неопределено или пустую ссылку.Полные права.Решение: Откроем карточку нового пользователя в режиме «1С:Предприятие» и убедимся, что в поле сопоставления с пользователем информационной базы выбран именно нужный системный аккаунт.
---
Если в базе используется механизм RLS (ограничение доступа на уровне записей), то роли Конфигуратора работают совместно со справочником Группы пользователей.
Проанализируем эти настройки по шагам:
---
Поскольку конфигурация не является полностью типовой, существует высокая вероятность того, что предыдущие программисты внедрили ограничения непосредственно в программный код системы под конкретную учетную запись. Это так называемый «хардкод» (hardcode), когда логика завязывается на конкретное имя пользователя или его уникальный идентификатор (GUID).
Проанализируем программный код конфигурации. Для этого откроем базу в режиме Конфигуратор и выполним глобальный поиск (сочетание клавиш Ctrl + Shift + F):
"Администратор" или "ИвановИИ".Особое внимание обратим на следующие участки кода:
ПриНачалеРаботыСистемы. Здесь могут переопределяться параметры сеанса или принудительно устанавливаться даты запрета редактирования.ПолныеПрава: процедура УстановитьПараметрГраницыЗапретаИзмененияДанных. Разработчики часто встраивают туда обход ограничений для конкретных имен учетных записей. Пример такой конструкции, которую мы можем встретить:
Если глЗначениеПеременной("глТекущийПользователь").Наименование = "Администратор" Тогда
// Игнорируем дату запрета для главного администратора
Возврат;
КонецЕсли;
ПередЗаписью для документов или справочника ЦеныНоменклатуры. В них может содержаться логика блокировки изменения реквизитов (например, цен или дат документов) для всех пользователей, кроме конкретно указанного в коде.Если подобная проверка будет обнаружена, необходимо переписать её код, сделав привязку не к конкретному имени пользователя, а к роли или к соответствующему флагу в дополнительных правах, чтобы избежать проблем при создании новых администраторов в будущем.