Code: Alles auswählen.
REPORT z_scanner .
DATA:
gf_feld1(10) TYPE c,
gf_feld2(20) TYPE c.
DATA:
gf_flag TYPE c.
PARAMETERS: pa_fd1(10) TYPE c,
pa_fd2(20) TYPE c.
AT SELECTION-SCREEN.
IF NOT sy-datar IS INITIAL.
IF NOT pa_fd1 IS INITIAL
AND NOT pa_fd2 IS INITIAL.
gf_flag = 'X'.
gf_feld1 = pa_fd1.
gf_feld2 = pa_fd2.
CLEAR: pa_fd1, pa_fd2.
PERFORM action.
ENDIF.
ENDIF.
START-OF-SELECTION.
*&---------------------------------------------------------------------*
*& Form action
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM action .
IF NOT gf_flag IS INITIAL.
MESSAGE 'Alles gmacht' TYPE 'S'.
CLEAR: pa_fd1, pa_fd2, gf_flag, gf_feld1, gf_feld2.
ENDIF.
ENDFORM. " action
Sind die nicht von SAP verboten worden? Aus gutem Grund?MarkusW hat geschrieben:Darf es kein Modulpool Prog sein?
So hab ich das Coding oben schon gemacht...aber wie du schon schreibst, es muss einmal ENTER gedrückt werden.Krueger hat geschrieben:Return simulieren: Man kann normalerweise einem Scanner das "Return" programmieren.
Lass einfach nach dem Ereignis "AT Selection screen" das Ereignis "Start-of-Selection" weg!!!
Bei einem Enter/Return wird dann das Programm durchlaufen.... natürlich musst Du Deine Prüfungen in das "at selection screen" komplett einbauen.
Ernsthaft?ralf.wenzel hat geschrieben:Sind die nicht von SAP verboten worden? Aus gutem Grund?MarkusW hat geschrieben:Darf es kein Modulpool Prog sein?
Ralf
Dann war aber deine Problembeschreibung irreführendLittleT hat geschrieben:Hallo alle zusammen,
vielen Dank für Eure Antworten. Es funktioniert mit dem Quelltextausschnitt.
Ich wusste dass Ihr die Lösung parat habt.
Vielen Dank nochmal.
PS: Stimmt es geht um einen Scanner. Die erste Eingabe bleibt immer gleich, wird also nur beim start eingegeben. Und der zweite Wert wird über einen Handscanner eingegeben (mit Return). Daraufhin verarbeitet das Programm die Daten und gibt unten entweder "OK" oder "Fehler" aus. Daraufhin kann das nächste gescannt werden, ohne dass eine Eingabe mehr erforderlich ist.
LittleT hat geschrieben: Ich weiß zwar nicht wieso man den Report nun mit der Enter Taste starten kann aber es funktioniert.
Liegt das an dem at selection-screen?
Das liegt daran, dass die gesamte Verarbeitung im At Selection-Screen abgearbeitet wird.
im Start-of-selection steht nix drin, der Quellcode darunter ist ja eine Form-Routine.
Start-of-selection muss drin stehen, da der At Selection-Screen Bereich abgeschlossen werden musste, das geht nur mit der Angabe eines weiteren EreignissBlocks
Auf alle Fälle funktioniert es jetzt einwandfrei.
Vielen vielen Dank.
Bitte Bitte
Gruß
Rainer