You are on page 1of 16

Sales related exits

Customer exits (CMOD transaction)

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 reserved for customers (need a modification key)

Include Description
MV45ATZZ For entering metadata for sales document processing
For entering additional installation-specific modules for sales document
MV45AOZZ processing which are called up by the screen and run under PBO (Process
Before Output) prior to output of the screen.
For entering additional installation-specific modules for sales document
MV45AIZZ processing. These are called up by the screen and run under PAI (Process
After Input) after data input (for example, data validation).
MV45AFZZ and For entering installation-specific FORM routines and for using user exits,
MV45EFZ1 which may be required and can be used if necessary.

For more details see Help link above.

Billing related exits

Customer exits (CMOD transaction)


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 (CMOD transaction)

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 reserved for customers (need a modification key)

Include Description
MV50AFZ1 User Exits for Delivery Processing
MV50AFZ2 User Exit for Batch Quantity Allocation
MV50AFZ3 LIPS-KOQUI (Picking is subject to confirmation) determination
The user exits in this include can be used to fill the condition tables for material
MV50AFZK listing and material exclusion (KOMKG and KOMPG) and product selection
(KOMKD and KOMPD) with own data.
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
MV50AFZL
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.
This user exit can be used to modify change mode of pricing screens in delivery
MV50AFZP
processing.
MV50AFZZ Users Exit for Batch Determination; LIPS-LGORT determination

User Exits for Transportation

Include routines reserved for customers (need a modification key)

Include Description
You can include your own modules in this program, to be processed in shipment
MV56AOZZ
processing screens during PBO.
You can include your own modules in this program, to be processed in shipment
MV56AIZZ
processing screens during PAI.
You can include your own FORM routines in this program. They can contain your
MV56AFZY
own adjustments for shipment processsing.
This program contains pre-defined FORM routines, in which you can carry out
MV56AFZZ
your own adjustments for transportation processing.

For additional information, see SAP Help link above.

User Exits for Price Determination

Module
pool or
Routine Include Description
function
group
This user exit allows
USEREXIT_PRICING_PREPARE_TKOMK SAPLV60A RV60AFZZ
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.
This user exit allows
you to copy
additional fields for
pricing in the
TKOMP
communication
structure (item
fields), which have
USEREXIT_PRICING_PREPARE_TKOMP SAPLV60A RV60AFZZ 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.
You can use this user
exit to adjust the
display of individual
lines in the condition
screen by changing
the display attributes
USEREXIT_FIELD_MODIFICATION SAPMV61A MV61AFZA
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.
You can adjust the
display of subtotals
in the condition
screen to your
requirements by
USEREXIT_FIELD_MODIFIC_KOPF SAPMV61A MV61AFZB changing the display
attributes of the
screen fields.
This user exit is also
used in order
processing.
You can adjust the
display of blank lines
in the condition
screen to your
requirements by
USEREXIT_FIELD_MODIFIC_LEER SAPMV61A MV61AFZB changing the display
attributes of the
screen fields.
This user exit is also
used in order
processing.
You can install
additional checks to
the standard checks
USEREXIT_PRICING_CHECK SAPMV61 MV61AFZA of condition lines
(e.g.
maximum/minimum
value).
In the standard SAP
system, it is
predefined which
condition categories
USEREXIT_PRICING_RULE SAPLV61A RV61AFZA
and classes can be
copied or
recalculated per
pricing type. You can
change the
predefined standard
procedure for each
pricing type.
You can use this user
exit to change the
pricing type that has
USEREXIT_CHANGE_PRICING_RULE SAPMV61A MV61AFZA
been predefined in
the copying control
table in billing.
This field is used in
the formulas and
therefore initialized
USEREXIT_XKOMV_BEWERTEN_INIT SAPLV61A RV61AFZB
before the loop for
the pricing procedure
starts.
Within a loop for the
price components
during pricing,
specific values can
USEREXIT_XKOMV_BEWERTEN_END SAPLV61A RV61AFZB be transferred into
the communication
structures in pricing
to be further
processed.
In change mode, you
can change the
dynamic part of the
condition record
USEREXIT_XKOMV_ERGAENZEN SAPLV61A RV61AFZB (KONVD) that is
always redetermined
(i.e. it is not stored in
database table
KONV).
You can use this user
exit to change the
ready-for-input fields
of the manually
USEREXIT_XKOMV_ERGAENZEN_MANU SAPLV61A RV61AFZB
entered condition
record in add mode
in the condition
screen.
This user exit is
USEREXIT_XKOMV_FUELLEN SAPLV61A RV61AFZB 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 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
USEREXIT_XKOMV_FUELLEN_O_KONP SAPLV61A RV61AFZB
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.
You can change the
KONV fields for
USEREXIT_PRICING_COPY SAPLV61A RV61AFZA
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:
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:
LVKMPTZZ
LVKMPFZ1: USER_CREDIT_CHECK1
LVKMPFZ2: USER_CREDIT_CHECK2
LVKMPFZ3: USER_CREDIT_CHECK3

User Exit for availability check


User exit USEREXIT_AVAIL_CHECK_CREDIT exists in Include 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


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

User Exits for Billing Plan

 BILLING_SCHEDULE_DELTA
For milestone billing a percentage value is fully invoiced for
each billing deadline. In the case of deviations between the
User Exit from original item value and any later changes, you can use the
SAPLV60F, user exit to determine whether the difference should be
RV60FUS1 Billing Plan: stored in the final invoice or sent to the next deadline.
Distribute  USEREXIT_MOVE_FIELD_TO_FPLT : This user exit
Difference 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 from  USEREXIT_PRICING_PREPARE_TKOMX


RV60FUS2
SAPLV60F, This user exit is used to copy or create an additional field in
Billing plan: the definitive communication structure for pricing.
Prepare 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:
o tkomp-anz_tage (Number of days in a deadline)
o tkomp-anz_monate (Number of months in a
deadline)
o tkomp-anz_jahre (Number of years in a deadline)
o tkomp-anz_wochen (Number of weeks in a deadline)

 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
User Exit
are determined and set in the billing plan.
From
In this way you can, for example, set the goods issue date as
SAPLV60F,
the starting date for the billing plan.
RV60FUS3 Bill. Plan:
Additions to billing plan with transaction SMOD
Deadline
 User exit SDVAX001
Proposal From
In the standard release the billing plan type is determined
Source
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).

User exit from


SAPLV60F,
field
RV60FUS4
preparation
field selection
for screen
This userexit
can be used to
RV60FUS5 split date lines
TKOMK for
Header fields
User Part for
Billing Plan -
RV60FUST
Data
Definition

Additional User Exits in Billing Document

Fill in the fields in VBRK/VBRP tables - USEREXIT_FILL_VBRK_VBRP in the include


RV60AFZC.
Determine the number range for internal document number -
USEREXIT_NUMBER_RANGE_INV_DATE in the include RV60AFZC.
User exits for printing - include RV61AFZB

User Exits For Product Allocation Processing

The following SAP enhancements are available for the area of 'product allocation':

 SDQUX0001 Function module exit for enhanced check in SD product allocationUser


Exits For Availability Check
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!
USEREXIT_PLANT_SELECTION in program RV03VFZZ is an exception to this rule
(see below).
User exits in program FV45VFZZ

 USEREXIT_ADD_FIELD_TO_HEADER

 USEREXIT_ADD_FIELD_TO_LINE

User exits in program FV45VFZY

 USEREXIT_DELIVERY_GROUPS
 USEREXIT_MVERF_INIT

 USEREXIT_QUOTA_KEY_VALUE

User exits in program RV03VFZZ

 USEREXIT_AVAILABILITY_IN

 USEREXIT_AVAILABILITY_OUT

 USEREXIT_DARA_REFRESH

 USEREXIT_PLANT_SELECTION
This user exit is used to adjust the flow during plant transfer. A list of 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 Exits in Programm MV45AFZC
The following user exits are available for checking customer reserve fields from VBLB-USR01
to VBLB-USR05. The reserve fields are used in the component supplier industry. The system
calls them in the screen flow logic for header data in forecast and JIT delivery schedules:

 USEREXIT_CHECK_VBLB-USR01

 USEREXIT_CHECK_VBLB-USR02

 USEREXIT_CHECK_VBLB-USR03

 USEREXIT_CHECK_VBLB-USR04

 USEREXIT_CHECK_VBLB-USR05

Using transactions SMOD and CMOD


Function module V45L0001 is available as an SAP extension for the component supplier
industry. It contains the following user exits:
General

 EXIT_SAPLVED4_004

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.
For delivery schedules

 EXIT_SAPLV45L_001

The system checks an incoming delivery schedule against the current/old delivery schedule to
determine if there are any differences.
The user exit is called up at the end of this standard tolerance check at which time you can
process or change data.

 EXIT_SAPLV45L_002

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.
Planned delivery schedules
 EXIT_SAPMV45L_001

This user exit allows you to process schedule lines generated automatically in a planning
delivery schedule.

 EXIT_SAPMV45L_002

This user exit allows you to modify the calendar used in a delivery schedule split.
For delivery orders (MAIS)

 EXIT_SAPMV45A_005

This user exit enables you to control how the system copies packing proposals into the outbound
delivery order.
For workflow

 EXIT_SAPLVED4_001
 EXIT_SAPLVED4_002
 EXIT_SAPLVED4_003
 EXIT_SAPLVED4_005
 EXIT_SAPLVED4_006

These user exits allow you to change the workflow parameters for processing inbound EDI
messages.
For the self-billing procedure

 EXIT_SAPLVED4_001
 EXIT_SAPLVED4_005
 EXIT_SAPLVED4_006

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

 EXIT_SAPLVED5_002
 EXIT_SAPLVED5_003
 EXIT_SAPLVED5_004

You can use these user exits for the self-billing proceure with invoice creation.
User Exits For Product Selection

The following SAP extensions are available for the area of Product Selection

 V45A0001 Function module exit for developing alternative materials for product
selection*

User Exits For Resource-Related Billing


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


o USEREXIT_INV_REQ_ITEM


o 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


o 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:


o USEREXIT_RELI_XVBPAK_AVBPAK


o USEREXIT_NEWROLE_XVBPAK_AVBPAK


o 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:
o EXIT_SAPLMCV2_001

 V43MLIS - Expand LIS fields for address lists. This enhancement contains the following
user exit:
o EXIT_SAPLV43M_007
 V43K0001 - Enhancement for linking to calendar. This enhancement contains the
following user exit:
o EXIT_SAPLV43K_001

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

User Exits For Lists

User Exits in Program RVKPR002 (Customer Expected Price)

This allows the list structure of individual fields to be filled on header and item
RVKPRFZ1
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.

You might also like