If condition always returns no.

ajohn
Kilo Contributor

Hello everybody,

I am trying to create an if condition within a service catalog workflow. The advanced script looks as follows:

answer = ifScript();

function ifScript() {
if (current.variables.delivery_address == "Test") {
  return 'yes';
}
return 'no';

}

It returns always no, even thoug I type "Test" in the Delivery Address field in checkout screen. It doesn't matter, which variable (u_cost_center, price etc.) of the requested item i use. It returns always 'no'.

Hopefully anybody can tell me, why it's not working.

Thanks a lot and best regards

Andreas John

1 ACCEPTED SOLUTION

dvp
Mega Sage
Mega Sage

you condition should be



if (current.request.delivery_address == "Test") {




as deliver address is on request form


View solution in original post

11 REPLIES 11

ajohn
Kilo Contributor

Thank you, but following script still returns 'no'.



answer = ifScript();



var someText = current.request.delivery_address;
someText = someText.replace(/(\r\n|\n|\r)/gm,"");



function ifScript() {
if (someText == "Line1,Line2") {
  return 'yes';
}
return 'no';
}


Can you try this




answer = ifScript();


  function ifScript() {


var someText = current.request.delivery_address;


someText = someText.replace(/(\r\n|\n|\r)/gm,"");



if (someText == "Line1,Line2") {
  return 'yes';
}
return 'no';
}


ajohn
Kilo Contributor

It still returns 'no'..


Do you have another solution regarding this issue?


When I have tested in the background script it went to if loop. I'm not sure what you are missing..


Can you make sure that line1 is ending with ,


find_real_file.png



var someText = current.request.delivery_address;  


someText = someText.replace(/(\r\n|\n|\r)/gm,"");



  gs.log(someText);



if (someText == "Roswell, GA,USA") {


gs.log('yes');


}


else{


gs.log('no');


}


ajohn
Kilo Contributor

find_real_file.png



find_real_file.png


find_real_file.png