Beruflich Dokumente
Kultur Dokumente
*&---------------------------------------------------------------------*
*& START-OF-SELECTION EVENT
*&---------------------------------------------------------------------*
START-OF-SELECTION.
*FETCH DELIVERY HEADER DATA
PERFORM GET_LIKP_DATA.
*FETCH ROUTES: TEXTS
PERFORM GET_TVROT_DATA.
*FETCH CUSTOMER MASTER DATA
PERFORM GET_KNA1_DATA.
*PROVIDE KEYINFO
PERFORM KEY_INFO.
*PROVIDE SORT
PERFORM SORT.
*DISPLAY REPORT
PERFORM DISPLAY_REPORT.
*&---------------------------------------------------------------------*
*&
Form VALIDATE_VBELN
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM VALIDATE_VBELN .
DATA L_VBELN TYPE VBELN_VL."Delivery No
SELECT SINGLE VBELN FROM LIKP INTO L_VBELN WHERE VBELN IN S_VBELN.
IF SY-SUBRC <> 0.
MESSAGE E010(ZMSGCLS).
ENDIF.
ENDFORM.
" VALIDATE_VBELN
*&---------------------------------------------------------------------*
*&
Form GET_LIKP_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_LIKP_DATA .
SELECT VBELN
ERDAT
ROUTE
KUNNR
BZIRK
XABLN
FROM LIKP INTO CORRESPONDING FIELDS OF TABLE T_LIKP
WHERE VBELN IN S_VBELN.
ENDFORM.
" GET_LIKP_DATA
*&---------------------------------------------------------------------*
*&
Form GET_TVROT_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_TVROT_DATA .
DATA:LT_LIKP TYPE TABLE OF TY_LIKP.
LT_LIKP = T_LIKP.
SORT LT_LIKP BY ROUTE.
DELETE ADJACENT DUPLICATES FROM LT_LIKP COMPARING ROUTE.
SELECT ROUTE
BEZEI
FROM TVROT INTO TABLE T_TVROT
FOR ALL ENTRIES IN LT_LIKP
WHERE ROUTE = LT_LIKP-ROUTE AND SPRAS = 'EN'.
ENDFORM.
" GET_TVROT_DATA
*&---------------------------------------------------------------------*
*&
Form GET_KNA1_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_KNA1_DATA .
DATA:LT_LIKP TYPE TABLE OF TY_LIKP.
LT_LIKP = T_LIKP.
SORT LT_LIKP BY KUNNR.
ENDFORM.
" GET_KNA1_DATA
*&---------------------------------------------------------------------*
*&
Form POPULATE_FINAL_HEADER_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM POPULATE_FINAL_HEADER_DATA .
LOOP AT T_LIKP INTO W_LIKP.
W_FINAL_HEADER-VBELN = W_LIKP-VBELN.
W_FINAL_HEADER-ERDAT = W_LIKP-ERDAT.
W_FINAL_HEADER-ROUTE = W_LIKP-ROUTE.
W_FINAL_HEADER-BZIRK = W_LIKP-BZIRK.
W_FINAL_HEADER-XABLN = W_LIKP-XABLN.
READ TABLE T_TVROT INTO W_TVROT WITH KEY ROUTE = W_LIKP-ROUTE.
W_FINAL_HEADER-BEZEI = W_TVROT-BEZEI.
READ TABLE T_KNA1 INTO
W_FINAL_HEADER-NAME1_C
W_FINAL_HEADER-ORT01_C
W_FINAL_HEADER-PZTLZ =
W_FINAL_HEADER-TELF2 =
ARKTX
FROM LIPS INTO TABLE T_LIPS
FOR ALL ENTRIES IN T_LIKP
WHERE VBELN = T_LIKP-VBELN.
ENDFORM.
" GET_LIPS_DATA
*&---------------------------------------------------------------------*
*&
Form GET_MAKT_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_MAKT_DATA .
DATA LT_LIPS TYPE TABLE OF TY_LIPS.
LT_LIPS = T_LIPS.
SORT LT_LIPS BY MATNR.
DELETE ADJACENT DUPLICATES FROM LT_LIPS COMPARING MATNR.
SELECT MATNR
MAKTX FROM MAKT
INTO TABLE T_MAKT
FOR ALL ENTRIES IN T_LIPS
WHERE MATNR = T_LIPS-MATNR AND SPRAS = 'EN'.
ENDFORM.
" GET_MAKT_DATA
*&---------------------------------------------------------------------*
*&
Form GET_T001W_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_T001W_DATA .
DATA LT_LIPS TYPE TABLE OF TY_LIPS.
LT_LIPS = T_LIPS.
SORT LT_LIPS BY WERKS.
DELETE ADJACENT DUPLICATES FROM LT_LIPS COMPARING WERKS.
SELECT WERKS
NAME1
ORT01
FROM T001W INTO TABLE T_T001W
FOR ALL ENTRIES IN T_LIPS
WHERE WERKS = T_LIPS-WERKS.
ENDFORM.
" GET_T001W_DATA
*&---------------------------------------------------------------------*
*&
Form POPULATE_FINAL_ITEM_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM POPULATE_FINAL_ITEM_DATA .
ENDFORM.
" POPULATE_FINAL_ITEM_DATA
*&---------------------------------------------------------------------*
*&
Form DISPLAY_REPORT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_REPORT .
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
IS_REPREP_ID
=
I_BYPASSING_BUFFER
=
I_BUFFER_ACTIVE
=
IR_SALV_HIERSEQ_ADAPTER
=
IT_EXCEPT_QINFO
=
I_SUPPRESS_EMPTY_DATA
= ABAP_FALSE
IMPORTING
E_EXIT_CAUSED_BY_CALLER
=
ES_EXIT_CAUSED_BY_USER
=
TABLES
T_OUTTAB_HEADER
= T_FINAL_HEADER
T_OUTTAB_ITEM
= T_FINAL_ITEM
EXCEPTIONS
PROGRAM_ERROR
= 1
OTHERS
= 2
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM.
" DISPLAY_REPORT
*&---------------------------------------------------------------------*
*&
Form FIELD_CATALOG
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
*
-->P_0413 text
*
-->P_0414 text
*
-->P_0415 text
*
-->P_0416 text
*
-->P_0417 text
*----------------------------------------------------------------------*
FORM FIELD_CATALOG USING COLPOS
FNAME
TEXT
TABLENAME
TOTAL.
W_FCAT-COL_POS = COLPOS.
W_FCAT-FIELDNAME = FNAME.
W_FCAT-SELTEXT_M = TEXT.
W_FCAT-TABNAME = TABLENAME.
W_FCAT-DO_SUM = TOTAL.
APPEND W_FCAT TO T_FCAT.
ENDFORM.
" FIELD_CATALOG
*&---------------------------------------------------------------------*
*&
Form KEY_INFO
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM KEY_INFO .
W_KEYINFO-HEADER01 = 'VBELN'.
W_KEYINFO-ITEM01 = 'VBELN'.
ENDFORM.
" KEY_INFO
*&---------------------------------------------------------------------*
*&
Form SORT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM SORT .
W_SORT-FIELDNAME = 'VBELN'.
W_SORT-SUBTOT = 'X'.
APPEND W_SORT TO T_SORT.
ENDFORM.
" SORT