Имя: Пароль:
1C
1С v8
Не могу найти ошибку!
,
0 Pavel55555
 
30.06.17
14:59
Доброго дня коллеги!
Платформа 8.3 Толстый клиент. УТ 10.3

Вроде всё верно, но почему-то не хочет выполнять указанные действия.
Можете подсказать?

МассивСсылок = Новый Массив;
СоответствиеССылок = Новый Соответствие;

Для каждого ОформлениеСтроки из ОформленияСтрок Цикл
  МассивСсылок.Добавить(ОформлениеСтроки.ДанныеСтроки.Ссылка);
  СоответствиеССылок[ОформлениеСтроки.ДанныеСтроки.Ссылка] = ОформлениеСтроки;
КонецЦикла;

Запрос = новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|    ЗаказПокупателя.Ссылка
|ИЗ
|    Документ.ЗаказПокупателя КАК ЗаказПокупателя
|        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.ДокументыРасчетовСКонтрагентом КАК РеализацияТоваровУслугДокументыРасчетовСКонтрагентом
|        ПО (РеализацияТоваровУслугДокументыРасчетовСКонтрагентом.Ссылка.Проведен)
|            И (РеализацияТоваровУслугДокументыРасчетовСКонтрагентом.ДокументРасчетовСКонтрагентом = ЗаказПокупателя.Ссылка)
|ГДЕ
|    ЗаказПокупателя.Ссылка В(&МассивСсылок)
|    И ЗаказПокупателя.Проведен";
Запрос.УстановитьПараметр("МассивСсылок", МассивСсылок);

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл  
  СоответствиеССылок[Выборка.ССылка].ЦветФона = WebЦвета.Зеленый;
  //ОформлениеСтроки.ЦветФона = WebЦвета.СеребристоСерый;
  //СоответствиеССылок[Выборка.ССылка].Ячейки.НужнаяЯчейка.ЦветТекста = WebЦвета.Красный;
КонецЦикла;

Естественно всё в "СписокПриПолученииДанных"
1 Гипервизор
 
30.06.17
15:18
В выборке точно что-то есть? Соответствие точно заполняется?
2 Radkt
 
30.06.17
15:21
(1)+1 соответствия посмотри в отладке
3 Pavel55555
 
30.06.17
15:37
(1) Всё есть, сам не пойму где ошибка
4 Имитация работы
 
30.06.17
15:40
Элемент формы-то с обработчиком связал?
5 Гипервизор
 
30.06.17
15:43
(4) Ну раз уверяет что все есть значит связал. Иначе как бы он проверил?
6 h-sp
 
30.06.17
15:44
(0) думаю

СоответствиеССылок[ОформлениеСтроки.ДанныеСтроки.Ссылка] = ОформлениеСтроки


ОформлениеСтроки это одна и та же переменная. То есть зеленая должна оказаться самая последняя строчка
7 Гипервизор
 
30.06.17
15:49
(3) Вообще я бы попробовал заменить СоответствиеССылок[ОформлениеСтроки.ДанныеСтроки.Ссылка] = ОформлениеСтроки на Соответствие.Вставить(ДанныеСтроки.Ссылка, Оформление)
Но раз вы уверяете что сответствие корректно заполняется..
8 Гипервизор
 
30.06.17
15:50
(7) поправка: СоответствиеССылок.Вставить(ОформлениеСтроки.ДанныеСтроки.Ссылка, ОформлениеСтроки)
9 PiterPrg
 
30.06.17
15:52
(6) Согласен. Если поле Ссылка не уникально, мы раскрашиваем только последнюю.
10 Имитация работы
 
30.06.17
16:28
(6), (9) Нет. В этом месте все правильно.
11 youalex
 
30.06.17
16:31
А если:
Для Сч = 0 По ОформленияСтрок.Количество() - 1 Цикл
СоответствиеССылок.Вставить(ОформлениеСтроки.ДанныеСтроки.Ссылка], ОформленияСтрок[Сч]);
КонецЦикла
12 youalex
 
30.06.17
16:48
(11) + хотя, нет,  дело не в этом.
Может, ПриВыводеСтроки() - обратно меняется? ))
13 Pavel55555
 
30.06.17
16:49
(7) (10) Мне кажется в запросе косяк
14 Pavel55555
 
30.06.17
16:50
(12) Пробовал при выводе.