Имя: Пароль:
1C
1С v8
1С 8.3 Раскрасить строки в списке документов
,
0 Aswed
 
30.06.16
10:40
Но не просто через УсловноеОформление, а с возможностью пользователю самостоятельно выбрать цвет строки по условию.

Т.е. есть справочник, Статусы клиентов. В нем у пользователя возможность интерактивно выбрать цвет представления каждого статуса.

Соответственно в списке документов необходимо расцветить каждую строку списка в зависимости от статуса выбранного у контрагента на которого оформлен дкоумент.

В 8.1 решалось просто через процедуру ПриПолучении Данных или При ВыводеСтроки. А вот как это сделать в УФ я пока не придумал.

Поделитесь идеями!
1 Nuobu
 
30.06.16
10:41
Условное оформление.
2 Зая Бусечка
 
30.06.16
10:43
Программно настроить УФ?
3 Димитрий1с
 
30.06.16
10:43
В условном оформлении поставь каждому статусу свой цвет. Объект.Статус....
4 Aswed
 
30.06.16
10:43
(1) Программно при открытии?
5 Nuobu
 
30.06.16
10:45
(4) Ну а как еще?
6 Aswed
 
30.06.16
10:46
Понял спасибо. Что то в голову сразу не пришло)
7 Зая Бусечка
 
30.06.16
10:46
(4) Можешь сделать при закрытии, если тебе результат не важен...
А ещё есть такая штука, как ПриСозданииНасервере...
8 Aswed
 
30.06.16
11:11
Что не так написал что в условном оформлении остается только последний статус?

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


Что нужно вынести из цикла?
9 singlych
 
30.06.16
11:21
На каждый статус свой элемент оформления. Ну и с правым значением разберись.
10 Aswed
 
30.06.16
11:27
(9) Понял. Спасибо. Все взлетело.