0% found this document useful (0 votes)
180 views4 pages

Pricing Authorization

This document describes how to implement authorization checks for condition screens in pricing to restrict which condition types, subtotals, and fields users can access based on their authorizations. It involves creating new authorization fields and objects, modifying user exits, and assigning authorizations and profiles to users that determine which pricing procedures and condition line fields they can view and edit. The solution only allows creation, editing, and viewing of condition lines for which the user has authorization.

Uploaded by

Irfan Rashid
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
180 views4 pages

Pricing Authorization

This document describes how to implement authorization checks for condition screens in pricing to restrict which condition types, subtotals, and fields users can access based on their authorizations. It involves creating new authorization fields and objects, modifying user exits, and assigning authorizations and profiles to users that determine which pricing procedures and condition line fields they can view and edit. The solution only allows creation, editing, and viewing of condition lines for which the user has authorization.

Uploaded by

Irfan Rashid
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

SAP Note

105621 - Authorization check for the condition screen


Version 23 Validity: 07.11.2012 - active

Language English

Header Data
Released On 07.11.2012 19:05:34
Release Status Released for Customer
Component
SD-BF-PR Pricing
Priority
Recommendations / Additional Info
Category
Consulting

Symptom
Up to now you could not exclude certain condition types and subtotal lines from being processed or
displayed in the condition screen by restricting the authorizations.

Other Terms
VH609

Reason and Prerequisites


This was not programmed.

Solution
A solution is only possible if you use a modification. For information about the maintenance
responsibility, refer to Notes 170183 and 381348. The following text describes a solution option
based on a modification. Inquiries and problem messages concerning this subject are not
covered by Support but are processed only by Consulting, which is subject to a separate
fee.
By creating two additional authorization fields and a new authorization object and by using the user
exits
l

USEREXIT_FIELD_MODIFICATION

USEREXIT_FIELD_MODIFIC_LEER

USEREXIT_FIELD_MODIFIC_KZWI and

USEREXIT_FIELD_MODIFIC_KOPF

to display and manually change conditions, and the user exit


l

USEREXIT_PRICING_CHECK

to create new conditions, a solution is available which allows you only to create, manually change
and display the condition lines of a pricing procedure for which the user has an authorization. For
conditions and subtotal lines for which the user has no authorization, only the condition key and
the description are displayed. All other fields are hidden.
Restrictions
1. This consulting note contains an example of how the SAP authorization concept can be used in
pricing and which important points you must consider. In particular, everything that differs
from this example belongs to the consulting area.
2. You then must assign access authorizations for every user for all of the pricing procedures
used and the level numbers used in these pricing procedures. If you do not do this, the system
no longer displays the condition lines or no longer displays them in the same scope as you
require for your work.
3. In the change mode (for example, VA02), you cannot prevent that conditions are created or
that a new pricing is started within this solution (the user exits required for this are
missing).
4. If, due to a missing authorization, you cannot create a condition, the system displays an
error message which prevents further processing. This line can only be eliminated by deletion.
5. On the empty condition lines, only the field for the condition key is ready for input. You
can enter the condition rate only after you press ENTER and after a successful authorization
check.

Procedure described in detail


1. Maintaining authorization fields:
Use transaction SU20 to create the two new authorization fields 'ZKALSM' and 'ZSTUNR'. To do
this, use the data elements 'KALSM' (or 'KALSM_D') and 'STUNR'.
2. Create the authorization object 'Z_KONH_KLS' (transaction SU21):
a) Select 'SD' (Sales and Distribution)
b) Choose "Change".
c) Create the following values:
l

Object: 'Z_KONH_KLS'

Text: 'Condition: Authorization pricing procedure and level number.

Class: 'SD' (Sales and Distribution)

Include the following authorization fields in the authorization object:

'ZKALSM'

'ZSTUNR'

'ACTVT'.

3. In transaction SE91, create message 609 in message class VH with the following text: "No
authorization to create the condition".
4. As described below, create the includes 'ZZAUTH01' and 'ZZAUTH02' in the customer namespace
(transaction SE38). Select the following attributes:
l

Type = 'I' (INCLUDE program)

Status ='K' (Customer Production Program)

Application = 'V' (Sales)

Development Class: Select a suitable development class in the customer namespace.

As the title, select the following


l

for 'ZZAUTH01': "Authorization check for the condition screen",

for 'ZZAUTH02': "Authorization check for creating conditions"


5. Change the user exits

USEREXIT_FIELD_MODIFICATION

USEREXIT_PRICING_CHECK

USEREXIT_FIELD_MODIFIC_LEER

USEREXIT_FIELD_MODIFIC_KZWI

USEREXIT_FIELD_MODIFIC_KOPF

as described below (transaction SE38). Check, save and generate the data.
6. Create (in accordance with the previous standard) at least one authorization that enables
access to all of the pricing procedures and condition lines (transaction SU03):
l

Double-click "Sales and Distribution" Among other things, the system displays the authorization
object 'Condition: Authorization pricing procedure and level number' which was created in the
above steps.
Double-click this authorization object: The system displays a list of the authorizations that
have already been created for this authorization object.
Choose "Create": Authorization COND_ALL, text 'Authorization for all conditions'
One after the other, position the cursor on 'Action', 'Procedure' and 'Level number' and, by
choosing 'Maintain values', enter thevalue '*' (that is, authorization for all actions,
pricing procedures and level numbers).
Finally choose 'Activate'.
7. Use transaction SU02 to create at least one single profile:

Choose 'Generate work area':The system displays a list of all existing profiles.

Choose 'Create' and enter in the dialog box:

Profile:'ZCOND_ALL'

Text:"Authorization for all conditions"

Profile type: "Single profiles"

Select the authorization object Z_KONH_KLS created in the above steps (Condition:
Authorization pricing procedure and level no.).

After this, enter the previously created authorization COND_ALL.

Save and activate your changes.

8. Assign the profile ZCOND_ALL to the users that should have unrestricted authorization to work
in the condition screen. This ensures that these users can continue working as before despite
the implementation of an authorization check (however, the changed authorizations do not become
effective until the next logon of the user).
Application example
User 0815 should only be allowed to work with the standard pricing procedure RVAA01.The user
should be allowed to see and edit only all price and discount conditions, but not the costs and
profit margin information.
In the pricing procedure RVAA01
l

the actual costs are on level number 8 (na),

prices with surcharges and discounts are on level number 11 (PR00) to 908 (net value 3) (a),

prices for intercompany billing are on level number 909 and 910 (na),

cash discount, tax and other various information are on level number 914 to 935 (a),

costs and profit margin are on level number 940 to 950 (na),

expected customer prices (EDI1 and EDI2) are entered on level number 970 and 971 (a).

(a) means 'User is authorized' and (na) means 'User is not authorized' to display and change the
relevant information.
1. Use transaction SU03 to create an authorization with the following values:Double-click
'Sales & Distribution'. Double-click to
select the authorization object 'Condition:Authorization pricing procedure and level
no.'.Create the new authorization COND_STD with the text 'Standard authorization for
conditions'.Maintain the following values:
a) Activity = '*'
b) Procedure = 'RVAA01'
c) Level numbers:

'011' to '908'

'914' to '935'

'970' to '971'.

Note that you must enter three-digit level numbers because three-digit strings
are transferred during the parameter transfer to the authorization object (if you do not enter a
three-digit level number, the authorization check always fails).
d) Save and activate this new authorization.
2. Use transaction SU02 to create at least one single profile:
a) Generate work area
b) Create profile: 'ZCOND_STD', text: 'Standard authorization for conditions', single
profile
c) As described above, select the authorization object Z_KONH_KLS and assign the
authorization COND_STD to it. Save and activate your changes.
3. In transaction SU01, assign the single profile ZCOND_STD to your user 0815 and save this. The
new authorization becomes effective when the user 0815 next logs on.

Other Attributes
Transaction codes

CLEAR

PR00
SE11
SE38
SE91
SU01
SU02
SU03
SU20
SU21
VA02

Validity
Software Component From Rel.
SAP_APPL
46C
470
500
600
602
603
604
605
606
616
617

To Rel. And Subsequent


46C

470

500

600

602

603

604

605

606

616

617

Correction Instructions
Correction Instructions

Software Component Valid from Valid to Number


SAP_APPL
46C
617
486934

References
This document refers to:
SAP Notes
1575773 Authorization check for conditions (KWERT_K, and so on)
1513276 Authorization for condition detail screen
1165078 Authorization check for conditions or subtotals
717670 Authorization check for change/display of conditions II
381348 Using user exit, customer exit, VOFM in SD
313569 User exits in the condition screen no longer function
209913 Program technical changes in pricing subscreens

This document is referenced by:


SAP Notes (7)
381348 Using user exit, customer exit, VOFM in SD
209913 Program technical changes in pricing subscreens
313569 User exits in the condition screen no longer function
1575773 Authorization check for conditions (KWERT_K, and so on)
1513276 Authorization for condition detail screen
717670 Authorization check for change/display of conditions II
1165078 Authorization check for conditions or subtotals

You might also like