sd– available user exits details

36
Sales & Distribution – Available User Exits Details Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com Page: 1 Contents Making Manual Entry for a Condition-type Possible for Selected Users in Sales order .... 2 User Exits for Transportation.............................................................................................. 3 User Exits for Price Determination ..................................................................................... 3 User Exits for Partner Determination ................................................................................. 7 User Exits For Credit Checks ............................................................................................. 8 User Exit for Availability Check ........................................................................................ 8 User Exit for Risk Management for Receivables ............................................................... 8 User Exits for Billing Plan .................................................................................................. 9 Additional User Exits in Billing Document ...................................................................... 10 User Exits For Product Allocation Processing.................................................................. 10 User Exits For Component Supply Processing ................................................................. 11 User Exits For Product Selection ...................................................................................... 13 User Exits For Resource-Related Billing.......................................................................... 13 User Exits For General Billing Interface .......................................................................... 15 User Exits For Sales Support ............................................................................................ 15 User Exits For Lists .......................................................................................................... 16 User Exits for Payment Cards ........................................................................................... 16 Sales related exits.............................................................................................................. 16 Billing related exits ........................................................................................................... 17 Delivery related exits ........................................................................................................ 18 User Exits In Sales Document Processing ........................................................................ 19 User exits in the screens .................................................................................................... 27 User Exits in Program MV45AFZ4 .................................................................................. 28 User Exits in the SAPFV45PF0E and SAPFV45PF0C Programs .................................... 28 New Fields For Free Goods Determination ...................................................................... 28 User exits for Billing......................................................................................................... 29 Transferring new SD fields to Accounting ....................................................................... 30 User exits for Transportation ............................................................................................ 32 User exits for billing plan ................................................................................................. 34 Some Question Answers ................................................................................................... 35

Upload: sachin-karekar

Post on 28-Apr-2015

275 views

Category:

Documents


11 download

DESCRIPTION

userexit

TRANSCRIPT

Page 1: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 1

Contents

Making Manual Entry for a Condition-type Possible for Selected Users in Sales order .... 2

User Exits for Transportation.............................................................................................. 3

User Exits for Price Determination ..................................................................................... 3

User Exits for Partner Determination ................................................................................. 7

User Exits For Credit Checks ............................................................................................. 8

User Exit for Availability Check ........................................................................................ 8

User Exit for Risk Management for Receivables ............................................................... 8

User Exits for Billing Plan .................................................................................................. 9

Additional User Exits in Billing Document ...................................................................... 10

User Exits For Product Allocation Processing.................................................................. 10

User Exits For Component Supply Processing ................................................................. 11

User Exits For Product Selection ...................................................................................... 13

User Exits For Resource-Related Billing .......................................................................... 13

User Exits For General Billing Interface .......................................................................... 15

User Exits For Sales Support ............................................................................................ 15

User Exits For Lists .......................................................................................................... 16

User Exits for Payment Cards ........................................................................................... 16

Sales related exits .............................................................................................................. 16

Billing related exits ........................................................................................................... 17

Delivery related exits ........................................................................................................ 18

User Exits In Sales Document Processing ........................................................................ 19

User exits in the screens .................................................................................................... 27

User Exits in Program MV45AFZ4 .................................................................................. 28

User Exits in the SAPFV45PF0E and SAPFV45PF0C Programs .................................... 28

New Fields For Free Goods Determination ...................................................................... 28

User exits for Billing ......................................................................................................... 29

Transferring new SD fields to Accounting ....................................................................... 30

User exits for Transportation ............................................................................................ 32

User exits for billing plan ................................................................................................. 34

Some Question Answers ................................................................................................... 35

Page 2: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 2

Making Manual Entry for a Condition-type Possible for

Selected Users in Sales order

Often there is a requirement for making a condition type (price, discount etc) non-modifiable for

some-users and modifiable for others using the same SAP system or modifiable for certain

document types (say OR ie Standard Sales Order) and non-modifiable in another order type (say

CR ie Credit Memo Request). In standard SAP this is not possible. Using the controls for the

condition-type (V/06 transaction) we can either make a condition type

1. No Limitations

2. A : Free

3. B : Automatic Entry has Priority

4. C : Manual Entry has Priority

5. D : Not possible to process manually

Selecting any one of this option makes the condition type uniform across all document type and

for users. Often the requirements are like for a group of users the condition type should behave

like C option, for another group like D or for a specific document type it should be A and for others

D.

One of the easiest way to achieve this is through the user-exit

USEREXIT_PRICING_PREPARE_TKOMP in the include MV45AFZZ.

The following code will make the condition type PR00 modifiable for user ABAP1 and non-

modifiable for all other users.

----

FORM USEREXIT_PRICING_PREPARE_TKOMP.

DATA : i_T685A TYPE STANDARD TABLE OF T685A WITH HEADER LINE.

IF SY-UNAME = 'ABAP1'.

LOOP AT XKOMV.

IF XKOMV-KSCHL = 'PR00'.

SELECT * FROM T685A INTO TABLE I_T685A WHERE KSCHL = 'PR00'.

READ TABLE I_T685A WITH KEY KSCHL = XKOMV-KSCHL.

I_T685A-KMANU = 'C'.

MODIFY I_T685A INDEX SY-TABIX.

MODIFY T685A FROM TABLE I_T685A.

REFRESH I_T685A.

ENDIF.

ENDLOOP.

ELSE.

LOOP AT XKOMV.

IF XKOMV-KSCHL = 'PR00'.

Page 3: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 3

SELECT * FROM T685A INTO TABLE I_T685A WHERE KSCHL = 'PR00'.

READ TABLE I_T685A WITH KEY KSCHL = XKOMV-KSCHL.

I_T685A-KMANU = 'D'.

MODIFY I_T685A INDEX SY-TABIX.

MODIFY T685A FROM TABLE I_T685A.

REFRESH I_T685A.

ENDIF.

ENDLOOP.

ENDIF.

ENDFORM.

User Exits for Transportation

Include routines reserved for customers (need a modification key)

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 processing. MV56AFZZ - This program contains pre-defined FORM routines, in which you can carry out your own adjustments for transportation processing.

User Exits for Price Determination

Routine Module Include Description

Page 4: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 4

pool or

function

group

USEREXIT_PRICING_PREPARE_TKOMK SAPLV60A RV60AFZZ This user exit 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_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.

Page 5: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 5

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.

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

Page 6: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 6

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

Page 7: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 7

of the condition line.

However, this only

applies to conditions

that have been

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

Page 8: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 8

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.

Page 9: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 9

User Exits for Billing Plan

RV60FUS1 User Exit from

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 User exit from

SAPLV60F,

Billing plan:

Prepare pricing

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 User Exit From

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-

Page 10: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 10

AFDAT).

RV60FUS4 User exit from

SAPLV60F,

field preparation

field selection

for screen

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

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 allocation User

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

Page 11: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 11

• 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 Program 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.

Page 12: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 12

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 procedure with invoice creation.

Page 13: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 13

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

• 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)

Page 14: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 14

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.

Page 15: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 15

• 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

aggregated 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

Page 16: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 16

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.

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)

Page 17: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 17

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

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 and

MV45EFZ1

For entering installation-specific FORM routines and for using user exits,

which may be required and can be used if necessary.

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

Page 18: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 18

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

Page 19: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 19

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

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 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 In Sales Document Processing

This IMG step describes additional installation-specific processing in sales document processing. In particular, the required INCLUDES and user exits are described.

Page 20: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 20

Involved program components

System modifications for sales document processing affect different areas. Depending on the modification, you make the changes in the program components provided:

• MV45ATZZ

For entering metadata for sales document processing. User-specific metadata must start with "ZZ".

• 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. The modules must start with "ZZ".

• 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). The modules must start with "ZZ".

• MV45AFZZ and MV45EFZ1

For entering installation-specific FORM routines and for using user exits, which may be required and can be used if necessary. These program components are called up by the modules in MV45AOZZ or MV45AIZZ.

User exits in the program MV45AFZZ

The user exits which you can use for modifications in sales document processing are listed below.

USEREXIT_DELETE_DOCUMENT

This user exit can be used for deleting data which was stored in a separate table during sales document creation, for example, if the sales document is deleted. For example, if an additional table is filled with the name of the person in charge (ERNAM) during order entry, this data can also be deleted after the sales order has been deleted. The user exit is called up at the end of the FORM routine BELEG_LOESCHEN shortly before the routine BELEG_SICHERN.

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

Page 21: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 21

• 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. See the Screen Painter manual for further information on structuring the interface.

USEREXIT_MOVE_FIELD_TO_VBAK

Use this user exit to assign values to new fields at sales document header level. It is described in the section "Transfer of the customer master fields into the sales document". The user exit is called up at the end of the FORM routine VBAK_FUELLEN.

USEREXIT_MOVE_FIELD_TO_VBAP

Use this user exit to assign values to new fields at sales document item level. It is described in the section "Copy customer master fields into the sales document". The user exit is called up at the end of the FORM routine VBAP_FUELLEN.

USEREXIT_MOVE_FIELD_TO_VBEP

Use this user exit to assign values to new fields at the level of the sales document schedule lines. The user exit is called up at the end of the FORM routine VBEP_FUELLEN.

USEREXIT_MOVE_FIELD_TO_VBKD

Use this user exit to assign values to new fields for business data of the sales document. It is described in the section "Copy customer master fields into sales document" . The user exit is called up at the end of the FORM routine VBKD_FUELLEN.

USEREXIT_NUMBER_RANGE

Use this user exit to define the number ranges for internal document number assignment depending on the required fields. For example, if you want to define the number range depending on the sales organization (VKORG) or on the selling company (VKBUR), use this user exit. The user exit is called up in the FORM routine BELEG_SICHERN.

USEREXIT_PRICING_PREPARE_TKOMK

Use this user exit if you want to include and assign a value to an additional header field in the communication structure KOMK taken as a basis for pricing.

Page 22: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 22

USEREXIT_PRICING_PREPARE_TKOMP

Use this user exit if you want to include or assign a value to an additional item field in the communication structure KOMP taken as a basis for pricing.

USEREXIT_READ_DOCUMENT

You use this user exit if further additional tables are to be read when importing TA01 or TA02. The user exit is called up at the end of the FORM routine BELEG_LESEN.

USEREXIT_SAVE_DOCUMENT

Use this user exit to fill user-specific statistics update tables. The user exit is called up by the FORM routine BELEG-SICHERN before the COMMIT command. Note If a standard field is changed, the field r185d-dataloss is set to X. The system queries this indicator at the beginning of the safety routine. This is why this indicator must also be set during the maintenance of user-specific tables that are also to be saved.

USEREXIT_SAVE_DOCUMENT_PREPARE

Use this user exit to make certain changes or checks immediately before saving a document. It is the last possibility for changing or checking a document before posting. The user exit is carried out at the beginning of the FORM routine BELEG_SICHERN.

User exits in the program MV45AFZA

USEREXIT_MOVE_FIELD_TO_KOMKD

Use this user exit to include or assign values to additional header fields in the communication structure KOMKD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination" .

USEREXIT_MOVE_FIELD_TO_KOMPD

Use this user exit to include or assign values to additional item fields in the communication structure KOMPD taken as a basis for the material determination. This is described in detail in the section "New fields for material determination ".

USEREXIT_MOVE_FIELD_TO_KOMKG

Use this user exit to include or assign values to additional fields in the communication structure KOMKG taken as a basis for material determination and material listing. This is described in detail in the section "New fields for listing/exclusion".

USEREXIT_MOVE_FIELD_TO_KOMPG

Page 23: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 23

Use this user exit to include or assign values to additional fields in the communication structure KOMPG taken as a basis for material determination and material listung. This is described in detail in the section "New fields for listing/exclusion".

USEREXIT_REFRESH_DOCUMENT

With this user exit, you can reset certain customer-specific fields as soon as processing of a sales document is finished and before the following document is edited. For example, if the credit limit of the sold-to party is read during document processing, in each case it must be reset again before processing the next document so that the credit limit is not used for the sold-to party of the following document. The user exit is executed when a document is saved if you leave the processing of a document with F3 or F15. The user exit is called up at the end of the FORM routine BELEG_INITIALISIEREN.

User-Exits in program MV45AFZB

USEREXIT_CHECK_XVBAP_FOR_DELET

In this user exit, you can enter additional data for deletion of an item. If the criteria are met, the item is not deleted (unlike in the standard system).

USEREXIT_CHECK_XVBEP_FOR_DELET

In this user exit, you can enter additional data for deletion of a schedule line. If the criteria are met, the schedule line is not deleted (unlike in the standard system).

USEREXIT_CHECK_VBAK

This user exit can be used to carry out additional checks (e.g. for completion) in the document header. The system could, for example, check whether certain shipping conditions are allowed for a particular customer group.

USEREXIT_CHECK_VBAP

This user exit can be used to carry out additional checks (e.g. for completion) at item level.

USEREXIT_CHECK_VBKD

The user exit can be used to carry out additional checks (e.g. for completion) on the business data in the order.

Page 24: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 24

USEREXIT_CHECK_VBEP

This user exit can be use to carry out additional checks (e.g. for completion) on the schedule line. During BOM explosion, for example, you may want certain fields to be copied from the main item to the sub-items (as for billing block in the standard system).

USEREXIT_CHECK_VBSN

You can use this user exit to carry out additional checks (e.g. for completion) on the serial number.

• USEREXIT_CHECK_XVBSN_FOR_DELET In this user exit, you can enter additional criteria for deletion of the serial number. If the criteria are met, the serial number is not deleted (unlike in the standard system).

USEREXIT_FILL_VBAP_FROM_HVBAP

You can use this user exit to fill additional fields in the sub-item with data from the main item.

USEREXIT_MOVE_FIELD_TO_TVCOM_H

You can use this user exit to influence text determination for header texts. For example, you can include new fields for text determination or fill fields that already exist with a new value.

USEREXIT_MOVE_FIELD_TO_TVCOM_I

You can use this user exit to influence text determination for item texts. For example, you can include new fields for text determination or fill fields that already exist with a new value.

User-Exits for product allocation:

The following user exits all apply to structure COBL, in which the data for account determination is copied to item level.

USEREXIT_MOVE_FIELD_TO_COBL

Option to include new fields in structure COBL.

USEREXIT_COBL_RECEIVE_VBAK

Option to assign values from the document header to the new fields.

USEREXIT_COBL_RECEIVE_VBAP

Option to supply values from the item to the new fields.

USEREXIT_COBL_SEND_ITEM

A changed field can be copied from the structure into the item. You could use the user exit to display a certain field in the account assignment block (see also MV45AFZB).

Page 25: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 25

USEREXIT_COBL_SEND_HEADER

A changed field can be copied from the structure to the header (see source text MV45AFZB)

USEREXIT_SOURCE_DETERMINATION

You can use this user exit to determine which plant will be used for the delivery. In the standard system, the delivering plant is copied from the customer master or the customer-material info record. If you want to use a different rule, then you must enter it in this user exit.

USEREXIT_MOVE_FIELD_TO_ME_REQ

With this user exit you can include additional fields for the following fields:

• EBAN (purchase requisition)

• EBKN (purchase requisition-account assignment)

• USEREXIT_GET_FIELD_FROM_SDCOM

Option to include new fields for the variant configuration. Fields that are included in structure SDCOM can be processed and then returned to the order.

USEREXIT_MOVE_WORKAREA_TO_SDWA

You can use this user exit to format additional work areas for the variant configuration. You will find notes on the user exit in MV45AFZB.

• User-Exits for first data transfer:

The following user exits can only be used for the first data transfer. Note Only use the user exits if the names/fields do NOT have the same name.

USEREXIT_MOVE_FIELD_TO_VBAKKOM

Option to include additional fields in structure VBAKKOM (communiction fields for maintaining the sales document header)

USEREXIT_MOVE_FIELD_TO_VBAPKOM

Option to include additional fields in structure VBAPKOM (communication fields for maintaining a sales item)

USEREXIT_MOVE_FIELD_TO_VBEPKOM

Option to include additional fields in structure VBEPKOM (communication fields for maintaining a sales document schedule line)

Page 26: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 26

USEREXIT_MOVE_FIELD_TO_VBSN

You can use this user exit to include fields in structure VBSN (scheduling agreement-related change status).

USEREXIT_MOVE_FIELD_TO_KOMKH

You can use this user exit to include new fields for batch determination (document header).

USEREXIT_MOVE_FIELD_TO_KOMPH

You can use this user exit to include new fields for batch determination (document item).

USEREXIT_CUST_MATERIAL_READ

You can use this user exit to set another customer number in the customer material info record (e.g. with a customer hierarchy)

USEREXIT_NEW_PRICING_VBAP

Option for entry of preconditions for carrying out pricing again (e.g. changes made to a certain item field could be used as the precondition for pricing to be carried out again). Further information in MV45AFZB.

USEREXIT_NEW_PRICING_VBKD

Option for entry of preconditions for carrying out pricing again (e.g. changes to the customer group or price group could be set as the preconditions for the system to carry out pricing again). Further information in MV45AFZB.

User-Exits in Program MV45AFZD

USEREXIT_CONFIG_DATE_EXPLOSION

The BOM is exploded in the order with the entry date. You can use this user exit to determine which data should be used to explode the BOM (explosion with required delivery date, for example).

User exits in the program FV45EFZ1

USEREXIT_CHANGE_SALES_ORDER

In the standard SAP R/3 System, the quantity and confirmed date of the sales document schedule line is changed automatically if a purchase requisition is allocated, and it or the sales document is changed (for example, quantity, date). If you want to change this configuration in the standard system, you can define certain requirements in order to protect your sales orders from being changed automatically. Use this user exit for this purpose. Decide at this point whether the schedule lines are to be changed.

User-Exits in Program RV45PFZA

USEREXIT_SET_STATUS_VBUK

Page 27: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 27

In this user exit you can you can store a specification for the reserve fields in VBUK (header status). Reserve field UVK01 could, for example, be used for an additional order status (as for rejections status, etc.). The following workareas are available for this user exit:

• VBUK (header status)

• FXVBUP (item status)

• FXVBUV (Incompletion)

• USEREXIT_SET_STATUS_VBUP

In this user exit you can you can store a specification for the reserve fields for VBUP (item status). The following workareas are available for this user exit:

• FXVBAP (Item data)

• FXVBAPF (Dynamic part of order item flow)

• FXVBUV (Incompletion)

USEREXIT_STATUS_VBUK_INVOICE

You can use this user exit to influence billing status at header level.

User exits in the screens

Additional header data is on screen SAPMV45A 0309, additional item data on screen SAPMV45A 0459. These screens contain the Include screens SAPMV45A 8309 or SAPMV45A 8459 as user exits.

Fields which are also to be included in the sales document for a specific installation should be included on the Include screens for maintaining. If an application-specific check module is needed for the fields, this can be included in the Include MV45AIZZ. The module is called up in the processing logic of the Include screens.

For field transports, you do not have to make changes or adjustments.

Example

A new field, VBAK-ZZKUN, should be included in table VBAK.

If the check is defined via the Dictionary (fixed values or check table) the field must be included with the fullscreen editor in the Include screen SAPMV45A 8309. In this case, no change has to be made to the processing logic.

Page 28: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 28

User Exits in Program MV45AFZ4

USEREXIT_MOVE_FIELD_TO_KOMK

You can use this user exit to add or edit additional header fields in the communication structure - KOMK- for free goods determination. For more information, see the New Fields for Free Goods Determination IMG activity.

USEREXIT_MOVE_FIELD_TO_KOMP

You can use this user exit to add or edit additional item fields in the communication structure KOMP for free goods determination. For more information see the New Fields for Free Goods Determination IMG activity.

User Exits in the SAPFV45PF0E and SAPFV45PF0C

Programs

EXIT_SAPFV45P_001

You can use this user exit to decide whether intercompany billing data is used in the profitability segment for cross-company code sales, or whether the data comes from external billing (external customer, sales data from the selling company code.

New Fields For Free Goods Determination

Basic Information for Modifications to Free Goods Determination

• The following communication structures are relevant for free goods determination:

• KOMK (Free goods determination - Communication header)

• KOMP (Free goods determination - Communication item)

• KOMG (Free goods determination - Permitted fields)

For technical reasons, communications structure KOMG is used to display the totals from KOMK and KOMP. It contains all the fields that can be used for the material determination. If new fields are added to KOMK or KOMP, they are automatically added to KOMG.

• New fields for free goods determination are added in the following INCLUDES:

• Header data in KOMKZ (INCLUDE in KOMK, KOMG)

• Item data in KOMPZ (INCLUDE in KOMP, KOMG)

• The routines for adding new fields in sales order processing can be found in Member MV45AFZ4. Use the following user exits:

Page 29: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 29

• USEREXIT_MOVE_FIELD_TO_KOMK (header fields)

• USEREXIT_MOVE_FIELD_TO_KOMP (item fields)

An example of a statement for adding new header fields to free goods determination could be: FORM USEREXIT_MOVE_FIELD_TO_KOMK. MOVE VBAK-FFELDXY TO KOMK-ZZFELDXY. ENDFORM.

User 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.

Page 30: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 30

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

User exits for the resource-related billing document (RV45HFZZ):

• USEREXIT_INV_REQ_ITEM

• USEREXIT_INV_REQ_ITEM_PARTNER

Transferring new SD fields to Accounting

In this section, you are provided with an overview of user exits regarding the transfer of new fields to financial accounting.

Further notes

In comparison to modifications, user exits can be used for any release because they are not defined in the SAP system but in a name range that has been reserved for the customer.

There is an exact description of how to create user exits in the documentation for "Enhancements of SAP Transactions" by selecting the path Utilities -> Online manual. in the enhancement transaction CMOD.

• SDVFX001 Transfer header line (module pool SAPLV60B, programs LV60BU01 and LV60BU02)

This user exit allows you to carry out changes in the header information line XACCHD or in the item information line XACCIT for subsequent billing documents in accounting.

• SDVFX002 Transfer customer line item (module pool SAPLV60B, program LV60BF00)

This user exit allows you to carry out changes to the item information line XACCIT for subsequent billing documents in accounting. The customer line can also be changed.

Page 31: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 31

• SDVFX003 Transfer cash offsetting (module pool SAPLV60B, program LV60B00)

You can use this user exit to carry out changes in the item information line XACCIT for subsequent billing doucments in accounting. You can also make changes to the G/L account line for cash accounts.

• SDVFX004 Transfer G/L account line (module pool SAPLV60B, program LV60BF00)

This user exit allows you to carry out changes to the item information line XACCIT for subsequent billing documents in accounting.

• SDVFX005 Transfer accruals (module pool SAPLV60B, program LV60BF00)

This user exit allows you to carry out changes to the item information line XACCIT for subsequent billing documents in accounting. You can also make changes to the G/L account lines for accruals.

• SDVFX006 Transfer tax line (module pool SAPLV60B, program LV60BF00)

This user exit allows you to carry out changes to the item information line XYCCIT for subsequent billing documents in accounting. You can also make changes to the tax line.

Note

As an alternative you can still use the user exits that were available before Release 3.0 in INCLUDE RV60BFZA.

o USEREXIT_FILL_XKOMK1

o USEREXIT_FILL_XKOMK2

o USEREXIT_FILL_XKOMK3

o USEREXIT_FILL_XKOMK3_ACCR

o USEREXIT_FILL_XKOMK3_CASH

However there is a restriction in the following fields:

XKOMK1-BLART XKOMK1-BLDAT XKOMK1-BUDAT XKOMK1-XBLNR XKOMK2-ZUONR XKOMK2-SGTXT XKOMK2-GSSER XKOMK2-ZLSCH XKOMK3-ZUONR

Page 32: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 32

XKOMK3-SGTXT

User exits for Transportation

INCLUDE MV56AOZZ

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

INCLUDE MV56AIZZ

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

INCLUDE MV56AFZY

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

INCLUDE MV56AFZZ

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

• USEREXIT_FIELD_MODIFICATION

You can use this routine to modify the attributes in screen fields. This routine is called up by the routine FELD_AUSWAHL.

The following enhancements (transaction CMOD) are available for transportation (you will find more specific information about the individual user exits in transaction CMOD as documentation to the respective enhancements or as documentation of the relevant customer functions).

• V56IVIEW (General shipment processing)

With this enhancement, you can adujust the MRP overview to suit your individual needs.

• V56AFCCH (General shipment processing)

You can use this function to check whether a function is allowed for shipment processing. V56FSTAT (General shipment processing)

• This function is used for including user-defined activities that must take place once a status has been set in the shipment header.

• V56FCOPY (General shipment processing)

This function is used for copying delivery data to the shipment document.

• V56SLDET (General shipment processing)

Page 33: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 33

This function is used for carrying out user-defined leg determination.

• V56UCHCO (General shipment processing)

When you save after processing shipments, the system checks whether the shipments are complete and issues a suitable message. You can include additional checks in this function or check your own new objects.

• V56UCHCH (General shipment processing)

When you save or leave the transaction after processing shipments, the system checks whether changes have been carried out and issues a suitable message. You can include additional checks in this function or check your own new objects, which can be changed within shipment processing.

• V56UNUMB (General shipment processing)

You can use this function to determine the shipment number according to your own rules.

• V56USVDP (General shipment processing)

This function is called when shipments are saved and after the shipment tables have been formatted for update to the database (e.g. number assignment, last changed by, time changed).

• V56USVDO (General shipment processing)

You can use this function to update to the database additional included objects that can be processed during shipment processing.

• V56K0001 (Communication interface)

This function is called during IDoc outbound processing. Here, you can change the control record of the IDocs. You can enhance the IDoc with user-defined data or change existing data.

• V56I0001 (Interfaces to external transportation planning systems)

The customer exit is used to modify the delivery header group to a type TPSDLS01 IDoc, that is used for transferring delivery data to an external transportation system.

• V56I0002 (Interfaces to external transportation planning systems)

The customer exit is used to modify the delivery item group to a type TPSDLS01 IDoc.

• V56I0003 (Interfaces to external transportation planning systems) The customer exit is used to modify the packing data group to a type TPSDLSD01 IDoc.

Page 34: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 34

• V56I0004 (Interfaces to external transportation planning systems) The customer exit is used to modify IDoc of type TPSDLS01. It is called at the end of IDoc creation before the IDoc is transmitted.

• V56I0005 (Interfaces to external transportation planning systems)

This customer exit is used to modify the combined transport-relevant delivery items before creation of IDoc TPSDLS. In the standard system, the delivery items are combined first according to relevance for transportation. Then, if a freight code set is available, cumulation is carried out by freight class. After these two steps, the customer exit is called.

• V56I0006 (Interfaces to external transportation planning systems)

You can use this customer exit to replace locations in the delivery using existing shipments in IDOC TPSDLS. Replacement is necessary, for example, when only planning is involved.

• V56I0010 (Interfaces to external transportation planning systems)

This is where you can influence processing of IDoc TPSSHT01 (IDoc content, content of shipment tables, update to database). This IDoc contains the shipments combined or changed by the external transportation planning system.

User exits for billing plan

User exits in program RV60FUS1

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 in program RV60FUS2

USEREXIT_PRICING_PREPARE_TKOMX

This user exit is used to copy or create an additional field in the definitive communication structure for pricing.

Page 35: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 35

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)

User exit in program RV60FUS3

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).

Some Question Answers

Question 1: I didn't assign any credit control area for the payer, why the credit control area is

determined for the sales order?

Answer: Please check steps 1-4 of note 18613. You may have maintained credit control area for

the company code or sales area.

The priority for credit control area determination is->

Page 36: SD– Available User Exits Details

Sales & Distribution – Available User Exits Details

Posted By: Sudipta Sanyal on August 2009 @sdn.sap.com

Page: 36

1. Userexit->if not used

2. XD03->if blank

3. OVFL->if blank

4. OB38

Question 2: Why the sales order is not blocked although I get the information message saying

"*** credit check: credit limit exceeded"?

Answer: Please check the setting in T-code OVA8.

Field "Reaction" and "Status/Block" must be set together.

If not, the sales order won't be blocked even when the credit check failed.

Question 3: What is the proper update group to be set in OB45?

Answer: Default setting for update group is 000012 (delivery-related billing)

Update group 000015 (only S067 will be updated: open delivery and open billing document value.

This update group is relevant if the customer doesn't want sales orders to be relevant for the

update. Do not use this update group with dynamic credit check since S066 is not updated)

Update group 000018 (only S067 will be updated: open delivery value and open billing document

value. This update group is relevant for business processes without a delivery, for example third-

party orders, credit memos...)

Question 4: I have set all the settings for credit check; however the credit value is not updated

correctly, why?

The credit check and the update of the credit values are separate

processes which are also controlled separately by the respective

customizing:

1) credit check is controlled by transactions OVAK and OVA8. Relevant note 18613

2) update of the credit values is controlled by VOV7 or OVA7: "credit acttive" flag. The 'Credit

active' setting only affects the credit

update of the SD credit values (open orders, open delivery and open billing documents). This flag

has no control on the credit check. So

if for an order type, there is no credit check in OVAK and OVA8 but the "credit active" flag is set

for the item category, the order will

update the credit values even if no credit check is performed for the order.

If the flag "credit active" is not set, the system will not update the open credit values. On the other

hand, the system ALWAYS updates the FI

credit value 'Open receivable' when the billing document is transferred to Accounting. So,

although you deactivated the "Credit active" flag in

in OVA7 or VOV7, such an item will increase the 'Open receivables' and thus the credit limit used

when the corresponding billing document is

posted to Accounting.