Ich baue mir gerade ein Programm, in dem zwei ListTree's nebeneinander dargestellt werden. Da es sich um sehr große Tree's handelt, möchte ich nur die erste Ebene nach dem Rootknoten expandieren (das klappt wunderbar), und den Rest bei Bedarf, sprich wenn der Knoten expandiert wird.
Ja ... soweit die Theorie. Nun hänge ich beim Expandieren und weiß nicht weiter ... Dazu gibt es zwar in der Doku auch das Kapitel 'Einträge auf Anforderung laden'. Leider werde ich daraus nicht schlau. Weiß jemand wie man das macht, bzw. kennt jemand ein Beispielprogramm welches mein Problem behandelt ??
leider ist bei den Controlbeispielen nur ein 'normaler' List Tree (CL_GUI_LIST_TREE), aber kein List Tree Model (cl_list_tree_model).
Der Unterschied war ja, daß beim List Tree Model die gesamte Datenverwaltung des Baumes von SAP übernommen wird. Dadurch läuft die Übergabe der Daten auch ganz anders.
Ich hab auch schonmal so ein Tree Model eingesetzt und den Baum bei Bedarf aufgebaut, leider hab ich zur Zeit keinen Zugriff mehr auf den Code von damals, aber ich bin mir sehr sicher dass das Über das Event EXPAND_NO_CHILDREN gesteuert wurde.
Eine eventhandler methode implementieren und in dieser dann die neuen Daten raussuchen und mit add_node bzw add_nodes/add_items Knoten in den Baum reinhängen.
Hallo,
ich habe ähnliches Problem, nur verwende ich den Column-Tree, um genau zu sein, die Klasse CL_COLUMN_TREE_MODEL. Das Problem ist, dass das Attribut EVENTID_EXPAND_NO_CHILDREN in der Klasse und seinen Sub-Klassen nicht vorhanden ist, ich es jedoch definieren und implementieren kann, aber nicht regeistriere. Im Tree springt er dann auch in das entsprechende Coding, macht alles sauber durch, aber zeigt die neuen Knoten nicht an. Klick ich ein zweiter Mal drauf oder betätige die Enter-Taste, so werden mir die neuen Unterknoten angezeigt.