‎2007 Mar 21 4:15 AM
Hi All ,
I am new to ABAP ,can someone please tell me how to do the following.
1-Created an interactive report for displaying vendor information based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in details.On selection, further details of the selected line is made available in
the secondary list like credits availed by the client on purchase, delivery details of tyhe vendor, payment details by the clients etc.
2-Created an interactive report to display details of vendor and all bank transactions done with the client.
3-Created a report on material master.The report gives stock grouped by material type and plant.The output also shows material no., storage location and unit of measure and description in addition to group totals.
Thanks in Advance,
Sujata
‎2007 Apr 09 2:34 PM
‎2007 Mar 21 4:21 AM
HI,
u just check this code.
this is very simple toundersatnd interactive report concept.
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.
SET PF-STATUS 'MENU'.
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.
regards,
bharat.
‎2007 Mar 23 1:31 PM
Hi
i want to know the solution of the following in brief and also the input/output screen:
1-Created an interactive report for displaying vendor information based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in details.On selection, further details of the selected line is made available in
the secondary list like credits availed by the client on purchase, delivery details of tyhe vendor, payment details by the clients etc.
2-Created an interactive report to display details of vendor and all bank transactions done with the client.
3-Created a report on material master.The report gives stock grouped by material type and plant.The output also shows material no., storage location and unit of measure and description in addition to group totals.
Thanks in Advance,
Sujata
‎2007 Apr 09 1:26 PM
Hi Bharat,
I have gone through the code but if you can kindly show me how the screen looks like then i will be confirmed with for the following a snap shot if you have time offcourse. I am confused with how will it look like.
An interactive report for displaying vendor information based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in details.On selection, further details of the selected line is made available in the secondary list like credits availed by the client on purchase, delivery details of the vendor, payment details by the clients etc.
Thanks,
Jita
‎2007 Apr 09 2:48 PM
Hi,
my program will give u a list of SFLIGHT-CARRID,SFLIGHT-CONNID,SFLIGHT-FLDATE.
if u double click on any line in the output it will give u CARRID,PLANETYPE,PAYMENTSUM values corresponding to CONNID VALUE(which is from the line u have selected in basic list).
rgds,
bharat.
‎2007 Apr 10 6:21 AM
my question is created an interactive report for displaying vendor information
based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in detail.On selection further details of the selected line is made available in the secondary list like credits availed by the client on purchase,delivery details of the vendor,payment details of the client .
Hi
Hi
Thanks for your reply.Can u please verify the following requirement :
my question is created an interactive report for displaying vendor information
based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in detail.On selection further details of the selected line is made available in the secondary list like credits availed by the client on purchase,delivery details of the vendor,payment details of the client
For above requirement i choose the tables are LFA1,LFM1,LIKP.
for this selection-screen contains input fields are lifnr,erdat.
In output screen, basic list contains fields are lifnr,name1,land1.
First secondary list contains fields are ekorg,waers,ekgrp.
Second secondary list contains fields are vbeln,lfart,lfdat.
Third secondary list contains fields are faksk,fkarv,fkdat,fkaiv,fkdiv.
I want to know for the above requirement, we have to map data from above tables and also i want to know these input/output fields are right or wrong.
Thanks in advance.
Regards
Jita.
‎2007 Apr 12 5:34 AM
Hi
Thanks for your reply.Can u please verify the following requirement :
my question is created an interactive report for displaying vendor information
based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in detail.On selection further details of the selected line is made available in the secondary list like credits availed by the client on purchase,delivery details of the vendor,payment details of the client
For above requirement i choose the tables are LFA1,LFM1,LIKP.
for this selection-screen contains input fields are lifnr,erdat.
In output screen, basic list contains fields are lifnr,name1,land1.
First secondary list contains fields are ekorg,waers,ekgrp.
Second secondary list contains fields are vbeln,lfart,lfdat.
Third secondary list contains fields are faksk,fkarv,fkdat,fkaiv,fkdiv.
I want to know for the above requirement, we have to map data from above tables and also i want to know these input/output fields are right or wrong.This is very necessary for me.Kindly reply me as soon as possible.
Thanks in advance.
Regards
Jita.
‎2007 Mar 21 4:29 AM
Hi ,
chk this code for interactive report,this also covers totals concept
&----
*& Report ZTRAINING5_KEERTHI *
*& *
&----
*& *
*& *
&----
REPORT ZTRAINING5_KEERTHI NO STANDARD PAGE HEADING
LINE-SIZE 258
LINE-COUNT 28(4).
tables declaration *
TABLES: VBAK,VBAP,VBUK,VBKD,TVKO,KNA1,MARA,KONV,T685T,TVKOV.
data declaration *
DATA: V_TAB LIKE SY-TABIX,
V_KNUMV LIKE VBAK-KNUMV,
L_TABIX LIKE SY-TABIX,
DATE1 LIKE SY-DATUM.
DATA: BEGIN OF IT_VBAK OCCURS 0,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
VTWEG LIKE VBAK-VTWEG,
SPART LIKE VBAK-SPART,
AUART LIKE VBAK-AUART,
AUDAT LIKE VBAK-AUDAT,
KUNNR LIKE VBAK-KUNNR,
NETWR LIKE VBAK-NETWR,
END OF IT_VBAK.
DATA: BEGIN OF IT_VBAP OCCURS 0,
VBELN LIKE VBAP-VBELN,
POSNR LIKE VBAP-POSNR,
MATNR LIKE VBAP-MATNR,
ARKTX LIKE VBAP-ARKTX,
KWMENG LIKE VBAP-KWMENG,
WERKS LIKE VBAP-WERKS,
LGORT LIKE VBAP-LGORT,
NETPR LIKE VBAP-NETPR,
END OF IT_VBAP.
DATA: BEGIN OF IT_VBPA OCCURS 0,
KUNNR LIKE VBPA-KUNNR,
PARVW LIKE VBPA-PARVW,
VBELN LIKE VBPA-VBELN,
END OF IT_VBPA.
DATA: BEGIN OF IT_VBKD OCCURS 0,
BSTKD LIKE VBKD-BSTKD,
BSARK LIKE VBKD-BSARK,
POSNR LIKE VBKD-POSNR,
END OF IT_VBKD.
DATA: BEGIN OF IT_FINAL OCCURS 0,
KUNNR LIKE VBAK-KUNNR,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
VTWEG LIKE VBAK-VTWEG,
SPART LIKE VBAK-SPART,
AUART LIKE VBAK-AUART,
AUDAT LIKE VBAK-AUDAT,
NETWR LIKE VBAK-NETWR,
POSNR LIKE VBAP-POSNR,
MATNR LIKE VBAP-MATNR,
ARKTX LIKE VBAP-ARKTX,
KWMENG LIKE VBAP-KWMENG,
WERKS LIKE VBAP-WERKS,
LGORT LIKE VBAP-LGORT,
NETPR LIKE VBAP-NETPR,
KUNNR1 LIKE VBPA-KUNNR,
BSTKD LIKE VBKD-BSTKD,
BSARK LIKE VBKD-BSARK,
END OF IT_FINAL.
DATA: BEGIN OF IT_KONV OCCURS 0,
KNUMV LIKE KONV-KNUMV,
KPOSN LIKE KONV-KPOSN,
KSCHL LIKE KONV-KSCHL,
KBETR LIKE KONV-KBETR,
KWERT LIKE KONV-KWERT,
END OF IT_KONV.
DATA: BEGIN OF IT_TEXT OCCURS 0,
KSCHL LIKE T685T-KSCHL,
VTEXT LIKE T685T-VTEXT,
END OF IT_TEXT.
selection screen *
PARAMETERS:P_VKORG LIKE VBAK-VKORG OBLIGATORY,
P_VTWEG LIKE VBAK-VTWEG OBLIGATORY,
P_SPART LIKE VBAK-SPART OBLIGATORY.
SELECT-OPTIONS: S_AUDAT FOR VBAK-AUDAT ,
S_VBELN FOR VBAK-VBELN ,
S_KUNNR FOR VBAK-KUNNR ,
S_MATNR FOR VBAP-MATNR.
PARAMETERS: OPENORD RADIOBUTTON GROUP RAD1 DEFAULT 'X',
ALLORD RADIOBUTTON GROUP RAD1.
initialization *
INITIALIZATION.
DATE1 = SY-DATUM - 30.
S_AUDAT-LOW = DATE1.
S_AUDAT-HIGH = SY-DATUM.
APPEND S_AUDAT.
validations *
AT SELECTION-SCREEN.
validating sales org
SELECT SINGLE VKORG FROM TVKO
INTO TVKO
WHERE VKORG = P_VKORG.
IF SY-SUBRC <> 0.
WRITE:/ 'Invalid sales organisation'.
ENDIF.
validating distribution channel.
SELECT SINGLE VTWEG
FROM TVKOV
INTO TVKOV
WHERE VTWEG = P_VTWEG.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid distribution channel'.
ENDIF.
validating division.
SELECT SINGLE SPART
FROM TVTA
INTO P_SPART
WHERE SPART = P_SPART.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid division'.
ENDIF.
validating customer.
SELECT SINGLE KUNNR FROM KNA1
INTO KNA1
WHERE KUNNR IN S_KUNNR.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid customer'.
ENDIF.
validating material.
SELECT SINGLE MATNR FROM MARA
INTO MARA
WHERE MATNR IN S_MATNR.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid MATERIAL NUMBER'.
ENDIF.
start of selection *
START-OF-SELECTION.
SELECT VBELN
VKORG
VTWEG
SPART
AUART
AUDAT
KUNNR
NETWR
FROM VBAK
INTO TABLE IT_VBAK
WHERE VBELN IN S_VBELN AND
VKORG = P_VKORG AND
VTWEG = P_VTWEG AND
SPART = P_SPART AND
AUDAT IN S_AUDAT AND
KUNNR IN S_KUNNR .
IF OPENORD = 'X'.
LOOP AT IT_VBAK.
READ TABLE IT_VBAK INDEX SY-TABIX.
SELECT SINGLE VBELN FROM VBUK
INTO VBUK
WHERE VBELN = IT_VBAK-VBELN AND
GBSTK <> 'C'.
IF SY-SUBRC <> 0.
DELETE IT_VBAK INDEX SY-TABIX.
ENDIF.
ENDLOOP.
ENDIF.
SELECT VBELN
POSNR
MATNR
ARKTX
KWMENG
WERKS
LGORT
NETPR
FROM VBAP
INTO TABLE IT_VBAP
FOR ALL ENTRIES IN IT_VBAK
WHERE VBELN = IT_VBAK-VBELN AND
MATNR IN S_MATNR.
SELECT KUNNR
PARVW
VBELN
FROM VBPA
INTO TABLE IT_VBPA
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = IT_VBAP-POSNR AND
PARVW = 'WE'.
IF SY-SUBRC <> 0.
SELECT KUNNR
PARVW
VBELN
FROM VBPA
INTO TABLE IT_VBPA
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = '000000' AND
PARVW = 'we'.
ENDIF.
SELECT BSTKD
BSARK
POSNR
FROM VBKD
INTO TABLE IT_VBKD
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = IT_VBAP-POSNR .
IF SY-SUBRC <> 0.
SELECT BSTKD
BSARK
POSNR
FROM VBKD
INTO TABLE IT_VBKD
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = '000000' .
ENDIF.
LOOP AT IT_VBAK.
L_TABIX = SY-TABIX.
MOVE: IT_VBAK-KUNNR TO IT_FINAL-KUNNR,
IT_VBAK-VBELN TO IT_FINAL-VBELN,
IT_VBAK-VKORG TO IT_FINAL-VKORG,
IT_VBAK-VTWEG TO IT_FINAL-VTWEG,
IT_VBAK-SPART TO IT_FINAL-SPART,
IT_VBAK-AUART TO IT_FINAL-AUART,
IT_VBAK-AUDAT TO IT_FINAL-AUDAT,
IT_VBAK-NETWR TO IT_FINAL-NETWR.
READ TABLE IT_VBAP WITH KEY VBELN = IT_VBAK-VBELN.
READ TABLE IT_VBAK INDEX L_TABIX.
MOVE: IT_VBAP-POSNR TO IT_FINAL-POSNR,
IT_VBAP-MATNR TO IT_FINAL-MATNR ,
IT_VBAP-ARKTX TO IT_FINAL-ARKTX,
IT_VBAP-KWMENG TO IT_FINAL-KWMENG,
IT_VBAP-WERKS TO IT_FINAL-WERKS,
IT_VBAP-LGORT TO IT_FINAL-LGORT,
IT_VBAP-NETPR TO IT_VBAP-NETPR.
READ TABLE IT_VBPA WITH KEY VBELN = IT_VBAK-VBELN.
MOVE IT_VBPA-KUNNR TO IT_FINAL-KUNNR1.
READ TABLE IT_VBKD WITH KEY POSNR = IT_VBAP-POSNR.
MOVE: IT_VBKD-BSTKD TO IT_FINAL-BSTKD,
IT_VBKD-BSARK TO IT_FINAL-BSARK.
APPEND IT_FINAL.
ENDLOOP.
end of selection *
END-OF-SELECTION.
SORT IT_FINAL BY KUNNR VBELN.
LOOP AT IT_FINAL.
AT NEW KUNNR.
NEW-PAGE.
WRITE:/ SY-ULINE(255),/ SY-VLINE.
FORMAT COLOR COL_POSITIVE.
WRITE: 2 'customer no.',10 SY-VLINE,'sales doc.',25 SY-VLINE,'dis.ch.',
30 SY-VLINE,'division',35 SY-VLINE,'salesordtype',50 SY-VLINE,'doc.date'
,62 SY-VLINE,'netvalue',85 SY-VLINE,'item no.',92 SY-VLINE,'materialno.'
,105 SY-VLINE,'item text',150 SY-VLINE,'ord.qty.',170 SY-VLINE,'plant',
175 SY-VLINE,'sto.loc.',180 SY-VLINE,'net price',196 SY-VLINE,
'ship2party',206 SY-VLINE,'pur.ord.',245 SY-VLINE,'purordtype' ,255
SY-VLINE.
WRITE:/ SY-ULINE(255).
ENDAT.
V_TAB = SY-TABIX MOD 2.
IF V_TAB <> 0.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
ELSE.
FORMAT COLOR COL_HEADING INTENSIFIED OFF.
ENDIF.
WRITE:/ SY-VLINE,2 IT_FINAL-KUNNR,10 SY-VLINE, IT_FINAL-VBELN,25
SY-VLINE,
IT_FINAL-VTWEG,30 SY-VLINE,IT_FINAL-SPART,35 SY-VLINE,
IT_FINAL-AUART,50 SY-VLINE,IT_FINAL-AUDAT,62 SY-VLINE,IT_FINAL-NETWR,85
SY-VLINE,IT_FINAL-POSNR,92 SY-VLINE,
IT_FINAL-MATNR,105 SY-VLINE,IT_FINAL-ARKTX,150 SY-VLINE
,IT_FINAL-KWMENG,170 SY-VLINE,IT_FINAL-WERKS,175 SY-VLINE,
IT_FINAL-LGORT,180 SY-VLINE,IT_FINAL-NETPR,196 SY-VLINE
,IT_FINAL-KUNNR1,206 SY-VLINE,IT_FINAL-BSTKD,245 SY-VLINE,
IT_FINAL-BSARK,255 SY-VLINE.
HIDE IT_FINAL-VBELN.
WRITE:/ SY-ULINE(255).
AT END OF KUNNR.
SUM.
WRITE:/ SY-VLINE,'TOTAL',63 IT_FINAL-NETWR,181 IT_FINAL-NETPR,255
SY-VLINE.
WRITE:/ SY-ULINE.
ENDAT.
ENDLOOP.
AT LINE-SELECTION.
AT LINE-SELECTION.
CASE SY-LSIND.
WHEN '1'.
TO GET SECONDARY LIST
PERFORM INTERACT.
ENDCASE.
&----
*& Form interact
&----
text
----
--> p1 text
<-- p2 text
----
FORM INTERACT .
SELECT SINGLE KNUMV FROM VBAK
INTO V_KNUMV
WHERE VBELN = IT_FINAL-VBELN.
SELECT KNUMV
KPOSN
KSCHL
KBETR
KWERT
FROM KONV
INTO TABLE IT_KONV
WHERE KNUMV = V_KNUMV.
SELECT KSCHL
VTEXT FROM T685T
INTO TABLE IT_TEXT
FOR ALL ENTRIES IN IT_KONV
WHERE KSCHL = IT_KONV-KSCHL AND
SPRAS = SY-LANGU AND
KVEWE = 'A' AND
KAPPL = 'V'.
CLEAR IT_KONV.
CLEAR IT_TEXT.
WRITE:/ SY-ULINE(72).
FORMAT COLOR COL_NEGATIVE.
WRITE:/ SY-VLINE,'COITEM',10 SY-VLINE,'RATE',28 SY-VLINE,
'COND.VALUE',48 SY-VLINE,'NAME',72 SY-VLINE.
WRITE:/ SY-ULINE(72).
LOOP AT IT_KONV.
L_TABIX = SY-TABIX.
READ TABLE IT_KONV INDEX L_TABIX.
READ TABLE IT_TEXT WITH KEY KSCHL = IT_KONV-KSCHL.
L_TABIX = SY-TABIX MOD 2.
IF L_TABIX <> 0.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
ELSE.
FORMAT COLOR COL_HEADING INTENSIFIED OFF.
ENDIF.
WRITE:/ SY-VLINE,IT_KONV-KPOSN,10 SY-VLINE, IT_KONV-KBETR,28
SY-VLINE,IT_KONV-KWERT,48 SY-VLINE,IT_TEXT-VTEXT,72 SY-VLINE.
ENDLOOP.
WRITE:/ SY-ULINE(72).
ENDFORM. " interact
regards,
keerthi
‎2007 Mar 21 4:39 AM
Hi,
This is the very simple INTERACTIVE REPORT. It will help really helps to u to understand the concept.
REPORT YMS_INTERACTIVETEST LINE-SIZE 50 NO STANDARD PAGE HEADING.
TABLES: VBAP,KNA1,VBAK.
SELECT-OPTIONS: CUST FOR KNA1-KUNNR.
DATA: BEGIN OF ITAB OCCURS 0,
KUNNR LIKE KNA1-KUNNR,
NAME1 LIKE KNA1-NAME1,
VBELN LIKE VBAK-VBELN,
AUDAT LIKE VBAK-AUDAT,
AUART LIKE VBAK-AUART,
POSNR LIKE VBAP-POSNR,
POSAR LIKE VBAP-POSAR,
END OF ITAB.
DATA: ITAB1 LIKE ITAB OCCURS 0 WITH HEADER LINE.
INITIALIZATION.
START-OF-SELECTION.
SELECT KNA1KUNNR KNA1NAME1 INTO CORRESPONDING FIELDS OF TABLE ITAB1
FROM KNA1 WHERE KNA1~KUNNR IN CUST.
LOOP AT ITAB1.
WRITE:/10 ITAB1-KUNNR HOTSPOT, 30 ITAB1-NAME1.
HIDE: ITAB1-KUNNR.
ENDLOOP.
AT LINE-SELECTION.
CASE SY-LSIND.
WHEN '1'.
SELECT KNA1KUNNR VBAKVBELN VBAKAUDAT VBAKERDAT INTO CORRESPONDING FIELDS OF TABLE ITAB1
FROM KNA1 INNER JOIN VBAK ON KNA1KUNNR = VBAKKUNNR.
LOOP AT ITAB1.
WRITE:/ ITAB1-VBELN HOTSPOT, ITAB1-AUDAT, ITAB1-AUART.
HIDE: ITAB1-VBELN, ITAB1-AUDAT, ITAB1-AUART.
ENDLOOP.
WHEN '2'.
SELECT VBAKVBELN VBAPPOSNR VBAP~POSAR
INTO CORRESPONDING FIELDS OF TABLE ITAB1 FROM VBAK INNER JOIN VBAP ON VBAKVBELN = VBAPVBELN.
LOOP AT ITAB1.
WRITE:/ ITAB1-POSNR, ITAB1-POSAR.
ENDLOOP.
ENDCASE.
TOP-OF-PAGE.
WRITE:/ SY-VLINE,TEXT-001 COLOR COL_NEGATIVE.
ULINE.
Thanks,
Shankar
‎2007 Mar 21 12:05 PM
2-Created an interactive report to display details of vendor and all bank transactions done with the client.
‎2007 Mar 23 1:24 PM
Hi
i want to know how to get the screen and solution in brief about the following:
1-Created an interactive report for displaying vendor information based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in details.On selection, further details of the selected line is made available in
the secondary list like credits availed by the client on purchase, delivery details of tyhe vendor, payment details by the clients etc.
2-Created an interactive report to display details of vendor and all bank transactions done with the client.
3-Created a report on material master.The report gives stock grouped by material type and plant.The output also shows material no., storage location and unit of measure and description in addition to group totals.
Thanks in Advance,
Sujata
Bharat Kalagara
Posts: 156
Questions: 6
Registered: 2/27/07
Forum points: 116
Solved problem (10)
Very helpful answer (6)
Helpful answer (2)
Re: ABAP Reports
Posted: Mar 21, 2007 5:21 AM in response to: jita dash Reply E-mail this post
HI,
u just check this code.
this is very simple toundersatnd interactive report concept.
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.
SET PF-STATUS 'MENU'.
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.
regards,
bharat.
keerthi kiran v...
Posts: 915
Questions: 11
Registered: 12/15/05
Forum points: 1,078
Solved problem (10)
Very helpful answer (6)
Helpful answer (2)
Re: ABAP Reports
Posted: Mar 21, 2007 5:29 AM in response to: jita dash Reply E-mail this post
Hi ,
chk this code for interactive report,this also covers totals concept
&----
*& Report ZTRAINING5_KEERTHI *
*& *
&----
*& *
*& *
&----
REPORT ZTRAINING5_KEERTHI NO STANDARD PAGE HEADING
LINE-SIZE 258
LINE-COUNT 28(4).
tables declaration *
TABLES: VBAK,VBAP,VBUK,VBKD,TVKO,KNA1,MARA,KONV,T685T,TVKOV.
data declaration *
DATA: V_TAB LIKE SY-TABIX,
V_KNUMV LIKE VBAK-KNUMV,
L_TABIX LIKE SY-TABIX,
DATE1 LIKE SY-DATUM.
DATA: BEGIN OF IT_VBAK OCCURS 0,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
VTWEG LIKE VBAK-VTWEG,
SPART LIKE VBAK-SPART,
AUART LIKE VBAK-AUART,
AUDAT LIKE VBAK-AUDAT,
KUNNR LIKE VBAK-KUNNR,
NETWR LIKE VBAK-NETWR,
END OF IT_VBAK.
DATA: BEGIN OF IT_VBAP OCCURS 0,
VBELN LIKE VBAP-VBELN,
POSNR LIKE VBAP-POSNR,
MATNR LIKE VBAP-MATNR,
ARKTX LIKE VBAP-ARKTX,
KWMENG LIKE VBAP-KWMENG,
WERKS LIKE VBAP-WERKS,
LGORT LIKE VBAP-LGORT,
NETPR LIKE VBAP-NETPR,
END OF IT_VBAP.
DATA: BEGIN OF IT_VBPA OCCURS 0,
KUNNR LIKE VBPA-KUNNR,
PARVW LIKE VBPA-PARVW,
VBELN LIKE VBPA-VBELN,
END OF IT_VBPA.
DATA: BEGIN OF IT_VBKD OCCURS 0,
BSTKD LIKE VBKD-BSTKD,
BSARK LIKE VBKD-BSARK,
POSNR LIKE VBKD-POSNR,
END OF IT_VBKD.
DATA: BEGIN OF IT_FINAL OCCURS 0,
KUNNR LIKE VBAK-KUNNR,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
VTWEG LIKE VBAK-VTWEG,
SPART LIKE VBAK-SPART,
AUART LIKE VBAK-AUART,
AUDAT LIKE VBAK-AUDAT,
NETWR LIKE VBAK-NETWR,
POSNR LIKE VBAP-POSNR,
MATNR LIKE VBAP-MATNR,
ARKTX LIKE VBAP-ARKTX,
KWMENG LIKE VBAP-KWMENG,
WERKS LIKE VBAP-WERKS,
LGORT LIKE VBAP-LGORT,
NETPR LIKE VBAP-NETPR,
KUNNR1 LIKE VBPA-KUNNR,
BSTKD LIKE VBKD-BSTKD,
BSARK LIKE VBKD-BSARK,
END OF IT_FINAL.
DATA: BEGIN OF IT_KONV OCCURS 0,
KNUMV LIKE KONV-KNUMV,
KPOSN LIKE KONV-KPOSN,
KSCHL LIKE KONV-KSCHL,
KBETR LIKE KONV-KBETR,
KWERT LIKE KONV-KWERT,
END OF IT_KONV.
DATA: BEGIN OF IT_TEXT OCCURS 0,
KSCHL LIKE T685T-KSCHL,
VTEXT LIKE T685T-VTEXT,
END OF IT_TEXT.
selection screen *
PARAMETERS:P_VKORG LIKE VBAK-VKORG OBLIGATORY,
P_VTWEG LIKE VBAK-VTWEG OBLIGATORY,
P_SPART LIKE VBAK-SPART OBLIGATORY.
SELECT-OPTIONS: S_AUDAT FOR VBAK-AUDAT ,
S_VBELN FOR VBAK-VBELN ,
S_KUNNR FOR VBAK-KUNNR ,
S_MATNR FOR VBAP-MATNR.
PARAMETERS: OPENORD RADIOBUTTON GROUP RAD1 DEFAULT 'X',
ALLORD RADIOBUTTON GROUP RAD1.
initialization *
INITIALIZATION.
DATE1 = SY-DATUM - 30.
S_AUDAT-LOW = DATE1.
S_AUDAT-HIGH = SY-DATUM.
APPEND S_AUDAT.
validations *
AT SELECTION-SCREEN.
validating sales org
SELECT SINGLE VKORG FROM TVKO
INTO TVKO
WHERE VKORG = P_VKORG.
IF SY-SUBRC <> 0.
WRITE:/ 'Invalid sales organisation'.
ENDIF.
validating distribution channel.
SELECT SINGLE VTWEG
FROM TVKOV
INTO TVKOV
WHERE VTWEG = P_VTWEG.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid distribution channel'.
ENDIF.
validating division.
SELECT SINGLE SPART
FROM TVTA
INTO P_SPART
WHERE SPART = P_SPART.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid division'.
ENDIF.
validating customer.
SELECT SINGLE KUNNR FROM KNA1
INTO KNA1
WHERE KUNNR IN S_KUNNR.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid customer'.
ENDIF.
validating material.
SELECT SINGLE MATNR FROM MARA
INTO MARA
WHERE MATNR IN S_MATNR.
IF SY-SUBRC NE 0.
WRITE:/ 'Invalid MATERIAL NUMBER'.
ENDIF.
start of selection *
START-OF-SELECTION.
SELECT VBELN
VKORG
VTWEG
SPART
AUART
AUDAT
KUNNR
NETWR
FROM VBAK
INTO TABLE IT_VBAK
WHERE VBELN IN S_VBELN AND
VKORG = P_VKORG AND
VTWEG = P_VTWEG AND
SPART = P_SPART AND
AUDAT IN S_AUDAT AND
KUNNR IN S_KUNNR .
IF OPENORD = 'X'.
LOOP AT IT_VBAK.
READ TABLE IT_VBAK INDEX SY-TABIX.
SELECT SINGLE VBELN FROM VBUK
INTO VBUK
WHERE VBELN = IT_VBAK-VBELN AND
GBSTK <> 'C'.
IF SY-SUBRC <> 0.
DELETE IT_VBAK INDEX SY-TABIX.
ENDIF.
ENDLOOP.
ENDIF.
SELECT VBELN
POSNR
MATNR
ARKTX
KWMENG
WERKS
LGORT
NETPR
FROM VBAP
INTO TABLE IT_VBAP
FOR ALL ENTRIES IN IT_VBAK
WHERE VBELN = IT_VBAK-VBELN AND
MATNR IN S_MATNR.
SELECT KUNNR
PARVW
VBELN
FROM VBPA
INTO TABLE IT_VBPA
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = IT_VBAP-POSNR AND
PARVW = 'WE'.
IF SY-SUBRC <> 0.
SELECT KUNNR
PARVW
VBELN
FROM VBPA
INTO TABLE IT_VBPA
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = '000000' AND
PARVW = 'we'.
ENDIF.
SELECT BSTKD
BSARK
POSNR
FROM VBKD
INTO TABLE IT_VBKD
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = IT_VBAP-POSNR .
IF SY-SUBRC <> 0.
SELECT BSTKD
BSARK
POSNR
FROM VBKD
INTO TABLE IT_VBKD
FOR ALL ENTRIES IN IT_VBAP
WHERE VBELN = IT_VBAP-VBELN AND
POSNR = '000000' .
ENDIF.
LOOP AT IT_VBAK.
L_TABIX = SY-TABIX.
MOVE: IT_VBAK-KUNNR TO IT_FINAL-KUNNR,
IT_VBAK-VBELN TO IT_FINAL-VBELN,
IT_VBAK-VKORG TO IT_FINAL-VKORG,
IT_VBAK-VTWEG TO IT_FINAL-VTWEG,
IT_VBAK-SPART TO IT_FINAL-SPART,
IT_VBAK-AUART TO IT_FINAL-AUART,
IT_VBAK-AUDAT TO IT_FINAL-AUDAT,
IT_VBAK-NETWR TO IT_FINAL-NETWR.
READ TABLE IT_VBAP WITH KEY VBELN = IT_VBAK-VBELN.
READ TABLE IT_VBAK INDEX L_TABIX.
MOVE: IT_VBAP-POSNR TO IT_FINAL-POSNR,
IT_VBAP-MATNR TO IT_FINAL-MATNR ,
IT_VBAP-ARKTX TO IT_FINAL-ARKTX,
IT_VBAP-KWMENG TO IT_FINAL-KWMENG,
IT_VBAP-WERKS TO IT_FINAL-WERKS,
IT_VBAP-LGORT TO IT_FINAL-LGORT,
IT_VBAP-NETPR TO IT_VBAP-NETPR.
READ TABLE IT_VBPA WITH KEY VBELN = IT_VBAK-VBELN.
MOVE IT_VBPA-KUNNR TO IT_FINAL-KUNNR1.
READ TABLE IT_VBKD WITH KEY POSNR = IT_VBAP-POSNR.
MOVE: IT_VBKD-BSTKD TO IT_FINAL-BSTKD,
IT_VBKD-BSARK TO IT_FINAL-BSARK.
APPEND IT_FINAL.
ENDLOOP.
end of selection *
END-OF-SELECTION.
SORT IT_FINAL BY KUNNR VBELN.
LOOP AT IT_FINAL.
AT NEW KUNNR.
NEW-PAGE.
WRITE:/ SY-ULINE(255),/ SY-VLINE.
FORMAT COLOR COL_POSITIVE.
WRITE: 2 'customer no.',10 SY-VLINE,'sales doc.',25 SY-VLINE,'dis.ch.',
30 SY-VLINE,'division',35 SY-VLINE,'salesordtype',50 SY-VLINE,'doc.date'
,62 SY-VLINE,'netvalue',85 SY-VLINE,'item no.',92 SY-VLINE,'materialno.'
,105 SY-VLINE,'item text',150 SY-VLINE,'ord.qty.',170 SY-VLINE,'plant',
175 SY-VLINE,'sto.loc.',180 SY-VLINE,'net price',196 SY-VLINE,
'ship2party',206 SY-VLINE,'pur.ord.',245 SY-VLINE,'purordtype' ,255
SY-VLINE.
WRITE:/ SY-ULINE(255).
ENDAT.
V_TAB = SY-TABIX MOD 2.
IF V_TAB <> 0.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
ELSE.
FORMAT COLOR COL_HEADING INTENSIFIED OFF.
ENDIF.
WRITE:/ SY-VLINE,2 IT_FINAL-KUNNR,10 SY-VLINE, IT_FINAL-VBELN,25
SY-VLINE,
IT_FINAL-VTWEG,30 SY-VLINE,IT_FINAL-SPART,35 SY-VLINE,
IT_FINAL-AUART,50 SY-VLINE,IT_FINAL-AUDAT,62 SY-VLINE,IT_FINAL-NETWR,85
SY-VLINE,IT_FINAL-POSNR,92 SY-VLINE,
IT_FINAL-MATNR,105 SY-VLINE,IT_FINAL-ARKTX,150 SY-VLINE
,IT_FINAL-KWMENG,170 SY-VLINE,IT_FINAL-WERKS,175 SY-VLINE,
IT_FINAL-LGORT,180 SY-VLINE,IT_FINAL-NETPR,196 SY-VLINE
,IT_FINAL-KUNNR1,206 SY-VLINE,IT_FINAL-BSTKD,245 SY-VLINE,
IT_FINAL-BSARK,255 SY-VLINE.
HIDE IT_FINAL-VBELN.
WRITE:/ SY-ULINE(255).
AT END OF KUNNR.
SUM.
WRITE:/ SY-VLINE,'TOTAL',63 IT_FINAL-NETWR,181 IT_FINAL-NETPR,255
SY-VLINE.
WRITE:/ SY-ULINE.
ENDAT.
ENDLOOP.
AT LINE-SELECTION.
AT LINE-SELECTION.
CASE SY-LSIND.
WHEN '1'.
TO GET SECONDARY LIST
PERFORM INTERACT.
ENDCASE.
&----
*& Form interact
&----
text
----
--> p1 text
<-- p2 text
----
FORM INTERACT .
SELECT SINGLE KNUMV FROM VBAK
INTO V_KNUMV
WHERE VBELN = IT_FINAL-VBELN.
SELECT KNUMV
KPOSN
KSCHL
KBETR
KWERT
FROM KONV
INTO TABLE IT_KONV
WHERE KNUMV = V_KNUMV.
SELECT KSCHL
VTEXT FROM T685T
INTO TABLE IT_TEXT
FOR ALL ENTRIES IN IT_KONV
WHERE KSCHL = IT_KONV-KSCHL AND
SPRAS = SY-LANGU AND
KVEWE = 'A' AND
KAPPL = 'V'.
CLEAR IT_KONV.
CLEAR IT_TEXT.
WRITE:/ SY-ULINE(72).
FORMAT COLOR COL_NEGATIVE.
WRITE:/ SY-VLINE,'COITEM',10 SY-VLINE,'RATE',28 SY-VLINE,
'COND.VALUE',48 SY-VLINE,'NAME',72 SY-VLINE.
WRITE:/ SY-ULINE(72).
LOOP AT IT_KONV.
L_TABIX = SY-TABIX.
READ TABLE IT_KONV INDEX L_TABIX.
READ TABLE IT_TEXT WITH KEY KSCHL = IT_KONV-KSCHL.
L_TABIX = SY-TABIX MOD 2.
IF L_TABIX <> 0.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
ELSE.
FORMAT COLOR COL_HEADING INTENSIFIED OFF.
ENDIF.
WRITE:/ SY-VLINE,IT_KONV-KPOSN,10 SY-VLINE, IT_KONV-KBETR,28
SY-VLINE,IT_KONV-KWERT,48 SY-VLINE,IT_TEXT-VTEXT,72 SY-VLINE.
ENDLOOP.
WRITE:/ SY-ULINE(72).
ENDFORM. " interact
regards,
keerthi
Sankar M
Posts: 543
Questions: 18
Registered: 11/20/06
Forum points: 622
Solved problem (10)
Very helpful answer (6)
Helpful answer (2)
Re: ABAP Reports
Posted: Mar 21, 2007 5:39 AM in response to: jita dash Reply E-mail this post
Hi,
This is the very simple INTERACTIVE REPORT. It will help really helps to u to understand the concept.
REPORT YMS_INTERACTIVETEST LINE-SIZE 50 NO STANDARD PAGE HEADING.
TABLES: VBAP,KNA1,VBAK.
SELECT-OPTIONS: CUST FOR KNA1-KUNNR.
DATA: BEGIN OF ITAB OCCURS 0,
KUNNR LIKE KNA1-KUNNR,
NAME1 LIKE KNA1-NAME1,
VBELN LIKE VBAK-VBELN,
AUDAT LIKE VBAK-AUDAT,
AUART LIKE VBAK-AUART,
POSNR LIKE VBAP-POSNR,
POSAR LIKE VBAP-POSAR,
END OF ITAB.
DATA: ITAB1 LIKE ITAB OCCURS 0 WITH HEADER LINE.
INITIALIZATION.
START-OF-SELECTION.
SELECT KNA1KUNNR KNA1NAME1 INTO CORRESPONDING FIELDS OF TABLE ITAB1
FROM KNA1 WHERE KNA1~KUNNR IN CUST.
LOOP AT ITAB1.
WRITE:/10 ITAB1-KUNNR HOTSPOT, 30 ITAB1-NAME1.
HIDE: ITAB1-KUNNR.
ENDLOOP.
AT LINE-SELECTION.
CASE SY-LSIND.
WHEN '1'.
SELECT KNA1KUNNR VBAKVBELN VBAKAUDAT VBAKERDAT INTO CORRESPONDING FIELDS OF TABLE ITAB1
FROM KNA1 INNER JOIN VBAK ON KNA1KUNNR = VBAKKUNNR.
LOOP AT ITAB1.
WRITE:/ ITAB1-VBELN HOTSPOT, ITAB1-AUDAT, ITAB1-AUART.
HIDE: ITAB1-VBELN, ITAB1-AUDAT, ITAB1-AUART.
ENDLOOP.
WHEN '2'.
SELECT VBAKVBELN VBAPPOSNR VBAP~POSAR
INTO CORRESPONDING FIELDS OF TABLE ITAB1 FROM VBAK INNER JOIN VBAP ON VBAKVBELN = VBAPVBELN.
LOOP AT ITAB1.
WRITE:/ ITAB1-POSNR, ITAB1-POSAR.
ENDLOOP.
ENDCASE.
TOP-OF-PAGE.
WRITE:/ SY-VLINE,TEXT-001 COLOR COL_NEGATIVE.
ULINE.
Thanks,
Shankar
jita dash
Posts: 8
Questions: 3
Registered: 3/20/07
Forum points: 0
Re: ABAP Reports
Posted: Mar 21, 2007 1:05 PM in response to: jita dash Reply E-mail this post
2-Created an interactive report to display details of vendor and all bank transactions done with the client.
jita dash
Posts: 8
Questions: 3
Registered: 3/20/07
Hi
i want to know how to get the screen and solution in brief about the following:
Message was edited by:
jita dash
‎2007 Apr 08 2:54 PM
Hi
this is my question:created an interactive report for displaying vendor information
based on the selection made by the client.The transactions made by the vendor with the client till date will be displayed in detail.On selection further details of the selected line is made available in the secondary list like credits availed by the client on purchase,delivery details of the vendor,payment details of the client .
For above question i choose the tables are LFA1,LFM1,LIKP.
for this selection-screen contains input fields are lifnr,erdat.
In output screen, basic list contains fields are lifnr,name1,land1.
First secondary list contains fields are ekorg,waers,ekgrp.
Second secondary list contains fields are vbeln,lfart,lfdat.
Third secondary list contains fields are faksk,fkarv,fkdat,fkaiv,fkdiv.
I want to know for the above requirement, wheither we have to map data from above tables and also i want to know these input/output fields are right or wrong.
If any change is required,please tell as soon as possible.
I want to know its exact solution.
Waiting for your reply!
Jita.
‎2007 Apr 09 2:34 PM
‎2008 Nov 07 9:42 AM
hi all
i m new in abap.can anybody tell me how to use directinput using lsmw.in laststep i got problem.
thanks & regrads
anu