Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

Какое событие совершает DBGrid (EhDBGrid) после перехода   Найти похожие ветки 

 
Layner ©   (2003-10-31 11:03) [0]

от редактированной записи на другую строку? Мне как раз в этот момент надо самому UPDATE`ить запись, "руками", а не успеваю, выскакивает ошибка в несоответствии типов (что и верно, в PicList отображаю текст, а в табл. нужно вставлять ID, который я и вычисляю)...
Заранее спасибо.


 
Vlad ©   (2003-10-31 11:06) [1]

DataSet.BeforePost


 
Layner ©   (2003-10-31 11:09) [2]

Vlad © (31.10.03 11:06)
СПАСИБО!!! Я к гриду привязался :)


 
BrainStorm   (2003-10-31 11:11) [3]

DataSet.BeforeScroll


 
chtr ©   (2003-10-31 11:12) [4]

AfterScroll :))


 
Zacho ©   (2003-10-31 11:14) [5]

Еще добавлю:
1.В TDBGridEh кроме PickList есть еще и KeyList, возможно нужные ID тебе просто достаточно прописать в KeyList
2. Сильно подозреваю, что на самом деле тебе нужно создать lookup поле в DataSet"е.


 
BrainStorm   (2003-10-31 11:14) [6]

After уже будет совсем другая ист... активная запись


 
chtr ©   (2003-10-31 11:17) [7]

sorry не въехал, шел от вопроса:
Какое событие совершает DBGrid (EhDBGrid) после перехода


 
Layner ©   (2003-10-31 11:33) [8]

Zacho © (31.10.03 11:14)
Это мне как раз и требовалось!!!
Подскажи, пожалуйста, как в BeforePost подменить значение ячейки посылаемое в БД по умолчанию - что ведет к ошибке, на KeyList??


 
Layner ©   (2003-10-31 11:39) [9]

Иначе в BeforePost в БД посылается текстовое поле PickList, а надо, чтобы в БД ложилось значение KeyList.


 
chtr ©   (2003-10-31 11:39) [10]

tdataset.fieldbyname(fieldname):=value;


 
Layner ©   (2003-10-31 11:46) [11]

procedure Tmf.gCellClick(Column: TColumnEh);
var
i:integer;
begin
Column.PickList.Clear;
case g.SelectedIndex of
6:
begin
q2.SQL.Clear;
q2.SQL.Add("select rowid, name from test");
q2.Active := true;
for i:=0 to q2.Recordset.RecordCount-1 do
begin
Column.PickList.Add(q2.FieldValues["name"]);
Column.KeyList.Add(q2.FieldValues["name"]);
q2.RecNo := q2.RecNo+1;
end;
q2.Active := False;
end;
end;
end;

procedure Tmf.q1BeforePost(DataSet: TDataSet);
begin
q1.FieldByName("rod_id"):= //сюда "лезут" данные из PickList, а как KeyList занести?
end;


 
Zacho ©   (2003-10-31 11:50) [12]


> Layner © (31.10.03 11:33) [8]

Если используешь PickList совместно с KeyList, то ничего в BeforePost подменять не надо, это сделает сам DBGridEh.


 
Zacho ©   (2003-10-31 11:54) [13]


> Layner © (31.10.03 11:46) [11]

О-ооо ! Выкинь быстро все это, и создай lookup-поле в датасете.

> Column.PickList.Add(q2.FieldValues["name"]);
> Column.KeyList.Add(q2.FieldValues["name"]);

И нафига заполнять KeyList такими же значениями, как и в PickList ? Суть в чем: при просмотре/редактировании берется строка из PickList, а в датасет заносится соответствующая ей строка из KeyList.


 
Layner ©   (2003-10-31 11:56) [14]

Zacho © (31.10.03 11:50)
DBGridEh сам вот не хочет менять :(
Извиняюсь за назойливость, можно я скину по почте свой пример(D7+Eh)?
Проанализирую, в чем тут дело, ну все переделал, не помогает :( :( :( :( :(


 
Layner ©   (2003-10-31 11:57) [15]

Zacho © (31.10.03 11:54)
Сейчас исправлю, последний ответ не увидел, благодарю, сейчас напишу.


 
Zacho ©   (2003-10-31 11:59) [16]


> Layner © (31.10.03 11:57) [15]

И забудь пока про PickList и KeyList. Твоя задача решается созданием lookup поля в q1



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

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.024 c
1-65922
Кен
2003-11-07 02:46
2003.11.20
Подскажите статью для чайников по TTreeView, пожалуйста ?


6-66040
Дмитрий П
2003-09-14 13:15
2003.11.20
Управление LAN интернет-соединением.


3-65741
s
2003-10-31 20:34
2003.11.20
Как можно выйти из редактирования записи не сменив записи?


1-65817
Ломброзо
2003-11-10 11:02
2003.11.20
VB ActiveX


9-65685
The Kinslayer
2003-05-13 03:17
2003.11.20
О GLScene