cancel
Showing results for 
Search instead for 
Did you mean: 

Populate customer exit variable based on Query

Former Member
0 Kudos

Hi,

Is it possible to populate a customer exit variable based on Query being run??

If yes, how can we achieve this?

Please help.

Thanks,

Arun

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member188080
Active Contributor
0 Kudos

Hi,

Just check below variable if it is of any use for you

----


  • INCLUDE ZXRSRU01 *

----


      • Enhancement: MultiProvider using InfoProvider Variable

include YBW_INFOPROVIDER_VARIABLE.

&----


*& Include YBW_INFOPROVIDER_VARIABLE *

&----


DATA:

ls_var TYPE rrs0_s_var_range,

ls_range TYPE rsr_s_rangesid,

l_contained TYPE c,

ls_mapping TYPE ybw_mapping,

lt_mapping TYPE TABLE OF ybw_mapping.

  • Called after variable popup

IF i_step = 2 AND i_vnam = 'INFOPROV'.

- 13 -

  • Read mapping table

REFRESH lt_mapping.

SELECT * FROM ybw_mapping INTO TABLE lt_mapping.

  • Process all selection for country variable

REFRESH e_t_range.

LOOP AT i_t_var_range INTO ls_var WHERE vnam = 'S_COUNT'.

  • Process all mapping rules

LOOP AT lt_mapping INTO ls_mapping.

  • Always fill LOW and HIGH, Otherwise logic below will not work

IF ls_mapping-high IS INITIAL.

ls_mapping-high = ls_mapping-low.

ENDIF.

  • Check if selection is contained in the defined InfoProvider

CLEAR l_contained.

CASE ls_var-opt.

WHEN 'EQ'.

IF ls_var-low BETWEEN ls_mapping-low AND ls_mapping-high.

l_contained = 'X'.

ENDIF.

WHEN 'BT'.

IF ls_var-low <= ls_mapping-high AND

ls_var-high => ls_mapping-low.

l_contained = 'X'.

ENDIF.

ENDCASE.

  • Add InfoProvider to return table

  • Note: Use COLLECT to avoid duplicates

IF l_contained = 'X'.

CLEAR ls_range.

ls_range-sign = 'I'.

ls_range-opt = 'EQ'.

ls_range-low = ls_mapping-infoprov.

COLLECT ls_range INTO e_t_range.

ENDIF.

ENDLOOP. " lt_mapping

ENDLOOP. " i_t_var_range

EXIT.

ENDIF.

-

Thanks and regards

Former Member
0 Kudos

Hi,

What is the requirement .. can you please elaborate a bit .. if you want the result as an input for another report of existing report then RRI report...

Correct me if my understanding is wrong...

-


Thanks

BVR