Einzelnen Beitrag anzeigen

ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#5

Re: DISQLite3 wandelt Feldtypen um?

  Alt 28. Jan 2009, 12:31
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_IDthen
begin
  AFieldDef.DataType:=ftInteger;
end;
if AColumn.ColumnName='Parent_IDthen
begin
  AFieldDef.DataType:=ftInteger;
end;
if AColumn.ColumnName='Imagethen
begin
  AFieldDef.DataType:=ftInteger;
end;
if AColumn.ColumnName='Namethen
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
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat