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

reports

Akhil_Sun
Participant
0 Likes
771

hai, i am new to the abap can you plz send me report program

5 REPLIES 5
Read only

Former Member
0 Likes
668

Hello,

Access the transaction ABAPDOCU there's a lot of examples of ABAP programs.

Regards.

Read only

Former Member
0 Likes
668

Hi,

Here I am sending Interactive report :

REPORT z50871sd_rept_interactiverept NO STANDARD PAGE HEADING.

----


  • STRUCTURE DECLARATIONS

  • INTERNAL TABLE DECLARATIONS

  • WORKAREA DECLARATIONS

----


TYPES : BEGIN OF st_kna1,

kunnr TYPE kna1-kunnr, "CUSTOMER NUMBER

name1 TYPE kna1-name1, "CUSTOMER NAME

END OF st_kna1.

TYPES : BEGIN OF st_vbak,

kunnr TYPE kna1-kunnr,

vbeln TYPE vbak-vbeln, "SALES DOCUMENT NUMBER

erdat TYPE vbak-erdat, "DATE ON WHICH THE RECORD WAS CREATED

audat TYPE vbak-audat, "DOCUMENT DATE

auart TYPE vbak-auart, "SALES DOCUMENT TYPE

ernam TYPE vbak-ernam, "NAME OF PERSON WHO CREATED THE OBJECT.

augru TYPE vbak-augru, "ORDER REASON

END OF st_vbak.

TYPES : BEGIN OF st_vbap,

vbeln TYPE vbak-vbeln,

posnr TYPE vbap-posnr, "SALES DOCUMENT ITEM

matnr TYPE vbap-matnr, "MATERIAL NUMBER

charg TYPE vbap-charg, "BATCH NUMBER

matkl TYPE vbap-matkl, "MATERIAL GROUP

posar TYPE vbap-posar, "ITEM TYPE

END OF st_vbap.

DATA : it_kna1 TYPE STANDARD TABLE OF st_kna1,

it_vbak TYPE STANDARD TABLE OF st_vbak,

it_vbap TYPE STANDARD TABLE OF st_vbap,

wa_kna1 TYPE st_kna1,

wa_vbak TYPE st_vbak,

wa_vbap TYPE st_vbap.

DATA : v_fld(15),

v_kunnr TYPE kna1-kunnr,

v_vbeln TYPE vbak-vbeln.

----


  • SELECT-OPTIONS

  • PARAMETERS

----


SELECT-OPTIONS so_kunnr FOR v_kunnr. "CUSTOMER NUMBER

PARAMETERS : p_max TYPE i. "NUMBER OF HITS

----


  • START-OF-SELECTION

----


START-OF-SELECTION.

PERFORM get_customerdata.

SET PF-STATUS 'MENU1'.

----


  • AT LINE-SELECTION

----


AT LINE-SELECTION.

IF sy-lsind = 1.

PERFORM get_salesheader.

ELSEIF sy-lsind = 2.

PERFORM get_salesitemdata.

ENDIF.

----


  • AT USER-COMMAND

----


AT USER-COMMAND.

CASE sy-ucomm.

WHEN 'DISP'.

PERFORM get_salesheader.

WHEN 'ITEM'.

PERFORM get_salesitemdata.

WHEN 'VA03'.

SET PARAMETER ID 'AUN' FIELD wa_vbak-vbeln.

CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.

ENDCASE.

----


  • TOP-OF-PAGE

----


TOP-OF-PAGE.

ULINE AT /1(56).

WRITE : /1 sy-vline ,

2(15) text-004 COLOR 1 ,

sy-vline ,

20(35) text-005 COLOR 1 ,

sy-vline.

ULINE AT /1(56).

----


  • TOP-OF-PAGE DURING LINE-SELECTION.

----


TOP-OF-PAGE DURING LINE-SELECTION.

CASE sy-lsind.

WHEN 1.

PERFORM get_topofpage1.

WHEN 2.

PERFORM get_topofpage2.

ENDCASE.

----


  • FORM GET_CUSTOMERDATA

----


FORM get_customerdata.

SELECT kunnr name1

FROM kna1

INTO TABLE it_kna1

UP TO p_max ROWS

WHERE kunnr IN so_kunnr.

IF sy-subrc EQ 0.

LOOP AT it_kna1 INTO wa_kna1.

WRITE : / sy-vline,

2(15) wa_kna1-kunnr ,

sy-vline ,

20 wa_kna1-name1,

sy-vline.

HIDE : wa_kna1-kunnr , wa_kna1-name1.

CLEAR wa_kna1.

ENDLOOP.

ULINE AT : /1(56).

ELSE.

MESSAGE w000(z50871msg).

ENDIF.

ENDFORM. "GET_CUSTOMERDATA

----


  • FORM GET_SALESHEADER

----


FORM get_salesheader.

SET PF-STATUS 'MENU2'.

GET CURSOR FIELD v_fld VALUE v_kunnr.

IF v_fld = 'WA_KNA1-KUNNR'.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = v_kunnr

IMPORTING

output = v_kunnr.

SELECT kunnr vbeln erdat audat auart ernam augru

FROM vbak

INTO TABLE it_vbak

WHERE kunnr = v_kunnr.

IF sy-subrc EQ 0.

LOOP AT it_vbak INTO wa_vbak.

WRITE : / sy-vline ,

2(22) wa_vbak-vbeln ,

sy-vline,

27(25) wa_vbak-erdat ,

sy-vline ,

55(15) wa_vbak-audat ,

sy-vline ,

73(15) wa_vbak-auart ,

sy-vline,

91(16) wa_vbak-ernam ,

sy-vline,

109(13) wa_vbak-augru,

123 sy-vline.

HIDE : wa_vbak-vbeln.

CLEAR wa_vbak.

ENDLOOP.

ULINE AT : /1(123).

ELSE.

MESSAGE i015(z50871msg).

ENDIF.

ELSE.

MESSAGE i013(z50871msg).

ENDIF.

ENDFORM. "GET_SALESHEADER

----


  • FORM GET_SALESITEMDATA

----


FORM get_salesitemdata.

SET PF-STATUS space.

GET CURSOR FIELD v_fld VALUE v_vbeln.

IF v_fld = 'WA_VBAK-VBELN'.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = v_vbeln

IMPORTING

output = v_vbeln.

SELECT vbeln posnr matnr charg matkl posar

FROM vbap

INTO TABLE it_vbap

WHERE vbeln = v_vbeln.

LOOP AT it_vbap INTO wa_vbap.

WRITE : /1 sy-vline,

2(13) wa_vbap-posnr ,

sy-vline,

18(18) wa_vbap-matnr ,

sy-vline,

40(13) wa_vbap-charg ,

sy-vline,

56(16) wa_vbap-matkl ,

sy-vline,

75 wa_vbap-posar,

112 sy-vline.

CLEAR wa_vbap.

ENDLOOP.

ULINE AT : /1(112).

ELSE.

MESSAGE i014(z50871msg).

ENDIF.

ENDFORM. "GET_SALESITEMDATA

----


  • FORM GET_TOPOFPAGE1

----


FORM get_topofpage1.

ULINE AT : /1(123).

WRITE : / sy-vline ,

2 text-000 ,

wa_kna1-kunnr ,

75 text-001 ,

wa_kna1-name1,

123 sy-vline.

ULINE AT : /1(123).

WRITE : / sy-vline ,

2(22) text-006 COLOR 1,

sy-vline,

27(25) text-007 COLOR 1 ,

sy-vline ,

55(15) text-008 COLOR 1 ,

sy-vline ,

73(15) text-009 COLOR 1 ,

sy-vline,

91(16) text-010 COLOR 1 ,

sy-vline,

109(13) text-011 COLOR 1,

123 sy-vline.

ULINE AT : /1(123).

ENDFORM. "GET_TOPOFPAGE1

----


  • FORM GET_TOPOFPAGE2

----


FORM get_topofpage2.

ULINE AT : /1(112).

WRITE : / sy-vline ,

2 text-000 ,

wa_kna1-kunnr ,

35 text-001 ,

wa_kna1-name1 ,

85 text-003 ,

wa_vbak-vbeln ,

112 sy-vline.

ULINE AT : /1(112).

WRITE : /1 sy-vline,

2(13) text-012 COLOR 1,

sy-vline,

18(18) text-013 COLOR 1 ,

sy-vline,

40(13) text-014 COLOR 1 ,

sy-vline,

56(16) text-015 COLOR 1 ,

sy-vline,

75 text-016 COLOR 1 ,

112 sy-vline.

ULINE AT : /1(112).

ENDFORM. "GET_TOPOFPAGE2

Classical Report :

REPORT z50871sd_rept_internaltable.

----


  • STRUCTURE DECLARATION

  • INTERNAL TABLE DECLARATION

  • WORK AREA DECLARATION

----


TYPES : BEGIN OF st_knc1,

kunnr TYPE knc1-kunnr, "Customer Number

bukrs TYPE knc1-bukrs, "Company Code

um01s TYPE knc1-um01s, "Total of the Debit Postings for the Month

END OF st_knc1.

DATA : it_knc1 TYPE STANDARD TABLE OF st_knc1,

wa_knc1 TYPE st_knc1 .

----


  • PARAMETER DECLARATION

----


PARAMETER p_x TYPE i. "NUMBER OF RECORDS

----


  • START-OF-SELECTION

----


START-OF-SELECTION.

SELECT kunnr

bukrs

um01s

FROM knc1

INTO TABLE it_knc1

UP TO p_x ROWS.

IF sy-subrc NE 0.

MESSAGE e000(z50871msg).

ENDIF.

----


  • APPEND

----


wa_knc1-kunnr = 2165.

wa_knc1-bukrs = 1500.

wa_knc1-um01s = '5000.00'.

APPEND wa_knc1 TO it_knc1.

wa_knc1-kunnr = 3165.

wa_knc1-bukrs = 2500.

wa_knc1-um01s = '5000.00'.

APPEND wa_knc1 TO it_knc1.

----


  • COLLECT

----


wa_knc1-kunnr = 2165.

wa_knc1-bukrs = 1500.

wa_knc1-um01s = '6000.00'.

COLLECT wa_knc1 INTO it_knc1.

CLEAR wa_knc1.

wa_knc1-kunnr = 4165.

wa_knc1-bukrs = 1500.

wa_knc1-um01s = '6000.00'.

COLLECT wa_knc1 INTO it_knc1.

CLEAR wa_knc1.

----


  • MODIFY

----


wa_knc1-kunnr = 6165.

wa_knc1-bukrs = 1600.

wa_knc1-um01s = '12000.50'.

MODIFY it_knc1 FROM wa_knc1 INDEX 1.

LOOP AT it_knc1 INTO wa_knc1 .

WRITE:/ wa_knc1-kunnr,

wa_knc1-bukrs,

wa_knc1-um01s CURRENCY 'INR'.

ENDLOOP.

----


  • INSERT

----


wa_knc1-kunnr = 5422.

wa_knc1-bukrs = 1200.

wa_knc1-um01s = '2000.50'.

INSERT wa_knc1 INTO it_knc1 INDEX 4.

SKIP 4.

WRITE : text-000 COLOR 1.

ULINE.

----


  • DELETE

----


DELETE it_knc1 INDEX 2.

DELETE ADJACENT DUPLICATES FROM it_knc1.

LOOP AT it_knc1 INTO wa_knc1 .

WRITE:/ wa_knc1-kunnr,

wa_knc1-bukrs,

wa_knc1-um01s CURRENCY 'INR'.

ENDLOOP.

Regards

Sandeep Reddy

Read only

Former Member
0 Likes
668

Hi

Try use tr code ABAPDOCU , You can find lots of program.

and open http://sap-img.com this web site , you can find lots of question.(FAQ)

Regards

Kiran Sure

Read only

Former Member
0 Likes
668

hi check this blog for more programs..

http://sapprograms.blogspot.com

regards,

venkat

Read only

Former Member
0 Likes
668

Hi

go through this program:

*-- Declaring the structure,internal table and workarea for Kna1 table.--*

types:begin of st_kna1,

kunnr type kunnr,

name1 type name1,

end of st_kna1.

data:it_kna1 type standard table of st_kna1,

wa_kna1 type st_kna1.

*-- Declaring the structure,internal table and workarea for vbak table.--*

types:begin of st_vbak,

vbeln type vbeln,

erdat type erdat,

netwr type netwr,

vkorg type vkorg,

kunnr type kunnr,

end of st_vbak.

data:it_vbak type standard table of st_vbak,

wa_vbak type st_vbak.

*-- Declaring the structure,internal table and workarea for vbap table.--*

types:begin of st_vbap,

posnr type posnr,

matnr type matnr,

posar type posar,

pstyv type pstyv,

vbeln type vbeln,

end of st_vbap.

data:it_vbap type standard table of st_vbap,

wa_vbap type st_vbap.

--


Declaring Variable--

data:v_kna1 type kna1,

v_field(50) type c,

v_value1 type kna1-kunnr ,

v_value2 type kna1-kunnr ,

v_tcode(4) value 'VA03',

wa_cust type kna1-kunnr.

--


Selection-Screen block--

selection-screen begin of block b1 with frame title text-001.

--


select options for customer number--

select-options:so_cust for v_kna1-kunnr obligatory.

selection-screen skip.

--


parameter for maximum hits--

parameter:p_hits(10).

selection-screen end of block b1.

&----


*& Start-of-Selection Event -- To select customer no, name from kna1 table

&----


start-of-selection.

select kunnr

name1

from kna1 up to p_hits rows

into table it_kna1

where kunnr in so_cust.

if sy-subrc <> 0.

message e003(z50886message).

endif.

set pf-status 'SALESDETAILS'.

&----


*& End Of SElection Event-- To Write the selected Field values

&----


end-of-selection.

loop at it_kna1 into wa_kna1.

write:/1 sy-vline,

3 wa_kna1-kunnr,

20 sy-vline,

30 wa_kna1-name1,

100 sy-vline.

endloop.

uline at /1(100).

&----


*& Top-of-Page Event--To display field Headings on every page

&----


top-of-page.

write:/50 text-001.

skip.

uline at /1(100).

write:/1 sy-vline,

3 text-002,

20 sy-vline,

30 text-003,

100 sy-vline.

uline at /1(100).

&----


*& At line-selection Event --To Display the Secondary List accordingly

&----


at line-selection.

case sy-lsind.

when 1.

perform salesheader.

when 2.

perform salesitem.

endcase.

&----


*& Top-of-page during line selection--To display feild heading for

*& secondary lists on every page of the list.

&----


top-of-page during line-selection.

case sy-lsind.

when 1.

write:/50 text-012.

write:/ text-002,':', v_value1.

uline at /1(100).

write:/1 sy-vline,

3 text-004,

25 sy-vline,

30 text-005,

40 sy-vline,

45 text-006,

65 sy-vline,

70 text-007,

100 sy-vline.

uline at /1(100).

when 2.

write:/50 text-013.

write:/ text-002, ':', v_value1,

/20 text-004, ':', v_value2.

uline at /1(100).

write:/1 sy-vline,

3 text-008,

25 sy-vline,

30 text-009,

45 sy-vline,

50 text-010,

65 sy-vline,

70 text-011,

100 sy-vline.

uline at /1(100).

endcase.

&----


*&At- user-command --To Set the user defined keys

&----


at user-command.

case sy-ucomm.

when 'SAHE'.

perform salesheader.

when 'SAIT'.

perform salesitem.

when 'VA03'.

set parameter id 'AUN' field wa_vbak-vbeln.

call transaction v_tcode and skip first screen.

endcase.

&----


*& END-OF-PAGE

&----


end-of-page.

uline at /1(100).

skip.

write:/70 'PAGE NO.', sy-pagno.

--


Form salesheader--

form salesheader.

set pf-status 'SALESHEADER'.

get cursor field v_field value v_value1.

if v_field = 'WA_KNA1-KUNNR'.

call function 'CONVERSION_EXIT_ALPHA_INPUT'

exporting

input = v_value1

importing

output = v_value1.

select vbeln

erdat

netwr

vkorg

kunnr

from vbak into table it_vbak

where kunnr = v_value1.

loop at it_vbak into wa_vbak.

if sy-subrc <> 0.

message e004(z50886message).

endif.

write:/1 sy-vline,

3 wa_vbak-vbeln,

25 sy-vline,

30 wa_vbak-erdat,

40 sy-vline,

50 wa_vbak-netwr currency 'INR',

65 sy-vline,

76 wa_vbak-vkorg,

100 sy-vline.

hide wa_vbak-vbeln.

endloop.

uline at /1(100).

else.

message i005(z50886message).

endif.

endform. "salesheader

--


Form SALESITEM--

form salesitem.

set pf-status ' '.

get cursor field v_field value v_value2.

if v_field = 'WA_VBAK-VBELN'.

call function 'CONVERSION_EXIT_ALPHA_INPUT'

exporting

input = v_value2

importing

output = v_value2.

select posnr

matnr

posar

pstyv

vbeln

from vbap into table it_vbap

where vbeln = v_value2.

loop at it_vbap into wa_vbap.

write:/1 sy-vline,

3 wa_vbap-posnr,

25 sy-vline,

30 wa_vbap-matnr,

45 sy-vline,

50 wa_vbap-posar,

65 sy-vline,

70 wa_vbap-pstyv,

100 sy-vline.

endloop.

uline at /1(100).

else.

message i006(z50886message).

endif.

endform. "salesitem

you also go through this link:

http://www.saptechnical.com/Tutorials/ABAP/ABAPMainPage.htm