Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Teкущее значение записи в ADO? [D5]


iea ©   (2002-03-07 12:20:00) 

Написал БД. Все работает. Одна беда - нет возможности узнать текущее значение записи. Пробовал подобраться через TADOQuery.Recordset.AbsolutePosition - не работает. Аналогичная программа, написанная на VB, работает корректно.

Вопрос - как определить тeкущее значение записи в ADO?


roottim   (2002-03-07 13:10:00) [1]

а какой ту вы увидели сервер ?
:))


iea   (2002-03-07 13:05:00) [2]

База - Access97
Надо отобразить "Записей: 1/1001" при перемещении в гриде.

CursorLocation был установлен в clUseServer. Переставил на клиента - все заработало, как надо. так что вопрос можно считать закрытым. Все спасибо.

И все же: как узнать номер записи на стороне сервера? Ибо пользователь должен хотя бы ориентироваться, где он находится.


DPetrovich   (2002-03-07 13:04:00) [3]

iea , у меня ADOQuery.recno даёт номер записи, попробуйте здесь покапать, может в момент проверки запрос не активирован.


McSimm   (2002-03-07 13:04:00) [4]

К _RecordSet грид присоединить нельзя. К ADODataSet - можно.

Можно писать так:
with MyADOQuery.Recordset do
begin
MoveFirst;
while not EOF do
begin
P := AbsolutePosition; // Здесь можем получить номер
F := Fields["IDField"].Value; // Здесь поле
MoveNext
end
end;

Но грид напрямую к нему не подключить.


roottim   (2002-03-07 12:55:00) [5]

2McSimm
что значит нельзя грид присоединитm... RecordSet внедрен из VBA в ADODataSet!...


roottim   (2002-03-07 12:52:00) [6]

Я не помню!... посмотри где запрос(проперти) формируется на клиенте или на сервере?..
и какую вообще БД используйте?


McSimm   (2002-03-07 12:51:00) [7]

>DPetrovich (07.03.02 12:41)
А откуда в Query возьмется поле с номером записи?

>iea © (07.03.02 12:40)
И все же, для чего? Показать в гриде?

Можно пользоваться RecordSet, но к нему нельзя грид присоединить.


iea   (2002-03-07 12:48:00) [8]

To: DPetrovich

Не думаю. Вряд ли в Fields есть информация о номере. Здесь сугубо специфическая информация о полях. Должно быть в Recordset. Там есть AbsolutePosition (на основании программирования в VB), а он, увы, не работает.


DPetrovich   (2002-03-07 12:41:00) [9]

Может можно узнать текущее значение через Fields , например, ADOQuery1nomer.AsInteger ?


iea   (2002-03-07 12:40:00) [10]

To McSimm:
Вы правы. Совсем заработался. Именно номер записи.

Но... Recno - не работает (ADOQuery.Recno), возвращает -1, Bookmаrk - это закладка, и я не знаю, как узнать номер записи.


McSimm   (2002-03-07 12:27:00) [11]

Что означает значение записи?


Если номер, то для чего? В некоторых случаях помогает RecNo, в других - Bookmark.


Наверх

Титульная страница Поиск, карта сайта Написать письмо