Skip to Content
Author's profile photo ' MoazzaM '

Authorization for entering/displaying manual condition in Sale order.

Business Requirement:

Sometime client asks for hiding some specific condition value like VPRS etc from condition tab of sale order or invoice. This is not possible in standard. Also sometime a requirement comes that only specific users can enter manual discount condition in Sale order. Most of the people give V_KONH_VKS authorization object as a solution. But this is not for entering condition in sale order. This object works in VK11, VK12 and VK13. For hiding or entering manual condition there is an SAP note 105621. All process has been described step by step in this note. I am just explaining it with screen shots because I have seen many guys who know this note but still don’t able to implement this.

Create Authorization Field


Run TCode SU20 and click on create button

/wp-content/uploads/2012/12/b_170464.jpg

Create two authorization fields with following inputs

/wp-content/uploads/2012/12/c_170516.jpg

/wp-content/uploads/2012/12/d_170517.jpg

Enter your package

/wp-content/uploads/2012/12/e_170518.jpg

Create new transport request

/wp-content/uploads/2012/12/f_170519.jpg

Create Authorization Object

Run Tcode SU21 and Click on this icon and select Authorization Object

/wp-content/uploads/2012/12/g_170521.jpg

Enter object name, text, class and field names. Field ACTVT is not necessary. I have added in screenshot but you can create without this field too. It works fine without this field. Only add two fields ZKALSM and ZSTUNR.

/wp-content/uploads/2012/12/h_170522.jpg

Create message

Run TCode SE91 and Enter message class VH and number 609 and click on Change

/wp-content/uploads/2012/12/i_170523.jpg

Select this option

/wp-content/uploads/2012/12/j_170524.jpg

On message number 609 enter your text which will be shown as error message when user will enter condition which he is not allowed to enter.

/wp-content/uploads/2012/12/k_170528.jpg

Create Includes


Run TCode 38 Enter include name ZZAUTH01, select Source code option and click on create button and enter the following values

/wp-content/uploads/2012/12/l_170529.jpg

Here you can enter coding provided in SAP note 105621.

Reproduced text removed by G. Lakshmipathi & Jyoti Prakash

Now give your package name and save this. Create another include by following the same procedure and give title of this include as “Authorization check for creating condition“. Coding for this 2nd include is

Now you need to add these includes in program LV69AFZZ. Here you have to take help of your ABAPER for implementing this Enhancement. Once its implemented, you can add your coding in it. I am not adding screens of how to implement enhancement but I am attaching screens of implemented enhancement here. Go to T-Code SE38 give program LV69AFZZ and click on display button.

/wp-content/uploads/2012/12/m_170530.jpg

/wp-content/uploads/2012/12/n_170534.jpg

/wp-content/uploads/2012/12/o_170535.jpg

Result:

Give authorization and test this. I have given authorization of pricing procedure ZM0001 steps 190-290 to my test user. System will allow to display and enter only those conditions which comes in between these step numbers. For all other steps and conditions system will not show condition value and if any condition is manual user can not enter this condition. Check below authorization and pricing procedure.

/wp-content/uploads/2012/12/u_170614.jpg

/wp-content/uploads/2012/12/r_170613.jpg

A user having full access of these pricing procedure will have following screen.

/wp-content/uploads/2012/12/q_170556.jpg

A user having limited access like I said step numbers 190 to 290 will have following display screen.

/wp-content/uploads/2012/12/s_170557.jpg

If user try to enter condition which he is not allowed system will give error. In below screen I am trying to add ZCOM condition which is manual but system didn’t allowed me. This can be controlled at user level.

/wp-content/uploads/2012/12/t_170558.jpg

If you see the SAP note 105621 there are some other settings too regarding creating authorization profiles. I have not mentioned those settings here because these are not mandatory. If you want to create an authorization profile having full access of all pricing procedures and all steps you can create with SU03 and SU02. Take help of your BASIS guy if required. Assign this profile to users you want to allow full access and for all other users you have to give them relevant pricing procedures and step numbers in pricing pricing procedures. 

Please give your remarks if this is helpful for you 😎



Assigned Tags

      67 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Lakshmipathi Ganesan
      Lakshmipathi Ganesan

      Wonderful work and the way you have presented is well appreciated.  Also, as you know reproducing the text from service market place is not allowed, I have removed the coding part.  Let others who want to make a try, can go through the said note and try with the coding. 

      G. Lakshmipathi

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Dear Lakshami Sir

      Thank you very much for appreciating. If some most senior member like you is appreciating this then it means it is really a useful document. I am always very careful about rules but I pasted that coding because I thought without coding document will be incomplete and users will ask for coding. But you are right! If someone need to implement this he can get the coding from SAP note.

      Author's profile photo Lakshmipathi Ganesan
      Lakshmipathi Ganesan

      Thanks for your understanding.

      Regards

      G. Lakshmipathi

      Author's profile photo Jit Mishra
      Jit Mishra

      Hi Moazza,

      Quick question, we implemented this note and are hiding a couple of condition types but if you click on the Analysis button, these 2 condition types are still showing the pricing on it. Are you able to see the pricing on the analysis screen even though you are not seeing it on the conditions tab screen. Please do update here.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi

      I did this in my previous role and I left that company 2 years ago. Now I have to implement this here and check the same. I'll try to implement this note here and update.

      Thank$

      Author's profile photo Jit Mishra
      Jit Mishra

      Thanks,

      Just a little weird that the condition records are visible on the analysis screen, it is perfectly hidden on the pricing conditions tab screen, trying to figure out whether we missed something or this is a loophole. I'll await an update on your end.

      Regards.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi

       

      For this there is one authorization check. May be you have implemented that note which hides condition types for some users. Check this as well.

       

      Thank$

      Author's profile photo M Kannan
      M Kannan

      Hi Moazzam,

      We are able to see pricing on the analysis screen.
      How to disable Pricing Analysis button for user's having restricted access.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi

       

      I dont see any standard settings for this. May be screen variant would work for this.

       

      Thank$

      Author's profile photo M Kannan
      M Kannan

      Hi  Moazzam,

      Thanks for you reply.

      We have used Function V69A_PROT and created enhancement for making the anlaysis tab not editable.

       

       

      Author's profile photo Jit Mishra
      Jit Mishra

      Hi,

      I just came across this, just to close out on my side, we ended up implementing a custom role to disable the analysis tab and controlled it based on certain sales org through a control table since we have a footprint in multiple countries. We just wanted it deactivated only for the North America countries.

      Author's profile photo Trupti Nadgouda
      Trupti Nadgouda

      Hi Moazza,

      Thank you for such a wonderful blog.

      We have requirement like, standard condition PR00 should be editable for specific user and non-editable for other users. however, other user can only see price but can't do any changes in PR00 at VA01, VA02.

      As the same condition type PR00 is been used in other Pricing Procedure for other countries so it  can't control at condition type(Manual entries - B, D).

      We have alternate solution of creating new pricing procedure and tried routine as well. But we are trying if it can be controlled  the way you explained.

      Can you please guide us whether, is it possible to control PR00 condition type editable and non-editable for specific users?

       

      Regards,

      Trupti

       

       

      Author's profile photo Narasimhulu Konnipati
      Narasimhulu Konnipati

      As Lakshmipathi sir said, you did a fabulous job. Your way of presentation is Cristal clear. We would like to see more presentations like this in future.

      Keep up the god work

      Thanks,

      Narasimhulu

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Dear Konnipati

      Thanks for your compliments. I used to share my knowledge on SCN and you can see my previous documents too and I will post in future too.

      Author's profile photo Siva Prasad V
      Siva Prasad V

      Hi moazzam,

                         Good presentation and thank you for sharing.Sure this is Every Client Requirement.

      Sivavasireddy

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Dear Siva

      I believe if client don't ask for this solution even though we should implement this because this is very important part of order processing.

      Author's profile photo Former Member
      Former Member

      Keep up the good work Moazzam. Quiet helpful for newbies like me over SCN.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks Ammarah.

      Author's profile photo Former Member
      Former Member

      Nice way of presentation , Thanks for the post 🙂

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks Waseem for your compliments but I was thinking document content was also helping apart from presentation 😉 . Isn't it?

      Author's profile photo Former Member
      Former Member

      Of course Moazzam( Not to forget about the document) , If not for that document we wouldn't be posting our comments in this forum 😉 isnt it ? Keep up the good work once again.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks Dear. You are right 😛

      Author's profile photo Former Member
      Former Member

      Thanks for the post Moazzam . Very informative.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks for the compliments.

      Author's profile photo Narendra Konnipati
      Narendra Konnipati

      Dear ,

      One small doubt about is , Can we control as this same function with the help of Screen Variant SHD0  without help of Authorization ?

      Note : Why because ,It seems huge process to do this but Nice one .when you comes to Screen Variant ,not huge and easy process .

      Thanks

      Naren

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Dear Narendra

      It seems huge but its simple. This is not very technical. I am not ABAPER neither BASIS guy but I just followed SAP note 105621 steps and did this. Only thing which I have done through my ABAPER is implementing enhancement.

      For your question I don't think so this is possible with variants. I tried once and it was like not working for me because it hides whole condition tab 🙁 but following this note we can hide specific condition value or even we can restrict manual conditions user wise.

      Thanks

      Author's profile photo Former Member
      Former Member

      Hi MoazzaM,

      Wonderful document about displaying the condition record and well explained .

      Thanks

      Author's profile photo Srinu S
      Srinu S

      Dear MoazzaM,

         Even though i could not go through every document, for future reference purpose i can keep it, very nicely explained ofcourse no need any other comments as you got allready good appreciation by experts.i usually keep on observing your postings very well explanations . Keep on posting this kind of very well apreciated documents.

      thanks,

      Srinu.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks Srinivas for such a nice compliment. I always tried to share my knowledge and help other and I will definitely keep posting and contributing on SCN.

      Thank$

      Author's profile photo Former Member
      Former Member

      Very Nice Document MozzaM, very fantastic work and Very helpful to all the scn Users. Eventhough i am not enough to appreciate but could not control for not appreciating you.

      Regards

      RAM

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks Ram for appriciating in a nice manner 🙂

      Author's profile photo Former Member
      Former Member

      Dear keep it up ,,, very good work with good explanation ...

      thank a  lot for ur sharing

      Author's profile photo Former Member
      Former Member

      Great Work MoazzaM

      We all Appreciate you. Thanks for the great work really helpful tutorial.....

      Best Regards

      SD

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thanks Dear

      Author's profile photo Former Member
      Former Member

      Wonderful work 🙂

      Author's profile photo Madhu Vadlamani
      Madhu Vadlamani

      Hi Moazzam,

      It is a useful document for me.

      Regards,

      Madhu.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi Madhu

      I believe this is useful for every SD consultant. Thanks for liking this.

      Author's profile photo Madhu Vadlamani
      Madhu Vadlamani

      Hi ,

      Yeah.I am an abap guy but i will ask my sd consultant look into this.

      Regards,

      Madhu.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Yes! Sure you can ask your SD guy to look into this and give his opinion and remarks. There is also some ABAP work involved in it so it must be good one for you as well.

      Author's profile photo Former Member
      Former Member

      Really helpful. Thanks.

      Author's profile photo Jignesh Mehta
      Jignesh Mehta

      Nice doucment Mozzam.

      Thank you.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thank you Jignesh and Vincent

      Author's profile photo Former Member
      Former Member

      very informative and usefull

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thank you Karaveera for appreciating this document.

      Thank$

      Author's profile photo Former Member
      Former Member

      Hi MoazzaM,

      Thank you so much for sharing such an informative document. It will really help to have good insight for the functional consultants regarding authorization for  Sale order functioning.

      Very informative, systematic & easy to understand. 

      Appreciate your effort on this document.

      Regards,

      Khushi

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Good to know that it is helpful for you Khushi 🙂

      Author's profile photo Rampe V
      Rampe V

      Dear MoazzaM,

      Thanks for the Document.

      Best Regards,

      Rampe

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thank you Venkateh.

      Thank$

      Author's profile photo V.C. Tiwari
      V.C. Tiwari

      Dear Moazzam,

      Wonderful description, Great effort and easy to understand for newcomers.

      Thanks.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thank you Tiwari 🙂

      Author's profile photo Former Member
      Former Member

      Dear Moazzam,

      Thanks for sharing this document as I was looking for the same. Great efforts made by you to explain this process in a easy way. Thanks a lot once again.

      Regards:

      Abhishek

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Abhishek Laghate

      Thank you for the compliments.

      Thank$

      Author's profile photo Former Member
      Former Member

      Thank u Moazzam.

      very good document with nice explanation.

      Regards

      Suribabu

      Author's profile photo Sooraj Kurup
      Sooraj Kurup

      great information..really helpful

      Regards

      Abhilash Shekar

      Author's profile photo Former Member
      Former Member

      Thanks very much..! Really helpful document..

      Great appreciation for your efforts..!

      Regards

      Rajesh Kumar.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Thank you Rajesh Abhilash and Naga.

      Author's profile photo Sundar S
      Sundar S

      Good Job Moazzam , keep sharing like this type of Documents 🙂

      Author's profile photo Former Member
      Former Member

      Dear Moazzam,

      Thanks for sharing this important document 🙂 . This document has helped me a lot in solving authorization issues in sales order at item level.

      I would like to ask you how could I hide VPRS condition in SALES order Header under Tab Conditions.

      Thanking you once again for sharing this document.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi

      You can follow the document and add your VPRS condition step number in authorization object. It is simple if you follow this document step wise.

      Thank$

      Author's profile photo Tyrone Bradbury
      Tyrone Bradbury

      The BAdI PRICING_AUTHORITY_CHECK_UI which is called from

      Function module PRICING_AUTHORITY_CHECK

      has sample class CL_VF_PRC_AUTH_EXAMPLE

      which provides a simpler method of implementing the Authorisation check.

      You are still required to create a suitable Authorisation object.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi

      Can we hide condition's value with this method?

      Thank$

      Author's profile photo Tyrone Bradbury
      Tyrone Bradbury

      Hi Moazza,

      If the Auth check fails then the conditions are hidden.

      I have not tested extensively but it appears that it is also possible to code for "Condition Insert" separately from the "Display condition" auths. ie. you could allow a user to display a manual condition but prevent the same user from inserting the condition.

      Tyrone

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi Tyrone

      We can use 105621 note for two purposes. Its core purpose is to hide condition value for some secific users. Like you can see in this document as well that I have hidden some values. For restricting or allowing entering a mannual condition is another control that we can have with this note or with function module you have shared. You know there are always more than one way to skin a cat 🙂

      Thank$

      Author's profile photo Chris Gibbons
      Chris Gibbons

      Hi

      This method is good for organisations with a few pricing procedures or with pricing procedures that are consistent. As soon as you start with many pricing procedures and the step numbers between procedures differ for the conditions that you want to hide, then the maintenance behind this method is a nightmare - as we found to our cost.

      We implemented this and then changed to a process where we use the same auth objects, but instead of defining price procedure steps to include / exclude, we appended a new field to table T863S as a check box (i.e. if the box is ticked, then that line int he pricing procedure is valid for auth check) and included this field in the auth object and auth check.

      Same principle of auth checks and objects as above, but a lot less maintenance in the auth checks.

      Author's profile photo ' MoazzaM '
      ' MoazzaM '
      Blog Post Author

      Hi Chris

      Yes you are right and your approach is absolutely correct. We can modify the process according to our own requirement and scenario. This is beauty of SAP that it is flexible and user friendly. Thank you for sharing your thoughts and this is really a value addition comment for this document.

      Thank$

      Author's profile photo Hemant Sharma
      Hemant Sharma

      Wonderful article for Price control authorization, very helpful. Thx MoazzaM !!

      Author's profile photo Nagaraju Tumati
      Nagaraju Tumati

      Hello all,

      I am working this scenario can any one please drop sample code. thanks