Velocity - Display specific value | Community
Skip to main content
Travis_Schwartz
New Participant
February 26, 2020
Solved

Velocity - Display specific value

  • February 26, 2020
  • 1 reply
  • 2395 views

So I have this code:

 

#if( $lead.autoPreApprovalNewRate.toString().equals("") ) #set( $lead.autoPreApprovalNewRate = 0 ) $number.number( $math.sub($lead.autoPreApprovalNewRate, "1") ) #end

 

And when there is a value in the

 

$lead.autoPreApprovalNewRate

 

field, this works beautifully. The problem is if they don't have a value, the programing makes sure it's a 0, and the subtraction turns it into -1. I'm sure there is just another #if #else... I'm just not able to figure it out.

 

Thanks. 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by SanfordWhiteman

Lot of confusing stuff here, and it’s just a few lines of code. 🙂

 

  1. autoPreApprovalNewRate must already be an empty String, so it doesn’t need toString()
  2. it can’t really be working beautifully, because everything is wrapped in the same condition
  3. the second argument to $math.sub should be a Number, you’re just lucky that it’s converting the constant “1" to 1 
  4. $math.sub already converts the result to a Number instance

If your requirement is

 

  • if autoPreApprovalNewRate is the empty string, set the effective rate to 0
  • else set the effective rate to (autoPreApprovalNewRate - 1)

then that's

 

 

#if( $lead.autoPreApprovalNewRate.equals("") ) #set( $outputRate = 0 ) #else #set( $outputRate = $math.sub($lead.autoPreApprovalNewRate, 1) ) #end ${outputRate}

 

 

1 reply

SanfordWhiteman
SanfordWhitemanAccepted solution
New Participant
February 26, 2020

Lot of confusing stuff here, and it’s just a few lines of code. 🙂

 

  1. autoPreApprovalNewRate must already be an empty String, so it doesn’t need toString()
  2. it can’t really be working beautifully, because everything is wrapped in the same condition
  3. the second argument to $math.sub should be a Number, you’re just lucky that it’s converting the constant “1" to 1 
  4. $math.sub already converts the result to a Number instance

If your requirement is

 

  • if autoPreApprovalNewRate is the empty string, set the effective rate to 0
  • else set the effective rate to (autoPreApprovalNewRate - 1)

then that's

 

 

#if( $lead.autoPreApprovalNewRate.equals("") ) #set( $outputRate = 0 ) #else #set( $outputRate = $math.sub($lead.autoPreApprovalNewRate, 1) ) #end ${outputRate}

 

 

SanfordWhiteman
New Participant
February 28, 2020
Travis_Schwartz
New Participant
March 2, 2020

Thanks for your help. Sorry for the delayed response. I didn't get the notification that you had tagged me.