You are on page 1of 4

* -----------------------------------------Classical Reports(Normal and interact

ive Reports)---------------------------------TABLES : VBAK.


TYPES : BEGIN OF TY_SALES,
VBELN TYPE VBAK-VBELN,
ERDAT TYPE VBAK-ERDAT,
ERNAM TYPE VBAK-ERNAM,
NETWR TYPE VBAK-NETWR,
END OF TY_SALES.
TYPES : BEGIN OF TY_VALUE,
VBELN TYPE VBAK-VBELN,
END OF TY_VALUE.
TYPES : BEGIN OF ty_help,
help(120) TYPE c,
end of ty_help.
data : it_help TYPE TABLE OF ty_help WITH HEADER LINE.

DATA : WA TYPE TY_SALES,


IT TYPE TABLE OF TY_SALES.
DATA : IT_VALUE TYPE TABLE OF TY_VALUE.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-002.
SELECTION-SCREEN PUSHBUTTON /1(10) ORDER USER-COMMAND SALE1.
PARAMETERS : r1 RADIOBUTTON GROUP g1 USER-COMMAND u1.
SELECT-OPTIONS : S_VBELN1 FOR VBAK-VBELN MODIF ID abc.
PARAMETERS : p_org TYPE vbak-vkorg MODIF ID abc.
PARAMETERS : r2 RADIOBUTTON GROUP g1.
SELECT-OPTIONS : S_VBELN2 FOR VBAK-VBELN MODIF ID xyz.
PARAMETERS
: p_VKGRP TYPE vbak-VKGRP MODIF ID xyz.
SELECTION-SCREEN END OF BLOCK b1.
data : n TYPE i.
n = sy-linct - sy-linno.
INITIALIZATION.
ORDER = 'ORDER'.
p_VKGRP = 'ABC'.
at SELECTION-SCREEN OUTPUT.
loop at screen.
if screen-group1 = 'ABC'.
IF R2 = 'X'.
SCREEN-ACTIVE = 0.
ELSE.
SCREEN-ACTIVE = 1..

ENDIF.
ENDIF.
IF SCREEN-GROUP1 = 'XYZ'.
IF R1 = 'X'.
SCREEN-ACTIVE = 0.
ELSE.
SCREEN-ACTIVE = 1.
ENDIF.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
AT SELECTION-SCREEN.
SELECT VBELN ERDAT ERNAM NETWR
FROM VBAK
INTO TABLE IT
WHERE VBELN IN S_VBELN1.
IF SY-SUBRC NE 0.
MESSAGE E001(TRF) WITH 'Error'.
ENDIF.
CASE SY-UCOMM.
WHEN 'SALE1'.
CALL TRANSACTION 'VA03'.
ENDCASE.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_VBELN1-LOW.
SELECT VBELN
FROM VBAK
INTO TABLE IT_VALUE
UP TO 20 ROWS.

IF SY-SUBRC EQ 0.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
*
DDIC_STRUCTURE
= ' '
RETFIELD
= 'VBELN'
*
PVALKEY
= ' '
DYNPPROG
= SY-REPID
*
DYNPNR
= ' '
*
DYNPROFIELD
= ' '
*
STEPL
= 0
*
WINDOW_TITLE
=
*
VALUE
= ' '
VALUE_ORG
= 'S'
*
MULTIPLE_CHOICE
= ' '
*
DISPLAY
= ' '
*
CALLBACK_PROGRAM
= ' '
*
CALLBACK_FORM
= ' '
*
CALLBACK_METHOD
=
*
MARK_TAB
=
*
IMPORTING
*
USER_RESET
=
TABLES
VALUE_TAB
= IT_VALUE

*
*
*
*
*
*
*

FIELD_TAB
=
RETURN_TAB
=
DYNPFLD_MAPPING
=
EXCEPTIONS
PARAMETER_ERROR
= 1
NO_VALUES_FOUND
= 2
OTHERS
= 3
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
ENDIF.
AT SELECTION-SCREEN ON HELP-REQUEST FOR S_VBELn1-LOW.
it_help-help = 'Help me'.
APPEND it_help.
it_help-help = 'Help me1'.
APPEND it_help.
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY_OK'
EXPORTING
ENDPOS_COL
= 5
ENDPOS_ROW
= 5
STARTPOS_COL
= 1
STARTPOS_ROW
= 1
TITLETEXT
= 'help'
* IMPORTING
*
CHOISE
=
TABLES
VALUETAB
= it_help[]
EXCEPTIONS
BREAK_OFF
= 1
OTHERS
= 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.

START-OF-SELECTION.
SELECT VBELN ERDAT ERNAM NETWR
FROM VBAK
INTO TABLE IT UP TO 300 rows.

END-OF-SELECTION.
LOOP AT IT INTO WA.
WRITE :/ WA-VBELN, WA-ERDAT, WA-ERNAM,WA-NETWR.
at LAST.
RESERVE n lines.

ENDAT.
hide wa.
ENDLOOP.
TOP-OF-PAGE.
WRITE :/ 'header'.

END-OF-PAGE.
ULINE.
WRITE :/ 'footer'.

You might also like