Loop at Screen
Aus SAP-Wiki
Zur Navigation springenZur Suche springen
Sowohl auf einem Selektionsbildschirm beim Reporting als auch auf einem normalen Dynpro bei der Dialogprogrammierung kann die Ausgabe von Feldern beeinflusst werden.
Die Tabellen ist typisiert nach der Struktur SCREEN typisiert.
Feld ausblenden bei der Dialogprogrammierung
- Mit dem Feld INVISIBLE wird ein Feld ausgeblendet
loop at screen. if screen-name = 'P_VBELN'. screen-invisible = '1'. "Gibt das Feld auf dem Dynpro nicht aus modify screen. endif. endloop.
- Das gleiche Ergebnis kann man auch durch das Feld ACTIVE erreichen. Beim Wert '0' vom Feld ACTIVE wird intern u. a. auch das Feld INVISIBLE auf '1' gesetzt.
loop at screen. if screen-name = 'P_VBELN'. screen-active = '0'. "Gibt das Feld auf dem Dynpro nicht aus modify screen. endif. endloop.
Siehe hierzu SAP-Community: Diskussion Felder INVISIBLE und ACTIVE (EN)
Select-Options Felder ausblenden
- Möchte man Select-Options Felder ausblenden, dann muss man etwas aufpassen mit dem Namen, den man abfragt.
select-Options: s_pstyv for vbap-pstyv.
- Hier wäre die folgende Abfrage nicht korrekt
loop at screen. if screen-name = 'S_PSTYV'. ... endif. endloop.
- Es stehen in der Screen-Tabelle Feldnamen wie "S_PSTYV-LOW" und "S_PSTYV-HIGH". Man kann es sich dann einfach machen und abfragen entsprechend der Länge vom Select-Options Feld.
loop at screen. if screen-name(7) = 'S_PSTYV'. ... endif. endloop.
Struktur Screen Felder
Feld | Typ | Länge |
NAME | CHAR | 132 |
GROUP1 | CHAR | 3 |
GROUP2 | CHAR | 3 |
GROUP3 | CHAR | 3 |
GROUP4 | CHAR | 3 |
REQUIRED | CHAR | 1 |
INPUT | CHAR | 1 |
OUTPUT | CHAR | 1 |
INTENSIFIED | CHAR | 1 |
INVISIBLE | CHAR | 1 |
LENGTH | RAW | 1 |
ACTIVE | CHAR | 1 |
DISPLAY_3D | CHAR | 1 |
VALUE_HELP | CHAR | 1 |
REQUEST | CHAR | 1 |
VALUES_IN_COMBO | CHAR | 1 |
COLOR | INT4 | 10 |