Вход | Регистрация
 

УФ. Как добавить невидимую колонку в ДинСписок, которую можно будет включить через "Еще"?

УФ. Как добавить невидимую колонку в ДинСписок, которую можно будет включить через "Еще"?
Я
   DTX 4th
 
21.07.20 - 15:42
Пробовал вот так:
[1c]
&НаСервере
Процедура ДобавитьКолонкуНаСервере()
    Рек = Элементы.Добавить("cr_СписокСсылка", Тип("ПолеФормы"), Элементы.Список);
    Рек.Вид = ВидПоляФормы.ПолеНадписи;
    //Рек.Видимость = Ложь;
    Рек.ПутьКДанным = "Список.Ссылка";
    Рек.Заголовок = "Ссылка";
    
        
    ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();

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

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

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

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

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.