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: 

Reg: display output

Former Member
0 Kudos

Hi Abapers,

i have one problem.

I am developing a report (ALV) with 105 coulumns.

FORM merge_data .

SORT it_qasr BY probenr prueflos vorglfnr.

LOOP AT it_qasr INTO wa_qasr.

w_mittelwert = wa_qasr-mittelwert.

READ TABLE it_qapp INTO wa_qapp WITH KEY prueflos = wa_qasr-prueflos

  • vorglfnr = wa_qasr-vorglfnr

probenr = wa_qasr-probenr.

wa_final-userd1 = wa_qapp-userd1.

wa_final-usert1 = wa_qapp-usert1.

wa_final-userc1 = wa_qapp-userc1.

SHIFT wa_final-userc1 LEFT DELETING LEADING '0'.

wa_final-userc2 = wa_qapp-userc2.

READ TABLE it_plmk INTO wa_plmk WITH KEY merknr = wa_qasr-merknr

plnnr = wa_mapl-plnnr.

  • plnkn = wa_qasr-vorglfnr " changed by DEVK909452

READ TABLE it_qpmt INTO wa_qpmt WITH KEY mkmnr = wa_plmk-verwmerkm.

READ TABLE it_qpct INTO wa_qpct WITH KEY codegruppe = wa_qasr-gruppe1

code = wa_qasr-code1.

TRANSLATE wa_qpmt-mkmnr TO UPPER CASE.

IF wa_qpmt-mkmnr CS 'MBFR0016'.

wa_qpmt-mkmnr = ' MATERIAL '.

ENDIF.

IF wa_qpmt-mkmnr CS 'SHIFT'.

wa_qpmt-mkmnr = ' SHIFT '.

ENDIF.

.

.

.

.

.

105 conditions.

CASE wa_qpmt-mkmnr.

WHEN ' MATERIAL '.

wa_final-material = wa_qpct-kurztext.

WHEN ' SHIFT '.

wa_final-shift = wa_qpct-kurztext.

WHEN ' MOIS_Q '.

wa_final-mois_q = w_mittelwert.

.

.

.

105 case statements

APPEND wa_final TO it_final.

CLEAR wa_final.

ENDLOOP.

Now, Actual problem is, in output, the one record is displayed in 105 rows.

EX: for one date, we have a record with 10 MIC names (wa_qpmt-mkmnr), now it will display 10 rows with 10 columns. But, i want only one row with 10 columns.

Please understand my problem and give me the solution...

thanks in advance..

1 ACCEPTED SOLUTION

Former Member
0 Kudos

hello,

do u want out put in following format?

date1 name1 name2 name3 name4 name5.......name10

means for one date there are 10 columns if yes.

create one internal table in the upper format

e.g

begin of jtab occurs 0,

date like sy-datum,

name1(20),

.

.

.

.name10(20),

end of jtab.

and suppose in itab u r getting o/p like below,

date1 name1,

date2 name 2.

.

.

.

.date10 name10,

then,

loop at itab,

loop at jtab,

if sy-tabix = 1.

jtab-date = itab-date1.

jtab-name1 = itab-name1.

APPEND jtab.

else if sy-tabix = 2.

jtab-name2 = itab-name2.

MODIFY jtab.

else if sy-tabix = 3.

jtab-name3 = itab-name3.

MODIFY jtab.

.

.

.

.

else if sy-tabix = 10.

jtab-name10 = itab-name10.

MODIFY jtab.

end loop,

endloop,

2 REPLIES 2

Former Member
0 Kudos

hello,

do u want out put in following format?

date1 name1 name2 name3 name4 name5.......name10

means for one date there are 10 columns if yes.

create one internal table in the upper format

e.g

begin of jtab occurs 0,

date like sy-datum,

name1(20),

.

.

.

.name10(20),

end of jtab.

and suppose in itab u r getting o/p like below,

date1 name1,

date2 name 2.

.

.

.

.date10 name10,

then,

loop at itab,

loop at jtab,

if sy-tabix = 1.

jtab-date = itab-date1.

jtab-name1 = itab-name1.

APPEND jtab.

else if sy-tabix = 2.

jtab-name2 = itab-name2.

MODIFY jtab.

else if sy-tabix = 3.

jtab-name3 = itab-name3.

MODIFY jtab.

.

.

.

.

else if sy-tabix = 10.

jtab-name10 = itab-name10.

MODIFY jtab.

end loop,

endloop,

Former Member
0 Kudos

Helpful answer..... thank you.......