cancel
Showing results for 
Search instead for 
Did you mean: 

how to make a field mandatory/required in SD document

Former Member
0 Kudos

Dear All,

I want to make the wbs field in Sales document contract as a mandatory field.

how to make a field mandatory in SD document?What settings i need to do

to get this result?

Assured reward points for timely help.

Thanking you,

R.Srinivasan

Accepted Solutions (1)

Accepted Solutions (1)

Former Member

dear All,

Thankyou very much for your responses.

I am not able to execute the incompletion procedure as given details by you all.can you guide me more closely

Former Member
0 Kudos

Hi Ram,

1) Go to [VOV8] -> select your document type -> in the transaction flow tab find what is the incompletion proceudre that is being assigned.

2) Go to SPRO -> Sales & Dist -> Basic Function -> Log of incompleteness procedure -> define incompleteness procedure -> select Sales Header and click on the procedures option -> select your incompletion procedure and click on fields option

3) Click on New Entries in the application toolbar enter the table as VBAK, field name as PS_PSP_PNR , screen name as KKNT and the status as per your choice (i've taken 06).

This should make the WBS element mandatory in the document.

Regards

Nadarajah Pratheb

Former Member
0 Kudos

Dear Nadarajah pratheb,

Thankyou very much for your reply.I could just solve my problem.I have given you full points for your timely help to solve the problem.

Thanking you,

Best Regards,

R.Srinivasan

Answers (4)

Answers (4)

Former Member
0 Kudos

Dear Rama,

Make a transaction variant through code SHD0.

Avnesh

Former Member
0 Kudos

Try with transaction Variant SHD0

There are two ways to do this:

- Make a transaction variant thru SHD0 and assign it to your sales doc. While creating the variant you can place non-changeability ticks on specific fields. Next allow those users only to work with your transaction variant but not with the original transaction.

- You could make use of user-exit FORM USEREXIT_FIELD_MODIFICATION in include MV45AFZZ (via authorization objects, which you can assign in role customizing).

The latter is more flexible but it is not feasible if you want to place restrictions to a large amount of fields.

OR USE USER EXIT

User exits in the program MV45AFZZ-USEREXIT_FIELD_MODIFICATION

This user exit can be used to modify the attributes of the screen fields. To do this, the screen fields are allocated to so-called modification groups 1 - 4 and can be edited together during a modification in ABAP.

If a field has no field name, it cannot be allocated to a group. The usage of the field groups (modification group 1-4) is as follows:

Modification group 1: Automatic modification with transaction MFAW

Modification group 2: It contains ‘LOO’ for step loop fields

Modification group 3: For modifications which depend on check tables or on other fixed information

Modification group 4: is not used

The FORM routine is called up for every field of a screen. If you require changes to be made, you must make them in this user exit. This FORM routine is called up by the module FELDAUSWAHL.

Actually suppressing fielding sales orders userwise is quite easy. We are doing it in our company. For this we use userexit FORM USEREXIT_FIELD_MODIFICATION in MV45AFZZ.

Below is the sample code

IF SCREEN-NAME = ‘VBKD-ABSSC’.

AUTHORITY-CHECK OBJECT ‘ZMV45AFZZ’ ID ‘SCRFNAME’ FIELD SCREEN-NAME.

IF sy-subrc = 0.

SCREEN-INPUT = 1.

else.

SCREEN-INPUT = 0.

ENDIF.

endif.

You place the authority check object in authorization profile in the role of the users, who should have access to the field (in this case it is VBKD-ABSSC), and there assign the corresponding fields that are to be accessed via this userexit.

Message was edited by:

SHESAGIRI.G

Former Member
0 Kudos

Hi,

In incompletion procedure u can set the fields as a mandatory which u want to make it as mandatory .

first goto sd - basic functions and incompletion procedure and there u define incompletion procedure and select the appropriate group and select the procedure and select the field which u want to make as mandatory and make the changes save. and assign the incompletion procedure to the appropriate Sales document type and make the status group if u want .

It will work .

Regards,

praveen Kumar.D

Former Member
0 Kudos

Hi Ramanujam

<b>Field Mandatory in Sale order</b>:

Go to se93 and give the tcode to find the main program associated to it.

Go to se38 and give the main program.

Find the package associated to it.Go to->Object Directory Entry.

Go to smod transaction.

Press f4.

Press Information System Button.

Give the Project(Dev Class).

Press enter.

Find the enhancements associated

or

Check user exit MV45AFZZ_USEREXIT_FIELD_MODIFI.

This is used to modify attributes of screen field.

Supressing Fields in Sale Order

To make optional / mandatory you can use in IMG - S&D-> Basic > Functions-> Log of incomplete Procedures => select the fields > from the tables and the system will check for them (OVA2/VUA2)

To make a filed entry enabled or grey (non-entry allowed):

User exits in the program MV45AFZZ-USEREXIT_FIELD_MODIFICATION

This user exit can be used to modify the attributes of the screen fields.

To do this, the screen fields are allocated to so-called modification groups 1 - 4 and can be edited together during a modification in ABAP.

If a field has no field name, it cannot be allocated to a group. The usage of the field groups (modification group 1-4) is as follows:

Modification group 1: Automatic modification with transaction MFAW

Modification group 2: It contains 'LOO' for step loop fields

Modification group 3: For modifications which depend on check tables or on other fixed information

Modification group 4: is not used

The FORM routine is called up for every field of a screen. If you require changes to be made, you must make them in this user exit. This FORM routine is called up by the module FELDAUSWAHL.

Actually suppressing fielding sales orders userwise is quite easy. We are doing it in our company. For this we use userexit FORM USEREXIT_FIELD_MODIFICATION in MV45AFZZ.

Below is the sample code

IF SCREEN-NAME = 'VBKD-ABSSC'.

AUTHORITY-CHECK OBJECT 'ZMV45AFZZ' ID 'SCRFNAME' FIELD SCREEN-NAME.

IF sy-subrc = 0.

SCREEN-INPUT = 1.

else.

SCREEN-INPUT = 0.

ENDIF.

endif.

You place the authority check object in authorization profile in the role of the users, who should have access to the field (in this case it is VBKD-ABSSC), and there assign the corresponding fields that are to be accessed via this userexit.

In the same way u can make mandatory for fields in SD document.

Reward if useful to u

Message was edited by:

narendran vajravelu