понедельник, 23 ноября 2015 г.

How to setup Price Condition, depending on the configuration (updated 21.12.2015)

Vehicle Management System's master data based on configurable material, where at least colors can be defined.
Here a short "step-by-step" customizing.


1. Keep in mind reference characteristics’ values, you want to involve for pricing. Here two colors (PGU & RHM), which will be additionally charged:

Class – DR
Characteristic – DR_EXTCOLORS
Values – PGU, RHM



2. Define reference characteristic for price conditions, which depend on configuration (separately for SD and MM pricing). T-code CT04, new characteristic CONFIGPRICESD


In Additional Data view point SDCOM - VCOND reference.
!!! You should fill this fields before view "Values".





One time I've got an error 

Field VCOND not found in table SDCOM
Message no. C1024

Don't know the reason, but I've bypassed it through transfer IDOC CHRMAS / CHRMAS05 from other system, then created well..

Specify price characteristics’ values PGU, RHM (same values will be defined as variant conditions further)


3. Attach characteristic CONFIGPRICESD to class DR (t-code CL02):


4. For every value of characteristic CONFIGPRICESD create Variant Conditions (VK30):


5. Define object dependency (type Procedure) CONFIGPRICESD to bind together next objects (t-code CU01):
  • reference characteristic' value (step 1)
  • price characteristics’ values (step 2)


Edit dependency:


 With source code:
 
$self.CONFIGPRICESD = 'PGU' if DR_EXTCOLOR = 'PGU',
 
$self.CONFIGPRICESD = 'RHM' if DR_EXTCOLOR = 'RHM'

For ERP Enhancement Package 8 the syntax is like that (example from other case):

$SELF.CONFIGPRICESD1 = 'B001' IF AEQ_BRAKE1 EQ 'B001',
$SELF.CONFIGPRICESD1 = 'K001' IF AEQ_BRAKE1 EQ 'K001',
$SELF.CONFIGPRICESD1 = 'C001' IF AEQ_TYRES1 EQ 'C001',
$SELF.CONFIGPRICESD1 = 'G001' IF AEQ_TYRES1 EQ 'G001',
$SELF.CONFIGPRICESD1 = 'BR01' IF AEQ_TYRES1 EQ 'BR01',
$SELF.CONFIGPRICESD1 = 'A001' IF AEQ_WHEELS1 EQ 'A001',

$SELF.CONFIGPRICESD1 = 'A002' IF AEQ_WHEELS1 EQ 'A002'


6. Attach created dependency to material (t-code PMEVC)
 
 

Result:



7. Create price conditions for material (VK11):
  • VA00 – absolute value
  • VA01 – percentage value



8. Now, when you create Sales Order with material DRS4D1615DG146 and color PGU, surcharge appears in pricing under condition VA00:



9. Also you can check if variant condition works properly in PMEVC. Select material and push Test (Shift+F8) button. Then select values to simulate pricing and push Pricing (Ctrl+Shift+F7) button. If value's combination  is related to pricing, Net value screen appears (3):


10. Improvement.



Imagine, that you use value PGU in several characteristics, let's say DR_EXTCOLOR and
B1_EXTCOLOR your dependency (step 5) will be like that:

$self.CONFIGPRICESD = 'PGU' if DR_EXTCOLOR = 'PGU' or B1_EXTCOLOR = 'PGU',
$self.CONFIGPRICESD = 'RHM' if DR_EXTCOLOR = 'RHM'

In such cases is better to use Expression "SPECIFIED" to point all characteristics, which could include value 'PGU'. Having that, the dependency (first row) will look much better:

$self.CONFIGPRICESD = 'PGU' if DR_EXTCOLOR SPECIFIED OR B1_EXTCOLOR SPECIFIED

After assignment in PMEVC you will be able to see all characteristics, participated in dependency:

 

The dependency could be assigned to materials in two ways:

  • On material level (only selected materials, one-by-one), or
  • On material's characteristic level (all materials with this characteristic, in-mass). For this way, select any material with characteristic, involved in pricing and assign dependency to this characteristic:





Benefits:
  • you can use the same Reference Characteristic (CONFIGPRICESD) for all color characteristics
  • you can use the same Variant condition (PGU) for whole range of materials
  • the dependency is much better to maintenance 
Here you can see a short video regarding the topic and mass price handling:



Комментариев нет:

Отправить комментарий