ALV, Spaltenüberschriften dynamisch

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

ALV, Spaltenüberschriften dynamisch

Beitrag von Sascha_a (ForumUser / 8 / 0 / 0 ) »
Hallo zusammen,

ich möchte gerne einen Report den ich habe erweitern. Und zwar um die Steuerkennzeichen die in einem Beleg stehen.
Jedes gefundene Steuerkennzeichen auf einem Beleg soll eine Spaltenüberschrift im ALV werden.
Das heißt ich gehe über die Bseg und lese mir einen Beleg. Anschließend auf diesem Beleg alle Steuerkennzeichen. Die schreib ich mir weg. Und diese sollen eine Spaltenüberschrift werden.
In welches Ereignis oder an welchen Zeitpunkt muss ich da was programmieren?
Hat einer ein paar Ratschläge, Tips oder Stichworte die mich weiterbringen?

DANKE!

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


Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
guten morgen,

ich erzeuge meine ALV-Grid´s mit 'REUSE_ALV_GRID_DISPLAY'. Davor rufe ich eine Routine 'FELDKATALOG_AUFBAUEN' auf, in der ich die Spaltenüberschriften festlege. Üblicherweise sind die Überschriften statisch, Du hättest an dieser Stelle allerdings auch die Möglichkeit die Überschriften dynamisch zu erzeugen. Ich füge ein Beispiel bei, in dem ich sowohl statische, als auch dynamische Überschriften (Für die Spalten Bed01-BED12) verwende.

Gruss
Alexander

Code: Alles auswählen.

*&---------------------------------------------------------------------*
*&      Form  feldkatalog_aufbauen
*&---------------------------------------------------------------------*
* Feldkatalog aufbauen
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FELDKATALOG_AUFBAUEN.
  DATA: I TYPE I,
        SAV_JAHR(4) TYPE C,
        SAV_MONAT(2) TYPE C.

*Aufbau eines Feldkataloges aus der internen Tabelle

*Feldkatalog-gerüst aufbauen
  G_REPID   = SY-REPID.
  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
      I_PROGRAM_NAME         = G_REPID
      I_INTERNAL_TABNAME     = 'ITAB'
      I_INCLNAME             = G_REPID
    CHANGING
      CT_FIELDCAT            = FIELDCAT[]
    EXCEPTIONS
      INCONSISTENT_INTERFACE = 1
      PROGRAM_ERROR          = 2
      OTHERS                 = 3.
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  LOOP AT FIELDCAT INTO WRK_FIELDCAT_ALV.
    CASE WRK_FIELDCAT_ALV-FIELDNAME.
      WHEN 'ANZPS'.
        WRK_FIELDCAT_ALV-SELTEXT_S   = 'Pers.max/Tag'.
        WRK_FIELDCAT_ALV-SELTEXT_M   = 'Personen maximal/Tag'.
        WRK_FIELDCAT_ALV-SELTEXT_L   = 'Personen maximal/Tag'.
        WRK_FIELDCAT_ALV-REPTEXT_DDIC = 'Personen maximal/Tag'.

      WHEN 'BED01' OR 'BED02' OR 'BED03' OR 'BED04' OR 'BED05' OR
      'BED06' OR 'BED07' OR 'BED08' OR 'BED09' OR 'BED10' OR 'BED11'
      OR 'BED12'.

        SAV_JAHR = AKTJAHR.
        SAV_MONAT = AKTMONAT.

        SAV_MONAT = SAV_MONAT + WRK_FIELDCAT_ALV-FIELDNAME+3(2) - 1.

        IF SAV_MONAT > 12.
          SAV_MONAT = SAV_MONAT - 12.
          SAV_JAHR = SAV_JAHR + 1.
        ENDIF.

        CONCATENATE SAV_MONAT '_' SAV_JAHR
          INTO WRK_FIELDCAT_ALV-SELTEXT_S.

        CONCATENATE 'Bed. Std: ' SAV_MONAT '_' SAV_JAHR
          INTO WRK_FIELDCAT_ALV-SELTEXT_M.

        CONCATENATE 'Bedarf Std: ' SAV_MONAT '_' SAV_JAHR
          INTO WRK_FIELDCAT_ALV-SELTEXT_L.

        CONCATENATE 'Bedarf (Std): ' SAV_MONAT '_' SAV_JAHR
          INTO WRK_FIELDCAT_ALV-REPTEXT_DDIC.

      WHEN 'GRUPPE'.
        WRK_FIELDCAT_ALV-SELTEXT_S   = 'Gruppe'.
        WRK_FIELDCAT_ALV-SELTEXT_M   = 'Gruppe'.
        WRK_FIELDCAT_ALV-SELTEXT_L   = 'Gruppe'.
        WRK_FIELDCAT_ALV-REPTEXT_DDIC = 'Gruppe'.
      WHEN 'TGBED'.
        WRK_FIELDCAT_ALV-SELTEXT_S   = 'Kap.Bed.'.
        WRK_FIELDCAT_ALV-SELTEXT_M   = 'Kapazitätsbedarf'.
        WRK_FIELDCAT_ALV-SELTEXT_L   = 'Kapazitätsbedarf'.
        WRK_FIELDCAT_ALV-REPTEXT_DDIC = 'Kapazitätsbedarf (Std.)'.
      WHEN OTHERS.
        WRK_FIELDCAT_ALV-KEY = ''.
    ENDCASE.

    MODIFY FIELDCAT FROM WRK_FIELDCAT_ALV.
  ENDLOOP.

ENDFORM.  

Beitrag von Sascha_a (ForumUser / 8 / 0 / 0 ) »
Okay, danke schön! Das werd ich morgen mal testen!
Ich meld mich wieder :-)

Seite 1 von 1

Vergleichbare Themen

6
Antw.
3795
Views
Spaltenüberschriften in ALV
von Dyrdek » 26.02.2014 08:00 • Verfasst in ABAP® für Anfänger
4
Antw.
3361
Views
Technische Spaltenüberschriften
von Bugfix13 » 28.01.2014 13:40 • Verfasst in ABAP® für Anfänger
2
Antw.
3869
Views
SAP_CONVERT_TO_XLS_FORMAT mit Spaltenüberschriften
von Thanatos82 » 01.10.2012 11:42 • Verfasst in ABAP® Core
16
Antw.
4593
Views
Feldkatalog -> Spaltenüberschriften
von Bugfix13 » 06.08.2014 08:43 • Verfasst in ABAP® für Anfänger
2
Antw.
1675
Views
Spaltenüberschriften in einem ALV m. dyn. Tabellen
von BabsiCSC » 15.05.2008 13:36 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Daten an Tabelle binden
vor 20 Minuten von Lukas Sanders 2 / 783
Dialog-Container mit Toolbar/Status
vor 13 Stunden von black_adept gelöst 21 / 2612

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

Daten an Tabelle binden
vor 20 Minuten von Lukas Sanders 2 / 783
Dialog-Container mit Toolbar/Status
vor 13 Stunden von black_adept gelöst 21 / 2612

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2399
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 8984