|
СКД. Параметр не заполняется при открытии формы.
| ☑ |
0
Shaman1C
01.12.16
✎
14:41
|
Отчет на СКД.
Создал параметр "Сотрудник".
Во вкладке "Параметры" не задавал никакого "Выражение".
Во вкладке "Настройки" на закладке "Параметры", для "Сотрудник" тоже не задавал никаког опараметра, поставил лишь галочку.
Создал процедуры:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
УстановитьТекущегоПользователя();
КонецПроцедуры
&НаСервере
Процедура УстановитьТекущегоПользователя()
ЭтотОтчет = РеквизитФормыВЗначение("Отчет");
СхемаКомпоновкиДанных = ЭтотОтчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Попытка
СхемаКомпоновкиДанных.Параметры.Сотрудник.Значение = ПараметрыСеанса.Пользователь;
Исключение
КонецПопытки;
КонецПроцедуры
Форма открывается, параметр в КомпоновщикНастроекПользовательскиеНастройки виден, галочка стоит, но значение в нем пустое.
Почему и как сделать чтобы оно заполнялось?
|
|
1
Fragster
гуру
01.12.16
✎
14:44
|
потому что смотришь ты в КомпоновщикНастроекПользовательскиеНастройки, а устанавливаешь вообще непонятно где
|
|
2
Shaman1C
01.12.16
✎
14:46
|
(1) расскажи тогда или куском кода поделись, как правильно надо
|
|
3
Вафель
01.12.16
✎
14:50
|
ПриСозданииНаСервере
Настройки = Новый НастройкиКомпоновкиДанных;
Элемент = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Товар");
Элемент.ИдентификаторПользовательскойНастройки = "Идентификатор";
Параметры.Вставить("Вариант", Новый Структура("Вариант", Настройки));
|
|
4
Shaman1C
01.12.16
✎
14:54
|
Так прокатило:
Для Каждого ТекПараметр Из ЭтотОтчет.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл
Если ТипЗнч(ТекПараметр)= Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда
Если ТекПараметр.Параметр = Новый ПараметрКомпоновкиДанных("Сотрудник") Тогда
ТекПараметр.Использование = Истина;
ТекПараметр.Значение = ПараметрыСеанса.Пользователь;
КонецЕсли;
КонецЕсли;
КонецЦикла;
|
|