‎2007 Mar 02 11:43 AM
Dear All
I am struck in the following logic. I have a set of GL Accounts whose values are getting populated
in table gt_glaccnts. These values are read from table gt_glaccnts and popultaed in the form of range
gr_glrange_set. Now, the selection screen has a GL account field. If this field is populated at run time,
I need to consider only that range from gt_glaccnts which has this GL, deleting all other ranges. The logic
written below is same. But this is not working. Please suggest where it is going wrong.
Thanks
M A
IF NOT so_saknr[] IS INITIAL.
LOOP AT gt_glaccnts.
gr_glrange_set-sign = 'I'.
gr_glrange_set-option = 'EQ'.
gr_glrange_set-low = gt_glaccnts-from.
gr_glrange_set-high = gt_glaccnts-to.
loop at so_saknr.
if so_saknr-low in gr_glrange_set.
APPEND gr_glrange_set.
endif.
endloop.
ENDLOOP.
else.
LOOP AT gt_glaccnts.
gr_glrange_set-sign = 'I'.
gr_glrange_set-option = 'EQ'.
gr_glrange_set-low = gt_glaccnts-from.
gr_glrange_set-high = gt_glaccnts-to.
APPEND gr_glrange_set.
ENDLOOP.
endif.
‎2007 Mar 02 11:59 AM
Try like this:
LOOP AT gt_glaccnts.
gr_glrange_set-sign = 'I'.
gr_glrange_set-option = 'EQ'.
gr_glrange_set-low = gt_glaccnts-from.
gr_glrange_set-high = gt_glaccnts-to.
loop at so_saknr.
<b>if so_saknr-low <= gt_glaccnts-to and so_saknr-low >= gt_glaccnts-from.</b>
APPEND gr_glrange_set.
endif.
endloop.
ENDLOOP.
‎2007 Mar 02 11:53 AM
if so_saknr-low in gr_glrange_set.
may this line is wrong try giving if so_saknr-low in gr_glrange_set-low. or try using eq
or use a local variable inside the first loop...
‎2007 Mar 02 11:59 AM
Try like this:
LOOP AT gt_glaccnts.
gr_glrange_set-sign = 'I'.
gr_glrange_set-option = 'EQ'.
gr_glrange_set-low = gt_glaccnts-from.
gr_glrange_set-high = gt_glaccnts-to.
loop at so_saknr.
<b>if so_saknr-low <= gt_glaccnts-to and so_saknr-low >= gt_glaccnts-from.</b>
APPEND gr_glrange_set.
endif.
endloop.
ENDLOOP.
‎2007 Mar 02 12:00 PM
Hi,
IF NOT so_saknr[] IS INITIAL.
LOOP AT gt_glaccnts.
gr_glrange_set-sign = 'I'.
gr_glrange_set-option = 'EQ'.
gr_glrange_set-low = gt_glaccnts-from.
gr_glrange_set-high = gt_glaccnts-to.
read table so_saknr with key so_saknr-low in gr_glrange_set.
if sy-subrc = 0.
APPEND gr_glrange_set.
endif.
ENDLOOP.
else.
LOOP AT gt_glaccnts.
gr_glrange_set-sign = 'I'.
gr_glrange_set-option = 'EQ'.
gr_glrange_set-low = gt_glaccnts-from.
gr_glrange_set-high = gt_glaccnts-to.
APPEND gr_glrange_set.
ENDLOOP.
endif.
Regards
Sudheer