ListView problem z ilością grup

0

Mam problem z dodawaniem grup do ListView pobranych z bazy sqlite, problem polega na tym, iż w tabeli "jeden" jest 40 rekordów jest, a po pobraniu ich do ListView pokazuje się tylko 39 - brakuje ostatniego rekordu.

var
  li:tlistitem;
  gi:tlistgroup;
begin
zq.Close;
zq.SQL.Clear;
zq.SQL.Text:=ansitoutf8('select * from jeden');
zq.Open;
zq.First;
while not zq.Eof do
begin
	gi:=lv.Groups.Add;
	gi.GroupID:=zq.RecNo;
	gi.Header:=utf8toansi(zq.FieldByName('nazwa').AsString);
	gi.Subtitle:='SAP : '+utf8toansi(zq.FieldByName('id').AsString);
	gi.State:=[lgsNormal,lgsCollapsible];

		zq1.Close;
		zq1.SQL.Clear;
		zq1.SQL.Text:=ansitoutf8('select * from dwa where "id"="'+zq.FieldByName('id').AsString+'"');
		zq1.Open;
			zq1.First;
			while not zq1.Eof do
			begin
				li:=lv.Items.Add;
				li.GroupID:=zq.RecNo;
				li.Caption:=utf8toansi(zq1.FieldByName('nazwisko').AsString);
				li.SubItems.Add(utf8toansi(zq1.FieldByName('imie').AsString));
				li.SubItems.Add(utf8toansi(zq1.FieldByName('wiek').AsString));
			zq1.Next;
			end;
zq.Next;
end;
0

Sam znalazłem rozwiązanie może trochę niezbyt ładne, ale działa, wystarczy za pętlą dodać jeszcze jedną grupę i wszystko jest ok :-)

zq.Close;
zq.SQL.Clear;
zq.SQL.Text:=ansitoutf8('select * from jeden');
ZQ.Open;
zq.First;
while not zq.Eof do
begin
	gi:=lv.Groups.Add;
	gi.GroupID:=zq.FieldByName('id').AsInteger;
	gi.Header:=utf8toansi(zq.FieldByName('nazwa').AsString);
	gi.Subtitle:='SAP : '+utf8toansi(zq.FieldByName('id').AsString);
	gi.State:=[lgsNormal,lgsCollapsible];
	cb2.Items.Add(utf8toansi(zq.FieldByName('nazwa').AsString));
zq.Next;
end;
gi:=lv.Groups.Add;
gi.GroupID:=111111;
gi.Header:='xxx';
gi.State:=[lgsNormal,lgsCollapsible];

zq1.Close;
zq1.SQL.Clear;
zq1.SQL.Text:=ansitoutf8('select * from dwa');
zq1.Open;
zq1.First;
while not zq1.Eof do
begin
if zq1.FieldByName('id').AsString<>'' then
begin
li:=lv.Items.Add;
li.GroupID:=zq1.FieldByName('id').AsInteger;
li.Caption:=utf8toansi(zq1.FieldByName('nazwisko').AsString);
li.SubItems.Add(utf8toansi(zq1.FieldByName('imie').AsString));
li.SubItems.Add(utf8toansi(zq1.FieldByName('wiek').AsString));
end
else
begin
li:=lv.Items.Add;
li.GroupID:=111111;
li.Caption:=utf8toansi(zq1.FieldByName('nazwisko').AsString);
li.SubItems.Add(utf8toansi(zq1.FieldByName('imie').AsString));
li.SubItems.Add(utf8toansi(zq1.FieldByName('wiek').AsString));
gi:=lv.Groups.Add;
gi.GroupID:=0;
gi.Header:='';
gi.Subtitle:='';
end;
zq1.Next;
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1