Hallo zusammen,
ich habe ein Problem mit einem VST. Ich möchte Daten aus einer Datenbank in folgendem Aufbau anzeigen.
Code:
-Kunde
-Zentrale
-Port
-
IP
Jetzt habe ich das über folgende Weg versucht, bekomme allerdings eine Fehlermeldung beim beenden von meinem Programm, das der Zeiger ungültig ist. Der Fehler muss irgendwo bei FreeNode auftreten.
Hier mal der Code...
Delphi-Quellcode:
//Einfügen der Daten
DM_PS.ConPSConfig.Connect;
DM_PS.Qry_VSTSystemCreate.Open;
DataSys := TOSYSTEM.Create;
VSTSystem.BeginUpdate;
with DataSys
do
begin
DataSys.Objekt := DM_PS.Qry_VSTSystemCreate.FieldByName('
KUNDE').AsString;
case DM_PS.Qry_VSTSystemCreate.FieldByName('
ZENTRALENTYP').AsInteger
of
0: DataSys.Zentrale := '
NOVAR HB/MB 24';
1: DataSys.Zentrale := '
NOVAR HB/MB 48';
2: DataSys.Zentrale := '
NOVAR MB100';
3: DataSys.Zentrale := '
NOVAR MB256';
4: DataSys.Zentrale := '
BOSCH UEZ2000';
5: DataSys.Zentrale := '
NOVAR BMC 1024';
6: DataSys.Zentrale := '
ESSER IQ8 Control';
7: DataSys.Zentrale := '
SONSTIGE';
end;
DataSys.COM := '
COM 1, 9600,8,1';
DataSys.IP := '
192.168.100.101';
end;
pNode := VSTSystem.AddChild(
nil,DataSys);
pNode := VSTSystem.AddChild(pNode,DataSys);
pNode := VSTSystem.AddChild(pNode,DataSys);
VSTSystem.AddChild(pNode,DataSys);
VSTSystem.EndUpdate;
VSTSystem.Refresh;
//FreeNode
var
DataSys : TOSYSTEM;
begin
DataSys := TOSYSTEM(VSTSystem.GetNodeData(Node)^);
DataSys.Free;
Danke schon mal
und Gruß
Jens