Wednesday, December 1, 2010


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.
Do not try to fool your interviewer, say exactly and only what is asked do not show your excitement and do not speak too much if you know the topic too well, and say a straight NO if you have not worked on something, or don't know about something, pls pls pls don't not go for flukes otherwise you will end up in soup.
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
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.
For those people who asks for for tickets:
1. Tickets are normally raised by end user and carry a priority. 
2. Those who are asking SAP gurus to tell them about tickets, pls note that most of the problems except for the basic questions discussed in this group are the tickets themselves, tickets are nothing but the routine incidents the SAP consultants get, if you regularly read the mails in the group you will soon start recognizing tickets.
And the most important thing "Believe in yourself and God, as there is always somebody there to help you".
Tips by : Nitin
What is the team size?  Duration of the project.
Hardly the team of the sd will be 4 to 5 and entire team of the project will be around 20-24 (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.   *-- Suresh Kumar

SAP SD Interview Questions
Following are some SD Interview questions that might be asked. 
1.   What is the purpose of text determination, account determination, partner determination, output 
      determination,storagelocation determination
2.   What are the five imp fields to be maintained in account determination
3.   How to create excise invoice and what is it
4.   What is meant by transfer of data from legacy code to sap
5.   What do you do really in pricing determination, and what are the main deifferences between
      one pricing procedure determination to the others, which data control these differences
6.   What type of reports generally a support consultant maintain and report
7.   What are interfaces used  generally an indian organisation  which is in retail business
      and and which is in banking business and oil business.
8.   What is the purpose of shipping point determination not menu path
9.   What and where types of copy controls we change 
10. How to and where to maintain copy controls
11. What is purpose of maintaining common distribution channels and common divisions
Common Distribution Channel and Common Divison are maintained so that if any master data like customer or material maintained with respect to one distribution channel can be used in other DCh. It prevents the multiplication of master records.
Eg: A customer is created for say sales area 1000/20/00 then the same customer can be used in sales area 1000/30/00 if we maintain 20 as common distribution channel. Hence no need for extending the customers...the same for materials also.
Rajendra Babu
As of what I know answer to question 5 would be:
5. we determine how the prices are calculated, taking into account sales area(sales org, distribution channel, division), document type and customer(generally sold-to-party).
The main differences between pricing procedures would be the differences as I mentioned above, from the point of view of field entries.
Coming to the output and the procedure, I suppose the condition types used will be different and hence the following whole procedure.
1. What is the purpose of text determination, account determination, partner determination, output determination, 
     storage location determination
Text determination: For transferring information from material or customer to order/delvery or invoice (and anything inbetween)
Account determination: For transferring financial and costing information to proper financial docs
Partner determination: For determing who is is legally resposible for A/r, who the goods are going to and whatever else you waana drive through this functionality.
Output determination: What kinda output does a sales/delivery/billing document create and who gets it, where?. For example A partner might get an EDI notification for a sales order just confirmed, whereas a financial/leasing company gets the invoice!
2. What are the five imp fields to be maintained in account determination
Go to IMG and find out
3. How to create excise invoice and what is it. 
I've never worked in india so I dunno
4. What is meant by transfer of data from legacy code to sap Legacy Code ? 
It should be legacy data to SAP. What it means is you want to transfer all the customer and materials and all other information from Older (legacy system) to new SAP system. You can do it using many tools, most noticeably MDMs.
Regarding q-3,
As per Indian tax system, Excise duty (16%) is payable by each manufacturing unit on the value of manufactured goods / on the value added. The manufacturing plant is supposed to submit an excise duty report on fortnightly / monthly basis. Various registers (RG1, RG23A, RG23C, PLA) are maintained for that purpose, which record all the transactions including movement of goods, cenvat credit available and cash balance available.
In SAP, we use transaction j1id for configuration and j1iin, j2i7, j1i5, j2i5, j2i6, j1ip for creating, extracting and printing excise invoice. 
1. (a) Text Determination: Any Texts in Masterial Master/Material Determination/Order/Delivery , etc is meant to convey messages to the subsequent documents for compliance. e.g. "Give Top Priority" message mentioned in Order is meant for Production Dept.
   (b) Account Determination:is integration between Finance and SD. The A/P along with Account Keys need to be allocated accordingly with combination of Account Determination Group for Customer and Material if required.
   (c) Partner Determination:To identify which type of Partner it is so that if required for same Customer different Partner Functions may be required e.g Only One Sold To Party per Customer. More than One Ship to Party/ Bill to Party/ Payer possible. Accordingly different Masters will have to be created. Useful for despatch of Material in casae of Ship to Party, sending Bill in case of Bill to Party and payment followup/Dunning in case of Payer.
   (d) Output Determination: What type of Output (Fax/Mail, etc) is required, where and in what Format(ABAP Customisation may be required in some cases especially Invoices).
   (e) Storage Location Determination: depends on Plant,  Shipping Point and Storage Conditions
(2) Account Determination: Sales View, Sales Organisation, Distribution Chanel, Chart of Accounts, Account Assignment Group for Customer and Material and Account Keys.
(3) I will check and let you know within week.
(4) Before installation of SAP, Data maintained by Company is called Legacy Data. At the time of instalation, it is required to transfer Data from Legacy to SAP like Masters (Material/Customer, etc). It can be done in various ways like BDC, LSMW, etc.
(5) Pricing is determined by combination of Sales Organisation, Distribution Channel, Division, Customer Pricing Procedure and Document Pricing Procedure.
(6) Depends on Customer requirements.
(7) Its not clear.
(8) So that Shipping Point is determined automatically once the settings for the same are done.
(9) Copy Control: is basically meant so that Data is copied from preceding Document to subsequent one. What subsequent Document is required is to some extent determined by Customer Requirements as well as Document Types. e.g. In general case of Standard Order, it will be Copy Control (Order to Delivery) from OR to LF .
(10) Check for yourself in IMG (Sales Document types and Delivery Document Types)
What is the difference between the Avaialbility check 01 (Daily requirement) and 02 (Individual Requirement) in material master?
01 and 02 are the checking group. Availability check is carried out with the help of these checking group and checking rule. Checking group 01 and 02 are maintained on the material master. 
01 - Individual requirement -For this system generates transfers the requirement for each  order to the MRP .So that MM can either produce or procure.
02- Collective requirement.-In this all the requirements in aday or in a wek are processed at a time.  System stores all req and passes on to the MRP in MRP run.In this system performance is high however you can not do the backorder processing whereas in other you can do.    *-- Vishwajit

Some SAP SD Interview Questions 1
1. What exactly is automatic posting can you explain?
1. Automatic posting could be, posting of accounting documents to FICO once invoice is created which can also be controlled manually. Automatiaclly detremine the freight while pricing in ship doc. and post to the relevant account to fico. usually automatic posting is posting of documents to FICO based on variuos account keys and account groups. 
2. How many clients we will create in land scape (like in  development server, quality server, production server ) 
    if we are creating more than one in each server what is exact use of that client.
2. Client landscape : Basic layout : dev -testing- production also 
- Sandbox env. for trial and error 
- Development env. for actaully creating transports(CTS)
- Global env.  If you have global implementations at different client locations (eg; canada, US, UK) (for testing purposes with actual master dataas well)
- Testing env.(for regression testing purposes before moving to prodcution, integration etc..)
- Prod. env. the actual production system 
The clients could be variable and could be created to a specific env. usually a dev. where abap, functional would mess around. say :
    client 100-functinal consultants
    client 300- abapers
    client 400- other users(like super etc)
3. How we will configure export sales in sd (respect to plants assign  and sales process)?
4. How we can do invoice split depending on item category in which scenario we will use?
4. You first need to go for copying controls either from sales to billing (invoice) or delivery to billing or billing to billing
use transactions (vtaa,vtaf,vtla,vtfa,vtfl,vtff) all possibilities for copy controls. this basicly is flow of doc to doc. (may it be sales to billing, del to bil, or bil to bil etc..)
-> this is where you see the Item category and you control whether split is possible or not with the indicator"B". eg:  representing split in invoice based on item category.  The field here "data VBRK/VBRP" (headre/item)whcih actually is used for splits or combining different deliveries. create a splitting rule using VOFM (you need access key to get here).  Here you define comparisions for the fields at header table and item tables and the comparision fields say  SPART"division". "purchase order "BSTKD Instance: 5 sales orders combined into 2 deliveries and the split at the invoice would be 5 individual billing with respect to fields PO and DIv. of each sales order would let you create 5 billings. You need to define the exact "field" in the comparisions both at header and item level that could lead to invoice split. the key here is the field that is different
from header to item will cause split at the item level. 
5. Can any one explain how we will configure milestone billing , periodic billing and which scenario we will use?
5. Menu path:
IMG->sales &distr->Billing->billing plans->define billing plan types.
You set the start date and end dates if applicable to the type of billing you are using. What time to be billed (end of month, start of month etc..) 
Milestone is a billing plan type where a customer is billed for the amount distributed between the dates until total value is reached eg: if the total billing amountis 1000 USD for a year.  You will bill the customer in different amounts say 200, 500, 300 at different intervals as per customer agreement. 
On the other hand Periodic billling is billing the customer for the total amount(here 1000 USD) at regular intervals peridically until the customer agreement is reached. eg: 1000/12 for a 1 year agreement and say billed at the 1st day of every month. 
6. What are some pricing routines and sd functional specs?
6. Form routines for prcing and variuos other functions can be maintained form routines are something todo with ABAP code.
Go to (VOFM) where all requrements whcih are represented by form routines can be maintained.  Requrements are available to be assigned where access sequenses are used (for determination procedures, here pricing). 
Once the tcode VOFM is accessed you will see requrements and go select "pricing" again you need access key to create your own or copy a routine. 
Say you want header price not to have effect the item pricing, you need to go to the program to change abap code to meet the requirement. this specific requirement you created will be assigned in the pricing proc. determination "requirements field"
usaully with a number beyond 600.   Note: make sure you activate your routine for its effect to take place.
SAP SD Tips by : Sunil David

Some SAP SD Interview Questions 2
Some of the interviewed questions and answers are as follows:
What is the movement type you used in consignment process?
 ### 632, 633, 634, 631
Can team size be 40 in a project? Is there any generalized team size no. for any project? If we tell my team size is 40 in that what no. we can say sd people are? 
 ## Team size cant be forty, Theres no genralized size of team. Never 
40 sd consultants work together on same project. 
What is ALE?
 ## Application Linking and Enabling - Generally ABAPers work on it.
What is meant by condition technique: can we say it is the combination of condition types, access sequence and condition tables? 
 ## yes
Where do we can find pricing procedure indicator in sd ?
 ## Pricing procedure is where we maintain all Conditions (like PR00, K004, mwst, kp00, etc) 
Where do we assign calender in the master records?
 ##  In IMG screen Global Settings.
What is the importance of customer account groups?
 ## We maintain the customer account to maintain payment terms and incoterms. Lets say, if SP is only booking order but the goods should deliver in foreign country and for which SP is not going to bare the excise and other taxes then the SH party or payer will tke teh responsibity then the tax is calculated based on account groups.
What are incoterms? Where do we fix them? Where do you find in regular process?
 ## Incoterms or international comm. terms and u find in CMR - Sales area Data - billing Tab.
How can you make some of the fields as key field in generic tables?
 ## Some fields in all tables have a indicator on it.To see, then go to SE11, display VBAK, u will find MANDT on top, if you see after description 2 tick marks, those are key fields.  Gernerally, these key fields are used in writing any Program or Interface. The key fields will extract data of non key fields . 
What is the standard group condition routine in condition type, what is its importance?
 ## Its better u read Group Conditions in PR00.
How do you control entry possibility of condition values at order through condition type settings?
 ## You can maintain the maximum and minimum value for all conditions.
What are the customizing settings in pricing procedure for tax condition type?
 ## Check out the standard pricing procedure RVAA01 - MWST.
A bunch of data need to be imported. A huge no.of creations are required, how it is possible in SAP?
 ## thru LSMW, BAPI.
What is the difference between PGI cancellation and returns order?
 ## PGI cancellation is done before the transportation of goods. But return order means its already transported reached customer during transit if materil is spoiled or broke or the goods r not delivered as per customer requested date.then customer send the goods baack to company.
What is the integrated areas in SD AND FI, SD AND MM, SD AND PP in both implementation and support projects?
 ## SD & FI - Possible in Account Determination, for posting the conditions to revelant G/l account like all prices goes to one particular g/l account. Also in Credit Management, Taxes.
  SD & MM - Possible in Batches, Material Requirement Planning.
  SD & PP - Possible in Material Requirement planning.
  Link Between SAP SD, MM & FI
Tips by:  Kumar
Availability Check on Quotation 
SAP standard does not do an availability check on the quotation, as it is not a definite order, usually just a pricing quote.
When it is converted to an order, the first availability check is carried out, as well as credit checks.  The system will check stock in the plant, plus what is contained in the availability checking rule (scope of check) eg: can add POs for replenishment, purchase reqs, different planned orders, and subtract sales orders, deliveries etc already created against that material in that plant (and possibly Storage location).
If there is enough stock in the plant/SLoc, the system will give you a confirmed date, or give you a date based on the production time or purchasing time from the material master.  The date the system proposes is based on the customer's requested delivery date.
SAP first backward schedules looking at the required delivery date, less transportation time, less transportation lead time, less pick and pack time, less production/purchase time if applicable.  If the date it calculates is equal or later than today’s date, then it will confirm the customer’s required date.  If it falls in the past, SAP will then forward schedule for today’s date, plus the times listed above to get the date when the customer can actually have it.
ATP is the single most complex part of the SD module, depending upon how PP and MRP is set up.
MRP works semi-separately, depending on how it is set up.  Basically, MRP looks at the demand on the plant, and if it the stock does not meet expected sales orders and deliveries, it will create a purchase requisition (outside purchase) or requirement or planned

Interview Question and Answers on SAP SD
1.What are the responsibilities of a functional consultant in an implementation project?
a) Responsibilities in implemention project 
- Preparing the functional specification documents.
- Review and approval of functional specifications.
- Designing a road map and setting approval from client.
- Changing existing configuration whenever needed.
- Setting up configuration for new enhancements.
- Handling basic issues of MM module.
b)Responsibilities in support project
- Handling customization, configuration, and enhancement related issues 
- Handling tickets on Day to Day basis
- Monitoring S&D reports on daily basis required by clients
- Preparing functional specification documents 
- Preparing end user training Documents 
2.What are the responsibilities of a technical consultant in an implementation project?
Preparation of techinical specifications, getting apporvals from functional consultant and PM,assitance to functioal consultant.
3.What are the main and sub modules in SAP?
4.What is ERP and SAP?and why inplementing SAP in an organization? Explain the special features of SAP over other
SAP is an ERP package.  SAP can be fit it any language.  It is used to get exact data with a fraction of section which will be use fully for management to take correct decision in a short span of time.  Using of sap means there is no need to maintain the
middle management in the organization because the CEO of the company is able to direct the executives direcltly with the system.  SAP is able to integrate all functional organizational units togethere and retrieve exact data needed by management. Therefore, investing on middle management will become less. and the user will be able to acess instance reports using the logistic informaion systems in SAP.
5.Explain the business flow of an implementation project?
- Project prepration
- Business blue prints
- Fit gap analysis
- Realization
- Golive
- Support
6.Explain breifly about your role in current/previous project? (If you have one)
Team member
7.Explain your functional experience prior to SAP?
For this you will give explanation depends of your previous experience.
8.Can you explain the modern technologies in SAP?  Do you use this in your current project?
I think the ans is APO, BW, CRM, if its wrong pls guide me any body.
9.Explain the terms "AS IS" and "FIT GAP ANALYSIS"?
Business blue print stage is called as is process.  Fit gap means, before implementing the SAP all the business data is in the form of documents, we cannot keep this data as is in the SAP.  There should be a gap.  So by filling this gap, we make configuration with the help of these documents.  This is called as fit gap analysis.  In this stage, we should analysis the gap between as is and is as process
10.What are the responsibilities of "CORE TEAM" and "FUNCTIONAL TEAM" in an implementation?
Core Team are the power users who are selected for the SAP implementation.  The Functional Team gather the initial implementation requirement from these core team users who will be the bridge between the SAP Functional Team and their department users with the expert work knowledge.
Tips by : Uday Hyderabad

Important Tables for SAP SD
Sales and Distribution:
                  Table  Description
Customers         KNA1   General Data
                  KNB1   Customer Master – Co. Code Data (payment method, reconciliation acct)
                  KNB4   Customer Payment History
                  KNB5   Customer Master – Dunning info
                  KNBK   Customer Master Bank Data
                  KNKA   Customer Master Credit Mgmt.
                  KNKK   Customer Master Credit Control Area Data (credit limits)
                  KNVV   Sales Area Data (terms, order probability)
                  KNVI   Customer Master Tax Indicator
                  KNVP   Partner Function key
                  KNVD   Output type
                  KNVS   Customer Master Ship Data
                  KLPA   Customer/Vendor Link
Sales Documents   VBAKUK VBAK + VBUK
                  VBUK   Header Status and Administrative Data
                  VBAK   Sales Document - Header Data
                  VBKD   Sales Document - Business Data
                  VBUP   Item Status
                  VBAP   Sales Document - Item Data
                  VBPA   Partners
                  VBFA   Document Flow
                  VBEP   Sales Document Schedule Line
                  VBBE   Sales Requirements: Individual Records
SD Delivery DocumeLIPS   Delivery Document item data, includes referencing PO
                  LIKP   Delivery Document Header data
Billing Document  VBRK   Billing Document Header
                  VBRP   Billing Document Item
SD Shipping Unit  VEKP   Shipping Unit Item (Content)
                  VEPO   Shipping Unit Header
SD Tcodes
An Introduction to SAP
SAP was founded in 1972 in Walldorf, Germany. It stands for Systems, Applications and Products in Data Processing. Over the years, it has grown and evolved to become the world premier provider of client/server business solutions for which it is so well known today. The SAP R/3 enterprise application suite for open client/server systems has established a new standards for providing business information management solutions.
SAP product are consider excellent but not perfect.  The main problems with software product is that it can never be perfect.
The main advantage of using SAP as your company ERP system is that SAP have a very high level of integration among its individual applications which guarantee consistency of data throughout the system and the company itself.
In a standard SAP project system, it is divided into three environments, Development, Quality Assurance and Production.
The development system is where most of the implementation work takes place. The quality assurance system is where all the final testing is conducted before moving the transports to the production environment.  The production system is where all the daily business activities occur.  It is also the client that all the end users use to perform their daily job functions.
To all company, the production system should only contains transport that have passed all the tests.
SAP is a table drive customization software.  It allows businesses to make rapid changes in their business requirements with a common set of programs.  User-exits are provided for business to add in additional source code.  Tools such as screen variants are provided to let you set fields attributes whether to hide, display and make them mandatory fields.
This is what makes ERP system and SAP in particular so flexible.  The table driven customization are driving the program functionality instead of those old fashioned hard-coded programs.  Therefore, new and changed business requirements can be quickly implemented and tested in the system.
Many other business application software have seen this table driven customization advantage and are now changing their application software based on this table customizing concept.
In order to minimized your upgrading costs, the standard programs and tables should not be changed as far as possible.  The main purpose of using a standard business application software like SAP is to reduced the amount of time and money spend on developing and testing all the programs.  Therefore, most companies will try to utilized the available tools provided by SAP.
What is Client? What is the difference between Customization and Configuration?
The difference between cutomizing and configuration is:
- CONFIGURATION: we will configure the system to meet the needs of your business by using the existing data.
- CUSTOMIZING: we will customise or adapt the system to your business requirements, which is the process of mapping SAP to your business process.
- CLIENT: A client is a unique one in organizational structure, can have one or more company codes. Each company code is its own legal entity in finance.
Configuration  vs. Customization
When considering enterprise software of any type, it is important to understand the difference between configuration and customization.The crux of the difference is complexity. Configuration uses the inherent flexibility of the enterprise software to add fields, change field names,modify drop-down lists, or add buttons. Configurations are made using powerful built-in tool sets. Customization involves code changes to create functionality that is not available through configuration. Customization can be costly and can complicate future upgrades to the software because the code changes may not easily migrate to the new version.Wherever possible, governments should avoid customization by using configuration to meet their goals.Governments also should understand their vendor's particular terminology with regard to this issue since words like "modifications" or "extensions" often mean different things to different vendors.        *-- Sivaprasad, Sonali Sardesai
What is SAP R3?
We know that SAP R/3 is software, it particular it is client-server software. This means that the groups/layers 
that make up a R/3 System are designed to run simultaneously across several separate computer systems. 
When you install Microsoft Excel on your PC, each component of Excel (printing components, graphing components, word processing components, and etc.) is stored, managed, and processed via the hardware of your PC.   When a company installs SAP’s software each component (or "layer” in R/3’s case) is stored, managed, and processed via the hardware of separate and specialized computer systems. Each of the various layers is capable of calling upon the specialty of any of the other installed layers in order to complete a given task. 
Those components/layers that are requesting services are called “clients”, those components/layers that are providing services are called “servers”.  Thus the term

SD material Determination based on availability check
For SD material Determination you can create a Substitution reason and on the Strategy field, the following info. is available:
Product selection in the background is performed on the basis of the availability check.
We want to have the material determination only in case on material shortage. We expect the Substitution reason to give us this functionallity.   It does not hovever take the availabilty into account before substitution.
We thought the worse case is to create a ABAP which is linked to the "requirement" field in the Procedure (OV13).
Has anyone had the same requirement? Is this a bug or just incorrectly documented?
I also encountered this abnormally recently using material determination. In order to combat the problem, the first product substitution should be for the original material. I've illustrated this below:
Original Product: ABC
Substitutes: DEF, XYZ
In order to perform product substitution ONLY in the case of ATP failure for product ABC, structure the Material Determination record as follows:
Material Entered: ABC Substitutes: ABC
There seems to be a devaition at availability check and or on a conceptual note still.
Availability check can be configured both at requiremnt class and at the schedule line categories level.
Whilst the availabilty check at the requirement class level via global and mandatory configuration the schedule line catgry availability check deals with the order.
It is mandatory that the reqmnt class is flagged off for avlblty check and the schdelu line cat need not be.
The following are the mandatory for Availability check to happen--
1. Must be swithced on at the requirment class level and at the schedule line level.
2. Reqmnt type must exist by which a requiremnt class can be found
3. There must exist a plant and is defined
4.Checking group must be defined in Material Master records(it controls whthr the system is to create individual or collective reqmnt)
A combination of checking gropup and checking rule will determine the scope of availbaility check.
With Compliment by: Srini
Fast Links:
Creating Multiple Materials in Material Determination
Material Determination is used to swap one material for another.It is possible to get a list of materials for substituiton,but remember you can substitue only one material from the list.
This can be done through substituiton reason T Code [OVRQ]
See the substitution reason number for Manual Material Selection
- check the Entry box
- check the Warning box
- select A for Stategy
- save.
Go To VB11 to create Material Determination (taking into consideration that all the previous steps for material determiantion i.e. maintaining condition types,maintaining procedures for material determination and assigning procedures to sales doc. types have been done)
Create one material determination,dont forget to give the Subst reason on top and also on the line.
Click the Variants Icon on top left-Sreen opens
Specify different materials you want to swap with the material you have enterd
Note that the subst reason is already copied on the screen
Remember materials should be of the same sales area,atleast Divisions should be same.

Backward and Forward Scheduling
Backward scheduling is the calculation of deadline dates: the arrival time at the customer site is calculated as the earliest possible goods receipt time at the customers unloading point on the requested delivery date. All four of the delivery and transportation scheduling lead times are subtracted from the customer's requested delivery date to determine if this date can be met. 
The transit time, loading time, and pick/pack time are subtracted from the customer’s requested delivery date to calculate the required material availability date. 
The system calculates backward scheduling as follows: 
Requested delivery date minus transit time  = Goods issue date 
Goods issue date minus loading time = Loading date 
Loading date minus transportation lead time = Transportation scheduling date 
Loading date minus pick/pack time = Material availability date 
By default, the system will calculate delivery dates the closest day, taking into consideration the working days of the shipping point and a rounding profile. In this case the system assumes a 24 hour work day and lead times can be entered in days up to 2 decimal points.  This is referred to as daily scheduling. 
Precise scheduling calculated down to the day, hour and minute is supported.  This allows the scheduling of a delivery within a single day.  It is activated by maintaining the working hours for a particular shipping point. 
Backward scheduling is always carried out first.  If the material availability date or transportation scheduling date is calculated to be in the past, the system must then use forward scheduling. 
Forward scheduling is also done if no product is available on the material availability date calculated by backward scheduling. The system does an availability check to determine the first possible date when product will be available. This new material availability date forms the starting point for scheduling the remaining activities.  The loading time, pick/pack time, transit time, and transportation lead time are added to the new material availability date to calculate the confirmed delivery date. 
*-- Manoj Mahajan

Settlement Downpayment with Installment payment Term
Scenario :- Problem with Down payment settlement using installment payment term. 
1.  When we create Sales order, (sales item value = 100) use payment term : 
     0009 (Installment Payment term, 30%, 40%, 30%). In the Billing Plan, I specify 2 records, 1st record is 
     Downpayment  request 30% of Order value, billing type is FAZ . the 2nd record is Final invoice 100%, billing 
     type is F2.
2. Create Billing type Down payment request , it will document as Noted item in the accounting document.
3. Receive Downpayment from customer via FI screen , at this stage the asccounting document is created as following
      Dr. Cash/Bank 30
         Cr. Advance from customer 30
4. When I create Billing document for the sales item, the down payment value will be proposed for settlement at Billing 
    Creation, I then accept the default value of down payment clearing.  The accounting document is as below
     Dr. AR 30  (*split AR by installment payment term)
           AR 40
           AR 30
         Cr. Sales 100
      Dr.  Advance from customer 30
         Cr. AR 9  (DP. 30% * 30)
         Cr  AR 12  (DP. 30% * 40)
         Cr  AR 9  (DP. 30% * 30)
It seems SAP settlement Down payment by Installment Payment term.  I was wondering that is there are alternative or an option  to setup the Down payment settlement independent of Installment term. I meant, I don't want to have the last 3 Credit item as above, I want only 1 line item of credit,  the accounting should be
     Dr. AR 30  (*split AR by installment payment term)
           AR 40
           AR 30
         Cr. Sales 100
     Dr.  Advance from customer 30
         Cr. AR 30 (Not separate by Installment payment term)
Solutions : Suggesstions on how I could proceed?
Your problem with Down payment settlement is common. Many users object to the down payment or security lodgement mechanism. In our case we often park and apply the advance manually to final invoice.
However, following the above case we sometimes use this with our PS orders:
1. Create Sales order, (sales item value = 100) with billing plan with three steps 30% down payment,30% std billiing on 
    order completion and 70% on delivery. A little different to your original Billing Plan, but 1st record is Downpayment 
    request 30% of Order value, billing type is FAZ . the 2nd & 3rd records are std F2 invoices 30% ,70%.
2. Create Billing type Down payment request , it will document as Noted item in the accounting document.
3. Receive Downpayment from customer via FI screen , at this stage the accounting document is created as following :-
    Dr. Cash/Bank 30
       Cr. Security deposit payment 30 ( In many countries this may be subject to TAX laws)
4. Create the First Billing documents , the down payment value will be proposed for settlement at Billing Creation, then 
    accept the default value of down payment clearing as these equal each other.  The accounting document is as below
    Dr. AR 30
        Cr. Sales 30
    Dr.  Advance from customer 30
        Cr. AR 30
5. Create the Second Billing document ( down payment value has expired and will not be proposed) The accounting 
    document is as below is then standard for the last installement.
     Dr. AR 60
        Cr. Sales 60
This alternative provides a cleaner option with the Downpayment.
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff

Sales and Distribution - Upload Condition Pricing
RV14BTCI - Batch Input for Uploading Condition Pricing
After executing the program, you have to use SM35 to process the update program. 
Envirionment : 4.6x 
Require flat file :- 
ROW 1 BGR00 
ROW 3 BKOND2 - no scale 
ROW 4 BKOND2 - no scale 
ROW 5 BKOND3 - with scale 
ROW 6 BKOND2 - no scale 
Sample flat file for uploading table A305 - Customer/Material with release status :- 
0BIPRICE     123SAPABAP               X 
1VK15                A305V PR00 
2ALL 990000123456SAP8204142100                                                                       2002043020020401             50USD    100PC 
2ALL 990000123456SAP8217168100                                                                       2002043020020401             50USD    100PC 
3               100PC               2
3               200PC               1 
2ALL 990000123456SAP8220133910 
There a total of 4 flat file format :-
BGR00 - Session Header Record
| Field name | Description          | Report header        | Cat.      | Length | Dec.   |
| STYPE      | Record type          | 0                    | CHAR      | 000001 | 000000 |
| GROUP      | Group name           | BI Session Name      | CHAR      | 000012 | 000000 |
| MANDT      | Client               | Your client no       | CLNT      | 000003 | 000000 |
| USNAM      | User ID              | Queue user ID        | CHAR      | 000012 | 000000 |
| START      | Lock until:          | Queue start date     | DATS      | 000010 | 000000 |
| XKEEP      | Keep indicator       | X - don't delete SESS| CHAR      | 000001 | 000000 |
| NODATA     | No batch input       | /                    | CHAR      | 000001 | 000000 |
BKOND1 - Header Record
| Field name | Description          | Report header        | Cat.      | Length | Dec.   |
| STYPE      | Record type          | 1                    | CHAR      | 000001 | 000000 |
| TCODE      | Transaction code     | TCode = VK15         | CHAR      | 000020 | 000000 |
| KVEWE      | Usage                | U                    | CHAR      | 000001 | 000000 |
| KOTABNR    | Table                | Table e.g. 305       | CHAR      | 000003 | 000000 |
| KAPPL      | Application          | App  e.g V           | CHAR      | 000002 | 000000 |
| KSCHL      | Condition type       | CTyp e.g PR00        | CHAR      | 000004 | 000000 |
BKOND2 - Main Data Record
| Field name | Description          | Report header        | Cat.      | Length | Dec.   |
| STYPE      | Record type          | 2                    | CHAR      | 000001 | 000000 |
| VAKEY      | VarKey               | VarKey               | CHAR      | 000100 | 000000 |
| DATBI      | Valid to             | Valid to             | DATS      | 000010 | 000000 |
| DATAB      | Valid on             | Valid on             | DATS      | 000010 | 000000 |
| KBETR      | Amount               | Amount               | CHAR      | 000015 | 000000 |
| KONWA      | R/2 table            | R2tab                | CHAR      | 000005 | 000000 |
| KPEIN      | R/2 table            | R2tab                | CHAR      | 000005 | 000000 |
| KMEIN      |                      |                      | CHAR      | 000003 | 000000 |
| MWSK1      | Tax code             | Tx                   | CHAR      | 000002 | 000000 |
| KONMS      | Scale UoM            | UoM                  | UNIT      | 000003 | 000000 |
| MXWRT      | Amount               | Amount               | CHAR      | 000015 | 000000 |
| GKWRT      | Amount               | Amount               | CHAR      | 000015 | 000000 |
| STFKZ      | Scale type           | S                    | CHAR      | 000001 | 000000 |
| KZNEP      | Exclusion            | CndEx                | CHAR      | 000001 | 000000 |
| LOEVM_KO   | Deletion indic.      | D                    | CHAR      | 000001 | 000000 |
| SKONWA     | R/2 table            | R2tab                | CHAR      | 000005 | 000000 |
BKOND3 - Scale Data Record 
| Field name | Description          | Report header        | Cat.      | Length | Dec.   |
| STYPE      | Record type          | 3                    | CHAR      | 000001 | 000000 |
| KSTBM      | Quantity             | Quantity             | CHAR      | 000018 | 000000 |
| KONMS      | Scale UoM            | UoM                  | UNIT      | 000003 | 000000 |
| KBETR      | Amount               | Amount               | CHAR      | 000015 | 000000 |

Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff

Sales Order Changed History Display
* Sales Order Changed History Display
* You can execute the report by :
* 1.  Change Date
* 2.  User Name
* 3.  Sales Order Number
* Submitted by : SAP Basis, ABAP Programming and Other IMG Stuff
                 LINE-COUNT 065(001)
                 MESSAGE-ID VR.
                XVBELN FOR VBUK-VBELN.
DATA: UTEXT(16) VALUE 'has been changed',
      ITEXT(16) VALUE 'has been created',
      DTEXT(16) VALUE 'has been deleted'.
      WHEN 'VBPA'.
           ITAB-FNAME = 'LIFNR' OR
           ITAB-FNAME = 'PARNR' OR
           ITAB-FNAME = 'PERNR' OR
                                   AND   PARVW = VBPA-PARVW.
         IF SY-SUBRC = 0.
     WHEN 'VBAP'.
     WHEN 'KONVC'.
                                 AND   KVEWE = 'A'
                                 AND   KAPPL = 'V'
                                 AND   KSCHL = KONVC-KSCHL.
       IF SY-SUBRC = 0.
     IF ITAB-INDTEXT(1) EQ '&'.
  IF SUDATE = 'X'.
      WRITE:/001 ITAB-UDATE,
             023 ITAB-USERNAME,
             037(10) ITAB-VBELN.
      WFLAG = 'X'.
      WRITE:/001 ITAB-VBELN.
           037(10) ITAB-VBELN.
       WFLAG = 'X'.
    IF WFLAG = 'X'.
             049 ITAB-POSNR,
             057 ITAB-ETENR,
             065 ITAB-INDTEXT(60).
              049 ITAB-POSNR,
              057 ITAB-ETENR,
              065 ITAB-INDTEXT(60).
            OBJECTID          = CDHDR-OBJECTID
            USERNAME          = CDHDR-USERNAME
            I_CDHDR           = ICDHDR
            NO_POSITION_FOUND = 1
            OTHERS            = 2.
    WHEN '0000'.
    WHEN '0001'.
      MESSAGE S311.
    WHEN '0002'.
      MESSAGE S311.
                        IN XUDATE.
                          IN XNAME.
              TABLEKEY          = CDPOS-TABKEY
              TABLENAME         = CDPOS-TABNAME
              HEADER            = CDHDR
              EDITPOS           = ICDSHW
              NO_POSITION_FOUND = 1
              OTHERS            = 2.
      WHEN '0000'.
          CLEAR ITAB.
            WHEN 'KONVC'.
            WHEN OTHERS.
              MOVE ICDSHW-TABKEY+3(10)  TO ITAB-VBELN.
              MOVE ICDSHW-TABKEY+13(6)  TO ITAB-POSNR.
              MOVE ICDSHW-TABKEY+19(4)  TO ITAB-ETENR.
          MOVE '& %' TO ITAB-INDTEXT.
          APPEND ITAB.
          CLEAR ITAB.
        MESSAGE S311.
      120 'Page', SY-PAGNO.
  WRITE:/001 'Change Date',
         013 'Time',
         023 'User Name',
         037 'Sale Order',
         049 'Line',
         057 'Sch No',
         065 'Changes'.
  WRITE:/001 'Sale Order',
         013 'Line',
         021 'Sch No',
         029 'Change Date',
         041 'Time',
         051 'User Name',
         065 'Comment'.
  WRITE:/001 'User Name',
         015 'Time',
         025 'Change Date',
         037 'Sale Order',
         049 'Line',
         057 'Sch No',
         065 'Changes'.
*--- End of Program
All the site contents are Copyright © and the content authors. All rights reserved.
All product names are trademarks of their respective companies.  The site is in no way affiliated with SAP AG. 
Every effort is made to ensure the content integrity.  Information used on this site is at your own risk. 
 The content on this site may not be reproduced or redistributed without the express written permission of or the content authors. 

Difference between Condition Type
Please explain the difference between Ek01 ( Actual Cost) and EK02 Calculated Cost.
These are the condition type that will display the results of the unit costing for certain  type of sales document. 
EK01 : 
If you use this condition type, the result of unit costing is issued to the first position on the conditions screen for the item. The value can be used as a basis for price determination. 
If you use this condition type, the result of unit costing is simply a statistical value which you can compare with the price. 
Please note the following points  :
1) The condition type must have condition category 'Q' (costing). 
2) The condition type must agree with the condition type defined for unit costing in the pricing procedure. 
I have a customer who is being offered two discounts ie k007 and k005, now I want to exclude k007 for the next 2
orders or so? I have set the exclusion indicator for the condition type,but still the condition is being accepted when I create a sales order.  Am I missing something, how do I do it?
I think u need to change the validity of the condition record for the condition type K007 defining it not valid for that particular 2 months.  And also the settings of the Requirements as it is correct that it overrules the exclusion.
Arvind Rana 
Related SD Queries:
Get help for your SAP SD problems
SAP SD Forums - Do you have a SAP SD Question?
SAP Sales and Distribution Books
SAP SD Books - Certification, Interview Questions and Configuration
SAP Sales and Distribution Tips
SAP SD Discussion Forum and Sales/Distribution Tips
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
All the site contents are Copyright © and the content authors. All rights reserved.
All product names are trademarks of their respective companies.  The site is in no way affiliated with SAP AG. 
Every effort is made to ensure the content integrity.  Information used on this site is at your own risk. 
 The content on this site may not be reproduced or redistributed without the express written permission of or the content authors. 

Creating New Pricing Procedure
What is the transaction code for creating new pricing procedure and how to attach it to specific plant?
You create PP in spro > Sales and Distribution > Basic Functions > Pricing > Pricing Control > Define and Assign Pricing Procedures > Maintain Pricing Procedures
You can't attach PP to specific plant. Pricing Procedure is determined thru trx OVKK. The defining parameters for pricing procedure determination are:
1. SalesOrg
2. Distribution Channel
3. Division
4. Document Procedure (defined in Sales doc\Billing doc maintenance) 
5. Pricing procedure assigned to customer (defined in customer master)
Hope this helps.
Reg pricing procedure.
1. Use transaction code v/07 to create a access sequence and assign tables based on which you want to carry on 
    pricing as accesses.
2. Use transaction code v/06 to define condition type. It can be for base price, discount, freight etc.,
    (Do assign relevant access sequence)
3. Use transaction code v/08 to define pricing procedure.
4. Assign this to your relevant sales area+ dpp+cupp.
While specifying requirement, we can give reqt no.22 which specifies that plant has to be set.  This is generally done for output taxes since output taxes depend upon the delivering plant.  But directly there is no assignment between plant and pricing procedure.
Hope this helps,

Re-pricing in a Quotation
How can I, or am I able to find anything on a way of RE-Pricing be done in a QUOTATION?
You can always 'Update" pricing manually in a quotation the same way you do in a sales order, either in create or change modes. Menu path Edit --> New Pricing or press the 'Update pricing' button on the item conditions tab. 
If you are asking how to reprice a quotation when it converts into a sales order, that can be done with the copy controls of the Item Category. IMG: Sales & Dist --> Sales --> --> Maintain Copy Control for Sales Docs --> Sales Doc to Sales Doc (transaction vtaa). Just choose the combination of documents and the respective item category. The field you need to be concerned with is "Pricing type". 
However, from a business process perspective it makes absolutely NO sense to reprice a quotation when converting to a sales order. After all, the entire point of using quotations is to firm up details like pricing before creating the sales order.
Do you have a SAP SD Question?
SAP Sales and Distribution Reference Books
Quantity Based Discounts in Bulk Quantities Sales 
You're looking to implement quantity based discounts in 4.6c. You are trying to sell items in specific bulk quantities, and only give the discount for specific quantity intervals. 
For example, if a customer orders 1 piece, 2 pieces, 3, etc. of part ABC, the price is $100. 
If the customer orders 10 pieces of part ABC, the price is $50. 
However, this is not only a standard minimum quantity discount. If the customer tries to order 11 pieces, 12, 13, etc. it should return $100 again. 
The only values for which $50 should apply are 10, 20, 30, etc. - multiples of the bulk quantity 10. 
You have discussed changing your part number to reflect a bulk qty of 10, however you have in house consumption that is allowed to consume only 1 part at a time. You would vastly prefer to keep one part number that you order from the supplier, consume internally and ship externally. 
You are fairly certain there is basic functionality that covers this, but you're just not sure where to start. 
Taking your requirements literally. Standard SAP scale pricing will not do it in that you only want the reduced price to come into effect when the order quantity is multiple of some bulk factor. 
It is agreed with that creating a separate material number is not a good idea. 
You can try this :-

Determine Sales Price with Shipping Point
You are trying to use shipping point as a key field (with sales org. distribution channel and ship-to party together) to determine the sales price.   You created a condition table with the above key fields, and maintained the relevant setting (access sequence, condition type and pricing procedure). 
There is an error message in the sales order pricing analysis ("access not made" in the shipping point field). 
In the access sequence, you found that the shipping point field's document structure is KOMK.
Can you put to item level field in the condition table and access sequence? 
Structure KOMK refers to header of the sales order, but shipping point of course is on item level. 
You'll have to do some settings to reach your goal, it is possible. 
Step 1 
Append structure KOMP. Do this by changing through SE11 the table KOMPAZ
This is the include for structure KOMP
Add a component e.g. ZZVSTEL with component type VSTEL. 
Save, activate. 
If you want to make more points, assign search help H_TVST to the component. 
Ask a programmer if you don't understand this part. 
Step 2 
Change user exit MV45AFZZ. Say there that field ZVSTEL should be filled with information from your shipping point. 
The coding should be like tkomp-zzvstel = vbap-vstel. 
Save, generate. 
Step 3
Make a new table as you did before, but first maintain your new field in Condition: allowed fields. 
When you create your new table you will see you have two shipping points. 
With the button technical view you can check which one ZZVSTEL or VSTEL. 
Step 4
Finish with the steps you did before. That was ok. 
Now, you will see in your sales order that the shipping point is filled with information. 

Pricing date based on delivery date
Used transaction VOV8.
This configuration is by order type.
There is a field called proposal for pricing date.
There you can select pricing date as requested delivery date.
A - Proposed pricing date based on the requested (Header)
This control is set at the document level as oppose to the condition type level (PR00).
That means your other condition types such as surcharges and discounts are also determined using the requested delivery date.
If your requirement is for PR00 to alone to be priced at delivery date then this will not work.
How pricing date is determine in the sales order and billing document? Where is the setting?
The pricing date is proposed based on the setting you make in the Sales document configuration. ( T code : VOV8)
You have a field" Prop.f.pricing date " in the Requested delivery date /  pricing date /  purchase order date  segment.
Then you can choose the follwoing options:
Blank - Indicates the current date as the pricing date
A -  Indicates the date based on the requested delivery date
B - Indicates the date based on the order validity start from date
And the pricing in the billing document is copied from thte sales order / Delivery document..
It again depends on the setting u have in the copy control from order - billng or delivery - billing.
In the copy control, in the item settings you have two fields relavant for this.
One is pricing source and the other is pricing type.
The pricing sources are generally the order.   But if you want you can change it to other values mentioned in the drop down,
but this values have no effect if the pricing type is B.
Any other value other than B in the pricing type will take the reference document price mentioned in the pricing source field.
but for the pricing type B.  The new price is determined in the billing order.
SAP Tips by: Sreenivas

Report to Check the Entered Pricing Condition Price
Which is the best transaction code to check the Pricing condition price entered in "VK11"?
Other than "VK13", to display the price, you can use V/LD - Execute Pricing Report to check the prices entered into the Pricing Master.
Normally Pricing Report - "07 Cust.-specific Prices with Scale Display" will do.
Other Pricing Reports you can tried are these:
|LR|Report title                                                          |
-- ------------------------------------------------------------------------
|01|Comparison of Price Lists Without Scale Display                       |
|02|Comparison of Price Groups Without Scale Display                      |
|03|Incoterms with Scale Display                                          |
|04|Incoterms Without Scale Display                                       |
|05|Price List Types Without Scale Display                                |
|06|Price List Types with Scale Display                                   |
|07|Cust.-specific Prices with Scale Display                              |
|08|Cust.-specific Prices W/out Scale Display                             |
|09|Material List/Material Pricing Group with Scale Display               |
|10|List Mat./Mat.Pricing Groups Without Scale Display                    |
|11|Price Groups With Scale Display                                       |
|14|Taxes                                                                 |
|15|Material Price                                                        |
|16|Individual Prices                                                     |
|17|Discounts and Surcharges by Customer                                  |
|18|Discounts and Surcharges by Material                                  |
|19|Discounts and Surcharges by Price Group                               |
|20|Discounts and Surcharges by Material Group                            |
|21|Discounts and Surcharges by Customer/Material                         |
|22|Discounts and Surcharges by Customer/Material Group                   |
|23|Discounts and Surcharges by Price Group/Material                      |
|24|Discounts and Surcharges by Price Group/Material Group                |
|25|VAT/ATX1                                                              |
|26|Canada/USA                                                            |
|27|I.E.P.S Mexico                                                        |
|28|Conditions by Customer                                                |
|30|Conditions by Customer Hierarchy                                      |
|31|Price List with Release Status                                        |
|AC|                                                                      |
|AD|                                                                      |

Mass Update of condition pricing
You can update the condition pricing for a range of sales order.
For e.g. if you create sales order for 15 months or so, and at the beginning of each year,  you have to update the prices for lots of sales orders.
Other than using VA02 and make an Update of the conditions at item level which is a big work because you will have lots of open sales order after so many months. 
Use VA05, select your Orders and on the result screen :-
click Edit- > Mass Change -> New Pricing (menu). 
if you don't want to do that Online, write your own abap report and use Function SD_BULK_CHANGE (check where-Used at SE37, Trace VA05 on how to fill the parameters,  Function MPRF => New Pricing)
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff

Make Material Master Price of a material as sales price automatically
The first method is not to set the pricing condition VPRS as statistical.
Simply remove PR00 and it will work fine if you always use VPRS as your pricing base inside the pricing procedure.
VPRS will reads both prices based on the price control in the material master. 
Price control S for standard price. 
Price control V for moving average price. 
It is this simple if you do not have any other "Prices" in the price procedure. 
However, if you are using one pricing procedure where for some items you price using VPRS and some others using PR00, then you should use requirement routines to enable the correct price condition type at the right time. 
The second method involves more work as you need to write a formula (VOFM) to get that information. 
This is how it goes :- 
1. Set VPRS to be the first step in the pricing procedure and to be subtotal B (as standard). 
2. Set PR00 with alt. calc. type formula, which sets the value of PR00 to be equal to the subtotal B. 
    The routine (created with transaction VOFM) is: 
The pricing procedure than looks like that: 
Step 1 VPRS statistical, subtotal B, reqt 4 
Step 2 PR00 Altcty 600 
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff

Customer discounts on effort only
-----Original Message-----
Subject: Customer discounts on effort only
Hi All,
We have a requirement of giving a discount to customer based on the total
amount invoiced so far (across financial years).
Where do we set this up? We have seen so far the discounts are calculated
based on the value of the current invoice.
The discount should be on a graduated scale basis for example
0 - 100000 No discount
100000 - 200000 5%
200000 - and above 10%
This means that discount would only start after the customer's net sale
value crosses 100000.
For example, if the customer has been billed for 99000 and the current
invoice is for 3000, a discount of 5% should be given on 2000 i.e. 100.
Another complication is that, the discount is not based on the total amount
billed so far, but only on the effort billed and not on reimbursements (like
airfares, living expenses, visa charges, beeper charges etc). The discount
applies only to the effort and not to the reimbursements. In the above
example (invoice of 3000) say the effort billed is only 1500, the rest being
reimbursements. The discount is only on the 500. (the rest being taken up by
the lower limit for eligibility of 100000)
For example the customer might have been billed say 150000 so far but actual
effort billed might be only 90000, the rest being reimbursements of actual
costs and hence the customer is not eligible for the discount.
Kindly help,
-----Reply Message-----
Subject: RE: Customer discounts on effort only
The solution for this is Using rebate condition types and suitable condition
Of this to handle your first problem that is the rebate has to be applied
only on the "effort" you have to set up a line in the pricing procedure
which gives the rebate basis i.e the value to be used for rebate cond types.
This I believe solves your problem of rebate only on effort.
Your second problem i.e the discount should start getting applied
automatically when it reaches the first scale for which the values span few
financial years. This I am not really sure whether it can be made possible
in the invoice itself. But a work around is not giving the discount directly
in the invoice but settling it against the rebate agreements by Credit notes
Hope it helps.
-----Reply Message-----
Subject: RE: Customer discounts on effort only
Arent we looking at rebate agreeement. That appears to be a straightaway
solution to your problem. You activate the sales organization and the
payer for that
-----Reply Message-----
Subject: RE: Customer discounts on effort only
I am in SAP R/3 rel.30F.
We have 2 options to meet your requirement.
1. Using scale in condition type ( tcode V/06 ), choose scale basis
G.Scale based on a formula ( be: your based amount is invoice ). Define
scale formula. You need ABAPER to define it.
2. Using routine in Alt.calc.type ( tcode V/08 , Maintain Pricing
Procedure ). Here, you also need ABAPER to create routine.
hope this help
-----End of Message-----
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Steps to Create Commission for Agent
For creating commission agent, you have to follow below steps.
1) Establish Partner Functions for the Commissionee(s)
Transaction Code: VOPA
2) Assign the Partner Functions to Partner Procedures
Transaction Code: VOPA
3) Create a Partner Procedure for the Commissionees
Transaction Code: VOPA
4) Create New Customer Account Group(s) for Commission Agents
Transaction Code: OVT0
5) Assign the Partner Functions to the Customer Account Group(s)
Transaction Code: VOPA
6) Assign the Partner Functions to the Partner Procedure for the Sales Document Header
Menu Path: Tools ->; Business Engineer ->; Customizing ->; Sales and Distribution ->; Basic Functions ->; Partner Determination ->; Define Partner Functions
Transaction Code: VOPA
7) Assign the Partner Functions to the Partner Procedure for the Sales Document Item (OPTIONAL)
Transaction Code: VOPA
8) Edit the Pricing Communication Structure (KOMKAZ) to Hold the New Functions (Client Independent)
Transaction Code: SE11
9) Edit MV45AFZZ – userexit_pricing_prepare_tkomk (Client Independent)
Transaction Code: SE38
10) Edit RV60AFZZ - userexit_pricing_prepare_tkomk (Client Independent)
Transaction Code: SE38
11) Edit MV45AFZB - userexit_new_pricing_vbkd changing new_pricing (Client Independent)
Transaction Code: SE38
The following code should be inserted into program MV45AFZZ to allow the system to re-execute pricing if the user makes a change to the relevant partner function (alteration, addition, deletion).
13) Add the KOMKAZ Fields to the Pricing Field Catalog (Client Independent)
Transaction Code: OV24
14) Create Condition Tables (Client Independent)
Transaction Code: V/03
15) Create an access sequence containing the new tables (Client Independent)
Transaction Code: V/07
16) Create a new condition type
Transaction Code: V/06
17) Add the Condition Type to the Pricing Procedure
Transaction Code: V/08
11) Create Commsission Report ZZCOMMISSION (Client Independent)
Transaction Code: SE38
With Compliments by: Kamles
Fast Links:

SD Questions About Pricing Condition
The Most Important Tips in Pricing For SAP SD Module to crack interviews...
Whenever we define our pricing procedures, we remain least interested in creating our own Condition Types,Condition
 Tables & Access Sequences. What we do is, we just define our own pricing procedures by using the existing condition types (i.e: PR00, K004, K007, KA02, KF00 etc.) & then assign that Pricing Procedure with " Sales Area, Document Pricing Procedure & Customer Pricing Procedure " . 
After that we put the values against each Condition Types, mentioned in our Pricing Procedure by using the T-Code "VK11". But we also need to know about the Condition Tables, Condition Types & Access Sequence Creation. So for that purpose we have to use the following T-Codes respectively : "V/05", "V/06" & "V/07". Now it will become easy to create the same.
Also to inform that, using T-Codes is more smarter than following paths through IMG screen. 
Utsav Mukherjee - utsavmukherjee143@hotmail.
What is the difference of VK11 and VK31 (condition records)?
My condition type is PR00 and Access sequence is PR02.  And in this access sequence table 304 is available.  Now when I was entering the PR00 in VK31 it shows error Table 304 is not defining for the condition type PR02.  But when I was entering the PR00 at VK11 it is accepting it.
Difference between VK11 and VK31 - if you go through the menu path you will get the vk 31 as condition record from the tamplets whereas vk11 as simple condition record.  In VK11 you can store condition record for more than one condition
type.  This means you can have same condition record for different condition types.This feature is given to enhance the system's performane and not to create the duplcation of the work for each condition type. 
Again system is not allowing to store the record in the vk31 for the condition type pr00 and access sequence pr02.This is because if you see this ac seq cointains two accessses 20 and 30 having the same table no.But you see there is the difference between the technical view of it for transfering the data from document field and condition field,so you can not maintain the data at VK31.
What is the difference between Header condition and Item condition?  I know item condition applies to each item in a sales document.  Header condition can only be applied to an entire document.
Difference between header and item condition - as YOU CORRECTLY SAID HEADER CONDITION IS APPLICABLE FOR THE WHOLE DOCUMENT where as item is for item.Ex-Say fright is dependent on the total weight of all the items in the documents then header condition adds on weights of all items and calculates the record accordingly. 
You have two different types of the header conditions.
a) In one you can duplicate the same value throughout the document for each item.Say discount 2% at header level which is also applicable to all the items
b)Second is the accumulation of the values of all the item at the header level,as earlier explained for the weight/fright.
These differenes are controlled through the indicator of group condition in the cond.type configuration.
And so obviously header condition can not have the condition record and hence access sequence.
SAP SD Tips by : Vishwajit
Disallowing Condition Types - How I can accomplish the following: 
Be able to DISALLOW Z0BP Condition type to be negative ( Invoice Block) 
You can modify condition type from customising; 
Sales and Distribution->Basic Functions->Pricing->Pricing Control->Define Condition Types->Maintain Condition Types 
Change condition type ZOBP's plus/minus indicator to "A" which means only positive is allowed.   *-- Arvind Rana 
In pricing procedure there are column such as requirement, sub total altclty, altbv, accurals. What are these and where we calculate all these values which we put. 
1. Requirement: Denoted by nos and maintained in VOFM, this is a condition required for a particular condition type  to be executed. Eg. PR00: req 2 ie item relevant for pricing
      VPRS/EKO1: req 4 ie cost
      Rebate BAO1 Req 24/Req 25  etc
2. Subtotal: this represents where a which table a value is stored, which can be processed for further calculation.
Eg. for PR00, if this value is to be used for credt check of a customer, we mark the subtotal as A.
3 Alternate Calculation type: this is also denoted by numbers and maintained in VOFM. Eg. Suppose for 45 units , each unit is charged $100 per unit, the order value comes out to be $4500, that is calculation is done as per unit price, if the client wants calculation type  to be based on volume or wieght, alternate calculation type can be configured.
4. Alternate base value: Denoted by no. and maintained in VOFM.
Eg, if the pricing scale is maintained and pricing for 45 units comes under the scale of $100 per unit., the base value is 45 units, but if the client wants a standard base value in some casesto be assumed inspite of maintaining the scale, an alternate base value is confihured, that is the base value based on which the order value is to be calculated changes.
5. Accruals: Accruals are maintained for rebate agreements, it constitutes the total accumulated value which customer has earned through rebate, one the rebate for certain amount is settled the amount from the accruals get deducted.
Add a Field To New Condition Table in Pricing
Add a field to a new condition table in Pricing (Condition Technique):-
I will explain you the process with below example...Please follow steps in below sequence-
Try to add the filed from the field catalog.  In case the required combination field is not there, you can add the field through the following process to filed catalog and create the condition table.   It is most common that one or other time we need to use this function while configuring multi tasking & complex Pricing Architecture.
Here I'm 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:
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:
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
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.           *-- Manoj Mahajan

Billing cannot be Release to Accounting
This SAP message will appear if the system is unable to find the G/L codes match from the configuration in transaction VKOA
No account is specified in item 0000001001
Message no. F5 670
No account was specified for account type "S" in item "0000001001" of the FI/CO document.
System Response
The Financial Accounting program cannot process the document.
A system error has probably occurred in the application you called up. Check the data transferred to item "0000001001" of the FI/CO document.
Assuming that one of the key combination is Account Assignment Group, you will have to check whether have the Account Assignment Group been input in the Customer Master (Billing tabstrips - Accounting sections - Field name: Acct assgmt group).
The Account Assignment Group will be copied automatically into the sales order.
Check whether the configuration in transaction VKOA have been done correctly.
Check whether the sales order (VA03 - Goto - Header - Financial Accounting - Field name: AcctAssgGr) have been filled in automatically.
Check whether the billing document (VF03 - Goto - Header - Header - Field name: AcctAssgGr) have been filled in automatically.
If the customer master have not been maintained and the user have already input the sales order, then the user will have to maintained the Account Assignment Group manually either in the sales order or the billing documents.
Take note for One Time Customer, the user have to input the Account Assignment Group manually into the sales order.  One Time Customer can be used by many customer, therefore, the system will not be able to determine the Account Assignment Group manually.

Default Start Variant for VF04
There are two types of variant in VF04.
One is the selection variant before clicking the Display Billing List Button.
You can set the start variant via SE93 using the Change mode.
The second variant is the Billing Layout display variant. 
This is after clicking the Display Billing List Button.
After creating your layout display variant, you can set it by clicking :-
Settings ->
           Display Variant
                             ->  Administration
Select the layout display variant you want and click :-
Edit ->
        Define default settings
Best regards,
Condition Exclusion which will be determined in the billing document
The system can exclude conditions so that they are not taken into account during pricing.
For example:
Material 4711 costs 150 USD. Some customers receive a discount of 10 USD per 100 pieces.
However, a specific customer can buy the material for 100 USD. Since this is a particularly good price, the customer should not also have a discount of 10 USD per 100 pieces. Therefore, this discount is to be excluded from pricing.
To create a condition exclusion procedure which will be determined in the billing document.
Assign the procedure to the pricing schema, and maintain copy control so that pricing is not copied from Sales Order.
To achieve this, copy the standard pricing to a ZXXXX Pricing.
Define new document pricing procedure in SM30 - V_TVKV for billing.
Assign new document pricing procedures to billing types in SM30 - V_TVFK_PR
Define the Condition Exclusion Groups in OV31.
Assign the Condition type for the Condition Exclusion Groups in OV32.
Assign the Billing Pricing Procedure in VOK8 for the Condition Exclusion Groups.
When billing document is being created just enter manually your new price and the pricing program logic will include only the higher price one, excluding the rest that are lower price.
Related Topics:
Create/Modify Billing Document Type
Steps for creating new or changing existing Billing Doc Type
Get help for your SAP SD problems
Do you have a SAP SD Question?
SAP SD Books
SAP Sales and Distribution, Certification, Interview Questions Reference Books
SAP Sales and Distribution Tips
SAP SD Discussion Forum and Sales/Distribution Tips
Steps for creating a new or changing an existing Billing Document Types
Create/Change your Billing types configuration in VOFA.
Some of the IMG stuff are :-
1) To block automatic transfer of the billing document to accounting, mark the field.
    Indicates whether the system blocks automatic transfer of the billing document to 
   During document processing, you can manually transfer blocked billing documents to 
   accounting by selecting:
   Billing -> Change -> Release accounting
2) Account determination procedure
3) Output determination procedure etc. ...
After customizing, use transaction VCHECKVOFA to check your configuration :-
1) Proforma billing types: If it is a proforma billing type, (VBTYP = U), the field must 
    be blank and the account determination procedure must be empty.
2) Cancellation billing document types: : A check is made to see if the cancellation 
    billing document type has the right VBTYP. An F2 invoice, for example, (VBTYP 'M') 
    can only be canceled with billing type S1 with VBTYP 'N' . A billing type with 
    VBTYP '5' can only be canceled with the VBTYP '6' and vice versa.
3) Cancellation billing document type partner functions A check is made to see if the 
    cancellation billing document type partner functions are empty or if those that 
    correspond to the billing type used are empty.
Next, make sure that you maintain the copy control for the Billing Types:
Sales documents in VTFA
       Target               Source
e.g.  F1 - Invoice        OR - Standard Sales Order
        F1 - Invoice      ZOR - Your Sales Order
Billing documents in VTFF
e.g.  G2 - Debit Memo    F1 - Invoice
        G2 - Debit Memo    F2 - Invoice
Deliveries in VTFL 
e.g.  F1 - Invoice       LF - Delivery
       F1 - Invoice      ZOR - Your Delivery
Usually for copy control, you let the rest of the settings remains as SAP defaults.
You only assign the new Billing Document Types.
After that use transaction VCHECKTVCPF to check your Copy control customizing.
Related Topics:
Integration between SD, MM, FI
Link Between SAP SD, MM & FI
Get help for your SAP SD problems
Do you have a SAP SD Question?
SAP SD Books
SAP Sales and Distribution, Certification, Interview Questions Reference Books
SAP Sales and Distribution Tips
Billing Block will not worked if you did not assign it
Define the possible block indicators in SM30 - V_TVFS 
allocate them to the billing types concerned in SM30 - V_TVFSP.
Your Billing Block will not worked if you did not assigned it to the desired billing types.
You can auto block by :- 
1.  sales document type in transaction VOV8, fields Billing Block,
2.  item categories in SM30 - V_TVAP, by filling the fields Billing Block.
Billing Plan for Milestone Billing
Milestone billing means distributing the total amount to be billed over multiple billing 
dates in the billing plan. 
As each milestone is successfully reached, the customer is billed either a percentage of 
the entire project cost or simply a pre-defined amount.
During sales order processing, the system determines from the item category whether a 
billing plan is required and, if so, which type of plan
The type of billing plan that is determined at this point is set up in Customizing and 
cannot be changed in the sales document. 
Billing plans for periodic billing and milestone billing plans for project-related milestone 
billing have different overview screens so that you can enter data relevant to your 
For example, for milestone billing, you must be able to enter data to identify the 
individual milestones.
IMG configuration requires :-
1.  Maintain billing plan types for milestone billing in OVBO.
2.  Define date description in SM30 - V_TVTB.
3.  Maintain Date Category for Billing Plan Type IN OVBJ.
4.  Allocate date category in SM30 - V_TFPLA_TY.
5.  Maintain date proposal for Billing Plan Type in OVBM.
6.  Assign Billing Plan Type to Sales Documents Type in OVBP.
7.  Assign Billing Plan Type to Item Categories in OVBR.
8.  Define rules for determining the date in OVBS.
Milestone billing is typically used for billing projects, such as plant engineering and 
construction projects. Such projects often include a series of milestones that mark the 
completion of different stages of the work. In the SAP R/3 System, milestones are defined 
in a network along with planned and actual dates for the completion of work. The milestones 
are also assigned to the billing dates in the billing plan. 
Each milestone-related billing date is blocked for processing until the Project System 
confirms that the milestone is completed.
Delivery-relevant order items for which a milestone billing plan applies are billed on the 
basis of the requested delivery quantity and not on the total of the confirmed quantities.
The connection between the project and the sales document item is made in the individual 
schedule lines of the item. Each schedule item can be assigned to a network in a project.
To display the project-related data for a schedule line, proceed as follows:
In one of the overview screens of the sales document, select 
1.  Item -> Schedule lines.
2.  Mark the schedule line and select Procurement details.
The following figure shows an example of milestone billing where only the Contract have
been billed :
Order  Item  Turbine    100,000
Billing Plan
Billing date Description    %  Value  Billing Block   Milestone   Billing Status
01-10-94     Contract      10  10,000      -             x           x  
01-03-95     Assembly      30  30,000      x             x           
01-04-95     Maintenance   30  30,000      x             x
01-05-95     Acceptance    30  30,000      x             x
01-06-95     Final invoice ..    ..        x
Milestone    Estimate      Actual
Assembly     01-03-95      01-03-95
Maintenance  01-04-95      
Acceptance   01-05-95
For each billing date in a milestone billing plan, you can specify whether the billing 
date is:
1.  fixed 
2.  always updated with the actual date of the milestone 
3.  updated with the actual date of the milestone, if the date is earlier than the 
    planned billing date for the date 
SAP Billing - Combine Billing for deliveries with different date
When using transaction VF04 or Billing (background), the date of the billing document (e.g. the current date) must be entered (In VF04 : settings, default data.)
In VF06 or background: variant with parametrization) to avoid an unwanted split due to the billing date.
This OSS notes is very helpful :-
11162 - Invoice split criteria in billing document
36832 - Invoice split in fields from the sales order
Best regards,
Billing Spilt by Item Category
Is it possible to split invoice Item category wise. I mean  If in sales order there is TAN and TANN then the invoice should split,is it possible?
Yes, it is possible. Create a modification of copy control routine for billing and use VBAP-PSTYV as an additional split criteria there.
Martishev Sabir
Thank you for your reply.  Can you please tell me the exact steps what should I add under that(additional split criteria).
In trx VTFA (if your billing is sales order based) choose your billing type and SO type, there select your item categories and there select the field VBRK/VBRP data. In that field you will see the currently used routine. With the help of your ABAP guy create a copy of that routine under a different number and add your lines of code. Let's say you use routine 001. 
* Header data
* VBRK-xxxxx = ............
* Item data
* VBRP-xxxxx = ............
* Additional split criteria
MODUL(3) VALUE '001',
This is how it should look after modification:
* Header data
* VBRK-xxxxx = ............
* Item data
* VBRP-xxxxx = ............
* Additional split criteria
MODUL(3) VALUE '001',
ZUK-PSTYV = VBAP-PSTYV.   <- New line

After this routine is created and activated place it as the default copy control routine instead of the old ones.
Martishev Sabir
Fast Links:
Dunning Process In Credit Management
Explain about dunning process in credit management?
Let me explain in simple terms:
1) You have a Customer which you had felt, he is doing good business and supplied material on Credit of 45 days.
2) Since this customer is good as you felt, you have not managed Credit Checks as well. So, he had comfortably reached to the fullest credit (or even more) which you can afford for any customer.
3) One fine day you got realised that, there is very bad debt with this customer and need to recover from him and till then, there will be no further supply to the customer.
4) Your company's legal department has laid a policy that, inorder to recover any bad debts, like:
a) We will send a normal payment reminder.
b) In case customer doesnt respond, we will send at least further reminder (dunning notice) may be 9 times 
    (9 reminders) (Dunning level) and what intervels of time (dunning frequency) 
c) Still if the customer doesnt resopond for the reminders, you will file a law suit against the customer for recovering
    the Payments.
d) Finally, after getting veridict, you may proceed for auction of his property or as per the order for Law.
Now in SAP, the definition of Dunning procedure is a pre-defined procedure specifying how customers or vendors are dunned.
For each procedure, the user defines
- Number of dunning levels 
- Dunning frequency 
- Amount limits 
- Texts for the dunning notices 
In SAP, you will maintain the Dunning Procedure at customer master.  Referring to this your SD Team / FI Team (user team) will effect Dunning
PS: You might remembered the dunning procedure laid by Relaince Mobile, sometime back, sending street rowdies for recovering the bad debts from users. That is dunning. Remember Reliance, you will not forget dunning forever.
Tips by : Kumar
Restricting Number Of Items In Billing Doc
How I can restrict number of items in an invoice? 
If I enter more than 8 items in a sales order and those items get copied into delivery doc then to billing doc.  But our client want to restrict number items to 8 (max) in an invoice.
You can restrict delivery with delivery tolerance, thereby causing invoicing of the desired.
Go to SPRO>>>IMG>>>Sales & Distribution>>>Billing>>>Billing Documents>>>Country-specific features>>>Maintain Maximum No. Of Billing Items.
This is where you can define a maximum number of items allowed for all billing documents within a given sales organization.
However, maintaining data here is not enough alone to bring about a billing split by number of billing items. 
You must also go to copying control for order/delivery to billing document at item level under "Data VBRK/VBRP" and maintain routine 006 "individual invoice limited" or a similar routine that accesses the data maintained here.
SAP SD Tips by : Amol
How To Do Configuration For Credit Management
Credit and risk management takes place in the credit control area. According to your corporate requirements, you can implement credit management that is centralized, decentralized, or somewhere in between. 
An organizational unit that represents the area where customer credit is awarded and monitored.   This organizational unit can either be a single or several company codes, if credit control is performed across several company codes. One credit control area contains credit control information for each customer.
For example, if your credit management is centralized, you can define one credit control area for all of your company codes. 
If, on the other hand, your credit policy requires decentralized credit management, you can define credit control areas for each company code or each group of company codes. 
Credit limits and credit exposure are managed at both credit control area and customer level.  You set up credit control areas and other data related to credit management in Customizing for Financial Accounting. The implementation guide is under Enterprise Structure -> Definition or Assignment -> Financial Accounting and then Maintain credit control area. You assign customers to specific credit control areas and specify the appropriate credit limits in the customer master record.
Tips by : Kapilaa
Settings for determining the credit control area of a document.  The settings of items 1 - 4 are taken into account according to their priority.  The credit control area found is stored in field VBAK-KKBER.
1. Transaction OB38
   Check which credit control area is assigned to the company code.
   Company code:
   Credit control area:
2. Transaction OVFL
   Check which credit control area is assigned to the sales area.
   Sales area:
   Credit control area:
3. Transaction XD02 or VD02
   Check which credit control area is assigned to the payer.
   Credit control area:
4. Transaction SE37
   Is user exit EXIT_SAPV45K_001 being used?
5. Transaction OBZK
   For the settings under items 2 - 4, field "All company codes" must be marked in Transaction
   OB45, or the credit control area must be entered under the relevant company code in table
   T001CM of the credit control areas allowed.
   Company code:
   Credit control areas allowed:
6. Settings for the credit checks
7. Transaction OVAK
   Which settings do exist for the sales document type used?
   Sales document:
   Check credit:
   Credit group:
8. Transaction OVAD
   Which settings do exist for the delivery type used?
   Delivery type:
   Credit group for delivery:
   Credit group for goods issue:
9. Transaction OB01
   Credit management/Change risk category
   Definition of the risk category for each credit control area. This risk category can be
   assigned to a credit account by using Transaction FD32.
10. Transaction OVA8
    Here, the individual credit checks for key fields
    o credit control area
    o risk category
    o credit group are set. Take these key fields from the above settings and go to the detail
      screen. In particular, check whether fields "Reaction" and "Status/block" are set
      correctly. To carry out follow-up actions in case of a credit block, the credit check
      status must be set (field "Status/block").
11. Transaction FD32
    Credit master data for the payer of the relevant document.
    Credit account:
    Credit limit:
    Risk category:
12. Settings for updating the credit values Update of the credit values is required for the limit
    check (static or dynamic credit limit check).
13. Transaction OVA7
    Update of the credit value is active for the corresponding item type if the check box is marked. This field corresponds to 
    field "Active receivable" in Transaction VOV7.
    Item type: 
    Active receivable:
14. Transaction V/08, Pricing
    In the pricing procedure used for pricing, subtotal "A" must be entered in a line for
    determining the credit value (mark the pricing procedure and doubleclick on "Control").
    Usually, the net value plus taxes is used. This way the system is determined to use this
    subtotal for credit pricing. The credit price is stored in field VBAP-CMPRE and used for
    update and credit check.
    You can find the used pricing procedure of the order under "Item -> Condition -> Analysis".
    Pricing procedure:
    Line with subtotal = 'A':
15. Transaction OB45
    Which update group (field "Update") do you use in the relevant credit control area? The
    default setting is "12". If you use another update group, check whether this is fine with
    you. If you open an OSS message, please tell us the alternative update group.
    Credit control area:
16. Transaction OMO1
    Which kind of update did you choose for structure S066? 
     In any case, "Synchronous update (1)" has to be chosen as the kind of update. 
     All other settings will lead to errors.

MRP block for Credit limit attained Customers 
How to block the requirement (MD04) generated by the item category in a sales order when the customer has attained the credit limit?  The MRP requirements still appear even though the schedule is zero.
You should try and use one of the standard requirements. 
See in transaction "VOFM". 
Under Requirements / Subsequent Functions / Reqs.Availablity. 
Try using routine 103, you may have to tweak if it doesn't work exactly as you'd like. 
For example, you can write a routine 903 because you only wanted this reaction for certain business units. Irregardless, using a routine similar to this will prevent the requirement from appearing in MD04 for orders blocked on credit
MESSAGE I706(Z1). 
*{ INSERT DEVK966908 1 
* Read the subsequent function information for the message 
*{ INSERT DEVK966908 2 
Do you have a SAP SD Question?
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Credit Mgmt Dynamic checking
-----Original Message-----
Subject: Credit Mgmt Dynamic checking 
From: Richard Dragani
Hi credit experts,
Does anyone know how I can automatically re-execute a dynamic credit check a few days prior to shipment for future dated sales orders. Any ideas would be appreciated. 
Rich Dragani
-----Reply Message----- 
Subject: Re: LOG: Credit Mgmt Dynamic checking
From: Swami Subramanyan
Program RVKRED08? Or manually execute function module SD_ORDER_CREDIT_RECHECK.
-----Reply Message----- 
Subject: Re: Credit Mgmt Dynamic checking
From: Leslie Paolucci
We check credit at the time of the delivery (at delivery creation and before picking) and use the blocked sales doc process/list to release them. This can be set up in customizing under risk management-> credit management. 
-----End of Reply Message----- 
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Sales value field in not getting updated after creating the billing
-----Original Message-----
Subject: Sales value field in not getting updated after creating the billing
we are on 4.6b. we are going for credit management but facing one problem. in fd32-
customer credit management change - the sales value feild in not getting updated after
creating the billing. 
eg. when i create the order - the order value get updated in the sales value in fd32. after
creating the delivery - that value remains same in the feild of sales value. but when i am
going for billing (delivery related), the bill value is appearing in 'receivables' but the amount
in 'sales value' is not getting reduced. because of this the credit exposure is increasing
update group for corrosponding credit ctrl area is 12. also the item is mark for credit
can anyone tell the missing link? 
thanking in advance 
-----Reply Message-----
Subject: RE: Sales value field in not getting updated after creating the billing
You need to check couple of settings like: 
1. Your customer should be assigned the credit control area. 
2. In your Item Category Credit should be active. 
-----Reply Message-----
Subject: RE: Sales value field in not getting updated after creating the billing
customer is assign to concorn CCA and item category is mark for credit active
-----Reply Message-----
Subject: RE: Sales value field in not getting updated after creating the billing
Check the credit update group in the transaction OB45. The credit update group controls
when the values of open sales orders, deliveries and billing documents are updated. It
should be '000012'. 
Further also refer to the OSS note 18613. 
Have fun 
-----End of Message-----
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Difference Between Simple and Automatic Credit Check Types
Explain in detail difference between simple and automatic credit check types.  In automatic check, difference between static and dynamic checks.
It Considers the Doc.Value + Open Items.
Doc.Value : Sales Order Has been saved but not delivered 
Open Item : Sales Order has been saved , Delivered, Billed & Transfered to FI, but not received the payment from the customer. 
Eg: Customer Credit Limit is  Rs.1,00,000/-
      Suppose Doc.Value + Open Item Value is Rs.1,10,000/-
Here credit limit exceeds then system reacts.
Options : A) Warning Message
          B) Error Message (Sales Order won't be saved)
          C) Error Message with Delivery Block 
AUTOMATIC CREDIT CHECK : Give extra credit facilities to the particular customer.
STATIC CREDIT LIMIT DETERMINATION :Checking Group + Risk Catageory + Credit Control Area.
A) Credit Checking Groups : Types of Checking Groups.
  01) Sales
  02) Deliveries
  03) Goods Issue
At all the above 3 levels orders can be blocked.
B) Risk Catageory : Based on the risk catageories company decide how much credit has to give to the customer.
MEDIUM RISK(0003) : Average Credit  
Static Credit Check it checks all these doc value & check with the credit limit
1) Open Doc.Value / Sales Order Value : Which is save but not delievered
2) Open Delivery Doc.Value : Which is delivered but not billed
3) Open Billing Doc.Value : Which is billed but not posted to FI
4) Open Item : Which is transfered to FI but not received from the customer.
                                                   2) Open Delivery
                                                   3) Open Billing
                                                   4) Open Items
                                                   5) Horizon Period = Eg.3Months
Here the System will not consider the above 1,2,3& 4 values for the lost 3 months
Then assign the Sales Doc & Del Documents.
Sales Doc.Type(OR) + credit Check(0) + Credit Group (01)
Credit Limit Check for Delivery Type : Del.Type (LF) + Del Credit 
Group  (02) + Goods Issue Credit Group (03)

Set Up for Credit Card Payment Processing
Given below is the set up for credit card payment processing:
Set Up Credit Control Areas:
Define Credit Control Area
Transaction: OB45 
Tables: T014
Action: Define a credit control area and its associated currency.  The Update Group should be ‘00012’.  This entry is required so the sales order will calculate the value to authorize
Assign Company Code to Credit Control Area
Transaction: OB38
Tables: T001
Action: Assign a default credit control area for each company code
Define Permitted Credit Control Area for a Company
Tables: T001CM
Action: For each company code enter every credit control area that can be used
Identify Credit Price
Transaction: V/08
Tables: T683S
Action: Towards the end of the pricing procedure, after all pricing and tax determination, create a subtotal line to store the value of the price plus any sales tax.  Make the following entries:
Sub to:  “A”
Reqt:  “2”
AltCTy:  “4”
Automatic Credit Checking
Transaction: OVA8
Tables: T691F
Action: Select each combination of credit control areas, risk categories and document types for which credit checking should be bypassed.  You need to mark the field “no Credit Check” with the valid number for sales documents.
Set Up Payment Guarantees
Define Forms of Payment Guarantee
Transaction: OVFD
Tables: T691K
Action: R/3 is delivered with form “02” defined for payment cards.  Other than the descriptor, the only other entry should be “3” in the column labeled “PymtGuaCat”
Define Payment Guarantee Procedure
Tables: T691M/T691O
Action: Define a procedure and a description. 
Forms of Payment Guarantee and make the following entries Sequential Number  “1” 
Payment Guarantee Form “02”
Routine Number   “0”    Routine Number can be used to validate payment card presence.
Define Customer Payment Guarantee Flag
Tables: T691P
Action: Define a flag to be stored in table. 
Create Customer Payment Guarantee = “Payment Card Payment Cards (All Customers can use Payment Cards)”.
Define Sales Document Payment Guarantee Flag
Tables: T691R
Action: Define the flag that will be associated with sales document types that are relevant for payment cards
Assign Sales Document Payment Guarantee Flag
Tables: TVAK
Action: Assign the document flag type the sales documents types that are relevant for payment cards.
Determine Payment Guarantee Procedure
Transaction: OVFJ
Tables: T691U
Action: Combine the Customer flag and the sales document flag to derive the payment guarantee procedure
Payment Card Configuration
Define Card Types
Tables: TVCIN
Action: Create the different card types plus the routine that validates the card for length and prefix (etc…) 
Visa , Mastercard, American Express, and Discover 
Create the following entries for each payment card 
AMEX  American Express ZCCARD_CHECK_AMEX Month
DC  Discover Card  ZCCARD_CHECK_DC  Month*****
MC  Mastercard  ZCCARD_CHECK_MC  Month
The Routines can be created based on the original routines delivered by SAP. 
*****SAP does not deliver a card check for Discover Card. We created our own routine.
Define Card Categories
Tables: TVCTY
Action: Define the card category to determine if a
payment card is a credit card or a procurement card.
Create the following two entries
Cat Description  One Card  Additional Data
CC Credit Cards  No-check  No-check
PC Procurement Cards No-check  Check
Determine Card Categories
Tables: TVCTD
Action: For each card category map the account number range to a card category.  Multiple ranges are possible for each card category or a masking technique can be used.  Get the card number ranges from user community.  Below is just a sample of what I am aware are the different types of cards. 
Visa Credit  Expires in 7 days. 
    400000   405500
    405505   405549
    405555   415927
    415929   424603
    424606   427532
    427534   428799
    428900   471699
    471700   499999
 Visa Procurement  Expires in 7 days.
    405501   405504
    405550   405554
    415928   415928
    424604   424605
    427533   427533
    428800   428899
 Mastercard Credit Expires in 30 days
    500000   540499
    540600   554999
    557000   599999
 Mastercard Procurement Expires in 30 days
    540500   540599
    555000   556999
 American Express Credit Expires in 30 days
    340000   349999
    370000   379999
 Discover Card Credit Expires in 30 days
    601100   601199
Set Sales Documents to accept Payment Card Information Transaction: 
Tables: TVAK
Action: Review the listing of Sales Document types and enter “03” in the column labeled “PT” for each type which can accept a payment card
Configuration for Authorization Request
Maintain Authorization Requirements
Transaction: OV9A
Tables: TFRM
Action: Define and activate the abap requirement that determines when an authorization is sent.  Note that the following tables are available to be used in the abap requirement (VBAK, VBAP, VBKD, VBUK, and VBUP).
Define Checking Group
Tables: CCPGA
Action: Define a checking group and enter the
description.  Then follow the below guidelines for the remaining fields to be filled.
AuthReq Routine 901 is set here.
PreAu  If checked R/3 will request an authorization for a .01 and the authorization will be flagged as such. (Insight does not use pre-authorization check).
A horizon This is the days in the future SAP will use to determine the value to authorize
(Insight does not use auth horizon period).
Valid  You will get warning message if the payment card is expiring within 30 days of order entry date. 
Assign Checking Group to Sales Document
Tables: TVAK
Action: Assign the checking group to the sales order types relevant for payment cards
Define Authorization Validity Periods
Tables: TVCIN
Action: For each card type enter the authorization validity period in days.
AMEX American Express 30
DC Discover card  30
MC Master card  30
VISA Visa   7
Configuration for clearing houses
Create new General Ledger Accounts
Transaction: FS01
Action: Two General Ledger accounts need to be created for each payment card type.  One for A/R reconciliation purposes and one for credit card clearing.
Maintain Condition Types
Transaction: OV85
Tables: T685
Action: Define a condition type for account determination and assign it to access sequence “A001”
Define account determination procedure
Transaction: OV86
Tables: T683 / T683S
Action: Define procedure name and select the procedure for control.  Enter the condition type defined in the previous step.
Assign account determination procedure
Action: Determine which billing type we are using for payment card process.
Authorization and Settlement Control
Tables: TCCAA
Action: Define the general ledger accounts for reconciliation and clearing and assign the function modules for authorization and settlement along with the proper RFC destinations for each.
Enter Merchant ID’s
Tables: TCCM
Action: Create the merchant id’s that the company uses to process payment cards
Assign merchant id’s
Tables: TCCAA
Action: Enter the merchant id’s with each clearinghouse account

Implement the Product Allocation Functionality
We are required to implement product allocation functionality in SAP R/3 (Enterprise Version). 
We tried to do the elaborate steps as per the implementation guide but are not successful. Can you kindly help by giving the simple steps for implementation. 
Please see if the following helps: 
Configuration Overview; Allocation Specific Usage 
1.Allocation Procedure (OV1Z) The product allocation procedure is the parent of the entire allocation process. All materials that are to be included in the allocation scheme are required to have an allocation procedure assigned to it in the material master. In addition, as of release 4.0, it is in the procedure that the method of allocation is defined. The user has the opportunity to set an indicator to identify their choice of two different methods (discrete and cumulative allocation) to evaluate the quantities to be considered for product allocation. 
2.Allocation Object (OV2Z) The allocation object is the root level of the allocation process where actual data is entered and planned in LIS. The object allows the user to further break down a procedure into smaller parts for future validation of components comprising a specific material 
3.Allocation Hierarchy Mapping (OV3Z) Primarily, this transaction permits the assignment of an allocation procedure to an LIS information structure. Secondly, a character is assigned to the information structure to permit collective planning. Finally, the user can assign a step level to the procedure and information structure to sequence the order in which allocation quantities are checked. This functionality allows the user the opportunity to check product allocation against several product allocation scenarios, before the required quantity is confirmed 
4.Define Consumption Periods (OV5Z) The allocation consumption periods functionality is only valid if the allocation method flag has been set (OV1Z). If you have de-selected the method field, this functionality is not available. The consumption window indicates the number of past and future periods to be used in the allocation check. 
5.Control Product Allocation (OV4Z) In order for the allocation process to function properly, allocation control records are created primarily to map allocation procedure steps to their corresponding objects so that the allocation data records can be located for validation. Secondly, validity periods must be established to indicate when the allocation control records are active. Finally, the user has the option of establishing a conversion factor per allocation control record to accommodate BOM listings of constrained materials 
6.Activate Allocation for Requirement Class (OVZ0) In order to turn on allocation in the standard order processing functionality, the requirements class must have a flag indicating that allocation is relevant. 
7.Activate Allocation for Schedule Line Category (OVZ8) In order to turn on allocation in the standard order processing functionality, the schedule line must have a flag indicating that allocation is relevant 
8.Create Planning Hierarchy (MC61) In order to adequately establish allocation quantities, the user must initially determine the level at which the allocation is to take place and the aggregation factor of the allocation quantities. In this step, the levels for the collective allocation search procedure are also identified. 
9.Generate Masking Character (OV7Z) Upon completion of the level determination for the planning hierarchy, the collective allocation masking character must be generated to allow aggregation indicators to be established. This transaction simply reads the hierarchy established in the planning table and then generates a collective mask character for each level of the hierarchy 
10.Modify Planning Hierarchy (MC62) This step is a repeat of MC61 where the initial hierarchy was established. In order to complete the hierarchical set up, the collective allocation (mask character) hierarchy must now be maintained with the appropriate aggregation factors 
11.Allocation Procedure Assignment to Material Master (MM02) At the root level of the allocation process are the materials. Each material that is to be considered in allocation scenario must be mapped to an allocation procedure. In order entry, then, when a material is entered with a valid allocation procedure in the material master, the allocation data is verified prior to confirming the line item ordered 
12.List of Suitable Structures (OV9Z) This report is used to identify potential LIS information structures that can be used in the product allocation process. This report simply reads through the data dictionary and selects all the active information structures that contain the field product allocation object (KONOB) as the first field. This data can then be utilized in the mapping transaction (OV3Z) to link the allocation procedure step to an information structure (previous step).
Fast Links:
Get help for your SAP SD problems
Do you have a SAP SD Question?

Sending a billing document by e-mail
First, your SAP system must be configure by the basis people in order for you to send an external mail. 
Whether it can send pdf or other file format will depends on the Mail Server you are using.
The basis people must also maintain the conversion parameters so that SAP knows how to convert the billing documents to be send as a pdf file or other desired format specified by your company.
Finally, you have define the IMG in Maintain Output Determination for Billing Documents (Output type MAIL) 
 SAP Customizing Picking Output
From Release 4.5A, the system does no longer display the actions for SD picking in the implementation guide.
If you want to use the picking list according to the "old" procedure,  you can maintain the list as follows:
 o  Carry out Transaction V/38 to maintain the output types.
 o  Carry out Transaction OVLT to assign the picking list types to the
     shipping points.
 o  Carry out Transaction V/53 to assign the picking lists to own
     forms and programs.
Program for Sales Order by Customer, Date, Sales
Sales Order by Organisation, Customer - To create the Sales Order by More no of Date's
User's can easily take the Report from this by selecting Different kinds like Customer Specific [And/Or] Sales Organisation Specific [And/Or] duration of date but Here Date is Mandatory Fields user must have to give date as a selection criteria
In Second level this report will interact with user where they can select date to see the full Details of Sales Order
- Sales Organisation
- Date
- Customer this will be usefull when Selecting the Checkbox
Standard Variants
- Output
- Sales Order
Date              SalesOrderNo   Material   Amount  Currency
10.01.2007   8530                  732         1000       INR
*& Report  ZCHE_SALES_ORDER                                            
*&--------Done by V.Chellavelu on 11.01.2007 
REPORT  zche_sales_order                        .
TABLES: vbkd,vepvg.",vbak,vbap,vbpa,vakpa, vapma.
      ch TYPE checkbox,
      vbeln LIKE vbak-vbeln, " sales document
      netwr LIKE vbak-netwr, "Net Value of the SalesOrder
      matnr LIKE vbap-matnr, "material no.
      waerk LIKE vbak-waerk, "curr.
      dat   LIKE vbak-erdat, "date.
      END OF sal.
DATA: amount LIKE vbak-netwr, date2(15),date3(8),date4(1),
DATA: lin LIKE sy-curow VALUE 1,"Screens, vertical cursor position at
                                 "PAI available in SYST struc.
      checkbox        TYPE c               ,
      dat LIKE vbak-erdat.
PARAMETERS: vkorg LIKE vepvg-vkorg,
            vtweg LIKE vepvg-vtweg,
            spart LIKE vepvg-spart.
SELECT-OPTIONS date FOR vbkd-bstdk DEFAULT sy-datum TO sy-datum
PARAMETERS: kunnr1 LIKE vbpa-kunnr.
IF chk1 <> 'X'.
  IF vkorg <> ''.
    PERFORM organisation.
    PERFORM organisation_else.
  IF vkorg <> ''.
    PERFORM cus_orga.
    PERFORM cus_orga_else.
* Displaying the contents which is selected from table by
*  -selection conditions
SORT sal BY dat.
LOOP AT sal.
  ON CHANGE OF sal-dat.
    IF sy-tabix = 1.
      WRITE: sy-vline, sal-ch AS CHECKBOX,sal-dat .
      CLEAR amount.
      WRITE:sy-vline, amount,/ sy-vline, sal-ch AS CHECKBOX,sal-dat.
      CLEAR amount.
  amount = amount + sal-netwr.
    WRITE:sy-vline, amount.
    WRITE:/ ' Total Amount:', sal-netwr UNDER amount.
**********************Interaction with report**************************
SET PF-STATUS 'BANU'. " To create Application ToolBar for Display 
*                          To verify Double click on BANU
AT USER-COMMAND. " This will execute after pressing Display Button
  CASE sy-ucomm.
    WHEN 'DISP'.
    free newsal.
        READ LINE lin FIELD VALUE sal-ch INTO checkbox.
        IF sy-subrc NE 0. EXIT. ENDIF.
        IF checkbox = 'X'.
          PERFORM datecon.
          PERFORM process.
        lin = lin + 1.
      PERFORM selection.
************************ SUB ROUTINE Area 
*This Process SubRoutine will assign the values from current
*   -InternalTable (sal) into other IT(newsal), by date which is
*         - selected by CheckBox
FORM process.
  LOOP AT sal WHERE dat = dat.
    newsal-ch    = 'X'.
    newsal-vbeln = sal-vbeln.
    newsal-netwr = sal-netwr.
    newsal-matnr = sal-matnr.
    newsal-waerk = sal-waerk.
    newsal-dat   = sal-dat.
    APPEND newsal.
ENDFORM.                    "process
*&---------This will display the values for selected dates from new --*
*---------------------internal Table (newsal)-------------------------*
*&      Form  SELECTION
FORM selection.
  WRITE:sy-vline,'Date',AT 14 sy-vline, 'Order NO', AT 27 sy-vline,
'Order Material', AT 48 sy-vline,'Order Value(AMT) Currency  '.
  LOOP AT newsal.
    ON CHANGE OF newsal-dat.
      IF sy-tabix <> 1.
        WRITE:/ sy-vline, AT 14 sy-vline,AT 27 sy-vline,AT 48 sy-vline.
    WRITE:/ sy-vline,newsal-dat,sy-vline,AT 27 sy-vline,AT 48 sy-vline.
     WRITE: sy-vline,newsal-dat,sy-vline,AT 27 sy-vline,AT 48 sy-vline.
    WRITE:/ sy-vline, AT 14 sy-vline,newsal-vbeln,sy-vline,
      newsal-matnr, sy-vline, newsal-netwr, newsal-waerk.
    AT LAST.
      WRITE:/ sy-vline, AT 15 'Total Amount for selected month:',
                    newsal-netwr UNDER newsal-netwr.
  lin = 1.
  FREE newsal.
ENDFORM.                    "SELECTION
* This Date convertion is must for pick the particular Date from the
*    -displayed line, and here we are reversing the Date like 
*  -because to Check or assign the date we need to give in reverse 
*&      Form  DATECON
*       text
FORM datecon.
  date2 = sy-lisel(17).
  WHILE date2 <> ''.
    SHIFT date2 RIGHT.
    date4 = date2+11.
    IF date4 <> '.'.
      CONCATENATE date4 date3 INTO date3.
  date5 = date3(2).
  date6 = date3+2.
  date3 = date3+4.
  CONCATENATE date3 date6 date5 INTO date3.
  dat = date3.
*  SORT dat BY dat.
ENDFORM.                    "DATECON
* Here we are doing different kinds of selections by the EndUser's 
*&---------When user selectiong an Sales Organisation-----------------*
*&      Form  ORGANISATION
*       text
FORM organisation.
  SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
      vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
f~vbeln = p~vbeln WHERE  p~audat IN date AND p~vkorg = vkorg.
    APPEND sal.
ENDFORM.                    "ORGANISATION
*&---------Without Sales Organisation i.e All Organisation------------*
*       text
FORM organisation_else.
  SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
    vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
    f~vbeln = p~vbeln WHERE  p~audat IN date.
    APPEND sal.
ENDFORM.                    "ORGANISATION_ELSE
*&------------When Selecting Customer by choosing CheckBox------------*
*&      Form  CUS_ORGA
*       text
FORM cus_orga.
  SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
        vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
       f~vbeln = p~vbeln WHERE p~audat IN date AND p~vkorg = vkorg AND
       p~kunnr = kunnr1.
    APPEND sal.
ENDFORM.                    "CUS_ORGA
*&------------Without Customer by without choosing CheckBox-----------*
*&      Form  CUS_ORGA_ELSE
*       text
FORM cus_orga_else.
  SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
    vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
f~vbeln = p~vbeln WHERE p~audat IN date AND p~kunnr = kunnr1.
    APPEND sal.
By Chellavelu .V -
Duplicate customer purchase order
If you are facing a problem with duplicate customer purchase order as your company does not allowed a same customer purchase order with the same sales order type.
You can activated the check for duplicate purchase order with "VOV8".
In the General Control Section, look for the field Check Purchase Order No and put in "A".
Best regards,
Default First Date is not Today
When end user created a new sales order with VA01, default First Date wasn't today, why? 
1. Before today, default First Date was always today. 
2. Nobody change system configuration. 
Although you mention that nobody change the system configuration, it is very unlikely that the system will mis-behaved after one day.
Usually, after checking, you will find that someone have actually change the configuration as it could not be a software bug since you have been using it for quite sometime without any problems.
The date is control by each Sales Order Type for each Sales Document type whether is it a 
- OR - Standard Order, 
- RE - Returns etc.
Verify the Sales order type configuration with the following path:
IMG: Sales and Distribution --> Sales --> Sales Docs --> Sales Doc Hdr --> Define Sales Doc Types (transaction vov8) will let you control this by sales document type. 
There is one field (Lead time in days) which "specify the number of days after the current date that the proposal for the requested delivery date in the sales document should be". 
This should be blank if you want the system to propose current day for delivery date. 
Auto proposed all the dates when creating Sales Order
How can I make the system auto create all the Sales Order date during creation?
Each Sales Order can have different date proposal settings.
Follows this step to set the default Sales Order Type proposal date:
- Goto VOV8, double click on sales order type. 
- Look and tick the fields Propose delivery date and Propose PO date.
After making the necessary IMG changes, you need to input the Delivery Plant field for each Materials that you want the system to propose the default date.
To change the Materials field Delivery Plant:
Goto MM02, Select the View Sales: Sales Org. Data 1 and fill in the Delivery Plant.
Now, try creating a new sales order for the material and SAP will auto proposed all the dates in the sales order.
Define whether the Material can be used at which Sales and Distribution process
Here you define how the system responds when entering a sales and distribution document 
with this material in the differenet Sales and Distribution Process Flow.. 
You can use the material status, for example, to prevent orders from being entered for 
parts to be discontinued.
To temporary block the creation of Sales Order for a certain materials.
Set the material status parameters in transaction SM30, Table Views  V_TVMS.
Click Maintain and double click into the Materials Status code.
You can set three types of reponse for each Sales and Distribution process :-
1.  no dialog 
2.  warning when entering the document 
3.  error message (that is, the sales and distribution document cannot be entered on 
     the basis of the material status) 
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Assign a Cost Center manually in a Sales Order (VBAK-KOSTL)
The Cost Center Determination settings is in OVF3 -  but there are some cases where the Cost Center must be exceptionally changed. 
If the document category for order type in IMG VOV8 is defined to be "I" which belong to order type FD - Deliv.Free of Charge, then the field cost center is active for input during transaction VA01
Alternatively, you can specify an order reason and assign a cost center to an order reason. 
However the standard SAP works only at the header level though, so it would not work if cost center is needed on the line item. 
The cost center are assign for such business transactions as :
- Free deliveries
- Returns
- Deliveries of advertising materials
You can also make cost center allocation dependent on the order reason, for example:
Order reason: Damage in transit
Order reason: Free sample
Both the IMG settings are done in transaction OVF3, either with/without the order reason.
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
 Sales and Distribution - Transfer of Requirements
The MRP department is informed about the quantities and deadlines by which incoming orders 
should be delivered. The system checks the availability of the goods based on the requested 
delivery date of the customer and creates MRP records which contain all necessary information 
for passing on to planning. It ensures that the goods are available in time for the delivery. 
Materials planning transfers the reported requirements and creates orders or purchase 
requisitions from them etc.
For controlling transfer of requirements, you have to carry out the following steps:
1. Each requirement type has to be allocated to one requirement class only.
2. The transfer of requirements must be switched on at requirements class level, the sales 
   documents at schedule line level.
3. You must define a check group. It is possible to have this check group proposed for the 
   initial creation of a material master record.
4. Note that a plant must exist for transfer of requirements to be carried out at document 
   item level.
OVZG      - Requirement class 
It specifies the following points:
- whether an availability check and a transfer of requirements is carried out for a 
  transaction (for sales documents, fine tuning using the schedule line category is possible),
- whether the requirements are relevant for MRP,
- the allocation indicator from the sales view which controls the settlement of customer 
  requirements with requirements 
- whether an item is to be settled to an auxiliary account assignment,
- the settlement profile,
- the results analysis key.
(Use transaction SM30 for V_* configuration)
OVZH      - Requirements type
V_TVEPZ_V - Assignment of requirement type to Transaction
V_TVEP_V  - Schedule line category 
OVZ2      - Define Checking Group
V_TMVFU   - Define the checking group that the system proposes when you create a new material 
            master record. You can overwrite the default value for the checking group in the 
            material master record.

Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Define Tax Determination Rules
You specify the valid tax types in transaction OVK1.  More than one tax type can be defined for a country by defining the sequence.
The SAP System determines the taxes automatically within pricing.
In the standard SAP R/3 System, the elements of tax calculation are predefined (for example, tax condition type "MWST" for taxes on sales and purchases).
Assign the plant for Tax Determination in OX10, using the country key, the SAP System recognizes which tax type is valid for a plant and thus which taxes are relevant when creating an SD document.
Define the Customer Taxes in OVK3, you will maintain the tax code in Customer Master.
Define the Material Taxes in OVK4, which will then be maintain in Material Master.
For example :-
MWST     GST            0    Tax Exempt
MWST     GST            1    Liable for Taxes
Now, you define the Tax Determination in VK12.
VK12 - Domestic Taxes/Export Taxes
Condition Type    MWST
Customer Taxes    Material Taxes     Rate Taxes
         0                              0                  0 %
         0                              1                  0 %
         1                              0                  0 %
         1                              1                  9 %
In this example, if both the Customer Master and Material Master Tax code is 1, Tax will be included when you create the Sales Order.
Tax Code in Customer Master / Sales Order
How can we maintain the Tax Code (Tax code - which we maintain in MWST Condtion Records) in Customer Master or in Sales Order?
There are few points which I would like to remind you:
1) MWST is a tax condition which is applied to customer to whom we are selling. The rate of tax is depend on various parameteres, whether is fully liable for tax or expemted (in case of Defence Customer)
2) There are few parameteres which we apply tax condition. Whether customer is tax liable? Whether material is tax exempted? 
For example, if you are selling a goods which are free for tax to any customer, put the Tax Indicator (at MMR as '0'). If your 
material is tax liable pur the Tax Indicator (at MMR as 1). If your customer is not liable for tax at all (like the case of Indian 
Defence organisations) put the Tax Indicator (at CMR as 0) or 1 in case fully tax liable.
3) Now, at VK11 you need to mainatain your pricning conditions with all the combinations like:
1 0
1 1
0 1
0 0
4) While maintaining your Material Master Records or Cusotmer Master Records, you must identify, which are tax liable and which are tax exempeted.
5) In anycase, as a SAP standard Best Practises, while processing a sales order, you must retrieve a Tax condition record from SAP database only and not entered Manually. Accordingly, at V/06, the MWST condition Defintions, the field for 'Manual Entries', it would be marked as - D (Not possible to process Manually).
Due to this setting, normally, you cannot maintain Condition tax code during sales order processing. And in Cusotmer Master, you can only maintain Tax Indicator and not Tax Code.
6) In case your client insists for Manual entry of Tax code during Sales Order processing, you can change the field at point 5) above to C-Manual entry is priority instead of D.
Taxation Explain with an example
I'm assuming that, the country is India and based on its requirement:
Sales tax is a state government revenue. There are two types of sales taxes, Local sales tax & central sales tax. Local sales tax is intra state whereas CST is inter state.
Example of LST : Point of sale i.e. delivering plant & ship to party are within the same state. The rates are defined by the respective state governments.
Example of CST : The Delivering plant & Ship to party geographic locations are 2 different states. At the point of sales from one state, the ST goes to that state govt. & consignment is despatched to the Ship to party. Once that consignment is received at the ship to party state, sales tax will be levied once the sales is registered there. For this case, the LST that is applicable by the Ship to party further will not be applicable in all probability to be captured in SAP.
Stock transfer : This does not attract any sales tax. The consignment is transferred from one D plant to another D plant irrespective of inter/intra state sales. The invoice that is accompanied with the consignment thus shall not have any final value. It's a zero value invoice, but the basic prices needed to be mentioned.
The selling organisations normally needs to register with the sales tax authority of the respective state to have a warehouse or D plant to avoid the double taxation for their dealers/distributors.
Now, the pricing procedure that is there in 4.7 is Factory sale with formula-JFACT, in which the CST condition type is JIN1 & the LST is probably JIN2. There may be surcharge cond types as well which will calculate the amount on either JIN1 or JIN2.
For config : 
1.SPRO > S&D > Basic fn. > Pricing > Pricing control > Define & assign Pric. procedure > Maintain Pric proc.
2. The tax rates are normally driven from the Tax classification of Customer & Material access. To do this config, S&D >Basic fn. > Taxes. You need to include the condition type for country IN in 'Define tax determin rule'.
3. Same path : But go to Tax relevancy of master records where you configure the condition type & options of rates that will flow to these masters. One needs to understand here properly as u need to have unique combinations for picking the sales tax rates. I will try to demonstrate the smallest example. Let's say, the LST rates are 2%,4% & 0%. I will have two options for material master here. 1 for taxable & 2 for not taxable. 
For customer master, I will have 1-LST 2%, 2-LST4% & 3-LST0%. When I create master records for LST thru VK11 for JIN2, I will chose the access where the combinations of customer & material tax classifications are available. If this access does not exist create it under an access sequence. But normally this is standard. The condition records will look like,
 Cust-Tax classi.          Material tax claasi.        Rate           Tax code
        1                                    1                         2%               A1
        2                                    1                         4%               A1
        3                                    1                         0%               A1
Remember, rates are flown from the tax codes. Tax codes can be created thru T code FTXP. This is normally a FI job.
SAP SD Tips by: Soumya
Return material From customer 
You need to receipt the rejected goods through SD Module (VA01 - Sales Order type RE). 
The steps are as follows : 
1. Create a return request. (Using Sales Order in SD) 
2. Create outbound delivery according to return request. 
3. If the setting is correct in the outbound delivery screen SAP will automatically switch post goods issue button into post goods receipt. The setting is in sales order item category and delivery type. 
4. In the standard system the movement type used is 651. 
5. After post goods issues receipt is done using outbound delivery, the quantity is placed in blocked stock without value updating. 
6. You will then decide if the return quantity are indeed bad stock or not. 
7. Transfer Posting from block stock to unrestricted stock (mvt type 453), this will have accounting effect (Debit Inventory, Credit COGS) 
8. Goods Issue to scrap account how to create new titles which can be used in creating the "address" view on the Vendor master.{T-Code: XK01} 
In config go to Basis Components --> basis services --> Address Management --> Maintain title texts 
Do you have a SAP SD Question?
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff

SAP SD: Scheduling Agreement Vs Contract 
A schedule agreement contains details of a delivery schedule but a contract just contains quantity and price information and no details of specific delivery dates 
What's the difference between schedulling agreement with normal order? 
What's the condition for us to choose schedule line or order? 
Both of them contains schedule line, price, quantity. 
There are a couple major differences: 
(1) - Schedule agreements allow you to have 2 different sets of schedule lines (VBEP-ABART).  Standard SAP you should have two sets of tabs - of schedule lines. One Forecast & the other JIT.  Forecast forwards the schedule lines to planning (seen in MD04) and JIT passes them to shipping (VL10). They can be identical or different. Typically these are used for component supplier customers (namely Automotive). The customer will provide you 4-10 weekly buckets (usually a 
Monday date) of future forecast qtys. Also send you 1-2 weeks of individual FIRM ship dates - which are entered on the JIT. It comes down to the customer not knowing exactly what they need next week, but they don't want to suprise you with a large order qty, where your lead times are 5+ days. The forecasted qtys they sent last week should account for this. 
(2) Cumulative Quantities are tracked and influence how the schedule agreement passes requirements to both forecasting and shipping. These qtys are sometimes requested by the customer on ASNs. Cumulative qtys reset at year end unless you've got a customer calendar or you've modified standard SAP userexits to not reset. 
Schedule agreements are very nice when the customer sends EDI data (830s = forecast or 862s = JITs). Outside of that they can really cause trouble regarding daily maintenance, missing requirements, cum qty corrections, year end processing, etc. 
One alternative would be to use customer independent requirements - entering the weekly, monthly forecasting qtys and entering standard sales orders (with or without multiple schedule lines) to represent the true firm qtys.
Do you have a SAP SD Question?
Best regards,
SAP Basis, ABAP Programming and Other IMG Stuff
Sales BOM Implementation 
A bill of material (BOM) describes the different components that together create a product. A BOM for a bicycle, for example, consists of all the parts that make up the bicycle: the frame, the saddle, wheels, and so on.
Process Flow
When you enter the material number of a bill of materials that is relevant for sales order processing, the system displays the material that describes the whole bill of materials as a main item. The individual components are displayed as lower-level items.
There are two ways to process a bill of materials in Sales. Once you have entered a bill of material in a sales order, the system runs pricing, inventory control, and delivery processing at:
- Main item level if the material is assembled, or 
- Component level if the material is not assembled
The type of processing used by the system is determined by the item category group that you enter in the material master record for relevant materials.
Processing at Main Item Level 
If you want the system to carry out pricing, inventory control, and delivery processing at main item level, enter ERLA in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. This means that the components only function as text items and are not relevant for delivery. The following graphic shows how a bill of material is processed at main item level.
Processing at Component Level
If you want the system to carry out pricing, inventory control, and delivery processing at the component level, enter LUMF in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. In this case, only the components are relevant for delivery. During processing the system automatically creates a delivery group. The latest delivery date among all the components becomes the delivery date for the entire delivery group.
Fast Links:
How to Know that Sales BOM is working or not?
I have set up a sales BOM. How do I know or test that is is working or not?
Once you enter a material (for whch you have created a BOM thru CS01) in the sales doc another material pops under the main material line item as a sub-item (s). If it doesn't then your BOM isn't working. 
In my experience BOMs work if all maintenance has been done properly. 
A number of things to check is: 
1. The bom hasn't been defined for the plant used, or you haven't defined the plant in SO. 
2. Main item category - has BOM application SD01 been assigned to it? 
3. Item categories for main items and sub-items have not been mainteined properly.
4. Sales items maintenance - You should assign item categories for BOM header items and sub-items to a specific sales doc. 
5. Has the BOM itself been configured properly (i.e. right plant, BOM usage '5')? 
6. Are you trying it out on an order created after all BOM maintenance was done? 
7. Also , what's the 'Structure scope' set as? Anything except C may be useful here?   We have that set to A, since our BOMs are all single-level. You could set it to B if BOM are configured multi-level.
Those are probably main reasons why BOM shouldn't work. Apart from that, just re-check your whole config - the truth is out there somwhere.
Fast Links:
Implementing the Sales BOM
Sales Order Mass Change
I am a SAP SD consultant and recently faced with two new terms, mass order change and ALV , I also need to know about the transaction code.
There is transaction MASS which can be used to carry out mass changes in the sales order and other objects.
Mass Maintenance: (Use to change multiple fields in multiple documents at the same time).  I have done mass change for customers; and orders should work the same way too.
1) Try t-code [MASS] and select sales orders & execute
2) Choose the table or tables for your selection criteria and also for fields you want to change.
Then execute. (suppose your selection criteria fields are from "sales order header data" table and the field you want to change, is in "item data" table)
3) Put in the sales documents(21000000, 21000001) you want to change and also the items(10) you want to change.
- click on " choose selection fields" button
- From the Pool, move the fields you want to the "select fields" using arrows.
4)From mass maintenace menu, click on "Enter new field values"
-click on "sales order item data" tab and choose the field you want to change.
(for example. I want to change plant for item 10)
-enter the new value (of the plant to be)
-click on "Adopt" and execute
5)In "sales order item data" tab, you see the new value of the plant you entered at the top and the old values of item 10 are below.
-click on "change field values" button.  you see all the old values are changed to new values.
Note:  it will take some time depending on how many records you have.
Check:  Go to [SM37] and see the status of the job you are running and once finished, export the spool file to a spreadsheet.
Before you do mass maintenance, go to the particular table in [se16] and get the results.  Then do the mass maintenance and compare the results with this one.  If they match, then you are good to go.
Note:  If you have any user exits that affect the results, ask them to deactivate the MODCHECKS still you are done with mass maintenance & activate them again.
Is there a way to change the billing date on a ton of sales orders with same old billing date to a same new billing date?
This can be done using the mass transaction:
Transaction: MASS 
Object Type: BUS2032 
Tables: SD Document: Business item data 
Sel Field: Billing Date (MASSSDHE and MASSSDPO) 
- Or you can just select by document numbers (May be more efficient) 
Execute - List will be provide for changes 
Sel Chg Fld: Billing Date 
Set new billing date value in the New Values field 
Click on lower billing date column 
Click on Carry out a Mass Change button 
Click on Save button 
Suggestion is to test this on a few orders in your development system to get a feel on how this works before applying this to any production data. MASS is a very powerful tool. 
I have 100000 sales orders whith an incorrect price and I would like to do a massive condition update with pricing type "B" (Carry out new pricing). Is there a transaction or program for this? 
Go to VA05 execute the report. Select all sales orders you want to update the price, Go to the Menu EDIT --> MASS Change ---> New Pricing. System will display all the re-pricing options. Select B. It will re-price all the sales orders. 
You can try for one or two order initially check the results and if it is OK, then you can do for others.
Release strategy for Sales order
Is it possible to have release strategy for sales order?
Satish C Jha
As such SAP standard does not provide release strategy for sales orders similar to purchase orders.   However this requirement of your can be satisfied through authorisation profiles; what I mean to say is that the sale order to be kept incomplete by the person who does not have the required authorisation & the person with proper authorisation will complete
it for further processing. This is only one way of meeting your requirement.
Balraj G Saigal
In order to emulate a release strategy similar to purchase orders you can use the status profile in sales documents (BS02). IMG-Sales and distribution-Sales-Sales documents-Define and assign status profile.
Fast Links:
How to do rebate processing
Rebates Processs in SAP is divided into three components
1) Configuring Rebates
2) Setting Up Rebates
3) Managing rebate agreeeements and payments
Pre-requsiistes- Check the following:
1.The payer partner needs toi have the rebate field checked in the customer master on the sales area-billing doc tab.
2.The Billing type must be marked as relevant for rebates.
3.The Sales Organisation must be marked as relevant for rebates.
Condition Technique :
Rebates, use the condition technique, but distinguish themselves from pricing in applying to transactions over time, versus on a transaction basis. Rebates have their wn field catalog and their own condition table naming convention.So you could have two condition table "001" one for pricing and one for rebates, which could have different key fields. You need to use the technical names A001 For pricing and KOTe001 for rebates when you use the query type using transaction SE 16..
Use create access sequence (AS).  Enter 1 in field category for rebate specific.  AS after going thru the right path of maintaining access sequence for rebates.
The big difference between the rebate and the pricing access sequence is that there is no exclsuion flag available for rebate related AS. This means multiple tables for an access sequence can be aplied at the same time.
Rebate related condition types are identified by codnition class -C.
After defining and creating condition types for rebated include them in the pricing proceedure. The requirement should be 24 here which implies that the accruals are calculated on the basis of invoice/bill.
The other fields- alctyp and altcbv does not allow you to manipulate how a rebate is calculated. Also, remove the requiremnt 24, if u want to see reabtes at order time.
Now payment of rebates:
Payments can be maunal or in full settlement. When you do manual payments, it defines how much can be paid out during a partial settlemetn.  You use partial settlement only when rebate agreement is defined for a full year but the paoyouts are supposed to happen on a monthly, quarterly or anyother specified period.
These accurals are based on sales volume and when they are posted billing is created int eh follwoing manner. Provision for accruals is debited and Sales revenue is credited. When rebate credit memo is created
   Customer account/ is debited and
   Accrual provision account is credited.
Also, please note that when rebates are created without dependent ona material but on customer/material you need to refer to a material for settlement.
With Compliment: Srini
I have this same problem found in:
However, can somebody explain it as I have problem in understanding the link.
What exactly do you wish to know in Rebates? The total outline of the Rebate process or each and every step in the SAP system?
First of all rebates are more or less discounts which are offered to customers. The rebates are based on the volume of the business the customer does with you within a specified time. for eg if the customer agrees for Rs.1 Crore worth of business with u in 1 year, then you activate your rebate porocess. if at the end of the year the customer DOES achieve the target u offer him say 2/3/4 % whatever is decided. The rebates are passed on to the customer in the form of Credit notes.
The rebate can be given to the customer at one time or in installments also.
This is broadly the outline of the rebate process.
Note : I recomend you to study the theory part of why rebate and why not a discount.
This will help you understand better.
May be I can help you with rebate process.(IN -IMG)
1. define a rebate agreement type
2. define a condition type group
3. define a condition type and place this condition
Type in the pricing procedure.(REQUIREMENT=24)
Once you have defined all the 3 and assignment starts.
Assign the agreement type to the condition type group
Assign the cond type group to the condition type.
Condition technique is also used in rebates.
After having done this please proceed to maintain the condition record for the rebates (transaction code-vbo1)
Note: if you maintain the requirement coloumn with the requirement as 24 - the rebate will be affected in the billing document and if you dont give the requirement as 24 your rebate will be affected in the sales order.
The rebate process is completed when you have created a credit memo to the customer.
The document type for the partial settlement is R3.
Please make sure you open two screens SO THAT YOU CAN COMPARE THE NEW ENTRIES WHAT EVER YOU'RE DEFINING WITH THAT OF THE STANDARDS or first you try with the standard condition type boo1, boo2
boo3 boo4.
I hope this will be of any help to you.
In a simple way,
1. First you need to create a Rebate agreement.
2. Create condition record for rebate giving the rebate rate and accrual rate.
3. when the rebate relevent billing doc is generated, the rebate and accruals are determined and posted in a seperate GL account as a noted item - amount to be settled. Also it gets copied in the rebate agreement.
4. create settlement run using credit memo request and then credit memo to settle this amount with the customer.
This is what the link says.
Rebate Process with Ref. to SO
If I need to make a rebate for a customer what is the process involved.
I am providing some info on rebates which I know.
Rebate agreemnts is based on agreement types.Conditon records which are created like B001 and B002 are linked to the rebate agreeements specifying the rebate rate + the accrual rates.condition records specify the rebate rate and the accrual rates.
Consider an example..
You decided to give a rebate of 3% to a customer whose sales vol is $1000 for a particular SO
Then the rebate value is $30..
Now when you make the rebate settlement by doiing the Credit memo and you decide to pay $27, then the accounting will be generated saying  27$ paid towards rebate and 3$ is the accrual which you owe to the customer
Rebate agreement: Transaction code: VB01
When you go to VB01, choose agreement type 0002 and then in conditions give
Material     rebate
1                 20
20               30
Now create a sales order with a material say M-11 for SOrg 1000 12 00 with QTY 6
Now check VB03 and see rebate agreemtent it will say Accruals 120 and payments 0
since your rebate is not settled still.
Rebate setllement
Go to VB02 enter ur sales deal no, and change the agreemetn status to B then enter Shift+F12 and enter the amount to be paid for example u say $80
Then check in rebate payments rebate doc and partial setllemetn since you have not paid in full.
View the credit memo request
Remove the Billing bloock Go to VA01 and put order type G2 ,,,go to create with ref and enter ur Sales order no,,,save the doc now...
Then go to VF01 and enter the credit memo reqst no the doc no and go to VF02 and say release to accounting
Now the final settlement will be this way
Accrual reversed:80
Rebate pay:80
Amount payable:40
So the balance 40 is still the accrual
This is an example how a rebate will be processed with ref to a SO with an example.
SAP SD Tips by: Priyam
How to do a rebate agreement for a  specific customers with settings details?
1. Create a condition by copying a a standard condition like BO03 in V/06
2. Assign this condition in the std pricing procedure with acct key as ERB and accural key as ERU - V/08
3.Create a  Rebate Agreement in VBO1 (It is O = Owl and not zero). No will be generated
choose 003 - Customer rebates, enter the customer code, the validity and check for the status shld be in Open, click on the conditions enter the percentage and accrual amount. You also can have scales in this. Also you need to maintain the material for the settlement
4. Create a sales order for that customer and check the rebate agreement.
5. You can see the rebate condition in the invoice only.
6. Once you have posted the invoices, then go to rebate agrrement no. clicl on verficayion and it will show the order details.
7. For settlement change the status of the rebate to B - release for the settlement.
8. Credit memo request will b generated copy the no. and go to VA02, remove the blocks if any and create an invoice (credit memo).this will show u the accrual amount.
9. In both the invoice and the credit memo check the posting - accounting document it will show u the accrual as negative.
10. Again go to rebate aggreement and check the status it will show you D - Final settlement of agreement already carried out
Consignment Sales Process in SAP
The consignment process in SAP standard consist of four small processes: 
Consignment fillup (send materials to customer consignment). 
Here you have a consignment fillup order and a consignment fillup delivery. 
Consignment issue (issue materials from customer consignment to the customer). 
Here you have a consignment issue order, consignment issue delivery and a consignment issue invoice. (the flow is very similar to a normal OR flow, but the materials are issued from the consignment stock instead of plant stock unrestricted). 
Consignment return (return materials from customer ownership to customer consignment). 
Here you have a consignment return order, consignment return delivery and a consignment return invoice. (the flow is very similar to a normal RE flow, but the materials are returned to the consignment stock instead of plant stock returns). 
Consignment pickup (pickup consignment stock and move it to plant stock). 
Here you have a consignment pickup order and a consignment pickup delivery. 
Note that in consignment fillup and consignment pickup there are no invoices since there is no change of ownership for the materials. 
How to perform a consignment order?
In consignment orders you are allowing the stock to sit in your customer location. Once he informs that he used the stock you will invoice him. If he returns the stock you will accept the stock to take it back.
It is defined in 4 steps.
1. Consignment fill up: 
Sales document type is KB
Item category KBN
shedule line category E1
In this step, you are not invoicing the customer. document flow is sales order ---- delivery item category. It will not be relevent for billing and pricing because you are not charging money for these goods in this step.
In schedule line category, you will set movement type 631 & set for availability check and TOR.
2. Consignment Issue.
Once the customer informed you that he used all the goods or partial goods then you will create consignment issue for used goods.
Sales document: KE
Item category: KEN
shedule line category: C0 or C1
Here you are invoicing the customer(because he used the goods). you are assigning the delivery documnt and billing document to the sales document.
In item category, you are setting relevent for billing, pricing, special stock.
In schedule line category, your setting is 633 movement type, relevent for availability check & TOR.
3. Consignment Return:
Customer found that some goods are damaged or he not able to sold the goods he want to send it back. that you are creating this document.
Sales document type: KR
Item category: KRN
Shedule line category: D0
You will assign delivery document and billing to sales document. you will create return order, return delivery, return billing.
Your setting item category relevent for billing, returns, pricing, special stock.
Your setting schedule line item category: 634 movement type, NO availability NO TOR.
4. Consignment Pick up:
Even if you create the consignment return the goods are not come to direct to your plant. For that you need to create consignment pick up. here the owner ship is not changing so you do not need to create billing.
Assign retrun delivery to sales document type.
Sales document: KA
Item category: KAN
schedule line category: F0 & F1
Your setting item category relevent for returns. any shedule line category relevent for 632 movement type, MRP, availability check, delivery.
Now you check your plant stock. Stock will increase.                         *-- Ugameswara Rao 
Issue free goods to selected Customers
Client wants to issue free goods to selected customers after the said customer buys a specified quantity of a good during the festive season starting 02 December to mid January. for example customer A buys 34 cartons of Corn Ice-cream, we offer him 12 free corns. this should then reflect as cost in our accounts. the rest of the system is already up and running and should not be inconvinienced. How do I set it up? 
1.Run trans. VBN2 to first create master record for free goods as follows:
Enter following information in selection screen:
- Free goods type: NA00
- Sales org, distribution channel, customer # and execute.
Now in next screen create the record as follows:
- First select the exclusive button and verify that you are in exclusive view. 
  (that is if you want exclusive)
- Material#, Min qty - Say 34 cartons. (check in what units you want to manage)
  From: 34 cartons
  unit of measure: 
  Free goods: 12 Pcs
  Unit of measure: Pcs
  Calcualtion type: 1 or try the other options
  Deliver control: Blank or any of the other options suitable to you.
Now save and exit.
Now run VA01 for 34 cartons and press enter. The system will automatically propose the free goods 
item at no additional charge. Try higher order qtys and see if the free goods qty are scaling up. 
If not adjust the calculation parameters in the master record screen
It should be transaction VBN1. Sorry for the error. 
VBN2 is to change the record. VBN1 creates it.
Kris J
If you want to give free goods to some of the customers than
1. create a customer group say 99 for FREE GOODS
In Free Goods Menu:
2. add a feild catalog for CUSTOMER GROUP
3. create a condition table (free goods) say 555 only for customer group
4. create a sequence say FREE with condition table 555
5. create a condition type say FREE with
6. maintain pricing procedure say ZFREE with condition type FREE
Now assign:
7. Active Free goods Determination or Assign with your sales organisation this procedure ZFREE
8. Create free goods determination with transaction code /nvbn1 for FREE with Key Csuomer Group 
99 for exclusive
Give customer Group say 99 and from 34 to 34 free 12
Sandeep budhraja

Supressing Fields in Sale Order
To make optional / mandatory you can use in IMG - S&D-> Basic > Functions-> Log of incomplete Procedures =>  select the fields > from the tables and the system will check for them (OVA2/VUA2)
To make a filed entry enabled or grey (non-entry allowed):
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.
With Compliments by: Taner Yuksel
Actually suppressing fielding sales orders userwise is quite easy. We are doing it in our company. For this we use userexit FORM USEREXIT_FIELD_MODIFICATION in MV45AFZZ.
Below is the sample code
  IF sy-subrc = 0.
You place the authority check object in authorization profile in the role of the users, who should have access to the field (in this case it is VBKD-ABSSC), and there assign the corresponding fields that are to be accessed via this userexit.
With Compliments by: Martishev Sabir
Some Light on Batch Determination
On batch determination, the whole process, how it is determined automatically in the order.
A1) Normaly we use batch determination at delivery level, because at the time of order material may or may not be created.for this material should be configured with batch and batch determination should be checked in sales views of material.
A2) Batch Determination during order Creation.
For this you need to maintain a Classes d for you Material. Depending on the Manufacturing process you can define the characteristics for your material.
Ex: Purity for Medicines,  Resistance for Electric Items.
You need to create a class (You might have to create a new class type) which incorporates the characteristic.
First Create the Characteristic Using Ct04 and then using Cl02 create the Class  including this characteristic.
Then in your material master Classification View Enter this class.
Then Create a Batch for the particular plant and Stor Loc using MSC1N.Give the value of the characteristics in this batch.
Then go to SPRO ->Logistics General ->Batch Management and maintain the Condition Technique (Procedure, Strategy Types and assignment to sales docs etc).
Then Create the Batch Determination Record using VCH1.
SAP Tips by: Shaik Zaheeruddin
Fast Links:
Get help for your SAP SD problems
Difference between Item Proposal and Material Determination
What is the difference between the item proposal and material determination product proposal?
Item proposal and product proposal are the same.
Item proposal is the list of materials and order quantities that can be copied into the sales order from the customer master data.
We use VA51 to create the item proposal. Here we get a number.This number is then linked to the customer master data in the sales view. This is very commonly used.
Material determination is very closely related to item proposal /product proposal  and is used to swap one material for another in the sales order using the condition technique. I have not seen Material  determination procedures used in the projects I have worked.
SAP Tips by: Prashanth Harish
Item Proposal or Product proposal:
"Item proposal is same as product proposal & SAP uses the two terms interchangeably.
"An item proposal is a list of materials and order quantities that can be copied into the sales order.  Items can also be selected from a list and copied into a sales order."
1) Use transaction [VOV8] to configure the document type ("MS" for product proposal).
2) Use transaction [VA51] to create a proposal.
3) Enter the item proposal on the sales area data (sales tab) of the customer master record.
4) In [VA01] to create a sales order, Select Edit & propose items."
Material determination:
"Material determination uses the condition technique to swap one material for another when certain conditions apply. Material
determination is triggered by the material entered in the line item of the sales order.
Use transaction [VB11] to create a material determination condition record.  And [OV12] for configuration of material determination.
Material determination is useful when old product is becoming obsolete or a new product is released by the company at specific date."
SAP Tips by: Minmini
Fast Links:
Get help for your SAP SD problems
Steps for SD Variant Configuration
Some light on Variant Configuration in Detail.
The procedure is as follows:
  • Create a Material - KMAT type with Item category (002)
  • Create Charateristics in CT04 - Zbike, where in values mention the Color of the bile like Red, Blue etc
  • Create another characteristics in CT04 - ZPrice, where directly go the additional data tab and maintain the table SDCOM and field VKOND (ABAP Dictionary it will ask for)
  • Assign these two characteristics to a Class in CL01 - ZBikeclass ( Type 300) in characteristics tab page.
  • Then go to CU41 Configuration profile select the material and enter the description click on the class assignment ie assign Zbikclass.
  • Now go back to CT04 - enter Zbike -go to values- select Red- go to extras - Other Dependencies - Select Procedure enter in front 10 write - $self.ZPrice='Red' and save
  • Now go back go to extras - Other Dependencies - assignments and assign relationship ( by default it will come just save)
  • Now select Blue- go to extras - Other Dependencies - Editor - Select Procedure enter in front of 10 write - $self.ZPrice='Blue' and save
  • Now go back go to extras - Other Dependencies - assignments and assign relationship ( by default it will come just save)
  • Now go to VK11 - Enter VA00 (Condition)(For Std RVA001 Pricing Procedure) - enter variant Red and Blue give the rates accordingly and create the sales order.                     *-- Shaik Zaheeruddin
Tell me about variant configaration? 
What are the type of questions we can expect in that?
Variant configuration is used where you have a configurable material like computer (made up of components like processor, monitor, keyboard, mouse etc). These components are called as characteristics in variant config. Again this will be having values like processor can be either P4 or P3, monitor can be 15" or 17" etc.
Based on the values selected the variant pricing will happen using the condition type VA00.
Possible questions you can expect are:
- What is variant configuration?
- What is characteristic?
- What is value?
- What is class?
- What is configuration profile?
- What is dependency and what are the types?
- What is a variant table?
- And the transaction codes for the above.            *-- Balaji
Process Flow for 3rd Party Sales
Customize the third party sales in summary:
 1. Create Vendor XK01
 2. Create Material – Material Type as "Trading Goods". Item category group as "BANS".
 3. Assign Item Category TAS to Order type that you are going to use.
 4. A sale order is created and when saved a PR is generated at the background 
 5. With reference to SO a PO is created (ME21N). The company raises PO to the vendor.
 6. Vendor delivers the goods and raises bill to company. MM receives the invoice MIRO 
 7. Goods receipt MIGO 
 8. Goods issue
 9. The item cat TAS or Schedule line cat CS is not relevant for delivery which is evident from the config and,   therefore, there is no delivery process attached in the whole process of Third party sales.
10. Billing      *-- Seema Dhar
SD -  3rd party sales order Create Sales Order
      Order Type
      Sales org, distr chnl, div
      Sold to
      PO #
SD -  3rd party sales order View the PR that is created with a third party sales order
      Order Number
      Goto Item Overview
      Item ->Schedule Item
SD -  3rd party sales order View the PR that is created
      Key in the PR number
SD -  3rd party sales order Assign the PR to the vendor and create PO
      Key in the PR number
      Toggle the "Assigned Purchase Requisition"
      Check the box next to the material
      Assign Automatically button
      Click on "Assignments" button
      Click on "Process assignment"
      The "Process Assignment Create PO" box , enter
      Drag the PR and drop in the shopping basket
SD -  3rd party sales order Receive Goods
      PO Number
      DN Number
      Batch tab , click on classification
      Serial Numbers tab
      Date of Production
      Flag Item OK
      Check, just in case
SD -  3rd party sales order Create Invoice
      Invoice Date
      Look for the PO , state the vendor and the Material
      Check the box
      Clilck on "Copy"
      Purchase Order Number (bottom half of the screen)
      State the baseline date
      Simulate & Post
      Invoice Number
      *Invoice blocked due to date variance
SD -  3rd party sales order Create a delivery order
      In the order screen , go to the menu Sales Document , select "Deliver"
      Go to "picking" tab
      State the qty and save
SD -  3rd party sales order Create a billing document
      Ensure that the delivery document is correct in the
      Go to edit -> Log
Number Ranges In Sales Order
This is regarding number ranges defining and assigning tips which you can follow as below:
Whenever there is a new Sales Org being created, you will be required to maintain Number Ranges for Sales Documents which are allowed for your New Sales Area.
Number Ranges can be maintained Internally by the system, however it can be maintained externally also if you customize it accordingly.
In Standard SAP the Transaction code for Maintaiing Number ranges externally is VN01.
Defining - The same can be reached through in IMG as : Sales & Distribution-->Sales-->Sales Document Header-->Define Number Ranges for Sales Documents.
Here you provide the system a specific Number range as follows:
Number range Key +Start Number range+ End Number Range+Current Number
For Example: If you want to propose the following Number Range
*1     9000076000      9000076999      0
The Current Number field will be kept zero as you are proposing new number range and no sales documents have been created on it , Obviously..
*1 is a Unique Two digit Alphanumeric Key, while proposing your key, you should ensure that it should not be there in the system as existing.
If you propose a key that is there in the system or if the Number Range (Start and End Series) is there in the system already, the system will throw a message that Interval already already exists. So choose a key that is unique, and which is not there in the system.
Here , by making this , you are assigning a Key to a Number Range Series.
All the symbols can be used along with numbers from 0 to 9 and Alphabets from A to Z and in any order. For example: !1, ^A, BB,Z*,M2.........
Assigning - In Assigning, you assign the particular Sales Document to the Number Range you have already proposed as above.
The Assigning Part is done as follows:
The Two digit Alpha Numeric Key is maintained or Assigned to the respective Sales Document type in V0V8.
This can also be reached in IMG by:
Sales & Distribution-->Sales-->Sales Document Header-->Define Sales Document Types
Locate the particular Sales Doc Type, and double click on it to display it configuration. Here you put the Two Digit Number key in the Field- "Number range External Assignment"
Besides this:
If a new Shipping Point is created then Delivery Number ranges are required to be maintained.
If a new Plant is created then Billing Number Ranges are required to be maintained.
Tips by : Vivek Sahni
What is Debit note and Credit note
What is Debit note and Credit note?  What is the purpose?  How we create?
1. A transaction that reduces Amounts Receivable from a customer is a credit memo. For eg. The customer could return damaged goods.  A debit memo is a transaction that reduces Amounts Payable  to a vendor because, you send damaged goods back to your vendor.
2. Credit memo request is a sales document used in complaints processing to request a credit memo for a customer. If the price calculated for the customer is too high, for example, because the wrong scale prices were used or a discount was forgotten, you can create a credit memo request. The credit memo request is blocked for further processing so that it can be checked. If the request is approved, you can remove the block. The system uses the credit memo request to create a credit memo.
You can use credit memos in Sales and Distribution (SD) for assigning credit memo requests to the open invoices and in Financial Accounting (FI) for assigning  credit memos and payments to the open invoices and carry out clearing with them.  If you use both Financial Accounting (FI) and Sales and Distribution (SD),  there is a 1:1 relationship between the credit memo request and the credit memo item posted in Financial Accounting (FI). As soon as you bill the credit memo request together with other sales orders, or distribute the items of one credit memo request to several billing documents, the assignment is no longer valid and the system will not process it.
For  credit memos, credit memo requests, and payments, you have the following assignment options:
- Assignment to a single invoice
- Assignment of a partial amount to an invoice
- Assignment to several invoices
When you post  credit memos, the payment programme processes them automatically. If the credit memo is specifically related to a particular open invoice item, the payment program automatically attempts to offset the credit memo against the open item. If it is not possible to completely offset the credit memo against an invoice, you can post a debit memo to the vendor, who is to reimburse the amount.  Then you can apply a multilevel dunning program. 
3.  Debit memo request is a sales document used in complaints processing to request a debit memo for a customer. If the prices calculated for the customer were too low, for example, calculated with the wrong scaled prices, you can create a debit memo request. The debit memo request can be blocked so that it can be checked. When it has been approved, you can remove the block. It is  like a standard order. The system uses the debit memo request to create a debit memo.
4.  As mentioned above, creating a credit or debit memo request enables you to create credit or debit memos based on a complaint. For this first create a sales document with the order type for a credit or debit memo  request. You can create the debit  or credit memo requests in the following ways: 
– Without reference to an order
– With reference to an existing order
Here you enter which order the complaint refers to.
 – With reference to an invoice
Here you enter which invoice the complaint refers to.
In all cases, you specify the value or quantity that should be in the credit or debit memo
5. You can block the credit or debit memo  request from being billed in Customizing. Go to Sales -> Sales Documents -> Sales document header -> Define sales document type and select the billing block field in the billing section.  This request can later be reviewed along with similar ones, - if necessary, by another department. The request for a credit or debit memo  can then be approved or rejected. 
Tips by : Rajendran
Configure Intercompany Stock Transport Order
Explain STO.
STO is Stock Transport order. It is used for inter company transfer of goods. Plant to plant transfer and even transferring raw material to Third party contractors (Job Work).
The Process is you create a STO do delivery against the STO and create a Billing Document against the STO.
How to configure the inter-company Stock Transport Order? - Prassee
Material should exist in both the plants (Delivering  & Ordering),
Internal customer should be assigned to the ordering plant ( MM -> Purchasing -> Purchase Order -> Setup stock transport order -> assign the internal customer to the ordering plant and assign the Sales area of the internal customer.
Tcode : OMGN
IMG to Setup Stock Transport Order
Assign its Sales area to the delivering plant
Assign the document type and Delivery type  NB and NLCC
Assign the Supplying plant --> Receiving Plant --> NB 
Take the delivering plant and assign the sales area.
Vendor master has to be created and assaign the supply source ( Delivering Plant).
Create a puchase order ME21N ---> Save
Delivery VL10 G ---> Calculation rule (appropriate) --> Assaign the purchase order number here and execute.
Select the Delivery creation line and do the back ground process.
Start the log display and see the delivery document number by the documents button
Goto VL02N --> do picking and PGI --> Then do the MIGO with respect to the delivery document.
Billing (Intercompany pricing conditions should be set).

SAP SD CIN Configuration
By Shesagiri 
What is CIN?
CIN Means Country India Version
In Indian Taxing procedure, Excise Duty plays a vital role in manufacturing cenario’s. Excise related configuration is known as CIN configuration. CIN Configuration is a topic in itself. 
Some info on CIN Configuration (it may not appear as understandable below, but if you check on screen, it will be understood better)
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
In this IMG activity, you maintain the data relating to your excise registrations.
- 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.
- 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 
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 livable 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 livable 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. 
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.  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 Utilisation 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. 
- 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 - 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.
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. - 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 credit
Maintain Excise Groups - 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.
1. Create one excise group for each set of registers that you need to keep.
2. Assign the excise groups to plants.
3. Maintain whether this Excise group is for a depot or not. 
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 availa 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 create' 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. - 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. - 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. - 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 Group - 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.
- 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' Iindicator.   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 - 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
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 - In this IMG activity, you define which tax procedure and pricing condition types are used in calculating excise taxes using formula-based excise determination.
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 
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.
Customizing : Make the settings in Customizing Basic -> India -> for Logistics – General, by choosing Taxes on Goods Movements Account -> Excise Duties Using Condition Technique and …-> 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  -  When you execute a business transaction involving materials that are subject to excise duty, the system automatically calculates the duty for you.
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 Excise Rate Maintenance screen, which you can Master Data®access from the SAP Easy Access screen by choosing Indirect Taxes Excise Rate Maintenance. 
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. 
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 indicator 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 -  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
- 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
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 - 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.
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 - 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.
- 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 - 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 sub transaction types, enter the accounts for each sub transaction type as well.
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.
- 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 - 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. 
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 all transactions.
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 configuration step has to be made in Screen Sequences for Material Master.
Following document helps you to do this configuration.
- Material Master à Logistics General 
1. Go to IMG Define Structure of Data Screen for each Configuring the Material master Screen Sequence.
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 Sub screens 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 sub screen and ensure that the sub screen 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 sub screen appears. 

Customizing Customer Hierarchy in SD
How to configure and maintain the SD Customer Hierarchy?
All the customizing is in SD/Master Data/Bussiness Partner/Customers/Customers hierarchy 
1) Define hierarchy type: just put and ID and a name to the new hierarchy. 
2) Set partner determination: if you want to user the hierarchy in price determination, then, in the orders, at the header level, you have to have a Partner Procedure with a partner function for each level. In the partner procedure, in each partner function you must indicate the source partner function. With this informacition, in the order, you obtain the bussiness partner for each partner function. 
3) Assign acount groups: you indicate which accounts groups are allowed for being part or your hierarchy. 
4) Assign sales areas: symple you indicate wich sales areas are allowed in your hierarchy. (Here you can customize common sales areas, just for not having to build de hierarchy in all the different sales areas). 
5) Assigning hierarchy type for pricing: you indicate which classes of documentos uses hierarchy in pricing determination.
It is possible to maintain so called customer hierarchies. This might be useful when for example you create a condition discount for a customer that is part of such a hierarchy structure. All subnodes in the hierarchy below that customer, will thus receive the same discount. 
Customer hierarchy setup, firstly decide the hierarchy type to be used. 
The standard is type A. 
You can also assign a partner function to the customer so that the higher level customer in the hierarchy is copied into a sales order as a partner function - but you don't need that right?
Next assign your customer account group to the hierarchy type. And enter the combinations that will be allowed for creating the hierarchy. 
You want to assign a ship-to to a payer. So enter the ship to account group and enter the payer account group as the higher level. 
You must also make an entry for permitted sales area assignments. So if you want to a hierarchy for customers in the same sales area then enter the sales area and enter the same one as the higher level sales area. 
All these settings can be found in the IMG. Under SD - master data - business partners - customers - customer hierarchy 
You use for example customer hierarchy when you have an company like Unilever and you agree both on a discount. Unilever does have different locations / businesses and you have to maintain the discount for all customers.   If you use a customer hierarchy you can maintain the discount for the partner in the top of the hierarchy and in this way it will be valid for all customers in the hierarchy.
SAP SD Tips by : Sam 
Common Distribution Channel and Division
How to configure common distribution channel and division?
You can define common distribution channels and divisions. This is possible for two areas of SAP, for all master relevant data, and for all condition relevant data.
The path is as follows:
IMG -> Sales and distribution -> Master data -> Define common distribution channels.
IMG -> Sales and distribution -> Master data -> Define common divisions.
Transaction Code - The code here is [ VOR1 ].
After creating the organizational structure and relevant master records you want to use as the masters, that is, in the distribution channels and divisions you are going to use as a reference, you can group distribution channels and divisions separately for master data (which combines customer master and material master records), group condition records, or both master data and condition records.
Let’s say you have a product range that is not different for the four different distribution channels you have (the channels could be telesales, retail, industry, and wholesale.) Neither is there a difference in the customers’ details when they purchase through one or the other. Thus, you will not want to create a multiple of four views of customer master and material master records. Merely create the customer master records and material master records in one of the distribution channels, such as retail. Then assign the other distribution channels you created in the organizational structure setup to this one.
Don’t forget this means you can only create or change master data in the distribution channel that is being referenced. In the scenario above, this means you can only change data for the retail distribution channel. Even if you should access a customer or material master in change mode, press F4 (possible entries), and select telesales, industry, or wholesale, you will receive a message “Sales area is not defined . . . ”
The same is true for the sharing of conditions. If conditions are shared, you need only create a condition in the distribution channel or division you are using as the reference. Obviously, this only pertains to conditions that have the distribution channel and/or division in their key, such as a price based on sales area."
Define Account Assignment Group
How to configure the Sales Account Determination?
Field found in Material Master Sales Organization 2.
To define the General Leger posting :-
IMG -> Sales and Distribution -> Account Assignment/Costing -> Revenue Account Determination
          -> Assign G/L Accounts
With this link, the material that used this account assignment group will be posted with the desired G/L accounts during Billing.
User will not be able to Release the billing document to Accounting if this is not setup.
If you happend to assign it via Cust.Grp/MaterialGrp/AcctKey, then you can let your user use this report to check the material assignment.
* Transaction code VKOA
                   LINE-COUNT 044(001).
        MVKE,    "Sales Data for Material
        C001.      "Cust.Grp/MaterialGrp/AcctKey
                                  S_MATNR FOR MARA-MATNR,
                                  S_VKORG FOR MVKE-VKORG DEFAULT 'ALL'.
                     AND MATNR IN S_MATNR.
                               AND VKORG IN S_VKORG.
   CLEAR C001.
           C001-KTGRD UNDER 'Cust Grp',
           MVKE-KTGRM UNDER 'Matl Grp',
           C001-KVSL1 UNDER 'Acct Key',
           C001-SAKN1 UNDER 'G/L From',
           C001-SAKN2 UNDER 'G/L To  '.
            050 'Material Sales Account Assignment',
            120 SY-UNAME, SY-PAGNO.
    WRITE: /001 'Material',
            020 'Cust Grp',
            030 'Matl Grp',
            040 'Acct Key',
            050 'G/L From',
            060 'G/L To  '.
Block Sales Document Type / Delivery / Billing by Customer
When there is a temporarily stop of business with a customer, you can block new orders to be created for this customer. You can have the options of blocking all the work flow or let the delivery and billing to continue for any open orders.
VD05 - Block/Unblock Customer
OVAS - Sales Order Type Blocking reasons
OVAL - Blocking reasons links with Sales Order Type
OVZ7 - Delivery Blocking reasons
OVV3 - Billing Blocking reasons
In 4.6x, if you found that your Sales Order Billing Block is not working, it is because you need to build the Billing Block for the Billing Type.
SM30 - Table/View   V_TVFSP
Return to :-
Block Material in Sales Order
Is there a way for me to block a material from ever being entered in the Sales Order, if so how?
If you want a material to be blocked, go to the Basic data 1 view of the material,there in the genral data you have " X-plant material status ". Also in Cost estimate 1 view of the material you have Plant Specific Material status. Use the options available to block the material in these two views.
You cannot use the material in sales order
Use the material exclusion function:
SD> Master data > Products > Listing/Exclusion> Create
( Tcodes VBO1, VB02, VB03)
Enter the list/exclusion type B001: For the required
Enter Maintain materials > Save > Exit
Create the order and enter material excluded to test exclusion.
For IMG settings; Go to IMG > SD > Basic Functions>Listing/Exclusion
ENsure that the listing/exclusion procedure is activated for your order type. You can also create your own condition types access sequences and procedures or use the SAP provided ones.
Kris J
Additionally, another option is the sales block in the material master...
It is in one of the two sales data tabs and you are able to configure specific blocks that allow it to be entered on credits but not on orders, blocked from all activity, allowed for quotes only, etc.  It is one setting that becomes sales area specific and can easily be removed if you change your mind.   It also has an effectivity date that can be used.
Regina DeMita
Wrong/duplicate RE Created
  • Check Document Flow for RE
      • No Goods Issue and No Credit Memo created
        • Reject the sales order item
      • No Goods Issue and Credit Memo created
        • Cancel Credit Memo
        • Reject the sales order item
      • Goods Issue and Credit Memo created
        • Create another OR to offset the credit memo created.  Treat this as a normal OR process.  Ensure that account receivable is informed by typing in the item text.  Please do not send invoice to customer as the RE is wrongly/duplicate.
Note: When you create another OR, the delivery department may actually go and delivery the goods to customer.  Thus, it is important to inform them that this OR is for internal adjustment.  The process of posting the goods issue must be done by the delivery side for proper flow.
Return to :-
Sales Order Item price is grey
  • Retrieve the sales order
  • Click the sales order item
  • Click Environment -> Document flow
  • If there is any Billing Invoice including partial deliveries, price cannot be changed.
Return to :-
Partner Procedures
Sold-to-party (Customer Master) - Payment, Tax determination
Bill-to-party - Address to send the invoice to
Ship-to-party - Deliver the goods to
Payer - Pay to who ( a company/person name)
VOPA - Maintain Partner Determination
  • Click Partner Object
  • Click Partner Procedures
  • Double Click on the Procedures Line Items
To pass the partner function contact person (CP) data to the ship-to-party in the delivery document.
  • Go to the Partner Determination procedure for you sales order type. Look for the column that is labelled SOURCE.
    Put SH against partner function CP and it will assign CP from ship-to-party to aftewards.
As long as you have CP in your delivery document, it will be copied from SO to Delivery properly.

Movement type determination and Availability Check
SM30 - Table View - V_TVEPZ -> Assign schedule line categories
  • First check the Proposed schdule line category (SchLC)   - double click on the line item
VOV6 - Maintain the schedule line categories - double click on the line item
  • For example, you can control the default returns movement type.
  • 651 - two steps - with a transfer posting using 453
  • 653 - one steps - direct post to unrestricted used
Control the Transaction Flow (tick to activate the function)
  • transfer of requirement
  • for availability check for sales
  • production allocation active
Return to :-
Sales reservation
Sales reservation takes place automatically through availability check
The setting is on the checking group ( OVZ2 - Define Checking Groups ).
You must set the "Accumul." column. Without setting this it will only check availability but not reserve it!
SAP recommend Accumul. = 3 -> Accumulate the requirements quantity when creating and accumulate the confirmed quantity when making changes.
For manual reservation, you can used MB21, movement type 251 - Goods Issue for sales.
To activate the Sales Order number field, do the followings :-
Activate transaction OMBW
double click movement type 251
double click additional acct. assign.
Tick the required/optional button as per your requirement.
The user have to manage the maual reservation using MBVR.
Reserving material without sales order
In Order to reserve the specific materials for a particular customer, use Strategy 50 to plan your MRP with the materials getting reserved for customer when you make Ind/Collective requirement(1) in MRP4 view of Material Master
or you can create a manual reservation against that particular material and give the customer name in the Receipent Field so that you can easily identify the Material which belong to the Customer
Return to :-
SAP ABAP/4 Programming, Basis Administration, Configuration Hints and Tips
Sales Order Stock
Sales Order Stock are stock with Special Stock type E. It can fall into the usual stock categories such as unrestricted, blocked etc. but "belongs" to a sales order.  For example, you create a sales order for a part and assign a sales item category that generates an individual requisition, the requirement has an account assignment linking it to the sales order schedule line, you convert that requisition to a Purchase Order.
When you receive the Purchase Order, the stock is placed in sales order stock. It will show against the sales order/sales order line. It can only be delivered against that sales order line. Any availability check etc for that material on any other sales order will not take it into account as it is not available except to the sales order line the stock is assigned to.
Return to :-
Analyze the difference between Forecast and Confirm sales orders
MD73 - Display Total Requirements
Enter theMaterial or MRP controller you want to analyze.
Assignment field options :-
1 - If you with to look at how the planned independent requirements have been match to the sales order.  Sales order which
     are over and above that forecasted are not shown.
2 - If you are interested primarily in seeing what sales order are over and above the sales forecast.
3 - If you are interested in seeing all the sales order with indication of whether or not they have been anticipated in the forecast.
4 - If you wish to see all the three reports of the above three options together.
   - Blank if you with to see a complete list of sales order, without any indication of whether they have been anticipated
     in the forecast.
Return to :-
SAP ABAP/4 Programming, Basis Administration, Configuration Hints and Tips
Backorder Processing
Backorder processing is a functionality in SAP where you can change the committments and over-ride the blockage of stocks
marked against sales documents/deliveries. For e.g. you receive an order from a very important customer for material "A" but
the entire quantity of A is committed to another customer "B" via earlier sales orders and this is where BACKORDER processing helps you to change the committment and shift stock due for B to A. This is the benefit of this funtionality.
OMIH - Checking rule for updating backorders
OPJL   - Define new checking rule
OPJJ   - Define scope of check
V_RA - Backorder Processing
Data selection:-
Sold-to-party             Customer code            Mandatory
Sales Organization                                         Mandatory
Distribution Channel                                       Mandatory
Division                                                         Mandatory
Changed confirmed quantity :-
Tick the material you want to changed and click the Backorder button
Confirmed quantity that still can be changed are highlighted.
V.15 - Backorder List
Sales Organization                                         Mandatory
Distribution Channel                                       Mandatory
Division                                                         Mandatory
Third Party Order Processing
Third party order processing is as follows:
Assume three companies X, Y and Z
X - The company,
y - The customer
Z - Vendor
When ever X gets a PO from Y to supply some goods, X has an option of either manufacturing those goods or procuring those goods.
If he is procuring the goods, there are two methods that are generally followed:
Method 1) After receiving the PO from Y, X creates a sales order against Y.
Now at the same time he also creates a PO to a vendor Z to produce the goods
Z produces the goods and supplies to X
X receives the goods from Z
Then X delivers the same goods to Y.
After that X invoices Y and Z invoices X.
Note : Here there is no direct/ Indirect relation between Z and Y.
This process is known as Trading Process. and the Material here is created  with Material type HAWA.
The other method is a Third party order processing method:
Here the glaring difference is that instead of Z supplying the material to X and X in turn supplying the same material to Y.
X authorizes Z to supply the material to Y on his behalf and notify him once the delivery is complete.
Now Z supplies the material to Y and acknowledges the same to X.
Z  will send a copy of delivery acknowledgement and invoice to X.
After receiving the delivery confirmation and invoice from Z, X has to verify the invoice and this process is known as invoice verification and is done in SAP through Tcode MIRO.
The next step for X  is to create an invoice and submit to Y
Only after the invoice verification document is posted  then only X can create an invoice for Y.
This is the business flow that is followed for third party order configuration.
There are few steps that have to be configured to enable the system to function as mentioned above.
If you are always followwing a third party process for a material then you have to create the material using item category group BANS.
The procument type should be marked as External procurement (F) in MRP 2 view of the material master record.
if you are not always allowing third party order processing then u can create a material master record with item category group as NORM and the procurement type should be marked as ( X) meaning both types of procurment ( in house manufacturing and external procurement).
step 2)
the item category in the order should be manually changed as TAS.
For that you need to confugure the item category determination
ord type + item cat grp + usge + Hiv level = Item cat + Manual item cat
OR + NORM +      +       = TAN . + TAS
OR + BANS +       +       = TAS
Step 3)
make sure that during the item category configuration for TAS  you need to mark relevnat for billing indicator as F
step 4)
The schedule line cateogry for this type should be CS.
make sure that you mark  subsequent type as NB - purchase requisition  in this schedule line category as this will trigger the purchase requision order immediately after the creation of the sales order and the PO to vendor is created against this purchase requiesion.
Srinivas Product Group and Sales BOM
My client clubs together certain products with quantities in something they call Product Group.  The customer calls in and orders for the product group and automatically gets in all the associated materials.
Do we need a Sales Order BOM to handle this?
Yes, you have to Confugure the Sales BOM.  But the confugaration of Sales BOM depends upon certain conditions like:
If you want to create the product group and price it at header level or
If you want to assemble the products and depending upon the assemblies you want to price .
For eg.  if the customer asks for a certain combinationa of Material A, B and C respectively,
then you create a Material Master record Material D with item category group as LUMF.
While the Materials A, B and C are created with standared item category groups NORM only.
Then create a sales BOM using Tcode CS01 and enter the following details:
Material : Material D
Plant : Plant in which you created the material.
BOM Usage : 5 (Sales and Distribution)
then give the Materials A, B, and C and give their respective quantities.
Before you have to create pricing condition records for Materials A, B, and C.
Then configure the item categories ( T - code : VOV4).
When processing the sales order, just give the Material D and the system will pick up the corresponding assemblies for that material and populate in the order.
The item category for the header item will be TAP
and the item cateory for the items will be TAN,
In this cas the Material D is called as the higher level Item , and all the assemblies are called as the subitems.
Here the subitems are relevant for pricing and delivery where as the header item is not relevant for neither pricing nor delivery.  It just acts as a text item.
This type of configaration of BOM is known as pricing at item level.   This is used when you dont know what quantities of assemblies the customer is going to order and if the price of the assembly keeps varies.
There is another way of configaring BOM which is pricing at header level.
The difference is that the Material Master D has to be confugured using the item category group ERLA.
Creation of BOM is same.
But you need to maitain the pricing condition record for the header item.
The item categories in this case would be
Header item : TAQ
Sub item TAE;
Where the header item is relevant for pricing and delivery. and subitems are not relevant for neither the pricing nor the delivery.
Depending upon your requirement you configure accordingly,


  1. hi

    nice work Manoj. Thanks a lot ...

  2. Hi manoj
    you have done good work.It's really helpfull to people like me , who are taking training in sap-sd and preparing for interviews.can you please upgrade some real time business problems with solutions provided by SAP

  3. Manoj
    Hats Off to you man. This material is a serious contender for lots on online SD related books. What a dedication and my best wishes for you and your future psotings. Keep up your good work man, you are helping a large community.