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.
This logic follows the simple rule:
In a pricing result for an item, there can only be one active non-statistical price condition (condition class KOAID = ‘B’). If, after you execute all other exclusion options, several non-statistical price conditions were active, only the last price condition would remain active. All conditions (prices, surchargesand discounts) before this last non-statistical price condition are set to ‘Y’ (inactive) provided that they were not already deactivated by one of the other exclusion options.
Technically, the ‘last price’ logic is implemented in the following way. This logic is in the FORM XKOMV_BEWERTEN (Include LV61AA55). In this routine, the conditions are processed in succession from top to bottom in the sequence in which they are specified in the pricing procedure (“LOOP AT xkomv.”). During this loop program run, the system
notes the table index (variable: letzter_preis) of the last active non-statistical price condition. This first LOOP is followed by a second LOOP that deactivates the conditions, which precede the row with the letzter_preis table index, with ‘Y’, provided that they are not yet inactive elsewhere.
Note that the routine FORM XKOMV_BEWERTEN may run twice provided that the other exclusion options were used. In this case, the exclusion of the conditions excluded with ‘Y’ is reversed once again (FORM XKOMV_AUSSCHLUSS, Include LV61AA56) because the condition exclusion has priority over the other exclusion options.
The second final valuation run then results in the final exclusion of conditions with ‘Y’ because only now do you know if the conditions were not already excluded elsewhere, that is, the conditions were not already excluded using the KMANU indicator or exclusion groups.
Furthermore, note that the exclusion with ‘Y’ also affects the determination of ‘value-based’ condition bases of follow-up
conditions. The system takes account of conditions excluded with ‘Y’ if reference steps are maintained in the pricing procedure for the follow-up condition. This occurs because the exclusion with ‘Y’ is not yet known when the condition values of the affected reference steps are totaled.
If no reference steps are maintained, the system does not take account of conditions excluded with ‘Y’. In this case, the condition basis is filled from the ZWISU variable, which is always reset if a more active non-statistical price condition is found when conditions are processed in sequence.
(For more information, see Note 834174 and Note 836243.)