Вниз
Скачать: CL | DM;

Обновление строки   Найти похожие ветки 

← →
AVKAR   (2004-06-21 13:12) [0]

Уважаемые знатокои помогите разобраться...

Есть ADODataSet c запросом типа "SELECT FName + IName + OName As FIO, FName, IName, OName FROM ", где поле FIO отображается в DBGride.
При изменении поля, включенного в составное поле FIO
 FieldByName("FName").Value := "Петров"
в DBGride изменения в поле FIO не отражаются.
При выполнении метода
 ADODataSet.Requery
данные DBGride обновляютя, но слетает позиция курсора с текущей записи. Вопрос: есть ли возможность перечитать из БД только текущую строку? или мне придется сначала запоминать текущую позицию и затем устанавливать курсор на нее вручную?


← →
alsov   (2004-06-21 13:27) [1]


> ADODataSet.Requery

Попробуй так
AdoDataSet.Refresh


← →
AVKAR   (2004-06-21 13:45) [2]

Строка не обновляется...


← →
Ega23 ©   (2004-06-21 13:48) [3]

или мне придется сначала запоминать текущую позицию и затем устанавливать курсор на нее вручную?

Лично я всегда так делаю.

При выполнении метода
ADODataSet.Requery

В данной ситуации тебе вычисляемое поле может помочь (как один из вариантов). Но я бы рефрешил всю выборку, при этом сохраняя позицию.


← →
Nalexey ©   (2004-06-21 13:52) [4]

 
 DataSet.UpdateCursorPos;
 TADODataSet(DataSet).Recordset.Resync(adAffectCurrent, adResyncAllValues);
 TADODataSet(DataSet).Resync([rmExact]);


← →
AVKAR   (2004-06-21 14:29) [5]

Почему то, тоже не обновляется...


← →
NAlexey ©   (2004-06-21 14:48) [6]

А покажи как пишешь?


← →
AVKAR   (2004-06-21 15:12) [7]

try
 Application.CreateForm(CurrentForm, TCurrentForm);
 CurrentForm.ShowModal;
 // при открытии формы происходит ADataSet.Edit;
 // при нажатии на ОК происходит ADataSet.Post;
finally
 CurrentForm.Release;
 if ADataSet.State in [dsInsert, dsEdit] then ADataSet.Cancel;
 ADataSet.UpdateCursorPos;
 TADODataSet(ADataSet).Recordset.Resync(adAffectCurrent, adResyncAllValues);
 TADODataSet(ADataSet).Resync([rmExact]);
end;


← →
NAlexey ©   (2004-06-21 15:34) [8]

AVKAR   (21.06.04 15:12) [7]
Вроде должно работать.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
1-1088532999
Studentik
2004-06-29 22:16
2004.07.18
Компоненты не влезают на форму под XP


1-1089094638
ИМХО
2004-07-06 10:17
2004.07.18
TDOMDocument


14-1088567524
alexa
2004-06-30 07:52
2004.07.18
Установка Delphi.net


14-1088587668
Amit
2004-06-30 13:27
2004.07.18
Вот блин, люди вы даёте >:-(


11-1076681024
vicvs
2004-02-13 17:03
2004.07.18
Проблемы с подключением в uses




   Наверх