Имя: Пароль:
1C
1С v8
Управляемые формы + Динамический список + Условное поле
0 pomatsuev
 
06.07.15
09:38
Проблема в следующем. В управляемых формах есть документ, В котором необходимо реализовать подбор. Все отлично, все работает, но нужно красит строки, которые уже выбраны.
Запрос на динамический список следующий


ВЫБРАТЬ
    Картриджи.Ссылка,
    Картриджи.Наименование,
    Картриджи.МодельКартриджа,
    КартриджиПредприятияСрезПоследних.СтатусКартриджа,
    КартриджиПредприятияСрезПоследних.Отдел,
    ВЫБОР
        КОГДА Картриджи.Ссылка В(&СписокВыбранных)
            ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ КАК Выбран
ИЗ
    РегистрСведений.КартриджиПредприятия.СрезПоследних(&ДатаПодбора, ) КАК КартриджиПредприятияСрезПоследних
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Картриджи КАК Картриджи
        ПО КартриджиПредприятияСрезПоследних.КодКартриджа = Картриджи.Ссылка
ГДЕ
    КартриджиПредприятияСрезПоследних.СтатусКартриджа = ЗНАЧЕНИЕ(Перечисление.СтатусыКартриджей.Пустой)



Передаем В параметры формы следующие данные


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


На форме подбора соответственно


Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Список.Параметры.УстановитьЗначениеПараметра("ДатаПодбора",Параметры.ДатаДокумента);
    Список.Параметры.УстановитьЗначениеПараметра("СписокВыбранных",Параметры.СписокВыбранных);
КонецПроцедуры


Кто мне подскажет добрые люди, почему "ВЫБОР КОГДА Картриджи.Ссылка В(&СписокВыбранных)" Срабатывает только для первого переданного значения.
Например был передан список значений "1; 2; 3;" - у первого встанет статус "ВЫБРАН" у остальных нет. Почему только с первым идет сравнение в списке значений.
1 yalex
 
06.07.15
09:40
А Условное оформление в свойствах формы?
2 Timon1405
 
06.07.15
09:42
(0)
    Для Каждого СтрокаКартриджей из Объект.СписокКартриджей Цикл
        СписокВЫбранныхКартриджей.Добавить(СтрокаКартриджей.КодКартриджа);    
    КонецЦикла;
МассивКартриждей =  СписокВЫбранныхКартриджей.ВыгрузитьЗначения();
//далее передавать массив картриджей...
3 bootini
 
06.07.15
09:45
(0) В параметр &СписокВыбранных передавай массив, список значений запрос дин. списка не съедает.
4 pomatsuev
 
06.07.15
09:46
Timon1405, Спасибо, сработало. Забыл выгрузить в массив....
5 bootini
 
06.07.15
09:46
(2) опередил
6 pomatsuev
 
06.07.15
09:47
bootini, спасибо. Не знал таких тонкостей дин. списка
7 Timon1405
 
06.07.15
09:47
Недодокументированные возможности) доступно и всерьез)
8 pomatsuev
 
06.07.15
09:47
(7) это точно ) еще раз блогодарю )
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс