Форум: "Базы";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
Вниз
DBGridEh - как после update записи вернутся на нее же Найти похожие ветки
← →
Explorer (2005-11-01 11:49) [0]Мастера!
На одной форме есть DBGrid и пытаюсь отредактировать одну из записей, вызвав другую форму, потом хочу вернутся на предыдущую форму с обновленными данными в DBGride на эту же запись.
Подскажите, как реализовать данный сабж?
← →
msguns © (2005-11-01 11:57) [1]Перед перечиткой запоминать ID текущей записи (не букмарку !!!), после переоткрытия делать Locate:
Procedure TForm1.ReOpenGridData(Grid: TDBGrid);
begin
With Grid.dataSource.DataSet do
begin
DisableControls;
Tag := 0;
if RecordCount>0 then
Tag := Fields[0].AsInteger; // Запомнить в тэге ID тек.записи
Close;
Open;
Locate(Fields[0].FieldName,Tag,[]); // Установка в "старую" запись
Tag := 0; // Сбросить ID
EnableControls;
end;
end;
← →
Ega23 © (2005-11-01 11:57) [2]Спозиционировать набор данных, на который смотрит твой грид, на нужную тебе запись.
Делается это с помощью метода Locate
← →
Sergey13 © (2005-11-01 12:09) [3]А зачем при апдейте уходить с нужной записи? Можно и без этого обойтись, если работать через датасет.
← →
Explorer (2005-11-01 12:56) [4]>Sergey13
а по подробней?
работаю через AODDataSet
← →
Sergey13 © (2005-11-01 13:01) [5]2[4] Explorer (01.11.05 12:56)
>а по подробней?
А чего подробнее то? Там (в АДО) нет что-ли Edit, Post?
← →
Explorer (2005-11-01 13:02) [6]Точнее будет все же так :
DBGrid - через ADODATASET, а update делаю через ADOComand- вызов хранимой процедуры.
В гриде данные меняются, только сразу вываливается EOleException
"Не удается найти строку для обновления.Некоторые значения могут быть изменены со времени последнего чтения"
← →
msguns © (2005-11-01 13:15) [7]>Explorer (01.11.05 13:02) [6]
Делай как в [1], а Сергея не слухай.. 13-й он :)))
← →
Sergey13 © (2005-11-01 13:17) [8]2[6] Explorer (01.11.05 13:02)
Я с АДО не работал, но наверное и там можно сделать
Edit;
FieldByName("aaa").Value:="bla-bla";
Post;
Не так разве?
2[7] msguns © (01.11.05 13:15)
Папарашу без инсинуаций!!! 8-)
← →
msguns © (2005-11-01 13:23) [9]>Sergey13 © (01.11.05 13:17) [8]
>Папарашу без инсинуаций!!! 8-)
Иди учи бухгалтерию, двоешик ;))
Сори за офтоп
← →
Sergey13 © (2005-11-01 13:28) [10]2[9] msguns © (01.11.05 13:23)
>Иди учи бухгалтерию, двоешик ;))
Пачиму двоешник? Я хорошист! Но в другой области (в Ивановской). И в бухгалтерии я не двоешник, а самообразованец. 8-)
>Сори за офтоп
Присоединяюсь к сори.
2Explorer (01.11.05 11:49)
А если серьезно, то не зачем перечитывать много раз то что у тебя уже есть. Это я к работе через датасет. Но кодом помочь не могу, ибо с АДО и мускулом не работал.
← →
Ega23 © (2005-11-01 13:30) [11]
> Sergey13 © (01.11.05 13:28) [10]
ИМХО, твой путь - порочен. Я бы так не стал делать.
Впрочем, мы с тобой, помнится, уже неоднократно на эту тему спорили... :о)
← →
Sergey13 © (2005-11-01 13:32) [12]2 [11] Ega23 © (01.11.05 13:30)
>ИМХО, твой путь - порочен. Я бы так не стал делать.
ИМХО, наоборот. Я делал так же как и ты, но одумался? 8-)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.015 c