On Sales Price (and Discount) Trade Agreements, if you are not using 'Find Next', AX will look for active trade agreement lines in a specific sequence, as described at technet.microsoft.com/.../aa575310.aspx. (Basically, it looks for a "Customer = Table and Item = Table" record first, and "Customer = All, Item = All" last). When it finds one, it stops looking.
Therefore, if you've a price defined for an individual customer and a price for All customers, it will always use the individual customer price in preference to the All customer price, even if the individual customer price is higher (remember we're not using 'Find next').
And then I enabled Call center functionality, and my Sales orders get a little tick box 'Retail sale' on the order header. And now Retail Pricing comes into play, although AX is still referring to my trade agreement sales prices. But it seems the trade agreement logic I described above is being ignored; Retail sales orders always find the 'best' price that the customer could get - as though 'Find next' was ticked on all trade agreement lines.
Does anyone know if it is possible for Retail Sales Orders to honour the fact that 'Find next' is not ticked and always find the customer price (even if it is highed) in preference to the All customer price?