powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как получить датасетом текущую запись ?
12 сообщений из 12, страница 1 из 1
Как получить датасетом текущую запись ?
    #32318121
Фотография Allvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сабж ... Чего-то не могу найти ... Ж-((
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318128
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBGrid1.DataSource.DataSet->FieldByName('my_field').AsString (AsInteger etc.)
или
Query1.FieldByName('my_field').AsString
_____________
__
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318130
Фотография Allvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НЕ значение поля, текущей записи, а всю запись целеком.....
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318138
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всмусле всю запись целеком ?
_____________
__
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318149
Фотография Allvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да. Получить новый датасет содержащий только текущую запись.
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318157
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select * from MyTable where ID = :ID



-- Tygra's --
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318177
Фотография Allvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НЕТ. Есть Датасет. Не важно TQuery или TClientDataSet. Есть Грид привязанный к нему. Я хочу чтоб при каком-то событии создавался новый объект на основании данных текущей записи. Создовать новый TQuery который выбирает из таблици по ключу одну строку, не красиво, да и нет возможности данные я получаю из сервера приложений, а не напрямую из БД .....
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318228
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то невижу ничего некрасивого в том, что бы получать одну запись. Нормальная практика.
Способ решения завистит от того, зачем это надо.
Можно, например использовать тот-же DataSet, но показывать запись в отдельном окне. Так часто поступают, если в гриде отображается два-три поля, а запись надо редактировать или просто полностью увидеть.
Можно загнать поля в record. Это подходит, если на основании существующей записи нужно создать новую запись.
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318331
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наиболее "элегантный" метод - динамическое создание своего датасета (отсоединенного или Client), копирование структуры таблицы, добавление записи с нужными значениями. Можно еще скинуть датасет в файл на локале, скажем DBF, и из него select.. where ... сделать, если к серверу нельзя лезть.
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32318955
Ray Adams
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор писал:Наиболее "элегантный" метод - динамическое создание своего датасета (отсоединенного или Client), копирование структуры таблицы, добавление записи с нужными значениями. Можно еще скинуть датасет в файл на локале, скажем DBF, и из него select.. where ... сделать, если к серверу нельзя лезть.
Звиняйте конечно, но это ЭЛЕГЕНТНЫЙ способ??? :) :) :)
...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32319280
Hammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Типа:
DataSet['....']
где '....' - строка имен полей через ;
например:
var
List: TStrings;
FieldsList: String;
AValue: Variant;
begin
List := TStringList.Create;
try
DataSet.GetFieldNames( List );
FieldsList := List.CommaText;
for i := 0 to Length( FieldsList ) do
if FieldsList = ',' then FieldsList := ';';
finally
List.Free;
end;
AValue := DataSet[FieldsList];
end;


...
Рейтинг: 0 / 0
Как получить датасетом текущую запись ?
    #32319753
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Ray Adams:
Это - наиболее идеологически правильный способ с точки зрения расходования ресурсов. А то, что это полностью надо самому делать... могу а) посочувствовать, б) предложить использовать Foxpro, там давно уже это есть :-))
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как получить датасетом текущую запись ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]