Announcements
Welcome to the Revit Ideas Board! Before posting, please read the helpful tips here. Thank you for your Ideas!
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

be able to reset parameter to NULL

be able to reset parameter to NULL

If you set a value to a parameter (even Text), there's no way to get it back to "blank", and will therefore not group with other (new) elements properly. This example schedule is being sorted by Level, Type, z Offset, & Comments:

 

3840.02 GB schedule example (highlighted).png

 

WORKAROUND: In order to get the highlighted elements to display (group) correctly, you need to set the "empty" one to a value, then delete it (since Revit treats an empty string as different than a null value) so that it groups with existing elements that had their Comments field used & cleared. The problem is that you need to MANUALLY do this for ALL new elements from then on...

 

FYI, the schedule above is being used to do some QC correction (a user had incorrectly used both Type and Element comments instead of the Type Mark parameter).

 

Related idea & discussion:

 

Null value needed for dimensional parameters with scheduling capability - to display the null in a schedule as a "-", "---", "n/a", etc. [should make separate idea for casting dimension to a string]

 

Reset Numeric parameter value back to 'empty' - for an Integer parameter to be blank instead of showing "0" (zero), with steps to reset to null if it's not a built-in parameter?

 

40 Comments
tres.catorce
Participant

Hello, seeing if you can help me, I have a doubt that I believe you explain in part in this link but I'm not done understanding how to do it.
In this table I have a column "PRICE TOTAL M2" (calculated value) with prices per m2, but the last cell is of an element that is measured by ml, so I'm interested in putting 0 or nothing, and the column "PRICE TOTAL" it is a calculated value whose formula is PRECIO TOTAL M2+PRECIO TOTAL ML, the problem is that only the last one is added (1.48+23.60=25.08) and they should be summed all because the program understands that 38.21+empty cell=0.

The first problem is in the cell of 1.48 is a column of calculated value and the result is m2, but that value (1.48 is ml) so I'm interested that it leaves 0 or even empty.

The second problem is that REVIT takes the PRECIO TOTAL ML cells as EMPTY, and when performing the operation in the PRECIO TOTAL column, which is a sum of the two previous ones, it does not make the sum, well it only makes it with 1.48+23.60=25.08, the other columns do not put anything and tend to put 36.21,114.30.....319990011_1097263884300307_2110723478509901400_n.jpg

Sean_Page
Collaborator

Really sad this is still an issue. Improvements with Filters for sure, but we need the same ability for calculated fields in schedules.

carolina.machado
Advocate

When an X parameter does not have a value, calculated fields that use that parameter also have no value. The only way I found to deal with this situation was to create two schedules: one filtering the elements in which X has a value and the other the elements in which X has no value.

 

This is a problem that has already been manifested in the forum since 2017: https://forums.autodesk.com/t5/revit-architecture-forum/schedules-quantitiy-problem-calculated-value...

 

I wish there was a better way to handle this, and for that I suggest two possible solutions:
1 - Consider null values as 0
2 - Have some way to put in a formula the verification of whether the parameter has a value or not

 

Thanks!

Tags (3)
bwinterscheidt
Enthusiast

I would add to this a request that formulas, schedules, calculated values, etc. be given a new function to allow us to TEST for NULL (uninitialized numbers, booleans, etc.) or EMPTY (string) values, and let US decide what to do with that, instead of simply failing to do anything.

 

 

if( ISNULLOREMPTY( MyParamValue ), UseSubstituteValue, MyParamValue)

 

 

This is a built-in function in most programming languages; it surely can't be that hard to add to Revit's own formula processing?

 

Similar ideas that could possibly be merged:

https://forums.autodesk.com/t5/revit-ideas/be-able-to-reset-parameter-to-null/idi-p/7619047 

https://forums.autodesk.com/t5/revit-ideas/yes-no-null-value-equivalent-to-no-in-conditional-stateme... 

https://forums.autodesk.com/t5/revit-ideas/null-value-needed-for-dimensional-parameters-with-schedul... 

https://forums.autodesk.com/t5/revit-ideas/formulas-and-filters-null-value-or-assumed-value-and-othe... 

https://forums.autodesk.com/t5/revit-ideas/null-return-from-simple-if-sentence-for-family-parameters... 

https://forums.autodesk.com/t5/revit-ideas/use-empty-integer-parameter-in-formula-s-in-schedules/idi... 

ebiesingerKWR5M
Participant

we need to be able to differentiate null value from zero (especially in schedules) currently you cannot preform any calculation any parameter has a null value. calculation should be able to be don on null values (if("parameter"="") or  if(HasValue("parameter") =true) ect.. this severely limits the functionality of schedules 

ebiesingerKWR5M
Participant

Revit schedule needs to be able to preform calculation on null values. (or be able to treat null values as 0) currently if you try to perform a calculation (calculated value) on parameter that has a null value, the result is always "null". even just being able to do thins like if("parameter"=null) would be an improvement, but currently it is like schedule don't even recognize what a null value is.

HVAC-Novice
Advisor

When schedules have numerical parameters those show up as blank. If I use those parameters for calculated parameters, I need to manually set them to "zero". If they stay blank, the calculation doesn't work. I had a help-thread here

 

It would be nice if such table entries would be zero by default. If zero is fine, I can leave it. if I need a different value, I have to enter it anyway. 

sdcartmell
Enthusiast

Please provide an option or setting to allow the user to choose how uninitialized or null values are handled. Or allow "null" to be used in formulas. Right now, using a parameter that hasn't been "initialized" in a formula will break the formula and result in a blank value.

 

Currently, a simple formula like the following will result in a blank value if the condition (param1) is blank:

"If parameter1 is greater than 0, parameter1, else parameter2"

if(parameter1>0, parameter1, parameter2)

 

The obvious solution would be to let the unutilized value work in the formula. Logically, "uninitialized" is not greater than 0, since it isn't a number, but this solution may sow chaos. Who's to say "uninitialized" is greater or less than anything? (This is the current state of things.)

 

One way to handle uninitialized values would be to introduce <null> as an option when typing formula, for example:

"If parameter1 is not null, parameter1, else parameter2"

if(not(parameter1=<null>), parameter1, parameter2)

 

Another way would be to include a checkbox in the Schedule Properties, similar to the "Include elements in links" checkbox, that says "Treat uninitialized values as 0" or something to that effect. At least then the users could work around them with the appropriate formula.

 

A third way would be to introduce a setting in the Options menu to let the user choose how initialized values should be handled.

 

Many forum answers say to just input a value, 0, "fish," whatever, and the formula will work. They are correct. However, there are a range of end users of Revit, all at different skill levels, some people will see the blank and think the formula is broken (they'd be right), that Revit is not working (they're right again), and then they'll call over their compatriots, their IT departments, and so on until someone realizes you have to type in a zero for all of those blank fields. Then another user will decry the use of zero when a blank is perfectly acceptable. Then a third user will just "draw" the Schedule with detail lines and text boxes because "that's easier." You may scoff at the notion, but rest un-assured, this scenario is playing out at firms around the world, a silent struggle of BIM against text boxes...

 

So vote for this Idea. End the cycle.

Tags (4)
RDAOU
Mentor
dbutts7
Collaborator

@RDAOU now that's pretty cool...using a boolean just to disable/turn off the parameter so it returns a blank...???

sdcartmell
Enthusiast

@RDAOU how did you do that?

@dbutts7 @sdcartmell One way to do this is to have a parameter that is permanently blank, use a calculated parameter and leave the formula empty, then make another calculated parameter for display and use something like "if(Make Value, blank_Length, Height)". The blank parameter needs to be of the same type as the display parameter. Here are some examples from my door schedule, you end up with a lot of hidden parameters in the schedule, but the output is much more readable...

 

MichaelWarwick7522_0-1736824635123.png MichaelWarwick7522_1-1736824725109.png

 

RDAOU
Mentor

@sdcartmell 

 

there was a question posted on the revit forum yesterday (Link in previous reply) which basically led me to this Idea where I thought the link might be useful for someone. The trick shown in the GIF is only doable within the project environment. 

 

Blank Schedule values 2.gif

 

The limitation of not allowing users to add or use nulls in the family environment and/or arithmetic formulas, is ultimately in everyone's best interest. 

 

 

sdcartmell
Enthusiast

@RDAOUOh sorry, I didn't notice the link before, thank for following up! @MichaelWarwick7522  Thanks for explaining it!

dbutts7
Collaborator

Great answers folks - thanks!!!

 

Note to the Autodesk development team looking at this idea - those last couple of posts do not suggest that there is a solution or work-around for this problem, nor is it "working as designed". There is no solution to using values for sorting in schedules, display in tags, nor for in-family text. Even for the purpose of schedule display having to have 3 parameters instead of one is confusing for most users and frustrating for the BIM managers who have to keep training users in complex work arounds and building these into templates, families, and projects.

george.potts
Enthusiast

+1 on MichaelWarwick7522's comment there. 

Why the API does not support this reset either is beyond me... the ONLY workaround I have found is to "recreate" the element, without the parameter filled. What a stupid "fix"!

gaurav_nirmalkar
Observer

.

gaurav_nirmalkar
Observer

@lionel.kai Try filtering that parameter by "is greater than" and put value 1.

trevor.clarkM88RA
Enthusiast

Autodesk, THIS IS NEEDED, it is essential in many instances. A null value is absolutely necessary if you do not provide the ability to override an length/integer/number with a text value in a parameter. We need to be able to fill in N/A, -, *, or something to indicate it's not an applicable value, or reset it to blank. A Zero value is not the same as a N/A value, and convey very different things.

Can't find what you're looking for? Ask the community or share your knowledge.

Submit Idea