Имя: Пароль:
1C
1С v8
В упр.формах раскрасить строки документа (УсловноеОформление)
0 oleg_prg
 
19.11.13
19:26
Доброго времени суток. Задача раскрасить по условию строки в таблице документа (упр.формы). Подскажите пожалуйста, что ни так делаю.

Создан документ с табл. частью Графики, тамже есть реквизит НеРаботает тип булево. На форме эта таблица как Графики поле названо ГрафикиНеРаботает

Код
НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    ВключитьРаскраску();
    
КонецПроцедуры

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

Заранее спасибо!
1 France
 
19.11.13
19:28
а в режима предприятия просто настроить?.. не айс?
2 oleg_prg
 
19.11.13
19:28
вот скрин http://yadi.sk/d/fOwbYFuJCxPqF
3 oleg_prg
 
19.11.13
19:29
нет, там будет выбор по условию которое меняется часто от ситуации.
4 Defender aka LINN
 
19.11.13
19:41
добавь руками и сравни
5 oleg_prg
 
19.11.13
20:15
переделал вот так  - заработало. ХЗ что это было

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