Dynamischer Selection Screen

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

Benutzeroberflächen in SAP®-Systemen.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Dynamischer Selection Screen

Beitrag von Nemesis ( / / 0 / 3 ) »
Hallo, ich habe ein Problem:

Ich möchte einen Parameter (Checkbox) abhängig vom Wert eines anderen Parameters ein- bzw. ausblenden, damit der Anwender keine Grütze selektieren kann...

Code: Alles auswählen.

*&---------------------------------------------------------------------*
*&  Include           ZZBHW_K80_AW_SEL                                 *
*----------------------------------------------------------------------*
* PARAMETERS & SELECT-OPTIONS
*----------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK z_status WITH FRAME.

PARAMETERS:

lp_bukrs LIKE vdarl-bukrs  DEFAULT 100 OBLIGATORY,
lp_stats LIKE vdarl-sstati OBLIGATORY.

SELECTION-SCREEN SKIP 1.

PARAMETERS:
lp_azvpf TYPE c AS CHECKBOX DEFAULT space.

SELECTION-SCREEN SKIP 1.

SELECT-OPTIONS: 
so_sttg  FOR wa_stichtag OBLIGATORY.

SELECTION-SCREEN END OF BLOCK z_status.

*---------------------------------------
lp_azvpf soll dabei nur eingabebereit und sichtbar sein, wenn lp_stats = 50 ist. Ich habe folgendes versucht:

Code: Alles auswählen.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF screen-name = 'LP_AZVPF'.
      IF lp_stats NE 50.
        screen-invisible = 1.
        screen-input = 0.
      ELSE.
        screen-invisible = 0.
        screen-input = 1.
      ENDIF.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
Wegen der OBLIGATORY - SELECT-OPTIONS wird die Prüfung erst aktiv, wenn ALLE Obligatories erfüllt sind (Enter-Taste). Dann wird das Feld auch ein- bzw. ausgeblender - aber wenn der Anwender das Ding ändern will, muss er wieder durchtabben oder zur Maus greifen --- unergonomisch! Gibt es eine Möglichkeit, die Prüfung direkt bei input von lp_stats durchzuführen (z.B. wenn ich lp_stats in eine Listbox übertrage)? Oder muss ich mich wieder von meinem Fachbereich abwatschen lassen?

... bei .net gibt es ein LostFocus-Ereignis - das will ich hier auch ...


Vielen Dank für Euer Interesse

Nemesis von der Weser

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


Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
Nimm den Zusatz OBLIGATORY raus, füge eine Anweisung

Code: Alles auswählen.

TABLES sscrfields.
ein, und ergänze bei

Code: Alles auswählen.

AT SELECTION-SCREEN.
oder

Code: Alles auswählen.

AT SELECTION-SCREEN ON BLOCK z_status.
die Prüfung, ob die Mussfelder gefüllt sind, wenn der Anwender den Report ausführen, im Hintergrund einplanen, ausführen und drucken, eine Variante sichern ... will.

Code: Alles auswählen.

CASE sscrfields-ucomm.
  WHEN 'ONLI' OR 'PRIN' ...
    IF lp_bukrs IS INITIAL.
      SET CURSOR FIELD 'LP_BUKRS'.
      MESSAGE E123 WITH ...
    ENDIF.
    IF SO_STTG[] IS INITIAL.
      SET CURSOR FIELD 'SO_STTG-LOW'.
      MESSAGE E456 WITH ...
    ENDIF.
ENDCASE.

Das kommt meiner Wunschvorstellung schon näher

Beitrag von Nemesis ( / / 0 / 3 ) »
Vielen Dank,

hat alles so funktioniert. Wenn ich mal gross (in ABAP) bin, werde ich auch versuchen zu helfen ...


Gruß von der Weser


Nemesis

Seite 1 von 1

Vergleichbare Themen

13
Antw.
7140
Views
Dynamischer Selection Screen mit dynamischer Suchhilfe
von Johnny11 » 26.03.2014 08:19 • Verfasst in ABAP® Core
5
Antw.
3313
Views
at selection-screen....
von domezug » 25.07.2007 09:07 • Verfasst in ABAP® für Anfänger
1
Antw.
447
Views
At Selection-Screen
von L0w-RiDer » 22.08.2019 15:42 • Verfasst in ABAP® für Anfänger
4
Antw.
4495
Views
Selection screen
von mbelhadi » 07.07.2005 09:38 • Verfasst in ABAP® Core
2
Antw.
1862
Views
Selection-Screen
von Gast » 15.11.2004 09:27 • 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

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.