In Macro Scheduler quotes and spaces are seen as text except in complex expressions. In complex expressions quotes are required around text and spaces are ignored. Spaces can be ignored always if the system variable IGNORSPACES is set to 1 (one).
Let>IGNORSPACES=1
That said, the syntax of your first If> example is wrong and does not work as you want it to work because it has spaces and quotes. However, it does not fail because Macro Scheduler sees it either as a comparison of the text "
%SearchScreenLARGE% " to the text "
"Done"" when
SearchScreenLARGE has no value assigned to it. Or, when
SearchScreenLARGE has a value, the comparison is between the value of
SearchScreenLARGE and the text "
"Done"". In either case the test is valid so the line of script validates and there is no failure.
The complex expression is different. It fails because the variables are explicitly defined as variables by placing percents around them. If
SearchScreenLARGE has not been assigned a value, then it is not a variable and the complex expression fails.
Try the following example. It uses the Assigned> function to test the expressions to see if they are variables or are just text.
Code: Select all
//Let>SearchScreenLARGE=Done
//Let>CheckForIMG=GOT_IT
Assigned>SearchScreenLARGE,SSL
Assigned>CheckForIMG,CFI
If>{(%SSL%="TRUE")AND(%CFI%="TRUE")}
If>{(%SearchScreenLARGE%="Done")AND(%CheckForIMG%="GOT_IT")}
//do Something
Endif
EndIf