So hab das angesprochene gefunden
Nur bleibt mein DBTreeView leer.
Ich bin dem ganzen im Debug mal gefolgt.
DISQLite liest die Integer Felder als LargeInt aus.
Nur das Image Feld welche die ImageID für die ImageList enthält läd er als WideString
Macht aber dann die Umwandlung in Integer bzw String für die Beschriftung wie gewünscht.
Ich habe die Varianten mit ClientDataSet und ohne versucht.
Bei beiden bleibt das DBTreeView leer.
An der
DB selber kanns wie gesagt eigentlich nicht liegen weil mit ZEOS wird alles wie gewünscht Dargestellt.
Ich frage mich gerade wieso nich einmal was einfach gehen kann
Edit:
Hier noch der Code. Das UniDirQuery wird in FormCreate geöffnet (zur DesignTime greift die Typenwandlung ja nicht).
Delphi-Quellcode:
procedure TForm2.DISQLite3UniDirQuery1InitFieldDef(
const AColumn: TDISQLite3Column; const AFieldDef: TFieldDef);
begin
if AColumn.ColumnName='Master_ID' then
begin
AFieldDef.DataType:=ftInteger;
end;
if AColumn.ColumnName='Parent_ID' then
begin
AFieldDef.DataType:=ftInteger;
end;
if AColumn.ColumnName='Image' then
begin
AFieldDef.DataType:=ftInteger;
end;
if AColumn.ColumnName='Name' then
begin
AFieldDef.DataType:=ftString;
end;
end;
Edit2:
Bin mir nicht sicher woran es nun genau lag aber nun hab ichs.
Doof is nur das ich noch nich zurück verfolgen kann welche Einstellung genau den Erfolg gebracht hat.
Danke für die Hilfe