cancel
Showing results for 
Search instead for 
Did you mean: 

Volume discount based on value or cumulative tonnage with time frame

Former Member
0 Kudos

Hi there,

I have the situation as explained in the scenario below:

Sales Contract

Validity: 1.1.2008 - 31.12.2008

Material 241 - 5000 MT (metric tonne)

-


We then defined a discount breakdown as follows:

Discount Breakdown (defined in the Sales Contract)

Qty :: Discount

0 - 1000 :: 5%

1001- 2000 :: 7%

2001 - 3000 :: 10%

3001 - 4000 :: 13%

4001 - 5000 :: 15%

-


We then create the following Sales Order with reference to the Sales Contract:

Sales Order (released based on Sales Contract)

Order :: Date :: Qty :: UOM :: Discount Applicable

SO-001 :: 15.1.2008 :: 900 :: MT :: 900 x 5%

SO-002 :: 10.2.2008 :: 500 :: MT:: 100 x 5% and 300 x 7%

Accumulated 1400

SO-003 :: 1.3.2008 :: 800 :: MT :: 700 x 7% and 100 x 10%

Accumulated 2200

-


As you can see above, the discount is calculated and given based on accumulated quantity. In the first sales order for 900 MT, it is still within the 0-1000 range thus a 5% discount is applied. Where-as in the second Sales Order for 500 MT, 100 MT is given 5%. Once this has happened, it has exceeded the discount bucket for 5% and thus the remainder 400 MT is given 7%.

Is there anyway to setup the above scenario without customization in standard SAP?

Thank you.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

hello, friend.

try this, maybe this will work.

n.

define condition records for-

condition types/discount rates/maximum base quantity as follow:

Z001, 5%, 1000MT

Z002, 7%, 1000MT

Z003, 10%, 1000MT

Z004, 13%, 1000MT

Z005, 15%, 1000MT

now you assign all of these to an exclusion group (IMG > SD > Basic functions > Pricing > ConditionExclusion). we then specify that if the system finds all condition types present, that it should just choose the lowest.

since condition update is checked (try "quantity" scale in your cond types), when you create a sales order, the system will choose the lowest discount. this will continue until 1000MT is used up. the system will then use the next lowest discount, and then the next lowest.

so, if you create an order for 1,500MT, the first 1,000MT will be 5% discount. since maximum base quantity is reached, the next 500MT will be at 7%.

please tell me if this will work for you.

regards.

P.S.

you could also do rebates. scales are supported and you can accumulate order quantities and accrue rebate credits to customers. you can partially or fully settle the rebates.

Edited by: Jonathan Yap on Jan 27, 2008 8:09 PM

Former Member
0 Kudos

hello, friend.

yes, this can be supported by standard. one of the things you have to do is to activate "condition update" in your pricing condition type. you can do this by doing V/06 and selecting the condition type.

you also need to determine the calculation type (basis for calculation, whether quantity, gross weight, net weight, etc.)

once this is done, you can specify maximum values or number of orders (up to 3) for the cumulative values.

please tell us if this helped.

regards.

Former Member
0 Kudos

Hi there,

You mentioned up to 3 orders. Does this mean that if I will be generating more than 3 Sales Order then I cannot use this method?

Thanks

Former Member
0 Kudos

hello again.

the SAP standard is up to 3 orders. you can choose to leave the number of orders blank so that the system checks the values or quantities (depending on calculation type). however, there were postings in other threads of this nature that seem to indicate the number of orders "may" be altered using ABAP.

hope this helped.

Former Member
0 Kudos

Alright ... let me try it first. Thank you.

Former Member
0 Kudos

Hi there,

Just to clarify... this condition need to work with the Sales Order generated a Sales Contract ... thus the discount is actually setup in the Contract.

However, the discount need to be reflected in the Sales Order.

I understand that there is a way to setup the condition group to work in the Sales Order ... but how do we tied this back to the Contract?

Can you perhaps elaborate further on your solution?

Thank you.

Former Member
0 Kudos

if you set up price condition types, they will appear in the sales order and in the contract as well.

usually, you create the contract first. you indicate in the contract all the agreements with the customer. then, when the order comes in, you create a sales order with reference to the contract. any conditions you set in the contract will be copied into the sales order.

at the same time, your contract will be updated. let's say the agreed quantity, for example, was 10,000 tons. you create a sales order for 2,000 tons, with reference to this contract. when you go back to your contract, the system will show you a total order of 2,000 and remaining 8,000 tons left.

Edited by: Jonathan Yap on Jan 24, 2008 4:29 PM

Former Member
0 Kudos

Hi Jonathan,

Thanks a lot for your prompt reply. Appreciate it.

I have tested the solution proposed but it didn't work as expected.

Discount condition type: ZTST

Condition set up in Contract:-

Scales: From 10PC --> 5% Discount

20PC --> 7% Discount

It works perfectly in the sales contract as when I created the contract with qtty 30, the condition type appeared with 7%. But when it comes to sales order, the same pricing is copied over to the sales orders.

1st sales order, 12PC but 7% has appeared (where it should be 5%). For 2nd sales order (8PC), it is also calling 7%. The pricing condition is been copied to sales order without any changes. No refresh.

Your advice is highly appreciated.

Thanks...Soo

Former Member
0 Kudos

hello again, friend.

you are right. the prices and discounts were already determined at contract level. we assume that the customer is committed to the contract quantity. the sales order with reference to the contract merely copies the conditions of the contract.

i do have to apologize because i overlooked that you also have to set the "group conditions" in the condition type, so that it will accumulate the quantities.

also try sales orders without reference to the contract and see if this works.

will look into this some more if you wish.

regards.

Former Member
0 Kudos

Hello...thanks again for your reply. Appreciate that...

I have tested (group condition ticked - but I thought group condition is only within a document?!) and

I created 2 orders without refering to contract. Yes, the cumulative value in VK13 shows the list of orders that used the condition type and the cumulated value.

But the 2 orders calculated the condition types based on the pricing scales. It didn't add up the total

quantity in both orders and calculate the discount amount based on the total qtty.

I think, the condition update feature in the condition type is used to "prevent" further discounts if I set the maximum value/qtty. For my case, there isn't any max value or qtty. The discount is merely based on the accumulated qtty from 1 source (sales contract) and add up the sales order qtty from different sales orders.

So, any idea?

Former Member
0 Kudos

hello, again.

well, there is another way, and it is through rebate agreements. this may satisfy your requirements.

in essence, you have agreement with your customer. within a certain period of time, all his orders form a basis for rebates. but i have to rcheck if scales are supported by rebates. also, you grant the discount after the sales billing, not during order creation.

i promise to keep working on this.

regards.