Skip to main content
Inspiring
August 9, 2020
Answered

if statement with two fields

  • August 9, 2020
  • 1 reply
  • 866 views

I'm having trouble combining two fields into calculating:

var a = this.getField("field1").value;
var b = this.getField("field2").value;
if (a == "1" || a == "2" || a == "3" && b == "10"){
event.target.fillColor = ["RGB", 254/255, 244/255, 175/255];
}else event.target.fillColor = color.transparent;

I also tried like this: || a == "3")&&(b == "10")
it doesn't work

"a" can be 1,2 or 3 but "b" also must be 10.

This topic has been closed for replies.
Correct answer try67

Replace the first three lines with this:

 

var a = this.getField("field1").valueAsString;
var b = this.getField("field2").valueAsString;
if ((a == "1" || a == "2" || a == "3") && b == "10"){

1 reply

try67
Community Expert
try67Community ExpertCorrect answer
Community Expert
August 9, 2020

Replace the first three lines with this:

 

var a = this.getField("field1").valueAsString;
var b = this.getField("field2").valueAsString;
if ((a == "1" || a == "2" || a == "3") && b == "10"){

Asim123Author
Inspiring
August 9, 2020

Thank you that is working as intended.

If I may ask another question because field1 and field2 is getting their values from bunch of other fields that code sometimes work sometimes don't. Can I do something to make it more stable like format field1 and 2 as number or something else?

EDIT: among other fields, field2 also calculate its value from field1.

try67
Community Expert
Community Expert
August 9, 2020

You need to set the Fields Calculation Order correctly for it to work properly.