Имя: Пароль:
1C
1С v8
УФ. Условное оформление одинаковых строк
0 Stim213
 
23.09.11
07:56
Табличная часть примерно такая:
1. Молоток
2. Молоток
3. Молоток
4. Топор
5. Топор
6. Пила
7. Гвозди
8. Гвозди
9. Гвозди

Необходимо настроить условное оформление на выделение одинаковых строк "зеброй", так, что цвета чередовались по группам одинаковых строк, типа

1. Молоток [темный цвет фона]
2. Молоток [темный цвет фона]
3. Молоток [темный цвет фона]
4. Топор   [светлый цвет фона]
5. Топор   [светлый цвет фона]
6. Пила    [темный цвет фона]
7. Гвозди  [светлый цвет фона]
8. Гвозди  [светлый цвет фона]
9. Гвозди  [светлый цвет фона]

Такое вообще возможно настроить в УФ??
1 ZanderZ
 
23.09.11
08:16
да
2 Stepa86
 
23.09.11
08:19
добавь признак какой нить в ТЧ, типа Темный/Светлый, программно его установи и на него оформление цепляй
3 Stim213
 
23.09.11
09:05
(2) извращение. в обычных формах можно было обойтись и без этого
4 Юрий Лазаренко
 
23.09.11
09:06
(3) А как ты в обычных формах сделал бы?
5 Stim213
 
23.09.11
09:09
(4) процедура ПриПолученииДанных или ПриВыводеСтроки
6 Seducer
 
23.09.11
09:13
(5) И????? как определять будешь, что красить темным, а что светлым?
7 Stim213
 
23.09.11
09:16
(6) первая строка -  в темный. Если след строка одинакова - то ей - цвет предыдущей. Если другая - то инвентированный цвет предыдущей
8 Юрий Лазаренко
 
23.09.11
09:19
(7) И ты хочешь сказать, что это не изврат? )))
9 Юрий Лазаренко
 
23.09.11
09:21
(7) Сделай так: добавь новую скрытую колонку, при заполнении ТЧ ставь в нее либо 0, либо 1: начался новый товар - ставишь 1, опять начался новый - ставишь 0, и так чередуй. И в условном оформлении сделай выделение фона в зависимости от значения в этой колонке.
10 Stim213
 
23.09.11
09:22
(9) легко сказать. Осталось только запрос переписать так, чтобы он выдавал 0 и 1 в доп поле. Я ТЧ загружаю из выборки запроса. поэтому кста, и (7) удобнее было, потому что не надо извращаться с запросом
11 hhhh
 
23.09.11
10:11
(10) а если пользователь удалит строчку? Например, "пила". Ты при этом всю таблицу должен перерисовывать?
12 Stim213
 
23.09.11
10:16
(11) ПриПолученииДанных() всяко перебирает все строчки в  цикле
13 hhhh
 
23.09.11
10:24
(12) она не перебирает все строчки, а только те, которые измененные. ВСя твоя красота рухнет.
14 Stim213
 
23.09.11
10:25
(13) нифига. при скроллинге, например, она перебирает строчки
15 GenV
 
23.09.11
10:33
(14) Только видимые перебирает. Нажмет пользователь страница вниз и хана... Т.ч. придется всю таблицу переформировывать каждый раз при удалении строк или изменении их порядка (т.е. при получении данных).