|
Вопрос # 4 507/ вопрос открыт / |
|
Приветствую, уважаемые эксперты!
Имеется DBGrideEh, в него попадают данные из таблицы. В таблице есть поля. Вних значения ввиде 0,1,2,3,4,5.
Мне нужно сделать так, чтоб например вместо 0 в DBGridEh выводилось другое значение, например "Завершен", вместо 1 - "Не началось" и.т.д.
Кто-нить сможет подсказать кусочком кода?
 |
Вопрос задал: eJay (статус: Посетитель)
Вопрос отправлен: 17 августа 2010, 11:30
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Вадим К
Здравствуйте, eJay!
Нужно завести ещё одну табличку, в которой будет два столбца. В первом числа, в втором описание. А потом связать две таблицы в одну.
Для этого можно посмотреть это видео
http://codegearguru.com/video/041/CalculatedFields.html
и это видео
http://codegearguru.com/video/024/OnDrawColumnCell.html
Оно правда на английском, но но там показывают куда и как кликать:)
 |
Ответ отправил: Вадим К (статус: Академик)
Время отправки: 17 августа 2010, 11:51
|
Мини-форум вопроса
Всего сообщений: 3; последнее сообщение — 17 августа 2010, 21:22; участников в обсуждении: 3.
|
Егор (статус: 10-ый класс), 17 августа 2010, 17:14 [#1]:
а это только на вывод или на вход тоже? т.е. будут ли в это поле вводиться новые значения ручками пользователя?
можно завести новую таблицу, как Вадим советует, а можно в самой программе "на лету" менять выходную информацию - показывать не то, что на самом деле записано в базе.
у каждого из способов есть свои плюсы и минусы.
Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.
— Donald E. Knuth.
|
|
Maksell (статус: Посетитель), 17 августа 2010, 19:56 [#2]:
можешь вместа таблички использовать запрос и в самом запросе указать подмену
пр-р:
SELECT "f1" AS "f_1", [f2] AS "f_2", "f_3" = f3,
"f_4" =
case f4
when 0 then 'таекст 1'
when 1 then 'таекст 2'
when 2 then 'таекст 3'
when 3 then 'таекст 4'
else f4
end
FROM t ...
где f1, f2, f3, f4 - поля таблицы t,
f_1, f_2, f_3, f_4 - подмена имён полей
t - таблица
разницы между квадратными скобками и двойными кавачками нет и вообще их можно опустить, если имена полей простые, т.е не содержат в себе знаков пунктуации, разделители и пробелы
Si numqum quaeris, raro magister eris!
|
|
Мережников Андрей (статус: Абитуриент), 17 августа 2010, 21:22 [#3]:
как вариант можно использовать вычисляемые поля, но это приемлемо только в том случае, если не будет изменяться выводимое значение, сопоставленное числу, которое храниться в БД
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|