Professional Documents
Culture Documents
2. Backorder processing: processing of a sales order that has not been fully confirmed or
not confirmed at a certain delivery date.
3. Rescheduling: is a proposal of how confirmed quantities already assigned to a sales
order can be reassigned to other sales orders that have a higher priority.
4. Available to promise (ATP): is a process of checking the available quantities of a
material. The ATP quantity consists of warehouse stock + planned receipts (incoming
stock) planned issues (outgoing stock). to examine stock on hand (CO09) proceed to
logistics sales & distribution sales environment availability overview.
5. Replenishment lead time (RLT): is the time taken for the material to become available
either internally (in house production) or externally (from a vendor). The most important
things to consider during an external procurement are purchasing and MRP2
(procurement) views of MMR where the processing time for purchasing, planned delivery
time and goods receipt processing time are taken into account. On the other hand
internal procurement is based on in house production time (MRP 2 view) goods receipt
processing time or alternatively RLT time, which is found on MRP 3 view.
6. RLT (Replenishment Lead Time) is the time taken for the material to become
available. RLT is only used when doing an ATP check (Available To Promise). The value of
RLT for a material is specified on material master record.
7. There are three types of availability checks
* Check on basis of ATP quantities.
* Check against product allocation.
* Check against planning.
1. The checking group + checking rule determine how the availability check is to be
performed.
2. The checking group determines whether and how the system checks the stock
availability and generates requirements for material planning. The checking group
defines what type of requirements will be passed on i.e. summarized requirements
(daily/weekly) or individual requirements for each sales order.
3. The checking rule applies to how the availability check is to be carried out at the
transaction level. Note that you must define checking rules for each individual
application such as for production orders for example. In Sales and Distribution, the
checking rule is specified internally within the system and cannot be changed.
4. The checking rule, in conjunction with the checking group, determines the scope of
the availability check for every business operation; that is, which stocks, receipts and
issues are to be included in the availability check and whether the check is to be carried
out with or without the replenishment lead time.
5. Briefly explaining the above checking group determines which type of requirement
to be passed on to MRP whether it be individual or summarized and checking rule which
is at the transaction level and can be configured independently for each application
module, determines which stocks, receipts and issues to be taken into account. For
performing an availability check checking group has to work in conjunction with
checking rule.
6. Advantages of individual processing over summarized processing Backorder
processing is possible. You can access (MD04) order, line and schedule line individually
which gives a greater control on available stock and requirements placed on stock.
The system automatically uses individual requirements in case of special stock items.
7. Required data for the Availability check to be carried out
The Availability check must be switched on at the requirement class level.
The Availability check must be set at the schedule line level.
A requirements type must exist by which the requirements class can be found.
A plant must be defined in the sales order for each schedule line item (in other words
plant must be defined for every material in MMR).
A checking group must be defined in the material master record in the MRP3 screen in
the availability check field.
9. Defining material block for other users the block check box is an indicator that
enables you to block material master records of a particular material during the
availability check and restrict other users from accessing same master record and
reserve the material. If the block is not set, two users can confirm the same material at
the same time for two different orders, not knowing if the stock is available or not. If you
select this field, the material is blocked during the availability check and other users
cannot: a) Make changes in the material master record. b) Create purchase orders for
the material. C) Create orders for the material.
10. Defining default values for checking groups - Checking groups are introduced into
the sales order based on the setting in the material master record.
However if there is no entry present in the material master record for the checking
group, a default value can be set here, depending on material type and plant.
This default value will be used by the system depending on the material type mentioned
in MMR and plant in sales order. If an entry exists, this default value is over written by
MMR.
11. Controlling Availability Check in this section, you tell the system what stock on
hand and what inward and outward movements of stock it must take into account when
performing the availability check in addition to whether or not to consider the
replenishment
lead
time.
12. These settings are based on the checking group that is assigned to the material
master record and the checking rule that is predefined and assigned to the sales and
distribution
transaction.
13. These settings carry out control both for sales order and delivery as well. This is due
to the fact that you may want to include specific stock or incoming stock for the sales
order, yet at the time of the delivery only include physical stock on hand waiting to be
shipped.
14. It is possible to indicate to the system that you would like the availability check NOT
TO CHECK the stock at the storage location level. This indicator is used to set the scope
of
the
availability
check.
15. It is used to switch off the check at storage location level. You create a reservation
for a particular storage location. However, the scope of the availability check is set in
such a way as to exclude the storage location. In this case, the system carries out the
check at plant level only and does not take the storage location into account that is
specified
in
the
reservation.
16. Should you not want the system to automatically check RLT, you may indicate so
here. RLT is the time taken for a material to become available. It is only used when
doing an ATP check and is taken from MMR.
17. defining the elements in the availability check entirely depends on the business
needs, but a few tips are given under
When controlling the Availability check at the time of the sales order, a purchase
requisition does not necessarily indicate by it is going to come into the plant.
A shipping notification on the other hand - a confirmed purchase order is a good
indicator of receiving stock on a specified date. It is always recommended not to select
the shipping notifications for the delivery requirements type as you may not actually
receive the stock into plant or warehouse for which you are creating a delivery.
see the accounts of the goods issue postings, and any categories of billing documents
that do not require a goods issue are shown without an FI value.
Under Additional condition types you can find the following values:
* Condition types that are not assigned to a value field (the corresponding accounts
appear under Additional accounts)
* Non-statistical conditions that are not posted to an account with cost element type 11
or 12 are not transferred to CO-PA.
Under Goods issue, you can see goods issue postings for which the billing document
does not contain a condition type of the category G.
For the purposes of reconciliation, two values are shown. These principally cause
discrepancies between CO-PA and FI. If you restrict the billing date in the selection
screen (for example, to a period),then the following values are displayed:
* Goods issue in earlier periods: These are the goods issue values for billing documents
that have a billing date falling within the selection interval but for which goods issue
precedes the selection interval. These values were therefore posted in CO-PA in the
current period but were posted in FI in an earlier period.
* Nonbilled goods issue: This applies to goods issue values that, firstly, have a goods
issue date falling within the selection interval, but, secondly, that were not billing at the
end of the interval (or were not billed at all). These values were therefore posted in FI
but
not
until
later
in
CO-PA,
if
at
all.
Signs
The signs of the SD values are changed to match those of the CO-PA values so that you
can easily compare the values directly with one another.
The values for these SD condition types consequently need to have their signs reversed
again before they can be compared with the FI values. Any change in sign is shown at
each level of the hierarchy with a "+" or "-".
In some Customizing constellations it may not be possible to compare two hierarchical
levels that lie below the same level.
Step 2:
Access Sequence: If existing access sequence meets the requirement, we need not
create a new access sequence. Considering the requirement for new sequence, the
configuration will be done in SPRO as follows: IMG --> Sales & Distribution --> Basic
Function --> Pricing Control --> Access Sequence (Access sequence is made up of
Accesses (Tables) & the order of priority in which it is to be accessed. Here we assign
the
condition
table
to
access
sequence.
Step 3:
Condition Type: If existing condition type meets the requirement, we need not create a
new condition type. Considering the requirement for new condition type, the
configuration will be done in SPRO as follows: IMG --> Sales & Distribution --> Basic
Function --> Pricing Control --> Condition Type. It is always recommended to copy an
existing similar condition type & make the necessary changes. Here we assign Access
sequence to Condition type.
Step 4:
Pricing Procedure: It is recommended to copy a similar pricing procedure & make the
necessary changes in new pricing procedure. Pricing Procedure is a set of condition type
& arranged in the sequence in which it has to perform the calculation. Considering the
requirement for new Pricing Procedure, the configuration will be done in SPRO as
follows: IMG --> Sales & Distribution --> Basic Function --> Pricing Control --> Pricing
Procedure
-->
Maintain
Pricing
Procedure.
b. Pricing Procedure: After maintaining the pricing procedure the next step will be
determination of pricing procedure. Configuration for determining pricing procedure in
SPRO is as follows: IMG --> Sales & Distribution --> Basic Function --> Pricing Control -->
Pricing Procedure --> Determine Pricing Procedure.
Step 5:
Check Credit Limit Specifies if system runs credit check and behavior. Credit group
Assignment
of
credit
group
defined
in
credit
management
Output Application Normally V1 for sales Material entry type Control on material entry in
sales order. Item division Check this if division is to be determined from material master
record at item level Read Info record Check this if Customer material info records are to
be read. Check purch order no. If Customer purchase order no is to be checked for
duplication maintain A Key fields explained below, rest are system copied. Field Name
Field Description and Value Transaction group Grouping that controls certain
characteristics of sales doc processing. Doc. pric. Procedure Key specifying pricing proc
for sales document type. Input for pricing procedure determination Quotation messages
Control to check if system should check for existing open quotations.
Outline agrmt messages Control to check if system should check for open agreements
like contracts. Key fields explained below: Field Name Field Description and Value
Delivery type Default delivery type for this sales document type Delivery block Default
Delivery block for sales document Shipping conditions Default shipping condition for
sales document type. Maintained if it is different from customer master record.
Immediate delivery To be flag X if immediate delivery is required after sales order is
saved. Example - In Cash Sales and Rush order scenarios. Key fields explained below:
Field Name Field Description and Value Delivery rel. billing type Default billing type that
system proposes while creating billing documents from delivery Order-related billing
type Default billing type that system proposes while creating billing documents from
order Inter-company billing type Default billing type that system proposes while creating
billing documents for inter-company. Billing block To Default billing block in sales order
like Credit memo etc. Billing plan type Billing plan type if used like Milestone or Periodic
billing Paymt guarant. proc Procedure type for payment guarantee Paymt card plan type
Payment plan type for payment cards Checking group Checking group for payment
cards Key fields explained below: Field Name Field Description and Value Lead time in
days
No
of
days
from
current
date
for
proposal of requested delivery date of items. Propose deliv. Date Check box controls if
current date is to be proposed as delivery date. Other controls like Scheduling
agreement and Contract are relevant for only those sales document types and not
explained here. Effect of Configuration Sales document type configured here would be
used for creating sales order in specific scenario.
to prepare answers
position as a web
use some general
for success if you
advance.
Six common questions are listed below, along with insights from several recruitment
professionals about how to answer. As part of your interview preparation, take the time
to formulate answers to each question, focusing on specific tasks and accomplishments.
"What are your strengths and weaknesses?"
This is one of the most well-known interview questions, and interviewers often ask it
indirectly, as in, "What did your most recent boss suggest as areas for improvement in
your
last
performance
review?"
Lindsay Olson, founder of Paradigm Staffing Solutions, a firm specializing in hiring public
relations professionals, suggests tailoring your "strengths" answer to skills that will
benefit the prospective employer. Though you may have a knack for building
gingerbread houses, it might be of little value for the job at hand.
"Interviewers will always want to know your reasoning behind leaving a company ?
particularly short stints," says Olson. "Be prepared to tell the truth, without speaking
negatively
about
past
employment."
"Can you describe a previous work situation in which you ... ?"
This question comes in many forms, but what the interviewer is looking for is your
behavior on the job. Your answer could focus on resolving a crisis, overcoming a
negotiation deadlock, handling a problem coworker, or juggling multiple tasks on a
project.
The theory behind this type of question is that past behavior is the best predictor of
future behavior, according to Yves Lermusi, CEO of Checkster, a company that offers
career and talent checkup tools. "The key to responding well is preparing real job
This question is not about whether you prefer a cubicle or an office, so think broadly to
include ideas about supervision, management styles, and your workday routine.
Bob Hancock, senior recruiter for video game publisher Electronic Arts, says that he
uses this question with candidates because it can give "a sense of their work habits,
how flexible they are with their schedules, and how creative they are."
"How do you handle mistakes?"
The best strategy for this general question is to focus on one or two specific examples in
the past and, if possible, highlight resolutions or actions that might have relevance to
the job you're interviewing for.
"Employers want to know they're hiring someone with the maturity to accept
responsibility and the wherewithal to remedy their own mistakes," says Debra
Davenport, a master professional mentor and columnist for the Business Journal in
Phoenix.
"What is your most notable accomplishment?"
Interview tips
Important Tips for Interview for SAP SD
Let me share some important tips for interview for SAP SD:
1. Please be through with the projects you have mentioned in your resume.
2. Remember all the versions you have worked upon.
3. If your projects are in Indian scenario be thorough with CIN/Excise VAT and pricing
procedure.
4 For offshore client specially in Europe and NASA prepare yourself for Warehouse/Lean
warehouse
5. Third party billing / Intercompany / Make to order are important topics.
6. Cost booking that is accounting enteries after PGI and Billing should be known to
you.
7. Mug up all the determinations.
8. Remember your last ticket.
9. Have general awareness about ALE/EDI/IDOC, as this provides added advantage. (not
very tough)
10. Please be through with your basics, the process, the pricing and the master data.
11. People who are thorough with route, transportation, shipping always have an added
advantage.
What I understand is most of the companies especially in the US are looking for a
candidates
with
1) good communication skills (SAP is all about interacting with the client, users and
team)
2) good business knowledge
3) are you able to convince the client
That comes in next round when you are interviewed to be deputed for any US/Europe
project, in this round take care of the following:
1. Speak slow, I mean normal, because usually Indians speak english too fast.
2. Listen to them carefully, if you are not able to understand their question request
them to repeat it, rather than assuming it to be something else and giving a wrong
reply.
3. Again I should repeat prepare yourself for warehouse, I mean even general
knowledge
will
help.
4. Say a straight no when you don't know or have not worked on the topic.
5. Always be strong on SD MM FI integrations
What the job responsibilites would be for the Support Consultant? If the Consultant is
working in Offshore Support, How the business interaction would be there between the
Consultant and Customer? How the Customer Queries were handled successfully sitting
from
his
location.
Job responsibility of a Support consultants is to handle routine tickets, which can be
incident (routine problems), change tickets (need configuration change, therefore a
change request), normally a support consultant can only advice a change but can't do it
, because there is always a change advisory board on client end to evaluate and
implement
the
adviced
change.
Business intercation between users and customer can be through mail box utilities,
outlook, even telecons and some companies also allow chat.
Usually the customer provides with the number of the document and client/company
code and other necessary info. about the process which is facing problem, the
consultant tracks the project by logging in to development server and search out for
causes, the solution is then sent to user, maybe with snapshot if required.
And the most important thing "Believe in yourself and God, as there is always somebody
there to help you".
Tips by : Nitin
Hardly the team of the sd will be 4 to 5 and entire team of the project will be around 2024 (all modules like fi/co, sd, mm, pp, hr, qm, pm). If its big project, it will be around 40.
Team size means the employees who you are working on sap r/3 implementation.
For the project completion it will take around 8-10 months to get into golive. After that,
post implementation for 3 months. After that supporting it depends as project time line
for every company is different.
SAP SD resume
As an SAP SD Consultant, you need to include the following in your SAP SD Resume.
(SAP Sales & Distribution)
1. Organizational Structures (+)
Organizational Units and
Organizational Structures in Sales, Shipping and Billing
2. Master Data (+)
Customer Master
Material Master
Field Control for Customer and Material Master
Customer-Material Info Record
3. Sales (+++)
Sales Document Processing - Basics
Sales Document Types
Item Categories and Schedule Line Categories
Copy Control
Partner Control
Availability Check - Basics
Outline Agreements
Special Business Transactions
Incompleteness Control
Free Goods and Free-of-Charge Items
Material Determination, Listing and Exclusion
Reporting - Basics
4. Shipping (++)
Delivery Processing - Basics
Delivery Types and Item Categories
Picking, Packaging and Goods Issue
Scheduling
Routing and Route Determination
5. Pricing (++)
Pricing Processing - Basics
Condition Technique
Condition Records
Bonus Processing
6. Billing (++)
Billing - Basics
Billing Types
Complaint Documents
Billing Plan
Account Determination
Interface SD/FI
7. Cross-Application Customizing in SD (+)
Text Processing
Output Control
Interface Personalization
8. Solution Manager (+)
Solution Manager Overview
9. Experience from Implementation (Case Study or Project)* (+)
Construction of Business Structures (Organizational Units in mySAP.com)
Integration and Dependencies
SAP FI Resume
There are many things that make an SAP Resume stand out. When you are doing up
your resume, you need to indicate the following to let the hiring manager take notice of
your resume. If you are a certified SAP Consultant, it is important that you include the
SAP logo on your resume or cv. If you don't indicate the SAP logo on your resume, you're
losing out big time.
There are a number of things that HR Executive or Hiring Manager looks out in your SAP
Resume. You need to indicate the following:
* How many years experience you have on SAP
* Which modules of SAP have you worked on
* Have you been working as a SAP Consultant doing configurations and implementation,
or taking on the role of SAP support.
* Are you a SAP Certified Consultant?
* Are you a SAP Consultant, SAP Technical Consultant or an SAP Techno-Functional
Consultant?
* Are you a SAP Implementer, SAP Team Lead, SAP Project Manager doing SAP Project
Implementations?
* How many SAP project life cycles have you completed. Are they full SAP
implementation cycles or just partial SAP modules.
* Have you implemented SAP Rollouts for the region. SAP Rollout means implementing
similar SAP modules & configurations for other countries.
* What are the projects that you were involved in?
* For each individual project, indicate the number of SAP Consultants involved and your
role in the SAP project
* Where was the project delivered
* Which SAP modules are you trained and certified in
* Which SAP modules are you competent in
* Which version of SAP, is it SAP 3xx, SAP 4.0, SAP 4.1, SAP 4.6A, SAP 4.6B, SAP 4.6C,
SAP 4.70, mySAP CRM, mySAP ERP, mySAP FIN ...etc
* SAP modules involved in each project. E.g SAP MM, SAP SD, SAP FICO with SAP ABAP,
SAP Basis, SAP BW.
* Most SAP projects are implemented by SAP Consulting firms, therefore it is also
important to indicate which company were you working with. (E.g. I was working as a
SAP HR Consultant and was tasked to do implementaion for Unilever for their SAP
Rollout).
SAP FI Resume
Other SAP Resumes
SAP Resumes
* SAP FI Resume | SAP FI Resumes
* SAP CO Resume | SAP CO Resumes
* SAP FICO Resume | SAP FICO Resumes
* SAP SD Resume | SAP SD Resumes
* SAP MM Resume | SAP MM Resumes
* SAP HR Resume | SAP HR Resumes
* SAP PP Resume | SAP PP Resumes
* SAP APO Resume | SAP APO Resumes
* SAP ABAP Resume | SAP ABAP Resumes
* SAP Basis Resume | SAP Basis Resumes
* SAP BW Resume | SAP BW Resumes
* SAP PM Resume | SAP PM Resumes
* SAP WM Resume | SAP WM Resumes
* SAP Project System Resume | SAP Project System Resumes
* SAP Life Cycle Asset Management Resume | SAP Life Cycle Asset Management
Resumes
* mySAP SRM Resume | mySAP SRM Resumes
* mySAP ERP Financials Resume | mySAP ERP Financials Resumes
* SAP Mendocino Resume | SAP Mendocino Resumes
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
SAP Hardware
*
*
*
*
*
*
*
*
*
AS400
AT&T
Bull
Compaq Digital
HP
IBM
Sequent
SNI
Sun
SAP Database
*
*
*
*
*
*
*
*
Adabas D
DB2 for AIX
DB2/400
Informix
MS SQL
My SQL
Oracle
Sybase
Operating System
*
*
*
*
*
*
AIX
HP UX
MS Windows NT OS/400
Sinux
Solaris
Unix
ABAP/4 Programming
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
SAP Script
Business Workflow (BC - WF)
ALE
EDI
Business Connector
Business Server Pages
Internet Application Server
Mercator Report Painter
Dialog Programming
Repository Information System
Menu Painter
ABAP 00
IDOCS
LSMW
Smartforms
EBP
ASAP methodology
ALV reporting
Report writer
ABAP Query
Data Dictionary
Screen Painter
SAP TR (Treasury)
* Cash Management (TR - CM)
*
*
*
*
*
SAP CO (Controlling)
*
*
*
*
*
*
Investment Programmes
Investment Measures (orders/products)
Appropriation Requests
Corporation Wide Budgeting
Depreciation Forecast
Automatic Settlement of Fixed Assets
Information System
Personnel Administration
Benefits Administration
Compensation Management
Recruitment
Travel Management
Personnel Development
Organisational Management
Training and Events Management
Personnel Planning
Time Management
Incentive
*
*
*
*
*
Wages
Workflow
Internet Scenarios
Payroll
Information System
SAP SMB
* SAP SMB
SAP BW
*
*
*
*
*
*
*
Data Warehousing
BI Platform
BI Suite - Business Explorer
Development Technologies
ODS Structures
Info Cube
Design Build
Master Data
Sales
Special Business Transactions
Shipping
Billing
Credit Control
Sales Support
QM in SD
Internet
Transportation
Foreign Trade
Sales Information System
Electronic Data Interchange
Planning
Inspections
Control
Notifications
Certificates
Test Equipment Management
QM-IS
Logistics (General)
Logistics Information System
Purchasing
Inventory Management
Invoice Verification
Inventory / Valuations
*
*
*
*
*
Materials Planning
Workflow
External Services Management
QM in MM
Warehouse Management
Preventative Maintenance
Service Management
Maintenance Order Management
Maintenance Projects
Equipment and Technical Objects
Structuring Technical Systems
Maintenance Planning
PM Processing
Work Clearance Management
Internet Scenarios
Customising
Information System
Service Processing
Service Contracts
Controlling
Workflow in Customer Service
Basic Data
Operational Structures
Project Planning
Approval
Project Execution and Integration
Information System
Work Breakdown Structure
mySAP SEM
*
*
*
*
*
CRM Enterprise
Field Applications
E-Commerce
Interaction Center
Channel Management
Industry Specific CRM
SAP Netweaver
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
How to restrict users for not changing some fields in T-code va02?
There are two ways to do this:
- Make a transaction variant thru SHD0 and assign it to your sales doc. While creating the variant you can
place non-changeability ticks on specific fields. Next allow those users only to work with your transaction
variant but not with the original transaction.
- You could make use of user-exit FORM USEREXIT_FIELD_MODIFICATION in include MV45AFZZ (via
authorization objects, which you can assign in role customizing).
The latter is more flexible but it is not feasible if you want to place restrictions to a large amount of fields.
The following are the T-codes for central creation of customer master.
XD01
XD02
XD03
XD04
XD05
XD06
XD07
XD99
XDN1
Transfer Posting
Create a Stock Transport Order (ME21N, Purchase Order doc type UB)
Process Goods Issue against STO (MIGO > Goods Issue > PO) movement type
351
Process Goods Receipt against STO (MIGO > Goods Receipt > PO) movement
type 101
Process a Transfer Posting (MIGO > Transfer Posting) movement type 303
Process a Transfer Posting (MIGO > Transfer Posting) movement type 305
The Transfer Posting can be done with reference to a Reservation. Although this is not
used a lot. Similarities between Stock Transport Orders (STO) and Transfer Postings (TP)
Both use transaction MIGO for both steps
After first step, goods are already reflected in receiving plant and not
availableDifferences between Stock Transport Orders (STO) and Transfer Postings (TP)
Movement types are different351 & 101 for STO303 & 305 for TP
Stock types at receiving plants are different- In Transfer (MARC-UMLMC) for TP- Stock in
Transit (MARC-TRAME)for STO
For STO, 351 and 101 is group together where for TP there is no link between 303 and
305
STO requires more transactions than TP
STO must be configured for the sending plant / receiving plant where no plant specific
configuration exists for TP
STO is based on Stock Transport Order (type of Purchase Order). Where no purchasing
document is used for TP
STO can be initiated with a Planned Order or Purchase Requisition
Planning (MRP) can be used to initiate movements, but only STOsConfiguration required
to use STOConfig: MM > Purchasing > Purchase Order > Set up Stock Transport Order >
Assign Document Type, One-Step Procedure, Underdelivery Tolerance
Here the source plant, destination plant and allowed STO document type is specified.
Schedule Line Categories are configured at:IMG: Sales and Distribution > Sales > Sales
Documents > Schedule Line > Define Schedule Line Categories - transaction VOV6
Movement Type (601): This is the movement type that will take place when a
Goods Issue is done.
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 .
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
Function module exits also control the data flow between standard programs and screen
exit fields. SAP application developers create function module exits by writing calls to
customer functions into the source code of standard R/3 programs.
These calls have the following syntax:
CALL CUSTOMER-FUNCTION 001.
Field Exits Field exits allow you to create your own programming logic for any data
element in the Dictionary. You can use this logic to carry out checks, conversions, or
business-related processing for any screen field. Example: The data element BBBNR
identifies a companys international location number. You might want to set up your R/3
System so that all international location numbers are larger than 100.
The field exit concept lets you create a special function module that contains this logic.
You assign the special function module to the data element BBBNR. You then assign the
module to any programs and screens in which users can add new international location
numbers. When you activate your field exit, the system automatically triggers your
special routine whenever a user enters a company location number.
In 4.6c, you can use "RSMODPRF" program to create field exits.
An example of a user exits :MODULE user_exit_0001
INPUT CASE okcode.
WHEN 'BACK OR EXIT'.
CASE sy-dynnr.
WHEN '100'.
SET SCREEN 0.
LEAVE SCREEN. WHEN '200'.
**Note that you can write any code that satisfy your needs. But in this case, this was
wrote as a sample code for reference sake. And you can test it. ****
SET SCREEN 100.
LEAVE SCREEN.
ENDCASE.
ENDCASE.