Имя: Пароль:
1C
 
УФ. Как добавить невидимую колонку в ДинСписок, которую можно будет включить через "Еще"?
0 DTX 4th
 
21.07.20
15:42
Пробовал вот так:

&НаСервере
Процедура ДобавитьКолонкуНаСервере()
    Рек = Элементы.Добавить("cr_СписокСсылка", Тип("ПолеФормы"), Элементы.Список);
    Рек.Вид = ВидПоляФормы.ПолеНадписи;
    //Рек.Видимость = Ложь;
    Рек.ПутьКДанным = "Список.Ссылка";
    Рек.Заголовок = "Ссылка";
    
        
    ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();

    ПолеЭлемента = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
    ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("cr_СписокСсылка");

    //ОтборЭлемента = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    //ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("cr_СписокСсылка");
    //ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
    //ОтборЭлемента.ПравоеЗначение = 1;

    ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
КонецПроцедуры


Если "Рек.Видимость = Ложь;", то колонка пропадает в Еще. Если через условное оформление, то без отбора не работает, а с отбором (1<>1) колонка есть в Еще, но она уже включена, хотя на форме ее нет.
1 olegves
 
21.07.20
16:16
1. Колонка должна соответствовать полю в Запросе ДС
2. В свойствах колонки установить флаг "Использовать всегда"
3. ПриСозданииНаСервере устанавливать для элемента этой колонки видимость=ложь
4. В твоей процедуре менять видимость для этого элемента на противоположную
2 LoneWanderer
 
21.07.20
16:19
(0) Программно - никак. Пользовательская видимость недоступна из встроенного языка.
3 DTX 4th
 
21.07.20
16:31
(1) Сейчас так и есть. Не работает.
4 DTX 4th
 
22.07.20
12:24
А почему бы не поднять
2 + 2 = 3.9999999999999999999999999999999...