Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Доступ к данным через TDBGrid и TADODataSet   Найти похожие ветки 

 
leklerk ©   (2012-03-16 19:11) [0]

Добрый день! Я видел примеры, когда к данным в гриде обращаются так:
DBGrid1.DataSource.DataSet.FieldByName("sum").AsFloat.
Сам же я использую
ADODataSet1.FieldByName("sum").Value.
Это одно и то же?


 
CRLF   (2012-03-16 19:28) [1]

Лучше используй ADODataSet1sum.AsFloat


> Это одно и то же?
И да, и нет. It depends.


 
leklerk ©   (2012-03-16 19:35) [2]


> И да, и нет. It depends.
>
>

И от чего же оно depends?


 
Inovet ©   (2012-03-16 19:45) [3]

> [2] leklerk ©   (16.03.12 19:35)
> И от чего же оно depends?

Например, сейчас у тебя назначен ADODataSet1, а через минуту ADODataSet2. Или заранее ты не ничего не знаешь о ADODataSet и требуется найти. Ну и кроме того первое несколько дольше.


 
CRLF   (2012-03-16 19:49) [4]

От того, что ты подразумеваешь под "одно и то же". Первое выражение даёт значение типа Double, второе -- типа Variant. Если ADODataSet1.FieldByName("sum").Value = Null, то var D: Double; D := ADODataSet1.FieldByName("sum").Value приведёт к возбуждению исключения. D := ADODataSet1.FieldByName("sum").AsFloat даст 0.

Обращаясь к ADODataSet1 ты можешь пользоваться свойствами и методами TAdoDataSet, обращаясь к DBGrid1.DataSource.DataSet -- только к методам и свойствам TDataSet.

Обращаясь к DBGrid1.DataSource.DataSet неплохо бы проверять Assigned(DBGrid.DataSource) and Assigned(DBGrid.DataSource.DataSet) -- во избежание.


 
Мдя   (2012-03-16 21:14) [5]

http://www.sql.ru/forum/actualthread.aspx?tid=927024


 
Inovet ©   (2012-03-16 21:31) [6]

> [4] CRLF   (16.03.12 19:49)

AsFloat я и не заметил, ну да по контексту вопрос о другом был.


 
CRLF   (2012-03-16 22:38) [7]


> AsFloat я и не заметил, ну да по контексту вопрос о другом
> был.
А я не с тобой разговаривал. :-) Просто пока я писал ответ на [2], ответил ты.


 
sniknik ©   (2012-03-16 22:53) [8]

> обращаясь к DBGrid1.DataSource.DataSet -- только к методам и свойствам TDataSet.
при уверенности использования ADODataSet-а привидение типа -
TADODataSet(DBGrid1.DataSource.DataSet)
позволит все.


 
CRLF   (2012-03-16 23:04) [9]

шо ви такое в "начинающих" советуете... полную уверенность может дать только страховой полис. и оператор is...



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

Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.081 c
15-1338481548
М
2012-05-31 20:25
2013.03.22
Поиск файла в подкаталогах.


15-1345139043
Pavia
2012-08-16 21:44
2013.03.22
Что прочнее?


15-1348000202
Юрий
2012-09-19 00:30
2013.03.22
С днем рождения ! 19 сентября 2012 среда


2-1339141857
Александр_2012
2012-06-08 11:50
2013.03.22
Об управлении монитором


2-1328430400
FIL-23
2012-02-05 12:26
2013.03.22
переменная типа memo





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский