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

Вниз

Использование GetCurrentRecord   Найти похожие ветки 

 
Patrick   (2003-04-11 10:24) [0]

Небольшой вопрос: У компонента TDataSet есть метод GetCurrentRecord, который помещает значения полей текущей записи в буфер, но только я не нашел ничего того, что делает обратное, т.е. из буфера в поля записи.


 
sniknik   (2003-04-11 10:35) [1]

исходники для TDataSet.GetCurrentRecord "метода" выглядят так
function TDataSet.GetCurrentRecord(Buffer: PChar): Boolean;
begin
Result := False;
end;


обратный метод можеш написать сам, это несложно :о))).


 
Жук   (2003-04-11 10:46) [2]

Уважаемый Patrick ! Скажите, если не секрет, смысл перестановок записей в НД, плз.


 
Patrick   (2003-04-11 11:00) [3]

Смысл таков: Всё это мне нужно для визуального представления данных на экране, посредством TDBGrid"а, т.е. пользователю требуется перемещать записи относительно друг друга, и весь смысл заключается в том, чтобы при этом не делать сброс данных в базу. Конечно это можно делать через другую компоненту представления данных, но грид как-то более адаптирован, если посоветуете что-то еще буду весьма благодарен. По поводу предложенного Вами метода, он не хочет сбрасывать в НД данные типа varCurrency, и я пытался искать что-нибудь другое. Заводить кучу временных переменных тоже не хочется.
Очень интересный исходник GetCurrentRecord, он что постоянно возпращает False и всё. Хотя может я что-то не понимаю?


 
sniknik   (2003-04-11 11:10) [4]

> Очень интересный исходник GetCurrentRecord, он что постоянно возпращает False и всё. Хотя может я что-то не понимаю?

именно ничего не делает (в хелпе так и написано), и заметь в TADODataSet и TCustomADODataSet этот метод не перегружается. Похоже рабочий только для BDE (native драйвера).
вот его метод (разницу видиш? ;о)))

function TBDEDataSet.GetCurrentRecord(Buffer: PChar): Boolean;
begin
if not IsEmpty and (GetBookmarkFlag(ActiveBuffer) = bfCurrent) then
begin
UpdateCursorPos;
Result := (DbiGetRecord(FHandle, dbiNoLock, Buffer, nil) = DBIERR_NONE);
end else
Result := False;
end;


 
sniknik   (2003-04-11 11:13) [5]

кстати насчет смысла (жизни и вообще :о))
> для визуального представления данных на экране

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


 
Patrick   (2003-04-11 11:27) [6]

с сортировками и индексами все понятно, и безусловно поступать (по всем правилам) нужно было именно так, но только одно но, что данный DataSet, это Query от хранимой процедуры с MSSQL, поэтому данные вещи здесь вроде как неуместны.


 
sniknik   (2003-04-11 11:52) [7]

> данные вещи здесь вроде как неуместны.

еще как уместны, используй ADOQuery.Sort (сортирует уже полученный датасет на локале)

(Query значит BDE? для доступа к MSSQL? - отстой полный. BDE он для своих драйверов только хорош (парадокс,...))

информация к размышлению (из файла ридми BDE)
Fully certified drivers:
ACCESS (Microsoft 3.40-Access 95 and 97)
FOXPRO (Microsoft 3.40)
MSSQL Server (Microsoft 3.00-Server version 6.5)
MSSQL Server (Intersolv 3.01-Server version 6.5)
ORACLE 7 (Intersolv 3.01-Server version 7.3)
и большего не будет, BDE больше не развивается.


 
sniknik   (2003-04-11 11:59) [8]

о позор на мои седые %№?я :о))
инфа немного не точна, (там есть еще более поздний список от последнего апдейта) но смысла это не меняет

Fully certified drivers:
ACCESS (Microsoft 3.51-Access 95 and 97)
FOXPRO (Microsoft 3.51)
MSSQL Server (Microsoft 3.6
- Server version 6.5 and 7.0)
MSSQL Server (Intersolv 3.11
- Server version 6.5 and 7.0)
ORACLE7 (Intersolv 3.11
- Server version 7.3)


 
Anatoly Podgoretsky   (2003-04-11 12:13) [9]

sniknik © (11.04.03 11:13)

упорядоченные программисты :-))



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

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

Наверх





Память: 0.46 MB
Время: 0.006 c
3-449
Dimaz-z
2003-04-13 18:22
2003.05.01
Как выстроить записи в таблице по алфавиту?


14-682
Anonimus
2003-04-15 12:36
2003.05.01
Как узнать находиться ли мыщ над компонентам иль нет,,


14-742
ZeroDivide
2003-04-14 08:57
2003.05.01
Посоветуйте TV Tuner


14-715
Шишкин Илья
2003-04-12 22:10
2003.05.01
Гражданская оборона


7-810
nickn
2003-03-10 13:45
2003.05.01
Интересный вопрос по работе с COM портом





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