TMemDataset, Eigenschaft FieldDefs

Rund um die LCL und andere Komponenten
Antworten
MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

TMemDataset, Eigenschaft FieldDefs

Beitrag von MmVisual »

Hallo,

Wenn ich im Lazarus (V0.9.27) die TMemDataset im Designer die Felder (Eigenschaften >> Fielddefs) eingeben, dann funktioneren die Felder nicht richtig.
Also mit .Append und .Post wird zwar ein neuer Datensatz angelegt, im verknüpften Grid wird aber nur eine leere Zeile und keine Daten angezeigt.

Wenn ich aber die FieldDefs im Code zur Laufzeit manuell programmiere, dann geht's richtig und im Grid werden meine Daten angezeigt.

Mein Demo-Code:

Code: Alles auswählen

procedure TfrmWizTracker.Button1Click(Sender: TObject);
begin
	If Not dsMem.Active Then
   Begin
(*   	dsMem.FieldDefs.Clear;
      dsMem.FieldDefs.Add('CANID', ftInteger);
      dsMem.FieldDefs.Add('Seriennummer', ftInteger);
      dsMem.FieldDefs.Add('Version', ftInteger);
      dsMem.FieldDefs.Add('Neu', ftString, 20);    *)
      dsMem.Open;
   End;
   dsMem.Append;
   dsMem.Fields[0].AsInteger := 2;
   dsMem.Fields[1].AsInteger := 4;
   dsMem.Fields[2].AsInteger := 777777;
   dsMem.Fields[3].AsString := 'NNNNNN';
   dsMem.Post;
end;
Und halt noch TMemDataset, TDatasource und TDBGrid auf der Form.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: TMemDataset, Eigenschaft FieldDefs

Beitrag von Christian »

Und was ist jetzt die Frage ?
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: TMemDataset, Eigenschaft FieldDefs

Beitrag von MmVisual »

Ahem.... Ja.
Ist das so, oder nur auf meinem PC?
Wenn das so wäre, dann ist es ein Bug in der Komponente, bzw. die FieldDefs des Designers werden nicht richtig in der Laufzeit aktiviert.
EleLa - Elektronik Lagerverwaltung - www.elela.de

Antworten