Code: Alles auswählen.
REPORT RSAN_WB_ROUTINE_TEMP_REPORT .
TYPES: BEGIN OF y_source_fields ,
/B99/S_BWPKKD TYPE /B99/OIBWPKKD ,
/B99/S_BWKVNR30 TYPE /B99/OIBWKVNR30 ,
/B99/S_BWKIATT01 TYPE /B99/OIBWKIATT01 ,
/B99/S_BWKIATT02 TYPE /B99/OIBWKIATT02 ,
/B99/S_BWVART TYPE /B99/OIBWVART ,
/GKV/BWARTBEIF TYPE /B99/OIBWARTBEIF ,
/GKV/BWAUDATAB TYPE /B99/OIBWAUDATAB ,
/GKV/BWAUDATBI TYPE /B99/OIBWAUDATBI ,
/GKV/BWKGDATAB TYPE /B99/OIBWKGDATAB ,
/GKV/BWKGDATBI TYPE /B99/OIBWKGDATBI ,
/B99/S_BWVALIDFR TYPE /B99/OIBWVALIDFR ,
/B99/S_BWVALIDTO TYPE /B99/OIBWVALIDTO ,
/B99/S_BWFALLSTS TYPE /B99/OIBWFALLSTS ,
/GKV/BWEZBEGDA TYPE /B99/OIBWEZBEGDA ,
/GKV/BWEZENDDA TYPE /B99/OIBWEZENDDA ,
/GKV/BWBEGDAT TYPE /B99/OIBWBEGDAT ,
/GKV/BWENDDAT TYPE /B99/OIBWENDDAT ,
/GKV/BWIMVERF TYPE /B99/OIBWIMVERF ,
/GKV/BWFNR TYPE /B99/OIBWFNR ,
END OF y_source_fields .
TYPES: yt_source_fields TYPE STANDARD TABLE OF y_source_fields .
TYPES: BEGIN OF y_target_fields ,
ANZAHL TYPE /B99/OIBWANZGA ,
/B99/S_BWPKKD TYPE /B99/OIBWPKKD ,
/B99/S_BWKVNR30 TYPE /B99/OIBWKVNR30 ,
/B99/S_BWKIATT01 TYPE /B99/OIBWKIATT01 ,
/B99/S_BWKIATT02 TYPE /B99/OIBWKIATT02 ,
/B99/S_BWVART TYPE /B99/OIBWVART ,
/GKV/BWARTBEIF TYPE /B99/OIBWARTBEIF ,
/GKV/BWAUDATAB TYPE /B99/OIBWAUDATAB ,
/GKV/BWAUDATBI TYPE /B99/OIBWAUDATBI ,
/GKV/BWKGDATAB TYPE /B99/OIBWKGDATAB ,
/GKV/BWKGDATBI TYPE /B99/OIBWKGDATBI ,
/B99/S_BWVALIDFR TYPE /B99/OIBWVALIDFR ,
/B99/S_BWVALIDTO TYPE /B99/OIBWVALIDTO ,
/B99/S_BWFALLSTS TYPE /B99/OIBWFALLSTS ,
/GKV/BWEZBEGDA TYPE /B99/OIBWEZBEGDA ,
/GKV/BWEZENDDA TYPE /B99/OIBWEZENDDA ,
/GKV/BWBEGDAT TYPE /B99/OIBWBEGDAT ,
/GKV/BWENDDAT TYPE /B99/OIBWENDDAT ,
/GKV/BWIMVERF TYPE /B99/OIBWIMVERF ,
/GKV/BWFNR TYPE /B99/OIBWFNR ,
END OF y_target_fields .
TYPES: yt_target_fields TYPE STANDARD TABLE OF y_target_fields .
*---------- Begin of type definitions -------------------------------
*----------- End of type definitions --------------------------------
FORM compute_data_transformation
USING it_source TYPE yt_source_fields
ir_context TYPE REF TO if_rsan_rt_routine_context
EXPORTING et_target TYPE yt_target_fields .
*--------- Begin of transformation code -----------------------------
DATA: ls_source TYPE y_source_fields,
ls_target TYPE y_target_fields.
LOOP AT it_source INTO ls_source.
MOVE-CORRESPONDING ls_source TO ls_target.
APPEND ls_target TO et_target.
ENDLOOP.
*---------- End of transformation code ------------------------------
ENDFORM.
Code: Alles auswählen.
FORM compute_data_transformation
USING it_source TYPE yt_source_fields
ir_context TYPE REF TO if_rsan_rt_routine_context
exporting et_target TYPE yt_target_fields .
*--------- Begin of transformation code -----------------------------
DATA: ls_source TYPE y_source_fields,
ls_target TYPE y_target_fields.
FIELD-SYMBOLS: <lwa_source> TYPE y_source_fields.
FIELD-SYMBOLS: <lwa_target> TYPE y_target_fields.
LOOP AT it_source ASSIGNING <lwa_source>.
IF <lwa_source>-/gkv/bwkgdatab = <lwa_source>-/gkv/bwezbegda
AND <lwa_source>-/gkv/bwkgdatbi = <lwa_source>-/gkv/bwezendda.
"same timeslot => append only this BWFNR Record
MOVE-CORRESPONDING <lwa_source> TO ls_target.
APPEND ls_target TO et_target ASSIGNING <lwa_target>.
"'count' /GKV/BWFNR entries
LOOP AT it_source TRANSPORTING NO FIELDS WHERE /gkv/bwfnr = <lwa_target>-/gkv/bwfnr.
<lwa_target>-anzahl = <lwa_target>-anzahl + 1.
ENDLOOP.
ENDIF.
ENDLOOP.
*---------- End of transformation code ------------------------------
ENDFORM. "compute_data_transformation
Folgende Benutzer bedankten sich beim Autor bigld für den Beitrag:
meistercoach