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

Вниз

Номер записи   Найти похожие ветки 

 
mate   (2003-02-04 09:14) [0]

Как узнать номер по счёту текущей записи в Query?


 
Тип   (2003-02-04 09:22) [1]

Query.RecNo


 
mate   (2003-02-04 09:54) [2]


> Query.RecNo

Выдает значение "-1".
Может надо что-то ещё сделать?


 
Max Zyuzin   (2003-02-04 09:57) [3]

Query.FetchAll;
Query.RecNo
А так?

А если не секрет какая задача? Для чего понадобился номер записи?


 
passm   (2003-02-04 10:05) [4]

mate © (04.02.03 09:14)> Можно запросом.
SELECT T1.ID, Q3.REC_POS, T1.NAME
FROM (SELECT Q1.ID, COUNT(Q2.ID) AS REC_POS
FROM TABLE1 AS Q1
INNER JOIN TABLE1 AS Q2 ON (Q2.ID <= Q1.ID)
GROUP BY Q1.ID) AS Q3
INNER JOIN TABLE1 AS T1 ON (Q3.ID = T1.ID)
Но может не подойти из-за сортировки.


 
mate   (2003-02-04 10:08) [5]


> Query.FetchAll;
> Query.RecNo

Знаешь , так тоже самое : "-1".
А задача - просто знать какую запись сейчас видишь и сколько ещё до конца, или сколько ещё таких же.


 
Тип   (2003-02-04 10:09) [6]

>>Выдает значение "-1"
А он не пустой? Запрос в смысле?


 
mate   (2003-02-04 10:13) [7]


> А он не пустой? Запрос в смысле?

У меня сделано Query->DataSource->DBGrid, и по событию OnCellClick на DBGrid я хочу узнать номер записи, следовательно если я кликаю на конкретную запись , то и запрос получается не пустой.


 
JibSkeart   (2003-02-04 10:16) [8]

именно так и надо
тот Query который привязан к данной таблице
Query.recNo
должен тебе покозать номер записи ...


 
Тип   (2003-02-04 10:23) [9]

Может это глюк D4, должен выдавать Query.RecNo
У меня работает, но в D6:
ShowMessage("Your clic "+IntToStr(Query.RecNo)+" record");


 
qwerty2   (2003-02-04 10:29) [10]

RecNo работает далеко не во всех наборах данных. Во многих наборах данных, основанных на запросах, БДЕ не поддерживает нумерацию записей. Есть функция IsSequented которая возвращает false если данный набор записей не поддерживает нумерацию. В таком случае нужно только свой счетчик заводить и при вызове Next например увеличивать.


 
mate   (2003-02-04 10:58) [11]


> именно так и надо
> тот Query который привязан к данной таблице
> Query.recNo
> должен тебе покозать номер записи ...

Должен , а он мне только "-1" показывает.


 
Delirium^.Tremens   (2003-02-04 11:02) [12]

As implemented in TDataSet, the value of RecNo is always -1


 
mate   (2003-02-04 11:03) [13]

qwerty2
Спасибо за разъяснение,а то бы я весь день парился думая в чем дело, я проверил у меня false.


 
Anatoly Podgoretsky   (2003-02-04 11:09) [14]

Отказаться от TDbGrid


 
mate   (2003-02-04 11:12) [15]

Отказаться от TDbGrid - а что взамен?




 
Anatoly Podgoretsky   (2003-02-04 11:21) [16]

Выбор богатый, в конце концов TStringGrid


 
sniknik   (2003-02-04 11:24) [17]

уже писал в какой вариации работает
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1044280438&n=1


 
mate   (2003-02-04 11:32) [18]

sniknik
Ну и что мне делать, что бы всё работало как надо?


 
sniknik   (2003-02-04 11:42) [19]

ну вот это тебе решать. D4 - ?. я могу только сказать как оно работает у меня. (но не у тебя, и как надо)

могу выслать прогу для теста, ~350мг архив (в 4 дельфях не скомпилится поэтому exe), если в ней у тебя скрол будет работать правильно (а значит и RecNo, но его в ней нет), тогда есть маза зделать у тебя так же как у меня.


 
mate   (2003-02-04 12:03) [20]

А в краце не можешь описать как ты сам это сделал, потому что если это слишком долго то я вряд ли буду так напрягаться ради удобства пользователя. ;)


 
sniknik   (2003-02-04 12:44) [21]

Просто использовал стандартные ADO компоненты, курсор локальный (чтобы выкачивало все), все, больше не напрягаешся.

а ты не прав, удобства пользователя это то ради чего стоит старатся, иначе унесет свои деньги в другое место. :-))


 
qwerty2   (2003-02-04 12:53) [22]

>sniknik
А можно ли аналогичного результата добиться, используя БДЕ-компоненты? Мне в такой ситуации пришлось отказаться от Грида. Однако в некоторых случаях он все же необходим.


 
sniknik   (2003-02-04 13:04) [23]

qwerty2 (04.02.03 12:53)
не могу сказать, я BDE почти не знаю :-((.

А почему вам не перейти на ADO? довольно просто все. И грид использовать можно :-)).

могу и вам пример кинуть посмотрите зависит это от MSSQL настроек машины и т.д. (там кстати ошибся ~350кб, а не "мг")


 
mate   (2003-02-04 13:10) [24]

Ну меня эти "мг" как раз-то и смутили.
Ну а так кидай на
mate_ru@fromru.com
Заранее благодарен.


 
qwerty2   (2003-02-04 13:13) [25]

Тогда вышлите пожалуйста может мне как нибудь удастся и под БДЕ похожее сделать


 
sniknik   (2003-02-04 13:38) [26]

выслал, посмотрим на результат (дойдет не дойдет?) :-)) бывало не доходило.



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

Форум: "Базы";
Текущий архив: 2003.02.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.006 c
1-63651
vasilly
2003-02-11 19:48
2003.02.20
Как в рантайме заменить один комп. на другой с таким же именем?


1-63630
NOE
2003-02-07 15:31
2003.02.20
Edit1


4-63908
dinn
2003-01-09 01:25
2003.02.20
align justify and RichEdit


9-63464
MadBurro
2002-09-14 15:01
2003.02.20
GLScene. Terrain demo


4-63890
id_privin
2003-01-08 17:48
2003.02.20
Handle загруженной DLL по ее имени





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