Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Interactive reporting

Former Member
0 Likes
401

REPORT Z_Interactive_report_1 NO STANDARD PAGE HEADING.

TABLES: LFA1, LFB1, BSIK.

DATA: BEGIN OF DOCTAB OCCURS 100,

BELNR LIKE BSIK-BELNR,

BUDAT LIKE BSIK-BUDAT,

GSBER LIKE BSIK-GSBER,

DMBTR LIKE BSIK-DMBTR,

END OF DOCTAB.

START-OF-SELECTION.

GET LFB1.

WRITE: LFA1-LIFNR, LFB1-BUKRS, (20) LFA1-NAME1, (20) LFA1-ORT01.

HIDE: LFA1-LIFNR, LFB1-BUKRS.

TOP-OF-PAGE DURING LINE-SELECTION.

WRITE: SY-LISEL.

ULINE. SKIP.

WRITE: 'COMPANY CODE:'(001), LFB1-BUKRS.

WRITE: / 'DOC. NO. POST.DATE BA LOCAL CURRENCY'(002).

ULINE /(45).

END-OF-SELECTION.

CLEAR LFA1-LIFNR.

AT PF13.

WRITE: 'PF13 SY-LSIND = ', SY-LSIND.

CHECK NOT LFA1-LIFNR IS INITIAL.

SELECT * FROM BSIK WHERE LIFNR = LFA1-LIFNR AND BUKRS EQ LFB1-BUKRS.

WRITE: / BSIK-BELNR, BSIK-BUDAT DD/MM/YYYY, BSIK-GSBER, 23 BSIK-DMBTR.

DOCTAB-BELNR = BSIK-BELNR.

DOCTAB-BUDAT = BSIK-BUDAT.

DOCTAB-GSBER = BSIK-GSBER.

DOCTAB-DMBTR = BSIK-DMBTR.

APPEND DOCTAB.

CLEAR DOCTAB.

ENDSELECT.

IF SY-SUBRC NE 0.

SKIP 5.

WRITE: '*** NO DOCUMENTS AVAILABLE. ***'(003).

ENDIF.

CLEAR LFA1-LIFNR.

AT PF14.

WRITE: 'AT PF14 SY-LSIND = ', SY-LSIND.

SY-LSIND = SY-LSIND - 1.

SORT DOCTAB BY BUDAT.

PERFORM DOCPRINT.

AT PF16.

WRITE: 'AT PF16 SY-LSIND = ', SY-LSIND.

SY-LSIND = SY-LSIND - 1.

SORT DOCTAB BY DMBTR.

PERFORM DOCPRINT.

FORM DOCPRINT.

LOOP AT DOCTAB.

WRITE: / DOCTAB-BELNR, DOCTAB-BUDAT DD/MM/YYYY, DOCTAB-GSBER,

23 DOCTAB-DMBTR.

ENDLOOP.

ENDFORM.

by: akshat

2 REPLIES 2
Read only

Former Member
0 Likes
372

Do like this:

set pf -status 'TST'

DOUBLE CLICK ON TST AND DEFINE STATUS.

THEN USE AT USER-COMMAND TO PERFORM ACTION..

Read only

Former Member
0 Likes
372

Hi,

see this example of interactive reports.

the highlighted part in the below program is important for interactive reports.

that is for creating menu in that u need to assign PICK as Tcode for function key F2.

then u can see ur secondary lists.and the limit for PFkey is from PF01-PF12.the last two numbers in PFnn indicates function key number in the key board(F01-F12).

REPORT ZBHREP3 LINE-COUNT 15(1) LINE-SIZE 75.

TABLES: SFLIGHT,ZEMP.

DATA VAR LIKE SFLIGHT-CONNID.

DATA ITAB LIKE SFLIGHT OCCURS 0 WITH HEADER LINE.

PARAMETERS NAME TYPE ZEMP-NAME DEFAULT 'BHARAT'.

WRITE: 25 NAME COLOR 6.

SELECT-OPTIONS CARRID1 FOR SFLIGHT-CARRID.

<b>SET PF-STATUS 'MENU'.</b>

SET TITLEBAR 'TIT'.

FORMAT HOTSPOT ON.

WRITE:/10 'AIRLINE CODE',25 'CONNECTION ID',40 'FLIGHT DATE'.

SELECT * FROM SFLIGHT WHERE CARRID IN CARRID1.

WRITE:/10 SFLIGHT-CARRID,25 SFLIGHT-CONNID,40 SFLIGHT-FLDATE.

HIDE SFLIGHT-CONNID.

ENDSELECT.

*END-OF-PAGE.

END-OF-PAGE.

WRITE:/64 'P.NO:',SY-PAGNO.

*TOP-OF-PAGE.

TOP-OF-PAGE.

WRITE:/ 'THIS IS MY FIRST REPORTS PROGRAM.'.

*START-OF-SELECTION.

START-OF-SELECTION.

DO 5 TIMES.

WRITE:/ SY-INDEX.

ENDDO.

*THESE 3 STATEMENTS ARE FOR THE END-OF-PAGE CONTENTS IN LAST PAGE.

DATA M TYPE I.

M = SY-LINCT - SY-LINNO - 1.

SKIP M.

*AT LINE-SELECTION.

AT LINE-SELECTION.

CASE SY-LSIND.

WHEN '1'.

  • READ LINE SY-LILLI FIELD VALUE SFLIGHT-CONNID INTO VAR.

  • SELECT * FROM SFLIGHT INTO CORRESPONDING FIELDS OF ITAB WHERE

  • CONNID = VAR.

  • WRITE:/ ITAB-CARRID,ITAB-PLANETYPE,ITAB-PAYMENTSUM.

  • ENDSELECT.

  • WRITE:/ VAR.

SELECT * FROM SFLIGHT INTO CORRESPONDING FIELDS OF ITAB WHERE

CONNID = SY-LISEL+24(4).

WRITE:/ ITAB-CARRID,ITAB-PLANETYPE,ITAB-PAYMENTSUM.

ENDSELECT.

SKIP 1.

WRITE:/ SY-LISEL+24(4).

  • SELECT * FROM SFLIGHT INTO CORRESPONDING FIELDS OF ITAB WHERE

  • CONNID = SFLIGHT-CONNID.

  • WRITE:/ ITAB-CARRID,ITAB-PLANETYPE,ITAB-PAYMENTSUM.

  • ENDSELECT.

  • WRITE:/ SFLIGHT-CONNID.

WHEN '2'.

WRITE:/ SY-LILLI.

WHEN '3'.

WRITE 😕 'BHARAT'.

ENDCASE.

<b>reward if helpful</b>

rgds,

bharat.