Возникла необходимость добавления данных в бд, но при этом TreeView не обновляется, пытался как TreeView.Refresh TreeView.Update Заполнял TreeView
Код |
TreeView1.Items.BeginUpdate; TreeView1.SortType:=stNone; TreeView1.Items.Clear; DataModule1.SQL_QUERY.Close; DataModule1.SQL_QUERY.SQL.Clear; DataModule1.SQL_QUERY.SQL.Text:='SELECT DISTINCT date from tel'; DataModule1.SQL_QUERY.Open; while not DataModule1.SQL_QUERY.Eof do begin n1:=TreeView1.Items.Add(nil, DataModule1.SQL_QUERY.FieldByName('date').AsString); f1:=DataModule1.SQL_QUERY.FieldByName('date').AsString; DataModule1.SQL_QUERY.Next; //****************************************************************************// DataModule1.plan.Close; DataModule1.plan.SQL.Clear; DataModule1.plan.SQL.Add('select DISTINCT Postav.name, postav from tel ' +' inner join postav on tel.postav=postav.Id' +' where Дата=:date'); DataModule1.plan.Parameters.ParamByName('date').Value:=f1; DataModule1.plan.Open; if DataModule1.plan.RecordCount>0 then begin DataModule1.plan.First; while not DataModule1.plan.Eof do begin n2:=TreeView1.Items.AddChild(n1,DataModule1.plan.Fields[0].AsString); f2:=DataModule1.plan.FieldByName('postav').AsString; DataModule1.plan.Next; //****************************************************************************// DataModule1.plan_ot4et_Query.Close; DataModule1.plan_ot4et_Query.SQL.Clear; DataModule1.plan_ot4et_Query.SQL.Text:='select*' +' from tel' +' inner join name_tel' +' on tel.name=name_tel.id' +' where postav=:pos and date=:date'; DataModule1.plan_ot4et_Query.Parameters.ParamByName('pos').Value:=f2; DataModule1.plan_ot4et_Query.Parameters.ParamByName('date').Value:=f1; DataModule1.plan_ot4et_Query.Open; if DataModule1.plan_ot4et_Query.RecordCount>0 then begin DataModule1.plan_ot4et_Query.First; while not DataModule1.plan_ot4et_Query.Eof do begin n3:=TreeView1.Items.AddChild(n2,DataModule1.plan_ot4et_Query.Fields[8].AsString); f3:=DataModule1.plan_ot4et_Query.FieldByName('tel.Id').AsString; DataModule1.plan_ot4et_Query.Next; //****************************************************************************// DataModule1.zayavka.Close; DataModule1.zayavka.SQL.Clear; DataModule1.zayavka.SQL.Text:='select* from naem_tel' +' where id_блока=:id'; DataModule1.zayavka.Parameters.ParamByName('id').Value:=f3; DataModule1.zayavka.Open; if DataModule1.zayavka.RecordCount>0 then begin DataModule1.zayavka.First; while not DataModule1.zayavka.Eof do begin n4:=TreeView1.Items.AddChild(n3, DataModule1.zayavka.Fields[3].AsString); f4:=DataModule1.zayavka.FieldByName('id').AsString; DataModule1.zayavka.Next; //****************************************************************************// DataModule1.SQL_QUERY2.Close; DataModule1.SQL_QUERY2.SQL.Clear; DataModule1.SQL_QUERY2.SQL.Text:='select*' +' from name_tel' +' inner join sostoya on name_tel.sostoya=sostoya.id' +' where name_tel.id=:ids'; DataModule1.SQL_QUERY2.Parameters.ParamByName('ids').Value:=f4; DataModule1.SQL_QUERY2.Open; if DataModule1.SQL_QUERY2.RecordCount>0 then begin DataModule1.SQL_QUERY2.First; while not DataModule1.SQL_QUERY2.Eof do begin n5:=TreeView1.Items.AddChild(n4,DataModule1.SQL_QUERY2.Fields[5].AsString); DataModule1.SQL_QUERY2.Next; end; end; end; end; end; end; end; end; end; TreeView1.Items.EndUpdate; end;
|
|