適用場景:
調用別人程序或標準程序 然後加以過濾
&---------------------------------------------------------------------*
*& Report ZFI020
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zfi020.
TABLES : mseg .
TYPES:
BEGIN OF ty_result,
root TYPE i,
level TYPE i,
ebeln TYPE ebeln,
ebelp TYPE ebelp,
aufnr TYPE mseg-aufnr,
kostl TYPE mseg-kostl,
kdauf TYPE mseg-kdauf,
kdpos TYPE mseg-kdpos,
matnr_in TYPE mseg-matnr,
maktx_in TYPE maktx,
charg_in TYPE mseg-charg,
matnr_use TYPE mseg-matnr,
maktx_use TYPE maktx,
charg_use TYPE mseg-charg,
menge TYPE mseg-menge,
meins TYPE mseg-meins,
lifnr TYPE ekko-lifnr,
name1 TYPE lfa1-name1,
END OF ty_result .
SELECT-OPTIONS:
s_werks FOR mseg-werks NO INTERVALS "工廠
NO-EXTENSION
OBLIGATORY
DEFAULT '1000',
s_matnr FOR mseg-matnr , "物料編碼
s_charg FOR mseg-charg . "批次號
DATA : gs_out TYPE ty_result .
DATA: gt_out TYPE TABLE OF ty_result .
FIELD-SYMBOLS: <lt_pay_data> TYPE ANY TABLE,
<lt_temp> TYPE ANY TABLE,
<ls_data>.
DATA lr_pay_data TYPE REF TO data.
cl_salv_bs_runtime_info=>set( EXPORTING display = abap_false
metadata = abap_false
data = abap_true ).
SUBMIT zpp008
WITH s_matnr IN s_matnr
WITH s_charg IN s_charg
AND RETURN.
*
* cl_salv_bs_runtime_info=>set( EXPORTING display = abap_false
* metadata = abap_false
* data = abap_true ).
*
* CL_SALV_BS_RUNTIME_INFO=>SET(
* EXPORTING
* DISPLAY = ABAP_FALSE
* METADATA = ABAP_FALSE
* DATA = ABAP_TRUE ).
CLEAR lr_pay_data.
UNASSIGN <lt_pay_data>.
TRY.
cl_salv_bs_runtime_info=>get_data_ref(
IMPORTING r_data = lr_pay_data ).
ASSIGN lr_pay_data->* TO <lt_pay_data>.
CATCH cx_salv_bs_sc_runtime_info.
ENDTRY.
cl_salv_bs_runtime_info=>clear_all( ).
IF <lt_pay_data> IS ASSIGNED.
LOOP AT <lt_pay_data> ASSIGNING <ls_data>.
MOVE-CORRESPONDING <ls_data> TO gs_out.
APPEND gs_out TO gt_out.
ENDLOOP .
ENDIF .
LOOP AT gt_out INTO gs_out .
SELECT SINGLE a~lifnr b~name1 INTO ( gs_out-lifnr ,gs_out-name1 )
FROM ekko AS a
JOIN lfa1 AS b ON a~lifnr = b~lifnr
WHERE a~ebeln = gs_out-ebeln .
ENDLOOP .