В зависимости от значения поля выделить текст строки другим цветом...

  • Автор темы endofin
  • Дата начала
Статус
Закрыто для дальнейших ответов.
E

endofin

Гость
#1
Друзья, подскажите пожалуйста, можно ли замутить такую формулу и как?
Например в форме есть поле "Тест", которое может принимать фиксированные значения 1, 2 или 3.
В зависимости от того какое значение выбрано, можно ли выделить текст строки другим цветом в представлении БД?
Например, если выбрано значение 1 - текст строки в представлении будет синим, если 2 - красным, если 3 - зеленым.
 
E

endofin

Гость
#3
nvy - спасибо за ссылку, но у меня не получается, не хватает навыков программирования, скрытый столбец создал с галкой use value as color, но формулу не могу сварганить :(
xalet - в Вашем сообщении только точка )

по русски я себе это представляю примерно так:
если значение поля "Тест" = 1, то закрасить текст строки в цвет 0000ffff,
если значение поля "Тест" = 2, то закрасить текст строки в цвет dddd0000,
если значение поля "Тест" = 3, то закрасить текст строки в цвет 0000pppp
 

Xalet

Well-Known Member
08.08.2008
410
0
Вильнюс. Литва.
#4
из хелпа:

Код:
For example, the following formula example shows how RGB coordinates can be used in both single and paired sets.
red := 255:0:0;
blue := 0:0:255;
yellow := 255:255:0;
pink := 255:193:253;
white := 255:255:255;
black := 1:1:1;
apricot := 255:155:133;
plain:= 0:0:0;

@If (category = "cats";blue:red;subcategory = "collars";pink;subcategory ="leashes";black:plain;0:0:0);
замените условия category = "cats", subcategory = "collars" и т.д. на свои и цвета подберите.
 
E

endofin

Гость
#5
Спасибо за помощь ) Что-то начало получаться.

Вот что я написал:
@If (Event_Cond = "63"; "0000fff"; Event_Cond = "79"; "dddd0000"; Event_Cond = "82"; "0000cccc"; -1 : -1 : -1 : -1 : -1 : -1)

Текст цвета стал отображаться в колонке, но сам текст не имеет никакого смысла, так как отображает значения "0000fff", "dddd0000", "0000cccc" или "-1 : -1 : -1 : -1 : -1 : -1", мне бы отображать нужные значения например значения того же моего поля Event_Cond...
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#6
У столбца галка "Use value as color" включена? Столбец первый? И, кстати, из справки:
Note This feature is supported on the Web, but you must supply the RGB coordinates of the color as a number list (e.g. 255:0:255). Text color values (e.g. "FF00FF") are not supported.
 

Xalet

Well-Known Member
08.08.2008
410
0
Вильнюс. Литва.
#7
Столбец не обязательно первый должен быть.
Вообще логика такая. Делается столбец с галкой "Use value as color". Всё что правее этого столбца будет отображаться цветами заданными в столбце. Если сделать как в моем примере выше, то значение цвета blue:red задаст цвета для текста и для фона(фон:текст).

Код:
red := 255:0:0;
blue := 0:0:255;
yellow := 255:255:0;
pink := 255:193:253;
white := 255:255:255;
black := 1:1:1;
apricot := 255:155:133;
plain:= 0:0:0;

@if(Event_Cond = "63"; white:plain; Event_Cond = "79"; white:blue; Event_Cond = "82"; white:pink; white:black)
 
E

endofin

Гость
#8
nvy и xalet большое спасибо за помощь, у меня все получилось благодаря вашей помощи.

галка "Use value as color" была включена, но столбец был последний, поэтому цвета были только в этом столбце.
Перенес столбец в начало и вся строка закрасилась цветом. Цвета у меня понимает только через цифры (например 0:160:0) и текстовые значения (например "0000fff") при попытки ввести в качестве цвета white:plain или white:blue вся строка закрашивается сплошным черным цветом, но это не страшно так как я решил использовать цвета через цифры.

Мой финальный код:
@If(Event_Cond = "63"; 255:0:0; Event_Cond = "79"; 0:0:255; Event_Cond = "82"; 0:160:0; -1 : -1 : -1 : -1 : -1 : -1)

Спасибо что уделили время ))
 

alik86

Well-Known Member
Lotus team
20.11.2008
465
1
Беларусь, Мiнск
#9
Цвета у меня понимает только через цифры (например 0:160:0) и текстовые значения (например "0000fff") при попытки ввести в качестве цвета white:plain или white:blue вся строка закрашивается сплошным черным цветом
0000ff - это не текстовое значение, а числовое (16-чная система счисления).
А white, plain, blue -- это не цвета, а всего лишь имена переменных, которым таки присвоены "значения цветов".
 
Статус
Закрыто для дальнейших ответов.