Interne Tabelle nach User command ändern

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

Interne Tabelle nach User command ändern

Beitrag von kaufmann123 (ForumUser / 18 / 6 / 0 ) »
Hallo,

ich habe eine interne Tabelle gt_ausgabe.
Diese soll nach einem Buttonklick , abhängig vom Feldkatalog, in eine neue Tabelle vom selben Typ "kopiert" werden, damit ich sie in dem neuen Layout später in verschiedenen Dateiformaten downloaden kann.

Ich weiss das ich das aktuelle Layout bekomme:

Code: Alles auswählen.

    CALL METHOD g_grid->get_frontend_fieldcatalog
      IMPORTING
        et_fieldcatalog = gt_ausgabe.
Nun soll das Layout für gt_ausgabe_l übernommen werden, da die Tabelle immer so in verschiedenen Methoden aufgerufen wird:

Code: Alles auswählen.

   gr_programm->pdf_ausgabe( gt_ausgabe_l ). "Eigenentwicklung

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


Re: Interne Tabelle nach User command ändern

Beitrag von DeathAndPain (Top Expert / 2025 / 273 / 426 ) »
Ich habe nicht verstanden, was genau Dein Problem ist. Das User-Command-Ereignis zu treffen? Du hast ja noch nicht mal gezeigt, auf welche Weise Du Dein ALV erzeugst (gibt da mehrere Möglichkeiten).

Oder den Inhalt von gt_ausgabe in eine andere interne Tabelle gt_ausgabe2 zu kopieren? Da machste einfach

gt_ausgabe2[] = gt_ausgabe[].

Wobei, wenn Du den Feldkatalog nach gt_ausgabe lesen lässt, wie Dein Codebeispiel es zeigt, dann kann das ja nicht wirklich die Datenausgabetabelle sein!?
Wenn wir einer Partei die Regierungsbeteiligung verweigern, die von einer Mehrheit gewählt worden ist, weil wir diese Partei für schlecht halten, da wir einer anderen Partei angehören, wie ist dann unsere eigene demokratische Gesinnung zu bewerten?

Re: Interne Tabelle nach User command ändern

Beitrag von kaufmann123 (ForumUser / 18 / 6 / 0 ) »
Ich formuliere das jetzt nochmal vlt ein wenig anders, musste da mir erstmal selbst einen Überblick verschaffen. Also in gt_ausgabe steht meine Tabelle aktuell. Nun kann der User beliebig das Layout ändern.
Nachdem er das Layout geändert hat kann er verschiedene Funktionen noch aufrufen wie die PDF ausgabe. Die soll aber auch das Layout so ausgeben wie er es in seinem ALV angezeigt bekommt.

Deswegen hab ich mir überlegt das in eine neue Tabelle zu kopieren abhängig vom Feldkatalog, dafür müsste man die Felder fieldcat-COL_POS und fieldcat-NO_OUT benutzen wenn ich das richtig verstehe. Falls es eine bessere Lösung gibt, lasst es mich wissen, ich habe wenig Erfahrung mit dem Feldkatalog...

Re: Interne Tabelle nach User command ändern

Beitrag von DeathAndPain (Top Expert / 2025 / 273 / 426 ) »
Dann müsstest Du diese neue Tabelle aber dynamisch erzeugen, denn welche Spalten sie haben soll, hängt ja davon ab, wie der Benutzer gerade seinen Feldkatalog eingestellt hat. Solch Tabelle mit dynamischer Spaltenstruktur per Programm erzeugen und korrekt befüllen, das ist dann schon die hohe Schule und sehr, sehr abstrakte Programmierung. Bist Du sicher, dass Du schon so weit bist?
Wenn wir einer Partei die Regierungsbeteiligung verweigern, die von einer Mehrheit gewählt worden ist, weil wir diese Partei für schlecht halten, da wir einer anderen Partei angehören, wie ist dann unsere eigene demokratische Gesinnung zu bewerten?

Re: Interne Tabelle nach User command ändern

Beitrag von kaufmann123 (ForumUser / 18 / 6 / 0 ) »
Das klingt ein wenig zu kompliziert, ich hatte bisher nur Erfahrung mit der CL_SALV_TABLE Klasse.
Edit: ist das ein sinnvolles Beispielprogramm: https://www.tricktresor.de/blog/interne ... enerieren/ ?

Eine andere Alternative habe ich nicht oder? Ansonsten müsste ich den PDF-Download anders gestalten oder?

Re: Interne Tabelle nach User command ändern

Beitrag von a-dead-trousers (Top Expert / 4483 / 231 / 1205 ) »
kaufmann123 hat geschrieben:Eine andere Alternative habe ich nicht oder? Ansonsten müsste ich den PDF-Download anders gestalten oder?
Deiner Methode

Code: Alles auswählen.

gr_programm->pdf_ausgabe( gt_ausgabe_l ). "Eigenentwicklung
müsstest du zusätzlich zur Datentabelle auch den Feldkatalog des ALV-Grid mitgeben. Am Besten dann auch gleich den Filter und die Sortierung. In der Methode musst du dann anhand dieser Informationen die Ausgabe der Zeilen/Spalten steuern. Ist sicher ähnlich komplex wie das was D&P vorgeschlagen hat, aber du musst dich wenigstens als Anfänger (noch) nicht mit RTTI herumschlagen.
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

4
Antw.
4617
Views
5
Antw.
5683
Views
Inhalt interne Tabelle an andere interne Tabelle übergeben
von L0w-RiDer » 30.01.2020 16:28 • Verfasst in ABAP® für Anfänger
5
Antw.
5351
Views
1
Antw.
4900
Views

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.