cancel
Showing results for 
Search instead for 
Did you mean: 

Sales Order Block Based On Order Quantity

Former Member
0 Kudos

Greetings Experts,

I want to achieve following thing :

If Order Quantity > 300 Units then order will be save normally.

If Order Quantity < 300 Units then order will be generate in block formate, i.e. delivery block OR billing block.

Thanks

--

Hiren Patel

Accepted Solutions (1)

Accepted Solutions (1)

VeselinaPeykova
Active Contributor
0 Kudos

In addition - you mentioned billing block as an option, but in case you use the standard order-to-cash process, this might not be very useful from business point, since it would mean that you prevent billing after you have already delivered the products to the customer - a bit too late in case the idea is to optimize the logistics processes.

Nevertheless, you can also try to explore the possibility to achieve something similar by using group statistical pricing conditions, which are set as mandatory in the pricing procedure - then you can trigger incompletion processing for these orders.

former_member182378
Active Contributor
0 Kudos

Veselina,

As Jignesh mentioned, it is difficult to have a logic for quantity (in comparison to $ value). Your suggestion of group statistical pricing conditions - does this help with quantity or $ value as a parameter? Thanks!

TW

VeselinaPeykova
Active Contributor
0 Kudos

I was thinking of some kind of bogus mandatory statistical logistic discount with quantity scale, group (to cover the case of more than one item of the same material code in the same document).

We can maintain a scale starting from X units for the material. In case of less than X units in the order, the condition will not be applied and as it is a mandatory one, then we can get incompletion log at order save. It does not matter what is the exact condition amount, only whether it is applied or not. It will be needed to have a some pricing requirement to exclude already rejected order items.

Unfortunately we cannot use minimum order quantity from the materail master, as it is checked against a single order item and also is not very flexible (MVKE).

This is just one possible approach to the techincal part of the solution.

Above all, the business users need to be continuously educated during implementation, sometimes even in post-implementation phase on how to formulate properly any new requirements - business case, as-is vs to-be and so on. In an ideal world such kind of requirement would be returned back to the requestor by the business pricess leader for additional clarification before reaching the functional consultant, but sometimes it just does not happen.

former_member182378
Active Contributor
0 Kudos

Veselina,

You have touched upon several points and made the post rich and interesting. From change request process pov and giving business information related to requirement I agree with.

Discussing your technical solution related to dummy mandatory statistical pricing condition, if the minimum amount is not reached in the order, then the order can not be saved but here OP wants to save and block the order. Any comments.

TW

VeselinaPeykova
Active Contributor
0 Kudos

Whether an incomplete order can be saved depends on the 'Incompletion message' setting in the sales order type.

Here is another way to abuse the pricing condition technique, this time without document incompletion :

Set one statistical condition to be applied only for quantity less than the minimum for the material and put in the condition record a payment term that you never use. In case of credit-relevant sales documents and if critical fields check is set up in OVA8, they can be blocked for critical fields.

Disadvantage: this will not work in case of not credit-relevant orders.

former_member182378
Active Contributor
0 Kudos

Veselina,

You are referring to "Mandatory condition type XYZ missing"...this is different from incompletion log functionality. We have an option to save or not an incomplete order, where the fields are maintained in incompletion log but "mandatory condition type missing" is not part of incompletion log and we can not save an order if we get this pricing condition type error message. Please inform if I am inaccurate.

TW

VeselinaPeykova
Active Contributor
0 Kudos

Pricing incompletion status works with the setting for Incomplete messages:

Test 1:

Result:

After receiving , at order save I get the following:

and I am able to save the order.

At a later time the order can be further processed via V.00 (setting price determination in the selection screen).

Test 2: The only change is setting Incomplet.messages to 'X':

Result:

At order save (you cannot save the order):

Answers (5)

Answers (5)

former_member186940
Participant
0 Kudos

Hello Hiren,

you could take help of your ABAPER and check if you could use user exit mv45afzz for your requirement.

you could maintain min order quantity in material master and while creating sales order user exit will check quantity entered in sales order and according to that order could be blocked or saved.

regards,

amol marathe

p.s. i have not done this exact requirement but i have done similar requirement using user exit.

ajmal_siddiqui
Participant
0 Kudos

Hi Amol,

   Thanks for sharing your approach. Can you please shed some light on the logic that you used to place a block on the order depending on the minimum quantity set in material master?

Thank,

Ajmal

former_member186940
Participant
0 Kudos

Hello Ajmal,

In one case requirement was "sales order is created with 10 quantity and production order is crated for 10 quantity, then if user tries to change sales order quantity from 10 to less than 10 i.e. 9 or 8 for e.g., system will give error message and sales order will be unable to save. and if user changes quantity to more than 10 order will be blocked. "

If we could take reference from AUFK and other tables then i am sure we could use MVKE-AUMNG (min order quantity)

Please note that Hiren has not mentioned if he wants to block sales orders with respect to "customer material relationship" . If that's the case then we could add a statistical condition in pricing procedure and maintain condition record. Later using user exit system could check if condition is determined or not and accordingly block unblock, warning, error message etc.

regards,

Amol

ajmal_siddiqui
Participant
0 Kudos

Hi Anmol,

   Thanks for sharing the logic behind your approach.

Thanks,

Ajmal

former_member186940
Participant
0 Kudos

Hello

I am not sure when did i mentioned credit management or Z table. Cant people suggest more than one solution using min order quantity field?

regards,

Amol

former_member182378
Active Contributor
0 Kudos

Hiren,

As members have already requested, please inform the business need for this. "300 units" what should be the system behavior if there are different units (for example EA, dozen, pallets etc.)?

It is interesting but if a company has a wide range of products then having a "set" quantity across materials...maybe you should check this with your customer.

as mentioned by Ajmal.

TW

Former Member
0 Kudos

This message was moderated.

jignesh_mehta3
Active Contributor
0 Kudos

Hello Hiren,

It is possible to block a Order based on Credit Management setting of Max. Document Vale.

But your requirement of Blocking the order based on Order Quantity does not seems to be possible with standard settings. You will have to do a small development to check the order quantity and block the order if it exceeds particular quantity. It will be a good idea to pull a Z-Table and mention Material code and quantity there, for future scalability.

But what is the Business need to block based on order quantity?

Thanks,

Jignesh Mehta

ajmal_siddiqui
Participant
0 Kudos

Hi Hiren,

    Is this requirement for a specific material or sales order type? Please advise.

Thank you,

Ajmal