Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как в DBGrideEh получить номера выделенных строк? [D6, FireBird]


Andriano ©   (2002-11-11 14:42:00) 

Подробнее: Разрешено мультивыделение в DBGRideEh. Выделил. Как теперь получить номера выд. строк, для последующей обработки строк в DataSet-е?

Спасибо.


Skolotovich   (2002-11-11 16:28:00) [1]

в eh - кмпонентах отличный хелп очень советую
я сам с этим три дня назад разобрался благодоря великому F1


Andriano   (2002-11-11 15:59:00) [2]

Значит myDBGridEh.SelectedRows.Items[i] это и есть Bookmark, поддерживаемый DataSet. Понятно. Спасибо.


Skolotovich   (2002-11-11 15:49:00) [3]

query:="select * from db_comp where ind = ";
changePrn:=OKRightDlg.getChange;
case changePrn of
0:
begin
if not myDataModule.RunQuery(query+myDataModule.myQuery.FieldByName("ind").AsString) then
begin
MessageDlg("Ошибка в базе!!!", mtError, [mbOK], 0);
end;
QRForm.DBQuickRep.Print;
// myDataModule.RunQuery("select * from db_comp");
end;
1:
begin
selectInd:=TStringList.Create;
if myDBGridEh.SelectedRows.Count>0 then
begin
for i:=0 to myDBGridEh.SelectedRows.Count-1 do
begin
myDataModule.opQuery.GotoBookmark(pointer(myDBGridEh.SelectedRows.Items[i]));
selectInd.Add(myDataModule.opQuery.FieldByName("ind").AsString);
end;
query:=query+selectInd.Strings[0];
for i:=1 to selectInd.Count-1 do query:=query+" or ind = "+selectInd.Strings[i];
myDataModule.RunQuery(query);
QRForm.DBQuickRep.Print;
// myDataModule.RunQuery("select * from db_comp");
end
else MessageDlg("Не выделено ни одной строки!", mtInformation, [mbOK], 0);
selectInd.Free;

надеюсь разберешся :-)


Наверх

Титульная страница Поиск, карта сайта Написать письмо