2 Replies Latest reply on Dec 1, 2016 7:55 AM by EddieLotter

    Help with handling CF/SQL Date Arithmatic?

    seasonedweb Level 1

      Hello

       

      There is an order entry date: order_create_date.

       

      I am able to display the aging by: #DateDiff("d", thequery.order_create_date, nowtime)#

       

      I now need to stop the aging clock ticking with: order_onhold_date,

       

      And resume the aging clock with: order_offhold_date

       

      So it would be something like #DateDiff("d", thequery.order_create_date, nowtime)# minus #DateDiff("d",thequery.order_onhold_date,thequery.order_offhold_date)#

      ?

      Any help would be appreciated- Thanks

        • 1. Re: Help with handling CF/SQL Date Arithmatic?
          seasonedweb Level 1

          Oops- arithmetic- sorry the nuns would have killed me for that

          • 2. Re: Help with handling CF/SQL Date Arithmatic?
            EddieLotter Level 4

            That's correct, only you will need to take into account whether or not the order was placed on hold, and if so, whether or not it is still on hold.

             

            I'm going to assume you have data integrity rules in place to prevent the on-hold dates from preceding the order date, that way you don't have to worry about it in code.

             

            What you want to do is something like this:

            <cfset nDaysOld = dateDiff('d', thequery.order_create_date, nowtime)>
            <cfif thequery.order_onhold_date neq ''>
              <cfif thequery.order_offhold_date eq ''>
                <cfset nDaysOnHold = dateDiff('d', thequery.order_onhold_date, nowtime)>
              <cfelse>
                <cfset nDaysOnHold = dateDiff('d', thequery.order_onhold_date, order_offhold_date)>
              </cfif>
              <cfset nDaysOld -= nDaysOnHold>
            </cfif>
            Age: #nDaysOld#
            

             

            Cheers

            Eddie