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

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

Вывод сведений из запроса в компонент StringGrid [D5, dBase, FoxPro, Paradox]


Страницы:   1 2 3

Сергей ©   (2008-06-05 21:10:00) 

Доброго времени суток уважаемые мастера! У меня вопрос следующего характера.
Имеются две таблицы. В одной хранятся данные по регионам и по организациям, а в другой данные о хозяйственных операциях которые проводились данными организациями. Нужно сформировать вывод данных таким образом, чтобы сведения вытаскивались из этих взаимосвязаных таблиц в развернутом виде. То есть:
Регион 1
 - Организация 1
 - Организация 2
 - ...
Регион 2
 - ..
При этом я использую следующий код:
   with find_sql1 do
    begin
     find_sql1.Close;
     find_sql1.SQL.Clear;
     find_sql1.SQL.Add('Select * from reghoz'+
                       ' where NOD0 = 1 and NOD1 <> 0 and NOD2 = 0'+
                       ' ORDER BY NOD1');
     find_sql1.Open;
     find_sql1.First;
     a := find_sql1.FieldByName('NOD1').AsInteger;
    end;
   while not find_sql1.Eof do
    for b := 1 to find_sql1.RecordCount + 1 do
     begin
      rep_dlg.rep_tipil_tsg.Cells[1,b] := find_sql1.FieldByName('NAME').AsString;
        find_sql2.Close;
        find_sql2.SQL.Clear;
        find_sql2.SQL.Add('Select * from reghoz, isp_lst'+
                          ' where reghoz.NOD1 = '''+IntToStr(a)+''' and reghoz.NOD2 = isp_lst.id_hoz'+
                          ' ORDER BY reghoz.NOD1, reghoz.NOD2');
        find_sql2.Open;
        find_sql2.First;
       while not find_sql2.Eof do
           for d := 1 to find_sql2.RecordCount do
            begin
             rep_dlg.rep_tipil_tsg.Cells[1,d+1] := find_sql2.FieldByName('NAME').AsString;
             find_sql2.Next;
            end;
          find_sql1.Next;

Но в результате происходит вывод только сведений первого региона. Остальные регионы не вытаскиваются:
Регион 1
 - Организация 1
 - Организация 2
 - ...


Сергей М.   (2008-06-05 21:55:00) [41]


>    while not find_sql1.Eof do
>     for b := 1 to find_sql1.RecordCount + 1 do


Что это за безобразие ?


Правильный_Вася   (2008-06-05 21:29:00) [42]

сделай запрос, чтоб возвращал нужные регионы


Страницы:   1 2 3

Наверх

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