Показать сообщение отдельно
  #18  
Старый 01.03.2012, 14:16
vivazz vivazz вне форума
Прохожий
 
Регистрация: 05.05.2011
Сообщения: 14
Репутация: 10
По умолчанию

Привожу полный код процедуры:
Код:
procedure TForm1.LoadTreeview1;
var
i,i1,k,k1 : integer;
begin
  flag:=false;
  i:=0;
  k1:=0;
  TreeView1.Items.Clear;
  with dm1.q do
  begin
    Active:=false;
    SQL.Clear;
    SQL.Add('SELECT * FROM FACULTET ORDER BY COD_FACULTETA');
    Active:=true;
    First;
    while not Eof do
    begin
      TreeView1.Items.Add(nil, FieldByName('NAME_FACULTETA').AsString);
      with dm1 do
      begin
        q2.Active:=false;
        q2.SQl.Clear;
        q2.SQL.Add('SELECT * FROM FACULTET ORDER BY COD_FACULTETA');
        //q2.SQL.Add('SELECT * FROM FACULTET WHERE NAME_FACULTETA=:Facultet');
        //q2.SQL.Add('ORDER BY COD_FACULTETA');
        //q2.Params.ParamByName('Facultet').asString := FieldByName('NAME_FACULTETA').AsString;
        q2.Active:=true;
        q2.First;
        k:=0;
        while dm1.q2.RecordCount<>k do
          begin
            TreeView1.Items.AddChildObject(TreeView1.Items.Item[i],
            dm1.q2.FieldByName('NAME_FACULTETA').AsString, Pointer(
            dm1.q2.FieldByName('COD_FACULTETA').AsInteger));
            inc(k);
            dm1.q2.Next;
          end;
        i:=i+k+1;
        q.Next;
      end;
    end;
  end;
  flag:=true;
end;
Нужно сделать еще для каждой дочерней записи свои дочерние записи
Ответить с цитированием