Authorization (rsecadmin) with customer exit variable
Hello,
I need to maintain authorization on 0CALMONTH with a customer exit variable.
0CALMONTH is "authorization relevant"
I created a variable of type "customer exit" : ZVAR001 (this variable is OK, I checked its value in a query)
I created a new authorization object with 0CALMONTH = $ZVAR001.
When I run my query I have a message due to authorization error.
If I change my authorization object by replacing my variable ($ZVAR001) by a constant value I have no authorization problem.
I don't understand why...
Error logs don't help me to solve my problem : I have the following message "Message EYE007: You do not have sufficient authorization" and system just says I have "0CALMONTH I EQ $ZVAR001 " but doesn't precise values under variable ZVAR001
Thanks for your help
Indeed problem was in costumer exit because I used condition with "I_STEP". Since I have delete my condition I have no authorization problem with my variable....
Similar Messages
-
Authorization with customer exit variable (CP, BT, EQ)
Hi SDN-Experts,
I have a question concerning the new authorization concept.
I created an authorization for 0COSTCENTER which also contains the 3 special characters 0TCAACTVT, 0TCAIPROV and 0TCAVALID. I inserted a customer exit variable for 0COSTCENTER. The exit reads datasets from a db table which contains authorizations for the actual user. The authorizations have different formats, e.g. "1000", "1000;1200", "25*" etc.
The internal table e_t_range is filled as followed in the exit:
i eq 1000
i bt 1000 1200
i cp 25*
This does not work. It works if I only use "eq" OR "cp". But not both at the same time.
How can I achieve to use the different authorizations in the db table for the bi authorization?
Thanks in advance...
JoergHi Olivier.
Yes, the variable is defined as selection option and I did also try to use "EQ" instead of "CP".
I tested again with another variable which is "ready for input" and is not used in an authorization. The Variable is filled in the customer exit. This is the code:
WHEN 'ZJGR_COSTCTR_TEST'.
l_s_range-sign = 'I'.
l_s_range-opt = 'BT'.
l_s_range-low = '0000001000'.
l_s_range-high = '0000001200'.
APPEND l_s_range TO e_t_range.
l_s_range-sign = 'I'.
l_s_range-opt = 'CP'.
l_s_range-low = '0000002*'.
APPEND l_s_range TO e_t_range.
The result in the variable screen in BEx Analyzer is the following:
1000 - 1200;0000002*;
And it still does not work. It seems that you could not mix EQ, BT and CP. But this is exactly what I have to do with the authorization variable...
Do you have any other tipps that I might try out?
Thanks,
Joerg -
Problem with customer exit variable in BeX Query
Hi All,
We have created a customer exit variable in a query and populated with few patterns in customer exit.
My query has to bring all the records where the address line is containg the patterns passed through customer exit. Here the query is not working as expected.
It is bringing the values where the address line is exactly same as the pattern and not bringing the records where the pattern is part of the address line.
For example: Pattern passed in customer exit = 'HOSPITAL'
The record where address line = 'HOSPITAL' is shown in the rpeort, where the record with address line = 'HOSPITAL ROAD' is not shown in the report.
I would appreciate your help on this.
Regards,
RakeshHi Diogo,
Below is the code I am using in the customer exit.
SELECT * FROM zae_tt_pbuild INTO TABLE gt_pbuild.
IF sy-subrc = 0.
LOOP AT gt_pbuild INTO gs_pbuild.
CONCATENATE '*' gs_pbuild-pbuild '*' into lv_pattern.
ls_range-low = lv_pattern.
ls_range-sign = lc_sign_i.
ls_range-opt = 'CP'.
APPEND ls_range TO e_t_range.
CLEAR: ls_range,
lv_pattern.
ENDLOOP.
ENDIF.
ENDIF.
I have tried using '%' instead of '*' aswell but the result is same.
Thanks,
Rakesh -
Problem with customer exit variable that is input ready as well
Hello all,
I'm facing an issue with a customer exit variable that again has been defined as input ready. I'm not sure why it is working incorrectly and I#m wondering if this is a bug or if I do s.th. stupid.
The problem is that in the exit program ZXRSRU01 this varibale does not go into the program code I have prepared for this variable. I have added entry points for all three i_step values 1,2,3, but the code will never be touched and in debugging I can see that it simply pypasses the code for this variable.
I have tried to enter a value or to leave it blank, no difference.
When I run another test by just using a customer exit variable w/o input ready capability, then I have no issue, the exit does exactly what I have coded.
Does this mean, that a customer exit variable along with input readiness dows not work ?????
You may ask why I need this variable. Well, my intention is to use the input value of this variable A to derive other values for a complete different variable B. Afterwards I want to erase the input given into variable A to have it blank.
Any comments are appreciated
ThanksHi Heiko,
I assume A & B variables are defined on different Characteristics. If you wish to derive B based on A, you can create the Query Characteristic Restriction on B & have a dummy RKF restricted on A whose processing is by Manual Input; where processing of B is by Customer Exit. In istep 2 you can check for B, read A & derive B. There would not be a need to blank out A since the Query would not be restricted on A - you can hide the dummy RKF from showing in the output. Just a thought.
--Priya -
Text Variable replace with Customer Exit Variable
Dear Experts,
I created a text variable based on replacementh path (instead of customer exit). The reference characteristic is same that as my customer exit Variable and replace it by Key.
I want to replace it with already Existing Customer Exit Variable but it is not displaying in the List Box even though existing variable option is mandatory.
Can any one Suggest me the answer for this.
Regards
Supraja.KI do not think you can select Customer Exit variable, if you see the type is selected to Char Value Variables and it is not editable.
It would be suggested to go for Customer Exit procesing type for your text variable.
Cheers,
Neel. -
RSCRM: Query date with customer exit variable
Hi All,
Is there any way to run the RSCRM transaction with a query with a customer exit variable for a date characteristic?
The issue is that the query ran ok but the variable is not being updated when the RSCRM query is running with a background job or a process chain.
Thanks in advance
EVI do not think you can select Customer Exit variable, if you see the type is selected to Char Value Variables and it is not editable.
It would be suggested to go for Customer Exit procesing type for your text variable.
Cheers,
Neel. -
Problem with customer exit variable
HI i have created a customer exit variable to rread a table based in user input and pass it to my variable , every thing works fine but i get a waring message in my WAD saying
RANGE-LOW for customer exit variable ZVSO_PRM corrected to # BRAIN 746
Does any one have any idea why is it comming
my code is as follows
WHEN 'ZVSO_PRM'.
IF I_STEP = 2.
DATA: BEGIN OF ZPROD_MODEL OCCURS 0,
I_PROD LIKE ZCURR_PM_T-/BIC/ZPRODMOD,
END OF ZPROD_MODEL.
DATA: BEGIN OF ZREGIO_TABLE OCCURS 0,
REGION LIKE ZCURR_PM_T-/BIC/ZREGION,
END OF ZREGIO_TABLE.
LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
WHERE VNAM = 'ZREG02'.
CLEAR L_S_RANGE.
ZREGIO_TABLE = LOC_VAR_RANGE-LOW.
APPEND ZREGIO_TABLE.
ENDLOOP.
LOOP AT ZREGIO_TABLE.
SELECT /BIC/ZPRODMOD FROM ZCURR_PM_T INTO TABLE ZPROD_MODEL WHERE /BIC/ZREGION = ZREGIO_TABLE-REGION.
APPEND ZPROD_MODEL.
ENDLOOP.
SORT ZPROD_MODEL.
CLEAR L_S_RANGE.
LOOP AT ZPROD_MODEL.
L_S_RANGE-LOW = ZPROD_MODEL-I_PROD.
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
ENDLOOP.
ENDIF.Could it be that the code doesn't find any value in ZCURR_PM_T table for the specified input region?
-
Problem with customer exit variable on date range
Hi All,
I have customer exit variable on date range. In the selection screen it has to give the week range as a default (05/21/2009 to 05/27/2009).
Earlier its working fine and from yesterday onwards it is not working properly. yesday onwards default date range was not displaying in selection screen.
Wht would be the problem.
Thanks in AdvanceHi Ashish,
I checked every thing what u told earlier. Every thing is fine.
And another thing is
I have routine in infopackage level. Since day before yesterday it was working fine and yesterday onwards it was not working.
Eg: budat will take the data based on routine for the week. But yesterday onwards it is not picking up the data.however I have the data in datasource for the week.
Wht would be the problem. I debuged the code and its working fine.
Sekhar -
Error With Customer Exit Variable
Hi,
I need To Create Customer Exit For Text Variable based on Two Input Variable values.
can any one correct my code Code is written below based on quarter and Fiscalyearvarient.
I have to get calmonth Text value.
I am getting the error as : "I_T_VAR_RANGE" is a table without a header line and therefore has no
Component Called "0PERIV".
DATA : l_s_range TYPE rsr_s_rangesid,
loc_var_range LIKE rrrangeexit.
IF i_step = 2.
CASE i_vnam.
WHEN 'ZTXT_CML' .
CLEAR: l_s_range.
LOOP AT i_t_var_range INTO L_S_VNAM WHERE vnam = 'ZQUAR' AND vnam = '0periv'.
IF i_t_Var_range-0PERIV = 'IE'.
IF i_t_var_range-ZQUAR = '1'.
l_s_range-low = 'APRIL'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF i_t_var_range-ZQUAR = '2'.
l_s_range-low = 'JULY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF i_t_var_range-ZQUAR = '3'.
l_s_range-low = 'OCTOBER'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF i_t_var_range-ZQUAR = '4'.
l_s_range-low = 'JANUARY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ENDIF.
ELSEIF i_t_var_range-0PERIV = 'K4'.
IF i_t_var_range-ZQUAR = '1'.
l_s_range-low = 'JANUARY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF i_t_var_range-ZQUAR = '2'.
l_s_range-low = 'APRIL'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF i_t_var_range-ZQUAR = '3'.
l_s_range-low = 'JULY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF i_t_var_range-ZQUAR = '4'.
l_s_range-low = 'OCTOBER'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ENDIF.
ENDIF.
APPEND l_s_range TO e_t_range.
ENDLOOP.
ENDCASE.
ENDIF.Hi Supraja,
You would have to declare I_T_VAR_RANGE internal table as the table with an header line.
This you will find in data declaration segment.
ie
DATA : I_T_VAR_RANGE type <table name> WITH HEADER LINE.
or
Create a work area like l_s_var_range.
Use work area while performing operations in your code and later append the record to the table i_t_var_range.
DATA : L_S_VAR_RANGE type i_t_var_range.
Also, i_step = 3 is the right one, because you are processing the customer exit based on the values of the user input of two variables.
Modified code below.
DATA : l_s_range TYPE rsr_s_rangesid.
DATA : L_S_VAR_RANGE type i_t_var_range,
loc_var_range LIKE rrrangeexit.
IF i_step = 3.
CASE i_vnam.
WHEN 'ZTXT_CML' .
CLEAR: l_s_range.
LOOP AT i_t_var_range INTO l_s_var_range WHERE vnam = 'ZQUAR' AND vnam = '0periv'.
IF l svar_range -0PERIV = 'IE'.
IF l_s_var_range -ZQUAR = '1'.
l_s_range-low = 'APRIL'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF l_s_var_range -ZQUAR = '2'.
l_s_range-low = 'JULY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF l_s_var_range -ZQUAR = '3'.
l_s_range-low = 'OCTOBER'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIFl_s_var_range -ZQUAR = '4'.
l_s_range-low = 'JANUARY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ENDIF.
ELSEIFl_s_var_range -0PERIV = 'K4'.
IF i_t_var_range-ZQUAR = '1'.
l_s_range-low = 'JANUARY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF l_s_var_range -ZQUAR = '2'.
l_s_range-low = 'APRIL'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF l_s_var_range -ZQUAR = '3'.
l_s_range-low = 'JULY'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ELSEIF l_s_var_range -ZQUAR = '4'.
l_s_range-low = 'OCTOBER'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
ENDIF.
ENDIF.
APPEND l_s_range TO e_t_range.
ENDLOOP.
ENDCASE.
ENDIF.
Hope it helps,
Best regards,
Sunmit. -
Help with Customer exit variable
Hi Guys,
I need your urgent help. I have a requirement where I need to create a variable (on CALDAY) in a report which should use the input value given for another variable (created on CALMONTH). To put in words more clearly, CALMONTH is a variable that is mandatory for input but the CALDAY variable should not appear on the selection screen. I was told that I should write a customer exit to make this happen. So can someone please explain me the process of creating a customer exit and give me the code.
WHEN CALMONTH values are selected to be 07/2006 - 08/2006... CALDAY values should be 07/01/2006 to 08/31/2006.
CALMONTH is user entry, mandatory, range and multiple selection variable.
Early reply is highly appreciated and duely rewarded. Please let me know if I am not clear about the requirement. Thanks a bunch in advance.Let us say, user enters multiple ranges for the month, you would want corresponding date ranges for the same, right?
data : w_date like sy-datum.
case I_VNAM.
when 'ZCALDAY'. " Calday var
loop at i_t_var_range into LOC_VAR_RANGE
where iobjnm = 'ZCALMONTH'.
WA_RANGE-SIGN = 'I'.
wa_date+2(6) = loc_var_Range-low.
wa_date+0(2) = '01'.
wa_range-low = wa_date.
if loc_var_range-high eq space.
WA_RANGE-OPT = 'EQ'.
else.
wa_range-opt = 'BT'.
wa_date+2(6) = loc_var_range-high.
wa_date+0(2) = '01'.
wa_date = wa_date + 31.
wa_date+0(2) = '01'.
wa_date = wa_date - 1.
wa_range-high = wa_date.
endif.
append wa_range to e_t_range. clear wa_range.
endloop.
endcase.
This should do. -
Hello,
I have created a query with customer exit variable.this variable calculates cumulative month from the beginning of the year. this variable depends on another regular variable 0PCALMON (single value, mandatory). i also use this variable in the query to show the month itself.
<b>the problem is as follow:</b>
until yesterday the 0PCALMON variable pop up normally, but now the variable doesn't pop up at all!
Does anyone have an idea?
Thanks,
MayaHi,
The variable may be personalized with some value.
<b>To remove the personalization for a user:</b>
Step 1: RSA1 -> Search for ODS 0PERS_VAR
Step 2: Manage -> Contents ->selective deletion
Step 3: Put the user to remove the personalization
http://help.sap.com/saphelp_nw04/helpdata/en/01/42c73c13b0ce5be10000000a114084/content.htm
Regards
Happy Tony -
Default value of BeX customer Exit variable not Displayed in WeBI??
Hello Experts,
We are stuck with a problem where WeBI report is created on top of BeX query and we are not able to see the default value of Bex Customer exit variable in WeBI run. Here is the complete scenario:
1. One restricted KF is created in BeX, restricted with Customer exit variable on net Due date. And this variable is mandatory, ready for input, and Default value in calculated is user exit as current Week's Monday.
2. So, by default KF data should be restricted to Monday of current week, if user does not change this value.
3. Now, WeBI report is created on top of this Bex query, and all is working fine, i.e. we are getting variable as Prompt in WeBI, but Default value is not shown while Running the Webi Report.
So, need your inputs on the same, if default values from BeX in WeBI is supported or not? If yes, why this is happening, and how to resolve it?
Please notice, the restrcition is in KF only, it is not a separate restrcition on Net Due date in Filter area or in Defualt area of BeX
and we are on SAP BW 7.1 and BOXI 3.1 SP4.
Regards,
Vipul
Edited by: VIPUL GOYAL on Nov 23, 2011 9:44 PMHi,
See 1285993 - Support of Customer Exit Variables from BEx query into WebIntelligence via OLAP universe
WebI will prompt when executed, but the default values calculated by the user exit - do not appear.
Note: If the BEx variable has property 'ready for input' set / enabled, then its WebI prompt shows ok, but no default value appears.
Cause
This behaviour expected 'by design' (in the context of the product's current limitations) as explained in the online guide below:
Please refer to Chapter 7, page 44, document link here: http://help.sap.com/businessobject/product_guides/boexir3/en/xi3_sap_olap_universes_en.pdf
Characteristic variable > processing type > Customer Exit is "Supported, without user entry"
--> This should be understood as meaning "User will not be shown a prompt"
regards,
H -
Hierarchy Node authorization with customer exit
Hi All,
I have created a hierarchy for an info-object A along with nodes test1 and test 2.node test1 consisit of value 10,20,30,40,50 and node test2 consist of value 60,70,80,90. .
1) I want that perticuler user should access perticuler node in hierarachy for that reason I have created a database table in which i have maintained the username and the values from the Infoobject A .I want to write a customer exit code in which user X can access node test1 and user Y can access node test2
but in database table i can not maintain the nodes i can only maintain the values from the nodes
so how can i restrict the user to perticuler node instead of values
The authorization values for the perticuler user will get filled by customer exit variable maintained in the authorization profile
can any body suggest me or send me example customer exit code for this scenario.
I really appreciate your thoughts on this issue.
Thanks,Hi,
in addition to Anil's valid input, make sure that ZTEST is NOT ready for input. Indeed "ready for input" vars cannot be changed via customer exits.
hope this helps...
Olivier. -
Understanding complex query with selections(customer exit variables)
Hi experts,
I am trying to understand one query having a combination of selections and BEx variables in it.
In Characteristic Restrictions panel of Query Designer:
we have some CHARs restricted by means of authorisation variables
In Default Values panel:
some other CHARs without any filters
In free CHARS panel
some characteristics
In Rows panel:
some more chars that were placed in Default values panel
In Columns panel:
Formula YTD on selection YTD
Formula Monthly on selection Monthly
Selection on YTD characteristic(hidden)
Selection on Monthly characteristic(hidden)
Selection XX(in definition,I saw selection on YTD Keyfigure and a characteristic variable VAR1(i-step=1) filled with customer exit..this variable picks up right version of Master Data...our system has many versions of master data,one for each year)
Selection YY(in definition,I saw selection on Monthly key figure and the same characteristic variable VAR1 we used in Selection XX)
When I execute this..I see one variable popup which asks for values for year and version of master data...I enter master data version for that year and the year....I see the result...
Now I tried to experiment to learn...I deleted Selection XX and Selection YY and tried to execute....a variable popup asking for year...I enter year and tried to execute..it throws message---'Value for variable VAR2 cannot be determined'......
I couldnot understand this error because VAR2 is a customer exit characteristic variable defined in CMOD...ITS NEVER USED IN THIS QUERY...but defined in CMOD to pick up correct version of Master data..its defined in such a way that it picks value depending upon VAR1 varaible....both variables function is same...its just that VAR1 works on i_step=1 and VAR2 works on i_step=2 plus dependent on VAR1....
Can anyone understand why I am seeing error about VAR2 when its never used in Query....??
Thanks for your inputs....Hi Vikram,
I am unable to find VAR2 anywhere in query designer....Can it be like that its hidden?
Thanks and Rgds,
SChand -
Customer exit variable with exclusion
Hello all, anyone know why a customer exit variable cannot exclude values ?
I've tried with multiple, single and interval without success (it give me a generic error in the customer exit for my variable).
Only the "selection option" mode seems to be enabled to exclude values (also in debug mode with rsrt transaction).
Unfortunately, I cannot use selection option (because this exclusion is an integration of pre-existence selection on a complex structure).
We have SAP BW 3.1C, with SP16. I've looked for sap notes but nothing about this problem (may be a limit).Now I post my code. The variable is a "Multiple Single Values", optional, not "Ready for Input".
This is my code.
DATA: L_S_RANGE TYPE RSR_S_RANGESID.
If I_STEP = 2.
CASE I_VNAM.
WHEN 'ZXXXXX'.
clear l_s_range.
l_s_range-sign = 'E'.
l_s_range-opt = 'EQ'.
l_s_range-low = 'xxxxxxx'.
append l_s_range to e_t_range.
ENDCASE.
ENDIF.
The query raise an error (generic error on customer exit).
I've debugged the code. Error has raised from plausibility_check on RRS_VAR_VALUES_EXIT_AFTER. The following is the code that raise the error.
CASE i_vparsel.
WHEN rro04_c_vparsel-param
OR rro04_c_vparsel-<b>multiple</b>
OR rro04_c_vparsel-table.
IF <l_s_range>-sign <> rs_c_range_sign-<b>including</b>
OR <l_s_range>-opt <> rs_c_range_opt-<b>equal</b>.
PERFORM raise USING rs_c_false g_c_ue_invalid_range
i_vnam space space space.
ENDIF.
From this code, it seems that with multiple selection we only have sign including and option equal.
What do you think about ?
Maybe you are looking for
-
Using Firefox 34.0 on Ubuntu. To expand on my particular problem, I use this feature exclusively for going over many days of TV/radio demand services, opening all of them in different tabs, and then at the end 'bookmark all tabs', and store them in a
-
How can remove gcc from solaris 10
HI All, how can i remove gcc pkg from solaris 10 thanks
-
How does Craigslist remember my last visited location in private browsing?
This is for a Mac running OSX 10.8 using private browsing with no exceptions of any kind for any site.. I use a Craigslist bookmark for, say Pittsburgh. I then switch inside CL to, say, Los Angeles CL. I then close FF. I restart FF and using my Craig
-
Printers not visible through RDC
Hi All, This is not really an SDK or SAP related error but still wanted an opinion here. I am connecting to SAP server through remote desktop connection. the server has static IP to connect to. while connecting, I am sharing all my local drives, prin
-
HT1222 Non responsive operating system after this most recent update?
About 5 days ago, my computer randomly decided to shut off without warning. The next day, Safari caused my computer to crash if I had it open for more than 30 seconds. That night, the operating system could hardly take a terminal command without acti