31.03.2020, 22:11 [+3 UTC]
в нашей команде: 4 317 чел. | участники онлайн: 7 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.83 (12.03.2020)
JS-v.1.35 | CSS-v.3.37

Общие новости:
28.03.2020, 20:29

Форум:
28.03.2020, 21:05

Последний вопрос:
31.03.2020, 15:56
Всего: 151887

Последний ответ:
31.03.2020, 19:49
Всего: 259909

Последняя рассылка:
31.03.2020, 03:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
12.04.2019, 14:25 »
dar777
Это самое лучшее решение! [вопрос № 195167, ответ № 277830]
05.09.2011, 12:59 »
Valyukevich Yury
просто изумительно! [вопрос № 183967, ответ № 268149]
30.10.2019, 02:00 »
dar777
Это самое лучшее решение! [вопрос № 196859, ответ № 279023]

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Старший модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 114
Асмик Гаряка
Статус: Советник
Рейтинг: 82
Лысков Игорь Витальевич
Статус: Старший модератор
Рейтинг: 0

Перейти к консультации №:
 

Консультация онлайн # 145264
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Maksim Trofimov
Отправлена: 28.09.2008, 07:33
Поступило ответов: 0

hi...

Есть ли более человечный способ обращения к значениям полей dbgrid? Например по имени поля: FieldByName('ID').asInteger; Если делать это так: Fields[0].asInteger, то придется править индекс, если вдруг поле ID поставить на другое место, например 2...
Есть варианты?

Спасибо...

Состояние: Консультация закрыта

Oтветов пока не поступило.

Мини-форум консультации № 145264
Виктор Пырлик

# 1

= общий = | 28.09.2008, 08:33

Поясните вопрос.

© Цитата:
способ обращения к значениям полей dbgrid

и
© Цитата:
FieldByName('ID').asInteger; Если делать это так: Fields[0].asInteger

разные вещи. К тому же, "значение" полей берется из источника данных (DataSet - Query, Table и т.д.) а не из компонента отображения данных, который предназначен для отображения и в редких случаях редактирования данных.
Если Вам надо проверять значение записи для, например, изменения цвета строки — это другое.

Maksim Trofimov

# 2

= общий = | 28.09.2008, 09:28

Пардон...

Сама суть того, зачем мне обращаться к полям dbgrid:
Я руководствуюсь тем, что будет более производительнее, то есть: обращение к базе FieldByName('ID').asInteger можно избежать, если нужные мне значения загружены в dbgrid. Но dbgrid нет метода FieldByName для удобного обращения к загруженным данным....вот я спрашиваю...

А мож я не тем путем пошел? )

Виктор Пырлик

# 3

= общий = | 28.09.2008, 11:50

© Цитата:
будет более производительнее, то есть: обращение к базе FieldByName('ID').asInteger можно избежать, если нужные мне значения загружены в dbgrid.

Заблуждение. DBGrid только отображает то, что есть в DataSet уже загружено. Сам по себе он ничего не грузит и не хранит .
Т.е. то, что Вы видите в сетке, это не отдельные данные, это только отображение их, которые «загружены» в DataSet. Именно потому и говорят о целесообразности использования Table и Query — первый компонент загружает все данные с базы, но это позволяет более быстро вести навигацию. Второй компонент грузит только то, что просит SQL запрос, т.е. Значительно сокращая трафик возлагая нагрузку на сервер а не на клиента. Как видите, о компонентах отображения данных нет ни слова.
Потому я и не понял смысла Вашего вопроса.
Нет смысла говорить о более эффективном способе в случае использования DBGrid.
К тому же, проверка, навигация и фильтрация в DBGrid идет по свойствам DataSurce->DataSet

Maksim Trofimov

# 4

= общий = | 28.09.2008, 12:57

Спасибо...даже не знаю, почему я так подумал smile

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.16537 сек.

© 2001-2020, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.83 от 12.03.2020
Версия JS: 1.35 | Версия CSS: 3.37