Добрый день!
Задача такая: Кладовщик создает документ Поступление ТМЦ, в документе нужно создать
у номенклатуры серию, но возникает ошибка - "У пользователя недостаточно прав на исполнение операции над базой данных.
Права на справочник номенклатуру установлены через группу пользователей - вкладка номенклатура только на чтение.
Как пользователю можно дать права на серии номенклатуры и оставить права на номенклатуру только на чтение без изменения конфигурации?
Конфигурация УПП.
---
хотя вот сделал обработочку, проверки привелигированного режима.
запускаю под бесправным пользователем, в файловой базе,
ничего он не устанавливается, так и остается в состоянии "Ложь".

Видимо запускаешь, все таки под юзером с админскими правами, который может менять режим.
Попробуй, на юзере с обкоцанными правами проверять.

Ну или, уже не знаю.
---
текст ошибки скорее характерен для запрета RLS, а не для недостатка прав на объекты метаданных.
---
Да, в RLS у этого пользователя установлен запрет на редактирование номенклатуры
Если убрать это условие, то серии создаются, но и пользователь уже может создавать номенклатуру
Подскажите, программно можно обойти запрет RLS ?
Создание и установка серий происходит в обработке табличной части документа.
---
Подскажите, программно можно обойти запрет RLS ?
привелигированный режим
---
Это два разных справочника "Номенклатура" и "Серии номенклатуры". То есть нужно вносить тогда (чтобы "меньшей кровью") информацию в справочник "Серии номенклатуры" и там делать привязку к Владельцу (к какой номенклатуре), чтобы не было пересортицы, а потом в документе выбирать серию. Ну, если слишком сложно, то да, через RLS
---
Попробовал в обработке писать вначале
УстановитьПривилегированныйРежим(Истина);
потом
УстановитьПривилегированныйРежим(Ложь);
В файловом режиме получилось, а у меня клиент серверный вариант - ничего не происходит
---
Если после того как вы установили ПривилегированныйРежим процедура вызывает другую процедуру, то в новой процедуре ПривилегированныйРежим не наследуется. Возможно причина в этом.
---
Попробовал в обработке писать вначале
Надо не в начале обработки писать,
а непосредственно перед недоступным влиянием на объект.
Например перед методом Записать,
или перед запрос.Выполнить

Во время исполнения кода при переходах между функциями и процедурами, привелигированный режим сразу же отключается.
---
Пишу УстановитьПривилегированныйРежим вначале и в конце фнкции

```1c
    Функция СоздатьНовуюСерию(Номенклатура,НомерДокумента,ДатаИзготовления)
    УстановитьПривилегированныйРежим(Истина);
    СрокГодности = Формат(ДобавитьМесяц(Дата(ДатаИзготовления+" 00:00:00"),СрокХраненияВМесяцах(Номенклатура)),"ДФ=dd.MM.yyyy");
    НаименованиеСерии = НомерДокумента +", "+ СрокГодности;
    СерияНоменклатуры =ПоискСерии(Номенклатура,НаименованиеСерии);
    Если НЕ СерияНоменклатуры = Справочники.СерииНоменклатуры.ПустаяСсылка() Тогда
    Серия = СерияНоменклатуры;
    Возврат Серия;
    КонецЕсли;
    Новыйэлемент = Справочники.СерииНоменклатуры.СоздатьЭлемент();
    НовыйЭлемент.Владелец = Номенклатура.Ссылка;
    НовыйЭлемент.СерийныйНомер = НомерДокумента;
    НовыйЭлемент.СрокГодности = Дата(СрокГодности+" 00:00:00");
    НовыйЭлемент.Наименование = НаименованиеСерии;
    НовыйЭлемент.Записать();
    Серия = НовыйЭлемент.Ссылка;
    УстановитьПривилегированныйРежим(Ложь);
    Возврат Серия;
    КонецФункции
```
---
ПоискСерии(Номенклатура,НаименованиеСерии);

```1c
    ПоискСерии(Номенклатура,НаименованиеСерии);
```

Это не вызов другой функции ?
---
Да, это вызов функции на поиск уже существующей серии,
попробовал перенести непосредственно

```1c
    Новыйэлемент = Справочники.СерииНоменклатуры.СоздатьЭлемент();
    НовыйЭлемент.Владелец = Номенклатура.Ссылка;
    НовыйЭлемент.СерийныйНомер = НомерДокумента;
    НовыйЭлемент.СрокГодности = Дата(СрокГодности+" 00:00:00");
    НовыйЭлемент.Наименование = НаименованиеСерии;
    УстановитьПривилегированныйРежим(Истина);
    НовыйЭлемент.Записать();
    Серия = НовыйЭлемент.Ссылка;
    УстановитьПривилегированныйРежим(Ложь);
```

Пока ошибка остается
---
Пока ошибка остается
обработка внешняя или встроенная в конфу ?
---
Обработка внешняя
подключаю к документу - обработка заполнения табличный частей
---
Обработка внешняя
из внешней обработки, ты ограничение прав не обойдешь. Иначе это была бы дыра в безопасности.
Только встраивать в конфу.
---
Тогда почему в файловом режиме работает?
---
Тогда почему в файловом режиме работает?
а вообще без УстановкиПривелигированного режима
в файловом перестает работать ?
---
Да , не работает
---
Почитал описание УстановитьПривилегированныйРежим
В клиент-серверном варианте при выполнении на клиенте данный метод не выполняет никаких действий.
 У меня клиент-серверный вариант - обычные формы ( толстый клиент) может из-за этого не работает?
---
может из-за этого не работает?
Запросы и записи в БД на клиенте в принципе невозможны. Они выполняются на сервере. Поэтому это условие ни при чем.

Привелигированный режим не работает во внешних обработках !!!! Именно поэтому.

Да ты и отладчиком это можешь проверить элементарно.
---
Спасибо за помощь, отладчиком сегодня вечером посмотрю, непонятно все равно почему на файловом режиме работает
---
Спасибо за помощь, отладчиком сегодня вечером посмотрю, непонятно все равно почему на файловом режиме работает
может на файловом у твоего пользователя прав больше ?
вообще странно...я был уверен,
но кто его знает, может что-то уже изменилось. Поэтому даже интересно
---
хотя вот сделал обработочку, проверки привелигированного режима.
запускаю под бесправным пользователем, в файловой базе,
ничего он не устанавливается, так и остается в состоянии "Ложь".

Видимо запускаешь, все таки под юзером с админскими правами, который может менять режим.
Попробуй, на юзере с обкоцанными правами проверять.

Ну или, уже не знаю.