on 10-12-2015 2:18 PM
Hi All,
I have created a customer exit variable in bex (not ready for input) based on Fiscal Period. In the selection screen of bex i have fiscal period (from input variable) and currency type.
I have implemented the EXIT_SAPLRRS0_001 where I just put a hardcoded breakpoint. Now after i execute the bex , the debugger is hit only once overall (after i give the selection values in the selection screen). Inside debugger ,it shows i_step value as 3. After that it shows the output of bex but debugger is not hit for any other value of i_step
Now i have to write the code for i_step = 2 since I need to decrease the period by 1 for my customer exit variable but the exit is not getting triggered itself for i_step = 2
Hi Amber,
You started the discussion with:
"I have created a customer exit variable in bex (not ready for input) based on Fiscal Period. In the selection screen of bex i have fiscal period (from input variable) and currency type."
Do you have two Variables for Fiscal Period: one of type "manual input" and one of type "customer-exit"?
If that is the case, then I suggest to remove the "manual input" Variable and make the "customer-exit" Variable "ready for input". Write a small piece of coding for i_step = 1:
IF I_STEP = 1.
C_CHECK_AGAIN = 'X'.
ENDIF.
The user can input on the variable pop-up but setting the parameter C_CHECK_AGAIN to 'X' will trigger the same Variable in i_step = 2. Now your coding will be processed.
Best regards,
Sander
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
If you need to decrease the fiscal based on the input then you should use the i_step=2 in your customer exit code..
Can you post your code?
You may also use replacement path based on the input variable then just use an offset of -1..
Regards,
Loed
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
DATA:LOC_VAR_RANGE LIKE RRRANGEEXIT,
L_S_RANGE TYPE RSR_S_RANGESID,
Z_CURR_PERIOD TYPE /bi0/oifiscper,
Z_PREV_PERIOD TYPE /bi0/oifiscper.
BREAK-POINT.
if i_step = 2.
case i_vnam.
when 'ZP_FPER'.
LOOP AT i_t_var_range INTO loc_var_range WHERE vnam = '0FISCPER'.
Z_CURR_PERIOD = loc_var_range-low.
CALL FUNCTION 'RST_TOBJ_SHIFT'
EXPORTING
I_TIMNM = '0FISCPER'
I_TIMVL = Z_CURR_PERIOD
I_SHIFT = -1
* I_EXTRA_PERIOD = RS_C_FALSE
I_FISCVARNT = 'K4'
* I_INFOCUBE =
IMPORTING
E_TIMVL = Z_PREV_PERIOD
* EXCEPTIONS
* NO_FISCVARNT = 1
* OUT_OF_RANGE = 2
* NOT_NUMERIC = 3
* WRONG_CLIENT = 4
* INVALID_FORMAT = 5
* X_MESSAGE = 6
* OTHERS = 7
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
l_s_range-low = Z_PREV_PERIOD .
* l_s_range-high = ZLSDAY .
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
APPEND l_s_range TO e_t_range.
ENDIF.
ENDLOOP.
ENDCASE.
endif.
Adding to the above , I observed is when i remove the selection screen of bex query , the debugger hits thrice as expected with i_step = 1,2,3 . The moment I add selection screen , the debugger is triggered just once for i_step =3
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
86 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.