Vous êtes sur la page 1sur 3

*&---------------------------------------------------------------------*

*& Report ZSN_AVYA_SF


*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT ZAB_SMARTFORM_TEST.

TABLES: VBRK,VBRP,MAKT.

TYPES: BEGIN OF TY_JOIN,


VBELN TYPE VBRK-VBELN,
FKDAT TYPE VBRK-FKDAT,
FKART TYPE VBRK-FKART,
POSNR TYPE VBRP-POSNR,
MATNR TYPE VBRP-MATNR,
FKIMG TYPE VBRP-FKIMG,
MEINS TYPE VBRP-MEINS,
NETWR TYPE VBRP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_JOIN.

TYPES: BEGIN OF TY_FINAL,


VBELN TYPE VBRK-VBELN,
FKDAT TYPE VBRK-FKDAT,
FKART TYPE VBRK-FKART,
POSNR TYPE VBRP-POSNR,
MATNR TYPE VBRP-MATNR,
FKIMG TYPE VBRP-FKIMG,
MEINS TYPE VBRP-MEINS,
NETWR TYPE VBRP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_FINAL.

DATA: IT_JOIN TYPE STANDARD TABLE OF TY_JOIN,


IT_FINAL TYPE STANDARD TABLE OF TY_FINAL,
WA_JOIN TYPE TY_JOIN,
WA_FINAL TYPE TY_FINAL.

DATA: FMNAME TYPE RS38L_FNAM,


SF_NAME TYPE TDSFNAME VALUE 'ZAB_TEST'.

SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.


PARAMETERS: P_VBELN TYPE VBRK-VBELN.
SELECTION-SCREEN: END OF BLOCK B1.

START-OF-SELECTION.
PERFORM GET.
PERFORM PROCESS.
PERFORM DISPLAY.
*&---------------------------------------------------------------------*
*& Form GET
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM GET .
SELECT A~VBELN
A~FKDAT
A~FKART
B~POSNR
B~MATNR
B~FKIMG
B~MEINS
B~NETWR
C~MAKTX
FROM VBRK AS A INNER JOIN VBRP AS B ON B~VBELN = A~VBELN INNER JOIN MAKT AS C
ON C~MATNR = B~MATNR
INTO TABLE IT_JOIN
WHERE A~VBELN EQ P_VBELN.

ENDFORM. " GET


*&---------------------------------------------------------------------*
*& Form PROCESS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM PROCESS .
LOOP AT IT_JOIN INTO WA_JOIN.
WA_FINAL-VBELN = WA_JOIN-VBELN.
WA_FINAL-FKDAT = WA_JOIN-FKDAT.
WA_FINAL-FKART = WA_JOIN-FKART.
WA_FINAL-POSNR = WA_JOIN-POSNR.
WA_FINAL-MATNR = WA_JOIN-MATNR.
WA_FINAL-FKIMG = WA_JOIN-FKIMG.
WA_FINAL-MEINS = WA_JOIN-MEINS.
WA_FINAL-NETWR = WA_JOIN-NETWR.
WA_FINAL-MAKTX = WA_JOIN-MAKTX.

APPEND WA_FINAL TO IT_FINAL.

ENDLOOP.
SORT IT_FINAL.
DELETE ADJACENT DUPLICATES FROM IT_FINAL.

ENDFORM. " PROCESS


*&---------------------------------------------------------------------*
*& Form DISPLAY
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM DISPLAY .
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = SF_NAME
IMPORTING
FM_NAME = FMNAME.

CALL FUNCTION FMNAME


EXPORTING
LV_VBELN = P_VBELN

TABLES
IT_FINAL = IT_FINAL
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
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

Vous aimerez peut-être aussi