Tuesday, October 2, 2012

Something about BEx’s variables

Someone may say that everything was already said about BEx’s variables. In my opinion; truth is that there is always something new on this topic. Recently I came across useful SAP Notes discussing this topic. And guess what? I learned a lot from those notes. Therefore I’m sharing it here.

121291 - Tips and tricks for the use of variables; Discuss hints related to “shifted variables (offset based)”. Useful for year to year data, comparison of cumulative values (e.g. CO-PA data). Efficient Business Content variables: 0CYEAR - refers automatically to the current year; 0CYTCM - Current year to current month;

199014 - Tips & tricks with variables II; Describes behavior of following Business Content variables: 0FYTCFP - Current year to current fiscal month; 0FYTLFP - Current year to previous fiscal month

339476 - Tips & tricks for variables part III; Depicts a function to override input of variables (given on variable screen). This can be achieved by activating setting 'Can be changed in query navigation' in variable maintenance for characteristic variables.

381709 - Tips and tricks for variables part iV; Describes cases when variable values cannot be changed even it is dynamically changeable variable based on a compounded characteristic.

629697 - Variable exit: Fields SIGN and OPT; Discuss combinations of SIGN and OPT as components of internal table E_T_RANGE that are allowed for the different variable types.

492504 - Dependent customer exit-type variables; Discuss various values of I_STEP parameter which controls when BW: Enhancements for global variables in reporting (RSR00001) is called:

1 - Call directly before the variable is entered
2 - Call directly after the variable is entered. Only if same variable could not be filled for I_STEP = 1 and it is not ready for input.
3 - To check values of variables.
0 - Enhancement is not called from variable screen. Call can come from the authorization check or from the monitor.

PS: If you want to make sure that your variable is executed in particular I_STEP, put code similar to following:

IF I_STEP = 1.
        RAISE no_processing.
ENDIF.

Other posts on BE’x variable topic:

1 comment:

Cyril said...

Thank you very much for this synthesis !