ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
8 Beiträge • Seite 1 von 1
8 Beiträge Seite 1 von 1

ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von bliss (ForumUser / 66 / 2 / 6 ) »
Hallo!

Die Ausgabe eines Reports soll in ALV umgesetzt werden. Bisher erfolgt die Ausgabe der 4 internen Tabellen mithilfe von geschachtelten LOOPs mit WRITEs. Es handelt sich dabei um Rechnungsköpfe, -positionen, -belege und -konditionen.

Die bisherige LOOP/WRITE-Schleife hat diese Struktur:

Code: Alles auswählen.

LOOP AT it_zzrk.
  WRITE: it_zzrk.
  LOOP AT it_zzrp.
    WRITE: it_zzrp.
    LOOP AT it_zzrb WHERE ...
      WRITE: it_zzrb.
    ENDLOOP.
    IF.
      LOOP AT it_zzko WHERE ...
        WRITE: it_zzko.
      ENDLOOP.
    ENDIF.
  ENDLOOP.
ENDLOOP.
Also kurz gesagt

Code: Alles auswählen.

LOOP it_zzrk.
  LOOP it_zzrp.
    LOOP it_zzrb.
    ENDLOOP.
    LOOP it_zzko.
    ENDLOOP.
  ENDLOOP.
ENDLOOP.
Ich habe andere Reports schon erfolgreich mit REUSE_ALV_LIST_DISPLAY und REUSE_ALV_GRID_DISPLAY umgesetzt (ich kanns endlich :D ). Ich habe noch von 2 anderen ALVs gelesen: Mit REUSE_ALV_HIERSEQ_LIST_DISPLAY kann man nur Kopf- und Positionsdaten darstellen. Ich brauche aber 1 weitere Stufe für 2 Tabellen. Und REUSE_ALV_BLOCK_LIST_DISPLAY dient nur dazu mehrere ALVs auf einem Bildschirm anzuzeigen.

In einem vorhandenen Report sehe ich RS_TREE_CONSTRUCT und RS_TREE_LIST_DISPLAY. Ich verstehe das alles aber nicht. Es gibt immer so viele Möglichkeiten etwas zu tun! Sogar in der Hilfe (Performance Assistant), also wenn ich F1 zu RS_TREE_LIST_DISPLAY aufrufe, heißt es schon: "Dazu gebit es drei Möglichkeiten:"

Kennt jemand eine Hilfe-Seite, wo ich sehen kann, wie man das macht? Und speziell mit meinen 4 Tabellen: Muss ich diese erst in eine bestimmte Struktur in einer Tabelle sammeln?

Ich wäre über Tipps und Beispielcoding sehr dankbar.
Zuletzt geändert von bliss am 11.03.2013 10:54, insgesamt 6-mal geändert.
Gruß
bliss
.|.. .. ...| . .|.. ||| |. ||. .| |. |.. .||. .|. ||| ... .||. . .|.

Ich bin Anfänger und meine Tipps sind mit Vorsicht zu genießen.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von bliss (ForumUser / 66 / 2 / 6 ) »
Ich habe eine super Dokumentation dazu gefunden: ABAP-Programmierung - Rainer Riekert, Buch von Addison-Wesley - Fachbücher zu IT, Bildbearbeitung und Fotografie

Hier stehen nicht nur einfach Codebeispiele, wie ich es auf zig Seiten gefunden habe, es wird auch genau erklärt warum man was wie macht. Glücklicherweise behandelt die Leseprobe mit Kapitel 3 genau das, wonach ich gesucht habe. Mit RS_TREE_CREATE, RS_TREE_ADD_NODE und RS_TREE_LIST_DISPLAY sowie mit CL_GUI_SIMPLE_TREE in einem Container.

Das Buch erklärt sehr verständlich, die Leseprobe hat mich überzeugt. Da werd ich sicher noch öfter in die pdf reinschauen :)
Gruß
bliss
.|.. .. ...| . .|.. ||| |. ||. .| |. |.. .||. .|. ||| ... .||. . .|.

Ich bin Anfänger und meine Tipps sind mit Vorsicht zu genießen.

Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Freut mich wenn du was gefunden hast.
Tut mir auch leid, dass wir dir hier nicht helfen konnten.
Ich hab mir zwar noch überlegt, wie ich deinen ersten Post gelesen habe, etwas zurückzuschreiben, aber da ich viel lieber mit den TREE-Model bzw. TREE-Control Klassen direkt arbeite, habe ich leider keine Erfahrung mit den RS_TREE_LIST_* Bausteinen.
Vorallem, da man mit den Klassen direkt um einiges flexibler arbeiten kann, waren die FuBa für mich eigentlich nie ein Thema.

Ich hatte auch gehofft, dass vielleicht jemand anderes sowas in der Richtung schon mal gemacht hat und dir vielleicht besser weiterhelfen hätte können.
Faule Bande! :shock: :P :wink:

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von bliss (ForumUser / 66 / 2 / 6 ) »
Oh! Danke für die netten Worte. Braucht dir nichts leid zu tun. Ja, ich finds echt cool, wie hier einem geholfen wird (dieser Thread ausgenommen, hehe).

Wenn ich mit dem RS_TREE_LIST_DISPLAY fertig bin, soll ich als nächstes objektorientierte ALV-Listen und -Bäume programmieren. Ohje ohje :D

Ich wünsch dir schon mal ein schönes Wochenende. Ist nicht mehr weit :)
Gruß
bliss
.|.. .. ...| . .|.. ||| |. ||. .| |. |.. .||. .|. ||| ... .||. . .|.

Ich bin Anfänger und meine Tipps sind mit Vorsicht zu genießen.

Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
bliss hat geschrieben:Wenn ich mit dem RS_TREE_LIST_DISPLAY fertig bin, soll ich als nächstes objektorientierte ALV-Listen und -Bäume programmieren. Ohje ohje :D
Da kann ich dir dann ganz sicher weiterhelfen!
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von bliss (ForumUser / 66 / 2 / 6 ) »
Dann hab ich schonmal eine kurze Frage dazu:

Stimmt es, dass ich (wie in diesem tollen Buch beschrieben) für OO ALVs unbedingt einen Container im Screen-Editor setzen muss? Ich meine ich kann nicht verstehen, wie man einen Custom-Control Bereich anlegt, mit fest definierter Größe, so als wären alle Monitore bei mir und beim Kunden identisch.

Aus dem oben genannten Buch: "Die Größe des Bereiches sowie dessen Position auf dem Dynpro kann im grafischen Editor auch nachträglich leicht verändert werden". Also nicht im Quelltext im Sinne von Control-Breite = Bildschirm-Breite.?

Ich komme eigentlich aus der Webentwicklung, und da lernt man mit als erstes, dass man sich dem Browser des Besuchers unterzuordnen hat.
Gruß
bliss
.|.. .. ...| . .|.. ||| |. ||. .| |. |.. .||. .|. ||| ... .||. . .|.

Ich bin Anfänger und meine Tipps sind mit Vorsicht zu genießen.

Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von ewx (Top Expert / 4843 / 311 / 638 ) »
bliss hat geschrieben:Ich komme eigentlich aus der Webentwicklung, und da lernt man mit als erstes, dass man sich dem Browser des Besuchers unterzuordnen hat.
Da nun der SAPGUI dein einziger Browser ist, darfst du dich dem ruhig unterordnen...! ;)
Zu deiner Frage: ein deutliches JEIN.
Nein, du musst nicht zwingend einen Container anlegen. Du kannst auch mit Docking-Containern arbeiten oder das gesamte Dynpro als Container verwenden (parent = CL_GUI_CONTAINER=>SCREEN0)
Ja, wenn du Container auf dem Dynpro platzieren willst, musst du einen CustomControl definieren. Der hat eine bestimmte Größe. Manchmal muss man die Größe einfach festlegen, weil nicht mehr Platz auf dem Dynpro ist. In der Regel legt man den Bereich aber so groß wie möglich an und setzt die Resize-Flags im CustomControl. So wird das Control dann verkleinert, wenn der Anwender keine so große Auflösung hat.
Alles in allem ein durchaus heikles Thema. Ich hätte mir auch öfters mal bessere und einfachere Möglichkeiten gewünscht.
Versuch macht kluch.
Erfahrung erledigt den Rest...
Hier vielleicht noch ein Link für dein RS_TREE-Gedöns:
http://tricktresor.de/content/index.php ... 27&aID=340

Re: ALV-Baum: RS_TREE_LIST_DISPLAY für Anfänger

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
ewx hat geschrieben:... oder das gesamte Dynpro als Container verwenden (parent = CL_GUI_CONTAINER=>SCREEN0)
Achtung: CL_GUI_CONTAINER=>SCREEN0 funktioniert nur auf der ERSTEN Ebene des Dynprostack (= wenn mehrere Dynpros im Programm übereinanderliegen)
Welche Ebene gerade tatsächlich aktiv ist, kann man mit dem Funktionsbaustein GUI_GET_PARENT_DYNPRO herausfinden.
Dazu gibt es auch die Konstantent CL_GUI_CFW=>DYNPRO_1 bis CL_GUI_CFW=>DYNPRO_9 bzw CL_GUI_CFW=>DESKTOP_WINDOW und CL_GUI_CFW=>DYNPRO_DEFAULT.
Analog dazu eben die Variablen CL_GUI_CONTAINER=>SCREEN0 bis CL_GUI_CONTAINER=>SCREEN9 bzw. CL_GUI_CONTAINER=>DESKTOP und CL_GUI_CFW=>DEFAULT_SCREEN die die jeweils zu verwendenen Container repräsentieren.

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Seite 1 von 1

Vergleichbare Themen

2
Antw.
3140
Views
REUSE _ ALV _ LIST _ DISPLAY - Zeile nicht markieren
von Gast » 12.09.2005 08:42 • Verfasst in ABAP® Core
1
Antw.
1732
Views
Datenverwaltung für List-Tree
von Frank Zet. » 16.10.2005 15:27 • Verfasst in ABAP Objects®
1
Antw.
1547
Views
List Tree Model
von treyfifty » 27.07.2016 08:48 • Verfasst in ABAP® für Anfänger
3
Antw.
2756
Views
EXPAND_NO_CHILDREN und List Tree
von SkyHobbit » 15.06.2005 14:53 • Verfasst in ABAP® für Anfänger
1
Antw.
1453
Views
List Tree Model
von treyfifty » 27.07.2016 08:48 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor einer Stunde von Bright4.5 1 / 58
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1709
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8314