Code: Alles auswählen.
REPORT Z_VIEW1.
DATA: input1 TYPE c,
input2 TYPE c,
input3 TYPE i,
input4 TYPE i,
input5 TYPE i.
call screen 1000.
MODULE init_screen_1000 OUTPUT.
CLEAR: input1, input2, input3, input4, input5.
ENDMODULE.
MODULE user_command_1000 INPUT.
Modify ??????
ENDMODULE.
In SAP geht vieles über Namensgleichheit. Nenn die Dynpro-Felder wie in der DB-Tabelle bzw. definiere sie darüber:max1 hat geschrieben: Infos:
Z-Tabelle =ztesttabelle
die Felder in der Z-Tabelle heißen MATNR, LGPLA, LPMAX, LPMIN, NSMNG
input1 bis input5 sind die Eingabefelder im Dynpro
Code: Alles auswählen.
TABLES ztesttabelle.
1000 ist für ein Dynpro sehr schlecht, da SelectionScreen in Reports im default mit Nummer 1000 generiert werden. Nummer also besser nicht verwenden.max1 hat geschrieben: call screen 1000.
Du musst dir noch einen GUI-Status setzten, damit du speichern und nagivieren kannst.max1 hat geschrieben: MODULE init_screen_1000 OUTPUT.
CLEAR: input1, input2, input3, input4, input5.
ENDMODULE.
Ansonsten hilft die F1-Hilfe.max1 hat geschrieben: MODULE user_command_1000 INPUT.
CASE okcode.
WHEN 'BACK'.
WHEN 'SAVE'.
* Da du mittels TABLES eine Struktur erzeugt hast wird es hier einfacher:
MODIFY ztesttabelle FROM ztesttabelle.
* Fehlerhandling
if sy-subrc = 0.
COMMIT WORK.
else.
* Fehlermeldung
endif.
ENDMODULE.
Wenn die Felder mit TABLES 'bekanntgemacht' worden sind, ist beim Modify das from nicht mehr nötig...aber das nur so nebenbei.JHM hat geschrieben:Hier wertest du den Funktionscode aus:Code: Alles auswählen.
TABLES ztesttabelle.
Ansonsten hilft die F1-Hilfe.max1 hat geschrieben:Code: Alles auswählen.
MODULE user_command_1000 INPUT. CASE okcode. WHEN 'BACK'. WHEN 'SAVE'. * Da du mittels TABLES eine Struktur erzeugt hast wird es hier einfacher: MODIFY ztesttabelle FROM ztesttabelle. * Fehlerhandling if sy-subrc = 0. COMMIT WORK. else. * Fehlermeldung endif. ENDMODULE.
Code: Alles auswählen.
TABLES: ZTesttabelle.
DATA: okcode TYPE sy-ucomm.
START-OF-SELECTION.
CALL SCREEN 100.
Dynpro 100 (Ablauflogik)
PROCESS BEFORE OUTPUT.
MODULE status_0100.
PROCESS AFTER INPUT.
MODULE exit AT EXIT-COMMAND.
MODULE user_command_0100.
MODULE status_0100 OUTPUT.
SET PF-STATUS 'DYN100'.
ENDMODULE. " STATUS_0100 OUTPUT
MODULE exit INPUT.
LEAVE PROGRAM.
ENDMODULE. " exit INPUT
MODULE user_command_0100 INPUT.
CASE okcode.
WHEN 'SAVE'.
MODIFY ZTesttabelle.
ENDCASE.
ENDMODULE. " user_command_0100 INPUT
Ist zwar ausserhalb des ABAP-OO nicht notwendig, wird aber von SAP auch als veraltet bezeichnet.MarkusW hat geschrieben: ...
Wenn die Felder mit TABLES 'bekanntgemacht' worden sind, ist beim Modify das from nicht mehr nötig...aber das nur so nebenbei.
...