ALV-Grid Zeile farbig

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

ALV-Grid Zeile farbig

Beitrag von nikibert (ForumUser / 78 / 4 / 0 ) »
Moin zusammen,
komme mal wieder nicht weiter... Habe hier im Forum auch schon einige ähnliche Themen gefunden nur helfen mir die nicht weiter...

Ich versuche eine Zeile in einer ALV-Grid-Ausgabe andersfarbig darzustellen. Es handelt sich hierbei um selbsterstellte Summenzeilen.
Anbei das aktuelle Coding, die Ausgabe funktioniert nur halt ohne die gewünschte Farbänderung. Habe da grad auch keinerlei Ansatz :-(

Hier das einfügen der Summenzeile in die Grid-Ausgabe:

Code: Alles auswählen.

* Falls der Datensatz neu / bzw. ungleich dem Vorgänger ist
    ELSE.
* wird erst die Summenspalte ausgegeben.
      wa_daten2-vvnat = lv_summevvnat.
      wa_daten2-vvvkf = lv_summevvvkf.
      wa_daten2-zsgtxt = 'Summe'.
      APPEND wa_daten2 TO gt_daten_ausg.
      CLEAR: lv_summevvnat,
             lv_summevvvkf.
Aufruf des ALV-Grid:

Code: Alles auswählen.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program      = sy-repid
*      i_callback_user_command = 'USER_COMMAND'
      is_layout               = gs_layout
      it_fieldcat             = it_fieldcat[]
      i_callback_user_command = 'DOPPEL'
      i_save                  = g_save
      is_variant              = gs_variant
      it_events               = rt_events[]
      it_sort                 = it_sorttab
*      i_grid_title            = 'Kunden'
    TABLES
      t_outtab                =  gt_daten_ausg "
    EXCEPTIONS
      program_error           = 1
      OTHERS                  = 2.
Erstellung Fieldcat:

Code: Alles auswählen.

  l_tabname     = 'GTY_DATEN'. "Muss GROSS geschrieben werden
  ls_data-dummy = sy-repid.    "damit der Datentyp stimmt

  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
  EXPORTING
    i_program_name         = ls_data-dummy  "Programmname
    i_internal_tabname     = l_tabname      "Interne Tabelle
*      i_inclname             = g_repid
    i_bypassing_buffer     = ''
    i_buffer_active        = ''
  CHANGING
    ct_fieldcat            = it_fieldcat[]  "Feldkatalogstabelle
  EXCEPTIONS
    inconsistent_interface = 1
    program_error          = 2
    OTHERS                 = 3.
Falls jemand eine Idee hat wäre ich über eine Lösung sehr dankbar!


Gruß nikibert

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


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

folgende Schritte sind zum Einfärben einer Zeile notwendig (prozeduraler ALV):

* Die auszugebende Tabelle wird um eine Spalte erweitert:

Code: Alles auswählen.

BEGIN OF t_tab,
.
.
  rowcolor(4) type c,
END OF t_tab.
* Ein Layout muss definiert werden

Code: Alles auswählen.

*Deklarationen für ALV Grid
DATA:
.
 gd_layout        type slis_layout_alv.  "ALV-Layout
* Beim Füllen der Internen Tabelle muss für jede Zeile die Farbe gesetzt werden wie z.B:
* C700 = schwach rot
* C200 = hellblau
* C300 = schwach gelb
* C500 = schwach grün

Code: Alles auswählen.

...
*wenn Drucker deaktiviert -> diese Zeile rot hervorheben
    if itab-padisabled = 'X'.
      itab-rowcolor = 'C600'.
    else.
      itab-rowcolor = ''.
    endif.

    APPEND itab.


hoffe das hilft ein wenig weiter.[/code]

Beitrag von nikibert (ForumUser / 78 / 4 / 0 ) »
moin,

danke für die Antwort, die Geschichte mit der Farbcodezeile versteh ich ja noch, aber wie weiss denn nun das System das diese Werte Farbcodierungen sind? Muss ich im Layout noch zusätzlich etwas deklarieren?

Gruß

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
sorry, habe vorhin scheinbar nicht den gesamten text reinkopiert...

bei der layoutdefenition musst du die Zelle ROWCOLOR dem ALV kenntlich machen

Code: Alles auswählen.

*&---------------------------------------------------------------------*
*&      Form  BUILD_LAYOUT
*&---------------------------------------------------------------------*
*       Build layout for ALV grid report
*----------------------------------------------------------------------*
form build_layout.
...
* Set layout field for row attributes(i.e. color) 
  gd_layout-info_fieldname =      'ROWCOLOR'.
endform.                    " BUILD_LAYOUT

Beitrag von nikibert (ForumUser / 78 / 4 / 0 ) »
Kein Thema :-)

Funktioniert einwandfrei...

Besten Dank!!!

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1616
Views
ALV ZEILE farbig
von torben schmidt » 11.11.2005 08:18 • Verfasst in ABAP® Core
6
Antw.
6558
Views
ALV Zeile farbig markieren
von EnginT » 16.04.2020 07:52 • Verfasst in ABAP® für Anfänger
3
Antw.
8121
Views
SAPScript: Zeile farbig Drucken
von urk » 12.03.2005 08:37 • Verfasst in Basis
2
Antw.
1998
Views
Zeile in Liste farbig markieren
von itmeli » 23.02.2005 09:30 • Verfasst in ABAP® für Anfänger
8
Antw.
4115
Views
Zellen auf Alv grid farbig.
von Chrisp83 » 23.10.2007 11:48 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1674
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8276