|   |   | 
| 
 | УО формы списка документа в зависимости от реквизита ТЧ ↓ (Волшебник 08.11.2024 11:09) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Буковка 08.11.24✎ 10:49 | 
        Добрый день!
 Нужно раскрасить список документов в зависимости от того, есть ли в ТЧ документа реквизит. Условие отрабатывает только в случае, если нужный реквизит первой строкой в ТЧ. Что я делаю не так? СписокНомерОдин = Новый СписокЗначений; СписокНомерОдин.Добавить(ЗначениеОдин); СписокНомерДва = Новый СписокЗначений; СписокНомерДва.Добавить(ЗначениеДва); УО = ЭтотОбъект.Список.КомпоновщикНастроек.ФиксированныеНастройки.УсловноеОформление.Элементы; ЭлементыОформления= УО.Добавить(); ЭлементыОформления.Использование = Истина; ГруппаОтбора = ЭлементыОформления.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; ЭлементОтбора = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТЧ.РеквизитТЧ.Данные"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НЕВСписке; ЭлементОтбора.Использование = Истина; ЭлементОтбора.ПравоеЗначение = СписокНомерОдин; Оформление = ЭлементыОформления.Оформление; Оформление.УстановитьЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветФона"), WebЦвета.СветлоЖелтый); УО = ЭтотОбъект.Список.КомпоновщикНастроек.ФиксированныеНастройки.УсловноеОформление.Элементы; ЭлементыОформления= УО.Добавить(); ЭлементыОформления.Использование = Истина; ГруппаОтбора = ЭлементыОформления.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; ЭлементОтбора = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТЧ.РеквизитТЧ.Данные"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке; ЭлементОтбора.Использование = Истина; ЭлементОтбора.ПравоеЗначение = СписокНомерДва; Оформление = ЭлементыОформления.Оформление; Оформление.УстановитьЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветФона"), WebЦвета.СветлоРозовый); | |||
| 1
    
        Волшебник 08.11.24✎ 10:52 | 
        опять какая-то абстрактная херня     | |||
| 2
    
        Буковка 08.11.24✎ 10:54 | 
        (1) Для упрощения восприятия переименовала     | |||
| 3
    
        shuhard 08.11.24✎ 10:56 | 
        (0) заведи реквизит в шапке документа и заполняй его перед записью     | |||
| 4
    
        Буковка 08.11.24✎ 10:57 | 
        (3) хотелось бы обойтись без этого     | |||
| 5
    
        Волшебник 08.11.24✎ 11:09 | 
        (2) А вот не надо было!     | |||
| 6
    
        Волшебник 08.11.24✎ 11:10 | 
        Покажите настоящий программный код.
 Как называется реквизит? | |||
| 7
    
        Мультук 08.11.24✎ 11:25 | 
        (0) 
 1) Допустим есть некий дин.список документов. 2) Априори известно, что реквизит "Буковка" может быть (или не быть) в таб.части "Товары": ЗаказКлиента Истина ЗаказНаПеремещение Ложь ВозвратТоваровОтПокупателя Ложь и так далее. 3) Добавляем в дин.запрос поле ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(т1.ссылка) = ТИП(Документ.ЗаказКлиента) ТОГДА ИСТИНА КОГДА ТИПЗНАЧЕНИЯ(т1.ссылка) = ТИП(Документ.ЗаказНаПеремещение ) ТОГДА ЛОЖЬ КОГДА ТИПЗНАЧЕНИЯ(т1.ссылка) = ТИП(Документ.ВозвратТоваровОтПокупателя) ТОГДА ЛОЖЬ ИНАЧЕ ЛОЖЬ КОНЕЦ КАК ЕстьРеквизит 4) Тривиально настраиваем оформление. 5) Потом включаем в себе программиста и делаем так, чтобы пункт 3 формировался по метаданным нужных документов Каждый раз или {тут куча вариантов} Вроде ничего сложного | |||
| 8
    
        Буковка 08.11.24✎ 11:46 | 
        (7) спасибо большое!     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |