ich muss doch noch mal eine Frage zu dem Thema loswerden:
Der FB 'REUSE_ALV_FIELDCATALOG_MERGE' verlangt als interne Tabelle eine Tabelle mit Kopfzeile, die Methode 'set_table_for_first_display' verlangt eine interne Tabelle ohne Kopfzeile. Im Report habe ich im allgemeinen nur eine interne Tabelle für die Daten. Um weiterzukommen habe ich mir jetzt eine 2. Tabelle kreiert und die Daten umgeschaufelt. Ich glaube aber nicht, dass das der Weisheit letzter Schluss ist. Wie geht das eleganter?
das Problem ist, dass auch der Reuse-Baustein nicht grade der schlaueste ist. Ich hoffe, dass ich irgendwann mal einen Baustein von SAP finde, der zur Laufzeit einfach die Struktur der übergebenen Tabelle einliest und dann die Daten ermittelt.
Aber zu deinem Problem. Das kann man wie folgt lösen:
1.) Definiere dir ein Struktur, die nachher die jeweilige Tabellenzeile beschreibt ( etwa STRUCT )
2.) Definiere deine Tabelle mit Bezug auf diese Struktur ( ITAB type standard table of STRUCT ... )
3.) Beim Aufruf des REUSE...MERGE-Bausteins gibst du bei "i_internal_tabname" nicht den Tabellennamen sondern den Strukturnamen ( hier STRUCT ) mit ( ich weiß dass das völlig abwegig erscheint - aber man darf sich durch die Namen der Übergabeparameter nicht allzu sehr einschränken lassen .).
1. Vergiss die REUSE_ALV* Bausteine
2. Investiere diese Zeit in das Arbeiten mit CL_GUI_ALV_GRID
3. (ergibt sich aus 2) freue dich an deiner Wissenserweiterung bzgl. OO
... mir ging's zumindest so
ff noch
pXo
Real programmers do not comment their code. It is hard to write and it should be hard to understand!