Witam.... robie program i mam tak,... dane zapisywane sa po linijce w pliku
przy odczycie chce zeby wyswietlilo mi sie wszystko w drzewku np:
Rok: 2006
|
|---- Miesiąc: 02
| |-----Dzien: 03
| |------ Zmiana: 1
| |----Zlecenie: 12345
|---- Zlecenie: 123456
|------ Zmiana: 2
|---- Zlecenie: 123
|---- Zlecenie: 1234
|---- Dzien: 04
| |---- Zmiana: 3
|---- Zlecenie: 12345678
|
|
|
|---- Miesiąc: 03
|
itp...itd..
teraz odczyt jednego pliku wyglada tak:
begin
// czytanie danych....
//...
Zlec := IntToStr(Numer);
Dzie := Data[9] + Data[10];
Zmia := Form9.Rot13(ZmianaM);
Zn := 0;
for I := 0 to TreeView1.Items.Count - 1 do
if TreeView1.Items[I].Text = ('Rok: ' + Rok) then
begin
Zn := 1;
Num := I;
end;
if Zn = 0 then
begin
MyTreeNode1 := TreeView1.Items.Add(nil, 'Rok: ' + Rok);
MyTreeNode2 := MyTreeNode1.getFirstChild;
MyTreeNode2 := TreeView1.Items.AddChild(MyTreeNode1, 'Miesiąc: ' + Mies);
MyTreeNode3 := MyTreeNode2.getFirstChild;
MyTreeNode3 := TreeView1.Items.AddChild(MyTreeNode2, 'Dzień: ' + Dzie);
MyTreeNode4 := MyTreeNode3.getFirstChild;
MyTreeNode4 := TreeView1.Items.AddChild(MyTreeNode3, 'Zmiana: ' + Zmia);
MyTreeNode5 := MyTreeNode4.getFirstChild;
MyTreeNode5 := TreeView1.Items.AddChild(MyTreeNode4, 'Zlecenie: ' + Zlec);
end else
begin
MyTreeNode1 := TreeView1.Items[Num];
Zn := 0;
MyTreeNode2 := MyTreeNode1.getFirstChild;
repeat
if MyTreeNode2 <> nil then
begin
if MyTreeNode2.Text = ('Miesiąc: ' + Mies) then
begin
Zn := 1;
Num := MyTreeNode2.Index;
end;
end;
MyTreeNode2 := MyTreeNode2.GetNextChild(MyTreeNode2);
until MyTreeNode2 = nil;
if Zn = 0 then
begin
MyTreeNode2 := TreeView1.Items.AddChild(MyTreeNode1, 'Miesiąc: ' + Mies);
MyTreeNode3 := MyTreeNode2.getFirstChild;
MyTreeNode3 := TreeView1.Items.AddChild(MyTreeNode2, 'Dzień: ' + Dzie);
MyTreeNode4 := MyTreeNode3.getFirstChild;
MyTreeNode4 := TreeView1.Items.AddChild(MyTreeNode3, 'Zmiana: ' + Zmia);
MyTreeNode5 := MyTreeNode4.getFirstChild;
MyTreeNode5 := TreeView1.Items.AddChild(MyTreeNode4, 'Zlecenie: ' + Zlec);
end else
begin
MyTreeNode2 := TreeView1.Items[Num];
Zn := 0;
MyTreeNode3 := MyTreeNode2.getFirstChild;
repeat
if MyTreeNode3 <> nil then
begin
if MyTreeNode3.Text = ('Dzień: ' + Dzie) then
begin
Zn := 1;
Num := MyTreeNode3.Index;
end;
end;
MyTreeNode3 := MyTreeNode3.GetNextChild(MyTreeNode3);
until MyTreeNode3 = nil;
if Zn = 0 then
begin
MyTreeNode3 := TreeView1.Items.AddChild(MyTreeNode2, 'Dzień: ' + Dzie);
MyTreeNode4 := MyTreeNode3.getFirstChild;
MyTreeNode4 := TreeView1.Items.AddChild(MyTreeNode3, 'Zmiana: ' + Zmia);
MyTreeNode5 := MyTreeNode4.getFirstChild;
MyTreeNode5 := TreeView1.Items.AddChild(MyTreeNode4, 'Zlecenie: ' + Zlec);
end else
begin
MyTreeNode3 := TreeView1.Items[Num];
Zn := 0;
MyTreeNode4 := MyTreeNode3.getFirstChild;
repeat
if MyTreeNode4 <> nil then
begin
if MyTreeNode4.Text = ('Zmiana: ' + Zmia) then
begin
Zn := 1;
Num := MyTreeNode4.Index;
end;
end;
MyTreeNode4 := MyTreeNode4.GetNextChild(MyTreeNode4);
until MyTreeNode4 = nil;
if Zn = 0 then
begin
MyTreeNode4 := TreeView1.Items.AddChild(MyTreeNode3, 'Zmiana: ' + Zmia);
MyTreeNode5 := MyTreeNode4.getFirstChild;
MyTreeNode5 := TreeView1.Items.AddChild(MyTreeNode4, 'Zlecenie: ' + Zlec);
end;
end;
i robiac to wychodzi mi cos takiego:
Rok: 2006
|
|---- Miesiąc: 02
| |-----Dzien: 03
| |------ Zmiana: 1
| | |----Zlecenie: 12345
| |---- Zlecenie: 123456
|Zmiana: 2
|---- Zlecenie: 123
|---- Zlecenie: 1234
|---- Dzien: 04
| |---- Zmiana: 3
|---- Zlecenie: 12345678
|
|
|
|---- Miesiąc: 03
zamiast porzadek to pod miesiac mam juz zmiane :| a powinien byc dzien.... co jest nie tak :/