function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
pturner64pturner64 

Opportunity Products - anyone know how to apply the following discount scenario?

Hi,

I have 2 types of product - those which are Fixed price and those that are Variable. I added a checkbox to Product to indicate this.

I create an Opportunity and select a few products.

The Amount is an automatic rollup and is the total. In my case this is like an Annual Contract Value.

However, if the term of the deal is 6 months, then I need to halve the Amount to get the Final Price.

Except, I don't want to halve the Fixed price products, just the Variable ones.

I can create a field on Opportunity Product which is a cross-object formula so I can read the checkbox I created on the Product object.

However, in trying to use a roll-up summary to now calculate the Final Price, and using the term, but excluding those Products that are Fixed, it won't let me use my cross object formula in the filter condition.

Any suggestions as to how to do this. I have included "what I am trying to achieve" in case someone has a better idea!

Thanks
WYamWYam

We tried to do this type of scenario on our products to Opportunity as well and with a cross-object formula you can't do a roll up to the parent. It has something to do with the way that the fields are rendered/calculated (at least that's what I got from Salesforce).

 

We had to solve this using an APEX trigger. The only other thing I can think of is to create a hidden field that simply copies the "Fixed" checkbox over onto the Opportunity Product and then calculates from there which would then (hopefully) allow the roll-up onto the opportunity.

 

 

 

 

pturner64pturner64

Hi WYam,

So kind of you to post this idea. I think I have already tried it though - and am reluctant to develop a trigger unless I can't avoid it. Will keep playing!

Paul

marketforcemarketforce

Have you looked into using price schedules? That could solve your problem.