Vehicle Management System's master data based on configurable material, where at least colors can be defined.
Here a short "step-by-step" customizing.
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..
4. For every value of characteristic CONFIGPRICESD create Variant Conditions (VK30):
Result:
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',
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:
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
!!! You should fill this fields before view "Values".
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'
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:
Комментариев нет:
Отправить комментарий