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

Reg: Report

Former Member
0 Likes
668

Hi Experts,

I have a requirement in a report. in selection screen two select options like payment document number(payr-vblnr) and check number(payr-chect). i am giving the selection screen for example:

payment doc num range 1 to 10 . and also giving check number range suppose 55 to 65 .. i want to update the table like payment doc num for 1 and check number 55 ,, 2 for 56... like

can anybody suggest..

Regards,

Mahendar.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
646

Hi Mahender,

Please try like below.

REPORT ztestfile.

TABLES : mara.

DATA : BEGIN OF itab OCCURS 0,

matnr TYPE matnr,

mtart TYPE mtart,

END OF itab.

DATA : gw_lines TYPE sy-index,

gw_count TYPE sy-index.

SELECT-OPTIONS : s_matnr FOR mara-matnr,

s_mtart FOR mara-mtart.

AT SELECTION-SCREEN OUTPUT.

LOOP AT s_matnr.

gw_lines = ( s_matnr-high - s_matnr-low ) + 1.

gw_count = 0.

READ TABLE s_mtart INDEX sy-tabix.

DO gw_lines TIMES.

itab-matnr = s_matnr-low + gw_count.

itab-mtart = s_mtart-low + gw_count.

APPEND itab.

CLEAR itab.

gw_count = sy-index.

ENDDO.

ENDLOOP.

Hope this will fulfill ur requirement.

Hi Experts,

I have a requirement in a report. in selection screen two select options like payment document number(payr-vblnr) and check number(payr-chect). i am giving the selection screen for example:

payment doc num range 1 to 10 . and also giving check number range suppose 55 to 65 .. i want to update the table like payment doc num for 1 and check number 55 ,, 2 for 56... like

can anybody suggest..

Regards,

Mahendar.

5 REPLIES 5
Read only

Former Member
0 Likes
646

You have to do the validetion in AT SELECTION-SCREEN OUTPUT event.


REPORT ztest. 
tables: payr.
select-options : s_vblnr for payr-vblnr.
select-options : p_chect for payr-chect.

AT SELECTION-SCREEN OUTPUT. 
IF s_vblnr[] not initial.
   loop at s_vblnr.
      s_chect-sign  =  s_vblnr-sign.
      s_chect-option  =  s_vblnr-option.
      s_chect-high  =  s_vblnr-high + 54.
      s_chect-low  =  s_vblnr-low + 54.
      append s_chect.
      clear: s_vblnr, s_chect.
   endloop.
endif.

So when you enter the value of s_vblnr in selection screen and press enter. the value of s_chect will be autometically updated to your required value.

Read only

Former Member
0 Likes
646

Loop at 1 variable and loop at second variable,after updating in table delete that entry from the two internal table.

Read only

Former Member
0 Likes
646

Hi Mahender(Pune),

Do like this...

Loop at it_doc_range.

read table it_check_number index sy-tabix.

if sy-subrc = 0.

ztable-doc_range_number = it_doc_range-number"here your 1 will come

ztable-doc_cheque_number = it_cheque_number-cheque_number"here tour 55 will come

Modify Ztable.

endif.

endloop.

Regards,

Kishore Reddy

may be u remember me...

Read only

Former Member
0 Likes
647

Hi Mahender,

Please try like below.

REPORT ztestfile.

TABLES : mara.

DATA : BEGIN OF itab OCCURS 0,

matnr TYPE matnr,

mtart TYPE mtart,

END OF itab.

DATA : gw_lines TYPE sy-index,

gw_count TYPE sy-index.

SELECT-OPTIONS : s_matnr FOR mara-matnr,

s_mtart FOR mara-mtart.

AT SELECTION-SCREEN OUTPUT.

LOOP AT s_matnr.

gw_lines = ( s_matnr-high - s_matnr-low ) + 1.

gw_count = 0.

READ TABLE s_mtart INDEX sy-tabix.

DO gw_lines TIMES.

itab-matnr = s_matnr-low + gw_count.

itab-mtart = s_mtart-low + gw_count.

APPEND itab.

CLEAR itab.

gw_count = sy-index.

ENDDO.

ENDLOOP.

Hope this will fulfill ur requirement.

Read only

Former Member
0 Likes
646

resolved