![]() |
Datenbank: Access • Version: 2002/2003 • Zugriff über: ADO
Problem mit neuen Nodes in QuantumTreelist
Guten Morgen,
Ich benutze eine cxDbTreelist-Komponente um eine Access-Datenbank strukturiert darzustellen. Die Aufgabe erfordert nun das auch neue Nodes im laufenden Programm erzeugt werden können. Aus der beiliegenden Demo werde ich nicht schlau. Wenn ich eine neue Node erzeuge mit dem Programm text den ich bereits habe erscheint folgender Fehler: Im Projekt PPlaner.exe ist eine Exception der Klasse EAccessViolation mit der Meldung 'Zugriffsverletzung bei Adresse 00412F21 in Modul 'PPlaner.exe'. Lesen von Adresse 00000058' aufgetreten.
Delphi-Quellcode:
Procedure Tform1.InsertNode(ParentId: Integer);
Var Feld : TField; Dataset : TDataset; begin Dataset := cxDbtreelist1.DataController.DataSet; dataset.DisableControls; try Feld := Dataset.FindField(cxdbTreelist1.datacontroller.ParentField); if Assigned(Feld) then begin Dataset.Insert; Feld.Value := ParentID; end; finally Dataset.EnableControls; end; end;
Delphi-Quellcode:
Was habe ich vergessen/übersehen? Werde seit einer Stunde nicht schlauer.
procedure TForm1.NeueAufgabe1Click(Sender: TObject);
begin InsertNode (FHitnode.ParentValue); end; Grüße Christian |
Re: Problem mit neuen Nodes in QuantumTreelist
Hi,
ich füge Datensätze wie folgt ein:
Delphi-Quellcode:
Vielleich kommst du ja damit weiter.
...
// Ereignis der Treelist TreeList.OnInitInsertingRecord := TreeViewInitInsertingRecord; ... // procedure TFRMBaseTreeList.TreeViewInitInsertingRecord(Sender: TObject; AFocusedNode: TcxTreeListDataNode; var AHandled: Boolean); Var ADataSet: TDataSet; AFieldName: String; begin if AFocusedNode <> nil then begin ADataSet := TcxDBTreeList(Sender).DataController.DataSet; if ADataSet.State in [dsEdit, dsInsert] then begin AFieldName := TcxDBTreeList(Sender).DataController.ParentField; if (GetKeyState(VK_SHIFT) < 0) then ADataSet.FieldByName(AFieldName).AsInteger := AFocusedNode.KeyValue else ADataSet.FieldByName(AFieldName).AsInteger := AFocusedNode.ParentValue; end; end; end; ... // Neuen Node erzeugen TreeList.DataController.Insert; Cu, Frank |
Re: Problem mit neuen Nodes in QuantumTreelist
Vielen herzlichen Dank. Es funktiobniert bis auf einen kleinen Schönheitsfehler. Bei jeder neu erstellten Node gibt er einen Fehler an: Wert ID kann nicht verändert werden. Eine Idee woran das liegt?
|
Re: Problem mit neuen Nodes in QuantumTreelist
Hi,
ich tippe auf OptionsData.AutoCalcKeyValue. Hast du das evtll. auf True, verwendest aber ein AutoIncrement Field? Frank |
Re: Problem mit neuen Nodes in QuantumTreelist
Wunderbar es Funktioniert
Großes Dankeschön an dich :D wieder was gelernt |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz