Layout an ALV übergeben

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

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

Layout an ALV übergeben

Beitrag von xGabriel (ForumUser / 16 / 6 / 0 ) »
Hallo Leute,

ich bin ziemlich neu in der ABAP-Welt. Hatte bis jetzt 2 Tageskurse und bin inzwischen soweit dass ich dank der schicken Vorlage die wir uns dort erarbeitet haben kleinere bis mittlere Reports schreiben kann.
Sitze gerade an einem Report, der soweit auch fertig ist, doch ich hätte noch gerne, dass es möglich ist im Selektionsbildschirm ein bestimmtes Layout auszuwählen welches nach dem Ausführen des Reports gezogen wird.

Ich bin bereits soweit, dass ich über die F4-Hilfe die bestehenden Layouts auswählen kann, doch das ausgewählte Layout wird nicht gezogen (keine Werte übergeben) und der Report wird "ohne" Layout durchgeführt.

Hab mich schon eine Weile mit dem Thema beschäftigt und ich denke ich brauche den richtigen FuBa um das Layout zu übergeben. Doch beim Thema FuBa ging uns die Zeit etwas aus bei der Schulung, dadurch bin ich da noch gar nicht fit...

Hab mir auch bereits andere Reports rausgesucht wo es die Layout-Funktion gibt und mir dort das Coding kopiert (wodurch ich wie gesagt zumindest die F4-Hilfe aufrufen kann) doch dann ist Endstation.

Bin mir jetzt nicht so ganz sicher was ihr alles an Coding von mir braucht um mir weiterzuhelfen, aber ich probiers mal:

Das sind die Daten, welche ich vom anderen Programm zu meinem bestehenden hinzukopiert habe:

DATA: layout TYPE slis_layout_alv.
DATA: variant LIKE disvariant.
DATA: alv_repid LIKE sy-repid.
DATA: alv_variant LIKE disvariant.
DATA: field_tab TYPE slis_t_fieldcat_alv WITH HEADER LINE.
DATA: slis_t_event TYPE slis_t_event.
DATA: slis_alv_event TYPE slis_alv_event.

SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-001.

PARAMETERS:
p_varia TYPE disvariant-variant.

SELECTION-SCREEN END OF BLOCK b2.


AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_varia.
PERFORM f4_for_variant.
PERFORM init_variant.


FORM f4_for_variant.

DATA: i_variant LIKE disvariant,
e_variant LIKE disvariant.

i_variant-report = sy-repid.

CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
is_variant = i_variant
i_save = 'A'
IMPORTING
es_variant = e_variant
EXCEPTIONS
not_found = 2.

IF sy-subrc = 2.
MESSAGE s205(0k).
ELSE.
p_varia = e_variant-variant.
ENDIF.

ENDFORM.

FORM init_variant.

CLEAR variant.
variant-report = sy-repid.

IF NOT p_varia IS INITIAL.
MOVE p_varia TO variant-variant.
ENDIF.

ENDFORM.


Ich verwende in meinem Report den "alv_9000" mit der FORM: "init_9000", hier sind bereits etliche Sachen deklariert (Feldkatalog, Events,...):
Auszug aus der init_9000-Form:

FORM init_9000.

DATA: gs_variant TYPE disvariant,
gs_layout TYPE lvc_s_layo,
x_save,
it_fcat TYPE lvc_t_fcat,
st_fcat TYPE lvc_s_fcat,
t_repid TYPE syrepid,
t_dynnr TYPE sydynnr,
t_exten TYPE i,
lv_title(70) TYPE c,
lv_datum(10) TYPE c,
lv_time(8) TYPE c.



PERFORM get_datum CHANGING lv_datum
lv_time
lv_title.

SET TITLEBAR 'ALV' WITH lv_title.


IF cc_alv IS INITIAL.
* Control erstellen
* Layout sichern ermöglichen
gs_variant-report = sy-repid.
x_save = 'A'.
* Alternierende Farben im Grid
gs_layout-zebra = 'X'.
* Spaltenbreite optimieren
gs_layout-cwidth_opt = 'X'.
* Zeilenmarkierung
gs_layout-sel_mode = 'A'.

* Custom Control
t_repid = sy-repid.
t_dynnr = '9000'.
t_exten = 3000.

IF sy-batch IS INITIAL.
CREATE OBJECT cc_alv
EXPORTING
repid = t_repid
dynnr = t_dynnr
extension = t_exten.
ENDIF.

* ALV List Viewer
CREATE OBJECT grid_r
EXPORTING
i_parent = cc_alv.


Wie gesagt vermute ich, dass ich nun noch einen FuBa brauche, nur tue ich mir schwer welchen und wie ich ihn dann füllen muss, damit das Layout dann auch wirklich übergeben wird.
Folgende habe ich dazu bereits gefunden und ohne Erfolg (ws. aufgrund falscher Befüllung) ausprobiert:

- 'REUSE_ALV_GRID_DISPLAY
- 'REUSE_ALV_GRID_DISPLAY_LVC'
- F4IF_INT_TABLE_VALUE_REQUEST

Meine "Haupttabelle" in die ich alle Daten des Reports einlese heißt: gt_data.


Vielen Dank schon mal an jeden der sich die Mühe macht sich das Ganze durchzulesen.
Ich hoffe ich konnte mich verständlich ausdrücken. Falls noch weitere Informationen benötigt werden bitte einfach bescheid geben.

Lg Gabriel

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


Re: Layout an ALV übergeben

Beitrag von deejey (Specialist / 418 / 128 / 45 ) »
Layouts können userbezogen sein, versuche den User ebenfalls zu versorgen:
i_variant-username = sy-uname.

Re: Layout an ALV übergeben

Beitrag von A6272 (Specialist / 231 / 6 / 36 ) »
Hallo,

in einem Report habe ich folgendes hierzu gefunden:

CALL METHOD me->lr_alv_grid->set_table_for_first_display
EXPORTING
is_layout = me->ls_layout
is_variant = gs_alv_variant_sel
i_save = 'A'
CHANGING
it_outtab = <lt_data>
it_fieldcatalog = me->lt_fieldcat
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.

Viele Grüße
Alex

Re: Layout an ALV übergeben

Beitrag von xGabriel (ForumUser / 16 / 6 / 0 ) »
Danke für eure Antworten, habs hinbekommen! :)

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2140
Views
ALV Layout
von CKremer » 29.05.2006 09:31 • Verfasst in Dialogprogrammierung
0
Antw.
2014
Views
Layout im ALV Tree
von LGiesken » 08.08.2017 14:05 • Verfasst in ABAP Objects®
1
Antw.
1756
Views
ALV auf Dynpros -> Layout
von MartinZapf » 12.12.2014 08:51 • Verfasst in ABAP® für Anfänger
2
Antw.
3401
Views
IW 38 - Change Layout
von xhuljano » 18.02.2015 16:12 • Verfasst in ABAP® für Anfänger
2
Antw.
1935
Views
ALV Layout sichern
von SAP_ENTWICKLER » 01.09.2015 09:37 • Verfasst in ABAP® Core

Ü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

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 2 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

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.

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 2 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 2 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140