Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.19;
Скачать: CL | DM;

Вниз

Подстановка при просмотре в нужное поле значения   Найти похожие ветки 

 
dimosik   (2003-04-28 11:59) [0]

Привет всем!
Есть поле со значениями от -1 до 4, как при просмотре через ADOSql в Гриде лицезреть не цифры, а подставляемые надписи
0 нет на складе
1 в продаже
2 продан
а лучше еще и сопровождать это поле соответствующим цветным символом
Заранее спасибо!


 
AlexSerp   (2003-04-28 12:01) [1]

TCustomDBGrid.OnDrawColumnCell


 
ЮЮ   (2003-04-28 12:50) [2]

Завести таблицу, а не хранить этот список на бумажке под стеклом :-)


 
Zelius   (2003-04-28 13:10) [3]

У полей есть обработчик события OnGetText - вот его тебе и надо обработать (см.Хелп).


 
AlexSerp   (2003-04-28 13:12) [4]

2Zelius, в полях будут храниться численные значения.
А ты что предлагаешь? А?

ЮЮ, вот правильное решение. Я не стал писать. Ответил в лоб.
Таблица позволит менять/добавлять.


 
Zelius   (2003-04-28 13:21) [5]

AlexSerp © (28.04.03 13:12)
для простого отображения способ самый лучший! есть типы данных в программе, которые не имеет смысла хранить в базе, вот как раз для этих случаев и можно использовать TField.OnGetText/OnSetText. И никуда его числовой тип не денется...


 
Карелин Артем   (2003-04-28 13:28) [6]

AlexSerp © (28.04.03 13:12)
Хелп читал? Use OnGetText to format the Value of the field differently when it must be edited from the format used when simply displaying the value, or use OnGetText to display something other than the field’s value when it is displayed.

Зачем городить таблицу на 3 значения, которые будут жестко забиты? (Да и в текстовом файле можно забить значения. Тогда и менять/добавлять можно будет ;))
if Sender.AsInteger=1 then Text:="в продаже";
Насчет цветного символа: читай тут http://delphi.vitpc.com/helloworld/dbgridcolor.htm


 
stone   (2003-04-28 13:31) [7]

Подставлять значения в данном случае можно еще на уровне формирования запроса.
select ..., "Category" =
CASE
WHEN Field = 0 THEN "нет на складе"
WHEN Field = 1 THEN "в продаже"
WHEN Field = 2 THEN "продан"
ELSE "Не понятно"
END
from Table1


 
dtm   (2003-04-28 14:06) [8]

А разве нет таблицы Table1 в БД с содержанием: ("номер типа", "название типа")? Тогда в самом запросе можно делать выборку из двух таблиц (Табль1 и Табль2):

select (какие-то поля + Табль1.название_типа) из "Табль1 и Табль2"
where Табль1.номер_типа = Табль2.номер_типа

Разве так нельзя сделать?



Страницы: 1 вся ветка

Текущий архив: 2003.05.19;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.006 c
14-59930
xman
2003-04-30 12:55
2003.05.19
как зарегистрироватся так,


1-59719
Navi
2003-05-04 08:55
2003.05.19
Таскать картинку как в ACDSee или ScrollBox


14-59860
SPeller
2003-04-28 12:28
2003.05.19
Глюки Access 2000


14-59906
гончий
2003-04-29 10:45
2003.05.19
Нужен компонент для проигрывания mp3 файлов


14-59851
Fenik
2003-04-30 21:00
2003.05.19
Люди! Помогите взять интеграл.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский