Process design question - date sensitive logic

Hi team,

I'm trying to design a fairly simple process that will do 2 things:

  1. Send an email to the assigned user when opportunity expected close date is 8 days away
  2. Send an email to the assigned user when opportunity expected close date was yesterday

The image below is what I've come up with so far.

What I'm struggling to get right is:

  • I don't want that first email to be sent when an opportunity is created with an expected date less than 8 days in the future
  • I don't want any email to be sent when an opportunity is created with any date in the past (they can enter historical opportunities for the record)

I can't figure out how to set up logic conditions with relative dates that can be used to bypass other events and end the process.

Any advice much appreciated.

Dave

Parents
  • hi there are probably a few different ways, but my 1st thought was maybe you can add a calculated field in Opportunities to indicate it falls under one of the 2 scenarios you don't want to trigger, and then use that in your Start criteria to exclude them upfront?

    If you go down this route, I would make the calculated field in a manner to not recalculate all the time by using the Opportunity date created .

    Hope that helps?

    .

    CRM Business Consultant

Reply
  • hi there are probably a few different ways, but my 1st thought was maybe you can add a calculated field in Opportunities to indicate it falls under one of the 2 scenarios you don't want to trigger, and then use that in your Start criteria to exclude them upfront?

    If you go down this route, I would make the calculated field in a manner to not recalculate all the time by using the Opportunity date created .

    Hope that helps?

    .

    CRM Business Consultant

Children
  • Hi Vincent. 

    Thanks for the tip.  I created a calculated field called "Closes within 7 days" using the following logic:

       and(
       greaterThan(8,daysUntil($date_closed)),
       not(isInList($sales_stage,createList("Closed Won","Closed Lost")))
       )

    I didn't do anything to prevent the calculated field from recalculating though.  As time marches on, and if the user changes the Expected Close date, I want this flag to be recalculated.  I then use that as a criteria for both starting and terminating the process.  Do you see any problem with doing this?

    I also ended up splitting the process design into two separate PDs and it all appears to be working well now.

    Thanks,

    Dave.