User exits used in sales and distribution?

i need  some  user exits   that we commonly  used in sd. please if  somebody has  worked on  user exits . and  how  are  they used..
points will be awarded  to all  for replying...
thanks in advance
Neha.

Hi refer below
It is most common that one or other time we need to use this function while configuring multi tasking & complex Prcing Architecture.
Here Iam giving a simple guide to add fields to the Pricing Field Catalogues:
For example you want to use field PSTYV ('Sales document item category') that is included in structure KOMP ('Pricing Communication Item') as a key for a condition table.
When you create a condition table (Transaction V/03), however, the system does not propose the field in the field catalog.
Condition access, field catalog, allowed fields, KOMG, KOMK, KOMP, KOMPAZ, KOMKAZ, PSTYV are the other terms which we need to know about, to add Fields.
Reason and Prerequisites
For technical reasons, field PSTYV was included in structure KOMP, however, not in structure KOMG ('Allowed Fields for Condition Structures').
Proceed as follows:
1. Call up the ABAP Dictionary (Transaction SE11) and create data type ZZPSTYV. Choose PSTYV as a domain.As a short text, you can use, for example, 'ZZ - sales document item category' and as a field label, you can use the field labels of PSTYV.Save, check and activate your entries.
2. Call up structure KOMPAZ in the ABAP Dictionary (Transaction SE11) in the change mode and make the following entry:
Component   Component type
ZZPSTYV     ZZPSTYV
Save, check and activate the change you made.
3. Note:Because of the change in structure KOMPAZ, field ZZPSTYV is now known in structures KOMG and KOMP because structure KOMPAZ is included in both structures.
4. Call up Transaction SPRO. Navigate to 'Sales and Distribution -> Basic Functions -> Pricing -> Pricing Control' and execute 'Define Condition Tables'.
Choose 'Conditions: Allowed fields' and include ZZPSTYV as a new entry.
5. Note:Now you can use field ZZPSTYV as a key field when you create a condition table Axxx.
6. Supply the new field you defined by including the following source code line in USEREXIT_PRICING_PREPARE_TKOMP:
              MOVE xxxx-PSTYV TO TKOMP-ZZPSTYV.
In order processing you find the user exit in Include MV45AFZZ, and in billing document processing you find it in Include RV60AFZZ.
Consider that you can also use this note as a help if you want to use other customer-specific fields as key fields in a condition table.
For header fields, use structure KOMKAZ instead of structure KOMPAZ and USEREXIT_PRICING_PREPARE_TKOMK instead of USEREXIT_PRICING_PREPARE_TKOMP.
For more information, see Transaction SPRO via the path 'Sales and Distribution -> System Modifications -> Create New Fields (Using Condition Technique) -> New Fields for Pricing' and OSS Note 21040.
USEREXIT
  Userxits allow us to add our own functionality to SAP standard program
without  modifying it . These are implemented in the form of subroutines and hence are also known as FORM EXITs. The userexits are generally collected in includes and attached to the standard program by the SAP.
    All Userexits start with the word USEREXIT_...
FORM USEREXIT_..
z..
ENDFORM.
The problem lies in finding the correct userexit and how to find it if one exists for the purpose. Once the correct userexit is found the necessary
customer code is inserted in the customer include starting with the z..
in the form routine.
e.g. USEREXIT_SAVE_DOCUMENT_PREPARE
Certain application like SD still provide this form of enhancement using userexit but this practice is no longer being followed for newer extensions
instead they are using EXITs which come bundeled in enhancement packages . Neverthiless existing USEREXITS will be supported by SAP an all the newer versions of SAP.
HOW TO FIND USEREXITS
  Userexits can be found in number of ways:
1) To find userexits in SD module , goto object navigator(SE80) and select
    development class from the list and enter VMOD in it. All of the userexits in SD are contained in the development class VMOD. Press
enter and you will find all the includes which contain userexits in SD for
different functions like PRICING, ORDER PROCESSING etc. Select the userexit according to the requirement and read the comment inserted in it
and start coding .
Some examples of userexits in SD(SALES & DISTRIBUTION ) are:
1)ADDING OF NEW FIELDS IN PRICING  
In Pricing in SD the fields on the basis of which pricing is done are derived from the FIELD CATALOG which is a structure KOMG .This structure is used to transfer transaction data to the pricing procedure in SD and is also known as communication structure.This structure KOMG consists of two tables KOMK for Header related fields and KOMP for item related fields.
   The fields which are not in either of the two tables KOMK and KOMP
cannot be used in pricing .Sometimes a need arises when the pricing
is to be based on some other criteria which is not present in the form of fields in either of the two tables.
  This problem can be solved by using USEREXITS which are provided for pricing in SD.
  Pricing takes place both when the SALES ORDER ( Transaction VA01) is created as well as when INVOICING ( Transaction VF01) is done.Hence SAP provides 2 userexits ,one for sales order processing which is
USEREXIT_PRICING_PREPARE_TKOMP  or
USEREXIT_PRICING_PREPARE_TKOMK
Depending upon which table (KOMK or KOMP) the new fields were inserted we use either of the above two userexits.These userexits are found in include MV45AFZZ of the standard SAP sales order creation program SAPMV45A.
In the case of userexit which will be called when invoicing is done ,these
are provided in the include RY60AFZZ which is in the standard SAP
program SAPMV45A. The name of the userexits are same. i.e
USEREXIT_PRICING_PREPARE_TKOMP  or
USEREXIT_PRICING_PREPARE_TKOMK
These userexits are used for passing the data from the communication structure to the pricing procedure, for this we have to fill the newely
created field in the communication structure KOMG for this we fill the code in the above userexit using the MOVE statement after the data that
has to be passed is taken from the database table by using the SELECT statement. The actual structure which is visible in these userexits and which is to be filled for that particular field is TKOMP or TKOMK.
Before the coding for these userexits is done ,it is necessary to create a new field in either of the two tables KOMK or KOMP .For this purpose
includes are provided in each of them .
To create the field in header data(KOMK) the include provided is KOMKAZ
and to create the field in item data(KOMP) the include provided is KOMPAZ.
One possible example for the need of creating new fields can be e.g. Frieght to be based upon transportation zone ,for this no field is available in field catalog and hence it can be created in KOMK and then above userexits can be used to fill the transportation data to it.
2)The other method of finding userexit is to find the word USEREXIT in the
associated program of the transaction for which we want to determine userexit using SE38.
3)The other method of finding userexits is to find the include in case of SD/MM applications where the userexits are located ,this can be found in the SAP reference IMG generally in the subfolder under SYSTEM MODIFICATION.
Some other examples of userexits in SD are:
USEREXIT_NUMBER_RANGE
This userexit is used to assign a different internal document number to the
sales order(VA01) when it is created depending on some criteria like a different SALES ORGANIZAION(VKORG) .
USEREXIT_SAVE_DOCUMENT_PREPARE
This userexit is used to insert the ABAP code which will be called when
the document (sales order VA01) is just about to be saved.This userexit is used generally for custom checks on different fields , to display some information before the order will be saved or for making changes to certain fields before the sales order will be saved.
Exits & Enhancements
There are mainly six types of EXITs in sap which have been collected in the form of enhancement packages and attached to standard code in SAP.
These are different from USEREXIT in the way that they are implemented
in the form of FUNCTIONs while in USEREXITS we use form routines for their implementation. These are also sometimes known as function exits .
   These start from the word EXIT_ followed by the program name and then followed by a three digit number.
e.g.  EXIT_SAPMV45A_002
  This exit is found in SD in enhancement V45A0002.
TYPES OF EXITS
1)MENU EXITS
2)FUNCTION EXITS
3)TABLE EXITS
4)SCREEN EXITS
5)KEYWORD EXITS
6)FIELD EXITS
We use SAP transactions CMOD and SMOD to manage exits. Before implementing an exit , it is required to create the project by using CMOD
selecting the enhancement e.g. V45A0002 and selecting the component
(one which fulfills our need) i.e the exit which will be implemented in SMOD and after coding has been done the project has to be activated.
  An exit can be coded only once.
FUNCTION EXITS
  These are used to add functionality through ABAP code . These start from the word EXIT_programname_NNN ending in a 3 digit number. No access code is required to implement any tupe of exit including function exits.
   The function exits are called from the standard SAP program in the form
of ABAP statement
CALL CUSTOMER-FUNCTION 'NNN'
This is in contrast to USEREXITs where PERFORM statement is used to call
the required userexit.
To implement the FUNCTION EXITs first of all the project is created and a suitable enhancement package is selected and from its compnents the function exit to be implemented is selected and on double clicking it the exit code will appear in ABAP EDITOR(se38) where a Z include will be found and the customer code should be entered in this include.
e.g.
ADDING A DEFAULT SOLD-TO-PARTY in Sales Order Creation
    To show a default sold-to-party in this field when the user creates a sales order (VA01) we can use a function exit .This function exit is located
in enhancement no V45A0002 . Before we can choose the exit we have to
create a project in CMOD after that enter V45A0002 in the enhancement field and click on the components . In the components you will see the
exit EXIT_SAPMV45A_002 . This exit is used for our purpose.
  Double clicking on this exit will takes us to function builder (SE37) . This
function exit has one exporting parameters and two importing parameters, we are interested in exporting parameter which is  E_KUNNR
of type KNA1-KUNNR i.e if we move the desired customer name to this
structure(E_KUNNR) it will be shown in the field as the default value when we create the sales order.
This function also contains a customer include ZXVVA04 . This include
will be used to write our custom code .
  Double clicking on this include and it will prompt us that this include does not exists do you want to create this object ,select yes and the include will be created .In this include we can write our own code that will fill the field E_KUNNR.
e.g. E_KUNNR = 301.
Activate the include and Activate the project. Now when ever the SALES ORDER will be created , sold-to-party field will come up with a predefined
customer .
FIELD EXITS
  The field exits are managed,created,activated through program RSMODPRF. The field exit is associated with a data element existing in ABAP dictionary and hence to the screen field using that data element.
  The format of field exit is :
FIELD_EXIT_dataelement_A-Z or 0-9
   If a particular screen and program name is not specified than the field exit will effect all the screens containing that data element.
   The function module associated with field exit shows two parameters
INPUT and OUTPUT.  Input parameter contains the data passed to the field exit when the field exit was invoked by the R/3 , We can write our own code to change the output parameter depending upon our requirements.
    Before the field exit can have any effect the system profile parameter
ABAP/FIELDEXIT in all the application servers should be set to YES
ABAP/FIELDEXIT = YES.

Similar Messages

  • ALE / EDI as used in Sales and Distribution

    Hi All,
    I know the basic difference between ALE and EDI and the commonalities too.
    I just read the info at http://help.sap.com/saphelp_nw04/helpdata/en/6f/1bd5bea85b11d6b28500508b5d5211/content.htm
    With regard to Sales and Distribution
    What I seek now is real world example(s) of where to use ALE / EDI or more importantly
    WHERE NOT TO use ALE / EDI.
    Simply put what would be the ideal candidate (scenarios) for using ALE / EDI or not using them.
    Thanks in advance.

    hi,
    this is to inform you that,
    wwwdotsaptechnicaldotcom
    in this go for tutorials and select ALE/IDOCs
    balajia

  • Reg: User exits used in pa40 and pb10

    Hi Experts,
    I need to find user exit in pa40 and pb10 main program ,where i can capture fields like RCINS (vendor ID) and offid (advertisement ) and need to update applicant details  into my z table.

    Try the one in with +: Both of Tcodes have Same user Exits
    Exit Name           Description
    + HRPBAS01          User Exit for HR Master Data*
    HRPC0001            HR: PC download authorization
    HRRPAI01            User exit for FB HR_ENTRY_DATE and HR_LEAVING_DATE
    PARA0001            Enhancement for Determining the Number of Periods
    PARA0002            Enhancement for Calculating Annual Salary; IT0008,14,15
    + PBAS0001            PA: Pers.Admin./Recruitment: Default values and checks*
    PBAS0002            PA: Enhancements for Personnel Administration - Menu
    PBASRP01            PA: User exit distributed reporting
    PBAS0004            Spanish Data Privacy Law: User Exit for Recording
    Regards
    Shital

  • User Exit for Sales and Distribution

    Hi,
    I am creating some custom segments, Please provide me the include or enhancement name where i need to write the user exit.
    Module: Sales and distribution
    IDOC Type: idoc_output_orders

    Function EXIT_SAPLEINM_002
    Include ZXM06U02
    Enhancement MM06E001
    The last segment in table INT_EDIDD will tell you what was just appended, so use that to determine when to run your code to add the custom segment(s).

  • What does the text used for in Sales and Distribution?

    In Sales and Distribution, we enter the text for customer master, sales order, delivery document, billing document. what is the main purpose of the text? Where can it be displayed?

    Hi Lili,
    For the fallowing purpose you can use the text.
    -->Shipping Instructions
    -->Warrenties
    -->Terms of delivery
    -->Order conformation details
    -->Product ctelogs
    -->Handling details
    -->Packing details
    -->LR no details.
    -->Transaporter details.
    Some data if you want in the output of the sales documents you can maintain in text tab then you can capture that in to output.
    I hope it will help you,
    Regards,
    Murali.
    Edited by: Murali Mohan.Tallapaneni on Jul 7, 2008 6:32 AM

  • Tax Conditions for Sales and Distribution using Jurisdiction Code in Canada

    Hello everyone,
    I would like to share with you a doubt relating taxes for Sales and Distribution in Canada.
    The Tax conditions for Sales and Distribution in Canada are the CTX1 (GST - Canada), CTX2 (PST - Canada) and CTX3 (Base + GST). These are the Tax Conditions which appear when creating a Material or a Client for the Canada Region, and are also the ones included in the Canada Standandard Pricing Procedure.
    I tried to apply the standard method of creating a Master Record for these conditions, but an error relating the Jurisdiction Code came out while releasing to accounting.
    Does anyone one how to procceed? Which are the important issues with Finance Accounting to take in to account?
    I would really appreciate any comment relating this issue.
    Thank you very much in advanced.
    Víctor

    Dear Mr. Lakshmipathi,
    In first place, thank you very much for your quick response.
    I have tried many different procedures to get the aim, and among others, a new access sequence was created to allow the introduction of the Jurisdiction Code (UTXJ is not available for Sales Conditions) but once the Condition is created, it is not recognized when creating the Order ("pricing error: Mandatory condition CTX is missing"). Maybe it has something to do with the fact that these conditions are not included in the Finance Accounting Tax Procedure, where the conditions, which represent the same taxes but with different condition names, are defined for a certain Tax Code and Jurisdiction code.
    Among the different SAP notes for the error relating the Jurisdiction code, there was one proposing to change the Condition Category from "D" (Taxes) to a value between "1 and 4". By doing this a new error appears while creating the order, saying that there are conditions in the Tax procedure (JRC1, JRC2)which are not included in the Sales Pricing procedure. By including this conditions in the Pricing procedure, the Tax Conditions existing in the Finance Accounting Tax Procedure are brought to the Order Conditions, in addition to the Sales Tax Conditions. And there is something more, each Tax Condition from the Finance Accounting Procedure appears twice, one with the application V (Sales) with value zero, and one with application TX (Taxes) with the value existing in the Finance Accounting Taxes Procedure. This is how at the end, the corresponding %value of the taxes is brought to the Invoice with the correct Tax Code, and the proper Jurisdiction Code, which is different for each condition.
    Thank you very much for your time.
    Víctor Liedo

  • User Exit Problem in Sales Order

    Hello All,
    This problem is related to Sales Order.I want the system to forcibly consider another line item and calculate its pricing while saving the sales order at the last moment.
    For Example in the sales order  I am giving 1st Line Item Material A of quantity 10 and Unit of Measurement BT (Bottle).Then when I am pressing the save button I want the User Exit of Material B as 2nd line item to be populated at that very moment which will be forcibly included and pricing will be calculated in that sales order.The user exit should work at this level.
    Now considering the above scenario please suggest solutions in SD / ABAP regarding the successful running of User Exit in the  Sales Order are required to attain my requirement.
    Looking forward to some valuable suggestions.
    Thanks & Regards
    Priyanka

    Hi priyanka,
    though ur requirement is a bit complex i suggest userexits in this kind of scenarios wont help..rather an additonal program needs to be inserted in the standard sales order program..but for ur reference i am sending the list of all the user exits used in price determination. and the requirements fullfilled by them....  .hope it may help u....and cater to ur requirements....
    User Exits For Price Determination
    u2022     USEREXIT_PRICING_PREPARE_TKOMK (module pool SAPLV60A, program 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.
    u2022     USEREXIT_PRICING_PREPARE_TKOMP (module pool SAPLV60A, program 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.
    u2022     USEREXIT_FIELD_MODIFICATION (module pool SAPMV61A, program 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.
    u2022     USEREXIT_FIELD_MODIFIC_KZWI (module pool SAPMV61A, program 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.
    u2022     USEREXIT_FIELD_MODIFIC_KOPF (module pool SAPMV61A, program 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.
    u2022     USEREXIT_FIELD_MODIFIC_LEER (module pool SAPMV61A, program 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.
    u2022     USEREXIT_PRICING_CHECK (module pool SAPMV61, program MV61AFZA)
    You can install additional checks to the standard checks of condition lines (e.g. maximum/minimum value).
    u2022     USEREXIT_PRICING_RULE (module pool SAPLV61A, program RV61AFZA)
    In the standard SAP system, it is predefined which condition categories and classes can be copied or recalculated per pricing type. You can change the predefined standard procedure for each pricing type.
    u2022     USEREXIT_CHANGE_PRICING_RULE (module pool SAPMV61A, program MV61AFZA)
    You can use this user exit to change the pricing type that has been predefined in the copying control table in billing.
    u2022     USEREXIT_XKOMV_BEWERTEN_INIT (module pool SAPLV61A, program RV61AFZB)
    This field is used in the formulas and therefore initialized before the loop for the pricing procedure starts.
    u2022     USEREXIT_XKOMV_BEWERTEN_END (module pool SAPLV61A, program 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.
    u2022     USEREXIT_XKOMV_ERGAENZEN (module pool SAPLV61A, program 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).
    u2022     USEREXIT_XKOMV_ERGAENZEN_MANU (module pool SAPLV61A, program 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.
    u2022     USEREXIT_XKOMV_FUELLEN (module pool SAPLV61A, program 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.
    u2022     USEREXIT_XKOMV_FUELLEN_O_KONP (module pool SAPLV61A, program 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.
    u2022     USEREXIT_PRICING_COPY (module pool SAPLV61A, program RV61AFZA)
    You can change the KONV fields for copied price components.

  • Cin in sales and distribution

    hi,
    can any one tell me the role of CIN in sales and distribution, if possible
    post some material regarding CIN configuration.
    my e-mail id: [email protected]
       thank you.

    Hello Sriram,
    CIN in other words "Country Version India" is basically used for taxation purposes. Every country has its own tax system..........so SAP has come up with its own country versions for taxation like CIN for India.
    <b>The following is the detailed notes on CIN:</b>
    Basically Cin is divided in to two types:
    1. TAXINJ - Is a Routine Based that is used in the condition types. it will work on the logic what ever is there in the Routine.
    2. TAXINN: - Is a condition Record based. Means we have to create condition records for each and every condition type that you are going to use in the Pricing Procedure.
    Since Version 4.7 this TAXINN came into picture and start using this.
    And one of the important point is since 4.6 c CIN comes a separate package. But after introduction of 4.7 Version, CIN is coming the SAP Package itself and even in the Customer Master Record also we will find the CIN Icon.
    Basically 4 types of Pricing Procedures are used in CIN and are as follows:
    1.JDEPOT - Depot Sales
    2.JEXPOR - Export Sales
    3.JFACT - Factory Sales
    4.JSTKTR - Stock Transfer
    Country Version India comes with four pricing procedures as follows:
    • JINFAC (Sales from manufacturing plants)
    • JINEXP (Export sales)
    • JINDEP (Sales from depots)
    • JINSTK (Stock transfers
    CIN:
    IMG > Logistics - General > Tax on Goods Movement > India > Basic Settings >
    Maintain Excise Registrations
    Use
    In this IMG activity, you maintain the data relating to your excise registrations.
    Activities
    enter each of your excise registrations, specifying a four-character code for each
    Excise Registration IDs
    In this activity, you maintain excise registration IDs. You create one ID for each of your business's excise registrations.
    Activities
    For each excise registration in your business create a registration ID, and state:
    • Which taxes the registration covers (additional excise duty, special excise duty, and cess)
    Fields for any taxes that are not covered will be hidden in transactions involving excise duty.
    • The maximum number of items to be printed on each excise invoice
    • Whether you are allowed partial CENVAT credits
    Maintain Registration ID NUMBER, Excise code number, excise registration number
    Excise Registration Number
    A number assigned to each premises or location that has registered as a manufacturer with the excise authorities.
    Every entity with an excise registration number is required to keep its own excise books.
    ECC Number
    Specifies the organization's ECC number.
    Excise Registration Number
    A number assigned to each premises or location that has registered as a manufacturer with the excise authorities.
    Every entity with an excise registration number is required to keep its own excise books.
    Excise range: Specifies the excise range in whose area the excise registration is located.
    Excise Division
    Specifies the excise division in whose area the excise registration is located.
    Excise Collectorate
    The code of the excise collectorate in whose area the excise registration is located.
    Indicator for confirming AED usage
    Additional Excise duty Percentage. These are leviable under the additional duties of excise act. These duties are in addition to basic excise duty and special excise duty.
    Example
    Additional Excise duty is leviable in case of textile products, tobacco and sugar.
    Similarly for SED CESS
    Number of Items in Excise Invoice
    Shows the maximum number of line items that the authorities allow per excise invoice.
    Dependencies
    This information is used when you create an excise invoice in Sales and Distribution (SD) for factory sales and for other movements.
    This information is used to split the transfer postings' items into multiple subcontracting challans.
    Excise register set description
    Description of the excise registers set.
    Partial CENVAT Credit
    Indicates that the excise registration ID is allowed to credit only a portion of its input excise duty to its CENVAT account.
    Dependencies
    When you post a goods receipt, the system splits the input excise duty on the material into its deductible and nondeductible amounts. It posts the deductible duty to the appropriate CENVAT account, and adds the nondeductible duty to the material value.
    This information is also shown when you post the vendor's excise invoice.
    Maintain Company Code Settings
    Use
    In this IMG activity, you maintain the data relating to your company codes.
    Document Type for CENVAT Postings
    It controls, which document type the system uses when making CENVAT postings in Financial Accounting (FI). Here ED is document type for cenvat posting.
    Indicator for providing debit account overwriting
    Debit Account Overwrite Indicator. X - Indicates debit accounts can be overwritten. Use In excise journal voucher transaction. It provides the flexibility to the user to enter the debit account of his choice depending on the nature of transaction.
    Automatic balance Indicator
    Excise year start month
    The calendar month marking the beginning of the excise year
    Use
    this start month represents the month for the start of the excise invoice number range. The month 04 is entered here indicating April of the calendar year as the start month for excise invoices. Any change by the Excise authorities regarding start month should be taken care of by an entry in this field and initialization.
    Excise invoice selection procedure
    Excise invoice selection type. To indicate the method opted by the company for selecting the excise invoice. It can be either earliest or latest invoices that were received.
    Number of excise invoices to be selected
    indicates the number of excise invoices that needs to be selected in the excise invoice selection.
    Days to be considered for excise invoice selection
    Number of days from document date for excise invoice selection.
    Example
    If the value of this field is 20 and today is 28-03-97. The excise
    invoice selection will show the related invoices only for the
    period 08-03-97 to 28-03-97.
    Document type for TDS FI posting
    Financial accounting document type for TDS posting.
    Document type for FI posting on Utilization
    Financial accounting document type for TDS posting.
    Indicator for item level excise duty round off
    This indicator is to be used for deciding whether Item level excise duty amount rounding off is required during procurement cycle. If marked 'X' then the excise duty amount will be rounded off to the nearest rupee at the Purchase order level. This will not round off the CENVAT credit to be taken. If the duty amount is less than one rupee then no rounding is done
    Rounding off of Excise duty for outgoing excise invoice
    You can round off the Excise amount to be paid during an outgoing Excise invoice by marking this indicator as 'X'. The rounding is done at the item level for each item where the amount is greater than 1 Rupee.
    Immediate Credit on Capital Goods
    Instructs the system, when you verify a goods receipt for capital goods, to immediately post half of the input excise duty to the appropriate CENVAT accounts.
    The rest is posted the CENVAT on hold account, for use in the following year.
    CVD Clearing Account
    Specifies which G/L account the system credits when you take a CENVAT credit on countervailing duty in the Incoming Excise Invoices transaction.
    Exchange rate type
    Key representing a type of exchange rate in the system.
    Use
    You enter the exchange rate type to store different exchange rates.
    Example
    You can use the exchange rate type to define a buying rate, selling rate, or average rate for translating foreign currency amounts. You can use the average rate for the currency translation, and the bank buying and selling rates for valuation of foreign currency amounts.
    Exchange rate type to be used for Export excise duty converts
    When you are creating an Excise invoice for export sales then the exchange rate for duty calculation will be picked up using this Exchange rate type.
    Maintain Plant Settings
    Use
    In this IMG activity, you maintain excise information relating to your plants.
    Plant Settings
    In this activity, you maintain excise information relating to your plants.
    Activities
    For each plant:
    • Specify whether it is a manufacturing site or a depot.
    • Assign it an excise registration ID.
    You can assign the same ID to more than one plant, if required.
    Depot
    indicates that the plant in question is a depot.
    Dependencies
    Depots are required to prepare register RG 23D, and follow different procedures for goods receipt and invoice generation.
    Number of goods receipt per excise invoice.
    Multiple GR for one excise invoice, Single credit
    Multiple GR for one excise invoice, multiple credits
    Maintain Excise Groups
    Use
    In this IMG activity, you define your excise groups. For each excise group, you can also control how various excise invoice transactions will work.
    Excise Groups
    In this activity, you define excise groups. An excise group allows you to maintain a separate set of excise registers and excise accounts. The RG 23A, RG 23C and PLA serial numbers are created for an excise group.
    Recommendation
    Under normal circumstances, excise authorities require every business to maintain only one set of excise registers and one set of accounts. But through exemption from the authorities, multiple books can be maintained.
    If your company has only one set of excise registers, then you need to maintain only one excise group.
    Activities
    1. Create one excise group for each set of registers that you need to keep.
    1. Assign the excise groups to plants.
    2. Maintain whether this Excise group is for a depot or not.
    3. If you receive only one consignment for an Excise challan then you can leave GR's per EI as blank. If you receive multiple GR's for a given Excise challan and would like to avail multiple credit mark the GRs per EI as 'Multiple GR's for one excise invoice, multiple credit'. Alternatively if you want to avail the credit only after all the goods receipts have been made mark it as ' Multiple GR for one excise invoice, single credit'.
    4. If you want to automatically create Excise invoice during Sales cycle at the time of billing the tick the indicator 'Create EI'
    5. During depot sales if you do not want to do RG23D selection and posting separately and would like to complete RG23D selection in one step mark the indicator 'RG23D Auto post'. This will post the selected records into RG23D automatically. You cannot cancel the selection later.
    6. If the indicator 'Default GR qty' is marked system will default the Excise challan quantity on to the Goods receipt if the Excise invoice number is given in the pop-up.
    7. If the indicator 'Folio no creates' is marked system will generate Folio numbers for RG23D during receipt of excise invoice into depot.
    8. 'Automatic posting' when ticked will post the Excise invoice other movements automatically along with creation in single step.
    9. 'Create Part1 for Block Stock' when marked will create a Part1 during the receipt of material into Blocked stock.
    10. 'Create Part1 for STO' when marked will create a Part1 during the receipt of material through inter plant transfers.
    11. 'Create Part1 for consumption stock' when marked will create a Part1 during the receipt of material into consumption stock.
    Excise Group
    Governs which set of excise registers a business transaction will be included in.
    Following is the relation between excise group, plant and registration.
    Dependencies
    In define excise groups in Customizing.
    Then, in transactions involving excise duty, for example, when you post a vendor's excise invoice, you specify which excise group you are using. This information tells the system which G/L accounts to post the excise to.
    At the end of the period, when you come to prepare your excise registers, you create different sets for each excise group.
    Indicates that the plant in question is a depot.
    Dependencies
    Depots are required to prepare register RG 23D, and follow different procedures for goods receipt and invoice generation.
    GR Per Excise Invoice
    Multiple GR for one excise invoice , Multiple credit
    Multiple GR for one excise invoice , Single Credit
    Create Excise Invoice Automatically
    Instructs the system to automatically create a Sales and Distribution (SD) excise invoice immediately you create a commercial invoice or a pro forma invoice.
    The excise invoice is created in the background.
    Dependencies
    If you want to make use of this function, you must also define the default plant, excise group, and series groups in Customizing for Sales and Distribution (SD), by choosing Excise Group - Series Group Determination.
    RG23D Sales Creation and posting option
    RG23D Automatic Option if selected will create Depot excise invoice by posting the selection of excise invoices in single step.
    If this is not selected then you need to separately do RG23D selection followed by PGI and then RG23D verification and posting.
    If you need automatic posting of RG23D selection then the Post Goods Issue should have been completed before running RG23D selection.
    Default excise qty in GR
    If this indicator is ticked then while doing Goods Receipt using 'MB01' system will default the excise invoice quantity on to the Goods receipt document.
    Folio number for depo
    Posting
    If this indicator is marked then while creating Excise invoice for other movements system automatically does the Verify and Post. You need not separately Post the excise invoice
    Also we can set indicator for creation of part 1 for:
    Blocked stock
    Stock transport order
    Consignment stock
    Maintain Series Groups
    Use
    In this IMG activity, you define the different excise series groups within your company. Series groups allow you to maintain multiple number ranges for the outgoing excise documents.
    Based on excise regulations and exemptions from the authorities you can maintain multiple number series for outgoing documents. But each of these series has to be declared to the excise authorities.
    Activities
    • Define excise series groups based on type of outgoing document
    • Assign series group to excise registration ID
    • If no financial postings are required for an Excise invoice in this seris group then you tick the 'No utilization' indicator.
    • If the CENVAT has to be paid immediately and you need not wait for the Fort nightly payment then mark the 'Immediate Utilization' indicator.
    Example
    You could define two series groups, group 001 for excise invoices, and group 002 for 57 F4 documents.
    No account postings for CENVAT in sales cycle
    No utilization Flag
    If you do not need any CENVAT utilization for an excise invoice but would like to just generate an excise invoice then you need to mark this indicator.
    IF the flag is checked then system will create an Excise invoice in the given Series group but there will not be any account postings or Part2 postings.
    Immediate Utilization of CENVAT
    Specifies that when you create an excise invoice, the system immediately pays the amount from CENVAT and creates the Part II entry. Such invoices will not be listed for fortnightly utilization.
    If you have both fortnightly and immediate utilization for the same excise group, the account determination within CIN IMG should point to the ED interim account.
    Account determination for immediate payment will be done exactly the same as being done for fortnightly utilization program.
    Maintain Excise Duty Indicators
    Use
    In this IMG activity, you maintain the excise duty indicators.
    IMG > Logistics - General > Tax On Goods Movement > India > Basic Settings > Determination of Excise Duty >
    Select Tax Calculation Procedure
    Use
    In this IMG activity, you specify which tax procedure you want to use for determining excise duties and sales taxes on input materials in India.
    • If you use condition-based excise determination, use a copy of the tax procedure TAXINN.
    • If you use formula-based excise determination, use a copy of the tax procedure TAXINJ.
    This tax procedure also supports condition-based excise determination, so that you can work with both concurrently.
    We strongly recommend that new customers use condition-based excise determination. Note that once you have started using a tax procedure, you cannot switch to another one, otherwise you will not be able to display old documents.
    Maintain Excise Defaults
    Use
    In this IMG activity, you define which tax procedure and pricing condition types are used in calculating excise taxes using formula-based excise determination.
    Activities
    If you use condition-based excise determination, fill out the CVD cond. field and leave all the others blank.
    If you use formula-based excise determination, fill out all of the fields as follows:
    • Enter the tax procedure and the pricing conditions that are relevant for excise tax processing.
    • Specify the purchasing and sales conditions types used for basic excise duty, additional excise duty, special excise duty, and cess.
    • Specify the conditions in the sales order that are used for excise rates.
    • Specify the countervailing duty condition type used for import purchase orders.
    See also
    SAP Library -> Logistics -> Country Versions -> Asia-Pacific -> India -> Materials Management (MM) -> Condition-Based Excise Determination and -> Formula-Based Excise Determination.
    IMG > Logistics - General > Tax On Goods Movement > India > Basic Settings > Determination of Excise Duty >
    Condition-Based Excise Determination
    Use
    When you enter a purchasing document, for example, a purchase order, the R/3 System automatically calculates the applicable excise duties using the condition technique.
    Features
    The standard system comes with two tax calculation procedures. TAXINN is only supports condition-based excise determination, whereas TAXINJ supports condition-based excise determination and formula-based excise determination. Both tax procedures contain condition types that cover all of the excise duties and sales taxes applicable.
    Since the exact rates of excise duty can vary on a large number of factors, such as which vendor you purchase a material from, or which chapter ID the vendor stocks the material under, you create condition records for every sort of excise duty.
    When you come to enter a purchasing document, the system applies the excise duty at the rates you have entered in the condition records.
    Activities
    Customizing
    India&#61614;Make for Logistics – General, by choosing Taxes on Goods&#61614;the settings in Customizing Basic Excise Duties Using&#61614; Condition Technique and …&#61614;Movements Account Settings Determination.
    These activities include one activity where you define a tax code for condition-based excise determination.
    Master Data
    Create condition records for all excise duties that apply, and enter the tax code for condition-based excise determination in each.
    Day-to-Day Activities
    When you enter a purchase order or other purchasing document, enter the tax code for condition-based excise determination in each line item. The system then calculates the excise duties using the condition records you have created.
    When the ordered materials arrive, you post the goods receipt and the excise invoice. The system posts the excise duty to the appropriate accounts for deductible input taxes when you enter the excise invoice.
    Creating Condition Records for Excise Duty
    1. In the command field, enter FV11 and choose .
    2. Enter the condition type that you want to create a condition record for and choose .
    The Key Combination dialog box appears.
    3. Select the combination of objects that you want to create the condition record for.
    On the dialog box, Control Code means "chapter ID."
    So, for example, to create a condition record for a tax that applies to a combination of country, plant, and chapter ID, select Country/Plant/Control Code.
    4. Choose.
    5. Enter data as required.
    In the Tax Code field, enter the dummy tax code that you have defined.
    6. Save the condition record.
    Formula-Based Excise Determination
    Use
    When you execute a business transaction involving materials that are subject to excise duty, the system automatically calculates the duty for you.
    Prerequisites
    In order for the system to be able to determine which rate of excise duty to apply, you must have maintained all the data on the Maintenance screen, which you can Master&#61614;Excise Rate access from the SAP Easy Access screen by choosing Indirect Taxes Excise Rate Maintenance.&#61614;Data
    You maintain the following types of data:
    • Plant master data
    You assign each of your plants an excise duty indicator. You can use the same indicator for all the plants with the same excise status from a legal point of view, such as all those that are in an exempt zone.
    See also the information about manufacturers that are only entitled to deduct a certain portion of the duty (see Partial CENVAT Credit).
    • Vendor master data
    For each of your vendors with the same excise status from a legal perspective, you define an excise duty indicator. You must also specify the vendor type – for example, whether the vendor is a manufacturer, a depot, or a first-stage dealer. You must also stipulate if the vendor qualifies as a small-scale industry.
    For each permutation of plant indicator and vendor indicator, you then create a final excise duty indicator.
    • Customer master data
    similarly, you assign the same excise duty indicator to each of your customers that share the same legal excise status.
    Again, for each permutation of plant indicator and customer indicator, you then create a final excise duty indicator.
    • Material master data
    each material is assigned a chapter ID.
    • Excise tax rate
    For every chapter ID and final excise duty indicator, you maintain the rate of excise duty.
    If your business only qualifies for partial CENVAT credit, you must customize your system accordingly.
    Activities
    Let us consider an example to illustrate how the system determines which rate of excise duty to apply to a material. Assume you are posting a sale of ball bearings to a customer. The system automatically determines the rate of excise duty as follows:
    1. Looks up the customer master data to see what status you have assigned the customer.
    Let's assume you've assigned the customer status 3.
    2. Looks up the plant master data to see what status you have assigned the plant.
    Similarly, your plant has status 2.
    3. The system looks up the table under Excise Indicator for Plant and Customer to see what the final excise duty indictor is for customer status 3 and plant status 2: It is 7.
    4. The system determines the chapter ID of the ball bearing for the plant.
    Let’s assume the chapter ID at plant for the ball bearings is 1000.01.
    5. Finally, the system looks up the table under Excise Tax Rate to see what rate of duty applies to chapter ID 1000.01 under status 7.
    Define Tax Code for Purchasing Documents
    Use : In this IMG activity, you define a tax code for the purposes of calculating excise duty when you enter purchasing documents.
    Only carry out this activity if you use condition-based excise determination.
    Activities: Create a new tax code, and set the tax code type to V (input tax). Do not make any other settings for it.
    Assign Tax Code to Company Codes
    Use
    In this IMG activity, assign the tax code for purchasing documents to the company codes where it will be used.
    Only carry out this activity if you use condition-based excise determination.
    Classify Condition Types
    Use
    In this IMG activity, you specify which condition types you use for which sort of tax. Note that this only applies to condition types that you use with the new excise determination method.
    The system uses this information when you create a document from another one. For example, when you enter an incoming excise invoice from a purchase order, or when you create an outgoing excise invoice from a sales order, the system determines the various excise duties in the excise invoice using the information that you have entered here.
    In addition, when you create a purchasing document, the system only uses the condition types that you enter here.
    • For taxes on purchases, use the condition types contained in the tax procedure.
    • For taxes on sales, use the condition types contained in the pricing procedures.
    Standard settings
    The standard system comes with sample settings for the tax calculation procedures and pricing procedures.
    Use these settings as a basis for your own.
    IMG > Logistics - General > Tax On Goods Movement > India > Account Determination
    Define G/L Accounts for Taxes
    Use
    In this IMG activity, you specify which G/L accounts you will use to record which taxes.
    Requirements
    You have set up G/L accounts for each of the processing keys listed below.
    Activities
    Assign an account to each of the following posting keys. The accounts for VS1, VS2, and VS3 are used as clearing accounts during excise invoice verification.
    • VS1 (basic excise duty)
    • VS2 (additional excise duty)
    • VS3 (special excise duty)
    • VS5 (sales tax setoff)
    • MWS (central sales tax)
    • MW3 (local sales tax)
    • ESA (service tax)
    • ESE (service tax expense)
    Specify Excise Accounts per Excise Transaction
    Use
    In this IMG activity, you specify which excise accounts (for excise duty and CENVAT) are to be posted to for the various transaction types. Enter all the accounts that are affected by each transaction type.
    If you use subtransaction types, enter the accounts for each subtransaction type as well.
    Activities
    Transaction type UTLZ is used for determining accounts only while posting excise JVs and also if the payment of excise duty has to be done fortnightly.
    The fortnightly CENVAT payment utility picks up the credit side accounts from the transaction types of GRPO, EWPO, and TR6C for determining the CENVAT and PLA accounts. There is no separate transaction type for fortnightly payment.
    Example
    Excise TT DC ind Account name
    GRPO CR CENVAT clearing account
    GRPO CR RG 23 BED account
    GRPO DR CENVAT on hld account
    Specify G/L Accounts per Excise Transaction
    Use
    In this IMG activity, you assign the excise and CENVAT accounts to G/L accounts.
    When you come to execute the various transactions, the system determines which G/L accounts to post to by looking at the:
    • Excise group
    • Company code
    • Chart of accounts
    Furthermore, if you want separate account determination settings within an excise group, you can also use sub transaction types.
    Requirements
    You have already:
    • Defined the G/L accounts
    • Defined the excise groups
    • Maintained the transaction accounts
    Activities
    For each excise group, assign the excise and CENVAT accounts to G/L accounts. For most businesses, one set of accounts will suffice for alltransactions.
    Note
    You need not remit the CENVAT to the excise department immediately, so maintain the credit account for transaction type DLFC as an excise duty interim account. This will be set off when you remit the duty.
    Config setting needed to be done in order to get the Excise Details Screen in Material Master.
    Even though this functionality is available in enterprise version, a small config step has to be made in Screen Sequences for Material Master.
    Following document helps you to do this configuration.
    Logistics General&#61664; 1. Go to IMG Define Structure of&#61664; Data Screen&#61664;Material Master Configuring the Material master Screen Sequence.&#61664; for each
    2. Select your screen sequence. Usually it would be 21. Select the same and click on Data Screen in the left frame.
    3. Once the data screens are exhibited, select data screen no. 15, ie. SSq. 21and Scrn 15, which is “Foreign Trade: Import Data”. Select the same and click on Subscreens in the left frame.
    4. Go to the last sub screen i.e. 21-15-6 - SAPLMGD1- 0001 and select the same. Click on tab view subscreen and ensure that the subscreen is blank.
    5. Now in the last sub screen i.e. no.6 you delete SAPLMGD1 – 0001 and instead add SAPLJ1I_MATERIAL_MASTER and in the screen no. 2205.
    6. Save the setting.
    7. Create a Material Master and check whether in Screen Foreign Trade – Import, Excise related subscreen appears.
    MASTER MAINTENANACE.:
    Transaction Code : J1ID
    1. Chapter id – Description Master : - Excise chapter id and description as per law will be maintained in this master. With out maintaining the chapter id in this master we can not proceed to other masters. Maintain the chapter id in format xxxx.xx
    2. Material / Chapter id combination :- Excisable materials with chapter id details for a plant is maintained in this master. In case of Raw and Packaging materials we will be maintaining for branch plant only. But in case of FG even CPs details will be maintained. If the material is a base material used for subcontracting then give a ‘tick’ in the check box in the coloumn subcontr’s. Choose relevant material type from drop down menu. In the coloumn GR-xref, select Multiple GR for one Excise invoice-Multiple credit from the drop down menu. Enter ‘1’ in the declared coloumn. With out this value in this coloumn the material will not be subjected to excise procedures.
    3. Material assessable Value:- In this master, plant wise (including CP plants) assessable values for FG are to be maintained. MRP per CBB and per ATC will be enetred in Net dealer price coloumn. Assessable value per CBB and per ATC will be given in Assessable value coloumn with effective date in the valid from coloumn. Since it is not possible to maintain differential MRP for the same SKU in this master, the MRP and Assessable value details for despatches from branch plant will be maintained in SD module. In this case we should not maintain the details in this master for branch SKUs and details will be maintained only for CPs.
    4. CENVAT determination :- Plant wise MODVAT input materials will be listed in this master with one of the FG as the out put material. This master will be maintained for branch plants only. If the input material is not maintained in this master MODVAT credit can not be availed.
    5. Vendor Excise details: - Vendor Excise details such as ECC no, reg no, Exc.range, Exc.div, Exc.coll, CST, LST nos, PAN no will be maintained for all Excisable materials vendors. In the coloumn Exc.ind.ve enter ‘1’. With out this value in this coloumn the MODVAT procedure will not take place. We are not maintaining SSI status in this master.
    6. Customer Excise details:- For such of those customers for whom invoices are to be raised from branch plant details are to be maintained in this master. The excise details can be blank for customers bur CST and LST no are to be entered. In the coloumn Exc.Ind.Cus. Enter ‘1’. With out this value in this coloumn, Excise invoice will not be generated for the customer.
    7. SSI rate: - We will not be maintaining this master. At the time of capturing the MODVAT details we can enter actual duty details as per the Excise invoice received from the Vendor.
    8. Excise indicator for Plant:- Excise details such as ECC no, Range etc. for the branch plant will be maintained here. In the coloumn Exc.ind.co maintain a value’1’
    9. Excise indicator for plant and vendor and Excise indicator for plant and customer: - Initial Configuration masters need not be maintained by users.
    10. Excise tax rate: - Chapter id and tax rates combination is maintained in this master. In the ExcInd coloumn enter’1’.
    11. Cess rate:- Cess rate if applicable will be maintained in this master.
    12. Exceptional material excise rates:- If differential excise rates are applicable for a material falling under same chapter id , this master will be maintained.
    13. Quantity based AED & SED: - If applicable the details will be maintained here.
    Some of the check points pertaining to Masters.
    • For raw materials, the assessable value will be picked up from PO.
    • For FG, the assessable values only for CPs are to be maintained in this master.
    • Excise indicator in Vendor / Customer excise details is mandatory.
    • Chapter ID, material Chapter ID and Excise tax rates - should contain all the relevant tax details.
    • CENVAT determination correlates the raw material to finished goods. All new materials are to be added without fail.
    • Material Chapter ID - for conversion activity (only base matl.) sub-contracting indicator has to be checked.
    • Material Chapter ID- excise indicator is to be ‘ticked’.
    • For removals from branch plant (raw material/finished goods), CST/LST numbers have to be given in the customer masters, which is used in Excise invoice printing
    Path is : IMG - Logistics General - Tax on goods movement - India
    http://help.sap.com/saphelp_47x200/helpdata/en/5a/d34a9f544811d1895e0000e8323c4f/frameset.htm
    <b>Reward if helps</b>
    Regards,
    Sai

  • User exit for tcode ME21N and ME22N

    Hi everyone
    Can anybody tell me the user exits found in the tcodes ME21N nad ME22N, when saving a PO?
    Regards
    Anjali

    AMPL0001            User subscreen for additional data on AMPL
    LMEDR001            Enhancements to print program
    LMELA002            Adopt batch no. from shipping notification when posting a GR
    LMELA010            Inbound shipping notification: Transfer item data from IDOC
    LMEQR001            User exit for source determination
    LMEXF001            Conditions in Purchasing Documents Without Invoice Receipt
    LWSUS001            Individual customer source determination in Retail
    M06B0001            Role determination for purchase requisition release
    M06B0002            Changes to comm. structure for purchase requisition release
    M06B0003            Number range and document number
    M06B0004            Number range and document number
    M06B0005            Changes to comm. structure for overall release of requisn.
    M06E0004            Changes to communication structure for release purch. doc.
    M06E0005            Role determination for release of purchasing documents
    ME590001            Grouping of requsitions for PO split in ME59
    MEETA001            Define schedule line type (backlog, immed. req., preview)
    MEFLD004            Determine earliest delivery date f. check w. GR (only PO)
    MELAB001            Gen. forecast delivery schedules: Transfer schedule implem.
    MEVME001            WE default quantity calc. and over/ underdelivery tolerance
    MM06E001            User exits for EDI inbound and outbound purchasing documents
    MM06E003            Number range and document number
    MM06E004            Control import data screens in purchase order
    MM06E005            Customer fields in purchasing document
    MM06E007            Change document for requisitions upon conversion into PO
    MM06E008            Monitoring of contr. target value in case of release orders
    MM06E009            Relevant texts for "Texts exist" indicator
    MM06E010            Field selection for vendor address
    MMAL0001            ALE source list distribution: Outbound processing
    MMAL0002            ALE source list distribution: Inbound processing
    MMAL0003            ALE purcasing info record distribution: Outbound processing
    MMAL0004            ALE purchasing info record distribution: Inbound processing
    MMDA0001            Default delivery addresses
    MMFAB001            User exit for generation of release order
    MRFLB001            Control Items for Contract Release Order
    MEQUERY1            Enhancement to Document Overview ME21N/ME51N
    MM06E011            Activate PReq Block
    LMEKO001            Extend communications structure KOMK for pricing
    LMEKO002            Extend communications structure KOMP for pricing
    If useful reward.
    Vasanth

  • User exit for changing Sales order lines.

    Hello experts ,
    I want to delete the field "ROUTE" from all of the orders lines in sales orders, I have been using "USEREXIT_SAVE_DOCUMENT_PREPARE"  but it does not seems to do the job.
    What is the name of  user exit that i have to use for this task and which structure should be used,  is it xvbap ? is it vbap ?
    Thanks for the help.
    Avi.

    Hi,
    find the user exit u required.
    This IMG step describes additional installation-specific processing in sales document processing. In particular, the required INCLUDES and user exits are described.
    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
    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.
    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
    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.
    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).
    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)
    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
    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.
    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
    Best regards,
    venkatawamy.y

  • User Exit in the Sales order create BAPI

    Hi,
    Can some one help me in telling if there exists a user exit for the BAPI '/AFS/BAPI_SALESORDER_CREATE'.
    This is urgent. So, pls. throw some light on this.
    Thanks in advance.

    Hi
    User Exits In Sales Document Processing
    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
    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.
    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
    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.
    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).
    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)
    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
    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.
    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.

  • User-Exit for changing Sales Document Number - Urgent

    Hi Experts ,
                     Please suggest me the <b>User Exit for changing Sales Document Number.</b>
    thanks,
    Jayesh<b></b>

    hi jayesh,
    chech this exit-----EXIT_SAPFV45S_002.
    this exit's description says " Change Sales Document Using Configuration".
    Other available exits are
    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
    Enter these exits name in SMOD transaction and select components. u can find all the user exits available for this exit name.
    Reward me if useful..........
    Harimanjesh AN

  • How to find out the 'z' user exit used in a Particular Transaction

    Hi,
    I have requirement to analyse all the user exits used in a transaction say 'VA01' . How can i find the user exits in a VA01 transaction. Can anyone suggest how to find the User exits
    Thanks in Anticipation.
    With Best Regards
    mamatha

    you can execute the following program , give the transaction name and execute
    *& Report  YCHATEST                                                    *
    REPORT z_find_userexit NO STANDARD PAGE HEADING.
    *&  Enter the transaction code that you want to search through in order
    *&  to find which Standard SAP User Exits exists.
    *& Tables
    TABLES : tstc,     "SAP Transaction Codes
             tadir,    "Directory of Repository Objects
             modsapt,  "SAP Enhancements - Short Texts
             modact,   "Modifications
             trdir,    "System table TRDIR
             tfdir,    "Function Module
             enlfdir,  "Additional Attributes for Function Modules
             tstct.    "Transaction Code Texts
    *& Variables
    DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
    DATA : field1(30).
    DATA : v_devclass LIKE tadir-devclass.
    *& Selection Screen Parameters
    SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
    SELECTION-SCREEN SKIP.
    PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN END OF BLOCK a01.
    *& Start of main program
    START-OF-SELECTION.
    * Validate Transaction Code
      SELECT SINGLE * FROM tstc
        WHERE tcode EQ p_tcode.
    * Find Repository Objects for transaction code
      IF sy-subrc EQ 0.
        SELECT SINGLE * FROM tadir
           WHERE pgmid    = 'R3TR'
             AND object   = 'PROG'
             AND obj_name = tstc-pgmna.
        MOVE : tadir-devclass TO v_devclass.
        IF sy-subrc NE 0.
          SELECT SINGLE * FROM trdir
             WHERE name = tstc-pgmna.
          IF trdir-subc EQ 'F'.
            SELECT SINGLE * FROM tfdir
              WHERE pname = tstc-pgmna.
            SELECT SINGLE * FROM enlfdir
              WHERE funcname = tfdir-funcname.
            SELECT SINGLE * FROM tadir
              WHERE pgmid    = 'R3TR'
                AND object   = 'FUGR'
                AND obj_name = enlfdir-area.
            MOVE : tadir-devclass TO v_devclass.
          ENDIF.
        ENDIF.
    * Find SAP Modifactions
        SELECT * FROM tadir
          INTO TABLE jtab
          WHERE pgmid    = 'R3TR'
            AND object   = 'SMOD'
            AND devclass = v_devclass.
        SELECT SINGLE * FROM tstct
          WHERE sprsl EQ sy-langu
            AND tcode EQ p_tcode.
        FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
        WRITE:/(19) 'Transaction Code - ',
        20(20) p_tcode,
        45(50) tstct-ttext.
        SKIP.
        IF NOT jtab[] IS INITIAL.
          WRITE:/(95) sy-uline.
          FORMAT COLOR COL_HEADING INTENSIFIED ON.
          WRITE:/1 sy-vline,
          2 'Exit Name',
          21 sy-vline ,
          22 'Description',
          95 sy-vline.
          WRITE:/(95) sy-uline.
          LOOP AT jtab.
            SELECT SINGLE * FROM modsapt
            WHERE sprsl = sy-langu AND
            name = jtab-obj_name.
            FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
            WRITE:/1 sy-vline,
            2 jtab-obj_name HOTSPOT ON,
            21 sy-vline ,
            22 modsapt-modtext,
            95 sy-vline.
          ENDLOOP.
          WRITE:/(95) sy-uline.
          DESCRIBE TABLE jtab.
          SKIP.
          FORMAT COLOR COL_TOTAL INTENSIFIED ON.
          WRITE:/ 'No of Exits:' , sy-tfill.
        ELSE.
          FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
          WRITE:/(95) 'No User Exit exists'.
        ENDIF.
      ELSE.
        FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
        WRITE:/(95) 'Transaction Code Does Not Exist'.
      ENDIF.
    * Take the user to SMOD for the Exit that was selected.
    AT LINE-SELECTION.
      GET CURSOR FIELD field1.
      CHECK field1(4) EQ 'JTAB'.
      SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
      CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.

  • Regarding sales and  distribution

    how to create condition type with reference to an existing condition type

    Hi,
    To define Custom Z routine in Sales and Distribution module please follow the following steps.
    o Transaction Code - VOFM (Maintain: Requirements and Formulas)
    o Menu Path - Formulas --> Condition value.
    o Go to bottom of the table control,
    o Enter the routine number for Ex. 900 and some meaningful description,
    o It will ask the Access key, enter the available access key. Now ABAP editor will be opened, you can switch off Modification Assistant from Menu EDIT &#56256;&#56518; Modification operation &#56256;&#56518; Switch off Assistant.
    o In custom routine we can use KOMP structure, where we can get the pricing value,
    o To access the whole condition record, we can use structure XKOMV. But to access this XKOMV structure we have to define one internal table of type ‘INDEXED_KOMV’ and pass the structure XKOMV value to the new defined internal table.
    o Depending upon the requirement you can refer KOMP or XKOMV structure in your code.
    o The calculated result we have to pass to XWERT field, which will be display to the condition record.
    o To activate the subroutine we have to first save the code and come out from the routine. In Maintain: Formulas Condition value screen, select routine to activate and select Edit menu &#56256;&#56518; Activate.
    o After activating the custom routine, functional person will attach this custom routine to the condition type of the pricing procedure at AltCty column.
    o Function person can define one field at Subto column for condition type, which we can use in our custom routine.
    o For ex. We require to calculate the % discount depending upon the two condition type. To get the condition value for the both the condition type we have to select one field at Subto column. There are two types of fields, one is ‘Copy value to’ and another one is ‘Carry over value to’. One store the condition value whereas second store Condition rate. Depending upon the requirement we can select the field type. Before using the Subto field please make sure that it is not referring to other condition type.
    o To calculate the % you have to divide or multiply by 10000 not by 100 due to SAP current type.
    This is an example of a code sample:
    DATA: WORKFIELD(16) TYPE P DECIMALS 2.
    CHECK KOMP-KZWI1 NE 0.
    IF XWORKJ NE 0.
    WORKFIELD = ( KOMP-KZWI1 - XWORKJ ) * 10000 / KOMP-KZWI1.
    XKWERT = WORKFIELD.
    ELSE.
    XKWERT = 0.
    ENDIF.
    Regards,
    Gaurav

  • User exit to change sales order status once a delivery is created

    Hello Experts,
    I want to update the Overall status(VBSTT-GBSTA_BEZ) of a sales order to completed once a delivery is created for that order.Please guide me how can i do this and also the user exit or badi where i can write the code for this.
    Thanks in advance.
    Regards,
    Koustubh

    Got the complet guidance in new thread.
    User Exit to update Sales order text (Terms of delivery) on saving it
    Thanks

Maybe you are looking for

  • Regarding free goods issue scenario

    Hi all, I am working on free goods scenario . I have done all configuration steps as mentioned below maintain condition type  maintain pricing procedure Activate free goods determination Q.Now here i have one question, apart from above configuration

  • Premiere Pro CC 2014 Startup Crash "Quit Unexpectedly"

    This morning, I take a look at Creative Cloud and there was 2 updates called "Adobe Premiere Pro CC 2014" and "Adobe Photoshop CC 2014". So, I figured, "Sure. Why not?" I updated them. So far, Photoshop still works. After Effects works too. But when

  • Help in regarding alert log error...referring to standby

    Database: Single Instance, 10.2.0.3 OS: Redhat Linux 5 I checkd on my standby if logs are applied or not by the following command. SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#; The result is "YES" for all corresponding logs. B

  • Transaction Code SPROXY

    Can any one please differentiate the use of Transaction Code SPROXY in R/3 and SPROXY in XI? We have been using Transaction SPROXY in R/3 to Create and Generate PROXIES. We never used SPROXY in XI. Your reply will really help me to understand the sub

  • HT5409 AVCHD/MTS Files stored in quicktime container since Mountain Lion

    How can i open the clips stored in the quicktime container with a 3rd party software of voltaic. i am not happy with the quality of the quicktime converts.