07-30-2008 2:13 PM
Hi
Is there a way of controlling outbound delivery deletion? If user is given authorization for VL02N (Delivery change), it is allowing the user to delete the delivery as well. How to prevent this?
Did not find any activity in the object for Deletion control.
Thanks
Sriram
07-30-2008 4:04 PM
Hi Sriram,
You can make the delete button inactive from SHD0.
1. in SHD0 provide the txn VL02N.
2. Click on create button
3. a pop-up will come. (Object can only be created in SAP development class) click ok.
4.Then Just come back (F3)
5. A screen will appear. Select "Menu functions" button on the top right corner of the screen
6. It will ask for the program name and Status with Ok and "Functions" button
7. Provide "SAPMV50A" for program and for Status press f4(possible entries) .. there you can select "E0"
8. In the same pop-up click on "Functions" button
9. In the following screen expand "Function Setting"
10. You will find "LOES_T---Delete"
11. select that and press F2.
12. Now you have deactivated the "delete" button.
13. save
now when ever the txn VL02N is called the "Delete" button will be greyed out.
Similarly you can do for the subsequent screen where the user provides the outbound delivery number and looks for the "Change overview" ...
Regards,
Srihari
07-31-2008 10:10 AM
Thanks Srihari
But how do I go about assigning this transaction variant to specific users? I do not want deletion menu disappaear for all users but only for specific users.
Sriram
07-31-2008 11:45 AM
Hi Sriram,
You need to provide this variant to all except those you want to have the "Delete" option.
You can do this by assigning the parameter LE_0001_USER_VARIANT in SU01 for all the users excluding for those whom you wish to give the "Delete" option.
Go to SU01, put the user name->modify->parameters tab-> provide the parameter LE_0001_USER_VARIANT-> the value for this parameter will the Transaction variant you have created->save and exit.
First test this for sample number and if this is successful, you can do a mass updation by SECATT.
FYI -
The other related parameters are:
LEDSP_VLSP_VARIANT Variant for the "Subsequent Delivery Split" Dialog
LE_0001_USER_VARIANT User-Specific Variants for Delivery Scenario 0001
LE_0002_USER_VARIANT User-Specific Variants for Delivery Scenario 0002
LE_0003_USER_VARIANT User-Specific Variants for Delivery Scenario 0003
LE_0101_USER_VARIANT User-Specific Variants for Delivery Scenario 0101
LE_0102_USER_VARIANT User-Specific Variants for Delivery Scenario 0102
LE_0103_USER_VARIANT User-Specific Variants for Delivery Scenario 0103
LE_0201_USER_VARIANT User-Specific Variants for Delivery Scenario 0201
LE_0202_USER_VARIANT User-Specific Variants for Delivery Scenario 0202
LE_0203_USER_VARIANT User-Specific Variants for Delivery Scenario 0203
LE_VL10_USER_VARIANT Default Selection Parameters for Delivery Creation
SD_VARIANT_MAINTAIN Authorization for variant maintenance
I'm sure that this will work for you.
Regards,
Srihari
07-31-2008 1:52 PM
hi Srihari
Sorry about this, but I tried attaching the transaction variant I created for VL02N to all the parameter ids you gave me. It still does not work. If I activate my transaction variant in SHD0, it is active for all users. So I left it as inactive and then assigned the transaction variant to all the parameter ids you gave. It did not work.
Where am I going wrong?
Regards
Sriram
07-31-2008 2:21 PM
Hi Sriram,
First of all I presume that you have deactivated the "Delete" Option. If not done correctly, please do it.
1. Have you deactivated only the "Delete" button on the initial screen of VL02N or did you deactivate it in the subsequent screen also?
2. No need to assign all the parameters to user with the newly created variant.
3. All you need to do is:
a. Deactivate the delete button from all the screens of the program SAPMV50A and save it as a variant.
b. In the user master (for those you wish not to give the delete option) provide the parameter LE_0001_USER_VARIANT with the value equal to the new variant you have created.
c. make sure that for the users there is no 06 activity for any object of VL02N through other roles
d. now create a new role with authorizations allowing the users to perform the delete activity and provide it only to those whom you want to provide the authorization to delete.
Regards,
Srihari
07-30-2009 4:51 PM
I also had same issue and after spending some time I manage to found solution. This is explained in OSS note 580226. First we need to add activity '06' in authorisation object V_LIKP_VST and then add following code in delivery user exit MV50AFZ1.
FORM USEREXIT_DELETE_DOCUMENT.
*>>>> START OF INSERTION <<<<
authority-check object 'V_LIKP_VST'
id 'VSTEL' field likp-vstel
id 'ACTVT' field '06'.
if sy-subrc ne 0.
message a001(ZZ). "Use own error message here
endif.
*>>>> END OF INSERTION <<<<<<
ENDFORM.
In this way we can restrict user to have 'Delete' delivery authorisation or not.
Regards,
Sanjay
02-23-2010 2:11 AM
Hi Sanjay,
I'm having the same requirement. I'm using ECC 6.0.I think that note is already applicable there.
As u have mentioned, First I need to add activity '06' in authorisation object V_LIKP_VST. How can we add that there? B'se when I go to that authorization object it didn't show me "06" as a available option.
Could you please let me know how to add that to there?
And regarding, "message a001(ZZ). "Use own error message here">
How and where I should define that my own error message? I mean the transaction code?
Really appreciate your help on this!
Best regards,
Anupa
02-23-2010 9:45 AM
Anupa,
it is surprising you ask this. Anyway, you can change the permitted activities for a object in SU21