Depending on the situation, the system should redetermine conditions or
not. For this, a differentiated control is required, for example:
- 1.  When you create sales orders or billing documents, the condition  types  are partially redetermined although you want to copy the values from  the reference document.
- 2. During other transactions, however, you want to redetermine the condition types instead of copying them.
- 3. The 'New pricing' function on the item condition screen redetermines all new conditions, that means it works with pricing  category 'B'. This is undesirable to a certain extent.
- 4. The same applies to the 'New pricing' function for the entire sales order.
The following text will explain some examples for the use of the pricing type implemented for this purpose (KNPRS):
************************** Example 1 **********************************
You  want to copy condition type 'VPRS' from the sales order into the   billing document. You are using pricing type 'G'. However, as a   consequence the value of the VPRS condition in the billing document  differs from the value of the goods issue posting.
************************** Example 2 **********************************
You  want to copy condition type 'PI01' (price for intercompany billing)   from the sales order into the billing document. You are using pricing  type 'G'.
************************** Example 3 **********************************
The  costs 'VPRS' are to be redetermined when copying a credit memo  request  from a billing document. This is required if you defined the  credit  memo item in such a way that no costs are to be determined. Since  the  pricing requirements are no longer checked when copying, you have to  proceed as described above to eliminate the VPRS.
************************** Example 4 **********************************
The 'New pricing' function on the item condition screen is to  keep the manual condition, this means the function should behave like pricing category 'C'.
************************** Example 5 **********************************
The 'New pricing' function for the entire sales order is to keep  the manual conditions, this means the function should behave like pricing category 'C'.
************************** Example 6 **********************************
Billing  is to be carried out using pricing type 'G'. However, condition  types  with condition category 'S' and 'T' (standard price or moving  costs)  are also to be redetermined. In the standard system this pricing type  copies those condition types from the sales order.
KNPRS, TVCPF, TVCPA
The pricing type controls which condition types are redetermined or which are copied unchanged (however, the items are always  revaluated). Below, you will find a description of the pricing type characteris
Note  that the specified standard pricing type characteristics partly  do not  exist in older releases, or that the standard pricing type   characteristics may be different in the individual releases. Therefore,   the given consulting note should not be considered to be exhaustive. It   merely serves to explain the principle of how a pricing type is   structured and how its characteristics can be influenced. The exact   characteristic of a pricing type in the release being used can be seen   directly in the source code of Form routine KONDITIONSVORSTEP in Main  program SAPLV61A.
- 'A' (Copy price components and redetermine scales):
No condition types are redetermined. Only the scaled prices are adapted due to a changed basis.
- 'B' (Complete new pricing):
           Completely new pricing (as if you created a new item), manual conditions are lost.
Restriction:  Condition types which are not determined via condition  technique (for  example, condition type 'VPRS' or condition types with  KNTYP = 'G'  which are determined using formulas) are NOT redetermined even if you do  not change them manually. 
- 'C' (Copy manual pricing elements and redetermine the others):
Completely new pricing, manual ones are copied.
Caution: Here you have to make sure that all condition types that can possibly be changed manually have T685A-KMANU = 'C' (Manual entry has priority) in Customizing. Otherwise, it is possible that the conditions are displayed twice (automatically and manually) and that both are active.
- 'D' (Copy pricing elements unchanged):
As in pricing type 'A' but the prices are fixed (no scales are read). Condition base value and value are redetermined.
- 'E' (Adopt price components and fix values):
As in pricing type 'D' but neither condition base value nor value are redetermined.
- 'F' (Copy pricing elements, turn value and fix):
Only used within the program.
- 'G' (Copy pricing elements unchanged and redetermine taxes):
- a) The following condition types are redetermined:
- Condition class KOAID = 'D' (Taxes)
- Condition class KOAID = 'C' (Volume-based rebate)
- Condition category KNTYP = 'I' (Intercompany billing conditions)
- Condition category KNTYP = 'R' (Invoice list conditions)
- Condition category KNTYP = 'L' (Always new when copying)
- Condition category KNTYP = 'G' (Cost conditions)
- Condition category KNTYP = 'E' (Cash discount conditions)
All remaining condition types are dealt with like pricing type 'D'. In particular, with pricing type 'G', the system does not only redetermine the taxes but also the cost conditions and the intercompany billing conditions.
- 'H' (Redetermine freight conditions):
The following condition types are redetermined:
- Condition type KNTYP = 'B' (Delivery costs)
- Condition type KNTYP = 'F' (Freight conditions)
- Condition type KNTYP = 'L' (Always new when copying)
- 'I' (Redetermine rebate conditions):
Rebate conditions and scales are redetermined.
- 'J' (Redetermine confirmed purchase net price/value):
Condition types with condition category KNTYP = 'D' (Confirmed purchase net price/value) are redetermined.
- 'K' (Adopt price components and costs. Redetermine taxes):
The following condition types are redetermined:
- Condition class KOAID = 'D' (Taxes)
- Condition class KOAID = 'C' (Rebate)
- Condition category KNTYP = 'R' (Invoice list conditions)
- Condition category KNTYP = 'I' (Price for intercompany billing)
- Condition category KNTYP = 'E' (Volume-based rebate)
- 'M' (Copy pricing elements, turn value):
No conditions are redetermined; during copying, the condition values are multiplied with -1.
- 'N' (Transfer pricing components unchanged, new cost):
Condition types with condition category KNTYP = 'G' (Cost) are redetermined.
Please note that this pricing type has NO effect on the invoice since here the goods issue value from the delivery is usually directly transferred to pricing. Redetermination of the settlement price by subsequently reading the material valuation segment when executing pricing type "N" would result in the fact that the goods issue value information were irretrievably lost.
This standard behavior can be changed by a modification only. If required, please contact your local consultant or SAP Remote Consulting.
- 'O' (Redetermine variant conditions):
Condition types with condition category KNTYP = 'O' (Variants) are redetermined.
- 'P' (Revaluation only):
The system does not redetermine any conditions; only the revaluation occurs.
- 'Q' (Redetermine calculation conditions):
Condition types with condition category KNTYP = 'Q' (Costing) are redetermined.
- 'U' (Redetermine precious metal conditions):
Condition types with condition category KNTYP = 'U' (Discount/surcharge for precious metals) are redetermined.
SolutionThere are two options to change the standard behavior:
- 1.  Set up a new pricing type (for example, 'X') and allocate the  pricing  type in the document flow (copying control in the IMG, Customizing  depending on the source and target document type via  Transactions VTAA,  VTAF, VTLA, VTLF and VTFF).
- 2. Change the pricing type used in the standard system.
Procedure
For  both purposes, USEREXIT_PRICING_RULE is used in Program RV61AFZA.  This  is called after the setup of internal table STEU which defines the  behavior of pricing types.
**************************   Example 1   ******************************
Picing  type 'X' is to be set in a way that condition 'VPRS' (which has   condition category 'G') is not redetermined during the billing.  Otherwise it behaves as pricing type 'G'.
Up to Release 4.0B, USEREXIT_PRICING_RULE can be implemented as follows: FORM USEREXIT_PRICING_RULE
  STEU-KNPRS = 'X'.
  STEU-KNTYP = 'LRIE......'.
  IF KOMK-KNUMA IS INITIAL.
    STEU-KOAID = 'CD........'.
  ELSE.
    STEU-KOAID = 'D.........'.
  ENDIF.
  STEU-MAUEB = ' '.
  APPEND STEU.
ENDFORM.
In  order to ensure that pricing type 'X' acts exactly like pricing type   'G', the FORM routine USEREXIT_PRICING_COPY in Program RV61AFZA is to be   used in releases lower than Release 4.0A (if you create a document  with  reference to another document, this is called: copying control;  here, the MODE is the pricing type):
FORM USEREXIT_PRICING_COPY.
   IF MODE CA 'X'.
     IF KONV-KSTEU NA 'CEF'.
        KONV-KSTEU = 'D'.
     ENDIF.
   ENDIF.
ENDFORM.
In  this case, you should note that the billing document contains a   special rule concerning cost condition 'VPRS'. If the goods issue for   the delivery note to be billed is posted, the value of the goods issue   is copied into condition 'VPRS'. This is hard-coded. You can prevent   this by setting the field TKOMP-WAVWR to zero in include LV60AFZZ,  USEREXIT_PRICING_PREPARE_TKOMP.
In higher releases, pricing type 'K'  is also available, which copies the  VPRS of the order to the billing  document and does not redetermine it  unless there is no goods issue  posting (otherwise, the above-mentioned special rule applies.)
***********************   Example 2   *********************************
Pricing  type 'Y' is to be set in a way that this works as pricing type  'G' but  without redetermining the intercompany billing conditions 'PI01' and  'PI02'. They have condition category 'I'.
Changes in program RV61AFZA:
FORM USEREXIT_PRICING_RULE.
  STEU-KNPRS = 'Y'.
  STEU-KNTYP = 'GLRE.......'.
  IF KOMK-KNUMA IS INITIAL.
    STEU-KOAID = 'CD........'.
  ELSE.
    STEU-KOAID = 'D.........'.
  ENDIF.
  APPEND STEU.
ENDFORM.
In  order to ensure that pricing type 'Y' acts exactly like pricing type   'G', the FORM routine USEREXIT_PRICING_COPY in Program RV61AFZA is to be  used:
FORM USEREXIT_PRICING_COPY.
   IF MODE CA 'Y'.
     IF KONV-KSTEU NA 'CEF'.
        KONV-KSTEU = 'D'.
     ENDIF.
     CLEAR: KONV-SAKN1.
   ENDIF.
ENDFORM.
***********************   EXAMPLE 3   *********************************
Pricing  type 'Z' is to be set in the same way as pricing type 'D', but  this  time the costs are to be redetermined. Up to Release 4.5B, you can   implement USEREXIT_PRICING_RULE as follows (as of Release 4.6A, pricing  type 'N' is available for this procedure):
FORM USEREXIT_PRICING_RULE.
  STEU-KNPRS = 'Z'.
  STEU-KNTYP = 'G.........'.
  STEU-KOAID = '..........'.
  STEU-MAUEB = ' '.
  APPEND STEU.
ENDFORM.
In  order to ensure that pricing type 'Z' acts exactly like pricing type   'D', the FORM routine USEREXIT_PRICING_COPY in Program RV61AFZA is to be  used:
FORM USEREXIT_PRICING_COPY.
   IF MODE CA 'Z'.
     IF KONV-KSTEU NA 'CEF'
        KONV-KSTEU = 'D'.
     ENDIF.
   ENDIF.
ENDFORM.
Note:  To correct the problem, you should define your own pricing types.  In  some cases, it may be required to change existing pricing types. This   is required if you want to influence the reaction to certain field   changes in the sales order (see Note 26115 for this). This also allows   you to influence the 'New pricing' function in the sales order and  billing document. This function uses pricing type 'B'.
***********************   EXAMPLE 4   *********************************
The  'New pricing' function is meant to keep the manual changes. By   default, pricing type B' is called. As of Release 4.5A, however, you   have the option to store another pricing type for this purpose in  Customizing of the pricing procedure (Transaction V/08).
                    In  USEREXIT_CHANGE_PRICING_RULE of program MV61AFZA, you can replace   pricing type 'B' with another pricing type, for example, 'C' up to  Release 4.0B. 
                   
FORM USEREXIT_CHANGE_PRICING_RULE USING PRICING_RULE.
   IF PRICING_RULE = 'B'.
     PRICING_RULE = 'C'.
   ENDIF. ENDFORM. 
**********************   EXAMPLE 5   **********************************
The  'New pricing' function is to be set for the entire sales order in a   way that manual changes are kept. In the standard system, pricing type   'B' is called. As of Release 4.5A, however, you have the option to store   another pricing type for this purpose in Customizing of the pricing  procedure (Transaction V/08).
Up to Release 4.0B, a solution is only possible by means of a modification in program MV45AF0F:
  FORM FCODE_KONB.
    PERFORM PREISFINDUNG_GESAMT USING CHARB.      <<<<<<<<<< delete
    PERFORM PREISFINDUNG_GESAMT USING CHARC.      <<<<<<<<<< insert
  ENDFORM.
FV45PF0P has to be changed in the same way:
FORM PREISFINDUNG_NEU. * Aufruf neue Preisfindung
  PERFORM PREISFINDUNG USING CHARB.               <<<<<<<<<< delete
  PERFORM PREISFINDUNG USING CHARC.               <<<<<<<<<< insert
* geänderte Informationen in Beleg übernehmen
  PERFORM VBAP_BEARBEITEN.
  PERFORM VBAP_BEARBEITEN_ENDE.
ENDFORM.
***********************   EXAMPLE 6   *********************************
Pricing  type 'X' is to be set so that it functions like pricing type  'G', but  also redetermines condition categories 'S' and 'T'.
Change in Program RV61AFZA:
FORM USEREXIT_PRICING_RULE
  STEU-KNPRS = 'X'.
  STEU-KNTYP = 'GLRIEST...'.
  IF KOMK-KNUMA IS INITIAL.
    STEU-KOAID = 'CD........'.
  ELSE.
    STEU-KOAID = 'D.........'.
  ENDIF.
  STEU-MAUEB = ' '.
  APPEND STEU.
ENDFORM.
To  ensure that pricing type 'X' behaves exactly like pricing type 'G',   use FORM routine USEREXIT_PRICING_COPY in Program RV61AFZA:
FORM USEREXIT_PRICING_COPY.
   IF MODE CA 'X'.
    IF KONV-KSTEU NA 'CEF'.
        KONV-KSTEU = 'D'.
     ENDIF.
   ENDIF.
ENDFORM.
********************   Additional information   ***********************
You  can display the standard behavior of the pricing types in FORM  routine  KONDITIONSVORSTEP (up to Release 3.1I in Include LV61AF0K, as of   Release 4.0A in Include LV61AA12). There, for each pricing type, a line   exists in internal Table STEU. The fields have the following meaning:
- KNPRS
This is the pricing type used.
- KNTYP
This field contains a positive list of the pricing categories (up to 10 values can be entered).
- KOAID
This field contains a positive list of the condition classes (up to 10 values can be entered).
- MAUEB
This field specifies whether manual changes should be copied.
- STFKZ
This field contains a positive list of the scale indicators (up to 5 values can be entered).
- NOTYP
This field contains a negative list of the condition categories (up to 5 values can be entered).
- KDUPL
This field contains a positive list of the structure conditions (up to 3 values can be entered).
- NOKDUPL
This field contains a negative list of the structure conditions (up to 3 values can be entered).
- KFKIV
This field specifies whether intercompany billings should be redetermined ('.' or 'X' can be entered).
- KVARC
This field specifies whether variant conditions should be redetermined ('.' or 'X' can be entered).
- PRSQU
This field specifies whether the price source should be taken into account ('.' or SPACE can be entered).
Note that most condition attributes (fields of the XKOMV structure) can also have the value SPACE. To use the above 'CA' or 'NA' statements in the IF statements also in these cases as required, you can fill the fields of the STEU line with a corresponding number of '.' characters. These values are mainly checked in FORM routine XKOMV_AUFBAUEN_PRUEFEN (up to Release 3.1I in Include LV61AF0X, as of Release 4.0A in Include LV61AA65).
the loan company that grants me loan of 5,000,000.00 USD When other loan investors has neglect my offer but mr benjamin lee granted me success loan.they are into directly in loan financing and project in terms of investment. they provide financing solutions to companies and individuals seeking access to capital markets funds, they can helped you fund your project or expand your business.. Email Contact:::: Also 247officedept@gmail.com or Write on whatsapp Number on +1-(989-394-3740)
ReplyDelete