By Aaron Lu
In Revit we can create schedule with schedule filter so that only the elements passed the filter will be shown in the schedule. e.g. I can let the schedule only show the elements on "level 1".
From the above screenshots, we can see that the parameters available for filtering varies with the category we choose, so is there any way to get all the parameters that can be filterable for a specific category?
The answer is Yes, we can make use of TableView.GetAvailableParameters method, which is mainly used to get the parameters can be schedulable for specific category, as long as the parameter (built-in parameter) is schedulable, it can be filtered. So the example can be:
var availableParameterIds = TableView.GetAvailableParameters (RevitDoc, new ElementId(BuiltInCategory.OST_DuctTerminal)); foreach (var pid in availableParameterIds) { var builtinParameter = (BuiltInParameter)pid.IntegerValue; //work with the BuiltInParameter }