I have a dtsx package with a precedence constraint that evaluates an expression and a constraint. The constraint is ‘success’ and the expression is ‘@myVariable’ == 3. myVariable is an int32, and when set in Visual Studio’s design GUI the package executes fine. There are two other paths that check for the value to be 1 or 2.
However when I try to run the package from the command line and pass in a value for my variable, it errors out claiming the expression does not evaluate to a boolean!
Command:
dtexec /F 'c:myPackage.dtsx' /SET \Package.Variables[User::myVariable].Properties[Value];3
Error:
The expression '@myVariable == 1' must evaluate to True or False. Change the expression to evaluate to a Boolean value.
The fact this runs fine from the GUI and that microsofts documentation claims == (intuiatively) returns a boolean has me very confused. I’ve also tried surrounding the 3 in double quotes in my command with no luck, and now I am out of ideas.
Anybody have an idea of what is going on?
Sorry took me so long to get back to this thread! But
(DT_I4)@[User::myVariable] == 3did the trick. Thanks!