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

Вниз

Teкущее значение записи в ADO?   Найти похожие ветки 

 
iea ©   (2002-03-07 12:20) [0]

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

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


 
McSimm ©   (2002-03-07 12:27) [1]

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


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


 
iea ©   (2002-03-07 12:40) [2]

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

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


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

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


 
iea ©   (2002-03-07 12:48) [4]

To: DPetrovich

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


 
McSimm ©   (2002-03-07 12:51) [5]

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

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

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


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

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


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

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


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

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


 
McSimm ©   (2002-03-07 13:04) [9]

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

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

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


 
iea ©   (2002-03-07 13:05) [10]

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

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

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


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

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



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

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

Наверх




Память: 0.49 MB
Время: 0.008 c
1-116
Sergy
2002-03-21 16:36
2002.04.01
Длина переменной типа string


1-148
kull
2002-03-19 11:16
2002.04.01
Помогите найти компонент типа TCurrencyEdit.


3-54
Malder
2002-03-06 16:58
2002.04.01
Ошибка при query1.edit;


14-301
Донской
2002-02-19 13:13
2002.04.01
Delphi 5 and C++Builder


1-214
Ivan_A
2002-03-20 01:26
2002.04.01
Как притрупить форму?