on 11-11-2008 4:56 AM
Hello,
I have a requirement for sales and distribution as follows:
Condition ZXXX has the price of the material determined by an access sequence
Another condition type (YXXX) has to be reported and it´s value should be calculated as follows:
YXXX = ZXXX * Q (where Q will be a percentage)
How should I do this in the pricing procedure ? is there any requirement or formular that already does something like this ?
YXXX will be calculated only if condition ZXXX is in the sales order
Kind Regards.
You don't need to do any coding to accomplish this. Condition Type YXXX should be of Calculation Type Percentage. You then need to create a condition record for YXXX. This condition record will have a percentage stored instead of a dollar amount. Then in the pricing procedure, there are 2 fields. From Reference Step and To Reference Step. If the ZXXX Condition Type is step 100, then you would put 100 in the From Reference Step and in the To Reference Step on the line in the pricing procedure for Condition Type YXXX. This configuration will take the percentage from the condition record for YXXX and multiple it by the value in step 100, which is the value for ZXXX.
Hope it helps,
Brian
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I tried this last one and It didn´t worked out, does it matter the order of the condition type in the pricinf procedure ?
Z004 = Step 700
ZAVA = Step 13
Z004 = ZAVA * Percentage
I have other question, is it possible that in a condition type (during sales order creation ) which can be manually proccessed you input a quantity in the amount field and it could be multiplied by a percentage ?
So as soon as you input 10,00 the system automatically multiply it by a percentage.
Is it possible to use your from - to reference field to achieve it ?
Kind Regards.
This is my code but I don´t know if im updating correctly the field:
FORM FRM_KONDI_WERT_601.
*{ INSERT CTDK900408 1
*
DATA us_kschl LIKE rkomv-kschl.
us_kschl = 'ZAVA'.
clear: rkomg, rkonp.
checks if actual the right condition has been found
loop at xkomv into rkomv.
no valid entry found -> exit
if sy-tabix gt xkomv_tabix and xkomv_tabix ne 0.
clear rkomv.
exit.
endif.
if actual entry is correct determine KONP and KOMG
if rkomv-kschl = us_kschl.
*KOMV-KWERT Condition Valie
*KOMV-KBETR Amount
DATA: Prueba TYPE P DECIMALS 3.
Prueba = konp-kbetr / 1000.
xkomv-kbetr = ( rkomv-kbetr * konp-kbetr ) / 1000 .
endif.
endloop.
if us_kschl ne rkomv-kschl.
clear rkomv.
endif.
*} INSERT
ENDFORM.
Brian's solution will work. It uses standard SAP config. Try to stay away from ABAP routines unless you have to. In this case you don't
In your Procedure
Cond Type Step From To
ZAVA 13
....
....
Z004 700 13 13
Now create a record in VK11 for the Z004. the value is your percentage. Make sure you use the same access sequence for both ZAVA and Z004.
Hi there,
Try this,
Define the condition type as A percentage. Condition class as either A or B as per your requirement.
In the pricing procedure in V/08, there is something called Alt calculation type. There define a new requirement where the system takes the value of ZXXX & calculate ZXXX * Q.
Also since YXXX = ZXXX * Q, if ZXXX is zero, then YXXX will also be 0. So you need not put a condition that YXXX should be there only of ZXXX is there.
MAintain the condition records for ZXXX.
Explain the requirement to the ABAPer. You have to get the access keys to define the routines in VOFM --> requirements --> Pricing.
Regards,
Sivanand
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Dear David,
Through develop new pricing routine with the help of ABAPer you can get this requirement.
Go to VOFM transaction develop the new routine as per your logic then assign that routine to YXXX condition tye in the procedure.
I hope this will help you,
Regards,
Murali.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
110 | |
12 | |
11 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.