В современных конфигурациях на базе 1С:ERP 2.5 (а также в "Комплексной автоматизации" и "Управлении торговлей") часто возникает ситуация, когда администратор видит все необходимые команды в интерфейсе, а рядовые пользователи — нет. Одной из таких "неуловимых" команд является кнопка «Состояние рассылки» в документах раздела CRM и маркетинг. Даже создание специализированной роли и ручная настройка видимости в конфигураторе не всегда приносят результат. Проанализируем ситуацию и разберем по шагам, как вернуть управление рассылками пользователям.
Важно понимать, что в управляемых формах 1С видимость кнопки (команды) определяется не только свойством Видимость в конфигураторе или правами в роли. Система часто использует программные механизмы для динамического скрытия элементов интерфейса. Если условие для отображения кнопки не выполнено в коде, никакие настройки в меню «Изменить форму» пользователю не помогут — команда просто не будет передана на клиентскую часть.
Рассмотрим подробнее основные причины, по которым кнопка «Состояние рассылки» может отсутствовать, и способы их устранения.
Первым делом проанализируем настройки системы. Команда «Состояние рассылки» жестко завязана на использование соответствующего функционала в программе. Если опция выключена, кнопка скрывается глобально для всех, кроме, возможно, полных прав.
Важный нюанс: Если опция включена, но кнопка не появилась, попробуйте перезапустить сеанс пользователя. Значения функциональных опций кэшируются, и изменения могут вступить в силу не сразу.
Проанализируем программный код системы. В ERP кнопка «Состояние рассылки» часто вызывает отчет или форму, которая опирается на данные электронных писем и SMS. В общих модулях, таких как РассылкиКлиентамПереопределяемый, может стоять проверка на наличие прав к объектам типа «Взаимодействия».
Проверим, назначены ли пользователю следующие типовые роли:
Чтение взаимодействий или Добавление и изменение взаимодействий.Просмотр электронных писем.Использование отчетов CRM и маркетинг.Без доступа к чтению документов ЭлектронноеПисьмоИсходящее система может посчитать вызов формы состояния бессмысленным и скрыть кнопку на этапе ПриСозданииНаСервере.
Выясним причину, связанную с инфраструктурой. Механизм рассылок в 1С тесно интегрирован с почтовым клиентом. Если в системе не настроена ни одна системная учетная запись электронной почты или у конкретного пользователя нет прав доступа к этим записям, программа может программно скрывать инструменты мониторинга.
Выполним следующие действия:
Рассмотрим ситуацию, когда список документов «Рассылки клиентам» пуст для пользователя из-за настроек RLS. Если платформа видит, что пользователю не доступна ни одна запись, на которую ссылается команда (параметризуемая команда), кнопка в форме списка или в форме документа может не отобразиться автоматически.
Чтобы исключить этот фактор, попробуйте временно отключить RLS для этого пользователя или убедиться, что он является автором хотя бы одного документа «Рассылка клиентам».
Если вышеперечисленные методы не помогли, нам придется заглянуть "под капот" конфигурации. Посмотрим на пример того, как система может управлять видимостью команды программно. Откройте конфигуратор и найдите форму списка или форму документа РассылкаКлиентам.
Обратим внимание на процедуру ПриСозданииНаСервере. В ней часто вызывается общий модуль управления интерфейсом. Рассмотрим пример кода, который может скрывать кнопку:
// Пример логики в модуле формы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Вызов общего механизма установки прав
УправлениеCRM.УстановитьВидимостьКомандРассылки(ЭтаФорма);
// Или прямая проверка прав
Если Не ПравоДоступа("Просмотр", Метаданные.Отчеты.СостояниеРассылокКлиентам) Тогда
Элементы.ФормаКомандаСостояниеРассылки.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
Чтобы точно определить, где происходит скрытие, воспользуемся Глобальным поиском (Ctrl+Shift+F) по строке "СостояниеРассылки" (имя команды). Проанализируем все вхождения в модулях форм и общих модулях с префиксом Переопределяемый. Именно там часто скрыта логика, проверяющая не только роли, но и заполненность определенных реквизитов или настроек в константах.
Подведем итог нашему исследованию. Если пользователи не видят кнопку «Состояние рассылки», выполните проверку по следующему чек-листу:
ПриСозданииНаСервере жесткого условия, скрывающего команду Элементы.СостояниеРассылки?Чаще всего проблема решается добавлением стандартной роли Чтение взаимодействий, так как отчет о состоянии рассылки напрямую обращается к результатам отправки этих взаимодействий. Проанализировав эти аспекты, мы сможем гарантированно вернуть пользователям доступ к управлению маркетинговыми активностями.