Sunteți pe pagina 1din 5

REPORT ZINTERACTIVE_ALV_FI.

TABLES bkpf.
***************************************************data declaration
TYPES: BEGIN OF tymanas,
bukrs TYPE bukrs,
belnr type bkpf-belnr,
GJAHR type GJAHR,
END OF tymanas.

DATA : it_m TYPE STANDARD TABLE OF tymanas,


wa_bkpf TYPE tymanas,

it_fcat type slis_t_fieldcat_alv,


wa_fcat TYPE slis_fieldcat_alv,
wa_layout type slis_layout_alv,
it_event TYPE slis_t_event,
wa_event like LINE OF it_event,
it_header TYPE slis_t_listheader,
wa_header like LINE OF it_header.
* wa_header TYPE slis_listheader,

DATA: di_titel TYPE string ,


txt1 TYPE char30.

DATA: manas TYPE char1.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.


SELECT-OPTIONS : i_belnr for bkpf-belnr OBLIGATORY.
SELECT-OPTIONS : i_gjahr for bkpf-gjahr OBLIGATORY.
SELECTION-SCREEN end of BLOCK b1.

***********************************************************start of selection

SELECT bukrs belnr gjahr from bkpf into TABLE it_m


WHERE bukrs = '0001'
AND belnr in i_belnr
AND gjahr in i_gjahr.

* di_titel = 'Check Box'.


* di_txt1 = 'U want see details'.

CALL FUNCTION 'POPUP_TO_INFORM'


EXPORTING
TITEL = 'Check Box'
TXT1 = txt1
TXT2 = 'please click OK'
* TXT3 = ' '
* TXT4 = ' '
.

*********************************************************fieldcatalog designing
wa_fcat-COL_POS = '1'.
wa_fcat-FIELDNAME = 'BELNR'.
wa_fcat-SELTEXT_L = 'Document Number'.
wa_fcat-HOTSPOT = 'X'.
wa_fcat-NO_ZERO = 'X'.
APPEND wa_fcat to it_fcat.
CLEAR wa_fcat.

wa_fcat-COL_POS = '2'.
wa_fcat-FIELDNAME = 'GJAHR'.
wa_fcat-SELTEXT_L = 'Posting year'.
APPEND wa_fcat to it_fcat.
CLEAR wa_fcat.

** wa_fcat-COL_POS = '3'.
** wa_fcat-FIELDNAME = 'std_sec'.
** wa_fcat-SELTEXT_L = 'student section'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.
**
** wa_fcat-COL_POS = '4'.
** wa_fcat-FIELDNAME = 'std_name'.
** wa_fcat-SELTEXT_L = 'student name'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.
**
** wa_fcat-COL_POS = '5'.
** wa_fcat-FIELDNAME = 'std_adress'.
** wa_fcat-SELTEXT_L = 'student adress'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.
**
** wa_fcat-COL_POS = '6'.
** wa_fcat-FIELDNAME = 'std_caste'.
** wa_fcat-SELTEXT_L = 'student caste'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.
**
** wa_fcat-COL_POS = '7'.
** wa_fcat-FIELDNAME = 'std_city'.
** wa_fcat-SELTEXT_L = 'student city'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.
**
** wa_fcat-COL_POS = '8'.
** wa_fcat-FIELDNAME = 'std_country'.
** wa_fcat-SELTEXT_L = 'student country'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.
**
** wa_fcat-COL_POS = '9'.
** wa_fcat-FIELDNAME = 'std_pin_code'.
** wa_fcat-SELTEXT_L = 'student pin code'.
** APPEND wa_fcat to it_fcat.
** CLEAR wa_fcat.

wa_layout-ZEBRA = 'X'.
wa_layout-COLWIDTH_OPTIMIZE = 'X'.
wa_layout-edit = 'X'.
wa_layout-no_vline = 'X'.
wa_layout-no_hline = 'X'.

*****************************************************display the data

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'


* EXPORTING
* I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = it_event.
* EXCEPTIONS
* LIST_TYPE_WRONG = 1
* OTHERS = 2
* .
*IF SY-SUBRC <> 0.
** Implement suitable error handling here
*ENDIF.

READ TABLE it_event INTO wa_event with key name = 'TOP-OF-PAGE'.

wa_event-form = 'FROM_TOP_OF_PAGE'.
MODIFY it_event FROM wa_event INDEX sy-tabix.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'


EXPORTING
I_CALLBACK_PROGRAM = sy-repid
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
IS_LAYOUT = wa_layout
IT_FIELDCAT = it_fcat
* it_events = it_event
TABLES
T_OUTTAB = it_m.

IF SY-SUBRC <> 0.
MESSAGE 'alv output not possible' type 'E'.
ENDIF.

FORM FROM_TOP_OF_PAGE.

wa_header-typ = 'H'.
wa_header-key = 'H'.
wa_header-info = 'First ALV Interactive Report'.
APPEND wa_header to it_header.
CLEAR wa_header.

wa_header-typ = 'S'.
wa_header-key = 'USERNAME'.
wa_header-info = 'SY-UNAME'.
APPEND wa_header to it_header.
CLEAR wa_header.

wa_header-typ = 'A'.
wa_header-key = 'DATE'.
wa_header-info = 'SY-DATUM'.
APPEND wa_header to it_header.
CLEAR wa_header.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = it_header.
* I_LOGO =
* I_END_OF_LIST_GRID =
* I_ALV_FORM =
.

ENDFORM.

form USER_COMMAND using r_ucomm TYPE sy-ucomm


r_selfield TYPE slis_selfield.

CASE r_ucomm.

when '&IC1'.

* BREAK-POINT.

CALL FUNCTION 'POPUP_TO_CONFIRM'


EXPORTING
TITLEBAR = 'Please Confirm'
* DIAGNOSE_OBJECT = ' '
TEXT_QUESTION = 'Please click ok or Exit'
TEXT_BUTTON_1 = 'OK'(001)
* ICON_BUTTON_1 = ' '
TEXT_BUTTON_2 = 'Exit'(002)
* ICON_BUTTON_2 = ' '
* DEFAULT_BUTTON = '1'
* DISPLAY_CANCEL_BUTTON = 'X'
* USERDEFINED_F1_HELP = ' '
* START_COLUMN = 25
* START_ROW = 6
* POPUP_TYPE =
* IV_QUICKINFO_BUTTON_1 = ' '
* IV_QUICKINFO_BUTTON_2 = ' '
IMPORTING
ANSWER = manas
* TABLES
* PARAMETER =
* EXCEPTIONS
* TEXT_NOT_FOUND = 1
* OTHERS = 2
.
IF SY-SUBRC <> 0.
MESSAGE 'FM is not executing' TYPE 'I' DISPLAY LIKE 'E'.
ENDIF.

IF manas = '1'.

READ TABLE it_m INTO wa_bkpf INDEX r_selfield-tabindex.


if sy-subrc = 0.

SET PARAMETER ID 'BLN' FIELD wa_bkpf-belnr.


SET PARAMETER ID 'BUK' FIELD wa_bkpf-bukrs.
SET PARAMETER ID 'GJR' FIELD wa_bkpf-gjahr.

CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.

* SHIFT wa_zstd_details-std_id LEFT DELETING LEADING '0'.

** SELECT * FROM zstd_remarks


** INTO TABLE it_zstd_remarks
** WHERE std_id = wa_zstd_details-std_id.
**
** REFRESH it_fcat[].
** CLEAR wa_fcat.
** wa_fcat-COL_POS = '1'.
** wa_fcat-FIELDNAME = 'STD_ID'.
** wa_fcat-SELTEXT_L ='student id'.
** APPEND wa_fcat to it_fcat.
**
** CLEAR wa_fcat.
** wa_fcat-COL_POS = '2'.
** wa_fcat-FIELDNAME = 'STD_TOTAL_MARKS'.
** wa_fcat-SELTEXT_L ='student total marks'.
** APPEND wa_fcat to it_fcat.
**
** CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
** EXPORTING
**
** IS_LAYOUT = wa_layout
** IT_FIELDCAT = it_fcat
**
** TABLES
** T_OUTTAB = it_zstd_remarks.

endif.

ELSEIF manas = '2'.

MESSAGE 'Exit from program' TYPE 'I'.


LEAVE PROGRAM.

ENDIF.

endcase.

endform.

S-ar putea să vă placă și