
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
14.12.2005, 22:18
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Здравствуйте, уважаемые коллеги! Прошу у Вас помощи в одном непонятном для меня вопросе из раздела: "А как это сделать?" Есть отчет (tabular DataWindow) вида: 0001 001 название 0001 002 название 0001 003 название 0002 022 название 0002 034 название 0118 098 название 0118 101 название 0222 001 название Как сделать "зебру" - выделение строк разными цветами? Имеется в виду, что все строки с кодом 0001 должны иметь цвет фона по умолчанию, все строки с кодом 0002 должны иметь, например, серый цвет фона, все строки с кодом 0118 должны опять иметь цвет фона по умолчанию, все строки с кодом 0222 должны иметь серый цвет фона и т.д. Количество строк с определенным кодом неизвестно, как неизвестны и сами коды (выполняется запрос по условию). Для меня проблема в том, что я не знаю, как поменять цвет фона какой-то одной строки в DW. Вопрос вроде бы простой, но ответа я найти пока не могу... Буду благодарен за Вашу помощь, уважаемые коллеги... ;-))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.12.2005, 22:28
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Самое простое - все поля transparent, rectangular object засандаливается в строку, его цвет - expression на значения кода, visibilty - тоже expression на значение кода, но виден он только тогда, когда надо НЕ по умолчанию... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 01:26
|
|||
|---|---|---|---|
|
|||
Выделение разным цветом строк в DW |
|||
|
#18+
а зачем rectangle если есть detail.color ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 02:34
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Проще и гибче. Но можно и с detail.color ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 07:40
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Уважаемые коллеги! Дело в том, что составить expression для такого вот случая у меня не получается, формулу найти не могу. Может быть, наведете на мысль? ;-) А пробовал я сделать обработку всех строк DW в цикле... Но как изменить цвет фона конкретной строки - я не знаю... ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 08:12
|
|||
|---|---|---|---|
|
|||
Выделение разным цветом строк в DW |
|||
|
#18+
ну допустим поле называеся code. делаем compute типа compute_1 = if (code<>code[-1],1,0) потом делаем еще один типа compute_2 = cumulativesum(compute_1) и цвет меняем в зависимости от значения остатка от деления compute_2 на два. что то в этом духе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 10:02
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Проще всего так: if( Mod(GetRow(), 2) = 1,RGB(150, 200, 240),RGB(150,240,200)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 10:08
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Прошу прощения, не внимательно прочитал. Наверное вложенный IF IF (<условие 1> RGB(), IF (<условие2>, RGB(), IF(<условие3>, RGB(),Long(describe("DataWindow.Color"))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 10:16
|
|||
|---|---|---|---|
|
|||
Выделение разным цветом строк в DW |
|||
|
#18+
у него нет условия 1,2,3 и т.п. у него есть условие чередования цвета при смене значения поля "код", и он не знает как написать условие. я предложил находить смену кода по code<>code[-1] суммировать это значение нарастающим итогом с помощью cumulativeSum и уже от полученной суммы брать Mod(сумма,2) И еще - к code<>code[-1] надо добавить условие GetRow()<>1 а то для первой строки фигня получицца у нее нет предыдущей очевидно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 10:37
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
Если для каждого конкретного кода выделен конкретный цвет, то это один вопрос. Есть разные пути решения. Можно (в случае небольшого и неизменного набора кодов в базе) составить общее выражение и прошить его в DW. Можно (в случае изменяющегося набора кодов в базе) создать выражение динамически, но при этом где-то в базе или INI вести соответствие цвета коду. А если цвет не привязан к коду, то... звиняйте. Конечно в рамках одного запроса можно что-то придумать, но тогда цвета не будут привязаны к кодас в мировом масштабе. Волюнтаризм получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 10:55
|
|||
|---|---|---|---|
|
|||
Выделение разным цветом строк в DW |
|||
|
#18+
там в исходном посте есть слово "зебра". ты вообще зебру видел? на всякий случай напомню - там ДВА цвета и они чередуются. черный - белый - черный - белый - а в конце $опа. з.ы. ой, щас модеры про этичность напомнят ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.12.2005, 11:03
|
|||
|---|---|---|---|
Выделение разным цветом строк в DW |
|||
|
#18+
ЗоринАндрей wrote: > а в конце $опа. А как это будет в RGB() ? Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=15&mobile=1&tid=1337970]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
64ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 249ms |
| total: | 409ms |

| 0 / 0 |
