SAP Tips – In Billing how was condition VPRS determined?
Go to the detail display of the VPRS condition type.
- If the condition control (KSTEU) is set to ‘H’, the cost was taken from the goods issue.
- If it set to ‘A’, it was redetermined from the valuation segment of the material master, in case of ‘D’ or ‘E’ it was copied from the preceding document.
SAP Tips – ‘Y’ – “Inactive because of subsequent price”
Use of KINAK ‘Y’ (‘last price’ logic) to exclude conditions:
In addition to the condition exclusions, which you can influence in Customizing and in the condition master data, R/3 pricing still has a condition exclusion that was programmedusing a hard-coded logic: the ‘last price’ logic. Read more 
SAP Tips – Using field PSTYV in a Pricing condition table
For technical reasons, the field PSTYV was included in the structure KOMP, but not in the structure KOMG (Allowed Fields for Condition Structures).
To solve the problem, proceed as follows:
1. Call the ABAP Dictionary (transaction SE11) and create the data type ZZPSTYV. Select PSTYV as the domain. As the short description, you can use ‘ZZ – Sales Document Item Category’ (for example) and as the field labels, you can use the field labels of the data type PSTYV. Save, check and activate your entries.
2. In the ABAP Dictionary (transaction SE11), enter the structure KOMPAZ, switch to change mode and make the following entries:
Component Component type
ZZPSTYV ZZPSTYV
Save, check and activate the change.
3. Note: Due to the changes in the structure KOMPAZ, the field ZZPSTYV is now known in the structures KOMG and KOMP because the structure KOMPAZ is included in both structures.
4. Call transaction SPRO. Go to ‘Sales and Distribution > Basic Functions > Pricing > Pricing Control’ and execute ‘Define Condition Tables’. Select ‘Conditions: Allowed fields’ and enter ZZPSTYV as a new entry.
5. Note: When you create the condition table Axxx, you can now use the field ZZPSTYV as a key field.
6. Populate the new field you defined by including the following source code line in the user exit USEREXIT_PRICING_PREPARE_TKOMP: MOVE xxxx-PSTYV TO TKOMP-ZZPSTYV.
In order processing, the user exit is available in the include MV45AFZZ, and in billing document processing, it is available in the include RV60AFZZ
Remember too that you can use this technique for other user defined fields. For header fields, use the structure KOMKAZ instead of the structure KOMPAZ, and use the user exit USEREXIT_PRICING_PREPARE_TKOMK instead of the user exit USEREXIT_PRICING_PREPARE_TKOMP.
More information is available in transaction SPRO when you go to ‘Sales and Distribution > System Modifications > Create New Fields (Using Condition Technique) > New Fields for Pricing’, and in OSS Note 21040
SAP Tips – Determination of price unit and unit of measure:
In the SD pricing procedure sometimes you may be confused how the system determines the Net Price:
Determination of price unit and unit of measure: Read more 
SAP Tips – Billing document cancellations have hard coded copy routines
Very valuable tip on Billing document cancellations.
Routine LV60A006 is hardcoded by SAP for billing item cancellation.
Routine LV60A005 is hardcoded by SAP for billing header cancellation. Read more 
Text Determination – Reference Duplicate Copy
In SAP sales and distribution processing, there are two options for copying a text to documents:
- a) Duplicating text
b) Referencing text
Whether you want to duplicate or reference a text, use text Customizing in transaction VOTX or VOTXN (as of Release 4.70) for each desired text type in the different text determination procedures.
In Release 4.6C or lower, the “Reference/duplicate” (TTXER-REDUP) indicator is called “Copy”. As of Release 4.70 it is called “Reference/duplicate” (TTXERN-REDUP). Read more 
Smartforms – upload/download
Scenario - you have a smartform in a system and need to move it to another system and for some reason cannot get there with a transport path. Do you know that you can download a Smartform as an XML file to your desktop and then re-upload the smartform in your new system. This will copy the entire form, all logic as well as the global settings and pages and windows. This is especially useful for copying smartforms from ERP to CRM or visa versa. (obviously you will need to adapt a lot of extensive logic when delaing with CRM and ERP (due to different source tables/fields/variables etc. but you may save some time).
To do this use Read more 
Great Rebate OSS notes
Stumbled across this rebate OSS notes which is very good if you are a SAP consultant and want more information on SAP rebate processing:
Note 75778 – Consulting/troubleshooting for rebate processing
Plants Abroad – Great OSS notes
Here are the OSS notes you need to know of when implementing Plants abroad in SAP: Read more 
New Determination of Sales Document Status
Tip – Credit Management Report
Report : CHECK_CM
This standard SAP report gives complete credit management analysis executed for a sales document.This report is very helpful for analyzing credit management issues.
Tip – Pricing analysis
This is one good standard SAP tool for pricing analysis.
Transaction : PRCAT
The more you dig the more it is helpful
Tip – Price report
Is it possible to have a report which shows who changed what pricing condition record at what time and what was changed?
Yes – use SA38 to execute report – RV16ACHD
or use transaction code – S_P6B_12000142
Great tip – SE16n Shortcut
Instead of typing SE16N to access General table display, try just typing “N” into the command field.
Cross System Lock – ECC CRM
Hi Glynn, What do I do if I have a document that is blocked in 1 system when operating with ECC and CRM?
Answer – You need to start investigating the cause of the block/lock. I generally follow the following process:
1) Check document for errors in ECC and fix.
2) Check document for errors in CRM and fix.
3) Check middleware queues SMQ1 and SMQ2.
4) From CRM
Great Pricing OSS consulting note
note: 836243
This note deals with the following topics in detail:
1. Attributes of the inactivity indicator (KINAK field).
2. Use of the KZNEP exclusion indicator to exclude conditions.
3. Condition exclusion based on the properties of thecondition type.
4. Use of exclusion group Customizing to exclude conditions.
5. Use of KINAK ‘Y’ (‘last price’ logic) to exclude conditions.
6. Summary/program steps for condition exclusion.
7. No exclusion on header level
Transaction and Screen Variants
Tip – Did you know that you can control elements of a screen display from within a transaction, say for example a sales document eg: VA01, for example program SAPMV45A screen 4440, so that only specific fields are shown to the user and are available for input or required to have input. Use transaction SHD0 – there is great SAP documentation on the use of these settings as well.
Pricing rules in TVCPF
Tip – Any OSS note that is in version 27, is guaranteed to have a lot of value, the OSS note 24832 should be standard reading for anyone
Pricing Analysis in ERP
Tip – How many time have you done a pricing analysis and found the error:
VE 108 “Condition record exists but has not been set” or
VE 008 “Condition record exists (removed manually)”?
There is a great OSS note that you can use to determine the cause of these errors – See OSS note 859876
SAPconnect emails from SAP output
How do we configure our system to send emails or faxes?
You can use the SAPconnect solution. Monitor the transmission requests with transaction SOST.
You can configure the SMTP server for mail or the RFC destination for faxes with transaction SCOT.
You are also able to do a routing test and internal trace if required.
Output condition record ignored
Tip – Did you know that if you set a output condition record with no printer. The condition record is ignored by the system for example in VV12, VV22, VV32.
Mass change of Sales orders in VA05
Tip - You may be used to VA05. You may now be using a more user friendly transaction VA05N, which displays the results of sales order list in the ALV grid format. But did you know that VA05 has a mass update function.
Try the following: execute VA05, then select Edit –>Mass change –>New Pricing. Some of the changes are more logical to use in this report than others such as the pricing. Changing material or plant is a bit more cumbersome.
SD – ERP – Worklists
Tip – Often people ask what transaction codes/reports should be executed by the business as part of a daily or weekly function. The exact list and frequency of execution is dependent on the business process however for SD the following may be used:
V.26 – Sales Documents By Object Status (System or User Status)
V.00 – Incomplete SD Documents
VA14L – Sales Documents Blocked for Delivery
V23 – Sales Documents Blocked for Billing
V.25 – Release Customer Expected Price (Used for EDI)
V_RA – Backorder Processing: Selection List by sales docs
CO06 – Backorder Processing:
Item usage
Q – This question is regarding item usage.
I know that item usage is one of the determinants of item category at transactional level, but wonder how the system is picking up this value. I know that item usage can be defined in IMG and further used in determination settings for item category. My doubt is how system is determining the value of item usage at transactional level (for example while creating quotation or order).
A – The item determination based upon item usage can be proposed in sales document processing either by the Customer Material Information Record (VD51) or by ABAP code, based upon specific process or material characteristics. An example of the determination of the item usage is often found in Includes such as – FV45PFAP_VBAP_FUELLEN.
Additional info – Data Element – VWPOS
Used in KNMT, T184, TVVW and others.
Route Determination Naming Convention
Hi Glynn,
Do you have any tips on naming conventions for routes?
Sure,
The simplest is:
country ISO code + numeric sequence.
eg-India = IN0001
The sequence can have a indicator for a plant (ship from) eg:
IN1001 = India Plant 1 route 001
IN1002 = India Plant 1 route 002
IN3001 = India Plant 3 route 001
IN3112 = India Plant 3 route 112
But then the limit is 9 plants in a single country and 999 routes per plant. (Generally not many companies have more than 9 plants in a single country.)




