web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

No record found.

News and Announcements icon
Community site session details

Community site session details

Session Id :
Microsoft Dynamics AX (Archived)

Preventing discount on some products (or zero discount products)

(0) ShareShare
ReportReport
Posted on by

I hope someone on this forum can help me. Our company is currently migrating to AX. Currently we set discounts at the following level - customer discount, product line discount, individual product number discount. This is all fine to transfer over to AX. The problem is that on top of this we have certain product/product lines that we do not discount at all for anybody - these are certain low margin products. Currently the customer may be set up as getting 20% off purchases - but on these special products (lets call them NET PRICED PRODUCTS) they would get 0%. Trying to get AX/our AX implementer to understand this and implement it for us is proving impossible. He says you cannot remove discount from someone and simply does not understand the way our current structure. We have several thousand customers that this set up affects and any solution he comes up with (which is few) involves resetting each customers discount structure which will be a nightmare. Can anyone tell me if they use the above discount structure and if so how do they do this in AX. It seems like a relatively simple request but we are being stonewalled!!!!

Any help hugely appreciated

*This post is locked for comments

I have the same question (0)
  • Brian Vittrup Profile Picture
    on at

    Hi William

    It sounds to me like is shouldnt be a problem. however it depends on the way the data has been loaded in.

    Normally you would set you example up, so customer gets discount on groups and the item is attached to a line discount group.

    Then the items, where no discount is granted, has no line disc. group.

    When creating the sales order, then the lines which has a group setup towards the customer will be granted disc, and the lines that does not have it, will have 0 in discount.

  • Community Member Profile Picture
    on at

    Hi William,

    Can you give us more details on what is the current discounts setup in your AX installation?

    For example, one scenario might be that you created an item discount group (Inventory management -> Setup -> Price/Discount), and defined a trade agreement for that group that is giving all customers 20% discount. That discount group is linked to items by selecting it as “Line discount” setting (in Inventory -> Items screen, and then on the Price/Discount page). If this is the case, all you have to do is to clear the “Line discount” for the items that you want to exclude from the discount (or link to other item discount group, where no customer discount is defined).

    Dynamic AX also support various other discount scenarios, e.g. for low-margin items you can setup the cost and use the Min Profit Margin rules to warn you about the profit violations. Even if you want to implement some uncommon discounting rules that AX might not support out of the box, it can be done with a bit of X++ coding in the background. So I’m pretty sure that your discount structure can be implemented in AX, it’s just a matter of finding a best way to do it. :)

  • Patrick van Oppen Profile Picture
    427 on at

    Hi Jovan,

    Hopefully you're still monitoring this question.

    We have a similar challenge and I believe it can not be met by data setup (too many variables), so I have been looking at preventing Ax from defaulting in the line discount value at the time of adding a line to the SO.  The criteria to prevent the line discount from defaulting in will be managed by a custom item grouping field (used for other various purposes as well).  My question is: where in Ax X++ should we intercept the line discount init / defaulting process to add the new criteria.  I looked at the table method named SalesLine.canEditDisc() method and map method named SalesPurchLine.setPriceAgreement(), but can't quite seem to make a decision on where to place the IF statement.

    Thanks,

    Patrick

  • Suggested answer
    Community Member Profile Picture
    on at

    Patrick, I've just replied to similar message in other thread :), but to repeat for others that might bump into this in the future - in this case probably the best place to make code modifications is PriceDisc class and lineDiscPct() method.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Stars!

Meet the Microsoft Dynamics 365 Contact Center Champions

We are thrilled to have these Champions in our Community!

Congratulations to the April Top 10 Community Leaders

These are the community rock stars!

Leaderboard > 🔒一 Microsoft Dynamics AX (Archived)

#1
CP04-islander Profile Picture

CP04-islander 24

#2
Michel ROY Profile Picture

Michel ROY 14

#3
imran ul haq Profile Picture

imran ul haq 8

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans