SD User Exit SAP

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 19
At a glance
Powered by AI
The document discusses various customer exits and user exits available in different SD modules like sales, billing, lists etc. It provides details on what each exit can be used for and includes relevant code.

Some of the customer exits discussed are V45A0001, V45E0001, V45S0001 etc. Exits are available for activities like sales order processing, procurement, configuration etc.

Some of the user exits discussed for billing documents are SDVFX001, SDVFX002, SDVFX003 etc. Exits are available for activities like transfer to accounting, billing plan processing etc.

Relevant Information

CMOD Customer Exits

Include It is reserved for customers, for which you need a modification key
Routines

Sales Related Exits

Customer Exits

Enhancement Description
Code

SDAPO001 Activating Sourcing Subitem Quantity Propagation

SDTRM001 Reschedule schedule lines without a new ATP check

V45A0001 Determine alternative materials for product selection

V45A0002 Predefine sold-to party in sales document

V45A0003 Collector for customer function modulpool MV45A

V45A0004 Copy packing proposal

V45E0001 Update the purchase order from the sales order

V45E0002 Data transfer in procurement elements (PRreq., assembly)

V45L0001 SD component supplier processing (customer enhancements)

V45P0001 SD customer function for cross-company code sales

V45S0001 Update sales document from configuration

V45S0003 MRP-relevance for incomplete configuration

V45S0004 Effectivity type in sales order

V45W0001 SD Service Management: Forward Contract Data to Item

V46H0001 SD Customer functions for resource-related billing

V60F0001 SD Billing plan (customer enhancement) diff. to billing plan

Include Routines

Include Description

MV45ATZZ For entering metadata for sales document processing


Include Description

MV45AOZZ For entering additional installation-specific modules for sales document


processing
which are called up by the screen and run under PBO (Process Before
Output) prior
to output of the screen.

MV45AIZZ For entering additional installation-specific modules for sales document


processing.
These are called up by the screen and run under PAI (Process After Input)
after data
input (for example, data validation).

MV45AFZZ For entering installation-specific FORM routines and for using user exits,
and which may
MV45EFZ1 be required and can be used if necessary.

For more details see Help link above.

Billing Related Exits

Customer Exits

Enhancement Description
code

SDVFX001 User exit header line in delivery to accounting

SDVFX002 User exit for A/R line in transfer to accounting

SDVFX003 User exit cash clearing in transfer to accounting

SDVFX004 User exit G/L line in transfer to accounting

SDVFX005 User exit reserves in transfer to accounting

SDVFX006 User exit tax line in transfer to accounting

SDVFX007 User exit: Billing plan during transfer to Accounting

SDVFX008 User exit: Processing of transfer structures SD-FI

SDVFX009 Billing doc. processing KIDONO (payment reference number)

SDVFX010 User exit item table for the customer lines

SDVFX011 Userexit for the komkcv- and kompcv-structures

V05I0001 User exits for billing index

V05N0001 User Exits for Printing Billing Docs. using POR Procedure
Enhancement Description
code

V60A0001 Customer functions in the billing document

V60P0001 Data provision for additional fields for display in lists

V61A0001 Customer enhancement: Pricing

Delivery related exits

Customer Exits

Enhancement Description
Code

V50PSTAT Delivery: Item Status Calculation

V50Q0001 Delivery Monitor: User Exits for Filling Display Fields

V50R0001 Collective processing for delivery creation

V50R0002 Collective processing for delivery creation

V50R0004 Calculation of Stock for POs for Shipping Due Date List

V50S0001 User Exits for Delivery Processing

V53C0001 Rough workload calculation in time per item

V53C0002 W&S: RWE enhancement - shipping material type/time slot

V53W0001 User exits for creating picking waves

VMDE0001 Shipping Interface: Error Handling - Inbound IDoc

VMDE0002 Shipping Interface: Message PICKSD (Picking, Outbound)

VMDE0003 Shipping Interface: Message SDPICK (Picking, Inbound)

VMDE0004 Shipping Interface: Message SDPACK (Packing, Inbound)

V02V0001 Sales area determination for stock transport order

V02V0002 User exit for storage location determination

V02V0003 User exit for gate + matl staging area determination (headr)

V02V0004 User Exit for Staging Area Determination (Item)

Include Routines
Include Description

MV50AFZ1 User Exits for Delivery Processing

MV50AFZ2 User Exit for Batch Quantity Allocation

MV50AFZ3 LIPS-KOQUI (Picking is subject to confirmation) determination

MV50AFZ The user exits in this include can be used to fill the condition tables for
K material
listing and material exclusion (KOMKG and KOMPG) and product
selection (KOMKD
and KOMPD) with own data.

MV50AFZL In delivery creation process for sales orders there is the possibility to
restrict the delivery
creation to some order items. If these order items are member of a
delivery group, but not
all items of this delivery group are includes in the restriction range of the
order item nubers,
you can specify in this routine what to do.

MV50AFZP This user exit can be used to modify change mode of pricing screens in
delivery processing.

MV50AFZZ Users Exit for Batch Determination; LIPS-LGORT determination

User Exits for Transportation

Include Routines

Include Description

MV56AOZZ You can include your own modules in this program, to be processed in
shipment processing
screens during PBO.

MV56AIZZ You can include your own modules in this program, to be processed in
shipment processing
screens during PAI.

MV56AFZY You can include your own FORM routines in this program. They can
contain your own
adjustments for shipment processsing.

MV56AFZZ This program contains pre-defined FORM routines, in which you can
carry out your own
adjustments for transportation processing.

For additional information, see SAP Help link above.


User Exits for Price Determination
Routine Module Include Description
Pool or
Function
Group

USEREXIT_PRICING_PREPARE_T SAPLV60 RV60AFZ This user exit


KOMK A Z allows you to
copy additional
fields for pricing
in the TKOMK
communication
structure (header
fields), which
have not been
provided in
the standard SAP
system. These
fields can also be
used for pricing
in the
billing
document. This
user exit is
described in
detail in the
"New fields in
pricing" section.

USEREXIT_PRICING_PREPARE_T SAPLV60 RV60AFZ This user exit


KOMP A Z allows you to
copy additional
fields for pricing
in the TKOMP
communication
structure (item
fields), which
have not been
provided in the
standard SAP
system. These
fields can also be
used for pricing.
This user
exit is described
in detail in the
"New fields in
pricing" section.

USEREXIT_FIELD_MODIFICATIO SAPMV6 MV61AF You can use this


Routine Module Include Description
Pool or
Function
Group

N 1A ZA user exit to
adjust the
display of
individual lines
in the condition
screen by
changing the
display attributes
of the screen
fields. This does
not
include the
display of
subtotals. This
user exit is also
used in order
processing.

USEREXIT_FIELD_MODIFIC_KZW SAPMV6 MV61AF You can change


I 1A ZB the display of
subtotals in the
condition screen
by changing
the display
attributes of the
screen fields.
This user exit is
also used in
order processing.

USEREXIT_FIELD_MODIFIC_KOP SAPMV6 MV61AF You can adjust


F 1A ZB the display of
subtotals in the
condition screen
to your
requirements
by changing the
display attributes
of the screen
fields.
This user exit is
also used in
order processing.

USEREXIT_FIELD_MODIFIC_LEE SAPMV6 MV61AF You can adjust


Routine Module Include Description
Pool or
Function
Group

R 1A ZB the display of
blank lines in the
condition screen
to your
requirements
by changing the
display attributes
of the screen
fields.
This user exit is
also used in
order processing.

USEREXIT_PRICING_CHECK SAPMV6 MV61AF You can install


1 ZA additional
checks to the
standard checks
of condition
lines (e.g.
maximum/minim
um value).

USEREXIT_PRICING_RULE SAPLV61 RV61AFZ In the standard


A A SAP system, it is
predefined
which condition
categories and
classes
can be copied or
recalculated per
pricing type.
You can change
the predefined
standard
procedure for
each pricing
type.

USEREXIT_CHANGE_PRICING_RU SAPMV6 MV61AF You can use this


LE 1A ZA user exit to
change the
pricing type that
has been
predefined in the
copying control
Routine Module Include Description
Pool or
Function
Group

table in billing.

USEREXIT_XKOMV_BEWERTEN_I SAPLV61 RV61AFZ This field is used


NIT A B in the formulas
and therefore
initialized before
the loop for the
pricing
procedure starts.

USEREXIT_XKOMV_BEWERTEN_ SAPLV61 RV61AFZ Within a loop for


END A B the price
components
during pricing,
specific values
can be
transferred
into the
communication
structures in
pricing to be
further
processed.

USEREXIT_XKOMV_ERGAENZEN SAPLV61 RV61AFZ In change mode,


A B you can change
the dynamic part
of the condition
record
(KONVD) that
is always
redetermined
(i.e. it is not
stored in
database table
KONV).

USEREXIT_XKOMV_ERGAENZEN SAPLV61 RV61AFZ You can use this


_MANU A B user exit to
change the
ready-for-input
fields of the
manually entered
condition record
in add mode in
Routine Module Include Description
Pool or
Function
Group

the condition
screen.

USEREXIT_XKOMV_FUELLEN SAPLV61 RV61AFZ This user exit is


A B always called up
during a
redetermination
of all or
individual price
components.
You can change
the work fields
of the condition
line. However,
this only
applies to
conditions that
have been
determined via a
condition record.

USEREXIT_XKOMV_FUELLEN_O_ SAPLV61 RV61AFZ This user exit is


KONP A B always called up
during a
redetermination
of all or
individual price
components.
You can change
the work fields
of the condition
line. However,
this only applies
to conditions
that have been
determined via a
condition record.
This may include
subtotals,
manually entered
conditions or
conditions that
have been
calculated with a
formula.
Routine Module Include Description
Pool or
Function
Group

USEREXIT_PRICING_COPY SAPLV61 RV61AFZ You can change


A A the KONV fields
for copied price
components.

Note: as of Release 4.6A, the display of the condition screen (screen 6201) has been converted
from a full screen to a subscreen. The full screen is included in the SAPMV61A module pool, the
subscreen, however, in program SAPLV69A. Therefore, instead of MV61AFZA and MV61AFZB, the
user exits in LV69AFZZ should be used. For reference, see OSS note 313569.

User Exits for Partner Determination


Partner determination contains the following user exits for your use
User Exit Description

EXIT_SAPLV09A_00 You can use this user exit to control whether an address that
1 was entered manually
and has already been used in other documents (referenced),
should be referenced
again if it changes or whether a new address shold be created
(duplicated).

EXIT_SAPLV09A_00 Call up this user exit if a customer has not been maintained in
2 the current sales area.

EXIT_SAPLV09A_00 Use this user exit to control the origin of partners in the partner
3 determination procedure
(origin X, Y or Z). If X, Y, or Z has been entered in the Origin
field, this user exit is automatically
called up during partner determination.

EXIT_SAPLV09A_00 Use this user exit to integrate your own check in a program,
4 that runs before the partner
is saved in the document.

 For more detailed information, see the program documentation for each ofthe user exits.

User Exits For Credit Checks


If you want to carry out your own individual credit checks, that differ from those in the standard
system, you must define them in the following user exits:
User Exit LVKMPTZZ

LVKMPFZ1 USER_CREDIT_CHECK1
User Exit LVKMPTZZ

LVKMPFZ2 USER_CREDIT_CHECK2

LVKMPFZ3 USER_CREDIT_CHECK3

User Exit for availability check


User exit Include Description

USEREXIT_AVAIL_CHECK_CREDIT MV45AFZF This user exit allows you to


determine whether the
system should or should not
carry out an availability
check after a blocked
document has been released
or after
a new credit check.

User Exit for Risk Management for Receivables


User exit Description

RVKMPUS2 Using this user exit, you can define new forms of payment guarantee.

User Exits for Billing Plan


User exit Include Description

RV60FUS1 SAPLV60 Billing Plan: Distribute Difference


F
 BILLING_SCHEDULE_DELTA
For milestone billing a percentage value is fully
invoiced for each billing deadline. In the case of
deviations between
the original item value and any later changes, you
can use the user exit to determine whether the
difference should
be stored in the final invoice or sent to the next
deadline.
 USEREXIT_MOVE_FIELD_TO_FPLT : This user
exit allows you to create your own fields in table
FPLT.
 USEREXIT_MOVE_FIELD_TO_FPLA : This user
exit allows you to create your own fields in table
FPLA.
User exit Include Description

RV60FUS2 SAPLV60 Billing plan: Prepare pricing


F
 USEREXIT_PRICING_PREPARE_TKOMX
This user exit is used to copy or create an additional
field in the definitive communication structure for
pricing.
The user exit is also often used to change the
duration of a billing plan deadline. You can do this
by overwriting
the following fields:
 tkomp-anz_tage (Number of days in a
deadline)
 tkomp-anz_monate (Number of months in a
deadline)
 tkomp-anz_jahre(Number of years in a
deadline)
 tkomp-anz_wochen (Number of weeks in a
deadline)

RV60FUS3 SAPLV60 Bill. Plan: Deadline Proposal From Source


F
 USEREXIT_DATE_PROPOSAL
In the standard release deadlines are set according to
a template in the billing plan. This grid entry list
sets the deadlines
for each day but you can adjust the template with
the user exit so that the grid entry list could, for
example, follow a monthly
pattern instead.
Modification report for billing plan SDFPLA02
This report enables you to update the header data for
a billing plan with the result that new billing plan
deadlines are determined
and set in the billing plan.
In this way you can, for example, set the goods
issue date as the starting date for the billing plan.
Additions to billing plan with transaction SMOD
 User exit SDVAX001
In the standard release the billing plan type is
determined from the item category of the sales
document and set in the billing plan.
You can also use the user exit to determine the
billing plan type dependent on data from the order
header, order item, etc.
 User exit V60F0001
This user exit is for changing the deviating billing
User exit Include Description

date (FPLT-AFDAT).

RV60FUS4 SAPLV60 field preparation field selection for screen


F

RV60FUS5   This userexit can be used to split date lines TKOMK for
Header fields

RV60FUST   User Part for Billing Plan - Data Definition

Additional User Exits in Billing Document


User exit Include Description

USEREXIT_FILL_VBRK_VBRP RV60AFZC Fill in the fields in


VBRK/VBRP tables

USEREXIT_NUMBER_RANGE_INV_DATE RV60AFZC Determine the number


RV61AFZB range for internal
document number
User exits for printing

User Exits For Product Allocation Processing*


User exit Includ Description
e

SDQUX0001   Function module exit for enhanced check in SD product


allocation

User Exits For Availability Check


User exit Include Description

USEREXIT_PLANT_SELECTION RV03VFZ The user exits named here


Z are planned for projects
that are to be carried out in
agreement
with SAP development as
they may only be used in
consultation with SAP.
SAP provides no
guarantee if they are used
without our advice in
program is an exception to
this rule
User exit Include Description

USEREXIT_ADD_FIELD_TO_HEADER FV45VFZZ  
USEREXIT_ADD_FIELD_TO_LINE

USEREXIT_DELIVERY_GROUPS FV45VFZY  
USEREXIT_MVERF_INIT
USEREXIT_QUOTA_KEY_VALUE

USEREXIT_AVAILABILITY_IN RV03VFZ This user exit is used to


USEREXIT_AVAILABILITY_OUT Z adjust the flow during
USEREXIT_DARA_REFRESH plant transfer. A list of
USEREXIT_PLANT_SELECTION permitted plants, where
this material is created, is
determined and checked in
the standard R/3 delivery.
A dialog box
appears where you can
select the plants. The user
exits allow you to modify
the plant table
so that plant selection
takes place in advance for
every flagged selection
and a dialog box
becomes unnecessary.

User Exits For Component Supply Processing


User exit Include Description

USEREXIT_CHECK_VBLB- MV45AFZC These user exits are available for


USR01 checking customer reserve fields
USEREXIT_CHECK_VBLB- from VBLB-USR01 to
USR02 VBLB-USR05. The reserve fields
USEREXIT_CHECK_VBLB- are used in the component supplier
USR03 industry. The system
USEREXIT_CHECK_VBLB- calls them in the screen flow logic
USR04 for header data in forecast and JIT
USEREXIT_CHECK_VBLB- delivery schedules
USR05

Function module V450001 is available as an SAP extension for the component supplier industry. It
contains the following user exits:
EXIT_SAPLVED4_004   General - You can use this user exit to overwrite the
standard method with which the system determines the
recipient of messages (either at sales document level or in
the customer master record). You can define a special
recipient for an incoming document that has just been
processed.

EXIT_SAPLV45L_001   For delivery schedules - The system checks an incoming


delivery schedule against the current/old delivery schedule
to determine if there are any differences.

EXIT_SAPLV45L_002   For delivery schedules - With this user exit, you can
change the VBLB structure (sales document: delivery
schedule data), before the system copies delivery schedule
data to the corresponding internal table.

EXIT_SAPMV45L_001   Planned delivery schedules - This user exit allows you to


process schedule lines generated automatically in a
planning delivery schedule..

EXIT_SAPMV45L_002   Planned delivery schedules - This user exit allows you to


modify the calendar used in a delivery schedule split.

EXIT_SAPMV45A_005   For delivery orders (MAIS) - This user exit enables you
to control how the system copies packing proposals into
the outbound delivery order.

EXIT_SAPLVED4_001   For delivery orders (MAIS) - These user exits allow you
EXIT_SAPLVED4_002 to change the workflow parameters for processing
EXIT_SAPLVED4_003 inbound EDI messages.
EXIT_SAPLVED4_005
EXIT_SAPLVED4_006

EXIT_SAPLVED4_001   For the self-billing procedure - You can use these user
EXIT_SAPLVED4_005 exits for the standard self-billing procedure.
EXIT_SAPLVED4_006

EXIT_SAPLVED5_002   For the self-billing procedure -You can use these user


EXIT_SAPLVED5_003 exits for the self-billing procedure with invoice creation.
EXIT_SAPLVED5_004

User Exits For Resource-Related Billing


You can use the following user exits for resource-related billing before Release 4.5A:

 RV45HFZZ enhancement


 USEREXIT_INV_REQ_ITEM


 USEREXIT_INV_REQ_ITEM_PARTNER
You can use the following user exits for resource-related billing as of Release 4.5A:

 V46H0001 enhancement
 EXIT_SAPLV46H_001


 EXIT_SAPLV46H_002User Exits For Billing

 USEREXIT_NUMBER_RANGE (Module pool SAPLV60A, program RV60AFZZ)

The internal number range used in the standard system is specified in the billing type table and
can be changed in this user exit. This user exit is only called when the billing documents is
created.

 USEREXIT_ACCOUNT_PREP_KOMKCV (Module pool SAPLV60A, program RV60AFZZ)

In this user exit additional fields for account determination that are not provided in the standard
system are copied into communication structure KOMKCV (header fields).

 USEREXIT_ACCOUNT_PREP_KOMPCV (Module pool SAPLV60A)

In this user exit additional fields for account determination that are not provided in the standard
system are copied into communication structure KOMPCV (item fields).

 USEREXIT_NUMBER_RANGE_INV_DATE (Module pool SAPLV60A, program RV60AFZC)

Depending on the number range, table TVFKD is used to set the billing date (country-specific
requirments in Italy). USEREXIT_NUMBER_RANGE is automatically deactivated when this user exit
is being applied.

 USEREXIT_FILL_VBRK_VBRP (Module pool SAPLV60A, program RV60AFZC)

This user exit is only called when the billing document is created. It is used to provide the header
and the item of the new billing document with deviating or additional data.

 USEREXIT_PRINT_ITEM (Module pool SAPLV61A, program RV61AFZB)

Printing the item line of a billing document can be supplemented or changed.

 USEREXIT_PRINT_HEAD (Modulpool SAPLV61A, Programm RV61AFZB)

Printing the header line of a billing document can be supplemented or changed.

 User exits in program RV60AFZD

Short descriptions of the user exits are contained in the program:



 USEREXIT_RELI_XVBPAK_AVBPAK


 USEREXIT_NEWROLE_XVBPAK_AVBPAK


 USEREXIT_NEWROLE_XVBPAP_AVBPAK

The following user exits are available in report SAPLV60B for transfer to accounting (function
group V60B):

 EXIT_SAPLV60B_001: Change the header data in the structure acchd


You can use this exit to influence the header information of the accounting document. For
example, you can change the business transaction, "created on" date and time, the name
of the person who created it or the transaction with which the document was created.

 EXIT_SAPLV60B_002: Change the customer line ACCIT


You can use this exit to change the customer line in the accounting document. This exit is
processed once the ACCIT structure is filled in with data from document header VBRK.

 EXIT_SAPLV60B_003: Change the customer line in costing


The customer line is filled in differently for costing. You can use exit 003 to influence the
ACCIT structure.

 EXIT_SAPLV60B_004: Change a GL account item ACCIT You can add information to a GL


account item (such as quantity specifications) with this exit.

 EXIT_SAPLV60B_005: User exit for accruals


Once all relevant data for accruals was entered in the GL account item, you can add to this
data with this exit.

 EXIT_SAPLV60B_006: Change the control line ACCIT


You can use exit 006 to add information to the control line.

 EXIT_SAPLV60B_007: Change the installment plan


You can use exit 007 to add information to the installment plan
parameters in the GL account item.

 EXIT_SAPLV60B_008: Change the transfer structure ACCCR, ACCIT and ACCHD


After the accounting document is filled in with data, you can use exit 008 to change the
document once again.

 EXIT_SAPLV60B_010: Item table for customer lines


You can use exit 10 to influence the contents of customer lines before they are created.

 EXIT_SAPLV60B_0011: Change the parameter for cash account determination or


reconciliation account determination
You can use this exit to change inbound parameters in order to influence account
determination. User Exits For General Billing Interface

 USEREXIT_AVBPAK_CPD (in Include RV60AFZB)


With this user exit for the general billing interface, deviating address data for different partner
functions can be copied from the interface.

 USEREXIT_AVBPAK_ADD (in Include RV60AFZA)

With this user exit for the general billing interface, new partner functions can be copied from the
interface.

 USEREXIT_XVBAPF_KEY (in Include RV60AFZA)

With this user exit for the general billing interface, a key field can be added in the aggregrated
flow.

 USEREXIT_XVBAPF_KEY_CANC (in Include RV60AFZA)

Special user exit for the general billing interface with which a key field can be added in the
aggregrated flow.
  User Exits For Sales Support
In Sales Support, you can use the following SAP enhancements:

 MCV2001 - Expand LIS fields for sales activities/sales promotions. This enhancement
contains the following user exit:
 EXIT_SAPLMCV2_001

 V43MLIS - Expand LIS fields for address lists. This enhancement contains the following
user exit:
 EXIT_SAPLV43M_007

 V43K0001 - Enhancement for linking to calendar. This enhancement contains the


following user exit:
 EXIT_SAPLV43K_001

 V43ADATA - Change sales activity data in dialog. This enhancement contains the
following user exit:
 EXIT_SAPMV43A_007

User Exits For Lists

User Exits in Program RVKPR002 (Customer Expected Price)


RVKPRFZ1 This allows the list structure of individual fields to be filled on header and
item levels.

RVKPRFZ2 This allows the sort sequence for the first issue of the list to be defined.

RVKPRFZ1 This allows you to deposit your own user codes.

RVKPRFZ1 This allows you to create your own list headings.


There are two additional user exits for listing sales documents, which influence the way in which
the communication structure is filled. These user exits do not affect the structure of the list but
the way in which the data is transferred and how the new additional fields are filled.

 CUSTOMER_FILL_1
 CUSTOMER_FILL_2

User Exits for Payment Cards

Include MV45AFZH contains the user exit AUTHORIZATION_VALUE_SPLIT.


You can use this user exit to initiate the system to create several authorizations in the sales order
at the same time. This might be appropriate when different shipping points are assigned to the
items and therefore several shipments will be created for a sales order.

More information can be found here:

 Note 381348 - Using user exit, customer exit, VOFM in SD

Unfortunately, there is not any link between the material documents posted with the movement
types 313 and 315.

The material document of the 313 posting only acts as an input help for the posting with
movement type 315.

The system does not build any link between these two documents.

When you post with the movement type 313 you decrease the un-restricted use stock in the
issuing storage location (MARD-LABST) and increase the stock in transfer in the receiving
storage location (MARD-UMLME).

As long as you have stock in MARD-UMLME, you will be able to post the following movement
type 315.

You can, therefore, for example, post a single 313 for 10 KG and then 10 individual 315 for 1 KG
each. The system will not build any link between the documents, and it will allow you to post the
315 as long as you have stock in MARD-UMLME.

You might also like