Подскажите пожалуйста, как запретить менять параметры СКД для роли Продавец, а точнее оставить чтобы Продавец имел возможность менять только даты отчета, а Администратор настраивал остальные параметры для Продавца.
---
Все, нашла.
Главное при создании на сервере написала СтандартнаяОбработка = Ложь; и мыкаюсь...

```1c
    Элементы.КомпоновщикНастроекПользовательскиеНастройки.ПодчиненныеЭлементы[0].ПодчиненныеЭлементы[0].Доступность = Ложь;
```
---
пожалуйста, как запретить менять параметры СКД для роли Продавец, а точнее оставить чтобы Продавец имел возможность менять только даты отчета, а Администратор настраивал остальные
пилить общую основную форму отчета
---
т.е.? те параметры что есть в СКД дублировать? с похожими именами?
---
смотря как у вас там устроено.
В отчетах, где нет собственной формы, вызывается общая форма из свойств конфигурации.
Отчеты могут быть самые разные, с разными параметрами - поэтому, нужно сделать такую схему, чтобы не нарушить работу всех отчетов.
В принципе, при создании на сервере, в типовых уже натыкано множество всяких обработок формы, с видимостью и доступностью.
Вам нужно вникнуть в вашу систему, и аккуратно добавить свои условия. А может даже какую то отдельную страницу отчета сделать, для определенных ролей.

пример общей формы отчета из УНФ.

```1c
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Если Параметры.Свойство("АвтоТест") Тогда
    Возврат;
    КонецЕсли;

    ВариантыПанелиКлючТекущегоВарианта = " - ";

    Если ТекущийВариантИнтерфейсаКлиентскогоПриложения() = ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 Тогда
    Элементы.КомандыЕще.Ширина = 15;
    КонецЕсли;

    // Параметры формы.
    РежимРасшифровки = (Параметры.Свойство("Расшифровка") И Параметры.Расшифровка <> Неопределено);
    РежимВариантаОтчета = (ТипЗнч(КлючТекущегоВарианта) = Тип("Строка") И Не ПустаяСтрока(КлючТекущегоВарианта));
    ПравоВывода = ПравоДоступа("Вывод", Метаданные);

    ФормаПараметры = Новый Структура(
    "КлючНазначенияИспользования, КлючПользовательскихНастроек,
    |Расшифровка, СформироватьПриОткрытии, ТолькоПросмотр,
    |ФиксированныеНастройки, Раздел, Подсистема, ПодсистемаПредставление");
    ЗаполнитьЗначенияСвойств(ФормаПараметры, Параметры);
    ФормаПараметры.Вставить("Отбор", Новый Структура);
    Если ТипЗнч(Параметры.Отбор) = Тип("Структура") Тогда
    ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ФормаПараметры.Отбор, Параметры.Отбор, Истина);
    Параметры.Отбор.Очистить();
    КонецЕсли;

    // СтандартныеПодсистемы.ОценкаПроизводительности
    Попытка
    ОтчетОбъект = РеквизитФормыВЗначение("Отчет");
    ОтчетМетаданные = ОтчетОбъект.Метаданные();
    ПостФикс = ОтчетМетаданные.Имя + "_" + СтрЗаменить(КлючТекущегоВарианта, " ", "_");
    КлючеваяОперация = ПредопределенноеЗначение("Справочник.КлючевыеОперации.ФормированиеОтчёта_" + Постфикс);
    Исключение
    КлючеваяОперация = Неопределено;
    КонецПопытки;
    // Конец СтандартныеПодсистемы.ОценкаПроизводительности

    Если ФормаПараметры.Подсистема = Неопределено Тогда
    Элементы.ДругиеОтчеты.Видимость = Ложь;
    КонецЕсли;

    // Локальные переменные.
    ОтчетОбъект = РеквизитФормыВЗначение("Отчет");
    ОтчетМетаданные = ОтчетОбъект.Метаданные();
    НастройкиОтчета = ОтчетыКлиентСервер.ПолучитьНастройкиОтчетаПоУмолчанию();
    АдресСхемы = ПоместитьВоВременноеХранилище(ОтчетОбъект.СхемаКомпоновкиДанных, УникальныйИдентификатор);

    НастройкиОтчета.Вставить("АдресСхемы", АдресСхемы);
    НастройкиОтчета.Вставить("ПолноеИмя", ОтчетМетаданные.ПолноеИмя());
    НастройкиОтчета.Вставить("Наименование", СокрЛП(ОтчетМетаданные.Представление()));

    Информация = ВариантыОтчетов.СформироватьИнформациюОбОтчетеПоПолномуИмени(НастройкиОтчета.ПолноеИмя);
    НастройкиОтчета.Вставить("ОтчетСсылка", Информация.Отчет);
    НастройкиОтчета.Вставить("ВариантСсылка", ВариантыОтчетов.ПолучитьСсылку(НастройкиОтчета.ОтчетСсылка, КлючТекущегоВарианта));

    Если ВариантыОтчетовПовтИсп.ОтчетыСНастройками().Найти(НастройкиОтчета.ОтчетСсылка) <> Неопределено Тогда
    ОтчетОбъект.ОпределитьНастройкиФормы(ЭтотОбъект, КлючТекущегоВарианта, НастройкиОтчета);
    СоответствиеПериодичностиПараметров = Новый Соответствие;
    Для Каждого КлючИЗначение Из НастройкиОтчета.СоответствиеПериодичностиПараметров Цикл
    ПолеКД = КлючИЗначение.Ключ;
    Если ТипЗнч(ПолеКД) = Тип("ПараметрКомпоновкиДанных") Тогда
    ПолеКД = Новый ПолеКомпоновкиДанных("ПараметрыДанных." + Строка(ПолеКД));
    КонецЕсли;
    СоответствиеПериодичностиПараметров.Вставить(ПолеКД, КлючИЗначение.Значение);
    КонецЦикла;
    НастройкиОтчета.Вставить("СоответствиеПериодичностиПараметров", СоответствиеПериодичностиПараметров);
    КонецЕсли;

    НастройкиОтчета.Вставить("ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек", Истина);
    Если Параметры.Свойство("СформироватьПриОткрытии") И Параметры.СформироватьПриОткрытии = Истина Тогда
    Параметры.СформироватьПриОткрытии = Ложь;
    НастройкиОтчета.ФормироватьСразу = Истина;
    НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Ложь;
    КонецЕсли;

    НастройкиОтчета.Вставить("Внешний", ТипЗнч(НастройкиОтчета.ОтчетСсылка) = Тип("Строка"));
    НастройкиОтчета.Вставить("ПредопределенныеВарианты", Новый СписокЗначений);
    Если НастройкиОтчета.Внешний И ОтчетОбъект.СхемаКомпоновкиДанных <> Неопределено Тогда
    Для Каждого Вариант Из ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек Цикл
    НастройкиОтчета.ПредопределенныеВарианты.Добавить(Вариант.Имя, Вариант.Представление);
    КонецЦикла;
    КонецЕсли;

    // Параметры по умолчанию
    Если НастройкиОтчета.Свойство("ВыводитьСуммуВыделенныхЯчеек") И Не НастройкиОтчета.ВыводитьСуммуВыделенныхЯчеек Тогда
    Элементы.АвтоСуммаГруппа.Видимость = Ложь;
    Элементы.ОтчетТабличныйДокумент.УстановитьДействие("ПриАктивизацииОбласти", ");
    КонецЕсли;

    // Скрытие команд вариантов
    Если Не НастройкиОтчета.Свойство("РазрешеноМенятьВарианты") Или Параметры.Свойство("ВидимостьКомандВариантовОтчетов") Тогда
    НастройкиОтчета.Вставить("РазрешеноМенятьВарианты", ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ВидимостьКомандВариантовОтчетов"));
    КонецЕсли;
    Если ТипЗнч(НастройкиОтчета.РазрешеноМенятьВарианты) <> Тип("Булево") Тогда
    НастройкиОтчета.РазрешеноМенятьВарианты = ВариантыОтчетовПовтИсп.ПравоДобавления();
    Если НастройкиОтчета.РазрешеноМенятьВарианты // Команды не отключены параметрами открытия формы.
    И Параметры.КлючВарианта = Неопределено // Открывается без контекста.
    И ЗначениеЗаполнено(НастройкиОтчета.ВариантСсылка) Тогда // Вариант зарегистрирован.
    ПредопределенныйВариант = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(НастройкиОтчета.ВариантСсылка, "ПредопределенныйВариант");
    Если ЗначениеЗаполнено(ПредопределенныйВариант) Тогда
    Отключенные = ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы();
    Если Отключенные.Найти(ПредопределенныйВариант) <> Неопределено Тогда // Вариант отключен.
    Текст = НСтр("ru = 'Контекстный вариант "%1" отчета "%2" открыт без контекста.'");
    ВариантыОтчетов.ПредупреждениеПоВарианту(НастройкиОтчета.ВариантСсылка, Текст, НастройкиОтчета.ВариантСсылка, НастройкиОтчета.ОтчетСсылка);
    НастройкиОтчета.РазрешеноМенятьВарианты = Ложь;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    Если Не НастройкиОтчета.РазрешеноМенятьВарианты Тогда
    АвтоНавигационнаяСсылка = Ложь;
    КонецЕсли;

    // Регистрация команд и реквизитов формы, которые не удаляются при перезаполнении быстрых настроек.
    НаборРеквизитов = ПолучитьРеквизиты();
    Для Каждого Реквизит Из НаборРеквизитов Цикл
    ПолноеИмяРеквизита = Реквизит.Имя + ?(ПустаяСтрока(Реквизит.Путь), ", "." + Реквизит.Путь);
    ПостоянныеРеквизиты.Добавить(ПолноеИмяРеквизита);
    КонецЦикла;
    Для Каждого Команда Из Команды Цикл
    ПостоянныеКоманды.Добавить(Команда.Имя);
    КонецЦикла;

    // Приведение зависимых элементов формы к кондиции.
    ВидимостьДоступностьКорректность(");

    // Тесная интеграция с подсистемами БСП.
    Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РассылкаОтчетов") Тогда
    МодульРассылкаОтчетов = ОбщегоНазначения.ОбщийМодуль("РассылкаОтчетов");
    МодульРассылкаОтчетов.ФормаОтчетаДобавитьКоманды(ЭтотОбъект, Отказ, СтандартнаяОбработка);
    КонецЕсли;

    // События.
    ОтчетыПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
    Если НастройкиОтчета.События.ПриСозданииНаСервере Тогда
    ОтчетОбъект.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
    КонецЕсли;

    // Если в подменю одна команда, то выпадающий список не отображается.
    Если Элементы.ГруппаОтправить_Левая.ПодчиненныеЭлементы.Количество() = 1 Тогда
    Элементы.ОтправитьПоЭлектроннойПочте_Левая.Заголовок = Элементы.ГруппаОтправить_Левая.Заголовок + "...";
    Элементы.Переместить(Элементы.ОтправитьПоЭлектроннойПочте_Левая, Элементы.КомандыЛевая, Элементы.ГруппаОтправить_Левая);
    КонецЕсли;
    Если Элементы.ГруппаОтправить.ПодчиненныеЭлементы.Количество() = 1 Тогда
    Элементы.ОтправитьПоЭлектроннойПочте.Заголовок = Элементы.ГруппаОтправить.Заголовок + "...";
    Элементы.Переместить(Элементы.ОтправитьПоЭлектроннойПочте, Элементы.КомандыЕще, Элементы.ГруппаОтправить);
    КонецЕсли;
```
---
Сделала свою форму

```1c
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;
    Ответственный = Пользователи.ТекущийПользователь();
    Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы[1].Видимость = Ложь;
    КонецПроцедуры
```

и получила Поле объекта недоступно для записи (Видимость)

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

```1c
    Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы[1].Видимость = Ложь;
```

у реквизита формы нет свойства видимость, вам нужен элемент формы.
---
не типовый.
пробовала
этотобъект.ЭтаФорма.Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы[1].Видимость
этаформа.ЭтотОбъект.Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы[1].Видимость
---
Повторяюсь вам нужен элемент формы, а не реквизиты формы. Вы пытаетесь установить видимость для одного из элементов доступных параметров СКД, вам нужен элемент формы:

```1c
    Этаформа.Элементы.
```

Или проще

```1c
    Элементы.
```

В отладчике то что после точки это и будут элементы формы.
---
вот кнопку сформировать нашла... а периоды нет

```1c
    &НаКлиенте
    Процедура ПриОткрытии(Отказ)
    Элементы.ФормаСформировать.Доступность = Ложь;
```
---
Все, нашла.
Главное при создании на сервере написала СтандартнаяОбработка = Ложь; и мыкаюсь...

```1c
    Элементы.КомпоновщикНастроекПользовательскиеНастройки.ПодчиненныеЭлементы[0].ПодчиненныеЭлементы[0].Доступность = Ложь;
```