Quantcast
Channel: All Revit API Forum posts
Viewing all articles
Browse latest Browse all 66683

Re: Disable warnings

$
0
0

Hi,

 

Can you try this :

 

using (Transaction trans = new Transaction(document))
{
    trans.Start("EXEMPLE");

    FailureHandlingOptions options = trans.GetFailureHandlingOptions();
    MyPreProcessor preproccessor = new MyPreProcessor();
    options.SetClearAfterRollback(true);
    options.SetFailuresPreprocessor(preproccessor);
    trans.SetFailureHandlingOptions(options);

    //YOUR CODE

    trans.Commit(options);
}
                

 

public class MyPreProcessor : IFailuresPreprocessor
    {
        FailureProcessingResult IFailuresPreprocessor.PreprocessFailures(FailuresAccessor failuresAccessor)
        {
            String transactionName = failuresAccessor.GetTransactionName();

            IList<FailureMessageAccessor> fmas = failuresAccessor.GetFailureMessages();


            if (fmas.Count == 0)
                return FailureProcessingResult.Continue;

            
            if (transactionName.Equals("EXEMPLE"))
            {
                foreach (FailureMessageAccessor fma in fmas)
                {
                    if (fma.GetSeverity() == FailureSeverity.Error)
                    {
                        failuresAccessor.DeleteAllWarnings();
                        return FailureProcessingResult.ProceedWithRollBack;
                    }
                    else
                    {
                        failuresAccessor.DeleteWarning(fma);
                    }

                }
            }
            else
            {
                foreach (FailureMessageAccessor fma in fmas)
                {
                    failuresAccessor.DeleteAllWarnings();
                }
            }
            return FailureProcessingResult.Continue;
        }
    }

 

Smiley Wink


Viewing all articles
Browse latest Browse all 66683

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>