Добрый день, подскажите, в толстом клиенте,если у пользователя не выставлено доп.право "Отражать в регл.учете" при попытке удалить или изменить получаю сообщение "Недостаточно прав для отражения в регламентированном учете. Изменения не могут быть записаны..." и отказ от записи(Срабатывает от подписки на событие ПередЗаписью).
Код подписки:

```1c
    Процедура ПередЗаписьюДокументаОтражениеВРеглУчетеПередЗаписью(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт

    ЗапретитьЗапись = НЕ ПроверитьВозможностьОтраженияВРеглУчете(Источник, РежимЗаписи);

    Отказ = Отказ ИЛИ ЗапретитьЗапись;

    #Если Клиент Тогда
    Если ЗапретитьЗапись Тогда
    ТекстСообщения = "Недостаточно прав для отражения в регламентированном учете. Изменения не могут быть записаны...";
    Заголовок = "Запись документа: " + Строка(Источник);
    ОбщегоНазначения.СообщитьОбОшибке(ТекстСообщения, , Заголовок, СтатусСообщения.Важное, Источник.Ссылка);
    КонецЕсли;
    #КонецЕсли

    КонецПроцедуры
```

А в тонком клиенте нет такого запрета.Подскажите, как решить эту проблему?Сделать свою подписку на событие с проверкой на режим запуска программы?
---
sweety-twetty, это означает, что ПроверитьВозможностьОтраженияВРеглУчете возвращает истину, то есть либо нет запрета, либо функция работает неправильно, надо её код смотреть
---
sweety-twetty, в тонком клиенте не срабатывает код заключенный в #Если Клиент #КонецЕсли, потому что подписки в тонком клиенте вызываются на стороне сервера. Код до него должен срабатывать в любом случае (т.е. документ не должен проводиться, но при этом не должна выдаваться ошибка).

Вы отладчиком останавливаетесь на строке Отказ = Отказ ИЛИ ЗапретитьЗапись; ? Что после ее выполнения в переменной Отказ?
---
отладчиком туда не попадаю
---
добавляю вознаграждение
---
Попробуй в условие
```1c
    #Если Клиент Тогда
```
 добавить тонкий клиент
```1c
    #Если Клиент ИЛИ ТонкийКлиент Тогда
```

Но есть подозрение, что в модуле "ОбщегоНазначения" не отработает "СообщитьОбОшибке". Тогда лучше конструкцию оставить как есть а после неё дописать свою
```1c
    #Если ТонкийКлиент Тогда
```
 и в ней, например, вызвать исключение с текстом ошибки
---
но отказ ведь все равно должен сработать.а система в тонком клиенте перезаписывает документ
---
Можно попробовать так

```1c
    #Если ТонкийКлиент Тогда
    ВызватьИсключение "Недостаточно прав для отражения в регламентированном учете. Изменения не могут быть записаны...";
    #КонецЕсли
```
---
silwendil, этот код не сработает, подписки обрабатываются на сервере.
---
Сделала Сообщить(Отказ) получила сообщение "Нет"
---
sweety-twetty, это означает, что ПроверитьВозможностьОтраженияВРеглУчете возвращает истину, то есть либо нет запрета, либо функция работает неправильно, надо её код смотреть
---
спасибо что натолкнули на мысли -начала сообщениями выводить значения и начша что

```1c
    Функция РазрешеноОтражениеВРеглУчете() Экспорт

    // В управляемом режиме отражение документов в учете производиться в соответствии с общими настройками.
    // Каждый пользователь в каждом первичном документе не управляет отражением его в учете.
    // В связи с этим для управляемого режима отдельное право на отражение в учете не используется
    Если ТекущийРежимЗапуска() = РежимЗапускаКлиентскогоПриложения.УправляемоеПриложение Тогда
    ЕстьПраво = Истина;
    Иначе
    ЕстьПраво = ПравоЕстьУПользователя(ПланыВидовХарактеристик.ПраваПользователей.РазрешитьОтражатьВРеглУчете, Ложь);
    КонецЕсли;

    Возврат ЕстьПраво;

    КонецФункции // РазрешеноОтражениеВРеглУчете
```