Application Development 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: 

Interactive Report

Former Member
0 Kudos

Hi Friends,

plz anyone can post me some example of interactive report.

Thanks in advane,

Sheethal.

1 ACCEPTED SOLUTION

SantoshKallem
Active Contributor
0 Kudos

search with key 'interactive report' in this forum.

u will get it.

regards.

santhosh

4 REPLIES 4

SantoshKallem
Active Contributor
0 Kudos

search with key 'interactive report' in this forum.

u will get it.

regards.

santhosh

ferry_lianto
Active Contributor
0 Kudos

Hi,

Please check this link for sample interactive report.

http://www.erpgenie.com/abap/ireports.htm

Regards,

Ferry Lianto

former_member387317
Active Contributor
0 Kudos

Hi sheethal,

*********************************************************************************

Here i am sending one example and some links to follow...

report zmjud001 no standard page heading line-size 85 line-count 50.

  • DATA /TABLES DECLARATION*

tables: eban.

data: prog_nam(8).

data: begin of pur_req occurs 100,

ekgrp like eban-ekgrp,

werks like eban-werks,

banfn like eban-banfn,

bnfpo like eban-bnfpo,

bsart like eban-bsart,

estkz like eban-estkz,

matnr like eban-matnr,

menge like eban-menge,

meins like eban-meins,

numb(3) type n.

data: end of pur_req.

  • THE REPORT HEADER

prog_nam = sy-repid.

top-of-page.

perform header_write.

  • SELECTION

start-of-selection.

pur_req-numb = 1.

  • SELECT ONLY THOSE FIELDS THAT WILL BE USED FROM THE TABLE EBAN, AND ONLY

*THE FIRST100 RECORDS OF THE THE PLANT 'PL01'

select banfn bnfpo bsart ekgrp matnr werks menge meins frgdt estkz

into corresponding fields of eban from eban up to 100 rows

where bsart = 'NB' "document type 'NB' = purchase requisition

and werks = 'PL01'

and statu = 'N' "processing status

and loekz = ' '. "deletion indicator

  • THE SELECTED RECORDS SHOULD BE APPENDED TO INTERNAL TABLE 'PUR_REQ'

pur_req-banfn = eban-banfn.

pur_req-matnr = eban-matnr.

pur_req-werks = eban-werks.

pur_req-ekgrp = eban-ekgrp.

pur_req-bnfpo = eban-bnfpo.

pur_req-bsart = eban-bsart.

pur_req-menge = eban-menge.

pur_req-meins = eban-meins.

pur_req-estkz = eban-estkz.

append pur_req.

pur_req-numb = pur_req-numb + 1.

endselect.

  • CHECK WHETHER THE TABLE EBAN CONTAINS ANY PURCHASE REQUISITIONS

if sy-subrc ne 0.

write: / 'No Purchase Requisition found.'.

endif.

  • PROCESS THE INTERNAL TABLE; WRITE OUT THE REQUIRED FIELDS AND HIDE THE

*FIELDS YOU ARE GOING TO USE LATER

loop at pur_req.

write: /1 pur_req-numb, 9 pur_req-banfn, 21 pur_req-bnfpo, 31 pur_req-bsart, 41 pur_req-matnr,

61 pur_req-menge unit pur_req-meins, 82 pur_req-meins.

hide: pur_req-matnr, pur_req-werks, pur_req-banfn.

endloop.

clear pur_req-banfn. clear pur_req-matnr. clear pur_req-werks.

  • IN THE MENU PAINTER (SE41) CREATE A STATUS TO YOUR PROGRAM. HERE YOU CAN

*DEFINE THE PUSH-BUTTON

set pf-status 'basic'.

  • CHOOSE A REQUISITION (WITH DOUBLE CLICKING OR PUSH-BUTTON) IN THE LIST! THE

*PURCHASE REQUISITION IS GOING TO COME UP

at line-selection.

if pur_req-banfn <> space.

set parameter id 'BAN' field pur_req-banfn. " parameter id for pruchase req. number

call transaction 'ME52' and skip first screen. "trans. code 'ME52': Change Purchase Requis.

clear pur_req-banfn. clear pur_req-matnr.

clear pur_req-werks.

endif.

  • FORM THE HEADER

form header_write.

write: / prog_nam, 32 'FUN-FACTORY',

/ 'Purch.Gr.:', pur_req-ekgrp, 26 'Purchase Requisition List',

61 'As Of Date:', 75 sy-datum,

/ 'Plant:', pur_req-werks, 61 'Page:', 75 sy-pagno.

uline.

write: / text-001,

/ text-002.

uline.

endform.

NOTES:

1. PUSH-BUTTON DEFINITION (SE11)

In the Menu Painter a status must be created where you can maintain the function keys

2. MAINTAIN THE TEXT ELEMENT TO THE HEADER OF THE LIST

(SE38 choose the object component 'TEXT ELEMENTS' at the first screen, then the'TEXT SYMBOLS'. Here you can add a number (I.E. 001) to 'TEXT SYMBOL' and write the header title into the text field like this:

001 Numb.__Requisition__Item___Document_____Material_________________Quantity_Unit_of

002 _________Number_____Num______Type__________________________________Measure

*************************************************************************************

Also Refer this link...

https://forums.sdn.sap.com/click.jspa?searchID=495487&messageID=2815531

https://forums.sdn.sap.com/click.jspa?searchID=495487&messageID=2773037

***********************************************************************************

Regards.

ilesh Nandaniya.

Hope this will help you out...

Former Member
0 Kudos

Hi,

Check this example..

TYPE-POOLS: slis.

DATA: gt_fieldcat TYPE slis_t_fieldcat_alv.

DATA: BEGIN OF wa_ekko,

ebeln like ekko-ebeln,

ekorg like ekko-ekorg,

ekgrp like ekko-ekgrp,

END OF wa_ekko.

DATA: v_repid TYPE syrepid.

v_repid = sy-repid.

DATA it_ekko LIKE STANDARD TABLE OF wa_ekko WITH HEADER LINE.

SELECT * UP TO 100 ROWS

FROM ekko

INTO CORRESPONDING FIELDS OF TABLE it_ekko.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = v_repid

i_internal_tabname = 'WA_EKKO'

i_inclname = v_repid

CHANGING

ct_fieldcat = gt_fieldcat.

  • have hotspot for a PO.

DATA: s_fieldcat LIKE LINE OF gt_fieldcat.

s_fieldcat-hotspot = 'X'.

MODIFY gt_fieldcat FROM s_fieldcat TRANSPORTING hotspot

WHERE fieldname = 'EBELN'.

  • Pass the program.

v_repid = sy-repid.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

i_callback_program = v_repid

it_fieldcat = gt_fieldcat

i_callback_user_command = 'USER_COMMAND'

TABLES

t_outtab = it_ekko.

----


  • FORM display_detail *

----


  • ........ *

----


  • --> UCOMM *

  • --> SELFIELD *

----


FORM user_command USING ucomm LIKE sy-ucomm

selfield TYPE slis_selfield.

IF ucomm = '&IC1'.

READ TABLE it_ekko INDEX selfield-tabindex.

IF sy-subrc = 0.

SET PARAMETER ID 'BES' FIELD it_ekko-ebeln.

CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.

ENDIF.

ENDIF.

ENDFORM.

Thanks,

Naren