Hi all ,
I have a query with 3 selection keyfigure and that has to display the rolling quarter month results. I created the offset from the variable and what i need now is that i need display the corresponding quarter month as the column header i know that i can achieve that with the help of customer exit , but plz can anybody tell me the step i have seen the aritcle but unable to get that plz don't send the link
I know those step but what i need is that suppose i have created 3 selection S1,S2,S3 and 3 TEXT VARIABLES TV1,TV2,TV3 and i have created the variable that have to take the user input month , i gave this variable to the text variable tv1 WITH REPLACEMENT PATH and what variable i have to pass for these tv2 and tv3 SO THAT THE ROLLING QUARTER WILL BE DISPLAYED AS A TEXT HEADER.
If I understood your question correctly,
TV1, TV2 and TV3 should have their own text variables type replacement path to get text from the time characteristic (ex: Fiscal Year/Period or Calendar month etc.,) you are restricting the KeyFigures in your query by Customer exit variables S1, S2 and S3 respectively.
Hope this helps
Naveen Rao Kattela
In your case you need only one text variable. Create a text variable with replacement path type and during variable creation select the required characteristic from which you want to derive the text say for e.g. 0CALQUARTER.
After that you need to select with replace by text option. Once you finish creating text variable use the same variable in the column heading of all the three columns.
The text value of the variable will be derived based on the characteristic value which got used in replacement path and based on the value of that characteristic in RKF the text will be derived.
If you are using same characteristic (0CALQUARTER) in all the RKF then you can simply re-use the variable.
So now how can i achieve those offset setting in the text variable . Let say suppose i have 3 selection with offset OS,OS-1, OS-2 and now i have to make the setting in the cmod and have to write the manual like that characteristic -1 . Is it the only way to achieve that thing.
Let me give you a simple scenario that we have implemented in our project, we have a report where we need to display the revenue of three months in three different columns based on the user input of fiscal period.
Now we need to show the dynamic text of all the three column based on the user input month. I have created a Text variable TXT1 with replacment path setting over 0FISCPER.
After that I have created three RKF's RKF1, RKF2, RKF3 and I have put TXT1 variable in the heading of all the three variables.
The definition of my RKF1 consists of 0AMOUNT as key figure and 0FISCPER characteristic restricted by user input variable.
the definition of RKF2 consists of 0AMOUNT and 0FISCPER with input variable and offset as -1.
In the report based on the RKF1 key figure 0FISCPER value the text displayed will be current month text e.g. January and at the same time the value returned by 0FISCPER in RKF2 will be offset by -1 and the text displayed will be December.
So practically you don't need to worry about the text value changes as long as you are using the same time characteristic you can use the same text variable.
Thanx for the reply, let me try and i will revert back to u .
and i am facing one more problem regarding the text variable with processing type customer exit and whenever i debug i am unable to enter into the debugging mode.
I am unable to get this .
I hope you are debugging using RSRT. put a session break point in the CMOD code where you've written the code and execute using RSRT.
And also you could write the code like this
when 'txt_var1' or 'txt_var2' or 'txt_var3'. if i_step = 2. READ TABLE I_T_VAR_RANGE WITH KEY VNAM = 'input_variable' INTO L_S_VAR. IF SY-SUBRC = 0. L_S_RANGE-SIGN = 'I'. L_S_RANGE-OPT = 'EQ'. if I_VNAM = 'txt_var1'. L_S_RANGE-LOW = L_S_VAR+1. "Your offset +1 is just an example elseif if I_VNAM = 'txt_var2'. L_S_RANGE-LOW = L_S_VAR-1. "Your offset elseif if I_VNAM = 'txt_var3'. L_S_RANGE-LOW = L_S_VAR+2. "Your offset endif. APPEND L_S_RANGE TO E_T_RANGE. ENDIF. endif.
Hope it helps
Hi Joe ,
Thanx for the reply ,
Let me try and revert back to u.
But here i am facing the problem that i am unable to enter into debugging after keeping the breakpoint . As per ur example let say txt_var1 :-
Processing type : customer exit.
variable : mandatory.
not ready for input.
but still unable to enter into the debugging.
All these step i performed in the rsrt tcode. Plz tell me if i missed any thing . I think it is correct as per my idea.
Thanx & Regards,
i guess what joe here is refering to.. can be found under variables option
when you open rsrt in execute+debug , see the last option it will be variable-> you will have to drill down further-> there you will see the option of Customer Exit variable Before and Customer Exit variable After , check both and then run query
hope it helps
Did you use the new variable which you are testing in the query?
If you did, then debugging will start in CMOD when you set watch or break point at that variable when you run RSRT without any further selections in RSRT transaction.
Hope this helps !
Naveen Rao Kattela
To debug the EXIT code written you will have to put a external break point. Just open the code written, put cursor on the line where you want to put break point and then from the tool bar select the option external break point.
Once you set the break point, close your query designer, re-open it and execute the query it will go to debug mode.
For your reference check the below article,