Code: Alles auswählen.
PARAMETERS: p_aufnr TYPE aufnr DEFAULT '952608'.
DATA: ls_afpo TYPE afpo,
lt_set_stat TYPE TABLE OF stat,
ls_set_stat TYPE jstat,
lv_compl_delivered TYPE i,
ls_aufk TYPE aufk,
lv_plant_date TYPE datum,
lv_error TYPE abap_bool.
DATA: lt_detail_return TYPE bapi_order_return_tt.
SELECT SINGLE * FROM afpo INTO CORRESPONDING FIELDS OF ls_afpo WHERE aufnr = p_aufnr.
IF sy-subrc = 0.
ls_set_stat-stat = 'I0012'. "Endgeliefert haken setzen
ls_set_stat-inact = space.
APPEND ls_set_stat TO lt_set_stat.
ls_set_stat-stat = 'I0074'.
ls_set_stat-inact = 'X'.
APPEND ls_set_stat TO lt_set_stat.
ENDIF.
* Hole die Daten aus der Tabelle AUFK für den spezifischen Fertigungsauftrag
SELECT SINGLE objnr FROM aufk INTO ls_aufk-objnr WHERE aufnr = p_aufnr.
CALL FUNCTION 'STATUS_CHANGE_INTERN'
EXPORTING
" check_only = space
objnr = ls_aufk-objnr
TABLES
status = lt_set_stat.
IF sy-subrc <> 0.
" Fehlerbehandlung, falls der Auftrag oder die Position nicht gefunden wurde
CASE sy-subrc.
WHEN 1.
WRITE: / 'Header not found'.
WHEN 2.
WRITE: / 'Position not found'.
WHEN OTHERS.
WRITE: / 'Unknown error occurred'.
ENDCASE.
ELSE.
COMMIT WORK.
ENDIF.