Hello, I am having issues with the Yes/No formula. I am trying to create multipule formulas for a backsheet and I've had success with two of them, however when I go to the next formula it continues to tell me "Invalid Formula." I am using the "not()" formula.
Thank you.
Hello, welcome to the Discussion Groups!
We'll need a little more information to be able to help. What version of Revit are you using? Can you post the formula you're working with?
Within the NOT function, there has to be an expression that returns a TRUE/FALSE result. A few examples:
= not(Number = 1) ---> where "Number" is a Number or an Integer type parameter
= not(Length1 > Length2)
= not(Checkbox) ---> where "Checkbox" is a Yes/No type parameter
If you still need some help, can you explain what you're trying to accomplish with this formula?
That's most easily done when there are only two Yes/No parameters involved. One of the Parameters will be user-controlled and the other will be dependent on the first. Example:
Parameter1 & Parameter2 are both Yes/No type parameters.
Parameter1 will not have a formula assigned to it. This will be the controlling parameter.
Parameter2 will have the formula: "not(Parameter1)"
The problems here lies with the parentheses is the Parameter Name. If they've got a formulaic symbol in their name (i.e. minus, parentheses, asterisk) then it will be treated as such by Revit. So, for example, say you have:
Parameter Name 1 = Total_Length
Parameter Name 2 = Option - Type A
Parameter Name 3 = Length (Total)
...and you wanted to add these values together with a formula: Total_Length + Option - Type A + Length (Total)
Because of the "-" in the Parameter name, Revit thinks that "Option" and "Type A" are two separate parameter names.
Total_Length [plus] Option [minus] Type A ...returning an error.
Because of the "()" in the Parameter name, Revit thinks that "Length" is a function and that "Total" is a separate parameter name.
Option - Type A [plus] Length(Total) ...returning an error since "Length" isn't a valid function.
In lieu of a hyphen, I instead use the "En Dash" character for Parameter Names. Alt+0150 = "–"
If you need to keep the parentheses in the Parameter Names, then you can use the "ornate parentheses" found in the Character Map for the Arial Font.
Honestly, I've no idea why Revit prefers reverse-alphabetical order, but I believe that's been an outstanding issue since day one. Furthermore, the sort order is based upon the Parameter name when it is first created, so renaming them does not change the sort order. There is a semi-convoluted method of controlling the sort order of these parameter; you can find it by searching this forum using the term "Parameter Order".