Hi guys,
Does pyrevit have a way to ignore Revit errors, for example ‘duplicate mark’?
Right now I’m using a class to do so, but perhaps things can be achieved easier?
class Warning_DuplicateMark_Allower(IFailuresPreprocessor):
def PreprocessFailures(self, failuresAccessor):
fail_acc_list = List[FailureMessageAccessor]()
fail_acc_list = failuresAccessor.GetFailureMessages().GetEnumerator()
for failure in fail_acc_list:
failure_id = failure.GetFailureDefinitionId()
failure_severity = failure.GetSeverity()
failure_type = BuiltInFailures.GeneralFailures.DuplicateValue
if failure_id == failure_type:
#print("{} with id: {} of type: Duplicate Mark values removed!".format(failure_severity, failure_id.Guid))
failuresAccessor.DeleteWarning(failure)
return FailureProcessingResult.Continue
Usage:
t = Transaction(doc, "your_wish_is_my_command") t.Start() Options = t.GetFailureHandlingOptions() Options.SetFailuresPreprocessor(Warning_DuplicateMark_Allower()) t.SetFailureHandlingOptions(Options) mark.Set(typemark_val) t.Commit()