You are on page 1of 15

SD User exits

Sales Related Exits


Customer Exits

Enhancement Code

Description

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

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.

Include

Description

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, which may

and

be required and can be used if necessary.

MV45EFZ1
For more details see Help link above.

Billing Related Exits


Customer Exits
Enhancement code

Description

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

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 Code

Description

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

MV50AFZK

The user exits in this include can be used to fill the condition tables for material
listing and material exclusion (KOMKG and KOMPG) and product selection (KOMKD

Include

Description
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 Pool

Include

Description

RV60AFZZ

This user exit allows you to copy

or
Function
Group
USEREXIT_PRICING_PREPARE_TKOMK

SAPLV60A

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

Routine

Module Pool

Include

Description

or
Function
Group
pricing" section.
USEREXIT_PRICING_PREPARE_TKOMP

SAPLV60A

RV60AFZZ

This user exit 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_MODIFICATION

SAPMV61A

MV61AFZA

You can use this 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_KZWI

SAPMV61A

MV61AFZB

You can change 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_KOPF

SAPMV61A

MV61AFZB

You can adjust 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_LEER

SAPMV61A

MV61AFZB

You can adjust 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

SAPMV61

MV61AFZA

You can install additional checks to the


standard checks of condition lines (e.g.

Routine

Module Pool

Include

Description

or
Function
Group
maximum/minimum value).
USEREXIT_PRICING_RULE

SAPLV61A

RV61AFZA

In the standard 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_RULE

SAPMV61A

MV61AFZA

You can use this user exit to change the


pricing type that has been predefined in
the
copying control table in billing.

USEREXIT_XKOMV_BEWERTEN_INIT

SAPLV61A

RV61AFZB

This field is used in the formulas and


therefore initialized before the loop for
the pricing
procedure starts.

USEREXIT_XKOMV_BEWERTEN_END

SAPLV61A

RV61AFZB

Within a loop for the price components


during pricing, specific values can be
transferred
into the communication structures in
pricing to be further processed.

USEREXIT_XKOMV_ERGAENZEN

SAPLV61A

RV61AFZB

In change mode, 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_MANU

SAPLV61A

RV61AFZB

You can use this user exit to change the


ready-for-input fields of the manually
entered
condition record in add mode in the
condition screen.

USEREXIT_XKOMV_FUELLEN

SAPLV61A

RV61AFZB

This user exit is 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

Routine

Module Pool

Include

Description

or
Function
Group
determined via a condition record.
USEREXIT_XKOMV_FUELLEN_O_KONP

SAPLV61A

RV61AFZB

This user exit is 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.

USEREXIT_PRICING_COPY

SAPLV61A

RV61AFZA

You can change 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_001

You can use this user exit to control whether an address that 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_002

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

EXIT_SAPLV09A_003

Use this user exit to control the origin of partners in the partner 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_004

Use this user exit to integrate your own check in a program, 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

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

SAPLV60F

Billing Plan: Distribute Difference


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.

RV60FUS2

SAPLV60F

Billing plan: Prepare pricing

User exit

Include

Description

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

SAPLV60F

Bill. Plan: Deadline Proposal From Source


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 date (FPLT-AFDAT).

RV60FUS4
RV60FUS5

SAPLV60F

field preparation field selection for screen


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

User exit

Include

RV60FUST

Description
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 range for internal document number

RV61AFZB

User exits for printing

User Exits For Product Allocation Processing*


User exit

Include

SDQUX0001

Description
Function module exit for enhanced check in SD product allocation

User Exits For Availability Check


User exit

Include

Description

USEREXIT_PLANT_SELECTION

RV03VFZZ

The user exits named here 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

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

RV03VFZZ

This user exit is used to adjust the flow during plant transfer. A

USEREXIT_AVAILABILITY_OUT

list of permitted plants, where

USEREXIT_DARA_REFRESH

this material is created, is determined and checked in the standard

USEREXIT_PLANT_SELECTION

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 checking customer reserve fields from

USR01

VBLB-USR01 to

USEREXIT_CHECK_VBLB-

VBLB-USR05. The reserve fields are used in the component supplier

USR02

industry. The system

USEREXIT_CHECK_VBLB-

calls them in the screen flow logic for header data in forecast and JIT

USR03

delivery schedules

USEREXIT_CHECK_VBLBUSR04
USEREXIT_CHECK_VBLBUSR05
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 to change the workflow parameters for

EXIT_SAPLVED4_002

processing inbound EDI messages.

EXIT_SAPLVED4_003
EXIT_SAPLVED4_005
EXIT_SAPLVED4_006
EXIT_SAPLVED4_001

For the self-billing procedure - You can use these user exits for the standard self-billing

EXIT_SAPLVED4_005

procedure.

EXIT_SAPLVED4_006
EXIT_SAPLVED5_002

For the self-billing procedure -You can use these user exits for the self-billing procedure with

EXIT_SAPLVED5_003

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.